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.
81 lines
2.2 KiB
81 lines
2.2 KiB
# cvtestutils.py |
|
# |
|
# This module is meant to aid writing and running Python-based tests |
|
# within the OpenCV tree. |
|
# |
|
# 2009-01-23, Roman Stanchak <rstanchak@gmail.com> |
|
# |
|
# |
|
# Upon importing, this module adds the following python module |
|
# directories from the dev tree to sys.path (i.e. PYTHON_PATH): |
|
# opencv/interfaces/swig/python and opencv/lib |
|
# |
|
# Using it in a test case is simple, just be sure to import |
|
# cvtestutils before cv, highgui, etc |
|
# |
|
# Usage: |
|
# import cvtestutils |
|
# import cv |
|
|
|
import os |
|
import imp |
|
import sys |
|
|
|
def top_srcdir(): |
|
""" |
|
Return a string containing the top-level source directory in the OpenCV tree |
|
""" |
|
dir = os.path.dirname(os.path.realpath(__file__)) |
|
|
|
# top level dir should be two levels up from this file |
|
return os.path.realpath( os.path.join( dir, '..', '..' ) ) |
|
|
|
def top_builddir(): |
|
""" |
|
Return a string containing the top-level build directory in the OpenCV tree. |
|
Either returns realpath(argv[1]) or top_srcdir(); |
|
""" |
|
if len(sys.argv)>1: return os.path.realpath( sys.argv[1] ); |
|
else: return top_srcdir(); |
|
|
|
def initpath(): |
|
""" |
|
Prepend the python module directories from the dev tree to sys.path |
|
(i.e. PYTHON_PATH) |
|
""" |
|
|
|
# add path for OpenCV source directory (for adapters.py) |
|
moduledir = os.path.join(top_srcdir(), 'interfaces','swig','python') |
|
moduledir = os.path.realpath(moduledir) |
|
sys.path.insert(0, moduledir) |
|
|
|
# add path for OpenCV build directory |
|
moduledir = os.path.join(top_builddir(), 'interfaces','swig','python') |
|
moduledir = os.path.realpath(moduledir) |
|
sys.path.insert(0, moduledir) |
|
|
|
libdir = os.path.join(top_builddir(), 'lib' ) |
|
libdir = os.path.realpath(libdir) |
|
sys.path.insert(0, libdir) |
|
|
|
def which(): |
|
""" |
|
Print the directory containing cv.py |
|
""" |
|
import cv |
|
print "Using OpenCV Python in: " + os.path.dirname(cv.__file__) |
|
|
|
def datadir(): |
|
""" |
|
Return a string containing the full path to the python testdata directory |
|
""" |
|
return os.path.sep.join([top_srcdir(), '..', 'opencv_extra', 'testdata', 'python']) |
|
|
|
### Module Initialization |
|
try: |
|
if MODULE_LOADED: |
|
pass |
|
except NameError: |
|
initpath() |
|
which() |
|
MODULE_LOADED=1
|
|
|