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

Cân bằng Histogram sử dụng module OpenCV Python

Đây là một phương pháp trong xử lý ảnh để điều chỉnh độ tương phản sử dụng histogram của ảnh.

Thực tế phương pháp này thường tăng cường độ tương phản toàn cục của nhiều ảnh, đặc biệt khi dữ liệu sử dụng của ảnh được biểu diễn bởi các giá trị tương phản gần nhau và thông qua điều chỉnh này, các cường độ có thể được phân bố tốt hơn trên histogram và nó cho phép các khu vực độ tương phản cục bộ thấp đạt được độ tương phản cao hơn.

OpenCV có một hàm để làm điều này, cv2.equalizeHist() và đầu vào của nó chỉ là ảnh thang độ xám (grayscale) và đầu ra là ảnh đã cân bằng histogram của chúng ta.

Kỹ thuật này tốt khi histogram của ảnh bị giới hạn trong một vùng cụ thể và nó sẽ không hoạt động tốt ở nơi có biến thể cường độ lớn và nơi histogram bao phủ một vùng lớn, tức là cả pixel sáng và tối đều có mặt.

Ảnh đầu vào

Cân bằng Histogram sử dụng module OpenCV Python

Mã ví dụ

import cv2
# import Numpy
import numpy as np
# đọc ảnh sử dụng phương thức imread
my_img = cv2.imread('C:/Users/TP/Pictures/west bengal/bishnupur/pp.jpg', 0)
equ = cv2.equalizeHist(my_img)
# xếp chồng cả hai ảnh cạnh nhau theo hướng ngang
res = np.hstack((my_img, equ))
# hiển thị ảnh input vs output
cv2.imshow('image', res)
cv2.waitKey(0)
cv2.destroyAllWindows()

Đầu ra

Cân bằng Histogram sử dụng module OpenCV Python