First example
C++
#include<opencv2/highgui/highgui.hpp>
using namespace cv;
int main()
{
Mat img = imread("/home/USER/Pictures/python.jpg",CV_LOAD_IMAGE_COLOR);
imshow("opencvtest",img);
waitKey(0);
return 0;
}
编译命令
$ g++ -ggdb `pkg-config --cflags opencv` -o `basename opencvtest.cpp .cpp` opencvtest.cpp `pkg-config --libs opencv`
如果去掉pkg-config --libs opencv
将会报错,如对‘cv::imread(cv::String const&, int)’未定义的引用
常用工具
查看opencv版本
$ pkg-config --modversion opencv
3.1.0
版本问题
opencv3将nonfree、face等模块独立出来到opencv_contrib中,所以将后者的模块加入到前者中的cmake命令为:
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local -DOPENCV_EXTRA_MODULES_PATH=/home/jia/opencv_contrib/modules DBUILD_EXAMPLES=ON ..
详细见这里
face模块
该模块不能单独编译,而是通过上述命令和opencv一起编译,并被安装为:/usr/local/lib/libopencv_face.so,pencv_contrib/modules/face/samples可以使用g++直接编译如下:
g++ -ggdb `pkg-config --cflags opencv` -o `basename facerec_demo.cpp .cpp` opencvtest.cpp `pkg-config --libs opencv