Я очень новичок в OpenCV (и в StackOverflow). Я пишу программу с OpenCV, которая делает снимок с объектом (например, ручкой (рис, телефон), положенной на бумагу) и вычисляет сколько процентов составляет объект от изображения.
Проблема, с которой я сталкиваюсь, заключается в том, что на пороговом изображении (попробовал адаптивное и otsu) фото немного затенено по краям:
И вот мой код:
import cv2
img = cv2.imread("image.png")
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
b,g,r = cv2.split(img)
th, thresh = cv2.threshold(b, 100, 255, cv2.THRESH_BINARY|cv2.THRESH_OTSU)
cv2.imwrite("image_bl_wh.png", thresh)
Пробовал размытие и морфологию, но не смог.
Как я могу заставить свою программу считать черные части вокруг изображения фоном, и есть ли более лучший и простой способ сделать это?
P.S. Извините за мои грамматические ошибки в английском.