den followig Code Gegeben:Löschen segmentierten Zeilen (OpenCV, Python)
import numpy as np
import cv2
gray = cv2.imread('image.png')
edges = cv2.Canny(gray,50,150,apertureSize = 3)
cv2.imwrite('edges-50-150.jpg',edges)
minLineLength=100
lines = cv2.HoughLinesP(image=edges,rho=1,theta=np.pi/180, threshold=100,lines=np.array([]), minLineLength=minLineLength,maxLineGap=80)
a,b,c = lines.shape
for i in range(a):
cv2.line(gray, (lines[i][0][0], lines[i][0][1]), (lines[i][0][2], lines[i][0][3]), (0, 0, 255), 1, cv2.LINE_AA)
cv2.imwrite('houghlines.jpg', gray)
cv2.imshow('img', gray)
cv2.waitKey(0)
ich die horizontalen Linien erreichen kann, dass es in diesem (Quelle) Bild sind:
Dies ist das Ergebnis:
Wie kann ich die roten Linien löschen? Was ich erreichen möchte, ist diese Zeilen zu löschen, damit das Bild sauberer und bereit ist, von einem anderen Prozess verwendet zu werden. Der Code wurde von here übernommen.
Chang e die rote Farbe (0, 0, 255) zu weiß (255, 255, 255) –
Hilft ein bisschen. Vielen Dank. Du bist auch gut mit OpenCV? – Link
Ja, ich habe an Computer-Vision und Bildverarbeitung aus den letzten 1,5 Jahren gearbeitet –