Виявлення Кутів і Плям
Виявлення кутів
Виявлення кутів використовується для ідентифікації різких змін інтенсивності у місцях, де зустрічаються два краї. Це допомагає у зіставленні ознак, відстеженні об'єктів та розпізнаванні структури.
Популярні методи:
Детектор кутів Харріса (
cv2.cornerHarris
): виявляє кути на основі змін градієнта;
Детектор кутів Ші-Томасі (
cv2.goodFeaturesToTrack
): обирає найсильніші кути на зображенні;
Виявлення плям
Виявлення плям знаходить області з подібною інтенсивністю на зображенні, що корисно для виявлення та відстеження об'єктів.
Один із популярних методів виявлення плям — SimpleBlobDetector
cv2.SimpleBlobDetector
: виявляє ключові точки, що представляють плями, на основі розміру, форми та інтенсивності.
Swipe to start coding
Вам надано зображення фабрики (factory
) та соняшників (sunflowers
):
- Перетворіть зображення
factory
у відтінки сірого та збережіть у зміннійgray_factory
; - Перетворіть зображення
sunflowers
у відтінки сірого та збережіть у зміннійgray_sunflowers
; - Для детектора Харріса необхідно перетворити матрицю зображення у формат
float32
, зробіть це та збережіть уgray_float
; - Застосуйте детектор кутів Харріса та збережіть у
harris_corners
(рекомендовані параметри:blockSize=2, ksize=3, k=0.04
); - Використайте
dilate()
для покращення видимостіharris_corners
; - Застосуйте детектор кутів Ші-Томасі до зображення та збережіть у
shi_tomasi_corners
(рекомендовані параметри:gray_factory, maxCorners=100, qualityLevel=0.01, minDistance=10
) - Створіть об'єкт
SimpleBlobDetector_Params
для ініціалізації параметрів та збережіть уparams
; - Створіть детектор blob з вказаними параметрами та збережіть у
detector
; - Виявлені ключові точки blob збережіть у
keypoints
.
Рішення
Дякуємо за ваш відгук!