นี่เป็นวิธีหนึ่งในการประมวลผลภาพเพื่อปรับคอนทราสต์โดยใช้ฮิสโตแกรมของภาพ
จริงๆ แล้ว วิธีการนี้มักจะเพิ่มคอนทราสต์โดยรวมของรูปภาพจำนวนมาก โดยเฉพาะอย่างยิ่งเมื่อข้อมูลที่ใช้งานได้ของรูปภาพนั้นแสดงด้วยค่าคอนทราสต์ที่ใกล้เคียง และด้วยการปรับนี้ ความเข้มสามารถกระจายได้ดีขึ้นบนฮิสโตแกรม และช่วยให้พื้นที่ที่มีความเปรียบต่างในท้องถิ่นต่ำกว่า ได้ความคมชัดสูง
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()