ModelArts加速识别,助力新零售电商业务功能的实现
前言
如果说为客户提供最好的商品是产品眼中零售的本质,那么用户的思维是什么呢?
在用户眼中,极致的服务体验与优质的商品同等重要。
企业想要满足上面两项服务,关键在于提升效率,也就是需要有更高效率的零售,即新零售。
新零售的核心是通过运用大数据、人工智能等先进技术手段,对商品的生产、流通与销售过程进行升级改造,对线上服务、线下体验以及现代物流进行深度融合,实现一种崭新的零售模式。
数据赋能新零售,用“数据赋能”提升“场”的效率,是新零售的核心逻辑之一。
而我这次遇到的问题是,根据客户提供的图片或截图,帮客户快速找到对应的货品,并告诉客户货品所在的位置。
如何借力ModelArts
功能流程图
整个流程并不复杂,商品数据在人、货、场三者中完成流转:
- 客户展示需要的商品的图片,通过机器进行扫描;
- 机器进行智能识别,识别结果有两种:
-
- 正确识别商品,并给到商品所在货架;
- 未能正确识别商品,但是会呼叫员工,帮助客户指出正确的货架位置。
- 客户根据货架位置,找到需要的商品。
功能拆解
这个业务功能中,有两个关键点:AI识别商品和找到商品所在的货架位置。
确定商品所在货架位置,是我们系统已经实现的功能。那么就剩下AI识别商品这个功能了。
这个功能的技术壁垒还是有些高的。尤其需要处理海量数据。
不过,我总感觉“AI识别”四个字很熟悉,突然,我联想到前段时间体验过的华为云ModelArts,我记得ModelArts中有一个体验是有关商超商品识别。
借力ModelArts
于是我很快在华为云ModelArts中找到了对应的实验:免费体验:一键完成商超商品识别模型部署。
这个实验提供的“商超商品识别”模型可以识别81类常见超市商品(包括蔬菜、水果和饮品),并且快速给出识别结果。
这不就很符合我的预期么。
真是,踏破铁鞋无觅处,全靠华为云的帮助。
接下来,让我们一起来一场ModelArts的实验之旅。
一键实现商超商品识别
前置工作
首先确保已经完成了华为云账号的开通与认证。
配置委托访问授权
- 登录ModelArts管理控制台;
- 在ModelArts管理控制台的左侧导航栏,找到“全局配置”并单击进入;
- 在“全局配置”页面,单击“添加授权”。
- “授权对象”:选择需要授权的“用户名”。
- “委托类型”:新增委托。
- “权限配置”:普通用户。
其他选择项默认即可,然后勾选“我已经详细阅读并同意《ModelArts服务声明》”,单击“创建”。
图3-1:授权配置
4.授权成功之后,返回“全局配置”列表,可查看到此帐号新增的委托授权数据。
图3-2:“全局配置”列表
进入实验
完成前置工作之后,就可以正式进入实验了。
步骤1:订阅模型
- 搜索“商超商品识别”模型
有两个搜索的入口
入口一:单击商超商品识别模型链接,进入模型详情页。
入口二:在ModelArts管理控制台的左侧导航栏,找到“AI Gallery”,单击进入。在“AI Gallery”页面,选择“资产集市 > 模型”,搜索“商超商品识别”,单击名称进入模型详情页。
图3-3:ModelArts管理控制台的“AI Gallery”入口
图3-4:“AI Gallery”页面“资产集市 > 模型”入口
- 订阅“商超商品识别”模型
在模型详情页,单击“订阅”,阅读并勾选同意《数据安全与隐私风险承担条款》 和 《华为云AI Gallery服务协议》,单击“继续订阅”。完成“商超商品识别”模型的订阅。
图3-5:“商超商品识别”模型详情页
订阅模型完成后,页面的“订阅”按钮会显示为“已订阅”,并展示控制台入口。
3.从模型详情页进入ModelArts控制台的订阅列表。
在模型详情页,单击“前往控制台”。
图3-6:前往控制台
在弹出的“选择云服务区域”页面选择ModelArts所在的云服务区域,单击“确定”。
图3-7:选择云服务区域
跳转至ModelArts控制台的“AI应用管理 > AI应用 > 我的订阅”页面。
图3-7:“我的订阅”页面
步骤2:使用订阅模型部署在线服务
模型订阅成功后,可将此模型部署为在线服务。
- 在“AI应用管理 > AI应用 > 我的订阅”页面,单击模型名称前面的“展开按钮”,在展开的版本列表中单击“部署 > 在线服务”跳转至部署页面。
图3-8:在线服务入口
- 在部署页面,参考如下说明填写关键参数。
- “名称”:自定义一个在线服务的名称,也可以使用默认值,此处以“商超商品识别服务”为例。
- “资源池”:选择“公共资源池”。
- “AI应用来源”:默认“我的订阅”。
- “选择AI应用及版本”:默认“商超商品服务 1.0.0”。
- “计算节点规格”:在下拉框中选择“[限时免费]CPU:1 核 4GB”资源,同时勾选“我已阅读并同意以上内容”。
其他参数可使用默认值。
图3-9:部署配置
- 参数配置完成后,单击“下一步”,确认规格参数后,单击“提交”启动在线服务的部署。
图3-10:配置确认
- 返回“部署上线 > 在线服务”页面,等待服务服务状态变为“运行中”时,表示服务部署成功。
预计实验时长4分钟左右。
图3-11:“在线服务”页
步骤3:预测结果
- “部署上线 > 在线服务”页面,单击“预测”进入服务详情进行预测。
图3-12:预测入口
- 在“预测”页签,单击“上传”,上传一个测试图片,单击“预测”查看预测结果。
为了实验预测的准确性,我进行了多次实验。
第一次,我上传的是一个橙子的图片,预测结果准确。
图3-12:预测结果
第一次,我上传的是一堆柠檬的图片,预测结果依旧准确。
图3-13:预测结果
步骤4:清理资源
在体验结束后,进行服务的删除操作,释放资源。
在“在线服务”列表,单击对应服务操作列的“更多 > 删除”。
图3-14:删除入口
体验及建议
首先来说体验感受,ModelArts的商超商品识别速度还是很快的,而且配置的流程也十分的简单,预测前基本没有流程卡顿的地方,操作界面也十分的友好。
但还是有些阻塞的地方:
1、预测的准确性有待提升
我做了多次的预测,有些识别结果有误差,比如我下面是一堆橙子的照片,但是识别的是柠檬。
图4-1:预测结果偏差
2、文档有些必要的入口没有加跳转链接操作不便
在步骤1中,“AI Gallery”其实可以加跳转链接,这是一个比较独立的页面,链接上没有什么特别的参数。
图4-2:文档截图
总结
完成一键完成商超商品识别模型部署的实验之后,对华为云ModelArts提供的图片识别功能有了初步的了解。
华为云ModelArts的实用性还是很高的,提供的海量数据的预处理,搭建便捷,使用简单。
接下来,我准备研究华为云ModelArts智能识别的功能,提升识别的准确性。
通过借力华为云ModelArts,帮助我们的新零售电商快速的实现业务功能。
未来,也期待与华为云ModelArts一起实现更多的可能。
作者:非职业「传道授业解惑」的开发者叶一一
简介:「趣学前端」、「CSS畅想」系列作者,华夏美食、国漫、古风重度爱好者,刑侦、无限流小说初级玩家。
如果看完文章有所收获,欢迎点赞👍 | 收藏⭐️ | 留言📝。
相关文章:

ModelArts加速识别,助力新零售电商业务功能的实现
前言 如果说为客户提供最好的商品是产品眼中零售的本质,那么用户的思维是什么呢? 在用户眼中,极致的服务体验与优质的商品同等重要。 企业想要满足上面两项服务,关键在于提升效率,也就是需要有更高效率的零售&#…...

Qt/C++音视频开发65-切换声卡/选择音频输出设备/播放到不同的声音设备/声卡下拉框
一、前言 近期收到一个用户需求,要求音视频组件能够切换声卡,首先要在vlc上实现,于是马不停蹄的研究起来,马上查阅对应vlc有没有自带的api接口,查看接口前,先打开vlc播放器,看下能不能切换&…...

MySQL原理(一)架构组成之逻辑模块(1)组成
总的来说,MySQL可以看成是二层架构,第一层我们通常叫做SQL Layer,在MySQL数据库系统处理底层数据之前的所有工作都是在这一层完成的,包括权限判断,sql解析,执行计划优化,query cache的处理等等&…...

一、cadence PDK 自学笔记-心法
我这边ADS /Cadence PDK基本大部分都是自学完成的。 当然也非常感谢我的前同事周**的帮忙,教了我很多基础的。另外也感谢我现在同事,李**和程*的帮忙,学习了很多cad的视角。 其实对于自学写PDK的小伙伴,一般都要如何学习呢&…...

防御保护--NAT策略
目录 NAT策略 NAT类型 server-map表 P2P --- peer to peer 网络类型 编辑 目标NAT--服务器映射 双向NAT 编辑 多出口NAT NAT策略 静态NAT --- 一对一 动态NAT --- 多对多 NAPT --- 一对多的NAPT --- easy ip --- 多对多NAPT 服务器映射 源NAT--基于源IP地址进行转…...

【C++】C++入门 — 指针空值nullptr
C入门 指针空值 指针空值 在良好的C/C编程习惯中,声明一个变量时最好给该变量一个合适的初始值,否则可能会出现 不可预料的错误,比如未初始化的指针。如果一个指针没有合法的指向,我们基本都是按照如下 方式对其进行初始化: voi…...

Vue3+Koa2实现图片上传(不再畏惧)
大家好,我是勇宝,一个热爱前端的小学生,年关将至,提前祝大家新年快乐。今天呢,我们就来好好的啃一啃图片上传,从一个前端开发者的角度来探讨一下图片上传前后端到底都做了哪些事情。 文章目录 一、技术摘要…...

wsl-ubuntu 安装 nginx
wsl-ubuntu 安装 nginx 1. 安装 nginx2. 确认 nginx 启动状态3. 重启 nginx4. 停止 nginx 1. 安装 nginx sudo apt install nginx2. 确认 nginx 启动状态 systemctl status nginx3. 重启 nginx systemctl restart nginx4. 停止 nginx systemctl stop nginx完成!…...

重学Ajax
摘要:AJAX是一个在前端的应用非常广泛技术,为什么还要谈它呢?么得办法之前学的不全面,再收拾收拾。水平有限,欢迎指正! AJAX(全称:Asynchronous JavaScript and XML)是一…...

springboot3+vue3支付宝交易案例-结算支付
springboot3vue3支付宝交易案例-结算支付!今天下午整理了一下结算的内容。遇到了很多问题。汇总分享给大家。 第一个问题:支付宝结算后,返回的交易编码,和交易时间,交易状态,都应该使用varchar来存。 第二…...

c语言 ceil() 函数
ceil()是C语言中的一个数学函数,用于向上取整。它的函数原型定义在math.h头文件中。 ceil()函数的作用是返回一个大于或等于给定参数的最小整数值,即将参数向上取整到最接近的整数。返回值的数据类型为double。 以下是ceil()函数的函数原型:…...

virtualBox虚拟机安装ubuntu后的必要配置
1. 使能双向copy 粘贴功能。在device menu的 shared clipboard项, 选bidirectional. 2.启用共享文件夹。 在device 菜单的 shared folder 项配置, (对于日期乱码问题和命令行打不开的问题请见ubuntu18.04安装后时间日期乱码及terminal打不开解决方法_电脑日期变成…...

《Pandas 简易速速上手小册》第6章:Pandas 时间序列分析(2024 最新版)
文章目录 6.1 时间序列数据基础6.1.1 基础知识6.1.2 重点案例:股票市场分析6.1.3 拓展案例一:温度变化分析6.1.4 拓展案例二:电商平台日销售额分析 6.2 日期与时间功能6.2.1 基础知识6.2.2 重点案例:活动日志分析6.2.3 拓展案例一…...

滇西科技师范学院食堂大宗物资采购项目(冰冻制品类)招标公告
滇西科技师范学院食堂大宗物资采购项目(冰冻制品类)招标公告 (招标编号:YDZOH20240158) 项目所在地区:云南省,临沧市,市辖区 一、招标条件 本滇西科技师范学院食堂大宗物资采购项目(冰冻制品类)已由项目审批/核准/备案机关批准,项目资金来源为…...

(2024,SaFaRI,双三上采样和 DFT,空间特征和频率特征)基于扩散模型的图像空间和频率感知恢复方法
Spatial-and-Frequency-aware Restoration method for Images based on Diffusion Models 公和众和号:EDPJ(进 Q 交流群:922230617 或加 VX:CV_EDPJ 进 V 交流群) 目录 0. 摘要 3. 方法 3.1 修改数据保真度 3.2 …...

【Linux】环境基础开发工具的使用之gcc详解(二)
前言:上一篇文章中我们讲解了Linux下的vim和yum的工具的使用,今天我们将在上一次的基础上进一步的讲解开放工具的时候。 💖 博主CSDN主页:卫卫卫的个人主页 💞 👉 专栏分类:Linux的深度刨析 👈 Ὂ…...

go语言-用channel控制goroutine的退出
用channel控制goroutine的退出 本文简要介绍了,如何用channel控制goroutine的退出的基本方法 for-range主动停止goruitine package mainimport ("fmt""sync""time" )/* Go并发编程模型:主动停止goroutine 方法一&#…...

强大的虚拟机Parallels Desktop 19 mac中文激活
Parallels Desktop是一款功能全面、易于使用的虚拟机软件,它为用户提供了在Mac电脑上同时运行多个操作系统的便利。 软件下载:Parallels Desktop 19 mac中文激活版下载 Parallels Desktop 19 mac具有快速启动和关闭虚拟机的能力,让用户能够迅…...

单元测试框架深入(一):单元测试框架深入
一、一个简单的例子 1、引入Maven依赖:JUnit框架和Surefire插件 2.在src/test/java目录下新建名字以“Test”结尾的测试类,并用Test注释测试方法 3.运行单元测试用例 或用mvn命令运行单元测试: 二、单元测试基础之单元测试框架:J…...

苏门X学士常识学习
前言 苏轼(1037年—1101年)是北宋的文坛领袖,很喜欢奖掖后进。其门下最有名的是“苏门四学士”,另外还有“苏门六学士”和“苏门后四学士”之说。 一、苏门四学士 苏轼在《与李昭玘书》中说: 轼蒙庇粗遣࿰…...

MD5算法:高效安全的数据完整性保障
摘要:在数字世界中,确保数据完整性和安全性至关重要。消息摘要算法就是一种用于实现这一目标的常用技术。其中,Message Digest Algorithm 5(MD5)算法因其高效性和安全性而受到广泛关注。本文将详细介绍MD5算法的优缺点…...

JavaScript基础五对象 内置对象 Math.random()
内置对象-生成任意范围随机数 Math.random() 随机数函数, 返回一个0 - 1之间,并且包括0不包括1的随机小数 [0, 1) 如何生成0-10的随机数呢? Math.floor(Math.random() * (10 1)) 放大11倍再向下取整 如何生成5-10的随机数&…...

curl之网络接口
Curl_cftype 连接接口定义 struct Curl_cftype {const char *name; /* name of the filter type */int flags; /* flags of filter type */int log_level; /* log level for such filters */Cu…...

Pytest中doctests的测试方法应用
在 Python 的测试生态中,Pytest 提供了多种灵活且强大的测试工具。其中,doctests 是一种独特而直观的测试方法,通过直接从文档注释中提取和执行测试用例,确保代码示例的正确性。本文将深入介绍 Pytest 中 doctests 的测试方法,包括基本用法和实际案例,以帮助你更好地利用…...

Android 8.1 铃声音量通话音量同步调节
Android 8.1 铃声音量通话音量同步调节 最近收到客户反馈,想要实现铃声音量通话音量同步调节,具体修改参照如下: /frameworks/base/core/java/android/preference/SeekBarVolumizer.java if (defaultUri null) {if (mStreamType AudioMan…...

C++——字符串string
C——字符串string C语言中对字符串的表示通常用指针,新手会面临内存泄漏或者段错误等众多问题。 在 C 中, string 类是标准库的一部分,用于表示和操作字符串。它是对传统的 C 风格字符串(以空 字符 ‘\0’ 结尾的字符数组&…...

HBuilder使用[微信小程序开发者工具] 显示 × initialize报错
解决办法 我们先要单独打开 微信开发者工具 点击设置里面的安全,把服务器端口打开 然后再回到我们的HBuilder使用重新打开打开 成功打开...

洛谷P8599 [蓝桥杯 2013 省 B] 带分数
[蓝桥杯 2013 省 B] 带分数 题目描述 100 100 100 可以表示为带分数的形式: 100 3 69258 714 100 3 \frac{69258}{714} 100371469258。 还可以表示为: 100 82 3546 197 100 82 \frac{3546}{197} 100821973546。 注意特征:带分…...

grafana安装DevOpsProdigy KubeGraf 1.5.2
安装DevOpsProdigy KubeGraf需要安装kube-state-metrics 官方地址:https://github.com/kubernetes/kube-state-metrics/tree/release-2.10/examples/standard 查看k8s版本和kube-state-metrics对应版本: [rootmaster1 kube-state-metrics]# ll 总用量 …...

大数据 - Hadoop系列《三》- MapReduce(分布式计算引擎)概述
上一篇文章: 大数据 - Hadoop系列《三》- HDFS(分布式文件系统)概述-CSDN博客 目录 12.1 针对MapReduce的设计构思 1. 如何对付大数据处理场景 2. 构建抽象编程模型 3. 统一架构、隐藏底层细节 12.2 分布式计算概念 12.3 MapReduce定义…...