Xcode切换工作路径
来源:互联网 发布:战地2飞机数据修改 编辑:程序博客网 时间:2024/06/16 15:30
Mac下配置OpenCV的过程可以参考Mac下OpenCV环境搭建。
最近在编写OpenCV程序时遇到了一个不大不小的问题,使用imread函数读取图片时相对路径不起作用,只能使用绝对路径,比如我在桌面上创建了一个test工程,其绝对路径为/Users/mac/Desktop/test,在该路径下创建一个images文件夹,里面存放用来处理的两张图片lena.jpg和ellipse.jpg,于是工程的文件结构如下:
使用如下代码读取时,发现图片路径发生错误。
#include <opencv2/opencv.hpp>using namespace cv;int main(int argc, const char * argv[]) { Mat image; image = imread("./lena.jpg"); namedWindow("test", WINDOW_AUTOSIZE); imshow("test", image); waitKey(0); return 0;}
当将其中的image = imread(“./lena.jpg”);改为image = imread(“/Users/mac/Desktop/test/images/lena.jpg”);发现读取图片成功,这说明读取绝对路径成功,但是相对路径有问题。
其实这是因为Xcode在新建每个C++工程时,默认给工程分配了工作路径,比如我创建的test工程的工作路径为/Users/mac/Library/Developer/Xcode/DerivedData/test-anopxdbrcwpmycdtmfelcsbyamnr/Build/Products/Debug/,在最后的Debug文件夹下存放着工程生成的可执行文件(类似于windows下的exe文件),在Debug文件下放两张测试图片lena.jpg和ellipse.jpg,如下图:
之后在Xcode中通过如下测试代码是可以正确显示图片的,这说明Xcode分配的工作路径确实跟猜想的一样。
#include <opencv2/opencv.hpp>using namespace cv;int main(int argc, const char * argv[]) { Mat image; image = imread("./lena.jpg"); namedWindow("test", WINDOW_AUTOSIZE); imshow("test", image); waitKey(0); return 0;}
但是这种工作路径是不符合我们的习惯的,我们希望工作路径跟工程路径一致,即工作路径也是/Users/mac/Desktop/test,如下图在Xcode中点击工程名,选择Edit Scheme,之后在Use custom working directory前打钩,并将工作路径修改为/Users/mac/Desktop/test。
这样通过相对路径读取图片的代码就可以运行通过了,代码如下,注意图片的相对路径为./images/lena.jpg。
#include <opencv2/opencv.hpp>using namespace cv;int main(int argc, const char * argv[]) { Mat image; image = imread("./images/lena.jpg"); namedWindow("test", WINDOW_AUTOSIZE); imshow("test", image); waitKey(0); return 0;}
- Xcode切换工作路径
- 工作路径的切换
- python shell GUI编写切换工作路径
- Python Shell中切换当前工作目录(路径)
- python 在windows下如何切换工作路径
- Xcode路径
- Xcode 虚拟机跨界建切换
- 切换默认Xcode
- Xcode 头文件路径
- xcode生成文件路径
- xcode模拟器路径
- xcode生成文件路径
- xcode生成文件路径
- XCode路径设置
- xcode模拟器路径
- xcode路径的更改
- xcode生成文件路径
- XCode查找FrameWork路径
- C++模板与泛型编程
- Android动态加载入坑指南
- poj1258 Agri-Net 最小生成树
- 《python+opencv实践》四、图像特征提取与描述——30Harris 角点检测
- PHP入门问题
- Xcode切换工作路径
- 常用软件开发流程分析
- web前端之HTML中的常见特殊符号
- 【SSH】Struts2中的ModelDriven机制
- 重复多轮调用getGroupView的解决方案
- 图像旋转任意角度
- MySQL云数据库的实现
- 161113
- JavaBean的四种定义方法