目录

  • 安装
    • 修改host以连接上Github
      • 测试IP
      • 修改树莓派的hosts
    • 安装各种依赖包
    • 安装OpenCV
      • 只安装核心模块
      • 安装核心模块和opencv_contrib
  • C++ Opencv 测试
    • 编写测试源码
    • 编译
    • 测试
  • 卸载

平台:树莓派3B
版本: 2021-05-07-raspios-buster-armhf


安装

修改host以连接上Github

测试IP

使用这个网站测试各个IP的延迟

先在自己电脑上测试
修改hosts文件。Windows 10一般在C:\Windows\System32\drivers\etc\hosts
在里面加上

52.78.231.108        github.com
185.199.108.153     assets-cdn.github.com
185.199.109.153     assets-cdn.github.com
185.199.110.153     assets-cdn.github.com
185.199.111.153     assets-cdn.github.com
199.232.69.194      github.global.ssl.fastly.net

github.com的IP选择网站上测得的低延迟IP。

cmd / Powershell中使用命令ipconfig /flushdns清除系统DNS缓存
Win+R键运行cmd


或随便在一个地方按住shift+右键选择在此处打开Powershell 窗口


打开Github官网测试能否成功连接上

修改树莓派的hosts

sudo nano /etc/hosts

将刚刚的内容复制进去

Ctrl+O 回车保存
Ctrl+X退出后reboot -i重启

安装各种依赖包

// 安装build-essential、cmake、git和pkg-config
sudo apt-get install build-essential cmake git pkg-config // 安装jpeg格式图像工具包
sudo apt-get install libjpeg8-dev // 安装tif格式图像工具包
sudo apt-get install libtiff5-dev // 安装JPEG-2000图像工具包
sudo apt-get install libjasper-dev // 安装png图像工具包
sudo apt-get install libpng12-dev//安装视频I/O包
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev//安装gtk2.0
sudo apt-get install libgtk2.0-dev//优化函数包
sudo apt-get install libatlas-base-dev gfortran

安装OpenCV

我选择的是Installation in Linux里官方介绍的
Quick start方法

只安装核心模块

依次执行下列命令

# Install minimal prerequisites (Ubuntu 18.04 as reference)
sudo apt update && sudo apt install -y cmake g++ wget unzip
# Download and unpack sources
wget -O opencv.zip https://github.com/opencv/opencv/archive/master.zip
unzip opencv.zip
# Create build directory
mkdir -p build && cd build
# Configure
cmake  ../opencv-master
# Build
cmake --build .

安装核心模块和opencv_contrib

依次执行下列命令

# Install minimal prerequisites (Ubuntu 18.04 as reference)
sudo apt update && sudo apt install -y cmake g++ wget unzip
# Download and unpack sources
wget -O opencv.zip https://github.com/opencv/opencv/archive/master.zip
wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/master.zip
unzip opencv.zip
unzip opencv_contrib.zip
# Create build directory and switch into it
mkdir -p build && cd build
# Configure
cmake -DOPENCV_EXTRA_MODULES_PATH=../opencv_contrib-master/modules ../opencv-master
# Build
cmake --build .

cmake --build .的‘.’不要打漏了,这一步编译巨慢无比。
编译完成后在build文件夹内使用如下命令安装。

# 安装
sudo make install
# 更新动态链接库
sudo ldconfig

测试是否安装成功
打开python

python3


依次输入

import cv2
cv2

能正常导入不报错即可

C++ Opencv 测试

编写测试源码

在合适的地方编写源码

nano main.cpp
#include <opencv2/opencv.hpp>
#include <opencv2/highgui/highgui_c.h>
#include <iostream>using namespace cv;
using namespace std;int main(int argc, char * argv[])
{Mat src;src = imread(argv[1], 1);if(argc != 2 || !src.data){return -1;}namedWindow("imshow image", CV_WINDOW_AUTOSIZE);imshow("imshow image", src);waitKey(0);return 0;
}

编译

相同的目录下编写CMakeLists.txt文件

nano CMakeLists.txt
project(main)
set(OpenCV_DIR "/usr/local/include/opencv4")
find_package( OpenCV REQUIRED )
include_directories(${OpenCV_INCLUDE_DIRS})
add_executable(main main.cpp)
target_link_libraries(main ${OpenCV_LIBS})


其中/usr/local/include/opencv4为安装opencv后库的路径
不同的版本可能不同

使用如下命令编译

cmake . && make

测试

4.jpg 为你要打开的图片

./main 4.jpg

卸载

回到当初安装opencv的build目录,进入该build目录执行卸载操作,若build目录已被删除,则以当时的配置再次编译出来一个即可

sudo make uninstall

删除相关文件夹

find /usr -name "*opencv*" | xargs sudo rm -rf

【树莓派学习笔记】四、OpenCV的安装与卸载相关推荐

  1. 树莓派学习笔记——wiringPi简介、安装和管脚说明

    1.WiringPi简介 WiringPi是应用于树莓派平台的GPIO控制库函数,WiringPi遵守GUN Lv3.wiringPi使用C或者C++开发并且可以被其他语言包转,例如python.ru ...

  2. 树莓派学习笔记(二)

    树莓派学习笔记(二)安装OpenCV环境 感谢 一.更换源 1.查看系统类型 2.更换源 二.环境搭建 1.sd卡扩容 2.OpenCV相关库安装 3.OpenCV的下载 4.OpenCV的安装 5. ...

  3. 树莓派学习笔记——GPIO功能学习

    0.前言 树莓派现在越来越火,网上树莓派的资料也越来越多.树莓派源自英国,国外嵌入式开源领域具有良好的分享精神,树莓派各种集成库也层出不穷,下面推荐几个. [ python GPIO ] [开发语言] ...

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

    0.前言 本文介绍如何在树莓派中通过编译源代码的方式安装opencv,并通过一个简单的例子说明如何使用opencv. 更多内容请参考--[树莓派学习笔记--索引博文] 1.下载若干依赖项 在开始安装之 ...

  5. OpenCV学习笔记四-image的一些整体操作

    title: OpenCV学习笔记四-image的一些整体操作 categories: 编程 date: 2019-08-08 12:50:47 tags: OpenCV image的一些操作 sP4 ...

  6. 树莓派学习笔记(5):成功实现NAS家庭服务器(流媒体播放、文件共享及下载机)

    一.家庭服务器实现的主要功能 http://www.cnblogs.com/xiaowuyi/p/4051238.html 1.流媒体播放服务:利用DLNA实现电视.手机.电脑播放其上面的媒体文件. ...

  7. linux系统管理学习笔记之三----软件的安装

    linux系统管理学习笔记之三----软件的安装 2009-12-29 19:10:02 标签:linux 系统管理 [推送到技术圈] 版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 ...

  8. ROS学习笔记四:理解ROS节点

    ROS学习笔记四:理解ROS节点 本节主要介绍ROS图形概念,讨论ROS命令行工具roscore.rosnode和rosrun. 要求 要求已经在Linux系统中安装一个学习用的ros软件包例子: s ...

  9. 树莓派学习笔记——Wifi AP热点模式 使用RT5370

    0.前言 本文详细说明为树莓派增加Wifi AP热点功能的具体步骤.配置完成之后,树莓派将增加一个Wifi热点功能,使用笔记本或手机便可连接树莓派,树莓派具有了AP热点功能,可更一步扩展树莓派相关的W ...

  10. 【树莓派学习笔记】树莓派4B上运行uboot并从网络启动linux内核(上)

    [树莓派学习笔记]树莓派4B上运行uboot并从网络启动linux内核(上) 文章目录 [树莓派学习笔记]树莓派4B上运行uboot并从网络启动linux内核(上) 前言 1. 硬件需求与软件版本汇总 ...

最新文章

  1. 利用System.EventHandler来实现两个窗体间的事件调用
  2. AB(apache benchmark)压力测试
  3. Java工程师之SpringBoot系列教程前言目录
  4. 8、HTML <table>标签(表格)
  5. UIScrollView事件拦截
  6. 【操作系统】连续内存分配策略
  7. 面试遇到职场PUA,只能说兄弟你还嫩了点
  8. opencv 的norm_OpenCV学习笔记(一)之图像金字塔-上采样与降采样与DOG
  9. 图像识别-百度AI开放平台
  10. pytorch---之随机种子初始化
  11. C/C++的转义字符
  12. 【啊哈C语言】【习题答案】【第一章】
  13. 三菱PLC程序,汽车厂流水线输送控制系统
  14. 3dmax渲染很慢/很卡?
  15. 使用Windows 7的早期版本来返回时间并保存文件
  16. 黑客丛林通关攻略参考(更新中)
  17. 泰斗T302模块选择导航系统方法
  18. Python 黑帽子 snffer ip header decoder
  19. 企业办公必备:千里眼VSir视频会议系统软件
  20. .NET Framework 框架简介

热门文章

  1. 如何用 Python 实现 Web 抓取?
  2. spring AOP 之五:Spring MVC通过AOP切面编程来拦截controller
  3. vSphere5.5安装教程
  4. ios下使用rsa算法与php进行加解密通讯
  5. 演示:Linux工程环境应用实训(防火墙、NAT、静态路由)详细配步骤
  6. 数字图像处理 python_5使用Python处理数字的高级操作
  7. Matplotlib中的“ plt”和“ ax”到底是什么?
  8. 实现klib_使用klib加速数据清理和预处理
  9. Kubernetes 入门(4)集群配置
  10. leetcode658. 找到 K 个最接近的元素(二分法)