mirror of
https://github.com/opencv/opencv.git
synced 2024-11-27 20:50:25 +08:00
Fixed some build warnings; slightly improved python search
This commit is contained in:
parent
30d5cdef94
commit
2f4bb580fc
@ -314,6 +314,9 @@ endif()
|
|||||||
# Detect 3rd-party tools and libraries
|
# Detect 3rd-party tools and libraries
|
||||||
# ----------------------------------------------------------------------------
|
# ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
# IO libraries
|
||||||
|
include(cmake/OpenCVIOLibs.cmake REQUIRED)
|
||||||
|
|
||||||
#Graphic libraries
|
#Graphic libraries
|
||||||
set(HAVE_OPENGL 0)
|
set(HAVE_OPENGL 0)
|
||||||
if(UNIX)
|
if(UNIX)
|
||||||
@ -433,9 +436,6 @@ if(UNIX)
|
|||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# IO libraries
|
|
||||||
include(cmake/OpenCVIOLibs.cmake REQUIRED)
|
|
||||||
|
|
||||||
#################### LATEX for dpf documentation ##################
|
#################### LATEX for dpf documentation ##################
|
||||||
if(BUILD_DOCS)
|
if(BUILD_DOCS)
|
||||||
include(cmake/OpenCVFindLATEX.cmake REQUIRED)
|
include(cmake/OpenCVFindLATEX.cmake REQUIRED)
|
||||||
@ -814,7 +814,7 @@ status(" Python interpreter:" PYTHON_EXECUTABLE THEN "${PYTHON_EXECUTAB
|
|||||||
status("")
|
status("")
|
||||||
status(" Interfaces:")
|
status(" Interfaces:")
|
||||||
status(" Python:" HAVE_opencv_python THEN YES ELSE NO)
|
status(" Python:" HAVE_opencv_python THEN YES ELSE NO)
|
||||||
status(" Python numpy:" PYTHON_USE_NUMPY THEN YES ELSE "NO (Python wrappers will not be generated)")
|
status(" Python numpy:" PYTHON_USE_NUMPY THEN YES ELSE "NO (Python wrappers can not be generated)")
|
||||||
if(ANDROID)
|
if(ANDROID)
|
||||||
status(" Java:" HAVE_opencv_java THEN YES ELSE NO)
|
status(" Java:" HAVE_opencv_java THEN YES ELSE NO)
|
||||||
endif()
|
endif()
|
||||||
|
@ -1,59 +1,70 @@
|
|||||||
find_host_package(PythonInterp)
|
find_host_package(PythonInterp)
|
||||||
find_host_package(PythonLibs)
|
|
||||||
|
|
||||||
# cmake 2.4 (at least on Ubuntu 8.04 (hardy)) don't define PYTHONLIBS_FOUND
|
|
||||||
if(NOT PYTHONLIBS_FOUND AND PYTHON_INCLUDE_PATH)
|
|
||||||
set(PYTHONLIBS_FOUND ON)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
execute_process(COMMAND ${PYTHON_EXECUTABLE} --version
|
|
||||||
ERROR_VARIABLE PYTHON_VERSION_FULL
|
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
|
||||||
|
|
||||||
string(REGEX MATCH "[0-9]+.[0-9]+" PYTHON_VERSION_MAJOR_MINOR "${PYTHON_VERSION_FULL}")
|
|
||||||
if(CMAKE_HOST_UNIX)
|
|
||||||
execute_process(COMMAND ${PYTHON_EXECUTABLE} -c "from distutils.sysconfig import *; print get_python_lib()"
|
|
||||||
RESULT_VARIABLE PYTHON_CVPY_PROCESS
|
|
||||||
OUTPUT_VARIABLE PYTHON_STD_PACKAGES_PATH
|
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
|
||||||
if("${PYTHON_STD_PACKAGES_PATH}" MATCHES "site-packages")
|
|
||||||
set(PYTHON_PACKAGES_PATH lib/python${PYTHON_VERSION_MAJOR_MINOR}/site-packages CACHE PATH "Where to install the python packages.")
|
|
||||||
else() #debian based assumed, install to the dist-packages.
|
|
||||||
set(PYTHON_PACKAGES_PATH lib/python${PYTHON_VERSION_MAJOR_MINOR}/dist-packages CACHE PATH "Where to install the python packages.")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(CMAKE_HOST_WIN32)
|
|
||||||
get_filename_component(PYTHON_PATH "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\${PYTHON_VERSION_MAJOR_MINOR}\\InstallPath]" ABSOLUTE CACHE)
|
|
||||||
set(PYTHON_PACKAGES_PATH "${PYTHON_PATH}/Lib/site-packages")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Attempt to discover the NumPy include directory. If this succeeds, then build python API with NumPy
|
|
||||||
execute_process(COMMAND ${PYTHON_EXECUTABLE} -c "import os; os.environ['DISTUTILS_USE_SDK']='1'; import numpy.distutils; print numpy.distutils.misc_util.get_numpy_include_dirs()[0]"
|
|
||||||
RESULT_VARIABLE PYTHON_NUMPY_PROCESS
|
|
||||||
OUTPUT_VARIABLE PYTHON_NUMPY_INCLUDE_DIRS
|
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
|
||||||
|
|
||||||
if(PYTHON_NUMPY_PROCESS EQUAL 0)
|
|
||||||
set(PYTHON_USE_NUMPY 1)
|
|
||||||
add_definitions(-DPYTHON_USE_NUMPY=1)
|
|
||||||
include_directories(AFTER ${PYTHON_NUMPY_INCLUDE_DIRS})
|
|
||||||
message(STATUS " Use NumPy headers from: ${PYTHON_NUMPY_INCLUDE_DIRS}")
|
|
||||||
else()
|
|
||||||
set(PYTHON_USE_NUMPY 0)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# look for Sphinx
|
|
||||||
execute_process(COMMAND ${PYTHON_EXECUTABLE} -c "import sphinx; print sphinx.__version__"
|
|
||||||
RESULT_VARIABLE SPHINX_PROCESS
|
|
||||||
OUTPUT_VARIABLE SPHINX_VERSION
|
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
|
||||||
|
|
||||||
|
set(PYTHON_USE_NUMPY 0)
|
||||||
set(HAVE_SPHINX 0)
|
set(HAVE_SPHINX 0)
|
||||||
if(SPHINX_PROCESS EQUAL 0)
|
|
||||||
find_host_program(SPHINX_BUILD sphinx-build)
|
if(PYTHON_EXECUTABLE)
|
||||||
if(SPHINX_BUILD)
|
if(NOT ANDROID AND NOT IOS)
|
||||||
set(HAVE_SPHINX 1)
|
find_host_package(PythonLibs)
|
||||||
message(STATUS " Found Sphinx ${SPHINX_VERSION}: ${SPHINX_BUILD}")
|
# cmake 2.4 (at least on Ubuntu 8.04 (hardy)) don't define PYTHONLIBS_FOUND
|
||||||
|
if(NOT PYTHONLIBS_FOUND AND PYTHON_INCLUDE_PATH)
|
||||||
|
set(PYTHONLIBS_FOUND ON)
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
endif()
|
|
||||||
|
execute_process(COMMAND ${PYTHON_EXECUTABLE} --version
|
||||||
|
ERROR_VARIABLE PYTHON_VERSION_FULL
|
||||||
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
|
|
||||||
|
string(REGEX MATCH "[0-9]+.[0-9]+" PYTHON_VERSION_MAJOR_MINOR "${PYTHON_VERSION_FULL}")
|
||||||
|
if(CMAKE_HOST_UNIX)
|
||||||
|
execute_process(COMMAND ${PYTHON_EXECUTABLE} -c "from distutils.sysconfig import *; print get_python_lib()"
|
||||||
|
RESULT_VARIABLE PYTHON_CVPY_PROCESS
|
||||||
|
OUTPUT_VARIABLE PYTHON_STD_PACKAGES_PATH
|
||||||
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
|
if("${PYTHON_STD_PACKAGES_PATH}" MATCHES "site-packages")
|
||||||
|
set(PYTHON_PACKAGES_PATH lib/python${PYTHON_VERSION_MAJOR_MINOR}/site-packages CACHE PATH "Where to install the python packages.")
|
||||||
|
else() #debian based assumed, install to the dist-packages.
|
||||||
|
set(PYTHON_PACKAGES_PATH lib/python${PYTHON_VERSION_MAJOR_MINOR}/dist-packages CACHE PATH "Where to install the python packages.")
|
||||||
|
endif()
|
||||||
|
elseif(CMAKE_HOST_WIN32)
|
||||||
|
get_filename_component(PYTHON_PATH "${PYTHON_EXECUTABLE}" PATH CACHE)
|
||||||
|
if(NOT EXISTS "${PYTHON_PATH}/Lib/site-packages")
|
||||||
|
unset(PYTHON_PATH)
|
||||||
|
get_filename_component(PYTHON_PATH "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\${PYTHON_VERSION_MAJOR_MINOR}\\InstallPath]" ABSOLUTE CACHE)
|
||||||
|
endif()
|
||||||
|
set(PYTHON_PACKAGES_PATH "${PYTHON_PATH}/Lib/site-packages")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(NOT ANDROID AND NOT IOS)
|
||||||
|
# Attempt to discover the NumPy include directory. If this succeeds, then build python API with NumPy
|
||||||
|
execute_process(COMMAND ${PYTHON_EXECUTABLE} -c "import os; os.environ['DISTUTILS_USE_SDK']='1'; import numpy.distutils; print numpy.distutils.misc_util.get_numpy_include_dirs()[0]"
|
||||||
|
RESULT_VARIABLE PYTHON_NUMPY_PROCESS
|
||||||
|
OUTPUT_VARIABLE PYTHON_NUMPY_INCLUDE_DIRS
|
||||||
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
|
|
||||||
|
if(PYTHON_NUMPY_PROCESS EQUAL 0)
|
||||||
|
set(PYTHON_USE_NUMPY 1)
|
||||||
|
add_definitions(-DPYTHON_USE_NUMPY=1)
|
||||||
|
include_directories(AFTER ${PYTHON_NUMPY_INCLUDE_DIRS})
|
||||||
|
message(STATUS " Use NumPy headers from: ${PYTHON_NUMPY_INCLUDE_DIRS}")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(BUILD_DOCS)
|
||||||
|
# look for Sphinx
|
||||||
|
execute_process(COMMAND ${PYTHON_EXECUTABLE} -c "import sphinx; print sphinx.__version__"
|
||||||
|
RESULT_VARIABLE SPHINX_PROCESS
|
||||||
|
OUTPUT_VARIABLE SPHINX_VERSION
|
||||||
|
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
|
|
||||||
|
|
||||||
|
if(SPHINX_PROCESS EQUAL 0)
|
||||||
|
find_host_program(SPHINX_BUILD sphinx-build)
|
||||||
|
if(SPHINX_BUILD)
|
||||||
|
set(HAVE_SPHINX 1)
|
||||||
|
message(STATUS " Found Sphinx ${SPHINX_VERSION}: ${SPHINX_BUILD}")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
endif(BUILD_DOCS)
|
||||||
|
endif(PYTHON_EXECUTABLE)
|
||||||
|
@ -124,17 +124,23 @@ static void test_threshold( const Mat& _src, Mat& _dst,
|
|||||||
int i, j;
|
int i, j;
|
||||||
int depth = _src.depth(), cn = _src.channels();
|
int depth = _src.depth(), cn = _src.channels();
|
||||||
int width_n = _src.cols*cn, height = _src.rows;
|
int width_n = _src.cols*cn, height = _src.rows;
|
||||||
int ithresh = cvFloor(thresh), ithresh2, imaxval = cvRound(maxval);
|
int ithresh = cvFloor(thresh);
|
||||||
|
int imaxval, ithresh2;
|
||||||
|
|
||||||
if( depth == CV_8U )
|
if( depth == CV_8U )
|
||||||
{
|
{
|
||||||
ithresh2 = saturate_cast<uchar>(ithresh);
|
ithresh2 = saturate_cast<uchar>(ithresh);
|
||||||
imaxval = saturate_cast<uchar>(imaxval);
|
imaxval = saturate_cast<uchar>(maxval);
|
||||||
}
|
}
|
||||||
else if( depth == CV_16S )
|
else if( depth == CV_16S )
|
||||||
{
|
{
|
||||||
ithresh2 = saturate_cast<short>(ithresh);
|
ithresh2 = saturate_cast<short>(ithresh);
|
||||||
imaxval = saturate_cast<short>(imaxval);
|
imaxval = saturate_cast<short>(maxval);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ithresh2 = cvRound(ithresh);
|
||||||
|
imaxval = cvRound(maxval);
|
||||||
}
|
}
|
||||||
|
|
||||||
assert( depth == CV_8U || depth == CV_16S || depth == CV_32F );
|
assert( depth == CV_8U || depth == CV_16S || depth == CV_32F );
|
||||||
|
@ -117,7 +117,7 @@ int main(int argc, const char ** argv)
|
|||||||
|
|
||||||
Mat outimg;
|
Mat outimg;
|
||||||
drawMatches(im2, kpts_2, im1, kpts_1, matches_popcount, outimg, Scalar::all(-1), Scalar::all(-1),
|
drawMatches(im2, kpts_2, im1, kpts_1, matches_popcount, outimg, Scalar::all(-1), Scalar::all(-1),
|
||||||
reinterpret_cast<const vector<char>&> (outlier_mask));
|
*(const vector<char>*)(void*)(&outlier_mask));
|
||||||
imshow("matches - popcount - outliers removed", outimg);
|
imshow("matches - popcount - outliers removed", outimg);
|
||||||
|
|
||||||
Mat warped;
|
Mat warped;
|
||||||
|
@ -55,8 +55,6 @@ static void locate_point( Mat& img, Subdiv2D& subdiv, Point2f fp, Scalar active_
|
|||||||
{
|
{
|
||||||
int e0=0, vertex=0;
|
int e0=0, vertex=0;
|
||||||
|
|
||||||
CvSubdiv2DEdge e00;
|
|
||||||
|
|
||||||
subdiv.locate(fp, e0, vertex);
|
subdiv.locate(fp, e0, vertex);
|
||||||
|
|
||||||
if( e0 > 0 )
|
if( e0 > 0 )
|
||||||
|
@ -73,10 +73,9 @@ int main(int argc, char** argv)
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
FILE* f;
|
FILE* f = 0;
|
||||||
VideoCapture cap;
|
VideoCapture cap;
|
||||||
char test_file[20] = "";
|
char test_file[20] = "";
|
||||||
char dir[20] = "";
|
|
||||||
|
|
||||||
if (strcmp(argv[1], "live") != 0)
|
if (strcmp(argv[1], "live") != 0)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user