#aaa是cv.read圖片.
img = aaaa.copy()
gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
ret, binary = cv2.threshold(gray, 0, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU)
#cv2.imwrite("13裏面二值化的圖片.png", binary)
# binary = cv2.morphologyEx(binary, cv2.MORPH_CLOSE, kernel, anchor=(2, 0), iterations=2) # 二值化.
cv2.imwrite('debug1.png',binary)
# 可以看到處理後基本的文字方向.
#進行直線檢測.
edges = cv2.Canny(binary, 50, 100, apertureSize=3)
# 霍夫曼直線檢測
#cv2.imwrite('13裏面的canny邊緣化圖片.png',edges )
edges=255-binary #========我這裏不適用canny來邊緣檢測,直接255減去他, 感覺精度更高.
gao=edges.shape[0]
chang=edges.shape[1]
cv2.imwrite('debug2.png',edges)
lines = cv2.HoughLinesP(edges, 0.1, 0.1*np.pi / 180, 1, minLineLength=(gao+chang)/100, maxLineGap=3)
#########0.01*pi是調優過的參數!!!!!!!!,我們只要比較長的線. 這些線更有標誌性.
一種精度更高的hopf直線檢測策略, 一種高精度邊緣檢測方法.
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.