我正在使用模板匹配来检测棕色图像并将阈值设置为0.7以接受正确的匹配。我为棕色彩色图像创建了一些模板,但每次我用模板检查一个新的棕色图像时,我得到的分数很低,即使图像中的差异很小,也可能是某些点或照明。我尝试了很多,但无法检测到。由于每次我需要添加大量模板来实现相同的分数不同。
我正在将图像转换为灰度并进行一些预处理
Image<Gray, byte> grayFrameimgModelROIvariable = ((Image<Bgr, byte>)imgModelROIPic.Image).Convert<Gray, byte>();
Image<Gray, byte> grayFrameimgInspTemplateVariable = ((Image<Bgr, byte>)imgInspectedROIPic.Image).Convert<Gray, byte>();
grayFrameimgModelROIvariable.PyrDown();
grayFrameimgModelROIvariable.PyrUp();
grayFrameimgInspTemplateVariable.PyrDown();
grayFrameimgInspTemplateVariable.PyrUp();
grayFrameimgModelROIvariable._SmoothGaussian(3);
grayFrameimgInspTemplateVariable._SmoothGaussian(3);
请帮忙
答案 0 :(得分:0)
@Shabbir, 您是否使用灰度图像来尝试区分棕色和蓝色?如果是这样,IMPO,这可能不是最好的解决方案。如果是我,我会使用HSV色标的H(Hue)进行测定然后切换到灰度。
这篇文章Color spaces in OpenCV可能有些用处。
道格