обнаружение контуров белого объекта - PullRequest
1 голос
/ 03 июля 2019

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

Это то, что я получаю, обнаруживается только часть объекта

Detected Image

вот код, который я использовал

import cv2
import numpy as np

rawImage = cv2.imread('C:\\Users\\user1\\calibration\\painted2.jpg') 
hsv = cv2.cvtColor(rawImage, cv2.COLOR_BGR2HSV)
lower_white = np.array([0,3,240])
higher_white = np.array([255,5,255])
# getting the range of blue color in frame
white_range = cv2.inRange(hsv, lower_white, higher_white)
cv2.imshow("White", white_range);cv2.waitKey(0);

Может кто-нибудь сказать, что я делаю неправильно, и как я могу найти полный объект

1 Ответ

1 голос
/ 03 июля 2019

Попробуйте настроить цветовую гамму:

lower_white = np.array([0,0,180])
higher_white = np.array([255,255,255])
white_range = cv2.inRange(hsv, lower_white, higher_white)
plt.imshow(white_range, cmap='gray')

дает

enter image description here

Или вы можете отфильтровать прямо по BGR цветовое пространство:

lower_white = (180,180,180)
higher_white = (255,255,255)
white_range = cv2.inRange(rawImage, lower_white, higher_white)

дает

enter image description here

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