Как наложить маску оттенков серого поверх изображения RGB с помощью Numpy и Matplotlib (изображение opencv или scikit, еPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как наложить маску оттенков серого поверх изображения RGB с помощью Numpy и Matplotlib (изображение opencv или scikit, е

Сообщение Anonymous »

У меня есть 2 изображения из набора данных изображений Carvana, где изображение — jpg, а маска — gif. Я преобразовал маску в оттенки серого как 0 или 1 и теперь хочу наложить ее на изображение, чтобы увидеть эти 3 исходные маски, наложенные рядом друг с другом с помощью matplotlib. Как правильно это сделать?

Код: Выделить всё

from PIL import Image

def get_pair(image_path, mask_path):
image = np.array(Image.open(image_path).convert('RGB'))
mask = np.array(Image.open(mask_path).convert('L'), dtype = np.float32) # Mask should be Grayscale so each value is either 0 or 255
mask[mask == 255.0] = 1.0 # whereever there is 255, convert it to 1: (1 == 255 == White)
return image, mask
Один из способов:

Код: Выделить всё

image, mask = data[0]
image = image / 255
mask = np.stack((mask,)*3, axis=-1)

blended = image * mask
plt.imshow(blended)
но он показывает только машину и все остальное черным
Ниже приведены два изображения
Изображение
Изображение

и я хочу отобразить эти 3 как:
Изображение


Подробнее здесь: https://stackoverflow.com/questions/714 ... tplotlib-o
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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