HaaS Python + 达摩院AI能力 实现云端一体物体识别

简介: HaaS Python + 达摩院AI能力 实现云端一体物体识别

物体识别系统

  本案例是确定要识别的物体区域后,通过模拟按键通知摄像头抓拍区域图片并上传至云端,云端通过HaaS增值服务对抓拍的图片进行识别,最后给出图片中的都有哪些物品,同时给出识别物品名称和可信度,通常使用在装修设计、图片检查上辅助操作者确定物品是否齐全。




背景知识

  HaaS增值服务:集多种人工智能算法为一体的云端服务,通过设备端上传图片到云端,云端对图片进行识别,并把结果返回给设备的服务,目前已涵盖图片识别、文字识别、物品识别、人型识别等多个类别。


场景功能拆解

实验整体步骤如下:

1. 连接硬件

2. HaaS云端积木平台创建设备

3. 设备端开发和运行

4. 处理云端识别结果

准备

1. M5Stack Core2开发板       一套

2. M5Stack Unit CAM摄像头    一个

3. 连接线                    一根

4. 公对母杜邦线               若干

涉及到的硬件购买链接如下,仅供参考,不负责商家发货的品质保障等问题!


名称 数量 参考链接

M5Stack Core2开发版 1 M5Stack Core2

microUSB数据线 1 M5Stack Core2开发套件自带

摄像头 1 M5Stack Unit CAM摄像头

连接线 1条 M5Stack GROVE连接线 请选用10cm长即可

公对母杜邦线 若干 公对母杜邦线 请选用10cm长即可

  连线示意图如下图所示:




  硬件连线图如下图所示:




云端平台功能开通

在本案例中涉及到云端平台功能都聚合在HaaS云端积木中,所以无需单独使用 对象存储OSS 和 视觉智能开发平台。因此,整个云端步骤分为下面两步。


1. 注册阿里云账号并登录阿里云账号;

2. 登录HaaS云端积木控制台创建设备;

注册阿里云账号

  进入阿里云官网,如已有阿里云账号可跳过这步,注册阿里云账号 。


HaaS云端积木平台创建设备

登录HaaS云端积木平台

  进入阿里云官网,用阿里云账号登录HaaS云端组件控制台 。




创建设备

  在左侧导航栏设备管理中,可以看到产品和设备选项,点击“产品”,可以看到平台默认创建了“haas_正式游客产品”这个产品; 所以开发者只需要创建设备即可。点击“批量添加”, 添加方式为“自动生成”, 申请数量可填为“1”个,即可完成新设备的创建。






获取设备的三元组

  在设备的列表中,新创建的设备上点击“查看”,就可以获得设备的三元组信息,之后这个三元组信息会在设备端代码中使用到。






  请复制该处的三元组信息,后面设备端开发需要使用。


设备端开发

开发环境

  在进行下一步之前请确保M5StackCore2开发环境已经搭建完毕。详情请参考M5StackCore2快速开始的说明。


创建解决方案

  如下图所示,打开VSCode后,新建一个基于helloworld的python工程,设定好工程名称(“detect_object”)及工作区路径之后,硬件类型选择m5stackcore2,点击立即创建,创建一个Python轻应用的解决方案。




代码准备

下载设备端代码并解压,将解压后的所有脚本复制替换“detect_object”工程根目录下的所有文件,然后进行如下设定完成设备端代码的开发。


Python脚本的详细说明请参考脚本内嵌的文字注释


3.1. 修改路由器名称及密码


  修改detect_object工程里main.py中SSID和PWD的值为读者实际要连接的路由器的名称及密码(请注意名称和密码都需要放在''符号中间)。


  修改完成之后connect_wifi函数就会连接读者自己设定的路由器。


# Wi-Fi SSID和Password设置

SSID='Your-AP-SSID'

PWD='Your-AP-Password'

3.2. 修改设备的三元组信息


  按照[获取设备的三元组]获取三元组信息,填入main.py中:


# HaaS设备三元组

productKey = "Your-ProductKey"

deviceName  = "Your-devicename"

deviceSecret  = "Your-deviceSecret"

3.3. 运行结果


  推送此脚本到M5Stack之后,在网络连接成功后,屏幕上将打印出IP地址和"NTP Done"。如果迟迟不能显示“NTP Done”,请长按电源键关机同时拔掉USB线重新上电运行。


  模拟按钮动作,可通过公对公杜邦线模拟,先把一头插入GPIO27,然后把另一头插入GND后,马上拔出,即启动抓拍并上传云端,识别成功后串口会有提示。


  物体识别识别成功后,在屏幕上显示红色Object Detected的字样。


  串口会周期性的打印如下日志。


Wi-Fi is connecting...

Wi-Fi is connecting...

Wi-Fi is connected

IP: 192.168.xxx.xxx

NTP start

NTP done

establish tcp connection with server(host='${Your-ProductKey}.iot-as-mqtt.cn-shanghai.aliyuncs.com',port=[443])

tcp_connect: can only connect from state CLOSED

success to establish tcp,fd=54

link platform connected

启动按钮监控线程

按下拍照按钮

[  24.210]<E>AIOT_UPLOAD MQTT Upload file(detectObject.jpg) ID(HPmY8VNEXj2K6skS3t3S010200) success

{'ext': '{"elements":[{"boxes":[33,134,111,238],"score":0.3,"type":"potted plant"},{"boxes":[33,134,111,238],"score":0.208,"type":"flower"}]"result":"success"}','commandName': 'detectObjectReply','commandType': 'haas.faas','argInt': 1}

detect: potted plant

识别结束

get response time : 1234

按下拍照按钮

[  27.100]<E>AIOT_UPLOAD MQTT Upload file(detectObject.jpg) ID(OLnlY33oqKZZgf7yu6gX010200) success

get response time : 458

{'ext': '{"elements":[{"boxes":[48,86,178,111],"score":0.378,"type":"keyboard"}],"result":"success"}','commandName': 'detectObjectReply','commandType': 'haas.faas','argInt': 1}

detect: keyboard

识别结束




前往这里探索更多有趣案例

HaaS开发框架

https://haas.iot.aliyun.com/solution

————————————————

版权声明:本文为CSDN博主「HaaS技术社区」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/HaaSTech/article/details/124122190

相关文章
|
11月前
|
人工智能 自然语言处理 数据可视化
中国版“Manus”开源?AiPy:用Python重构AI生产力的通用智能体
AiPy是LLM大模型+Python程序编写+Python程序运行+程序可以控制的一切。
|
9月前
|
人工智能 数据安全/隐私保护 Python
小红书图文生成器,小红书AI图文生成工具,python版本软件
Pillow库自动生成符合平台尺寸要求的配图7;3)利用Playwright实现自动化发布流程6。
|
7月前
|
人工智能 数据安全/隐私保护 异构计算
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
1178 8
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
|
6月前
|
机器学习/深度学习 人工智能 自然语言处理
python编写AI生常用匡架及使用指令集
本文介绍Python中常用AI框架,包括TensorFlow、PyTorch、Scikit-learn、Hugging Face、spaCy、OpenCV及XGBoost等,涵盖安装指令与基础代码示例,适用于机器学习、深度学习、自然语言处理与计算机视觉等领域,助力快速入门与应用开发。(238字)
686 7
|
7月前
|
设计模式 人工智能 API
AI智能体开发实战:17种核心架构模式详解与Python代码实现
本文系统解析17种智能体架构设计模式,涵盖多智能体协作、思维树、反思优化与工具调用等核心范式,结合LangChain与LangGraph实现代码工作流,并通过真实案例验证效果,助力构建高效AI系统。
894 7
|
8月前
|
人工智能 自然语言处理 安全
Python构建MCP服务器:从工具封装到AI集成的全流程实践
MCP协议为AI提供标准化工具调用接口,助力模型高效操作现实世界。
1476 1
|
9月前
|
数据采集 人工智能 API
推荐一款Python开源的AI自动化工具:Browser Use
Browser Use 是一款基于 Python 的开源 AI 自动化工具,融合大型语言模型与浏览器自动化技术,支持网页导航、数据抓取、智能决策等操作,适用于测试、爬虫、信息提取等多种场景。
1293 4
推荐一款Python开源的AI自动化工具:Browser Use
|
9月前
|
人工智能 测试技术 编译器
从 Python 演进探寻 AI 与云对编程语言的推动
Python 自 2008 年发布 3.0 版本以来,经历了持续演进与革新。十六年间,从 Python 3.0 到即将发布的 3.14,语言设计、性能优化、类库生态及虚拟机技术等方面均有显著提升。字符串处理、异步编程、类型系统等核心功能不断现代化,Faster CPython 和 JIT 编译技术推动运行效率飞跃。同时,AI、云计算等新兴技术成为其发展的重要驱动力。本文全面回顾了 Python 的演进历程,并展望未来发展方向。
300 2
|
11月前
|
人工智能 安全 Shell
Jupyter MCP服务器部署实战:AI模型与Python环境无缝集成教程
Jupyter MCP服务器基于模型上下文协议(MCP),实现大型语言模型与Jupyter环境的无缝集成。它通过标准化接口,让AI模型安全访问和操作Jupyter核心组件,如内核、文件系统和终端。本文深入解析其技术架构、功能特性及部署方法。MCP服务器解决了传统AI模型缺乏实时上下文感知的问题,支持代码执行、变量状态获取、文件管理等功能,提升编程效率。同时,严格的权限控制确保了安全性。作为智能化交互工具,Jupyter MCP为动态计算环境与AI模型之间搭建了高效桥梁。
739 2
Jupyter MCP服务器部署实战:AI模型与Python环境无缝集成教程
|
11月前
|
机器学习/深度学习 人工智能 算法
Python+YOLO v8 实战:手把手教你打造专属 AI 视觉目标检测模型
本文介绍了如何使用 Python 和 YOLO v8 开发专属的 AI 视觉目标检测模型。首先讲解了 YOLO 的基本概念及其高效精准的特点,接着详细说明了环境搭建步骤,包括安装 Python、PyCharm 和 Ultralytics 库。随后引导读者加载预训练模型进行图片验证,并准备数据集以训练自定义模型。最后,展示了如何验证训练好的模型并提供示例代码。通过本文,你将学会从零开始打造自己的目标检测系统,满足实际场景需求。
11920 1
Python+YOLO v8 实战:手把手教你打造专属 AI 视觉目标检测模型

推荐镜像

更多