OpenCV-验证码识别

验证码识别

步骤:

  1. 预处理-去除干扰线和点
  2. 不同的结构元素中选择
  3. Image和numpy array相互转换
  4. 识别和输出 tess.image_to_string

示例

def verification_code_recognition(image):
    """验证码识别"""
    # 二值化图像
    gray = cv.cvtColor(image, cv.COLOR_BGR2GRAY)  # 转灰度图
    ret, binary = cv.threshold(gray, 0, 255, cv.THRESH_BINARY_INV | cv.THRESH_OTSU)  # 二值化
    cv.imshow("binary", binary)

    # 形态学操作
    kernel = cv.getStructuringElement(cv.MORPH_RECT, (4, 4))
    bin_af = cv.morphologyEx(binary, cv.MORPH_OPEN, kernel=kernel)
    cv.imshow("bin_af", bin_af)

    textImage = Image.fromarray(bin_af)
    text = tess.image_to_string(textImage)

    print("The result:", text)

结果:
在这里插入图片描述
在这里插入图片描述

你可能感兴趣的:(OpenCV,图像处理)