Mac电脑中安装OpenCV配合Cmake

来源:互联网 发布:像哔咔漫画的软件 编辑:程序博客网 时间:2024/06/06 03:27

请注意,不要从opencv官网上按照那个openCV for ios 安装。那个是针对ios开发的版本!


搜了不少网站上安装的文章,发现好多都是转载,甚至并没有标明出处。所以其实正确性不敢保证。总体思路很简单,但是细节上都有些错误。还是自己重新写一个比较靠谱。好了,现在我们看看要运行OpenCV需要什么。

(1)Xcode 

苹果机自带,大家应该都有吧,没有去苹果商店免费下载就行。

(2)CMake

CMake官网下载最新mac包,双击即可。

(3)OpenCV

OpenCV官网下载,需要编译,编译的时候需要依靠CMake。这正是容易出问题的地方。我这里下载的3.0的版本。版本2的尝试按照步骤测试,会有一定的错误出现,不敢保证完全没问题。


文件准备好我们就准备安装编译啦。

首现注意的是CMake如果用dmg的安装包安装,命令行是找不到cmake的命令的。方法当然有,不过我选择比较简单的图形界面安装进行介绍。

打开opencv的界面,增加新目录build。之后我们编译的结果都会放在这里。



在Application中找到CMake双击开始,修改下图方框中的内容。两个路径,以及编译设置。





























点击configure,运行完毕点击generate。这时候你会发现新建的build文件夹下面多出很多文件,这是编译输出的结果。

到终端下面,用cd命令切换到新建的build文件夹下面,运行编译命令

make      (这个命令得花几分钟时间运行)

sudo make install


大功告成,这样你的opencv就安装成功啦。是不是很简单。然而我做到这里还是一头雾水,具体怎么使用呢?下面是Xcode环境和Python环境的使用方法。

Xcode环境

OpenCV官方网站上在Linux下用GCC和Cmake编译的方法,但是在这之前其实有些参数需要设置才行。我这里用Xcode重复相同的代码,看看具体是怎么设置的吧。

打开Xcode, 点击“Create a new Xcode projext”, 然后选择默认的“command line tool”,下一步输入你的project的名称,这样一个简单的project就创建好了。

将下面代码拷贝到main.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;}

下面是重点,要在Xcode中使用opencv,需要设置三个内容。如果看不懂可以参考youtube上的视频。三个设置分别为:

1. Include path

2. Library path

3. Other Linker Flags

三个设置截图页面如下。输入的内容我粘贴在下面,复制即可。这里请注意安装版本3的opencv,版本2会有些小问题。

  1. /usr/local/include

  2. /usr/local/lib   

  3. -lopencv_calib3d -lopencv_core -lopencv_features2d -lopencv_flann -lopencv_highgui -lopencv_imgcodecs -lopencv_imgproc -lopencv_ml -lopencv_objdetect -lopencv_photo -lopencv_shape -lopencv_stitching -lopencv_superres -lopencv_ts -lopencv_video -lopencv_videoio -lopencv_videostab

如果完全按照我上面的方法安装opencv, 2的路径应该是这样子:

/usr/local/lib

/Users/xing/programs/opencv-3.1.0/build/lib

/Users/xing/programs/opencv-3.1.0/build/3rdparty/lib






这样你的程序就可以编译啦,点击编译即提示成功。查看代码,做过简单c程序的应该能看懂,这个代码有一个输入参数,就是一个图像的路径。程序运行结果就是显示这张图片。

我的一个运行命令如下。

./csdn_project ~/Desktop/3.png
输出结果是打开我桌面上得3.png图片。


python环境

python环境下运行opencv非常简单。至于要“import cv2”即可。但是前提是需要将库的路径加入到python得搜索路径中。编辑mac的家目录下得.bashrc文件,

export PYTHONPATH=$PYTHONPATH:'/usr/local/lib/python2.7/site-packages/'

这样python的import命令就可以搜索到opencv安装的地方啦。 

这个网站上可以找到很多好的python运行的实例,可以提供参考。

附上一个可以在我本地运行的python脚本:

import cv2import numpy as np
# 读取图像,进行图像偏移操作。img = cv2.imread('./test.png',0)rows,cols = img.shapeM = np.float32([[1,0,100],[0,1,50]])dst = cv2.warpAffine(img,M,(cols,rows))cv2.imshow('img',dst)cv2.waitKey(0)cv2.destroyAllWindows()










0 0
原创粉丝点击