提交 e4307d05 编写于 作者: A Andrey Kamaev

Made dependency of features2d and calib3d from highgui optional

上级 d68311b9
......@@ -277,7 +277,12 @@ macro(ocv_glob_modules)
if(__ocvmodules)
list(SORT __ocvmodules)
foreach(mod ${__ocvmodules})
if(EXISTS "${__path}/${mod}/CMakeLists.txt")
if(CMAKE_VERSION VERSION_LESS 2.8)
get_filename_component(__realpath "${__path}/${mod}" ABSOLUTE)
else()
get_filename_component(__realpath "${__path}/${mod}" REALPATH)
endif()
if(EXISTS "${__realpath}/CMakeLists.txt" AND NOT __realpath STREQUAL CMAKE_CURRENT_SOURCE_DIR)
add_subdirectory("${__path}/${mod}" "${CMAKE_CURRENT_BINARY_DIR}/${mod}/.${mod}")
endif()
endforeach()
......
......@@ -65,16 +65,22 @@
//#define ENABLE_TRIM_COL_ROW
//#pragma comment(lib, "highgui200d.lib")
//#define DEBUG_CHESSBOARD
#ifdef DEBUG_CHESSBOARD
# include "opencv2/opencv_modules.hpp"
# ifdef HAVE_OPENCV_HIGHGUI
# include "opencv2/highgui/highgui.hpp"
# else
# undef DEBUG_CHESSBOARD
# endif
#endif
#ifdef DEBUG_CHESSBOARD
static int PRINTF( const char* fmt, ... )
{
va_list args;
va_start(args, fmt);
return vprintf(fmt, args);
}
#include "..//..//include/opencv/highgui.h"
#else
static int PRINTF( const char*, ... )
{
......
......@@ -47,7 +47,12 @@
//#define DEBUG_WINDOWS
#if defined(DEBUG_WINDOWS)
#include "highgui.h"
# include "opencv2/opencv_modules.hpp"
# ifdef HAVE_OPENCV_HIGHGUI
# include "opencv2/highgui/highgui.hpp"
# else
# undef DEBUG_WINDOWS
# endif
#endif
void icvGetQuadrangleHypotheses(CvSeq* contours, std::vector<std::pair<float, int> >& quads, int class_id)
......
......@@ -44,7 +44,12 @@
//#define DEBUG_CIRCLES
#ifdef DEBUG_CIRCLES
#include "opencv2/highgui/highgui.hpp"
# include "opencv2/opencv_modules.hpp"
# ifdef HAVE_OPENCV_HIGHGUI
# include "opencv2/highgui/highgui.hpp"
# else
# undef DEBUG_CIRCLES
# endif
#endif
using namespace cv;
......
set(the_description "2D Features Framework")
ocv_define_module(features2d opencv_imgproc opencv_highgui opencv_flann)
ocv_define_module(features2d opencv_imgproc opencv_flann OPTIONAL opencv_highgui)
......@@ -46,7 +46,12 @@
//#define DEBUG_BLOB_DETECTOR
#ifdef DEBUG_BLOB_DETECTOR
#include "opencv2/highgui/highgui.hpp"
# include "opencv2/opencv_modules.hpp"
# ifdef HAVE_OPENCV_HIGHGUI
# include "opencv2/highgui/highgui.hpp"
# else
# undef DEBUG_BLOB_DETECTOR
# endif
#endif
using namespace cv;
......
......@@ -8,9 +8,13 @@
*/
#include "precomp.hpp"
#include "opencv2/highgui/highgui.hpp"
#include "opencv2/opencv_modules.hpp"
#include <stdio.h>
#ifdef HAVE_OPENCV_HIGHGUI
# include "opencv2/highgui/highgui.hpp"
#endif
namespace cv{
inline int round(float value)
......@@ -655,6 +659,7 @@ namespace cv{
void OneWayDescriptor::Save(const char* path)
{
#ifdef HAVE_OPENCV_HIGHGUI
for(int i = 0; i < m_pose_count; i++)
{
char buf[1024];
......@@ -669,6 +674,9 @@ namespace cv{
cvReleaseImage(&patch);
}
#else
CV_Error( CV_StsNotImplemented, "This method required opencv_highgui disabled in current build" );
#endif
}
void OneWayDescriptor::Write(CvFileStorage* fs, const char* name)
......@@ -1772,6 +1780,7 @@ namespace cv{
void loadPCAFeatures(const char* path, const char* images_list, vector<IplImage*>& patches, CvSize patch_size)
{
#ifdef HAVE_OPENCV_HIGHGUI
char images_filename[1024];
sprintf(images_filename, "%s/%s", path, images_list);
FILE *pFile = fopen(images_filename, "r");
......@@ -1800,6 +1809,9 @@ namespace cv{
cvReleaseImage(&img);
}
fclose(pFile);
#else
CV_Error( CV_StsNotImplemented, "This method required opencv_highgui disabled in current build" );
#endif
}
void generatePCAFeatures(const char* path, const char* img_filename, FileStorage& fs, const char* postfix,
......
......@@ -493,7 +493,6 @@ endo: ; // end search for this o
}
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/highgui/highgui.hpp>
namespace cv
{
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册