一、基础知识
二值化操作
首先看一个常用的图像处理操作“二值化” , opencv 提供了多种二值化形式:
- cv2.THRESH_BINARY
- cv2.THRESH_BINARY_INV
- cv2.THRESH_TRUNC
- cv2.THRESH_TOZERO
- cv2.THRESH_TOZERO_INV
在灰度图像中, 0-255 代表着亮度等级, 黑色为 0, 白色为 255。 标准的二值化就是根据设定的亮度阈值, 将超过这个亮度的点赋值为白色的 255, 低于这个阈值的点赋值为黑色的0。
目前做巡黑线, 使用正常模式 cv2.THRESH_BINARY
。 如果是巡白线, 就只需要修改成反色模式cv2.THRESH_BINARY_INV
就可以将白色线条转换成黑色点来用同一个程序了。
这几种操作的效果不同, 下图是一个灰度图在阈值为 127 下对应的输出图像
二、示例代码
#coding:utf-8
#Python中声明文件编码的注释,