Ich habe diese Quelle Bild:HoughLines Verbesserung für horizontale Linien erkennen (Python, OpenCV)
Mein Ziel ist es, die untere Zeile zu entfernen, während die Buchstaben/Zahlen unberührt bleiben.
Dies ist der Code, den ich verwenden:
import cv2
import numpy as np
img = cv2.imread('src.png')
gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
edges = cv2.Canny(gray,100,200,apertureSize = 5)
minLineLength = 0
maxLineGap = 19
lines = cv2.HoughLinesP(edges,1,np.pi/180,15,minLineLength,maxLineGap)
for x in range(0, len(lines)):
for x1,y1,x2,y2 in lines[x]:
cv2.line(img,(x1,y1),(x2,y2),(255,255,255),2)
cv2.imshow('hough',img)
cv2.waitKey(0)
Das beste Ergebnis, das ich jetzt dies erreicht:
Wie kann ich es weiter zu verbessern, um das Bild zu reinigen, so viel wie möglich ? Zum Beispiel alle Trümmer rund um das Bild, Punkte und (noch) Linien unter den Wörtern, wie kann ich sie entfernen?
Vielen Dank.
OT: gibt es eine Möglichkeit, eine Trackbar von diesem zu erstellen, die die Parameter ändern (ApertureSize, MinLineLength, MaxLineGap usw.), um Ergebnisse in Echtzeit zu sehen?
Haben Sie sich Gedanken über eine OCR über die Spitze läuft und mit den von der gesammelten Daten alles andere weiß zu machen? – GPPK
In der Tat ja. Ich habe gestern OCR verwendet, um die Zeichen zu extrahieren und alles andere zu löschen. Aber, wie Sie sehen können, hier sind Handschrift-Zeichen und OCR einfach scheitern hier. Ist das meinst du? – Link
C++ Trackbar: http://docs.opencv.org/3.3.0/da/d6a/tutorial_trackbar.html Python Trackbar: http://docs.opencv.org/3.3.0/d9/dc8/tutorial_py_trackbar.html – zindarod