OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4504|回复: 2

【分享】Alpha开发板安装python3-opencv与ssh wifi自动连接

[复制链接]

1

主题

1

帖子

0

精华

新手上路

积分
42
金钱
42
注册时间
2022-2-12
在线时间
9 小时
发表于 2022-12-20 15:50:22 | 显示全部楼层 |阅读模式
Opencv分为C++和python两种语言编写的版本,而python版又分为python2和python3版本的。众所周知python开发效率更高,其中python3相比python2还正在进行维护更新(二者语法不兼容),但原子并没有提供任何关于python的教程或者资源,那么我们就自己安装吧。
我先尝试了原子官方提供的多种系统和多个根文件系统,包括但不限于linaro debian jessie(debian8),ubuntu16,和官网下载的ubuntu18.04,分别尝试安装python3-opencv,结果都以失败告终。debian8使用apt只能apt install python-opencv,当apt install python3-opencv时则无法找到资源,ubuntu16同理,可能是因为版本过旧。而ubuntu18则可以使用apt install python3-opencv,并且能正确查看cv2.__version__,但问题出在没有uvc usb摄像头驱动和wifi驱动,无法调用摄像头和连接ssh(教程里的wifi摄像头驱动安装教程仅使用busybox根文件系统,技术支持不会指导你在其他根文件系统进行安装)。而其他的根文件系统,比如出厂qt系统、busybox、buildroot、yocto等甚至不能使用apt指令,故不在考虑范围内。
总的来说,原子资料里的所有根文件系统都不能使用apt安装python3-opencv,或者能安装但是没有摄像头驱动。
因此我把视线转向友商的资料,尝试使用友商的根文件系统。经过尝试,我找到了友商的debian10根文件系统,自带uvc usb摄像头驱动和rtl8188eu/cu的usb wifi驱动,因此我尝试使用该根文件系统,配合原子资料里的名为ATK_Mfgtool_V1.1(Debian-Ubuntu_base)的烧录工具,进行程序烧录。简单来说,将rootfs替换,并将文件名修改一样就可以了。但在使用中,发现了许多问题,比如有时候无法开机登录root账户也无法切换root账户,连接wifi需要安装软件等。因此需要先在虚拟机里用./mount.sh挂载根文件系统,进行安装和配置,再烧录到开发板上。当配置好之后,可以连接pc端的ssh终端,效果如图。

使用ssh调用opencv效果图

使用ssh调用opencv效果图
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

1

主题

1

帖子

0

精华

新手上路

积分
42
金钱
42
注册时间
2022-2-12
在线时间
9 小时
 楼主| 发表于 2022-12-20 16:19:43 | 显示全部楼层
使用./mount.sh挂载根文件系统的方法原子教程都有讲,这里就不再讲述。这里只讲述我在移植过程中遇到的几个问题。
当为了mount挂载根文件系统而使用sudo chmod -R 777 rootfs给予根文件全部权限的时候,再烧录到开发板后,会出现开机登录root账户,不让填写密码及提示密码错误的情况,和当登录debian用户,使用su root后输入root密码提示没有权限这两种情况。解决方法如下:chmod a+s /bin/su。参考链接 https://blog.csdn.net/njyxfw/article/details/7364156        先登录普通用户,在su root切换账户即可。
当使用友商的根文件系统,烧录到开发板,第一次启动后可能会出现在输入密码阶段突然重启的情况,这属于正常情况,根据友商教程里的说明,是一种使sd卡自动扩容的一个操作,需要重启。当然我找到的一个根文件系统不会有这种情况。
当插入摄像头,使用ls /dev/video*查看摄像头代号的时候,可能出现video0 1 2三个,这时候使用v4l2-ctl --list-devices查看video?对应的信息即可,对应的代号填入之后的cap = cv2.VideoCapture(?)中即可。
wifi连接和开机自动启动脚本(包括wifi开机自动连接),我都参考了友商的教程,这里使用原子自己的也可以,但是原子的技术支持可能会让你自己去百度如何开机自动启动。
当wifi能开机自动连接之后,在ssh创建的时候remote host填入ip(若使用手机热点则手机可以查看到,或使用ifconfig查看),specify username填入debian即可,即可不使用串口终端,直接通过ssh远程连接开发板。
回复 支持 反对

使用道具 举报

1

主题

1

帖子

0

精华

新手上路

积分
42
金钱
42
注册时间
2022-2-12
在线时间
9 小时
 楼主| 发表于 2022-12-20 16:37:18 | 显示全部楼层
直接看从友商的根文件系统如何配置到能开机自动连接wifi、自动连接ssh、安装python3-opencv。分享的资料里有四个文件,分别是友商资料中的原版根文件系统,我制作的能开机自动连接wifi的根文件系统,能开机自动连接wifi的烧录工具包,和个人总结。其中制作根文件需要先将important文件夹放到根目录里。首次连接wifi需要使用ifconfig -a查看wifi名称,我的不是教程里的wlan0,而是enx0013eff92674,所以每个人都不一样,不改是用不了的。链接:https://pan.baidu.com/s/10GsZt_QdoAWdB5AKo0FDaQ?pwd=jcay
提取码:jcay

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-25 06:41

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表