Commit 569b1ad5 authored by Vadim Pisarevsky's avatar Vadim Pisarevsky

embeded cv Python module into cv2.

parent 9b464199
...@@ -1611,7 +1611,7 @@ status("") ...@@ -1611,7 +1611,7 @@ status("")
status(" Interfaces:") status(" Interfaces:")
status(" Python:" BUILD_NEW_PYTHON_SUPPORT THEN YES ELSE NO) status(" Python:" BUILD_NEW_PYTHON_SUPPORT THEN YES ELSE NO)
status(" Python interpreter:" PYTHON_EXECUTABLE THEN "${PYTHON_EXECUTABLE} (ver ${PYTHON_VERSION_MAJOR_MINOR})" ELSE NO) status(" Python interpreter:" PYTHON_EXECUTABLE THEN "${PYTHON_EXECUTABLE} (ver ${PYTHON_VERSION_MAJOR_MINOR})" ELSE NO)
status(" Python numpy:" PYTHON_USE_NUMPY THEN YES ELSE "NO (Python interface will not cover OpenCV 2.x API)") status(" Python numpy:" PYTHON_USE_NUMPY THEN YES ELSE "NO (Python wrappers will not be generated)")
if(ANDROID AND ANDROID_API_LEVEL LESS 8) if(ANDROID AND ANDROID_API_LEVEL LESS 8)
status(" Java:" "NO (Java API requires Android API level 8 or higher)") status(" Java:" "NO (Java API requires Android API level 8 or higher)")
else() else()
......
...@@ -24,7 +24,7 @@ add_subdirectory(contrib) ...@@ -24,7 +24,7 @@ add_subdirectory(contrib)
add_subdirectory(ml) add_subdirectory(ml)
add_subdirectory(objdetect) add_subdirectory(objdetect)
if(PYTHONLIBS_FOUND AND BUILD_NEW_PYTHON_SUPPORT) if(PYTHONLIBS_FOUND AND BUILD_NEW_PYTHON_SUPPORT AND PYTHON_USE_NUMPY)
add_subdirectory(python) add_subdirectory(python)
endif() endif()
......
...@@ -1729,7 +1729,7 @@ For example, `NumPy <http://numpy.scipy.org/>`_ arrays support the array interfa ...@@ -1729,7 +1729,7 @@ For example, `NumPy <http://numpy.scipy.org/>`_ arrays support the array interfa
.. code-block::python .. code-block::python
>>> import cv, numpy >>> import cv2.cv as cv, numpy
>>> a = numpy.ones((480, 640)) >>> a = numpy.ones((480, 640))
>>> mat = cv.fromarray(a) >>> mat = cv.fromarray(a)
>>> print cv.GetDims(mat), cv.CV_MAT_CN(cv.GetElemType(mat)) >>> print cv.GetDims(mat), cv.CV_MAT_CN(cv.GetElemType(mat))
......
...@@ -5,7 +5,6 @@ project(opencv_python) ...@@ -5,7 +5,6 @@ project(opencv_python)
include_directories(${PYTHON_INCLUDE_PATH}) include_directories(${PYTHON_INCLUDE_PATH})
include_directories( include_directories(
"${CMAKE_CURRENT_SOURCE_DIR}/src1"
"${CMAKE_CURRENT_SOURCE_DIR}/src2" "${CMAKE_CURRENT_SOURCE_DIR}/src2"
"${OpenCV_SOURCE_DIR}/modules/core/include" "${OpenCV_SOURCE_DIR}/modules/core/include"
"${OpenCV_SOURCE_DIR}/modules/imgproc/include" "${OpenCV_SOURCE_DIR}/modules/imgproc/include"
...@@ -37,37 +36,6 @@ if(MSVC) ...@@ -37,37 +36,6 @@ if(MSVC)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W3") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W3")
endif() endif()
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/generated0.i
COMMAND ${PYTHON_EXECUTABLE} "${CMAKE_CURRENT_SOURCE_DIR}/src1/gen.py" "${CMAKE_CURRENT_SOURCE_DIR}/src1"
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/src1/api
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/src1/defs
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/src1/gen.py
)
set(cv_target "opencv_python")
add_library(${cv_target} SHARED src1/cv.cpp ${CMAKE_CURRENT_BINARY_DIR}/generated0.i)
target_link_libraries(${cv_target} ${PYTHON_LIBRARIES} opencv_core opencv_imgproc opencv_video opencv_ml opencv_features2d opencv_highgui opencv_calib3d opencv_objdetect opencv_legacy opencv_contrib)
set_target_properties(${cv_target} PROPERTIES PREFIX "")
set_target_properties(${cv_target} PROPERTIES OUTPUT_NAME "cv")
execute_process(COMMAND ${PYTHON_EXECUTABLE} -c "import distutils.sysconfig; print distutils.sysconfig.get_config_var('SO')"
RESULT_VARIABLE PYTHON_CVPY_PROCESS
OUTPUT_VARIABLE CVPY_SUFFIX
OUTPUT_STRIP_TRAILING_WHITESPACE)
set_target_properties(${cv_target} PROPERTIES SUFFIX ${CVPY_SUFFIX})
if (MSVC AND NOT BUILD_SHARED_LIBS)
set_target_properties(${cv_target} PROPERTIES LINK_FLAGS "/NODEFAULTLIB:atlthunk.lib /NODEFAULTLIB:atlsd.lib /DEBUG")
endif()
set(cvpymodules ${cv_target})
if(PYTHON_USE_NUMPY)
set(cv2_generated_hdrs set(cv2_generated_hdrs
"${CMAKE_CURRENT_BINARY_DIR}/pyopencv_generated_funcs.h" "${CMAKE_CURRENT_BINARY_DIR}/pyopencv_generated_funcs.h"
"${CMAKE_CURRENT_BINARY_DIR}/pyopencv_generated_func_tab.h" "${CMAKE_CURRENT_BINARY_DIR}/pyopencv_generated_func_tab.h"
...@@ -75,28 +43,41 @@ set(cv2_generated_hdrs ...@@ -75,28 +43,41 @@ set(cv2_generated_hdrs
"${CMAKE_CURRENT_BINARY_DIR}/pyopencv_generated_type_reg.h" "${CMAKE_CURRENT_BINARY_DIR}/pyopencv_generated_type_reg.h"
"${CMAKE_CURRENT_BINARY_DIR}/pyopencv_generated_const_reg.h") "${CMAKE_CURRENT_BINARY_DIR}/pyopencv_generated_const_reg.h")
add_custom_command( add_custom_command(
OUTPUT ${cv2_generated_hdrs} OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/generated0.i
COMMAND ${PYTHON_EXECUTABLE} "${CMAKE_CURRENT_SOURCE_DIR}/src2/gen2.py" ${CMAKE_CURRENT_BINARY_DIR} ${opencv_hdrs} COMMAND ${PYTHON_EXECUTABLE} "${CMAKE_CURRENT_SOURCE_DIR}/src2/gen.py" "${CMAKE_CURRENT_SOURCE_DIR}/src2"
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/src2/gen2.py DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/src2/api
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/src2/hdr_parser.py DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/src2/defs
DEPENDS ${opencv_hdrs}) DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/src2/gen.py
)
set(cv2_target "opencv2_python") add_custom_command(
add_library(${cv2_target} SHARED src2/cv2.cpp src2/opencv_extra_api.hpp ${cv2_generated_hdrs}) OUTPUT ${cv2_generated_hdrs}
COMMAND ${PYTHON_EXECUTABLE} "${CMAKE_CURRENT_SOURCE_DIR}/src2/gen2.py" ${CMAKE_CURRENT_BINARY_DIR} ${opencv_hdrs}
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/src2/gen2.py
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/src2/hdr_parser.py
DEPENDS ${opencv_hdrs})
set(cv2_target "opencv_python")
add_library(${cv2_target} SHARED src2/cv2.cpp ${CMAKE_CURRENT_BINARY_DIR}/generated0.i src2/opencv_extra_api.hpp ${cv2_generated_hdrs} src2/cv2.cv.hpp)
target_link_libraries(${cv2_target} ${PYTHON_LIBRARIES} opencv_core opencv_imgproc opencv_video opencv_ml opencv_features2d opencv_highgui opencv_calib3d opencv_objdetect opencv_legacy opencv_contrib) target_link_libraries(${cv2_target} ${PYTHON_LIBRARIES} opencv_core opencv_imgproc opencv_video opencv_ml opencv_features2d opencv_highgui opencv_calib3d opencv_objdetect opencv_legacy opencv_contrib)
set_target_properties(${cv2_target} PROPERTIES PREFIX "") set_target_properties(${cv2_target} PROPERTIES PREFIX "")
set_target_properties(${cv2_target} PROPERTIES OUTPUT_NAME "cv2") set_target_properties(${cv2_target} PROPERTIES OUTPUT_NAME "cv2")
execute_process(COMMAND ${PYTHON_EXECUTABLE} -c "import distutils.sysconfig; print distutils.sysconfig.get_config_var('SO')"
RESULT_VARIABLE PYTHON_CVPY_PROCESS
OUTPUT_VARIABLE CVPY_SUFFIX
OUTPUT_STRIP_TRAILING_WHITESPACE)
set_target_properties(${cv2_target} PROPERTIES SUFFIX ${CVPY_SUFFIX}) set_target_properties(${cv2_target} PROPERTIES SUFFIX ${CVPY_SUFFIX})
if (MSVC AND NOT BUILD_SHARED_LIBS) if (MSVC AND NOT BUILD_SHARED_LIBS)
set_target_properties(${cv2_target} PROPERTIES LINK_FLAGS "/NODEFAULTLIB:atlthunk.lib /NODEFAULTLIB:atlsd.lib /DEBUG") set_target_properties(${cv2_target} PROPERTIES LINK_FLAGS "/NODEFAULTLIB:atlthunk.lib /NODEFAULTLIB:atlsd.lib /DEBUG")
endif() endif()
set(cvpymodules ${cvpymodules} ${cv2_target}) set(cvpymodules ${cv2_target})
endif()
if(WIN32) if(WIN32)
install(TARGETS ${cvpymodules} install(TARGETS ${cvpymodules}
...@@ -105,7 +86,6 @@ if(WIN32) ...@@ -105,7 +86,6 @@ if(WIN32)
ARCHIVE DESTINATION "Python${PYTHON_VERSION_MAJOR_MINOR}/Lib/site-packages" COMPONENT main ARCHIVE DESTINATION "Python${PYTHON_VERSION_MAJOR_MINOR}/Lib/site-packages" COMPONENT main
) )
else() else()
#install(FILES ${LIBRARY_OUTPUT_PATH}/cv${CVPY_SUFFIX} DESTINATION ${PYTHON_PACKAGES_PATH})
install(TARGETS ${cvpymodules} install(TARGETS ${cvpymodules}
RUNTIME DESTINATION ${PYTHON_PACKAGES_PATH} COMPONENT main RUNTIME DESTINATION ${PYTHON_PACKAGES_PATH} COMPONENT main
LIBRARY DESTINATION ${PYTHON_PACKAGES_PATH} COMPONENT main LIBRARY DESTINATION ${PYTHON_PACKAGES_PATH} COMPONENT main
......
...@@ -833,6 +833,8 @@ static int to_ok(PyTypeObject *to) ...@@ -833,6 +833,8 @@ static int to_ok(PyTypeObject *to)
return (PyType_Ready(to) == 0); return (PyType_Ready(to) == 0);
} }
#include "cv2.cv.hpp"
extern "C" extern "C"
#if defined WIN32 || defined _WIN32 #if defined WIN32 || defined _WIN32
__declspec(dllexport) __declspec(dllexport)
...@@ -848,16 +850,17 @@ void initcv2() ...@@ -848,16 +850,17 @@ void initcv2()
#include "pyopencv_generated_type_reg.h" #include "pyopencv_generated_type_reg.h"
#endif #endif
PyObject* m = Py_InitModule(MODULESTR"", methods); PyObject* m = Py_InitModule(MODULESTR, methods);
PyObject* d = PyModule_GetDict(m); PyObject* d = PyModule_GetDict(m);
PyDict_SetItemString(d, "__version__", PyString_FromString("$Rev: 4557 $")); PyDict_SetItemString(d, "__version__", PyString_FromString("$Rev: 4557 $"));
opencv_error = PyErr_NewException((char*)MODULESTR".error", NULL, NULL); opencv_error = PyErr_NewException((char*)MODULESTR".error", NULL, NULL);
PyDict_SetItemString(d, "error", opencv_error); PyDict_SetItemString(d, "error", opencv_error);
PyObject* cv_m = init_cv();
// AFAIK the only floating-point constant PyDict_SetItemString(d, "cv", cv_m);
PyDict_SetItemString(d, "CV_PI", PyFloat_FromDouble(CV_PI));
#define PUBLISH(I) PyDict_SetItemString(d, #I, PyInt_FromLong(I)) #define PUBLISH(I) PyDict_SetItemString(d, #I, PyInt_FromLong(I))
#define PUBLISHU(I) PyDict_SetItemString(d, #I, PyLong_FromUnsignedLong(I)) #define PUBLISHU(I) PyDict_SetItemString(d, #I, PyLong_FromUnsignedLong(I))
...@@ -942,7 +945,6 @@ void initcv2() ...@@ -942,7 +945,6 @@ void initcv2()
PUBLISH(CV_AA); PUBLISH(CV_AA);
#include "pyopencv_generated_const_reg.h" #include "pyopencv_generated_const_reg.h"
} }
# Calculating and displaying 2D Hue-Saturation histogram of a color image # Calculating and displaying 2D Hue-Saturation histogram of a color image
import sys import sys
import cv import cv2.cv as cv
def hs_histogram(src): def hs_histogram(src):
# Convert to HSV # Convert to HSV
......
...@@ -5,7 +5,7 @@ import random ...@@ -5,7 +5,7 @@ import random
import numpy import numpy
import transformations import transformations
import cv import cv2.cv as cv
def clamp(a, x, b): def clamp(a, x, b):
return numpy.maximum(a, numpy.minimum(x, b)) return numpy.maximum(a, numpy.minimum(x, b))
......
import sys import sys
import cv import cv2.cv as cv
def findstereocorrespondence(image_left, image_right): def findstereocorrespondence(image_left, image_right):
# image_left and image_right are the input 8-bit single-channel images # image_left and image_right are the input 8-bit single-channel images
......
import cv import cv2.cv as cv
import unittest import unittest
class TestGoodFeaturesToTrack(unittest.TestCase): class TestGoodFeaturesToTrack(unittest.TestCase):
......
import cv import cv2.cv as cv
import numpy as np import numpy as np
cv.NamedWindow('Leak') cv.NamedWindow('Leak')
while 1: while 1:
......
import cv import cv2.cv as cv
import numpy as np import numpy as np
import time import time
......
import cv import cv2.cv as cv
import math import math
import time import time
......
import cv import cv2.cv as cv
import math import math
import time import time
......
import cv import cv2.cv as cv
def precornerdetect(image): def precornerdetect(image):
# assume that the image is floating-point # assume that the image is floating-point
......
...@@ -12,7 +12,7 @@ import getopt ...@@ -12,7 +12,7 @@ import getopt
import operator import operator
import functools import functools
import cv import cv2.cv as cv
class OpenCVTests(unittest.TestCase): class OpenCVTests(unittest.TestCase):
......
import urllib import urllib
import cv import cv2.cv as cv
import Image import Image
import unittest import unittest
......
...@@ -6,7 +6,7 @@ import sys ...@@ -6,7 +6,7 @@ import sys
import array import array
import os import os
import cv import cv2.cv as cv
def find_sample(s): def find_sample(s):
for d in ["../samples/c/", "../doc/pics/"]: for d in ["../samples/c/", "../doc/pics/"]:
......
#include "test_precomp.hpp" #include "test_precomp.hpp"
CV_TEST_MAIN("cv") //CV_TEST_MAIN("cv")
#if 1
using namespace cv;
int main(int, char**)
{
Mat prevImg = imread("/Users/vp/work/ocv/opencv_extra/testdata/cv/optflow/rock_1.bmp", 0);
Mat nextImg = imread("/Users/vp/work/ocv/opencv_extra/testdata/cv/optflow/rock_2.bmp", 0);
FileStorage fs("/Users/vp/work/ocv/opencv_extra/testdata/cv/optflow/lk_prev.dat", FileStorage::READ);
vector<Point2f> u, v;
Mat _u;
fs["points"] >> _u;
_u.reshape(2, 0).copyTo(u);
vector<uchar> status;
vector<float> err;
double tmin = 0;
for( int k = 0; k < 3; k++ )
{
double t = (double)getTickCount();
#if 1
calcOpticalFlowPyrLK(prevImg, nextImg, u, v, status, err, Size(11,11),
5, TermCriteria(TermCriteria::MAX_ITER+TermCriteria::EPS, 30, 0.01), 100);
#else
{
CvMat _prevImg = prevImg;
CvMat _nextImg = nextImg;
v.resize(u.size());
status.resize(u.size());
err.resize(u.size());
cvCalcOpticalFlowPyrLK(&_prevImg, &_nextImg, 0, 0, (CvPoint2D32f*)&u[0], (CvPoint2D32f*)&v[0], (int)u.size(),
cvSize(21, 21), 4, (char*)&status[0],
&err[0], cvTermCriteria(CV_TERMCRIT_EPS+CV_TERMCRIT_ITER, 30, 0.01), 0);
}
#endif
t = (double)getTickCount() - t;
tmin = k == 0 ? t : std::min(tmin, t);
}
printf("time = %gms\n", tmin*1000./getTickFrequency());
Mat color;
cvtColor(prevImg, color, CV_GRAY2BGR);
for( size_t i = 0; i < u.size(); i++ )
{
Point2f ui = u[i], vi = v[i];
if( cvIsNaN(v[i].x) || cvIsNaN(v[i].y) || !status[i] )
{
const float r = 2.f;
line(color, Point2f(u[i].x-r,u[i].y-r), Point2f(u[i].x+r,u[i].y+r), Scalar(0, 0, 255), 1);
line(color, Point2f(u[i].x-r,u[i].y+r), Point2f(u[i].x+r,u[i].y-r), Scalar(0, 0, 255), 1);
continue;
}
line(color, ui, vi, Scalar(0, 255, 0), 1);
}
imshow("flow", color);
waitKey();
return 0;
}
#endif
import cv import cv2.cv as cv
import time import time
cv.NamedWindow("camera", 1) cv.NamedWindow("camera", 1)
......
#!/usr/bin/env python #!/usr/bin/env python
import cv import cv2.cv as cv
def is_rect_nonzero(r): def is_rect_nonzero(r):
(_,_,w,h) = r (_,_,w,h) = r
......
#!/usr/bin/python #!/usr/bin/python
import cv import cv2.cv as cv
import sys import sys
import urllib2 import urllib2
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
print "OpenCV Python version of contours" print "OpenCV Python version of contours"
# import the necessary things for OpenCV # import the necessary things for OpenCV
import cv import cv2.cv as cv
# some default constants # some default constants
_SIZE = 500 _SIZE = 500
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
print "OpenCV Python version of convexhull" print "OpenCV Python version of convexhull"
# import the necessary things for OpenCV # import the necessary things for OpenCV
import cv import cv2.cv as cv
# to generate random values # to generate random values
import random import random
......
...@@ -5,7 +5,7 @@ Find Squares in image by finding countours and filtering ...@@ -5,7 +5,7 @@ Find Squares in image by finding countours and filtering
#otherwise ok #otherwise ok
import math import math
import cv import cv2.cv as cv
def angle(pt1, pt2, pt0): def angle(pt1, pt2, pt0):
"calculate angle contained by 3 points(x, y)" "calculate angle contained by 3 points(x, y)"
......
import cv import cv2.cv as cv
import urllib2 import urllib2
from sys import argv from sys import argv
......
...@@ -6,7 +6,7 @@ delaunay triangulation and voronoi tesselation ...@@ -6,7 +6,7 @@ delaunay triangulation and voronoi tesselation
Original Author (C version): ? Original Author (C version): ?
Converted to Python by: Roman Stanchak Converted to Python by: Roman Stanchak
""" """
import cv import cv2.cv as cv
import random import random
def draw_subdiv_point( img, fp, color ): def draw_subdiv_point( img, fp, color ):
......
#!/usr/bin/python #!/usr/bin/python
import cv import cv2.cv as cv
import sys import sys
import urllib2 import urllib2
......
#!/usr/bin/python #!/usr/bin/python
import cv import cv2.cv as cv
import sys import sys
import urllib2 import urllib2
......
#!/usr/bin/python #!/usr/bin/python
import sys import sys
import cv import cv2.cv as cv
import urllib2 import urllib2
wndname = "Distance transform" wndname = "Distance transform"
......
import cv import cv2.cv as cv
import time import time
from pydmtx import DataMatrix from pydmtx import DataMatrix
import numpy import numpy
......
...@@ -4,7 +4,7 @@ import colorsys ...@@ -4,7 +4,7 @@ import colorsys
print "OpenCV Python version of drawing" print "OpenCV Python version of drawing"
import cv import cv2.cv as cv
def random_color(random): def random_color(random):
""" """
......
...@@ -4,7 +4,7 @@ print "OpenCV Python version of edge" ...@@ -4,7 +4,7 @@ print "OpenCV Python version of edge"
import sys import sys
import urllib2 import urllib2
import cv import cv2.cv as cv
# some definitions # some definitions
win_name = "Edge" win_name = "Edge"
......
...@@ -7,7 +7,7 @@ Original C implementation by: ? ...@@ -7,7 +7,7 @@ Original C implementation by: ?
Python implementation by: Roman Stanchak, James Bowman Python implementation by: Roman Stanchak, James Bowman
""" """
import sys import sys
import cv import cv2.cv as cv
from optparse import OptionParser from optparse import OptionParser
# Parameters for haar detection # Parameters for haar detection
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
import sys import sys
import random import random
import urllib2 import urllib2
import cv import cv2.cv as cv
im=None; im=None;
mask=None; mask=None;
......
...@@ -13,7 +13,7 @@ Python implementation by: Roman Stanchak, James Bowman ...@@ -13,7 +13,7 @@ Python implementation by: Roman Stanchak, James Bowman
import sys import sys
import urllib2 import urllib2
import random import random
import cv import cv2.cv as cv
def contour_iterator(contour): def contour_iterator(contour):
while contour: while contour:
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
import sys import sys
from math import sin, cos, sqrt, pi from math import sin, cos, sqrt, pi
import cv import cv2.cv as cv
import urllib2 import urllib2
# toggle between CV_HOUGH_STANDARD and CV_HOUGH_PROBILISTIC # toggle between CV_HOUGH_STANDARD and CV_HOUGH_PROBILISTIC
......
#!/usr/bin/python #!/usr/bin/python
import urllib2 import urllib2
import sys import sys
import cv import cv2.cv as cv
class Sketcher: class Sketcher:
def __init__(self, windowname, dests): def __init__(self, windowname, dests):
......
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
Pressing ESC will stop the program. Pressing ESC will stop the program.
""" """
import urllib2 import urllib2
import cv import cv2.cv as cv
from math import cos, sin, sqrt from math import cos, sin, sqrt
import sys import sys
......
#!/usr/bin/python #!/usr/bin/python
import urllib2 import urllib2
import cv import cv2.cv as cv
from random import randint from random import randint
MAX_CLUSTERS = 5 MAX_CLUSTERS = 5
......
#!/usr/bin/python #!/usr/bin/python
import urllib2 import urllib2
import cv import cv2.cv as cv
import sys import sys
if __name__ == "__main__": if __name__ == "__main__":
......
...@@ -5,7 +5,7 @@ print "OpenCV Python version of lkdemo" ...@@ -5,7 +5,7 @@ print "OpenCV Python version of lkdemo"
import sys import sys
# import the necessary things for OpenCV # import the necessary things for OpenCV
import cv import cv2.cv as cv
############################################################################# #############################################################################
# some "constants" # some "constants"
......
#!/usr/bin/python #!/usr/bin/python
import sys import sys
import urllib2 import urllib2
import cv import cv2.cv as cv
src=None src=None
dst=None dst=None
......
#!/usr/bin/python #!/usr/bin/python
import urllib2 import urllib2
import cv import cv2.cv as cv
from random import randint from random import randint
def roundxy(pt): def roundxy(pt):
......
#! /usr/bin/env python #! /usr/bin/env python
import cv import cv2.cv as cv
cap = cv.CreateFileCapture("../c/tree.avi") cap = cv.CreateFileCapture("../c/tree.avi")
img = cv.QueryFrame(cap) img = cv.QueryFrame(cap)
......
#!/usr/bin/python #!/usr/bin/python
import sys import sys
import urllib2 import urllib2
import cv import cv2.cv as cv
src = 0 src = 0
image = 0 image = 0
......
...@@ -3,7 +3,7 @@ import urllib2 ...@@ -3,7 +3,7 @@ import urllib2
import sys import sys
import time import time
from math import cos, sin from math import cos, sin
import cv import cv2.cv as cv
CLOCKS_PER_SEC = 1.0 CLOCKS_PER_SEC = 1.0
MHI_DURATION = 1 MHI_DURATION = 1
......
#!/usr/bin/python #!/usr/bin/python
import urllib2 import urllib2
import sys import sys
import cv import cv2.cv as cv
import numpy import numpy
# SRGB-linear conversions using NumPy - see http://en.wikipedia.org/wiki/SRGB # SRGB-linear conversions using NumPy - see http://en.wikipedia.org/wiki/SRGB
......
#!/usr/bin/python #!/usr/bin/python
import urllib2 import urllib2
import sys import sys
import cv import cv2.cv as cv
import numpy import numpy
if __name__ == "__main__": if __name__ == "__main__":
......
#!/usr/bin/python #!/usr/bin/python
import cv import cv2.cv as cv
class PyrSegmentation: class PyrSegmentation:
def __init__(self, img0): def __init__(self, img0):
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
import urllib2 import urllib2
from math import sqrt from math import sqrt
import cv import cv2.cv as cv
thresh = 50 thresh = 50
img = None img = None
......
#!/usr/bin/python #!/usr/bin/python
import urllib2 import urllib2
import sys import sys
import cv import cv2.cv as cv
class Sketcher: class Sketcher:
def __init__(self, windowname, dests): def __init__(self, windowname, dests):
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment