OpenCV系列(一)--Mac下OpenCV的安装和配置(遇见的坑与填坑)

先安装Homebrew

Homebrew官方网址:https://brew.sh/

官方安装方法:

/usr/bin/ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)”
1
官方卸载方法:

/usr/bin/ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)”
1
亲测可用。

如果报错
安装homebrew报错curl: (7) Failed to connect to raw.githubusercontent.com port 443: Operation

解决方案https://www.jianshu.com/p/68efabd2e32b


安装相关

1、安装wget
方法:输入如下命令

brew install wget

2、安装cmake
方法:输入如下命令

brew install cmake

执行该命令的时候报错如下:
Error: cmake: “cxx11” is not a recognized standard
解决方案:我在网上没有找到解决方案,我的解决方案就是卸载Homebrew重新安装了一遍。从新走了一遍成功了。
3 、安装OpenCV

 brew install opencv

Opencv安装的位置为 :/usr/local/Cellar/opencv
这里我等了小半天,好像下载完了一直在编译


在xcode中构建OpenCV工程

打开xcode新建一个c++工程如下:
在这里插入图片描述
下一步:
在这里插入图片描述
下一步:
在这里插入图片描述
配置依赖路径
按上图步骤依次执行:12345(6是后面自动生产的)
Build Settings -> 搜索框输入search paths ->选择search paths下面的:
Always Search User Paths 设置 Yes
Framework Search Paths ->双击后面的详细信息添加指定路径/usr/local/lib
Header Search Paths ->双击后面的详细信息添加指定路径:/usr/local/include 与 /usr/local/Cellar/opencv/4.1.0_2/include/opencv4(分两次添加)
Library Search Paths ->双击添加指定路径:/usr/local/lib

上图中的第6步:添加包
添加包。
右击工程(黄色的工程文件夹,不是蓝色的那个)new一个group,命名为head。然后打开/usr/local/Cellar/opencv/3.4.2/lib目录(之前brew自动下载的opencv目录下的lib目录),然后按照文件种类排序可以看到一些.dylib文件,将这些.dylib文件拖入刚才新建的文件夹下.我这里是43个文件(原参考文章18个),网上有说要加所有后缀是dylib文件,其实左下角带箭头的那些不用管。

弹出选项选择如下
在这里插入图片描述
效果如下:
在这里插入图片描述

这样我们就可以测试代码了main.cpp添加如下代码

#include <opencv2/opencv.hpp>
#include <opencv2/highgui/highgui.hpp>
using namespace cv;

int main(int argc, const char * argv[]) {
    Mat image;
    image = imread("/Users/mile/Downloads/mile.jpg",1);
    namedWindow("test", WINDOW_AUTOSIZE);
    imshow("test", image);
    Mat gray;
    cvtColor(image, gray, COLOR_RGBA2GRAY);
    namedWindow("gray");
    imshow("gray", gray);
    waitKey(0);
    return 0;
}

测试效果如下:
在这里插入图片描述

opencv Mac下Xcode中遇见的坑与填坑

问题一、error: ‘CV_WINDOW_AUTOSIZE’ was not declared in this scope
解决方案:导包#include <opencv2/highgui/highgui.hpp> 或者上面导包出现了问题再试试。

问题二、unknown type name ‘IpIImage’
在这里插入图片描述

解决方案:上面的第六步解决

问题三、
Showing Recent Issues
? Undefined symbol: cv::namedWindow(std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator > const&, int)

您收到链接器错误。我认为这是因为你没有链接到 opencv 需要的正确的库。

正确的库是 pkg-config ,所以我建议:

  brew install pkg-config 

然后您可能需要重新安装opencv

先卸载

brew uninstall opencv

再安装

brew install opencv

OK 这样应该就可以了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值