我正在使用Python的opencv來清理圖像,使之可讀取tesseract。我有一個黑白圖像,經過自適應閾值處理後,它看起來不夠好。有很多紙張噪音,字母不那麼幹淨。我該如何解決它?二進制後創建可讀的詞
adaptiveThreshold方法:
源cv2.adaptiveThreshold(img, 255, cv2.ADAPTIVE_THRESH_GAUSSIAN_C, cv2.THRESH_BINARY, 11, 2)
:
adaptiveThreshold後:
還我試圖腐蝕和膨脹:
個kernel = np.ones((2,2), np.uint8)
e = cv2.erode(roi_sharpen, kernel, iterations=1))
d = cv2.dilate(roi_sharpen, kernel, iterations=1))
結果:
您可以在二值化之前或之後應用噪聲過濾(例如高斯濾波器)。您也可以使用邊緣檢測濾鏡(例如Canny)而不是自適應閾值來提取邊緣。 –
我試過了。但更糟的是:/ –
errode和dilate的組合可能會訣竅 –