Cuando hablamos de imágenes, sabemos que todo se trata de la array, ya sea imagen binaria (0, 1) , imagen en escala de grises (0-255) o imagen RGB (255 255 255) . Entonces, las sumas de la imagen son sumas de los números de dos arrays. En OpenCV, tenemos un comando cv2.add() para agregar las imágenes.
A continuación se muestra el código para la adición de dos imágenes usando OpenCV:
# Python program for adding # images using OpenCV # import OpenCV file import cv2 # Read Image1 mountain = cv2.imread('F:\mountain.jpg', 1) # Read image2 dog = cv2.imread('F:\dog.jpg', 1) # Add the images img = cv2.add(mountain, dog) # Show the image cv2.imshow('image', img) # Wait for a key cv2.waitKey(0) # Distroy all the window open cv2.distroyAllWindows()
Pero a veces no queremos realizar sumas simples en la imagen, así que en este caso tenemos mezcla. Esto también es una adición de imágenes, pero se les da diferentes pesos a las imágenes para que den una sensación de fusión o transparencia. Las imágenes se agregan según la siguiente ecuación:
g(x) = (1 - a)f(x) + af1(x)
Al variar a de 0 -> 1, puede realizar una transición genial entre una imagen y otra. Aquí se toman dos imágenes para mezclarlas. A la primera imagen se le da un peso de 0.3 y a la segunda imagen se le da 0.7, cv2.addWeighted() aplica la siguiente ecuación en la imagen:
img = a . img1 + b . img 2 + y
Aquí y se toma como cero.
A continuación se muestra el código para la combinación de imágenes usando OpenCV:
# Python program for blending of # images using OpenCV # import OpenCV file import cv2 # Read Image1 mountain = cv2.imread('F:\mountain.jpg', 1) # Read image2 dog = cv2.imread('F:\dog.jpg', 1) # Blending the images with 0.3 and 0.7 img = cv2.addWeighted(mountain, 0.3, dog, 0.7, 0) # Show the image cv2.imshow('image', img) # Wait for a key cv2.waitKey(0) # Distroy all the window open cv2.distroyAllWindows()
Publicación traducida automáticamente
Artículo escrito por Kishor Mishra y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA