- 2024-11-15
-
回复了主题帖:
报名剩6天:30套RV1106 Linux开发板(带摄像头),邀您挑战边缘AI~
给力!
-
回复了主题帖:
【入围名单】Follow me第二季第4期,与得捷一起解锁开发板超能力!
恭喜入围的大佬们!
-
回复了主题帖:
【入围名单】Follow me第二季第4期,与得捷一起解锁开发板超能力!
秦天qintian0303 发表于 2024-11-11 23:32
这板子不错,传感器不少
确实不错
- 2024-11-13
-
回复了主题帖:
【STM32H7S78-DK】(11)语音控制之旅
大佬给力!竟然输出10+篇。
- 2024-11-04
-
回复了主题帖:
【2024 DigiKey创意大赛】RPI5翻译机---提交贴
Jacktang 发表于 2024-11-3 08:22
谢谢分享
期待语音输入和文本输出的翻译机器模式,早上开发成功
哈哈必须OK的
- 2024-10-31
-
发表了主题帖:
【2024 DigiKey创意大赛】RPI5翻译机---提交贴
【2024 DigiKey创意大赛】RPI5翻译机---4 关于翻译机实现
时间过得很快,仿佛刹那间就到了RPI5翻译机项目提交的时候。
还好之前有做了一些树莓派4B系统上聊天机器人的开发测试,积攒了一些经验。和翻译机的流程比较起来,其实就是把和llama.cpp框架加速的大模型如开源的llama系列进行chat的流程,换为一个多语言翻译大模型例如NLLB就OK了。
顺便说一句,开源的大模型llama系列,和NLLB多语言翻译大模型都是来自meta公司的贡献,这里要给meta点个赞!
另外,对于语音交互系统设计的语音输入端来说,自动语音识别ASR/STT我选择由OpenAI公司开源的whisper大模型,它也是基于transform机制算法做识别的佼佼者,这里就不矫情了直接用上它作为语音输入端的解决方案。
最后,对于语音交互系统设计的语音输出端来说,语音合成系统TTS始终是个重大课题,同时呢可以选择的标的又不要太多了,选择也是个问题所在,综合各种因素的考虑我这里选择了piper-tts这个相对轻量级的TTS系统。毕竟我们的平台只是个树莓派5系统,而且只有4GB内存可用。
综合上述语音系统三大要素,一个嵌入式聊天机器人/翻译系统已经成型。
以上,就是我在前期考虑的结果,同时考虑到翻译大模型NLLB本身还要消耗不少内存甚至大于llama大模型的内存消耗,所以要看实测结果如何,来判断TTS系统是否还可以加上。假如把全部流程加起来跑,根本没有实时流畅的体验感,或者压根就跑不起来,那还是要去掉TTS系统,不考虑用语音来播放翻译结果,只是直接输出翻译后的文本text就好。
而且,基本需求是支持中英文互相翻译为主,其他语言语种暂时不做展开。
除了语音系统的核心功能和模块之外,还需要考虑一下关于界面UI的问题。如果只是一个聊天机器人,其实不用考虑啥,直接一个硬件按钮触发说话录音就好,这个按键就是mute按键。但是想实现翻译功能,那就需要更多的按键输入,全部用硬件按键不太合适,不如做点GUI图形界面输入模式。
GUI又有本机原生UI方式和web前端浏览器UI模式之分,如果想要同时兼容树莓派等嵌入式Linux系统,桌面端的笔记本和平板电脑,安卓手机平台甚至是云服务器平台的部署和运行,那最好还是加个webUI的壳子比较靠谱。
鉴于AI算法和大模型相关软件栈的关系,我这里采用了python模块Gradio5作为实现webUI的框架,同类型的还有dash等python模块,可选择的标的同样不少,这里就不展开了。
选择Gradio5模块还有一个主要原因是它就是huggingface自己开发并开源的,同时因为huggingface又提供了spaces托管服务,app开发完成后只要没有使用GPU加速,就可以方便而且免费的托管在huggingface的云平台上,进行远程测试等操作了。
注意,这里的关键词是免费,重要的事情说三遍,免费免费免费!
以上方案作为一个测试用的demo是足够了,产品级的聊天机器人或者翻译app当然不能这么设计实际的解决方案,应当做其他的技术选型和方案设计,这里不再展开。
下面,我采用了通义千问2.5-1.5B大模型作为chatbot后台,简单展示几个通过chrome浏览器访问树莓派5系统作为服务器,进行文本输入输出模式下的对话聊天流程图片,如下所示。
树莓派5系统的硬件图片如下图所示。
摄像头是为了后续进行videochat等应用模式准备,暂时还没开始。
树莓派5系统上,当按下mute按键开始说话录音,并进行whisper流式语音识别和千问2.5-1.5B大模型对话并由piper-tts生成答案的语音播放时,语音服务后台输出的log如下图所示。
PS:webUI浏览器界面上的语音音频audio输入输出模式,还有语音输入和文本输出的翻译机器模式,仍然正在紧张开发中ing!
- 2024-10-14
-
回复了主题帖:
EEWorld邀你来拆解(第14期)——智能电动口罩综合拆解测评
秦天qintian0303 发表于 2024-10-12 20:57
用料上其实还算可以,我主要喜欢他的这种风扇,非常静音
原来是个鼓风机,通风机应用,我差点以为是移动版的呼吸机
- 2024-09-30
-
回复了主题帖:
CircuitPython创意作品
666
-
回复了主题帖:
推荐一款国产60V升降压芯片
nice啊,刚想找这种片子呢哈哈
- 2024-09-19
-
发表了主题帖:
基于vision板子并在OpenMV工程基础上进行多模态机器人的测试和开发
经过对rtthread社区的官方文档学习后,发现目前vision板子上openmv工程已经很完善,甚至可以WiFi图传。
这对我的方案实现很有帮助,可以极大加快开发的速度和效率。按照教程描述,打开了mjpeg_streamer.py这个WiFi的例程,就很顺畅的跑起来了。
当然上图所示的结果,也是需要按照教程中说的,修改了自己相应的WiFi联网热点名字和密码才能正确运行。之后就是在另一台Linux服务器上去连接同一个WiFi-AP路由器,vision板子必须和服务器互相ping通,才能打开浏览器访问WiFi图传的mjpeg流。
从上图可以看到,虽然因为操作不太方便造成的截图有点模糊,但是在另一台Linux服务器上浏览器已经正确的获取了mjpeg流。
到这里就很容易了,接下来的流程就是在服务器上处理WiFi图传流中的某一帧图片,截图保存后并把这张图片进行token化,准备作为多模态大模型vllm的query,传送给vllm然后获取到它的answer。
接下来,我尝试了几个ollama中的本机运行的多模态大模型vllm,例如llava-phi3/bakllava/llava-llama3等等。
运行测试结果都不如人意,主要是这台Linux服务器作为我自己用的测试服,只是开发和测试环境里用的,算力性能和内存资源等等都比较受限制,推理时间特别长。所以我干脆把图片传给了云端的Qwen2-vl多模态大模型,下面来看看它的答案answer情况(主要想看下它是如何开始胡说八道的哈哈(不是))。
首先我把获取到jmpeg流中的截取出来一个整体的截屏图片,如下所示。
然后我的prompt为------Q:请描述一下图片中的大概内容,从Qwen2-VL得到的答案如下所示。
A:图中是一个网页,地址栏写着192.168.2.103:8080,下面显示的是一段代码,代码内容如下:
这是一段Python代码,使用了picamera和HTTPServer库,实现了启动一个web服务,端口8080,可以实现实时显示Raspberry Pi的摄像头画面(你看看哈哈)。
这是不是已经接近了一本正经的胡说八道呢?代码部分完全是它自己生产。
然后我把这个整体图片再做一次中心截取,上传给它。
这次我的prompt为------Q:这个图片里面是什么呢?从Qwen2-VL得到的答案如下所示。
A:这张图片显示的是一段计算机代码,看起来像是Python语言编写的。虽然图片有些模糊,但我可以尝试解读一下其中的部分内容。代码似乎与网络通信有关,包括导入了一些库,比如os、sys、time、picamera以及两个HTTP相关的库。此外,还定义了一个CameraServer类,继承自SimpleHTTPRequestHandler,处理GET请求。这个类有两个方法do_GET,分别对应于不同的路径。一个是根路径'/',另一个是'/stream.jpg'。根路径返回一个HTML页面,该页面包含一个指向'stream.jpg'的图片元素。而'/stream.jpg'路径则返回一个JPEG图片。整个程序看起来像是一个简易的HTTP服务器,用于提供实时的图片流服务。
那这一次的答案就还是算比较靠谱了,而且它并没有自己胡编乱造,要给Qwen2-VL多模态大模型点赞!
最后呢作为比对基准,当然我们是用直接截屏的方式,获取了omv-ide中的图片上传的。
这次我的prompt为------Q:这个图片里面是什么东西呢?从Qwen2-VL得到的答案如下所示。
A::图中是OpenMV IDE的界面,左侧是代码编辑区,右侧是图像预览区。代码是用python语言编写的,主要功能是通过WiFi传输视频流。
具体来说:
第23行到第30行是初始化摄像头模块并设置分辨率;
第31行到第40行是连接WiFi;
第41行到第57行是创建服务器套接字并开始发送视频流;
最后一行是串口输出的数据。
代码的具体含义如下:
这段代码用于将OpenMV Cam连接到指定的Wi-Fi网络,并通过HTTP协议将压缩后的JPEG图像流发送到主机。首先初始化摄像头传感器和WLAN模块,然后尝试连接到指定的Wi-Fi网络。一旦成功连接,就创建一个TCP/IP套接字并监听端口8080上的连接请求。当有客户端连接时,就开始发送压缩后的JPEG图像流。最后关闭连接。
可以看出来,这次才是最靠谱的答案状态,并且根据实际的omv-mpy源码进行解释。
PS:通过上述的操作流程和编码实现等等,我们已经完成了实测vision板子的多模态对话聊天全流程。并且做了三项对比,由此我们可以熟知当前多模态大模型在具身智能机器人应用场景里的局限性,当然也包含了先进性。
最后,尚未未实现的流程也有,例如扩展iis接口的Dmic硅麦,或者USB接口的mic采集语音音频,再用其他支持音视频交互的多模态大模型进行对话聊天的chatbot流程等。
-
回复了主题帖:
立创·ESP32S3R8N8开发板
秦天qintian0303 发表于 2024-9-17 19:23
墨水屏也可以在得捷电子上进行采购,就是太贵
那确实。
- 2024-09-16
-
发表了主题帖:
Vision板子和机器视觉omv
本帖最后由 ly87802541 于 2024-9-16 19:21 编辑
Vision板子的开箱体验
最近有关于rtthread社区和瑞萨举办的Vision板子活动已经快要接近收官,我们快速来体验一下板子的开发环境等初步流程。
首先要去社区官网论坛上找到有关板子的教程文档和环境搭建等技术内容如以下地址https://www.rt-thread.org/document/site/#/rt-thread-version/rt-thread-standard/hw-board/ra8d1-vision-board/ra8d1-vision-board,有了文档指路后一切变得流畅起来。
根据教程,首先下载安装最新版的rttstudio如当前的2.2.8版本。Ide安装后就可以安装对应板子的sdk了,如下图所示。
然后sdk管理器会自动安装关联的工具链,调试器包等等。
安装sdk1.3版本成功后,显示如下图所示。
然后我们new一个开箱篇经典的led工程,如下所示。
Build it。
Link it。
Download firmware。
下载固件OK后,可以看到vision板子上的蓝色led灯开始闪烁,说明整个开发流程皆是如此丝滑,在rtthread社区全方位的优化之下,单片机的开发和测试等等已经完全自动化了。
开箱到此结束,敬请期待后续分享的体验过程。
OpenMV工程的体验
我们继续来new一个示例工程如OpenMV,如下图所示。
新建后Build it。
出错了,按照社区论坛文档说的还是需要mdk工具来编译这个OpenMV工程,于是用我之前安装的mdk5.36来打开它,如下图所示。
Mdk自己自动开始下载需要的pack包,如RA_DFP.5.5.0.pack。似乎看起来还蛮顺利,不过在包安装后,自动进入RTE设置界面,进行编译的时候也发现出错了,如下图所示。
于是,赶紧下载了一个mdk5.40更高版本来重新编译。安装mdk 5.40后也是自动安装 RA_DFP.5.5.0.pack最新版本的包,如下图所示。
然后也是继续进行build it 和link it,结果发现还是出错了。
仔细一看,原来还是需要mdk版本必须那什么,大家懂的都懂。
于是如此这般一番操作后,继续。
如上图所示,终于linked。接着就是下载固件了,也是有点小问题,如下图所示。
又是一番操作后,主要时Size这里要改为0xE0000,终于download firmware成功。
继续在教程的指导下进行openmv ide的安装,omv官方网站下载超慢,等不及就在星瞳电子下载了一个中文版先用着,最新版本以后再说。
这里我偷了个懒,先用例程试了一下,体验了一把vision板子的openMV工程,运行画面如下图所示。
可以看到,omv的camera是OV5640,固件版本是4.5,我拍摄的视频就是omv-ide中的编辑器画面,最后关闭。
关于vision板子的omv工程体验到此结束,下一步就要开始自己的开发体验了。
-
发表了日志:
Vision板子和机器视觉omv
-
回复了主题帖:
立创·ESP32S3R8N8开发板
tagetage 发表于 2024-9-15 21:27
这个板子的元件布局看着不错,画PCB的人有水平。
立创电子开源硬件平台推出的项目,应该还不错吧
-
回复了主题帖:
立创·ESP32S3R8N8开发板
walker2048 发表于 2024-9-16 11:08
其实esp idf真的很好用,用习惯了,比python更顺手,生态也更完善
IDF我也用,哈哈产品用的多点吧,自己玩的就mpy,开心就好啦
- 2024-09-15
-
发表了主题帖:
立创·ESP32S3R8N8开发板
本帖最后由 ly87802541 于 2024-9-15 18:14 编辑
立创开源硬件平台最近有推出一系列的开发板,例如泰山派,梁山派,实战派等等,生态系统越做越大了。刚好最近我有买了其中的一个立创·ESP32S3R8N8开发板,正好来简单的测试一下。
开箱图片正反面如下所示。
接口是USBC的,数据线连接电脑后红绿灯都开始闪烁,我也不知道具体啥情况。然后赶紧到立创官网https://wiki.lckfb.com/zh-hans/esp32s3r8n8/module/sensor/open-mv.html去看看有关的教程,首先到micropython官网下载固件,到乐鑫官网下载烧录工具等如下图。
接下来就可以thonny连接开发板,简单测试一下系统和mpy固件的当前状态。
系统资源啥的基本符合立创官方对这个立创·ESP32S3R8N8开发板开发板的描述,对这个开发板的检测就结束了。后面我可能会用它作为核心板,去尝试做一个墨水屏摆件啥的东西参加立创第九届的电子设计活动,如果过程中有什么想法值得分享,会在有时间的时候写一写。
立创·ESP32S3R8N8开发板
立创开源硬件平台最近有推出一系列的开发板,例如泰山派,梁山派,实战派等等,生态系统越做越大了。刚好最近我有买了其中的一个立创·ESP32S3R8N8开发板,正好来简单的测试一下。
开箱图片正反面如下所示。
接口是USBC的,数据线连接电脑后红绿灯都开始闪烁,我也不知道具体啥情况。然后赶紧到立创官网https://wiki.lckfb.com/zh-hans/esp32s3r8n8/module/sensor/open-mv.html去看看有关的教程,首先到micropython官网下载固件,到乐鑫官网下载烧录工具等如下图。
接下来就可以thonny连接开发板,简单测试一下系统和mpy固件的当前状态。
系统资源啥的基本符合立创官方对这个立创·ESP32S3R8N8开发板开发板的描述,对这个开发板的检测就结束了。
后面我可能会用它作为核心板,去尝试做一个墨水屏摆件啥的东西参加立创第九届的电子设计活动,如果过程中有什么想法值得分享,会在有时间的时候写一写。
PS:墨水屏也可以在得捷电子上进行采购,还挺方便的。
- 2024-09-14
-
回复了主题帖:
树莓派5开启一直卡在限流,求教各位大佬支招
啥也不说了,直接上小米67瓦快充头,不接HDMI显示器毫无问题哈哈
-
发表了主题帖:
【2024 DigiKey创意大赛】RPI5翻译机---3 关于52840dongle补充说明
继续这个翻译机的体验流程,开箱中有提到过52840dongle的使用场景,希望用leaudio音频协议去连接播放器设备如音箱等。不过在查了自己家里的蓝牙音箱后发现,还没有一个播放器设备可以支持leaudio音频协议,最新的也只是支持到经典蓝牙音频播放的Sony音箱。
那就只有暂时放弃这个想法了,另外我们还有个扩展的imu模块icm20948,可以在树莓派5系统上直接使用python语言去操作它。和开箱子中的利用一个mcu主控和mpy去操作它基本没有太大区别,首先还是需要安装这个来自adafruit的驱动库:sudo pip3 install adafruit-circuitpython-icm20x,然后这个库在树莓派上是底层用到了RPi.GPIO库去操作iic接口等硬件外设,最终得到imu模块采集到的运动姿态数据。
首先我们需要安装来自adafruit公司的官方模块,如下图所示。
然后,编写一个python语言的脚本文件例如imu-icm20948.py。
接下来就可以直接运行脚本。
可以看到,很简单就驱动了imu模块icm20948,接下来就可以用采集的运动姿态数据进行其他算法的开发和测试,例如跌倒检测,计步等等。
最后,这是imu模块和树莓派5的40pin接口iic总线连接,接线图如下图所示。
关于imu模块icm20948的检测到此结束。
- 2024-09-08
-
回复了主题帖:
【2024 DigiKey 创意大赛】物料开箱
空耳- 发表于 2024-9-5 10:40
8G不是不报销吗,活动只有4G啊
这就是大佬的魅力所在哈哈,和我们不一样的。
- 2024-09-06
-
回复了主题帖:
【Follow me第二季第2期】扩展任务二:通过外部SHT40温湿度传感器,上传温湿度到HA...
大佬们牛叉!