【发布时间】:2011-08-27 19:10:53
【问题描述】:
我目前正在使用 OpenCV 内置的基于补丁的直方图反投影 (cv::calcBackProjectPatch()) 来识别图像中目标材料的区域。图像分辨率为 640 x 480,窗口大小为 10 x 10,处理单个图像需要约 1200 毫秒。虽然结果很好,但对于实时应用程序来说太慢了(处理时间应该不超过 100 毫秒)。
我已经尝试减小窗口大小并从 CV_COMP_CORREL 切换到 CV_COMP_INTERSECT 以加快处理速度,但没有看到任何明显的加速。这可以通过 OpenCV 文档(重点是我的)来解释:
测量每个新图像,然后 转换为图像图像数组 在选定的投资回报率上。直方图是 取自该图像 图像中的一个区域 被一个带有锚点的“补丁”覆盖 如下图所示居中。 直方图使用归一化 参数 norm_factor 以便它可以 与 hist 进行比较。计算出来的 直方图与模型进行比较 直方图; hist 使用 函数 cvCompareHist() 与比较 方法=
method)。所结果的 输出放置在该位置 对应于补丁锚点 概率图像 dst。这 当补丁是重复的过程 滑过投资回报率。 迭代直方图 通过减去尾随像素进行更新 被补丁覆盖并新添加 覆盖到直方图的像素可以 节省了大量的操作,虽然它是 尚未实施。
这给我留下了几个问题:
- 是否还有其他支持迭代直方图更新的库?
- 使用迭代更新可以带来多大的加速?
- 是否有任何其他技术可以加快此类操作的速度?
【问题讨论】:
-
加快图像处理的第一种方法:使用较小的图像。
-
不幸的是,不能对图像进行下采样:对于以下处理阶段,我已经处于可接受分辨率的低端。
标签: optimization image-processing opencv computer-vision histogram