失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 树莓派学习笔记—— 源代码方式安装opencv

树莓派学习笔记—— 源代码方式安装opencv

时间:2023-07-29 20:30:51

相关推荐

树莓派学习笔记—— 源代码方式安装opencv

0.前言

本文介绍如何在树莓派中通过编译源代码的方式安装opencv,并通过一个简单的例子说明如何使用opencv。 更多内容请参考——【树莓派学习笔记——索引博文】

1.下载若干依赖项 在开始安装之前,最好更新树莓派软件源。如果更新时间太长,请参考博文修改软件源网络地址——【树莓派学习笔记——修改树莓派软件源】 sudo apt-get update

请依次安装以下依赖项,这些必须安装的依赖项来自于opencv官网的说明,在多数debian系统中都可以采用这种方式进行安装。其实在树莓派中build-essential已经默认安装,但是cmake等其他内容仍需要手动安装。sudo apt-get install build-essential sudo apt-get install cmake sudo apt-get install libgtk2.0-dev sudo apt-get install pkg-config sudo apt-get install python-dev python-numpy sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev

2.获得源代码 在树莓派用户目录中建立opencv文件夹 mkdir opencv

通过sourceforge网站获取opencv源代码,本文选择2.4.9版本。下载过程可能比较缓慢,请耐心等待。 wget /projects/opencvlibrary/files/opencv-unix/2.4.9/opencv-2.4.9.zip/download opencv-2.4.9.zip

解压源代码,获得一个名为opencv-2.4.9的文件夹 unzipopencv-2.4.9.zip

3.编译源代码 进入opencv源代码目录,在该目录中新建一个名为release的文件夹。 cd ~/opencv/opencv-2.4.9 mkdir release cd release 使用cmake工具在该文件夹中生成makefile文件,指定opencv的安装目录为/usr/local,opencv的源代码位于上一层目录。 cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local .. 编译源代码并安装(编译源代码的时间非常的长,make之后我便睡去,第二天早上才执行install)make sudo make install 更新搜索动态链接库 sudo ldconfig

4.示例 【C++】——通过代码载入一张图片,通过opencv把彩色图片转换为黑白图片,并把原图和转换后的图片输出到屏幕中。[cpp]view plaincopy#include<opencv2/core/core.hpp> #include<opencv2/imgproc/imgproc.hpp> #include<opencv2/highgui/highgui.hpp> #include<iostream> usingnamespacecv; usingnamespacestd; intmain(intargc,char**argv) { Matimage,image_gray; image=imread(argv[1],CV_LOAD_IMAGE_COLOR); if(argc!=2||!image.data){ cout<<"Noimagedata\n"; return-1; } cvtColor(image,image_gray,CV_RGB2GRAY); namedWindow("image",CV_WINDOW_AUTOSIZE); namedWindow("imagegray",CV_WINDOW_AUTOSIZE); imshow("image",image); imshow("imagegray",image_gray); waitKey(0); return0; }【makefile】

[plain]view plaincopyINCLUDE=$(shellpkg-config--cflagsopencv) LIBS=$(shellpkg-config--libsopencv) SOURCES=test.cpp #目标文件 OBJECTS=$(SOURCES:.cpp=.o) #可执行文件 TARGET=test $(TARGET):$(OBJECTS) g++-o$(TARGET)$(OBJECTS)-I$(INCLUDE)$(LIBS) $(OBJECTS):$(SOURCES) g++-c$(SOURCES) clean: rm$(OBJECTS)$(TARGET) #编译规则$@代表目标文件$<代表第一个依赖文件 %.o:%.cpp g++-I$(INCLUDE)-o$@-c$< 【简要说明】通过pkg-config --cflags opencv 获得opencv相关头文件路径,通过pkg-config --libs opencv获得opencv扩展库 更多makefile知识请查看——【Linux学习笔记——例说makefile 索引博文】【编译并执行】 make ./test raspberry.jpg 示例中载入一张名为raspberry.jpg图片。在该示例中,图片和可执行文件test应在同一个目录中。运行结果如下图所示,左侧为原始图片,右侧为转换后的图片。选择的图片色彩不够丰富,彩色图片和黑白图片的对比不够强烈,但也可证明opencv在树莓派中运行正常。

图1 运行结果 5.总结 树莓派安装opencv并不困难,陷阱不多但是耗时较长,需要保持足够的耐心。

参考资料【Installation in Linux】 【Installation of OpenCV Raspberry pi】

如果觉得《树莓派学习笔记—— 源代码方式安装opencv》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。