Итак, я пытался определять края с помощью HoughLinesP (), но вместо получения точных линий и их конечных точек, мой вывод не хватает того, что мне нужно.
image = cv2.imread('C:\\Users\\Jimit\\Desktop\\Project\\Original Images\\Original Capture.jpg')
#Hough Line Detection.
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
edges = cv2.Canny(gray, 100, 150)
minLineLength = 200
maxLineGap = 100
lines = cv2.HoughLinesP(edges, 1, np.pi/180, 30, minLineLength, maxLineGap)
for line in lines:
x1, y1, x2, y2 = line[0]
cv2.line(image, (x1, y1), (x2, y2), (0, 255, 0), 2)
print(line)
for theta in lines:
a = np.cos(theta)
b = np.sin(theta)
print(a)
print(b)
cv2.imshow('ab', image)
cv2.waitKey(0)
Как видно из изображений и вывода оболочки, я не могу получить точные строки. Кроме того, мой код, кажется, не в состоянии захватить вертикальные линии.