--- /dev/null
+#!/usr/bin/env python
+import unittest
+import sys
+import os
+import cvtestutils
+from cv import cvCreateHist, cvGetSize, cvCreateImage, cvCvtColor, cvSplit, cvCalcHist, cvCalcArrHist, CV_HIST_ARRAY
+from highgui import cvLoadImage
+
+image_fname = os.path.join( cvtestutils.datadir(), 'images', 'baboon_256x256.bmp' )
+class HistogramTestCase( unittest.TestCase ):
+ def setUp(self):
+ frame = cvLoadImage( image_fname )
+ frame_size = cvGetSize( frame )
+ r = cvCreateImage (frame_size, 8, 1)
+ g = cvCreateImage (frame_size, 8, 1)
+ b = cvCreateImage (frame_size, 8, 1)
+
+ cvSplit( frame, r, g, b, None)
+ self.rgb = (r,g,b)
+ assert(frame is not None)
+
+ hist_size = [64, 64, 64]
+ ranges = [ [0, 255], [0, 255], [0, 255] ]
+ self.hist = cvCreateHist( hist_size, CV_HIST_ARRAY, ranges, 1 )
+
+ def test_cvCreateHist( self ):
+ assert( self.hist is not None )
+
+ def test_cvCalcArrHist(self):
+ cvCalcArrHist( self.rgb, self.hist, 0, None)
+
+ def test_cvCalcHist(self):
+ cvCalcHist( self.rgb, self.hist, 0, None)
+
+def suite():
+ tests = ['test_cvCreateHist', 'test_cvCalcArrHist', 'test_cvCalcHist']
+ return unittest.TestSuite( map(HistogramTestCase, tests))
+
+if __name__ == '__main__':
+ unittest.TextTestRunner(verbosity=2).run(suite())