Я следовал руководству по размытию изображения на основе цветовой сегментации: https://realpython.com/python-opencv-color-spaces/
Но у меня возникли проблемы с размыванием только nemo на исходном изображении.
То, что я так далеко от следования руководству:
import matplotlib.pyplot as plt
import cv2
nemo = cv2.imread('nemo.png')
nemo = cv2.cvtColor(nemo, cv2.COLOR_BGR2RGB)
hsv_nemo = cv2.cvtColor(nemo, cv2.COLOR_RGB2HSV)
light_orange = (1, 190, 200)
dark_orange = (18, 255, 255)
light_white = (0, 0, 200)
dark_white = (145, 60, 255)
mask = cv2.inRange(hsv_nemo, light_orange, dark_orange)
mask_white = cv2.inRange(hsv_nemo, light_white, dark_white)
final_mask = mask + mask_white
final_result = cv2.bitwise_and(nemo, nemo, mask=final_mask)
blur = cv2.blur(final_result, (15, 15), 0)
Я вычеркнул 1) nemo
, 2) final_mask
и 3) blur
для сравненияздесь: Результат изображения
Могу ли я размыть изображение Немо на исходной фотографии так, чтобы оно выглядело примерно так: Размытое исходное фото
На данный момент он только размывает немо на изображении маски.
Я думаю, что мне нужно получить ROI для этого, но как мне сформировать связь между маской и получением координат /ROI Немо из оригинального фото?Спасибо!