Я пытаюсь использовать следующий код для удаления пятен, пятен на краю верхнего правого угла, не смог его удалить, что мне делать?OpenCV удаляет краевые пятна?
CvContourScanner scanner = NULL; сканер = cvStartFindContours (img_src, storage, sizeof (CvContour), CV_RETR_CCOMP, CV_CHAIN_APPROX_NONE, cvPoint (0,0));
CvRect rect;
while (contour=cvFindNextContour(scanner))
{
tmparea = fabs(cvContourArea(contour));
rect = cvBoundingRect(contour,0);
if (tmparea < minarea/*||tmparea>4900*/)
{
pp=(uchar*)(img_Clone->imageData + img_Clone->widthStep*(rect.y+rect.height/2)+rect.x+rect.width/2);
if (pp[0]==0)
{
for(int y = rect.y;y<rect.y+rect.height;y++)
{
for(int x =rect.x;x<rect.x+rect.width;x++)
{
pp=(uchar*)(img_Clone->imageData + img_Clone->widthStep*y+x);
if (pp[0]==0)
{
pp[0]=255;
}
}
}
}
}
}
пожалуйста, C++ API использовать OpenCV, а не устаревшие с одной. – berak