Я использую функцию opencv houghlinesp для обнаружения прямых линий в изображении. Когда изображение содержит тонкие линии, обнаружение работает отлично. Однако, когда изображение содержит толстые линии, алгоритм обнаруживает их как две параллельные линии вместо одной строки. < /P>
Вот мой текущий код: < /p>
import cv2
import numpy as np
image_path = "thickLines.png"
image = cv2.imread(image_path)
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
# Thresholding to create a binary image
_, binary = cv2.threshold(gray, 200, 255, cv2.THRESH_BINARY_INV)
# Edge Detection
edges = cv2.Canny(binary, 50, 150, apertureSize=3)
# Hough Line Transform to Detect Walls
lines = cv2.HoughLinesP(edges, 1, np.pi / 180, 100, minLineLength=50, maxLineGap=5)
# Draw Detected Walls
if lines is not None:
for line in lines:
x1, y1, x2, y2 = line[0]
cv2.line(image, (x1, y1), (x2, y2), (0, 255, 0), 2) # Draw thick lines in green
# Show Final Processed Image
cv2.imshow("Detected Image", image)
cv2.waitKey(0)
cv2.destroyAllWindows()
Я попытался настройки пороговых значений хитрых краев и модифицировать MinlineLength и maxlinegap , но проблема сохраняется. /> Как я могу изменить свой подход, чтобы объединить или упростить обнаруженные толстые линии в одну строку? /> Зеленые линии представляют собой обнаруженные линии из изображения
Я использую функцию opencv houghlinesp для обнаружения прямых линий в изображении. Когда изображение содержит тонкие линии, обнаружение работает отлично. Однако, когда изображение содержит толстые линии, алгоритм обнаруживает их как две параллельные линии вместо одной строки. < /P> Вот мой текущий код: < /p> [code]import cv2 import numpy as np
# Hough Line Transform to Detect Walls lines = cv2.HoughLinesP(edges, 1, np.pi / 180, 100, minLineLength=50, maxLineGap=5)
# Draw Detected Walls if lines is not None: for line in lines: x1, y1, x2, y2 = line[0] cv2.line(image, (x1, y1), (x2, y2), (0, 255, 0), 2) # Draw thick lines in green
# Show Final Processed Image cv2.imshow("Detected Image", image) cv2.waitKey(0) cv2.destroyAllWindows() [/code] Я попытался настройки пороговых значений хитрых краев и модифицировать MinlineLength и maxlinegap , но проблема сохраняется. /> Как я могу изменить свой подход, чтобы объединить или упростить обнаруженные толстые линии в одну строку? /> Зеленые линии представляют собой обнаруженные линии из изображения
Я использую функцию opencv houghlinesp для обнаружения прямых линий в изображении. Когда изображение содержит тонкие линии, обнаружение работает отлично. Однако, когда изображение содержит толстые линии, алгоритм обнаруживает их как две параллельные...
Я работаю над отсканированным изображением, которое по сути представляет собой рукописное письмо. Моя цель — найти ограничивающие рамки каждой строки на этом изображении. Но ограничивающие рамки не должны перекрывать друг друга.
Входное...
Я хочу, чтобы это приложение было развернуто на сервере и работало, и я хочу, чтобы оно использовалось в качестве jar-файла зависимостей в другом проекте. Я хочу исключить папку ресурсов только из банки зависимостей (тонкая банка) и включить ее в...
Я хочу, чтобы это приложение было развернуто на сервере и работало, и я хочу, чтобы оно использовалось в качестве jar-файла зависимостей в другом проекте. Я хочу исключить папку ресурсов только из банки зависимостей (тонкая банка) и включить ее в...
Я пытаюсь отслеживать небольшой, быстро движущийся мяч пинг-понга с OpenCV в Python. Я сейчас использую преобразование Хаф, каковы лучшие параметры? Кроме того, является ли Hough лучшим вариантом или чем-то вроде эллиптического...