整张答题卡识别原理(预处理)

2023-10-19  本文已影响0人  大龙10

书名:计算机视觉40例从入门到深度学习:OpenCV-Python
作者:李立宗
出版社:电子工业出版社
出版时间:2022-07-01
ISBN:9787121436857


第9章 答题卡识别

9.2 整张答题卡识别原理

整张答题卡识别流程图如图9-6所示。


图9-6 整张答题卡识别流程图

9.2.1 图像预处理

1、图像预处理

主要完成读取图像、色彩空间转换、高斯滤波、Canny边缘检测、获取轮廓等。

  整张答题卡在图像内拥有一个整体的外轮廓,因此可以使用上述方式将其查找出来。但图像内包含的噪声信息的轮廓也会被检索到。

2、程序

# -*- coding: utf-8 -*-
"""
Created on Wed Oct 18 16:40:16 2023

@author: dalong10
"""

import cv2


# ====读取原始图像====
img =  cv2.imread('d:\\OpenCVpic\\TestPaper.jpg')  
cv2.imshow('img', img)

gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) 
# 高斯滤波
gaussian = cv2.GaussianBlur(gray,(5,5), 0)
edged =cv2.Canny(gaussian, 50, 200)
cv2.imshow('edged', edged)

cts, hierarchy = cv2.findContours(edged.copy(), cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)  
cv2.drawContours(img,cts,-1,(0,0,255),3)

cv2.imshow("result",img)  # 打印识别结果
cv2.waitKey()
cv2.destroyAllWindows()


运行结果
上一篇 下一篇

猜你喜欢

热点阅读