Visual c++ 如何消除照明噪声? 我在OpenCV2.3.1和Visual C++中有一个汽车检测项目。p>

Visual c++ 如何消除照明噪声? 我在OpenCV2.3.1和Visual C++中有一个汽车检测项目。p>,visual-c++,image-processing,opencv,computer-vision,Visual C++,Image Processing,Opencv,Computer Vision,在前景分割中,存在由照明引起的反射。 这(反射)成为背景之后前景的一部分 已被删除 我需要关于如何消除这种噪音的建议或想法。因为它会引起一些 要作为一个对象连接的前景对象,如使用 findContours和drawContours函数。请参见以红色突出显示的图像部分 在附加的图像上。我认为这将简化斑点检测阶段 *注意-我不允许使用OpenCV中的内置cvBlobLib,可能尝试将图像转换为HSV,然后过滤高V量 IplImage imgHSV = cvCreateImage(cvGetSize(

在前景分割中,存在由照明引起的反射。 这(反射)成为背景之后前景的一部分 已被删除

我需要关于如何消除这种噪音的建议或想法。因为它会引起一些 要作为一个对象连接的前景对象,如使用 findContours和drawContours函数。请参见以红色突出显示的图像部分 在附加的图像上。我认为这将简化斑点检测阶段


*注意-我不允许使用OpenCV中的内置cvBlobLib,可能尝试将图像转换为HSV,然后过滤高V量

IplImage imgHSV = cvCreateImage(cvGetSize(imgInput), 8, 3);
IplImage imgThreshold = cvCreateImage(cvGetSize(imgHSV), 8, 1);
cvInRangeS(imgHSV, cvScalar(0, 0, 90, 0), cvScalar(0, 0, 100, 0), imgThreshold);

…根据需要调整标量以消除眩光

这里的问题是眩光的一部分可以是背景或相应的汽车

这就是我要做的

我相信你不会有什么大问题


一旦识别出眩光的所有像素,我将用图像同一行中最近的非眩光像素替换每个眩光像素。这样,眩光将充满汽车和背景。有了这种方法,你就能毫无问题地检测到汽车。

识别眩光没什么大不了的,但如何填补这一部分是一个很好的问题。我猜你所描述的是一个Inpaiting算法的应用。我认为Inpaiting算法仍然不适用于已发布的OpenCV版本,但我知道他们正在研究它。我认为该算法并不难实现。