我已经开始尝试使用c ++和opencv,因为我想学习图像处理。

现在,我的第一个练习是使用calcHist和calcBackProject创建皮肤检测器。

但是我不明白一些事情:



的统计解释,为什么它被命名为“ back project”
我对范围参数有很好的理解在calcBackProject中。但是我真的对calcHist函数中的range参数卡住了。
为了获得更高的检测精度,我认为在更多级别上使用backgrojecting可能是一件好事:在h-s-v的每个通道的r-g-b ans通道中。但是我不知道如何将rgb和hsv的单独通道的calcBackProject的不同结果结合起来。

我认为我的理解不周全是由于缺乏理论上的“我” m使用这两种方法(请参见第一点)。所以请用简单的英文解释一下。

评论

我对此也很感兴趣。给我发一封电子邮件,我们可以谈谈更多。

#1 楼

请参阅openCV教程中的什么是反投影

图像直方图可测量图像中像素的颜色(和亮度)分布。

如果拍摄图像并识别出感兴趣的区域,例如一只手,然后计算该对象中像素的直方图。

然后获取该直方图和第二张图像,并从本质上颠倒该过程-在第二张图像中选择与第一张图像中的直方图匹配的像素。正是这种反向过程使它有了反投影的名称。

然后,您假设第二张图像中与第一张图像中的对象具有相同颜色分​​布的图像区域是同一(或相似)对象的图像。

评论


$ \ begingroup $
答案应包含答案,而不仅仅是链接。
$ \ endgroup $
– Endolith
2012年12月12日21:10

$ \ begingroup $
@endolith-是的,但是当我写了一篇关于如何在opencv中使用反向投影的教程时,我写了很长的解释吗?
$ \ endgroup $
–马丁·贝克特(Martin Beckett)
2012年12月12日21:12

$ \ begingroup $
“总的来说,它链接到另一个网站,但是您至少应该总结链接到的页面的内容。” meta.stackexchange.com/a/13370/130885
$ \ endgroup $
– Endolith
2012年12月12日21:17