在树莓派3B+中下载opencv(遇到的各种问题及解决)

目录

前言

1、删除原版本下新版本

2、python虚拟环境

3、python版本共存换链接——给版本降低

4、烧录之前版本的文件(在清华源中可以找,不用官网的烧录文件就行;

比如:(balenaEtcher)重新烧录有问题可以看:

树莓派3B+入门(无外设)-CSDN博客

可参考这篇文章;找到自己想烧录的使用国内镜像站下载树莓派 Raspberry Pi OS 操作系统_raspberry pi os with desktop and recommended softw-CSDN博客

一、选择版本烧录

二、换源

三、安装opencv

 四、测试

 五、问题汇总

前言


下载opencv是根据python的对应的版本来确定,我烧录完的python是3.11的(太新了对现在来说)然后就找对应的opencv版本,我想用以前原仓库的代码,发现的python3.9的,于是在网上找方法发现有;

1、删除原版本下新版本


  直接删掉原本系统的python3.11,然后直接重新下载python3.9,我试的时候,重启了一下,然后打开的时候;连终端都调用不起来了;重置SD卡了;(建议一口气完成安装)

2、python虚拟环境

  下载了,虚拟环境conda来管理,然后因为在虚拟环境,扩展包下载不了(pip命令报错)用不了pip,就换了好几个虚拟环境都不行,最后在系统自带的3.11环境里下载了(结果在opencv-换源的地方报错了)然后opencv那个时候不知道——高版本python可以下载低版本稳定的opencv版本;
树莓派3B+中下载miniconda3-CSDN博客

树莓派3B+中下载miniconda3(图文全过程)-CSDN博客

3、python版本共存换链接——给版本降低


在网上看到了3.9版本降低到3.7的,然后我就把3.11降低到了3.9,结果下载就报错(和方法2一样);还是换源不行;

4、烧录之前版本的文件(在清华源中可以找,不用官网的烧录文件就行;

比如:(balenaEtcher
重新烧录有问题可以看:

树莓派3B+入门(无外设)-CSDN博客

可参考这篇文章;找到自己想烧录的
使用国内镜像站下载树莓派 Raspberry Pi OS 操作系统_raspberry pi os with desktop and recommended softw-CSDN博客

一、选择版本烧录

如果要用旧版本11 bullseye,自带python为3.9.2的镜像进行烧录安装。

2022-9-22-raspios-bullseye-armhf.img.xz

  • raspios_full_armhf:完整版 Raspberry Pi OS 系统(链接随便选)
    • TUNA 链接
    • SJTUG 链接

下载完成到本地烧录时删掉后面点缀.xz(没显示的后缀的在文件夹里面开一下)

如果给新树莓派配环境时忘记密码了可以用外设,或者线插自己的电脑上先修改密码

也可以拔SD卡修改里面的文件,进入root模式
更改pi用户

sudo passwd pi  

更改root密码

sudo passwd root  


烧录完后,终于恍然大悟是版本问题不对应;

在更换软件源时要考虑我们安装的树莓派系统版本,Raspbian有多个版本, wheezy, jessie,stretch,buster,只有更换的源与我们安装的系统匹配才可以。

查看自己的版本是什么

lsb_release -a

二、换源

找到自己的版本后就可以换源了(清华源)

点击(跳转清华源)

找到复制后再树莓派终端打开两个文件进行编写添加(要把原来的文件注释掉) 

sudo nano /etc/apt/sources.list

#把原来的注释掉(ctrl+s ; ctrl+x)保存;退出

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

然后换另一个 

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

#把原来的注释掉(ctrl+s ; ctrl+x)保存;退出

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

 完了后更新一下

sudo apt-get update

三、安装opencv

一键安装opencv

sudo apt-get install python3-opencv

 四、测试

安装完成后,在终端进入python后测试一下是否成功

import cv2
cv2.__version__ 

正常是会输出版本的(如果numpy库的问题是少依赖——安装即可)

sudo apt-get install libblas-dev liblapack-dev
sudo apt-get install libatlas-base-dev

 五、问题汇总

换源升级时(遇到如下问题)

Err:1 https://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian bullseye InRelease                Temporary failure resolving 'mirrors.tuna.tsinghua.edu.cn' 
Err:2 http://mirrors.tuna.tsinghua.edu.cn/raspberrypi bullseye InRelease                       Temporary failure resolving 'mirrors.tuna.tsinghua.edu.cn' 
Reading package lists... Done                                                                W: Failed to fetch https://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/dists/bullseye/InRelease  
Temporary failure resolving 'mirrors.tuna.tsinghua.edu.cn' 
W: Failed to fetch 
http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/dists/bullseye/InRelease  
Temporary failure resolving 'mirrors.tuna.tsinghua.edu.cn' 
W: Some index files failed to download. 
They have been ignored, or old ones used instead.+

解决1:

 sudo nano /etc/resolv.conf

 resolv.conf 文件主要的配置内容就是网络的DNS了

自己的WiFi什么的基本都是

nameserver 8.8.8.8

解决2:

http与https 协议,换着用用
改为http,运行

​​​​​​​sudo apt update

修改回HTTPS方式;运行

sudo apt update && sudo upgrde -y

 解决3:

sudo nano /etc/dhcpcd.conf

修改文件中 domain_name_servers 的内容,在那一行最后面加上 8.8.8.8 8.8.4.4
name_servers+地址+8.8.8.8 8.8.4.4

注:(对这个疑惑的可以看Linux中/etc/resolv.conf文件简析_linux虚拟机namesever是什么-CSDN博客

运行

sudo service dhcpcd restart
sudo systemctl daemon-reload
sudo /etc/init.d/networking restart

Restarting networking (via systemctl): networking.service.就完事,再看看!!!!

sudo apt-get update

如果下载过程还有问题可以看
树莓派4B 安装opencv完整教程基于python3(各种错误解决)_树莓派4b 安装opencv完整教程基于py-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/17959.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android 编译 C 文件报错 fatal error: ‘jni.h‘ file not found

场景&#xff1a;添加 cpp 文件编译出 so &#xff0c;给 app 使用。 编译报错&#xff0c; packages/apps/XxxApp/jni/native.cpp:22:10: fatal error: jni.h file not found #include <jni.h>^~~~~~~ 1 error generated.缺少声明&#xff0c;类似于 Java 里缺少了 im…

上交提出TrustGAIN,提出6G网络中可信AIGC新模式!

月16日至18日&#xff0c;2024全球6G技术大会在南京召开。会上&#xff0c;全球移动通信标准制定组织3GPP&#xff08;第三代合作伙伴计划&#xff09;的3位联席主席分享了3GPP6G标准时间表&#xff1a; 2024年9月&#xff0c;启动6G业务需求研究&#xff1b; 2025年6月&…

PHP开发入门

PHP官网&#xff1a;PHP: Hypertext Preprocessor apache官网&#xff1a;https://httpd.apache.org/ 一、搭建PHP环境 下载apache 进入官网点击download 选择下载windows版本文件 点击进入下载界面 点击下载64位版本文件 下载后解压文件 解压文件后进入 D:\httpd-2.4.59-24…

一点连接千家银行,YonSuite让“企业付款”更便利

在快速变化的商业环境中&#xff0c;企业的运营效率直接决定了其市场竞争力。特别是对于财务团队来说&#xff0c;每一次付款的流畅与便捷&#xff0c;都是企业高效运作的关键。今天&#xff0c;我们为您带来一个先进性的解决方案——YonSuite&#xff0c;它以其独特的“一点连…

医学中脑机接口技术的未来

医学中脑机接口技术的未来 李升伟 编译 对非侵入性脑机接口&#xff08;而不是植入物&#xff09;日益增长的兴趣可能会提高患者的易使用性&#xff0c;但分辨率需要提高。 图片来源&#xff1a;Denis Pobytov / DigitalVision Vectors / Getty 全球范围内正在展开一场争夺利用…

C++ fcntl 的作用和用法

C fcntl 的作用和用法 fcntl 的作用代码示例代码解释运行结果 fcntl 的作用 fcntl 是一个在 C 和 C 编程中用于操作文件描述符的函数。它提供了多种功能&#xff0c;包括获取和设置文件描述符标志、获取和设置文件锁等。fcntl 函数的原型如下&#xff1a; #include <fcntl…

使用 RT 矩阵进行 3D 点云变换详解(基于 PCL 和 Eigen 库)

在 3D 点云处理中&#xff0c;RT 矩阵是一个常用的工具&#xff0c;用于对点云进行旋转和平移操作。本文将详细介绍 RT 矩阵的概念&#xff0c;并通过一个示例程序演示如何基于 PCL 和 Eigen 库将一帧点云进行矩阵变换再输出。 本教程的示例代码和点云数据可在 GitHub 下载。 什…

多电压档hold扫尾

MMMC下STA收敛更为困难&#xff0c;setup通过DMSA可以很好的得到收敛&#xff1b;但是常规的时序修复工具很难通过工具得到最终clean的时序状态&#xff0c;本文介绍一种多模多角下hold的收敛方法。 该方法主要通过遍历hold路径上多电压setup的余量&#xff0c;支持从前往后和从…

【STM32嵌入式系统设计与开发---传感器拓展】——1_2_蓝牙主从模块_AT配置(HC-05)

一、主机蓝牙设置 # 1、重置模块 ATORGL # 2、设置名字&#xff0c;自己随便设置 ATNAMEMaster # 3、设置连接密码&#xff0c;要和从机一样&#xff0c;密码好像可以不加双引号 ATPSWD"1234" # 4、设置为主机 ROLE 1 为主机 ROLE 0为从机 ATROLE1 # 5、设置波特…

【OpenGL手册14】实例化

目录 一、说明 二、实例化 三、实例化数组 四、小行星带 五、完整代码 六、结论 一、说明 实例化渲染&#xff0c;是用少数数据做模板&#xff0c;实现海量物体渲染的手段方法。用实例化渲染&#xff0c;需要对每个实例产生一定描述数据。如何实现&#xff1f;请看本文下…

用Go实现交替打印数字和字母

引言 在编程的世界里&#xff0c;Go语言以其简洁、高效、并发的特性而广受欢迎。今天&#xff0c;我们将通过一个有趣的小例子——交替打印数字和字母&#xff0c;来一窥Go语言并发编程的魅力。 问题背景 想象一下&#xff0c;我们需要打印一个序列&#xff0c;其中数字和字…

docker-compose 映射端口失败! docker端口映射失败 ,docker映射只能使用老端口,映射无法使用

1. 现象 使用docker-compose 启动项目&#xff0c;发现映射端口出现问题&#xff0c;不能映射端口&#xff01; 如图&#xff1a; 使用原来端口是可以使用的 2. 问题原因&#xff1a; 使用了docker-mode 为host模式&#xff0c;所以不能换端口&#xff0c;只能写为"8086:…

SpringBoot——基于Spring Task实现定时任务

目录 定时任务 项目总结 新建一个SpringBoot项目 pom.xml无需引入依赖 SpringTaskDemo SpringbootSpringtaskApplication启动类 定时任务 在日常的项目开发中&#xff0c;往往会涉及一些需要做到定时执行的代码&#xff0c;例如自动将超过24小时的未付款的订单改为取消状…

【调试笔记-20240522-Windows-WSL 修改已安装发行版名称】

调试笔记-系列文章目录 调试笔记-20240522-Windows-WSL 修改已安装发行版名称 文章目录 调试笔记-系列文章目录调试笔记-20240522-Windows-WSL 修改已安装发行版名称 前言一、调试环境操作系统&#xff1a;Windows 10 专业版调试环境调试目标 二、调试步骤方法一&#xff1a;修…

数字化校园的特征

"数字化校园"是校园信息化进入高级阶段的表现形式&#xff0c;信息技术与教育教育的交融应该更深化。因而&#xff0c;数字化校园应该具以下特征&#xff1a; 1.互联网络高速发展 网络是信息时代的根基&#xff0c;没有网络就无法完成教育信息化的绝大部分作业。数字…

Go Redis 实现邮件群发

一、安装 go get github.com/go-redis/redis/v8二、邮箱服务配置,以QQ邮箱为例 三、示例代码 package mainimport ("context""fmt"redis "github.com/go-redis/redis/v8""gopkg.in/gomail.v2""gopkg.in/ini.v1"&quo…

总结 HTTP 协议的基本格式

一、HTTP 是什么 HTTP ( 全称为 " 超文本传输协议 ") 是一种应用非常广泛的 应用层协议 . HTTP 诞生与 1991 年 . 目前已经发展为最主流使用的一种应用层协议 . HTTP 协议目前有三个大版本: HTTP / 1 和 HTTP / 2 都是基于TCP 传输控制协议传输数据。最新版本的…

Java基础语法---Stringjoiner

Stringjoiner 使用需要加入 import java.util.StringJoiner 构造方法: StringJoiner(CharSequence delimiter) 创建一个 StringJoiner 实例&#xff0c;使用指定的分隔符&#xff0c;前缀和后缀默认为空字符串。 StringJoiner(CharSequence delimiter, CharSequence prefix, C…

60. UE5 RPG 使用场景查询系统(EQS,Environment Query System)实现远程敌人寻找攻击位置

UE的Environment Query System&#xff08;EQS&#xff09;是环境查询系统&#xff0c;它是UE4和UE5中用于AI决策制定过程中的数据采集和处理的一个强大工具。EQS可以收集场景中相关的数据&#xff0c;利用生成器&#xff08;Generator&#xff09;针对用户的测试&#xff08;T…

跳台阶扩展问题

题目链接 f(1) 1f(2) 1 1 2f(3) 1 2 1 4f(4) 1 2 4 1 8 所以 f(n) 2 n − 1 ^{n-1} n−1 import java.util.Scanner;public class Solution {public int jumpFloorII(int target) {return 1 << (target - 1);} }