50 lines
1.3 KiB
Python
50 lines
1.3 KiB
Python
|
#/usr/bin/env python
|
||
|
|
||
|
import unittest
|
||
|
import random
|
||
|
import time
|
||
|
import math
|
||
|
import sys
|
||
|
import array
|
||
|
import urllib
|
||
|
import tarfile
|
||
|
import hashlib
|
||
|
import os
|
||
|
import getopt
|
||
|
import operator
|
||
|
import functools
|
||
|
import numpy as np
|
||
|
import cv2
|
||
|
import cv2.cv as cv
|
||
|
|
||
|
class NewOpenCVTests(unittest.TestCase):
|
||
|
|
||
|
def get_sample(self, filename, iscolor = cv.CV_LOAD_IMAGE_COLOR):
|
||
|
if not filename in self.image_cache:
|
||
|
filedata = urllib.urlopen("https://raw.github.com/Itseez/opencv/master/" + filename).read()
|
||
|
self.image_cache[filename] = cv2.imdecode(np.fromstring(filedata, dtype=np.uint8), iscolor)
|
||
|
return self.image_cache[filename]
|
||
|
|
||
|
def setUp(self):
|
||
|
self.image_cache = {}
|
||
|
|
||
|
def hashimg(self, im):
|
||
|
""" Compute a hash for an image, useful for image comparisons """
|
||
|
return hashlib.md5(im.tostring()).digest()
|
||
|
|
||
|
# Tests to run first; check the handful of basic operations that the later tests rely on
|
||
|
|
||
|
class Hackathon244Tests(NewOpenCVTests):
|
||
|
|
||
|
def test_int_array(self):
|
||
|
a = np.array([-1, 2, -3, 4, -5])
|
||
|
absa0 = np.abs(a)
|
||
|
self.assert_(cv2.norm(a, cv2.NORM_L1) == 15)
|
||
|
absa1 = cv2.absdiff(a, 0)
|
||
|
self.assert_(cv2.norm(absa1, absa0, cv2.NORM_INF) == 0)
|
||
|
|
||
|
if __name__ == '__main__':
|
||
|
print "testing", cv.__version__
|
||
|
random.seed(0)
|
||
|
unittest.main()
|