前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >在树莓派3B+中下载opencv(遇到的各种问题及解决)

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

作者头像
用户10922923
发布2024-05-29 12:03:36
900
发布2024-05-29 12:03:36
举报
文章被收录于专栏:兵马俑的CSDN兵马俑的CSDN

目录

前言

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

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

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

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

代码语言:javascript
复制
sudo passwd pi  

更改root密码

代码语言:javascript
复制
sudo passwd root  

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

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

查看自己的版本是什么

代码语言:javascript
复制
lsb_release -a

二、换源

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

点击(跳转清华源)

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

代码语言:javascript
复制
sudo nano /etc/apt/sources.list

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

代码语言:javascript
复制
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

然后换另一个

代码语言:javascript
复制
sudo nano /etc/apt/sources.list.d/raspi.list

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

代码语言:javascript
复制
deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ bullseye main

完了后更新一下

代码语言:javascript
复制
sudo apt-get update

三、安装opencv

一键安装opencv

代码语言:javascript
复制
sudo apt-get install python3-opencv

四、测试

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

代码语言:javascript
复制
import cv2
cv2.__version__ 

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

代码语言:javascript
复制
sudo apt-get install libblas-dev liblapack-dev
sudo apt-get install libatlas-base-dev

五、问题汇总

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

代码语言:javascript
复制
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:

代码语言:javascript
复制
 sudo nano /etc/resolv.conf

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

自己的WiFi什么的基本都是

代码语言:javascript
复制
nameserver 8.8.8.8

解决2:

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

代码语言:javascript
复制
​​​​​​​sudo apt update

修改回HTTPS方式;运行

代码语言:javascript
复制
sudo apt update && sudo upgrde -y

解决3:

代码语言:javascript
复制
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博客

运行

代码语言:javascript
复制
sudo service dhcpcd restart
sudo systemctl daemon-reload
sudo /etc/init.d/networking restart

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

代码语言:javascript
复制
sudo apt-get update
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-05-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
    • 1、删除原版本下新版本
      • 2、python虚拟环境
        • 3、python版本共存换链接——给版本降低
          • 4、烧录之前版本的文件(在清华源中可以找,不用官网的烧录文件就行;
            • 比如:(balenaEtcher) 重新烧录有问题可以看:
              • 树莓派3B+入门(无外设)-CSDN博客
                • 可参考这篇文章;找到自己想烧录的 使用国内镜像站下载树莓派 Raspberry Pi OS 操作系统_raspberry pi os with desktop and recommended softw-CSDN博客
                • 一、选择版本烧录
                • 二、换源
                • 三、安装opencv
                • 四、测试
                • 五、问题汇总
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档