Máscara de imagen : utilice imágenes, gráficos u objetos seleccionados para ocluir la imagen (parcial o completamente) que se procesará para controlar el área o el proceso de procesamiento de la imagen. Dado que la imagen u objeto específico cubierto se llama máscara, cuando se procesa la imagen, hay muchos requisitos para enmascarar la imagen. A continuación, lo demostraré con la siguiente imagen de perros y gatos. Cabeza de gatito.
Primero mira las representaciones:
Python implementa el procesamiento de imágenes con máscaras
Importar las bibliotecas necesarias
Los recursos de la biblioteca necesarios esta vez se combinan cv2
y numpy
se pip install xxx
pueden descargar a través de .
import cv2
import numpy as np
Crear imagen de máscara
Para crear una máscara, debe mirar el tamaño de la imagen y crear su propia máscara de acuerdo con el tamaño de la imagen. Por supuesto, también puede elegir la máscara que desee. Las máscaras que creé aquí incluyen máscaras cuadradas y máscaras circulares.
Máscara cuadrada
Las coordenadas de la máscara son [10: 170, 50: 220].
# 创建掩膜
mask = np.zeros([img.shape[0], img.shape[1]], dtype=np.uint8)
mask[10:170, 50:220] = 255
Máscara circular
Coordenadas de la máscara:
x = 140
y = 100
r = 80
# 创建掩膜
x = 140
y = 100
r = 80
mask = np.zeros(img.shape[:2], dtype=np.uint8)
mask = cv2.circle(mask, (x, y), r, (255, 255, 255), -1)
Costura de máscara e imagen original
La fusión de imágenes utiliza cv2.add, que fusiona la máscara con la imagen original.
image = cv2.add(img, np.zeros(np.shape(img), dtype=np.uint8), mask=mask)
Mostrar imagen
# 展示原图
cv2.imshow("img", img)
# 展示掩膜图片
cv2.imshow("mask", mask)
# 展示添加掩膜效果图片
cv2.imshow("image", image)
Mostrar resultados
Imagen original:
máscara cuadrada imagen:
máscara cuadrada combinada e imagen original:
máscara circular imagen:
máscara circular combinada e imagen original:
para resumir
El principio de la máscara de oclusión es muy simple. Primero, cree una imagen negra del mismo tamaño que la imagen, luego cambie los píxeles del área que se va a mostrar a blanco y, finalmente, use cv2.add para superponer la imagen y la máscara para lograr la visualización de la oclusión de la imagen.