mac Xcode opencv 配置

本文主要讲述了在Xcode中配置OpenCV环境时遇到的问题及解决方法。起初按常规方法配置,使用opencv会build失败,找不到opencv2库。经查找,需根据实际安装路径设置Header Search Paths和Library Search Paths。还解决了找不到hdf5的问题,最后给出测试代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

刚开始按照brew install opencv
然后在Xcode中Create New Group等方法做了以后
https://www.cnblogs.com/hongyang/p/6644775.html

在Xcode中

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

int main(int argc, const char * argv[]) {
    
    //Mat image;
    std::cout << "Hello, World!\n";
    return 0;
}

是没有问题的,一旦用到opencv,比如把Mat那一行注释取消掉,就会build Failed

又按照下述方法重新安装opencv
http://shirashinomiya.hatenablog.com/entry/2018/07/26/212524

but在Xcode中始终无法找到opencv2的库

经过仔细查找,发现不能按照别人描述的folder直接设置Header Search Paths和Library Search Paths
应该先看自己的opencv安装在哪个folder下
一般是在/usr/local/Cellar下

有的技术博客中说在/usr/local/lib,
但用file opencv命令确认后,发现只是一个symbolic link,link的地方还是在/usr/local/Cellar

然后一路向下找,直到找到opencv2文件夹为止,本机走到下述文件夹下找到了opencv2
/usr/local/Cellar/opencv/4.1.0_2/include/opencv4

这时候只需要把/usr/local/Cellar/opencv/4.1.0_2/include/opencv4设为Header Search Paths
同样的把/usr/local/Cellar/opencv/4.1.0_2/lib设为Library Search Paths

这两步做完以后opencv就可以在Xcode中使用了
注意必须首先#include <opencv2/opencv.hpp>
而且要加waitKey,如果不加图片就会显示一瞬间立刻消失

中间出现的还有一个问题就是报错说找不到hdf5,但是查看发现hdf5是已经安装过的
这时候试探性地再次install: brew install hdf5
系统给出信息说已经安装,只是还没有link
所以用brew link hdf5后解决

测试代码就是一个imread和imshow

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

using namespace std;
using namespace cv;



int main(int argc, const char * argv[]) {
    
    Mat src = imread("/Users/myname/Desktop/aa.png", 0);
    
    imshow("result", src);
    waitKey(0);
    std::cout << "Hello, World!\n";

    return 0;
}
### 如何在 Xcode配置 OpenCV 环境 要在 MacXcode 上成功配置 OpenCV C++ 开发环境,可以按照以下方法操作: #### 1. 获取 OpenCV 源码 可以通过下载官方发布的压缩包或者克隆 GitHub 仓库的方式获取 OpenCV 源码。推荐使用 Git 克隆方式以便于后续更新维护[^1]。 ```bash git clone https://github.com/opencv/opencv.git cd opencv git checkout 4.5.5 # 切换到指定版本 ``` #### 2. 安装依赖工具 `CMake` 为了编译 OpenCV 源码,需要先安装构建工具 CMake。可以选择通过 Conda 或 Homebrew 来完成安装: - 如果已经安装 Anaconda,则可以直接运行命令 `conda install cmake` 进行安装。 - 另一种常见方式是利用 Homebrew 工具执行 `brew install cmake`[^3]。 #### 3. 编译并安装 OpenCV 进入之前克隆下来的 OpenCV 文件夹目录,在终端创建一个新的子文件夹用于存放生成的中间产物以及最终库文件,并切换至该新建文件夹内启动 CMake 配置流程。 ```bash mkdir build && cd build cmake -D CMAKE_BUILD_TYPE=RELEASE \ -D CMAKE_INSTALL_PREFIX=/usr/local \ .. make -j8 sudo make install ``` 上述脚本中的参数解释如下: - `-D CMAKE_BUILD_TYPE=RELEASE`: 设置为发布模式优化性能; - `-D CMAKE_INSTALL_PREFIX=/usr/local`: 自定义目标安装位置,默认即 `/usr/local`; - 参数最后附加两个连续点号代表返回上级路径指向根项目地址。 #### 4. 创建新的 Xcode 工程 打开 Xcode 应用程序界面点击左上角菜单栏选项 “File -> New Project”,选择 Command Line Tool 类型模板继续下一步设置工程基本信息完成后保存磁盘等待加载完毕即可[^4]。 #### 5. 添加头文件与链接动态库 找到刚才安装好的 OpenCV 头文件所在的具体物理存储路径通常位于 `/opt/homebrew/Cellar/opencv/4.5.5_2/include/opencv4` (具体视个人实际安装情况可能略有差异),将其添加进项目的 Header Search Paths 字段里;同样地也要把对应的 `.dylib` 动态共享对象加入 Library Search Paths 当前工作区中去。 另外记得勾选 Enable Modules(Import as Module)开关开启模块化支持功能方便日后调用更加简洁高效。 至此整个基于 macOS 平台下的 Xcode+C++开发框架集成 OpenCV 图像处理类库的工作就全部完成了! ```cpp #include <iostream> #include <opencv2/opencv.hpp> int main() { cv::Mat image = cv::imread("/path/to/image.jpg"); if(image.empty()) { std::cout << "Could not read the image." << std::endl; return -1;} cv::imshow("Display window",image); int k = cv::waitKey(0); // Wait infinitely for user to press any key return 0; } ``` 以上是一个简单的测试案例用来验证当前环境中是否能够正常载入图片资源并通过窗口展示出来效果如何[^2]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蓝羽飞鸟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值