From 5a83174b7cc307e1d1f1e4ebc1a3b1be9734570a Mon Sep 17 00:00:00 2001 From: bsdnoobz Date: Fri, 14 Dec 2012 18:28:41 +0700 Subject: Added display-histogram.py --- display-histogram.py | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 display-histogram.py diff --git a/display-histogram.py b/display-histogram.py new file mode 100644 index 0000000..0f0fedd --- /dev/null +++ b/display-histogram.py @@ -0,0 +1,33 @@ +#!/usr/bin/env python + +""" +Sample code for displaying image histogram with Matplotlib +""" + +import cv2 +import matplotlib.pyplot as plt + +def show_histogram(im): + """ Function to display image histogram. + Supports single and three channel images. """ + if im.ndim == 2: + # Input image is single channel + plt.hist(im.flatten(), 256, range=(0,250), fc='k') + plt.show() + elif im.ndim == 3: + # Input image is three channels + fig = plt.figure() + fig.add_subplot(311) + plt.hist(im[...,0].flatten(), 256, range=(0,250), fc='b') + fig.add_subplot(312) + plt.hist(im[...,1].flatten(), 256, range=(0,250), fc='g') + fig.add_subplot(313) + plt.hist(im[...,2].flatten(), 256, range=(0,250), fc='r') + plt.show() + +if __name__ == '__main__': + im = cv2.imread("lena.jpg"); + if not (im == None): + show_histogram(im) + + -- cgit v1.2.3