我是一个OpenCV在Android中的新手。目前,我正在开发一个文档检测演示应用程序。我迄今为止所做的工作如下:
原始图像 -> 灰度图像 -> GaussianBlur -> Canny边缘检测 -> 查找轮廓 -> 绘制轮廓
我能够完美地检测出纸张,正如您在下面的图像中所看到的。
但它不能检测出一些文档。以下是其中之一:
我对此进行了大量研究,并发现问题出在Canny边缘检测上。以下是Canny图像:
如您所看到的,边缘检测不是完美地链接,并且在某些点上它没有连接边缘。这就是问题所在。
我遇到了类似的问题: 如何选择在OpenCV中实现的Canny边缘检测算法的最佳参数集? 我遵循了该解决方案,但它对我没有起作用。
我的Canny检测代码如下:
double otsu_thresold = Imgproc.threshold(mGray,edged,0,255, Imgproc.THRESH_OTSU);
Imgproc.Canny(mRgba, edged, otsu_thresold*0.5,otsu_thresold);
我不知道我错在哪里!该怎么做才能完美地检测文档?