树莓派与matlab联动并安装opencv

matlab与树莓派 matlabMATLAB Support Package for Raspberry Pi Hardware - File Exchange - MATLAB CentralsimulinkSimulink Support Package for Raspberry Pi Hardware - File Exchange - MATLAB Central将下载的文件放在matlab文件夹下,在matlab中打开双击,下载(最好在管理员身份下)。英语要好(备好翻译器),可以直接设置,或者在管理附加功能中,图后 阅读详情

背景

我有一块闲置的树莓派,想用它建立智能驾驶平台,硬件采用平跑车搭载树莓派做主控,使用树莓派控制arduino输出pwm控制电调调速,由于没有编码器采用开环控制。matlab对树莓派具有硬件支持,选择在matlab上训练模型部署到树莓派运行的方式。

树莓派镜像

首先需要安装matlab的树莓派硬件支持包,配置部分按照实际板子的型号选择,填入必要的信息即可。我采用的是3b+型号,直接在github上下载需要注意对应版本,不是越新越好的。下载好之后对镜像进行校验,完成后设置连接网络的方式,我选择无线连接,设置好ssid和密码就可以一路下一步write写入tf卡了。过程简单不予赘述。

修改软件源

众所周知,树莓派默认软件源在国外,访问速度不高,建议修改软件源为国内的镜像。

方法

如果一切正常,在matlab中使用

rpi=raspi()

可以得到一个树莓派对象,可以看到树莓派的ip地址。本例中为192.168.2.169。
matlab中查看ip
使用putty或vnc viewer访问树莓派,默认用户名为pi,密码是raspberry,输入密码时不显示字符,正常输入后回车就可以登录到树莓派的界面了。
建议首次登陆后修改默认密码:

sudo passwd pi

输入两次新密码即可。
注意:修改密码后原来的连接可能会断开,重新使用新密码登录即可。
打开命令行,输入

sudo nano /etc/apt/sources.list

这里nano可以换成其他你喜欢的文本编辑器,编辑源路径,因为离杭州更近我选择阿里云的源,选择其他源也可以。注意:只修改http://到/raspbian之间的地址。

deb http://mirrors.aliyun.com/raspbian/raspbian/ buster main contrib non-free rpi
deb-src http://mirrors.aliyun.com/raspbian/raspbian/ buster main contrib non-free rpi

在这里插入图片描述
保存文件,修改系统源:

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

这里我选择清华源:

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

接下来修改pip源:

pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
pip config set global.extra-index-url https://mirrors.aliyun.com/pypi/simple/

换好之后使用

pip config list

查看应该看到上边两个地址已经配置成功。
使用

sudo apt-get update
sudo apt-get upgrade

更新软件,需要安装新的直接y就可以。

更改默认python版本为python3

sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 100
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 150

这里100和150为优先级,越大越靠前。

安装ftp服务器

为了传文件方便,我在树莓派上安装vsftpd,参考其他文章的配置工作配置好就行。

sudo apt-get install vsftpd

编辑配置略。重新启动vsftpd更新配置之后在资源管理器上输入:ftp:\192.168.2.169,就可以访问树莓派的文件系统了。

sudo service vsftpd restart

安装opencv

numpy默认版本有可能版本与opencv的不匹配则需要安装numpy并更新,没有pip的要安装pip:

sudo apt-get install python-numpy python-scipy python-matplotlib python-pandas
sudo apt-get install python3-pip -y
pip install -U numpy

我在命令中包含了其他科学计算包不需要的可以不装。
在这里选择要安装的版本,在命令行输入对应的命令。
在这里插入图片描述
建议使用

sudo pip3 install opencv-python==4.5.5.64

查看好下载的文件名称是opencv_python-4.5.5.64-cp37-cp37m-linux_armv7l.whl
,crtl+c停止进程,在电脑上下载好对应的文件,传输到树莓派。。

在这里插入图片描述
进入下载好的文件所在的文件夹
在python2上安装opencv:

sudo apt-get install python-opencv

检查确认效果

在命令行中使用python进入,import cv2,如果不报错说明安装成功。可以愉快的使用matlab连接树莓派玩耍了!

补充:开机自动上报ip

由于采用DHCP方式获取ip,地址是不固定的,我采用python获取本机ip通过微信(server酱)和邮箱分别发送获取ip。源代码如下,<KEY>部分表示server酱上获取的token。<mail>表示邮箱地址,我选择163邮箱自己发给自己<Passwd>表示邮箱授权码。

#!\usr\bin\env python
# coding=utf-8
import time
import socket
import requests
import smtplib
from email.mime.text import MIMEText



def getLocalIP():
    s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    s.connect(("1.1.1.1", 80))
    ipaddr = s.getsockname()[0]
    s.close()
    return ipaddr


def post(ip):
    url = "https://sctapi.ftqq.com/<KEY>.send"

    data = "title=树莓派ip&desp=%s" % ip
    results = requests.get(url, data)


def send_email(content):
    mail_host = "smtp.163.com"
    mail_user = "<mail>@163.com"
    mail_pass = "<Passwd>"
    
    # *发件人
    sender = '<mail>@163.com'
    # *收件人
    receivers = ['<mail>@163.com']
    message = MIMEText('Thank You!', 'plain', 'utf-8')
    message['Subject'] = content
    message['From'] = sender
    message['To'] = receivers[0]
    try:
        s = smtplib.SMTP()
        s.connect(mail_host, 25)
        s.login(mail_user, mail_pass)
        s.sendmail(sender, receivers, message.as_string())
        s.quit()
    except smtplib.SMTPException as e:
        print('error', e)


if __name__ == "__main__":
    time.sleep(20)
    while True:
        ip = getLocalIP()
        print(ip)
        if ip == False:
            post("正在获取网络地址")
        else:
            post(ip)
            send_email(ip)
            pass
        break
    time.sleep(5)

文件名保存为ip-push.py保存路径在~/Documents/下,
编辑/etc/rc.local文件,在exit 0 前添加一行:

sudo python ~/Documents/ip-push.py
树莓派+OpenCV+Arduino实现二维码与颜色识别检测及物料抓取总结 1. 系统总体设计和分析 系统总体分为硬件设计和软件设计,硬件设计就是基于树莓派2代B型和Arduino的硬件基础平台搭建,能够适应小型、灵活的现实需求,并为软件设计提供可观的计算能力承载和算法改进空间。软件设计就是在嵌入式Arduino上构建控制系统,用来控制物料车基本的移动,机器臂的抓取,摄像头的位置等操作,而在树莓派上构建软件开发环境,在OpenCV框架下,通过C++语言实现二维码的检测和... 阅读详情

相关推荐

****树莓派基于opencv的人脸识别和口罩检测****

树莓派基于opencv的人脸识别和口罩检测 文章目录学习目标:学习内容:前言一、opencv是什么?二、步骤1.树莓派安装模块安装教程链接:2.设计思路然后注意一下,下面的yml文件,和xml文件,必须都用绝对路径来写!!!!!!**YAML(Yet Another Markup Language)(发音 /ˈjæməl/ ) 一种基于Unicode容易阅读,容易和脚本语言交互的,用来表达资料序列的编程语言**。**就很神奇,收集的人脸会变成一系列数据来使用,并存放在yml文件中**成果展示总结 学习目标:

weixin_46184975的博客 2872

opencv环境配置(matlab)

matlab中配置opencv的步骤如下:1、下载编译好的库mexopencv(下载链接)。2、根据文件存放位置在电脑中添加环境变量,如:D:\mexopencv\bin3、在MATLAB中设置路径,D:\mexopencv\opencv_contrib,D:\mexopencv,如图:...

yuxincheng123的博客 6185

树莓派系列一:基于openCV+python的颜色识别(红色)

这是笔者第一个在树莓派上运行的工程,就这个工程用到的一些知识点和大家分享下。 工具 树莓派4+摄像头 环境 树莓派运行的环境参考下面这篇文章: 树莓派下opencv3.4.0的安装与错误处理 文章针对安装软件时碰到的问题都要详细的解决方案。 知识点 OpenCV简介 OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MA

m0_46341772的博客 6573

树莓派安装基于python的opencv

文章目录 前言 一、需要的设备 二、烧录系统 三、核对python版本是否为3.9.2,并打开摄像头功能 四、安装opencv 五、测试opencv 总结 前言 本文章是基于python3写的一篇文章,大家需要先查看自己是否有python3。   OpenCV是程序员钟爱的开源计算机视觉库,拥有强大的内置函数和开源社群。OpenCV配合便携开源廉价的树莓派,可以直接读取来自树莓派摄像头PiCamera的视频,进行人脸识别、边缘检测、语义分割、自动驾驶、图像识别等各种计算机视觉...

qq_48791657的博客 9826

使用MATLAB控制树莓派

树莓派是一款小型的单板计算机,具有强大的计算和控制能力,广泛应用于物联网、机器人和嵌入式系统等领域。通过连接到树莓派并使用MATLAB提供的函数和工具,可以方便地控制树莓派上的外部设备,读取传感器数据,并创建图形界面进行交互控制。第一个参数r是raspi对象,'LED0’是LED的引脚名称,1表示点亮LED,0表示熄灭LED。第一个参数r是raspi对象,'Servo1’是舵机的引脚名称,0.5表示舵机的角度位置。其中,'IP地址’是树莓派的IP地址,'用户名’和’密码’是树莓派的登录凭据。

DevProPlus的博客 934

opencv_python-4.5.5.64-cp37-cp37m-linux_armv7l.whl

OpenCV ARM python3.7 安装包,可用于树莓派

树莓派OpenCV镜像

OpenCV是一个基于BSD许可发行的跨平台计算机视觉和机器学习软件库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它轻量级而且高效,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。 为了方便在树莓派上使用,我制作了一个OpenCV-4.5.0直刷镜像。

@南寒天一的博客 3380

opencv_python-3.4.3.18-cp37-cp37m-linux_armv7l.whl

树莓派上python3 的 opencv3.4 的 whl 文件,opencv_python-3.4.3.18-cp37-cp37m-linux_armv7l.whl (7.5MB)

小白也能看懂!OpenCV 从零开始安装配置全教程(包含Windows / Ubuntu / 树莓派)系统详细操作配置教程

本教程是面向“小白也能懂”的OpenCV安装与配置全攻略,涵盖Windows、Ubuntu和树莓派三大平台,真正实现“从零开始”快速上手。文章详细讲解了OpenCV下载安装教程、OpenCV安装、Ubuntu安装OpenCV、树莓派安装OpenCV等步骤,手把手指导小白用户进行环境准备、依赖库安装、解压与环境变量配置、CMake编译、源码编译与apt-get安装等操作。通过本教程,小白也能一步步完成OpenCV安装配置,为后续图像处理与计算机视觉项目开发打下坚实基础。

猫头虎技术团队:授渔优于赠鱼,兴趣引领智慧,探索之乐尤显珍贵。商务合作+:Libin9iOak ,万粉变现+:优快云WF,猫头虎承诺每年免费为100名C站创作者做账号流量诊断服务!全网搜:猫头虎技术团队,点击文章底部名片或直接私信我一切皆可谈,快找虎哥! 1万+

2.2.1.3-移动平均线(python画k线、均线、5日线、买卖点图、python均线策略)

* 绘制一个k线图,也就是蜡烛图 * 计算5日均线值、10日均线值 * 在k线图上,绘制5日线和10日线图 * 在5日线上,绘制与10日线的交叉点(上穿、下穿时) python画k线、均线、5日线、买卖点图、python均线策略

KelvinLiu 3413

mot_challenge官方评估代码

mot_challenge官方代码使用介绍 评估mot17验证集:每个视频序列的后一半帧作为验证集 下载源码:git clone https://hub.fastgit.org/JonathonLuiten/TrackEval.git 官网上下载data样例,放在TrackEval/下,结构如下: data |-- gt | |-- bdd100k | |-- davis | |-- kitti | |-- mot_challenge | | |-- MOT15-train |

qq_37866436的博客 4896

【树莓派开发】02-基于OpenCV的车牌识别处理(LPR)

【说明】:本文环境:python2.7(感觉3问题也不大,可以自己改一改);opencv 3.4.1;树莓派-4;识别距离最少40厘米,直接手画了车牌进行演示,很low,估计换成标准车牌图像测试会提高准确率,而且直接使用了文1中的SVM训练好后模型数据,应该这块改进也能提高识别概率,最终表现是,中文字符的识别率较差,英文与数字较好,数字可以达到90%以上。

鉴云的博客 7550

uniapp+ucharts折线图toolTip不显示?别慌,手把手教你用showToolTip方法精准修复

本文详细解析了uniapp+ucharts折线图中toolTip不显示的常见问题,提供了showToolTip方法的精准修复方案。从底层原理到实战代码,帮助开发者解决触摸事件冲突、坐标计算偏差等问题,确保折线图交互提示功能稳定运行。

weixin_30316097的博客 403

树莓派安装opencv打开摄像头实现实时传输

OpenCV简介:opencv是一个开源的计算机视觉库,是英特尔公司资助的两大图像处理利器之一。它为图像处理、模式识别、三维重建、物体跟踪、机器学习和线性代数提供了各种各样的算法。(扩展阅读) 其实安装与使用OpenCV库非常简单,平常做图像处理算法处理的时候大家经常习惯用MATLAB,虽然MATLAB具有强大的工具箱,但是无法达到实时的效果,这一点小编一点也不喜欢,在这篇文章中,

xiao__run的博客 2万+

深信服防火墙路由模式开局部署-手把手教学(小白篇)

手把手教学,拿到深信服的防火墙路由模式该如何开局?

m0_64423407的博客 2万+

【PT+Arduino+OneNET基础教程1】PacketTracer中MCU芯片编程教程(零基础入门)

PacketTracer软件内MCU芯片编程入门 零基础

ChloeMax_的博客 9455

MATLAB标定后使用opencv双目测距

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录前言一、什么是拍照测距?二、双目测距步骤1.双目标定2.测距测试结果 前言 最近有项目需要用到摄像测距,于是开始接触opencv机器视觉。学了好几天的摄像机测距相关的知识后就开始动手验证,刚开始是单目测距,搞了个树莓派的开发板,然后下载网上的一些代码验证,发现单目需要预先知道被测物,因为要实现避障功能,所以后面选了双目测距。目前的进度是能在PC上利用双目进行测距,近距离双目测距精度还行,后续需要将代码移植至树莓派B4板子上,由树莓

weixin_30072103的博客 5046

高速接口电平标准互连设计:LVPECL、PECL与LVDS的实战解析

本文深入解析了LVPECL、PECL与LVDS三种高速接口电平标准的互连设计实战。针对信号共模电压、阻抗匹配等核心差异,详细对比了直流耦合与交流耦合两种主流方案,并提供了电阻网络计算、布局布线要点及光模块等特殊场景下的选型建议,帮助工程师解决高速信号间的“翻译”难题,确保信号完整性。

weixin_29198045的博客 539

树莓派环境处理_【树莓派4B测评】+搭建OPENCV环境

【树莓派4B测评】+搭建OPENCV环境[复制链接]OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉和机器学习软件库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。今天在树莓派上搭建OP...

weixin_39587164的博客 338

MAX96712在车载摄像头系统中的带宽分配与传输能力计算解析

在计算摄像头带宽与传输接口的关系时,需要考虑视频流的像素分辨率、帧率、颜色深度等因素。以 MAX96712 这种 GMSL2 产品为例,它支持每个链路在正向方向以 3Gbps 或 6Gbps 的固定速率工作。

weixin_43199439的博客 3330

[deprecated]第四章:TTM分析: 4.2.1 存储分配ttm_bo_validate功能实现分析

ttm_bo_validate是TTM框架中负责验证和调整BufferObject物理内存分配的核心函数,主要用于显存管理。该函数通过placement参数判断BO是否需要迁移或重新分配资源,完成内存分配、迁移及缓存策略调整等操作。实现流程包括资源释放、兼容性检查、迁移保护、新资源分配、迁移实现等步骤,支持多跳迁移和临时缓冲区。典型应用于显存溢出迁移、缓存策略调整、驱动初始化等场景,确保BO始终处于预期状态。

图形/计算GPU的驱动与虚拟化技术分享园地 846

在Anaconda3上安装opencv

    暑假参加了一个暑期科研见习,主要任务是在树莓派3B(Raspberry pi)上训练几个小的深度学习模型,其中需要用到opencv。当然,如果在笔记本上先能够run一下代码,就可以预估模型训练的结果了。因此决定先在笔记本上(无GPU)利用anaconda3下载opencv。具体内容如下: 1.  下载并安装anaconda3     Anaconda指的是一个开源的Python发...

qq_44635669的博客 7558

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

树莓派4B-Python-四种人脸检测/人脸识别

关于人脸检测 本人目前用树莓派4B仅了解到了人脸检测的四种方法: 使用OpenCV 使用OpenMV 利用百度智能云的人脸识别 使用face recognition库 树莓派4B-Python-人脸检测文章目录关于人脸检测前言一、OpenCV二、OpenMV1.引入库2.读入数据三、百度智能云的人脸识别四、face recognition库总结 前言 人脸识别对于大家来说应该都是挺耳熟的,它就是从人脸检测升级而来的。可能就会有人问:这人脸识别和人脸检测有啥不一样咧? 人脸检测是人脸识别的基础,人脸检

羽之翼的博客 1万+

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

Ubuntu 20.04 下安装 OpenCV 3.4.11 并测试使用

目录1 什么是Opencv2 安装OpenCV2.1 下载Opencv 1 什么是Opencv OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉和机器学习软件库,可以运行在Linux、Windows、Android和Mac OS操作系统上。 它轻量级而且高效——由一系列 C 函数和少量 C++类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。 应用领域包括: 人机互动、物体识别、图像分割、人脸识别、动作识别、运动跟踪、机器人、运

L-GRAZY的博客 8872

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

上一篇: 修改hosts文件实现域名访问
下一篇: U盘上的移动ubuntu
AFATAR
博客等级 码龄9年 60粉丝 14原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值