作者:弍大爺 | 来源:互联网 | 2023-08-01 00:35
忙了N久长时间没有更新博客了,追问的人很多,你们赢了,上来分享下最近做的图像相关。
目标是要求我做一个全能扫描王一样的应用,前前后后需求改了好几版,分开来每种方案都能实现,合并起来想全能谈何容易。
其实最终目标就是找到图片中的纸张并还原成标准矩形么,前前后后做了三个版本,把经历的坑分享一下,具体代码就保密了,毕竟做的是产品,要为对方老板负责。
方案一: 自适应二值,查找最大轮廓,霍夫直线检测四边,求出四边顶点,仿射变换
坑:复杂环境下很容易接收乱七八糟的线段从而将四边拟合出错
方案二:canny求出轮廓,查找最大轮廓,逼近轮廓成近似矩形,仿射变换
坑:canny求到的图黑白按照原图色彩来的,要多判断一次是否要取反
方案三:差影法求出目标位置,逼近成近似矩形,仿射变换
坑:这个没什么坑,就是看运气,原始背景图质量好点就没什么问题的
综上,最后一个大坑是仿射和透射的区别,
原理不说了,一句话,透射是四个点的对应关系,ABCD对应abcd。
仿射在opencv或emgucv里是三个点的,ABCD对应abcd的话,不看C的,无论你的点集合多长
只看第一二点和最后一点,只看第一二点和最后一点,只看第一二点和最后一点
还有一个小贴士:宽和高要自己判断一下的,opencv或emgucv的宽和高随机的。
最终效果放上,供大伙参考(找四个顶点的问题上我加强过的,商业机密,就不要强人所难了!)


初开博客,目的是交流与合作,本人QQ:273651820。