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

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

Сообщение Anonymous »

введите описание изображения здесь. Я пытаюсь использовать метод Харриса для обнаружения углов на шахматной доске, но получаю неудовлетворительный результат.
На самом деле я столкнулся со следующими проблемами :
  • Не все монеты обнаружены (см. прикрепленное изображение).
  • Точки, обозначающие углы, не обнаружены. чего я ожидал: я хочу, чтобы эти точки были круглыми, по одной точке на каждую обнаруженную угол
Мой код можно найти ниже.
Может ли кто-нибудь мне помочь?
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»