mirror of https://github.com/opencv/opencv.git
Open Source Computer Vision Library
https://opencv.org/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
61 lines
1.6 KiB
61 lines
1.6 KiB
#!/usr/bin/env python |
|
import unittest |
|
import cvtestutils |
|
from cv import * |
|
|
|
class cmp_test(unittest.TestCase): |
|
def setUp(self): |
|
self.w=17 |
|
self.h=17 |
|
self.x0 = cvCreateMat(self.w,self.h,CV_32F) |
|
self.x1 = cvCreateMat(self.w,self.h,CV_32F) |
|
cvSet(self.x0, cvScalarAll(0.0)) |
|
cvSet(self.x1, cvScalarAll(1.0)) |
|
def check_format(self, y): |
|
assert( y.rows == self.h ) |
|
assert( y.cols == self.w ) |
|
assert( CV_MAT_DEPTH(y.type)==CV_8U ) |
|
def check_allzero(self, y): |
|
assert( cvCountNonZero(y)==0 ) |
|
def check_all255(self, y): |
|
nonzero=cvCountNonZero(y) |
|
assert( nonzero==self.w*self.h ) |
|
sum = cvSum(y)[0] |
|
assert( sum == self.w*self.h*255 ) |
|
|
|
def test_CvMat_gt(self): |
|
y=self.x1>0 |
|
self.check_format( y ) |
|
self.check_all255( y ) |
|
y=self.x0>0 |
|
self.check_format( y ) |
|
self.check_allzero( y ) |
|
|
|
def test_CvMat_gte(self): |
|
y=self.x1>=0 |
|
self.check_format( y ) |
|
self.check_all255( y ) |
|
y=self.x0>=0 |
|
self.check_format( y ) |
|
self.check_all255( y ) |
|
|
|
def test_CvMat_lt(self): |
|
y=self.x1<1 |
|
self.check_format( y ) |
|
self.check_allzero( y ) |
|
y=self.x0<1 |
|
self.check_format( y ) |
|
self.check_all255( y ) |
|
|
|
def test_CvMat_lte(self): |
|
y=self.x1<=1 |
|
self.check_format( y ) |
|
self.check_all255( y ) |
|
y=self.x0<=1 |
|
self.check_format( y ) |
|
|
|
def suite(): |
|
return unittest.TestLoader().loadTestsFromTestCase(cmp_test) |
|
|
|
if __name__ == '__main__': |
|
unittest.TextTestRunner(verbosity=2).run(suite())
|
|
|