4.1 图像降噪
首先,为了除去一些噪声数据的干扰,我们将图片灰度化处理,得到单通道图像,调用OpenCV的边缘检测方法。
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
sobel = cv2.Sobel(gray, cv2.CV_8U, 1, 0, ksize=3)
这里我们使用的是Sobel算子,用来计算图像灰度函数的近似梯度。此外还有Canny算子、Laplacian算子等,各自的特性可查阅相关资料。
dst = cv2.Sobel(src, ddepth, dx, dy[, dst[, ksize[, scale[, delta[, borderType]]]]])
其中,参数dx和dy分别表示x和y方向上的差分阶数,取1, 0表示只检测x方向上的边缘(因为我们要检测的文本大多是横向的)。检测完后的图像如下: