您的位置:首页 > 运维架构

图像处理的一般流程(opencv)

2017-12-08 15:17 369 查看
前一段时间,有需求需要对答题卡进行解析。作为一个从来没有任何图像经验的人来说,就有点乱撞方向的感觉,基本上遇到什么问题, 就去找对应的方法解决。因此在此整理下自己的心得,以后有人看到就不会无从下手的感觉了。

图像处理的一般流程如下:

第一步: 

如果是不需要对颜色进行特殊区分的, 就直接先转为灰度图。

有特殊需求的,可以转换到HSV色彩空间进行处理,参考opencv:http://opencv-python-
tutroals.readthedocs.io/en/latest/py_tutorials/py_imgproc/py_colorspaces/py_colorspaces.html#converting-colorspaces

 具体阈值可以参考:
https://www.cnblogs.com/wangyblzu/p/5710715.html
该连接中, s的部分可以根据实际情况调整, 实验表明, 提取红色时候, 有时候s可以取到6...

第二步:

提取感兴趣的区域,可以使用矩形框检测(cv2.findContours)、直线检测(LSD边缘检测法, Hough变换).找到对应区域后,进行(仿射变换、投影变换)变换,对图像进行矫正。

在这一步涉及的理论就比较多了,涉及到对图像的滤波去噪处理(一般推荐中值滤波cv2.blur)、 对比度(直方图均衡化)和亮度变换(gama变换),具体问题具体分析解决。关于这些方法和解释,后续在不断完善。

第三步:

对根据实际需求对目标区域处理: 坐标计算识别、或者二维码解析等等。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  图像处理 opencv