有时候我们会使用树莓派和摄像头去做图像识别,在树莓派和LINUX系统中最常用opencv去做图像识别,这次来介绍下树莓派安装opencv和用树莓派做图像识别。

一、树莓派的系统

安装就不介绍了。直接开机打开树莓派的命令窗口,安装openCV的依赖包,步骤有点多。

1.1 更新系统

$ sudo apt-get update$ sudo apt-get upgrade

1.2 安装编译openCV源码的工具

$ sudo apt-get install build-essential cmake pkg-config

1.3 安装一些常见格式的图像处理和视频处理的包,方便我们能从硬盘上读取不同格式的图像和视频

$ sudo apt-get install libjpeg-dev libtiff5-dev libjasper-dev libpng12-dev$ sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev$ sudo apt-get install libxvidcore-dev libx264-dev

1.4 openCV用于图像展示的功能需要依模块

$ sudo apt-get install libgtk2.0-dev$ sudo apt-get install libatlas-base-dev gfortran

接下来还需要安装python dev

sudo apt-get install python2.7-dev python3-dev

二、下载 并解压OpenCV 的资源库

$ cd ~$ wget -O opencv.zip https://github.com/Itseez/opencv/archive/3.1.0.zip$ unzip opencv.zip$ wget -O opencv_contrib.zip https://github.com/Itseez/opencv_contrib/archive/3... $ unzip opencv_contrib.zip

三、接下来准备python的开发环境

3.1 安装python包管理器:

$ wget https://bootstrap.pypa.io/get-pip.py $ sudo python get-pip.py

3.2 安装python虚拟环境

$ sudo pip install virtualenv virtualenvwrapper$ sudo rm -rf ~/.cache/pip

之后在~/.profile文件最后添加几行

# virtualenv and virtualenvwrapperexport WORKON_HOME=$HOME/.virtualenvssource /usr/local/bin/virtualenvwrapper.sh

3.3 接下来就是生成一个python虚拟环境用于opencv的开发环境

$ mkvirtualenv cv -p python3

打开一个命令窗口,执行下列命令,确认我们的cv环境已经生成好了

$ source ~/.profile$ workon cv

如果命令窗口前面的文字变成了(cv)则表明我们已成功创建了名为cv的python虚拟环境

3.4 在cv虚拟环境下安装numpy

(cv) -> ~ $ pip install numpy

接下来的操作都要保持在cv环境中。

四、编译和安装openCV

4.1 一定要在cv环境里,接下来用cmake进行编译opencv

$ cd ~/opencv-3.1.0/$ mkdir build$ cd build$ cmake -D ENABLE_PRECOMPILED_HEADERS=OFF \-D CMAKE_BUILD_TYPE=RELEASE \ -D CMAKE_INSTALL_PREFIX=/usr/local \ -D INSTALL_PYTHON_EXAMPLES=ON \ -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-3.1.0/modules \ -D BUILD_EXAMPLES=ON ..

4.2 开始编译opencv

$ make -j4

编译过程大概会用好几个小时,请耐心等候,-j 是使用多少线程进行编译,在树莓派上使用的单线程编译,虽然速度会慢很多,但是不会死机,用-j4会有死机的可能。如果-j后不加数字,则默认不限制线程编译。

编译过程如下

4.3 安装opencv

$ sudo make install$ sudo ldconfig

4.4 python虚拟环境中链接到opencv模块

我们需要将cv2.cpython-34m.so重命名为cv2.so

$ cd /usr/local/lib/python3.4/site-packages/$ sudo mv cv2.cpython-34m.so cv2.so

然后将python虚拟环境中的cv2.so链接到上面刚被改名为cv2.so的文件上

$ cd ~/.virtualenvs/cv/lib/python3.4/site-packages/$ ln -s /usr/local/lib/python3.4/site-packages/cv2.so cv2.so

五、测试OpenCV3是否安装成功

$ source ~/.profile $ workon cv$ python>>> import cv2>>> cv2.__version__'3.1.0'>>>

六、完成OpenCV的开发环境后,就可以跑几个简单的图像识别的DEMO

其DEMO放在/usr/local/share/OpenCV/sample/python目录下

我们将/usr/local/share/OpenCV/sample/文件拷贝到Downloads/sample/文件夹下

跑几个DEMO

边缘检测算法:(cv)   python edge.py

模式识别算法:(cv)   python find_obj.py

运动方向检测:(cv)   python lk_track.py

大功告成,opencv是树莓派进行图像处理和识别的常用工具,如果配合树莓派CSI的摄像头获取相片并识别处理将会更加有趣,可以做成人脸识别或者人脸追踪。

- END -

往期推荐

● 在玩乐中学编程——DFRobot Maqueen麦昆机器人小车评测

● 基于51单片机的电子式温度调节器设计-整套毕设资料

● 物联网全新硬件解决方案——5款好用的MCU推荐

欢迎加入微信群

加入与非社群,找到同道,一起切磋技艺、化解难题。

当然还有不定期的红包雨等着你哦!

与非网大大(小编)微信

注意

添加小编微信后,回复对应关键词+公司+岗位,方可被拉入社群,否则一律禁止入群,每人只可申请一个技术群。

关键词:嵌入式、模拟、人工智能、RF、传感器、汽车电子、物联网、IC设计、EDA、PCB、开源硬件、树莓派。

bootstrap文件不能被识别_树莓派安装openCV做图像识别相关推荐

  1. 树莓派安装openCV做图像识别

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达本文转自|新机器视觉 有时候我们会使用树莓派和摄像头去做图像识别,在 ...

  2. bootstrap文件不能被识别_如何使用npm安装bootstrap

    经过我好多次的查询和实验,总结了一下在vue项目中使用bootstrap框架,npm安装注意.bootstrap中js插件依赖于jquery,所以在这之前必须安装jquery. jquery安装 1. ...

  3. bootstrap文件不能被识别_基于 Yara 引擎的二进制文件扫描

    1. 什么是 Yara 引擎? Yara 是一个开源的恶意代码查杀引擎,用来识别和分类恶意软件样本.Yara 本身不提供杀毒功能,也没有自己的特征库,所以它只是个引擎而已. Yara 引擎需要特征规则 ...

  4. 为树莓派安装opencv并进行人脸识别

    为树莓派安装opencv并进行人脸识别 1.更改modules文件 2.确认树莓派摄像头安装成功 3.在树莓派上安装运行在Python2上的OpenCV 4.下载人脸识别代码和xml文件并运行 参考: ...

  5. 【树莓派4B深度学习 垃圾分类】Chap.3 树莓派安装opencv并测试视频接口实时视频流的垃圾分类【深度学习 招式篇】

    [树莓派4B深度学习 垃圾分类]Chap.3 树莓派安装opencv并测试视频接口实时视频流的垃圾分类[深度学习 招式篇] 后记 1.激活虚拟环境+进入代码+更改测试集路径(这里是安装成功后测试的代码 ...

  6. 树莓派安装Opencv+Contrib和 QT 详细教程

    文章目录 前言 一.卸载OpenCV或重装系统 1.卸载OpenCV 2.重装系统 ①. 下载raspbian ②. 安装raspbian ③. 配置树莓派WiFi和SSH ④. 树莓派VNC设置 ⑤ ...

  7. python 文件编码的识别_【python】python编码方式,chardet编码识别库

    环境: python3.6 需求: 针对于打开一个文件,可以读取到文本的编码方式,根据默认的文件编码方式来获取文件,就不会出现乱码. 针对这种需求,python中有这个方式可以很好的解决: 解决策略: ...

  8. toolchain安装教程支持_树莓派安装ESP8266_SDK开发环境

    陈拓 chentuo@ms.xab.ac.cn 2020/02/19-2020/03/31 1. 概述 ESP8266的开发工具是在linux系统下运行的,树莓派的官方操作系统是Linux系统.如果你 ...

  9. 树莓派4b风扇安装方法_树莓派安装手记

    女王节前夕做活动,卖树莓派的淘宝店家做活动,又在盆友的鼓励下剁手买了一个派.245元,有一个3代B型的派,一根带插头的充电线,一个需要自己组装的透明外壳,散热片,小风扇,就没了.是的,没有屏幕.我这里 ...

最新文章

  1. Position(Static, Absolute, Relative, Fixed)
  2. 通过扫码打开IOS的App Store下载APP(Android版暂时没找到解决方法)
  3. python redis 操作_Python 使用 Redis 操作
  4. 1006 换个格式输出整数 (15 分)
  5. 蓝桥杯2019年第十届C/C++省赛C组第六题-旋转
  6. 系统架构——从Memcache单点说起
  7. jeecgboot设置session失效时间
  8. 软件质量属性:易用性
  9. Centos虚拟机使用virt-manager创建虚拟机
  10. 二硫化锡/纳米碳/MXene/PANI复合材料研究进展
  11. 零基础学Python———求一个字符串的每个字符重新组合排列python排列组合的数学运算(递归法)
  12. 墙裂推荐的工具软件及插件神器
  13. yarn WEB UI及reserved memory、spark WEB UI
  14. vue js樱花飘落背景特效
  15. 什么是领域驱动设计?
  16. Winndowns 2008 mail邮件服务
  17. 万卷书 - 书单整理 [01]
  18. python 的内置模块
  19. PyQt5制作一个简单的登录界面
  20. 绝地求生显示器测试软件,绝地求生画质怎么调好 绝地求生画面设置教程

热门文章

  1. 载:看了你能懂几个?
  2. 安装SandcastleInstaller
  3. 一个http请求就是一个线程吗,java的服务是每收到一个请求就新开一个线程来处理吗...
  4. 用Autofac替换.net core 内置容器
  5. 关于myBatis的问题There is no getter for property named 'USER_NAME' in 'class com.bky.model.实例类'...
  6. 【奇葩面试题】因为太难而被禁用的17道Google面试题
  7. mysql中insert into select from的使用
  8. SonarQube的安装、配置与使用
  9. PHP算法根据周数获取开始结束日期
  10. Bug之数据sql插入不显示