最近在做一个类似全能扫描王的文档扫描app,第一步要检测纸张的边缘并摆正,找了很多资料,大部分都是这样的思路:
高斯模糊去除噪点——canny边缘检测——findContours获取轮廓——按面积排序——用approxPolyDP拟合多边形,找出4个顶点的多边形——透视变换
但是这个思路在以下情况识别会不准确:
1.纸张颜色和背景比较接近时;
2.背景比较复杂,比如有花纹时;
3.附近杂物比较多,导致纸张的轮廓面积不是最大;
4.背景反光,边缘检测会把光影识别成边缘;
请问大佬们有没有其他的思路可以避免这些问题,或者这个思路有什么地方可以改进