【OpenCV教程】第一章 Mac上的安装和初步使用

【OpenCV教程】第一章 Mac上的安装和初步使用

小智学长某研究所渣硕,因为导师要求自己寻找论文发表方向,苦逼研究部门正在做的多生物识别系统,重点攻克人脸识别和多摄像头多重识别。而这所有的基础就是OpenCV,Dell笔记本笔记老旧,现在只有这一本老旧的Mac Air带到部门使用。

本文的主要思路

本文主要讲述在Mac上安装OpenCV和基本使用,因为研究的还是不够深入,只能学到那里写到那里。

  • OpenCV在Mac上的安装
  • OpenCV + CMake编译第一个程序

OpenCV在Mac上的安装

基本安装流程如下,当然还有其它安装方法,当个人认为,我这种安装方法还是很酷的。

Created with Raphaël 2.1.2 开始安装 安装Homebrew 安装CMake 安装OpenCV CMake编译第一个OpenCV程序
安装Homebrew

使用过Ubuntu或者CentOS/RedHat操作系统的都知道,在Linux操作系统有一种安装软件的快捷命令那就是apt-get或者yum,前这在Ubuntu,后者在CentOS/RedHat中。在Mac操作系统中,我们可以配置类似的安装命令,那就是homebrew。

在天朝做程序员,最大的困难就是要学会科学上网,关于科学上网的方式,小智学长会在以后的博文开专栏写作,今日我们就学如何将Homebrew配置国内源,提高上网速度。小智学长安装时参考如下参考博文链接

获取install文件并编辑
> cd ~  # 在mac中表示进入/User/***的目录下
> curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install >> brew_install

小智学长有话说:在Linux操作系统中cd ~进入的目录为usr/home/##,Mac操作系统和Linux操作系统属于Unix的不同分支,小智学长后续会开专栏写作操作系统的发展历程,有兴趣的可以自行百度。

编辑修改brew_install文件
> ls -l #下载完毕之后,我们可以看到文件夹中多了brew_install文件
> vim brew_install
# 文件内容如下
#!/System/Library/Frameworks/Ruby.framework/Versions/Current/usr/bin/ruby
# This script installs to /usr/local only. To install elsewhere you can just
# untar https://github.com/Homebrew/brew/tarball/master anywhere you like or
# change the value of HOMEBREW_PREFIX.
HOMEBREW_PREFIX = "/usr/local".freeze
HOMEBREW_REPOSITORY = "/usr/local/Homebrew".freeze
HOMEBREW_CACHE = "#{ENV["HOME"]}/Library/Caches/Homebrew".freeze
HOMEBREW_OLD_CACHE = "/Library/Caches/Homebrew".freeze
# 以下两行注释掉
# BREW_REPO = "https://github.com/Homebrew/brew".freeze
# CORE_TAP_REPO = "https://github.com/Homebrew/homebrew-core".freeze

# 替换成如下两行
BREW_REPO = "git://mirrors.ustc.edu.cn/brew.git".freeze
CORE_TAP_REPO = "git://mirrors.ustc.edu.cn/homebrew-core.git".freeze

# TODO: bump version when new macOS is released
MACOS_LATEST_SUPPORTED = "10.13".freeze
# TODO: bump version when new macOS is released
MACOS_OLDEST_SUPPORTED = "10.11".freeze
安装brew_install
> /usr/bin/ruby ~/brew_install

在Mac系统安装的过程可能会提示需要Command Line Tools for Xcode,打开AppStore安装即可。

替换Homebrew源
替换Homebrew默认源
> cd "$(brew --repo)"
> git remote set-url origin git://mirrors.ustc.edu.cn/brew.git
替换Homebrew-core源
> cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"
> git remote set-url origin git://mirrors.ustc.edu.cn/homebrew-core.git
Brew的更新
> brew update
设置bintray镜像
> echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles' >> ~/.bash_profile
> source ~/.bash_profile #对.bash_profile文件进行编译

Homebrew的安装到此就结束了,如何你还没有安装成功,可以重新试一遍!有问题,欢迎在评论出提问。

安装CMake
> brew search cmake #搜索CMake是否存在,如果不存在直接去官网下载安装
# 系统提示如下
==> Formulae
cmake ✔

==> Casks
cmake

> brew install cmake #安装CMake
安装OpenCV

利用Homebrew安装OpenCV的方式和安装CMake的方式一样,具体如下:

> brew search opencv #如果确定有的话,其实这步可以省略
# 提示如下
==> Formulae
opencv ✔                                 opencv@2# 目前(指2018年8月)系统默认版本是OpenCV3,如果需要OpenCV2,安装命令为brew install opencv@2
> brew install opencv

在Mac上配置OpenCV的开发环境到此结束。

CMake编译第一个OpenCV程序

创建工程文件夹,不妨命名为DisplayImage
> cd ~/Code/OpenCV #这个是我存放OpenCV代码的文件夹,可以凭个人兴趣存放
> mkdir DisplayImage
> cd DisplayImage
> touch DisplayImage.cpp #创建代码文件
> vim DisplayImage.cpp #编辑代码文件

输入如下代码:

#include <iostream>

#include <opencv2/opencv.hpp>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui.hpp>

using namespace cv;
using namespace std;

int main(int argc, char** argv)
{
    Mat image;
    image = imread(argv[1], 1);

    if(argc != 2 || !image.data) {
        printf("No image data \n");
        return -1;
    }

    cvNamedWindow("Display Image", CV_WINDOW_AUTOSIZE);
    imshow("Display Image", image);

    waitKey(0);

    return 0;   
}
创建CMakeLists.txt文件
> vim CMakeLists.txt
# 输入如下命令,注意括号与命令之间的空格
project( DisplayImage )
find_package( OpenCV REQUIRED )
add_executable( DisplayImage DisplayImage )
target_link_libraries( DisplayImage ${OpenCV_LIBS} )

#执行如下命令
> camke .
> make
#执行命令完毕之后,我们会发现当前文件夹下多了很多文件,其中有一个DisplayImage文件
执行DisplayImage文件
> ./DisplayImage WechatIMG78.jpeg #WechatIMG78.jpeg是我文件夹下的图片名,只要能够找到相应图片就行

显示结果如下:

执行结果如下

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值