использование opencv LineSegmentDetector для поиска строки изображения - PullRequest
0 голосов
/ 31 мая 2019

У меня есть цветное изображение, и я должен использовать алгоритм OpenCV LineSegmentDetector для обнаружения линий прямоугольников на изображении

Вот мое изображение: enter image description here

Я использую этот код:

import cv2
img = cv2.imread("rectangles.jpg",0)

#Create default parametrization LSD
lsd = cv2.createLineSegmentDetector(0)

#Detect lines in the image
lines = lsd.detect(img)[0] 

#Draw detected lines in the image
drawn_img = lsd.drawSegments(img,lines)

#Show image
cv2.imshow("LSD",drawn_img )
cv2.waitKey(0)

и я получаю эту ошибку:

<ipython-input-18-93ae667b0648> in <module>()
      3 
      4 #Create default parametrization LSD
----> 5 lsd = cv2.createLineSegmentDetector(0)
      6 
      7 #Detect lines in the image

error: OpenCV(4.1.0) C:\projects\opencv-python\opencv\modules\imgproc\src\lsd.cpp:143: error: (-213:The function/feature is not implemented) Implementation has been removed due original code license issues in function 'cv::LineSegmentDetectorImpl::LineSegmentDetectorImpl'

Я проверил документацию open-cv версии 4.1, чтобы использовать этот метод, и вот страница, но я не понимаю, как мне использовать этот метод.

любая помощь приветствуется.

1 Ответ

1 голос
/ 31 мая 2019

Читали ли вы сообщение об ошибке?

ошибка: OpenCV (4.1.0) C: \ projects \ opencv-python \ opencv \ modules \ imgproc \ src \ lsd.cpp: 143:ошибка: (-213: функция / функция не реализована)
Реализация удалена из-за проблем с лицензией исходного кода в функции 'cv :: LineSegmentDetectorImpl :: LineSegmentDetectorImpl'

Класс не являетсядоступно из-за проблем с лицензией.

Вы можете видеть, что здесь в оригинальном источнике.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...