树莓派初始使用相关问题及解决方法

2023-11-15

1.SSH连接

网线连接电脑---在无线图标上右键:打开“网络和internet设置”---更改适配器设置

在WLAN上面右键,选择属性---共享,勾上√

在cmd里面,可以输入:

ping raspberrypi.local

(若显示不是ip,则ping -4 raspberrypi.local

2.换源:

sudo nano /etc/apt/sources.list

注释掉文本内容粘贴下面代码         

deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib

按 ctrl-o 保存,按 ctrl-x 关闭。

sudo nano /etc/apt/sources.list.d/raspi.list

内容替换为

deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui

3.安装tensorflow

查看环境是否已经安装

python3 --version

pip3 --version

如果没有安装了python3和pip3,则sudo apt update sudo apt install python3-dev python3-pip

安装对应版本为python3.7 + tensorflow

下载tensorflow到电脑上:https://www.piwheels.org/simple/tensorflow/或者https://github.com/lhelontra/tensorflow-on-arm/releases,此处下载为2.0

如果是pi1或者pizero(包括zerow),选择结尾是armv6l的;如果是树莓派2/3/4就选择结尾是armv7l.whl的。

1.首先安装tensorflow需要的一些依赖和工具:

sudo apt-get update

# For Python 2.X

sudo apt-get install python-pip python-dev

# For Python 3.X

sudo apt-get install python3-pip python3-dev

2.解决numpy的一个依赖

sudo apt install libatlas-base-dev

如果在安装过程中如果被打断,可以看一下具体是缺少了哪个包,然后手动安装上。

若之前安装过其他tensorflow版本,需要先卸载

sudo pip3 uninstall tensorflow

3.进入tensorflow安装包路径下,进行安装

#后面install的文件名按照自己下载的文件名来更改

# For Python 2.X

sudo pip install tensorflow-1.13.1-cp27-none-linux_armv7l.whl

# For Python 3.X

sudo pip3 install tensorflow-1.13.1-cp37-none-linux_armv7l.whl

4.测试tensorflow

#进入对应的python

python3

在python3界面中输入以下代码

tensorflow<2.0

import tensorflow as tf

hello = tf.constant('Hello!')

sess = tf.Session()

print(sess.run(hello))

tensorflow>2.0

import tensorflow as tf

#查看tensorflow版本

print(tf.__version__)

4.安装opencv

1.在树莓派的终端界面通过wegt命令下载

cd /home/pi/Downloads

wget https://github.com/Itseez/opencv/archive/3.4.0.zip

wget https://github.com/Itseez/opencv_contrib/archive/3.4.0.zip

2.安装numpy,若已安装则忽略:sudo pip3 install numpy

3.在树莓派设置中把根目录扩大到整个SD卡

sudo raspi-config

Advanced Options

选择Expand Filesystem,将根目录扩展到这个SD卡,充分利用SD卡的存储空间。如果不进行这一步,后续命令会出现卡死。退出设置界面,重启树莓派。

sudo reboot

4.安装OpenCV所需的库

依次在终端输入以下命令进行安装

sudo apt-get install build-essential git cmake pkg-config -y

sudo apt-get install libjpeg8-dev -y

sudo apt-get install libtiff5-dev -y

sudo apt-get install libjasper-dev -y

sudo apt-get install libpng12-dev -y

sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev -y

sudo apt-get install libgtk2.0-dev -y

sudo apt-get install libatlas-base-dev gfortran -y

5.解压opencv压缩包

cd /home/pi/Downloads

unzip opencv-3.4.0.zip

unzip opencv_contrib-3.4.0.zip

6.配置编译文件

cd /home/pi/Downloads/opencv-3.4.0

mkdir build

cd build

设置CMAKE参数,注意,下面这是一行命令(包括最后那俩点儿),需要耐心等待十五分钟左右:

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D OPENCV_EXTRA_MODULES_PATH=/home/pi/Downloads/opencv_contrib-3.4.0/modules -D BUILD_EXAMPLES=ON -D WITH_LIBV4L=ON PYTHON3_EXECUTABLE=/usr/bin/python3.5 PYTHON_INCLUDE_DIR=/usr/include/python3.5 PYTHON_LIBRARY=/usr/lib/arm-linux-gnueabihf/libpython3.5m.so PYTHON3_NUMPY_INCLUDE_DIRS=/home/pi/.local/lib/python3.5/site-packages/numpy/core/include ..

注意:标红位置更改;此处为一行代码,不要分行

7.编译

cd /home/pi/Downloads/opencv-3.4.0/build

make && sudo make install

此时opencv3.4.0就安装好了

接下来就是测试了

8.测试

python3

import cv2

cv2.__version__

注:

1.在编译到75%左右时可能会出现openc_contrib 提示缺少boostdesc_bgm.i文件而出错

这个是由于官方所给的那两个包不全,(没有此错误的可以忽略)

解决方法如下:

可以在百度云盘里下载然后将所有带i结尾的文件全部都拷贝到 opencv_contrib/modules/xfeatures2d/src/ 路径下即可

树莓派安装opencv时丢失的文件:

链接:https://pan.baidu.com/s/1xi6_5NuTFiP4SD649FgIJw

提取码:mbsj

然后继续上面的编译操作即可

2.在编译到94%左右时可能会出现fatal error: opencv2/xfeatures2d/cuda.hpp: 没有那个文件或目录的错误标志 (没有此错误的可以忽略)

这个是由于之前在树莓派的python2环境下安装了opencv所致

解决方法如下:

将/home/pi/Downloads/opencv_contrib-3.4.0/modules/xfeatures2d/include/opencv2目录下的xfeatures2d文件夹和xfeatures2d.hpp文件复制粘贴到

/home/pi/Downloads/opencv-3.4.0/modules/stitching/include/opencv2目录下即可解决,

3.对于树莓派4B,在编译到99%左右时可能会出现

make[2]: *** [modules/python3/CMakeFiles/opencv_python3.dir/build.make:63:modules/python3/CMakeFiles/opencv_python3.dir/__/src2/cv2.cpp.o] 错误 1

make[1]: *** [CMakeFiles/Makefile2:21769:modules/python3/CMakeFiles/opencv_python3.dir/all] 错误 2

make: *** [Makefile:163:all] 错误 2

的错误标志(没有此错误的可以忽略)

这个可能是由于系统版本不同和树莓派版本的不兼容所致

解决方法如下:

首先找到/home/pi/Downloads/opencv-3.4.0/modules/python/src2 中的cv2.cpp文件,

然后在第885行把char* 改成 const char* 即可解决,最后继续上面的编译操作即可。

注:图片引用了其他博客作者。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

树莓派初始使用相关问题及解决方法 的相关文章

  • hg 存档到远程目录

    有没有办法通过 SSH 将 Mercurial 存储库存档到远程目录 例如 如果可以执行以下操作 那就太好了 hg archive ssh email protected cdn cgi l email protection path to
  • 使用 SSH.NET 在命令输出期间发送输入

    With PuTTY I connect to an SSH server and then I execute a command that constantly output logs multiple lines per second
  • 通过 SSH 隧道连接到 gitosis 服务器

    我的 MacBook 上有一个 SSH 隧道设置 就像这样 ssh o ServerAliveInterval 3 N L 22222 gitosis server 22 email protected cdn cgi l email pr
  • 没有公钥,GitLab 无法克隆公共存储库

    使用亚搏体育appGitLab 6 8 2 我可以以匿名方式克隆公共存储库吗 我的用户命名空间中的存储库标记为public 如果没有在 GitLab 中保存公钥 我就无法克隆它 例如 gt ssh T email protected cdn
  • 如何修复 CI/CD 上的 SSH Webpack 构建超时 (Gitlab)

    我已经创建了与 Gitlab 的 CI CD 集成 并且在运行 CI CD 时一直拖延 webpack 和资产的最终编译 这是针对 Linux 16 04 t2 small AWS 实例的 我很好奇这是否是内存 处理器问题 尽管如果我通过
  • 尝试通过 SSH 克隆时“似乎不是 git 存储库”

    我有一台运行 Windows 10 的计算机 我想在其上托管 git 存储库 OpenSSH 正在运行 我可以通过 Powershell 通过 SSH 连接到机器 因此它是可连接的 我在该机器上名为 Test 的文件夹中创建了一个新的 gi
  • 在 bash 中使用 ssh 内的 Expect 执行 sudo

    我想创建一个脚本来自动在多个 Linux 主机上进行安装 我使用 ssh 密钥登录到主机 在登录中我想做一个 sudo 我正在尝试使用 Expect 我在站上有它 但是我的服务器上没有运行脚本 我该怎么做 这是我的尝试 但没有运气 bin
  • 我可以在远程服务器上运行位于本地计算机上的 bash 脚本吗?

    我有本地脚本 我想在远程服务器上运行 我已经设置了 ssh 密钥对以启用无需密码的登录 我当前的方法是将脚本 rsync 到服务器 然后运行它 ssh user remoteserver rsync localserver script s
  • 如何在 ssh 命令中使用长输入参数正确转义 qsub 命令?

    我有一个复杂的 qsub 命令可以远程运行 PROJECT NAME TEXT TEST PROJECT PACK ORGANIZATION source organization MY ORGANIZATION CONTACT NAME
  • 如何为函数启用 bash 自动完成功能?

    我已经阅读了关于 bash 自动完成的教程bash补全简介 http www debian administration org article 316 An introduction to bash completion part 1我正
  • 如何将 Mercurial 存储库克隆到已存在的目录中?

    我有一个客户的 Django 项目 正在本地开发 使用 Mercurial 进行版本控制 我将本地存储库推送到我的个人远程服务器 我保存所有项目的地方 然后当我部署它时 在任何 Web 服务器上 我从我的个人服务器克隆该存储库 这在大多数服
  • 使用Python mysql.connector远程连接MySQL

    以下代码 在同一 LAN 内与 mysql 服务器不同的机器上运行 使用 Python3 和 mysql connector 本地连接到 MySQL 数据库 import mysql connector cnx mysql connecto
  • 原始 ssh 连接(低级)

    作为一个小型 大型 业余爱好项目 我开始用 C 制作一个 非常原始的 ssh 2 0 客户端 这是为了探索和更好地理解 DH 并帮助加深我对加密的熟悉程度 根据 RFC 4253 我已经开始这样的初始连接 省略不相关的变量预设等 Rando
  • ssh 的 url 方案:在远程主机上调用命令

    是否有通过 ssh 调用远程主机上的命令的 url 方案 在我的用例中 我想称之为 psql c select from my table order by id 似乎有一个关于连接参数的 RFC 示例 来自https tools ietf
  • 流浪家园慢

    我有一个基于 Laravel Homestead 的 vagrant 服务器 用于在本地测试我的 Laravel 站点 大部分情况下它运行得很好 然而 最近 我遇到了问题 它会停止几分钟 典型 到几个小时 罕见 这种情况每 15 分钟左右就
  • 通过将密码与命令一起传递,使用 powerShell 脚本进行 ssh

    如果我输入 我可以从 PowerShell ssh 到服务器 ssh 用户名 主机 这会提示输入密码 我输入有效的密码 但我试图编写一个脚本 通过 ssh 进入服务器执行一些脚本并返回 所以我必须传递密码和命令我该怎么做 关于 shell
  • 伪分布式模式下的 Hadoop。连接被拒绝

    P S 请不要将此标记为重复 Hi 我一直在尝试以伪分布式模式设置和运行 Hadoop 当我运行 start all sh 脚本时 我得到以下输出 starting namenode logging to home raveesh Hado
  • 无法使用 git 配置文件进行 ssh

    我知道它被问了很多次 但我无法得到我的问题的答案 我正在尝试使用配置文件 ssh 到系统 配置文件是 Host qa HostName 10 218 70 345 User user IdentityFile C Users bean ss
  • 使用 paramiko 运行 Sudo 命令

    我正在尝试执行sudo使用 python paramiko 在远程计算机上运行命令 我尝试了这段代码 import paramiko ssh paramiko SSHClient ssh set missing host key polic
  • SSH 无法对 [email protected] 进行身份验证

    最近 我在 Github com 上注册了一个免费计划 我按照他们的说明生成 ssh 密钥以添加到我的帐户 然而 当我尝试ssh v email protected cdn cgi l email protection 我收到此错误 deb

随机推荐

  • java调用kettle例子_数据仓库开发——Kettle使用示例

    Kettle是一个开园ETL工具 做数据仓库用Spoon 工具 下载Spoon 解压即可用 1 认识常用组件 表输入 插入 更新 数据同步 文本文件输出 更新 自动文档输出 表输出 列转行 增加常量 增加序列 排序记录 行转列 过滤记录 数
  • mkdocs

    mkdocs简单使用 官网 一 安装 查看 python 版本 python version Python 2 7 2 查看 pip 版本 pip version pip 1 5 2 更新 pip pip install upgrade p
  • ubuntu 安装rtorrent 下载

    apt get install rtorrent 在根目录下 建立 rtorrent rc 最小允许peer数 min peers 3 最大允许peer数 max peers 500 最大同时上传用户数 max uploads 10 最大下
  • 数据结构7/23—链表实现简单的学生信息管理系统

    目录 定义结构体存储学生信息 姓名 成绩 功能实现 各种功能函数如下 菜单函数 创建链表函数 判断是否为空的判空函数 插入函数 头插方式实现 遍历链表函数 排序输出 升序 输出最高分学生信息 以名字查找该学生的前驱节点 通过名字删除学生信息
  • Flutter Cocoon 已达到 SLSA 2 级标准的要求

    文 Jesse Seales Dart 和 Flutter 安全工作组工程师 今年年初 我们发布了 Flutter 2022 产品路线图 其中 基础设施建设 这部分提到 2022 年 Flutter 团队将增加对供应链的安全的投入 目的是达
  • PHP启动warning:PHP Startup: Unable to load dynamic library 'curl.so'

    高通ar9531上面 openwrt1806这个版本 通过opkg安装了官方的php及其扩展 但新的板子php启动的时候报了warning 没有太仔细看 但是后面运行cgi程序时 发现了问题 回头看warning日志 PHP Warning
  • Android Socket 简单介绍

    文章目录 前言 一 Socket是什么 百度百科的解释 我自己的理解 二 简单示例 1 服务端 2 客户端 3 布局 4 实现 参考 总结 前言 最近需求需要使用Socket进行通讯 我在工作后的安卓开发中没有接触过 所以有了这篇文章 写的
  • 《每日一题》NO.41:FPGA内部资源有哪些?

    芯司机 每日一题 会每天更新一道IC面试笔试题 其中有些题目已经被很多企业参考采用了哦 聪明的你快来挑战一下吧 今天是第41题 FPGA设计工程师也是一个比较热门的职位 FPGA中都包括哪些资源呢 今天的题就是这样啦 开始解题吧 公布答案
  • 内窥镜胶囊(胶囊内镜)硬件方案

    内窥镜胶囊 胶囊内镜 胶囊内窥镜 硬件方案 前言 说明 该方案为作者2018年上半年完成的第一版 后来搁置了一段时间 才重启这个项目 目前 2020 07 第二版已经快要完成 联系v 1 7 6 3 3 3 5 0 8 7 0 先给一下第一
  • Visual Studio Code结合Git与GitHub的完整步骤

    一 Visual Studio Code安装 官网下载地址 https code visualstudio com Visual Studio Code是一个精简版的迷你Visual Studio 并且可以跨平台 Windows Mac L
  • centos7.6安装mysql

    卸载mariadb 解决安装mysql与mariadb冲突问题 卸载干净mariadb 何妨徐行的博客 CSDN博客 安装rpm包前可能需要的命令 yum install openssl devel用于管理rpm包的工具 yum insta
  • 雪崩 计算机组成原理,计算机组成原理复习资料(学习课件整理版可自学使用).doc...

    一 本课程在计算机系统中的位置 一 课程目标 1 结构与原理掌握 建立计算机系统的整机概念 掌握计算机各部件的组成原理与技术 了解计算机系统组成与结构的新技术 2 分析与计算能力 掌握对组成与结构进行性能分析的方法 通过量化计算 加深对组成
  • 李沐动手学深度学习V2-目标检测SSD

    一 目标检测SSD 单发多框检测 1 介绍 SSD模型主要由基础网络组成 其后是几个多尺度特征块 基本网络用于从输入图像中提取特征 因此它可以使用深度卷积神经网络 单发多框检测论文中选用了在分类层之前截断的VGG 现在也常用ResNet替代
  • css中hover变大效果

    html代码 div img src img 11 jpg alt div css代码
  • 轻试Nginx的负载均衡

    看到网上的负载均衡 一直都没有怎么看过 也不理解 今天从网上学着点在windows下用Nginx来试试 我的os是windows xp 用的web服务器时IIS5 1 用了两台同在一个局域网的电脑 分别装有IIS 作为web服务器 地址为1
  • Linux如何查找杀死僵死进程

    最近工作过程中 发现好几台服务器出现僵死进程 如图 用下面的命令找出僵死进程 ps A o stat ppid pid cmd grep e Zz 命令注解 A 参数列出所有进程 o 自定义输出字段 我们设定显示字段为 stat 状态 pp
  • 数组随机排序的两种实现方法

    1 利用数组中的sort 方法 arr arr sort gt Math random 0 5 2 Fisher Yates Shuffle 复杂度为O n 从后向前遍历 不断将当前元素与随机位置的元素 除去已遍历的部分 进行交换 func
  • 海尔对话 Unity:作为数字转型的高阶形态,数字孪生发展前景不可逆

    来源 数字化企业 作为信息化发展到一定程度的必然结果 数字孪生正成为人类解构 描述和认识真实世界和虚拟世界的新型工具 从发展态势来看 数字孪生不仅是全新信息技术发展的新焦点 也是各国实现数字化转型的新抓手 还是众多工业企业业务布局的新方向
  • 第4章 微服务框架主体搭建

    mini商城第4章 微服务框架主体搭建 一 课题 框架搭建 二 回顾 1 整体业务功能分析 2 根据业务需求设计表结构及字段 三 目标 1 版本控制器的搭建使用 2 能独立自主的搭建微服务框架 3 学会考虑一些公共的工具组件 4 网关模块的
  • 树莓派初始使用相关问题及解决方法

    1 SSH连接 网线连接电脑 在无线图标上右键 打开 网络和internet设置 更改适配器设置 在WLAN上面右键 选择属性 共享 勾上 在cmd里面 可以输入 ping raspberrypi local 若显示不是ip 则ping 4