麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 開發 > Python > 正文

python opencv實現信用卡的數字識別

2024-09-09 19:03:39
字體:
來源:轉載
供稿:網友

本項目利用python以及opencv實現信用卡的數字識別

前期準備

導入工具包 定義功能函數

模板圖像處理

讀取模板圖像 cv2.imread(img) 灰度化處理 cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) 二值化 cv2.threshold() 輪廓 - 輪廓

信用卡圖像處理

讀取信用卡圖像 cv2.imread(img) 灰度化處理 cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) 禮帽處理 cv2.morphologyEx(gray,cv2.MORPH_TOPHAT,rectKernel) Sobel邊緣檢測 cv2.Sobel(tophat, ddepth=cv2.CV_32F, dx=1, dy=0, ksize=-1) 閉操作 cv2.morphologyEx(gradX, cv2.MORPH_CLOSE, rectKernel) 計算輪廓 cv2.findContours 模板檢測 cv2.matchTemplate(roi, digitROI,cv2.TM_CCOEFF)

原始數據展示

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

結果展示

在這里插入圖片描述

1 前期準備

# 導入工具包# opencv讀取圖片的格式為b g r# matplotlib圖片的格式為 r g bimport numpy as npimport cv2from imutils import contoursimport matplotlib.pyplot as plt%matplotlib inline
# 信用卡的位置predict_card = "images/credit_card_01.png"# 模板的位置template = "images/ocr_a_reference.png"
# 指定信用卡類型FIRST_NUMBER = {  "3": "American Express",  "4": "Visa",  "5": "MasterCard",  "6": "Discover Card"}
# 定義一些功能函數# 對框進行排序def sort_contours(cnts, method="left-to-right"):  reverse = False  i = 0  if method == "right-to-left" or method == "bottom-to-top":    reverse = True  if method == "top-to-bottom" or method == "bottom-to-top":    i = 1  boundingBoxes = [cv2.boundingRect(c) for c in cnts] #用一個最小的矩形,把找到的形狀包起來x,y,h,w  (cnts, boundingBoxes) = zip(*sorted(zip(cnts, boundingBoxes),                    key=lambda b: b[1][i], reverse=reverse))  return cnts, boundingBoxes# 調整圖片尺寸大小def resize(image, width=None, height=None, inter=cv2.INTER_AREA):  dim = None  (h, w) = image.shape[:2]  if width is None and height is None:    return image  if width is None:    r = height / float(h)    dim = (int(w * r), height)  else:    r = width / float(w)    dim = (width, int(h * r))  resized = cv2.resize(image, dim, interpolation=inter)  return resized# 定義cv2展示函數def cv_show(name,img):  cv2.imshow(name,img)  cv2.waitKey(0)  cv2.destroyAllWindows()

2 對模板圖像進行預處理操作

讀取模板圖像

# 讀取模板圖像img = cv2.imread(template)cv_show("img",img)plt.imshow(img)
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 色播一区 | 欧美成人理论片乱 | 国产69精品99久久久久久宅男 | 色成人在线| 最近高清无吗免费看 | 本站只有精品 | 羞羞视频免费网站 | 线观看免费完整aaa 欧美在线一级 | 欧美成人性色区 | 视频二区国产 | 欧美成人福利 | 久久久免费观看完整版 | 久久99精品久久久久久秒播蜜臀 | 久久久久久久久久久av | 成熟女人特级毛片www免费 | 泰剧19禁啪啪无遮挡大尺度 | 国产精品一品二区三区四区18 | 91色一区二区三区 | 欧美中文字幕一区二区三区亚洲 | 黄网站色成年大片免费高 | 97伦理| 久草在线免费资源站 | 国产99免费 | 亚洲成人国产 | 九九视屏 | 国产亚洲欧美日韩高清 | 免费看毛片网站 | 99激情 | 成人免费一区二区三区视频网站 | 黄色7777 | 欧美成人午夜 | 久久久www免费看片 亚洲综合视频一区 | 国产91在线亚洲 | 久久久久久久久久性 | 未成年人在线观看 | 国产一区在线视频观看 | 在线免费视频a | 国产免费观看电影网站 | 久久久久99一区二区三区 | 九九热视频这里只有精品 | 亚洲免费观看视频 |