在了解如何处理LBP微积分的BOB接口(https://www.idiap.ch/software/bob/docs/bob/docs/stable/index.html)时,我遇到了几个问题。特别是我有128x128大小的灰度图像,我需要为每个图像计算一个由1x59元素组成的统一LBP直方图。
我看到BOB工具箱实现了几个选项以便获得直方图,我从最简单的一个开始。我拍摄了图片,并使用下面的python代码尝试提取8个邻居和半径为1的统一版本,这与BOB文档中介绍的版本相似。
lbp_extractor = bob.ip.base.LBP(8, uniform=True)
lbp_output_image_shape = lbp_extractor.lbp_shape(image)
lbp_output_image = np.ndarray ( lbp_output_image_shape, dtype = np.uint16 )
lbp_extractor ( image, lbp_output_image )
print(lbp_output_image.shape)
这时我获得了126x126的矩阵,我相信这是正确的,因为映射了LBP要素(不包括边界)。因此,我无法获得统一版本(1x59矢量)。有人有建议吗?我在调用BOB函数的选项时做错了吗?还是使用lbp_shape()是错误的?还是我在统一LBP的所有过程中做错了?