Изменение цвета определенного объекта на изображении с помощью OpencvPython

Программы на Python
Ответить
Anonymous
 Изменение цвета определенного объекта на изображении с помощью Opencv

Сообщение Anonymous »

Я хочу изменить цвет дивана на данном изображении:
Изображение

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

Пожалуйста, дайте мне знать, есть ли какие-нибудь простые способы настроить цвет дивана.
Я уже пробовал менять оттенок. Я не могу получить нужный цвет, изменив оттенок с помощью библиотеки openCV. Если это возможно с использованием CSS и Javascript, это тоже нормально.
Заранее спасибо.
К вашему сведению, код приведен ниже:
import cv2
import numpy as np
from google.colab.patches import cv2_imshow

image = cv2.imread('/content/bluesofa.jpg')
cv2_imshow(image)

result = image.copy()

image = cv2.cvtColor(image, cv2.COLOR_BGR2HSV)

# lower boundary Blue color range values; Hue (100 - 110)
lower1 = np.array([90, 100, 20])
upper1 = np.array([100, 255, 255])

# upper boundary Blue color range values; Hue (120 - 130)
lower2 = np.array([100,100,20])
upper2 = np.array([120,255,255])

lower_mask = cv2.inRange(image, lower1, upper1)
upper_mask = cv2.inRange(image, lower2, upper2)

full_mask = lower_mask + upper_mask;

result = cv2.bitwise_and(result, result, mask=full_mask)

cv2_imshow(full_mask)
cv2.imwrite('masked_object.jpg',result)

img= cv2.imread('/content/masked_object.jpg')

img_hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)

# extract the hue channel from the hsv image
hue = img_hsv[:,:,0]

# increment the hue values by 60(random number,could be any number)
hue = hue + 60

# if pixel values become > 180, subtract 180
cond_h = hue[:, :] > 180
hue[cond_h] = hue[cond_h] - 180

# assign the modified hue channel to hsv image

img_hsv[:,:,0] = hue

im = cv2.cvtColor(img_hsv, cv2.COLOR_HSV2BGR)

result = cv2.bitwise_or(original_img,im)

cv2_imshow(result)


Подробнее здесь: https://stackoverflow.com/questions/743 ... ing-opencv
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»