Python-直线检测-提取邮票编码
生活随笔
收集整理的這篇文章主要介紹了
Python-直线检测-提取邮票编码
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Python-直線檢測-提取郵票編碼
直接上代碼:
# 導入庫 import cv2 import numpy as np# python線檢測使用的時cv.HoughLinesP()函數: img = cv2.imread('Envelope.jpg')gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)edges = cv2.Canny(gray, 50, 150, apertureSize=3)minLineLength = 100 maxLineGap = 10 lines = cv2.HoughLinesP(edges, 1, np.pi / 180, 100, minLineLength, maxLineGap)# 設置讀取范圍,提取長方形方框的四個點的xy坐標 xmin = 1000 xmax = 0 ymin = 1000 ymax = 0 img1 = img.copy() for i in range(len(lines)):for x1, y1, x2, y2 in lines[i]:if x2 <= 512 and y2 <= 128:cv2.line(img1, (x1, y1), (x2, y2), (0, 255, 0), 2)if x2 > xmax:xmax = x2if y2 > ymax:ymax = y2if x1 < xmin:xmin = x1if y1 < ymin:ymin = y1cv2.imshow('image', img) eps = 1 cropped = img[ymin - eps:ymax + eps, xmin - eps:xmax + eps] cv2.imshow('crop', cropped)cv2.waitKey() cv2.destroyAllWindows()原圖:
結果圖-直線檢測:
結果圖-編碼提取:
總結
以上是生活随笔為你收集整理的Python-直线检测-提取邮票编码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【转】CCIE一年后的心语
- 下一篇: Stanford Alpaca (羊驼)