我正在尝试查找图像中的文本边界框,目前正在使用此方法:
// calculate the local variances of the grayscale image
Mat t_mean, t_mean_2;
Mat grayF;
outImg_gray.convertTo(grayF, CV_32F);
int winSize = 35;
blur(grayF, t_mean, cv::Size(winSize,winSize));
blur(grayF.mul(grayF), t_mean_2, cv::Size(winSize,winSize));
Mat varMat = t_mean_2 - t_mean.mul(t_mean);
varMat.convertTo(varMat, CV_8U);
// threshold the high variance regions
Mat varMatRegions = varMat > 100;
当给出这样的图像时:
然后,当我显示varMatRegions
时,我会得到这个图像:
正如您所看到的,它在某种程度上将左侧文本块与卡片的标题结合在一起,对于大多数卡片来说,这种方法效果很好,但在较繁忙的卡片上,它可能会带来问题。
这些轮廓连接不好的原因是它使轮廓的边界框几乎占据了整个卡片。
有没有人能建议我用一种不同的方法来查找文本,以确保正确检测文本?
200指向能够在卡片中找到这两个字符上方的文本的人。
https://stackoverflow.com/questions/23506105
复制相似问题