SURF和OpenSURF彩色图像

时间:2013-05-21 11:03:51

标签: opencv image-processing surf

我在OpenCV中使用SURF功能,输入图像转换为灰度图像。

 cvtColor(object, object, CV_RGB2GRAY);

当我浏览OpenSURF的文档时,我意识到它不是灰度级的。

我的困惑是我们可以将SURF应用于任何图像格式(YUV,HSV,RGB),还是我们必须更改和修改程序才能实现这一目标?

2 个答案:

答案 0 :(得分:1)

大多数特征检测器都使用灰度,因为它们分析图像块中边缘的图案。您可以从您提到的颜色格式在任何单一颜色通道上运行SURF,即您可以在YUV图像上运行Y,U或V,或者从HSV图像运行H,S或V.不确定OpenSURF如何处理这个问题,但他们必须在内部使用灰度图像。

答案 1 :(得分:0)

与OpenCV一样,如果您向OpenSURF提供的图像不是单通道,则会调用cvtColor(src, dst, CV_BGR2GRAY)。如果你在YUV,HSV,Lab等中传递一个3通道图像,事情将会出现严重错误,因为图像将应用不适当的颜色转换。