Вероятностное преобразование Хафа в OpenCV 2.4.9 (Python)
Мой вопрос о преобразовании Хафа в OpenCV 2.4.9 (Python).
Вот выдержка из учебника:
cv2.HoughLinesP (изображение, rho, тета, порог [, линии [, minLineLength[, maxLineGap]]]) → линии
Я не очень понимаю, что означает "линии [," ". Я использую функцию следующим образом:
lines = cv2.HoughLinesP (ребра, 1, np.pi/180, 25, 2,25,115)
Но что на самом деле означает параметр "2"? Кажется, ничего не меняется, когда я назначаю разные значения для этого параметра.
Tnanks..
1 ответ
Вы должны использовать это так
lines = cv2.HoughLinesP(edge_image, rho=1.0, theta=math.pi/180.0,
threshold=thresholdVal,
minLineLength=minlinelengthVal,
maxLineGap=maxlinegapVal)
Если вы прочитаете о преобразованиях Хафа и вероятностных преобразованиях Хафа, вы поймете, что для накопления всех граничных точек используется аккумулятор. rho
разрешение по расстоянию аккумулятора в пикселях и theta
угол разрешения аккумулятора в радианах.
И насколько cv2.HoughLinesP(image, rho, theta, threshold[, lines[, minLineLength[, maxLineGap]]]) → lines
Это касается документации, это своего рода перегрузка функций, но так как python предоставляет необязательные аргументы, это используется. lines[
просто означает, что вы можете передать пустой массив, где будут храниться строки. Так что теперь, если вы хотите передать другие параметры и пропустить lines
вам нужно будет передать их по имени параметра.