Optimization 提高直方图反投影的速度

Optimization 提高直方图反投影的速度,optimization,image-processing,opencv,computer-vision,histogram,Optimization,Image Processing,Opencv,Computer Vision,Histogram,我目前正在使用OpenCV内置的基于面片的直方图反投影(cv::calcBackProjectPatch())来识别图像中目标材质的区域。图像分辨率为640 x 480,窗口大小为10 x 10,处理单个图像需要约1200 ms。虽然效果很好,但对于实时应用程序(处理时间应不超过约100 ms)来说,这太慢了 我已经尝试过减小窗口大小并从CV_COMP_CORREL切换到CV_COMP_INTERSECT以加快处理速度,但没有看到任何明显的加速。这可以通过OpenCV文档来解释(重点): 对每个

我目前正在使用OpenCV内置的基于面片的直方图反投影(
cv::calcBackProjectPatch()
)来识别图像中目标材质的区域。图像分辨率为640 x 480,窗口大小为10 x 10,处理单个图像需要约1200 ms。虽然效果很好,但对于实时应用程序(处理时间应不超过约100 ms)来说,这太慢了

我已经尝试过减小窗口大小并从
CV_COMP_CORREL
切换到
CV_COMP_INTERSECT
以加快处理速度,但没有看到任何明显的加速。这可以通过OpenCV文档来解释(重点):

对每个新图像进行测量,然后 转换为图像数组 在选定的投资回报率上。直方图是 从这张图片中的一个区域 被“补丁”覆盖,锚定在 如下图所示居中。 直方图使用 参数范数_因子,以便 与历史相比。计算的 直方图与模型进行了比较 直方图;hist使用该函数 CVCompareList()与比较 方法=
方法
)。结果 输出放置在该位置 对应于中的补丁锚 概率图像dst。这 该过程会随着修补程序的运行而重复 滑过投资回报率迭代直方图 通过减去后续像素进行更新 由修补程序覆盖并添加新的 覆盖到直方图的像素可以 节省了很多操作,尽管它是 尚未实施。

这给我留下了几个问题:

  • 是否还有支持迭代直方图更新的库
  • 使用迭代更新的速度有多大
  • 有没有其他技术可以加速这类操作

  • 正如OpenCV中提到的,积分直方图肯定会提高速度

    请在下面的链接中查看一个示例实现

    加快图像处理速度的第一种方法:使用较小的图像。不幸的是,对图像进行降采样不是一种选择:我已经处于以下处理阶段可接受分辨率的较低水平。这正是我想要的。谢谢