0

我正在使用 opencv 做一个项目,并且在某个阶段我对图像进行阈值处理以获得二进制图像。但在显示该二进制图像后,它似乎已损坏,中间有不需要的黑色区域。是因为一些内存损坏吗?还是我的 VGA 卡的限制?或任何其他原因?请帮忙。我在这里附上了一个快照。

实际上我的代码非常大,所以我只会在这里发布相关的代码段。

int printDefectThrshTemp = avgPixelIntensity1.val[0]*1.3 + threshPrint - 100;
    if (printDefectThrshTemp > 255) printDefectThrshTemp = 255;
    if (printDefectThrshTemp <1) printDefectThrshTemp = 1;
    Mat resizedBadgeThresholded;
    threshold(resizedBadgeTaken,resizedBadgeThresholded,printDefectThrshTemp,255,THRESH_BINARY_INV);

在此处输入图像描述

原始图像是从所示模板中提取的徽章之一。 在此处输入图像描述

4

0 回答 0