Related Articles

Related Articles

Addition and Blending of images using OpenCV in Python
  • Difficulty Level : Medium
  • Last Updated : 06 Feb, 2018

When we talk about images, we know its all about the matrix either binary image(0, 1), gray scale image(0-255) or RGB image(255 255 255). So additions of the image is adding the numbers of two matrices. In OpenCV, we have a command cv2.add() to add the images.

Below is code for Addition of two images using OpenCV :

filter_none

edit
close

play_arrow

link
brightness_4
code

# 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()

chevron_right


But sometimes we do not want to perform simple addition in image, so in this case we have blending. This is also image addition, but different weights are given to images so that it gives a feeling of blending or transparency. Images are added as per the equation below :

g(x) = (1 - a)f(x) + af1(x)

By varying a from 0 -> 1, you can perform a cool transition between one image to another. Here two images are taken to blend together. First image is given a weight of 0.3 and second image is given 0.7, cv2.addWeighted() applies following equation on the image :

img = a . img1 + b . img 2 + y

Here y is taken as zero.



Below is code for Blending of images using OpenCV :

filter_none

edit
close

play_arrow

link
brightness_4
code

# 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()

chevron_right


Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course.




My Personal Notes arrow_drop_up
Recommended Articles
Page :