使用 Python OpenCv 模組進行直方圖均衡化


這是一種使用影像直方圖進行對比度調整的影像處理方法。

實際上,此方法通常會增加許多影像的全域性對比度,尤其是在影像的可用資料由接近的對比度值表示時,並且透過此調整,強度可以在直方圖上得到更好的分佈,並且它允許較低區域性對比度的區域獲得更高的對比度。

OpenCV 有一個函式可以執行此操作,cv2.equalizeHist(),其輸入只是灰度影像,輸出是直方圖均衡的影像。

當影像的直方圖侷限於特定區域時,此技術很不錯,在強度變化很大並且直方圖覆蓋了大區域的地方,它不起作用,即同時存在明亮畫素和暗畫素。

輸入

Madanmohan Temple

示例程式碼

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

輸出

Madanmohan Output

更新於:30-7-2019

瀏覽 616 次

開啟 職業 生涯

透過完成課程獲取認證

開始
廣告