Почему детектор углов Харриса не может точно обнаружить углы шахматной доски?Python

Программы на Python
Ответить
Anonymous
 Почему детектор углов Харриса не может точно обнаружить углы шахматной доски?

Сообщение Anonymous »

Я пытаюсь использовать метод Харриса для обнаружения углов на шахматной доске, но результат неудовлетворительный:
Изображение

На самом деле я столкнулся со следующими проблемами:
[*]Не все углы обнаружены (см. изображение прилагается).
[*]Точки, обозначающие углы, не такие, как я ожидал: я хочу, чтобы эти точки были круглыми, по одной точке на каждый обнаруженный угол.
< /ul>
Мой код можно найти ниже.
import cv2 as cv
import numpy as np

file = chess.bmp
img = cv.imread(file)
img_gray = cv.cvtColor(img, cv.COLOR_BGR2GRAY)
img_gray = np.float32(img_gray)

dst = cv.cornerHarris(img_gray, blockSize=2, ksize=3, k=0.02)

dst = cv.dilate(dst, None)

img[dst > 0.01 * dst.max()] = [0, 0, 255]

cv.imshow("Corner detection", img)
cv.waitKey()
cv.destroyAllWindows()


Подробнее здесь: https://stackoverflow.com/questions/793 ... chessboard
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»