Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Cộng và trộn ảnh sử dụng OpenCV trong Python

Chúng ta biết rằng khi giải quyết bất kỳ bài toán liên quan đến ảnh nào, chúng ta phải lấy một ma trận. Nội dung ma trận sẽ thay đổi tùy thuộc vào loại ảnh - hoặc là ảnh nhị phân (0, 1), ảnh thang độ xám (0-255) hoặc ảnh RGB (255 255 255). Vì vậy nếu chúng ta muốn cộng hai ảnh thì nghĩa là rất đơn giản chúng ta phải cộng hai ma trận tương ứng.

Trong thư viện OpenCV, chúng ta có hàm cv2.add() để cộng ảnh. Nhưng để cộng ảnh, kích thước của hai ảnh phải giống nhau.

Cộng hai ảnh

import cv2
# Đọc Ảnh 1
my_firstpic = cv2.imread('C:/Users/TP/Pictures/west bengal/bishnupur/mqdefaultILPT6GSR.jpg', 1)
cv2.imshow('image', my_firstpic)
# Đọc Ảnh 2
my_secpic = cv2.imread('C:/Users/Satyajit/Pictures/west bengal/bishnupur/pp.jpg', 1)
img = cv2.add(my_firstpic, my_secpic)
cv2.waitKey(0)
cv2.destroyAllWindows()

Đầu ra

Cộng và trộn ảnh sử dụng OpenCV trong Python

Trộn (Blending) hai ảnh

Hàm cv2.addWeighted() được dùng cho trộn hai ảnh.

Mã ví dụ

import cv2
# Đọc Ảnh 1
My_first = cv2.imread('C:/Users/TP/Pictures/west bengal/bishnupur/mqdefaultILPT6GSR.jpg', 1)
# Đọc Ảnh 2
My_second = cv2.imread('C:/Users/TP/Pictures/west bengal/bishnupur/pp.jpg', 1)
# Trộn ảnh với trọng số 0.3 và 0.7
My_img = cv2.addWeighted(My_first, 0.3, My_second, 0.7, 0)
# Hiển thị ảnh
cv2.imshow('image', My_img)
# Chờ phím
cv2.waitKey(0)
# Hủy tất cả cửa sổ mở
cv2.destroyAllWindows()

Đầu ra

Cộng và trộn ảnh sử dụng OpenCV trong Python