使用 Python OpenCv 模組進行直方圖均衡化
這是一種使用影像直方圖進行對比度調整的影像處理方法。
實際上,此方法通常會增加許多影像的全域性對比度,尤其是在影像的可用資料由接近的對比度值表示時,並且透過此調整,強度可以在直方圖上得到更好的分佈,並且它允許較低區域性對比度的區域獲得更高的對比度。
OpenCV 有一個函式可以執行此操作,cv2.equalizeHist(),其輸入只是灰度影像,輸出是直方圖均衡的影像。
當影像的直方圖侷限於特定區域時,此技術很不錯,在強度變化很大並且直方圖覆蓋了大區域的地方,它不起作用,即同時存在明亮畫素和暗畫素。
輸入

示例程式碼
import cv2 # import Numpy import numpy as np # reading an image using imreadmethod my_img = cv2.imread('C:/Users/TP/Pictures/west bengal/bishnupur/pp.jpg', 0) equ = cv2.equalizeHist(my_img) # stacking both the images side-by-side orientation res = np.hstack((my_img, equ)) # showing image input vs output cv2.imshow('image', res) cv2.waitKey(0) cv2.destroyAllWindows()
輸出

廣告