Q:

cv2 rectangle fill color opacity

import cv2
import numpy as np

# Load image
img = cv2.imread('images/paddington.png')

# Initialize black image of same dimensions for drawing the rectangles
blk = np.zeros(img.shape, np.uint8)

# Draw rectangles
cv2.rectangle(blk, (5, 5), (100, 75), (255, 255, 255), cv2.FILLED)

# Generate result by blending both images (opacity of rectangle image is 0.25 = 25 %)
out = cv2.addWeighted(img, 1.0, blk, 0.25, 1)

cv2.imshow('Image', img)
cv2.imshow('Rects', blk)
cv2.imshow('Output', out)
cv2.waitKey(0)
cv2.destroyAllWindows()
0
# Python program to explain cv2.rectangle() method  
    
# importing cv2  
import cv2  
    
# path  
path = r'C:\Users\Rajnish\Desktop\geeksforgeeks\geeks.png'
    
# Reading an image in grayscale mode 
image = cv2.imread(path, 0) 
    
# Window name in which image is displayed 
window_name = 'Image'
   
# Start coordinate, here (100, 50) 
# represents the top left corner of rectangle 
start_point = (100, 50) 
   
# Ending coordinate, here (125, 80) 
# represents the bottom right corner of rectangle 
end_point = (125, 80) 
   
# Black color in BGR 
color = (0, 0, 0) 
   
# Line thickness of -1 px 
# Thickness of -1 will fill the entire shape 
thickness = -1
   
# Using cv2.rectangle() method 
# Draw a rectangle of black color of thickness -1 px 
image = cv2.rectangle(image, start_point, end_point, color, thickness) 
   
# Displaying the image  
cv2.imshow(window_name, image)  
-1

New to Communities?

Join the community