python實現opencv學習二十四 識別驗證碼

2021-08-17 08:45:23 字數 1261 閱讀 9438

驗證碼識別前期準備:

2.安裝pytesseract:pip install pytesseract

3.之前pil,pillow已經裝過,如果沒有安裝pil的:請看這裡

4.我的環境:python2.7&opencv3.4

**如下:

# -*- coding=gbk -*-

import cv2 as cv

import image

import pytesseract

def recognize_text():

gray = cv.cvtcolor(src, cv.color_bgr2gray)

ret, binary = cv.threshold(gray, 0, 255, cv.thresh_binary_inv | cv.thresh_otsu)

kernel = cv.getstructuringelement(cv.morph_rect, (1, 6))

binl = cv.morphologyex(binary, cv.morph_open, kernel)

kernel = cv.getstructuringelement(cv.morph_rect, (5, 1))

open_out = cv.morphologyex(binl, cv.morph_open, kernel)

cv.bitwise_not(open_out, open_out) # 背景變為白色

cv.imshow("轉換", open_out)

textimage = image.fromarray(open_out)

text = pytesseract.image_to_string(textimage)

print("this ok:%s"%text)

src = cv.imread("c:")

cv.imshow("原來", src)

recognize_text()

cv.waitkey(0)

cv.destroyallwindows()

執行結果:

ok  ok  ok   第一輪opencv課程學習到此結束                          

Opencv 形態學開操作Python實現

影象形態學 開操作 形態學的開操作是基於腐蝕與膨脹兩個操作的組合實現的 開操作 腐蝕 膨脹 開操作的作用 開操作可以刪除二值影象中小的干擾塊,降低影象二值化之後噪點過多的問題 void cv morphologyex inputarray src,outputarray dst,int op,inp...

OpenCV 初識輪廓(Python實現)

什麼是輪廓 輪廓可以簡單認為成將連續的點 連著邊界 連在一起的曲線,具有相同的顏色或者灰度。輪廓在形狀分析和物體的檢測和識別中很有用 怎樣查詢輪廓 cv2.findcontours image,mode,method offset 尋找乙個二值影象的輪廓。注意黑色表示背景,白色表示物體,即在黑色背景...

基於python語言 Opencv3例項學習筆記1

在opencv中對的處理一般都會應用到傅利葉變換的概念,其實以前在學習訊號處理時應用到這個概念.一般而言,傅利葉變換的實質是指觀察得到所有的波形都可以由一系列簡單且不同頻率的正弦波疊加而來.但是這個概念應用在影象處理上有什麼用呢?其實影象也是訊號的一種表達形式,我們常見的影象其實就是二維的離散訊號,...