很不巧,现在的项目要用到OpenCV要来处理图像,这个是真的不巧,不会用,然后碰到了很多的bug。
简单的说一下这个奇葩的东西应该怎么用,简单的命令是这样的。
mac os的命令行下执行命令
cd opencv
cmake .
make
make install
运气好的话应该就会编译成功了,但是用贴出来的代码似乎不大靠谱的样子。这是一个例子,保存为 DisplayImage.cpp
#include <stdio.h>
#include <opencv2/opencv.hpp>
using namespace cv;
int main(int argc, char** argv )
{
if ( argc != 2 )
{
printf("usage: DisplayImage.out <Image_Path>\n");
return -1;
}
Mat image;
image = imread( argv[1], 1 );
if ( !image.data )
{
printf("No image data \n");
return -1;
}
namedWindow("Display Image", WINDOW_AUTOSIZE );
imshow("Display Image", image);
waitKey(0);
return 0;
}
用官方的cmake 出现失败的情况,错误情况如下,让我郁闷了一晚上
Undefined symbols for architecture x86_64:
乱七八糟的,完全不知道咋回事儿,或者编译别的的时候也会这样的,编译的时候加上 pkg-config --cflags --libs opencv 完美解决
送给懒人的 Makefile
CC = g++
CFLAGS = `pkg-config --cflags --libs opencv`
PROGRAM=DisplayImage
$(PROGRAM): $(PROGRAM).cpp
$(CC) $(CFLAGS) -o $(PROGRAM) $(PROGRAM).cpp
#[100%]-->Finish
clean:
rm $(PROGRAM) *~ *.o
基本就ok了,这个程序就能跑起来了~~