0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

用OpenVINO™减少食物浪费,践行科技向善

英特尔物联网 来源:英特尔物联网 作者:Anisha Udayakumar 2022-12-16 14:03 次阅读

作者:Anisha Udayakumar 翻译:张晶

项目背景

你是否知道每年大约有2300亿美元的食物被浪费,其中高达五分之一属于可食用农产品?我们都在自己的家中经历过某种类型的食物浪费,但最大量的浪费发生在杂货店的新鲜食品和农产品区。

长期以来,这么多的食物浪费一直是我关心的问题!在加入英特尔之前,我是一名创新顾问,与多家全球零售客户合作改善运营和客户满意度,那时是我第一次注意到商店里浪费了大量的新鲜食物的时候。基于这样一个事实,与预先包装的食品不同,新鲜农产品没有保质期——这使得预测它何时变质变得极其困难。

由于,使用人工智能等技术让可持续发展成为主流一直是我的梦想,我知道零售商必须有更好的方法来解决这个问题并减少新鲜农产品的浪费,所以,我建立了一个计算机视觉人工智能模型,可以确定农产品的新鲜度,比如西红柿或香蕉等。但是,让 AI 模型实时工作是一个挑战,我意识到提高模型性能对于部署和大规模应用至关重要。

在这篇文章中,我将展示如何使用 OpenVINO工具套件来优化模型和加速人工智能推理计算。

构建模型

通过使用摄像头来监控杂货店的货架,并使用目标检测和识别技术扫描其货物的图像。本文中我使用了一个AI 模型准确识别出农产品区的每一件商品

通过打上标签的图像,目标检测和识别算法能够确定产品是新鲜、损坏还是即将变质。有了这些信息,我们就可以设置自动警报,通知商店经理和零售商是否需要更换产品或需要降价——减少需要丢弃的产品数量。

OpenVINO助力实时推理计算

我的新鲜度识别模型可以分析单件新鲜农产品的图像,如上图所示。为了在现实场景中发挥作用,它必须能够非常快速地区分和标记大型货架上的每一件农产品。

为了构建模型,我使用了 Open Model Zoo 中的 SSDLite MobileNetV2 模型,详情请参考这个 Jupyter notebook 中描述的目标检测和识别程序。

Open Model Zoo github地址:

https://github.com/openvinotoolkit/open_model_zoo/

SSDLite MobileNetV2 地址:

https://github.com/openvinotoolkit/open_model_zoo/tree/master/models/public/ssdlite_mobilenet_v2

Jupyter notebook 地址:

https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/401-object-detection-webcam/401-object-detection.ipynb

虽然我将该程序用于解决食物浪费问题,但它并不局限于解决食物浪费问题。开发者可以很容易地按照详细的源码将其应用到自己的目标检测场景中。

正如我已经提到的,虽然我最初的目标检测模型是准确的,但它检测速度太慢了。一开始,我尝试对模型进行微调,甚至切换到了另一个模型,但这并没有是性能得到很大改善,于是我转向了 OpenVINO,它帮我将推理时间从10秒缩短到了1.5秒

使用OpenVINO的另一个好处是,使模型移植性更好。我的新鲜度检测模型是基于 TensorFlow 构建的,我也可以使用其他框架,如PyTorch、Caffe或PaddlePaddle,并在各种不同的硬件上运行我的模型,如下图所示。

4708635c-7c67-11ed-8abf-dac502259ad0.png

如果你想自己尝试这个方法,这里有两个建议:

1. 首先,正如下面的代码片段所示,使用OpenVINO您只需要六行代码来加载和初始化OpenVINO运行时,并针对指定的硬件编译您的模型,然后将图像数据传递给模型并得到推理结果!

2. 你真正想记住的另一件事是“device_name”部分。OpenVINO让您可以灵活地在许多可能的设备(CPU、集成显卡、独立显卡乃至 FPGA)中选择最符合您的设计性能(吞吐量和时延)目标的推理计算设备。

from openvino.runtime import Core
img = load_img ()
core = Core()
compiled_model = core.compile_model(model=model, device_name=”CPU”)
output_layer = compiled_model.output[0]
results = compiled_model([input_img])[output_layer]

向右滑动查看完整代码

下一步是什么

正如你所看到的,为人工智能应用程序构建软件并不难。真正的诀窍是让它们实时工作。OpenVINO改进了我的人工智能模型的性能,并使我的食物浪费减少应用程序成为现实。

总结一下这个项目中最重要的两个经验:

1. 由于 OpenVINO适用于所有通用框架,所以您可以只需用几行代码来优化现有的模型。

2. 我在这篇文章中介绍的模型不仅仅可用于减少食物浪费,还可以解决 AI 开发者每天面临的许多类似问题。

要了解更多关于如何开始用 AI 和 OpenVINO解决现实世界的问题,请查看英特尔人工智能开发者学习之旅以获得更多的演练和教程,并访问 Open Model Zoo 以利用更多的预先训练和优化的模型。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 英特尔
    +关注

    关注

    60

    文章

    9888

    浏览量

    171533
  • 算法
    +关注

    关注

    23

    文章

    4600

    浏览量

    92647
  • AI
    AI
    +关注

    关注

    87

    文章

    30172

    浏览量

    268430
  • 人工智能
    +关注

    关注

    1791

    文章

    46872

    浏览量

    237595

原文标题:用OpenVINO™减少食物浪费,践行科技向善

文章出处:【微信号:英特尔物联网,微信公众号:英特尔物联网】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    使用OpenVINO™ ElectronJS中创建桌面应用程序

      最近,我完成了一个 demo 演示,展示了 OpenVINO 在 Node.js 框架中的强大功能。得益于与 Electron.js 的集成,该演示不仅能够高效地执行神经网络推理,还提供了交互式
    的头像 发表于 11-25 11:35 77次阅读
    使用<b class='flag-5'>OpenVINO</b>™ ElectronJS中创建桌面应用程序

    使用OpenVINO Model Server在哪吒开发板上部署模型

    OpenVINO Model Server(OVMS)是一个高性能的模型部署系统,使用C++实现,并在Intel架构上的部署进行了优化,使用OpenVINO 进行推理,推理服务通过gPRC或REST
    的头像 发表于 11-01 14:19 189次阅读
    使用<b class='flag-5'>OpenVINO</b> Model Server在哪吒开发板上部署模型

    OpenVINO 2024.4持续提升GPU上LLM性能

    本次新版本在整个 OpenVINO 产品系列中引入了重要的功能和性能变化,使大语言模型 (LLM) 的优化和部署在所有支持的场景中更容易、性能更高,包括边缘和数据中心环境的部署。
    的头像 发表于 10-12 09:41 302次阅读
    <b class='flag-5'>OpenVINO</b> 2024.4持续提升GPU上LLM性能

    OpenVINO2024 C++推理使用技巧

    很多人都使用OpenVINO新版的C++ 或者Python的SDK,都觉得非常好用,OpenVINO2022之后的版本C++ SDK做了大量的优化与整理,已经是非常贴近开发的使用习惯与推理方式。与OpenCV的Mat对象对接方式更是几乎无缝对接,非常的方便好用。
    的头像 发表于 07-26 09:20 790次阅读

    OpenVINO C# API在intel平台部署YOLOv10目标检测模型

    的模型设计策略,从效率和精度两个角度对YOLOs的各个组成部分进行了全面优化,大大降低了计算开销,增强了性能。在本文中,我们将结合OpenVINO C# API使用最新发布的OpenVINO 2024.1部署YOLOv10目标检测模型。
    的头像 发表于 06-21 09:23 948次阅读
    <b class='flag-5'>用</b><b class='flag-5'>OpenVINO</b> C# API在intel平台部署YOLOv10目标检测模型

    如何有效减少PCBA的打样时间

    业务,交期是客户非常关注的点,接下来让我们来谈谈如何有效地减少PCBA打样的生产时间。 有效减少PCBA打样时间的方法 1、对于电子加工行业来说,紧急订单经常发生。为了有效减少PCBA打样的时间,第一件事就是不要在打样操作之外的
    的头像 发表于 06-04 09:27 275次阅读

    解锁LLM新高度—OpenVINO™ 2024.1赋能生成式AI高效运行

    LLM 的发展仍保持着惊人的速度。尽管现有的 LLM 已经具备强大的功能,但通过 OpenVINO™ 的优化和推理加速,可以对这些复杂模型的执行进行精炼,实现更快、更高效的处理,减少计算开销并最大限度发挥硬件潜力,这将直接导致 LLM 实现更高的吞吐量和更低的延迟。
    的头像 发表于 05-10 10:36 491次阅读

    研扬携手英特尔,联合举办创AI百城行(武汉站):OpenVINO™赋能AI于边缘计算平台

    边缘计算作为实现智能化、高效化数据处理的关键技术,日益受到业界的广泛关注。为了进一步推动AI边缘计算技术的发展与应用,3月27日研扬科技与英特尔在武汉共同举办了以“OpenVINO赋能AI边缘计算
    的头像 发表于 04-04 08:05 215次阅读
    研扬携手英特尔,联合举办创AI百城行(武汉站):<b class='flag-5'>用</b><b class='flag-5'>OpenVINO</b>™赋能AI于边缘计算平台

    基于英特尔哪吒开发者套件平台来快速部署OpenVINO Java实战

    OpenVINO 工具套件基于OneAPI开发,可以加快高性能计算机视觉和深度学习应用开发速度的工具套件,适用于从边缘到云的各种英特尔计算平台上
    的头像 发表于 03-21 18:24 1422次阅读
    基于英特尔哪吒开发者套件平台来快速部署<b class='flag-5'>OpenVINO</b> Java实战

    如何避免锡膏的浪费

    锡膏在使用中,有手动印刷和机器印刷。手动印刷要比机器印刷浪费得多一些,但是在机器印刷中也是极为容易出现浪费的。虽说锡膏在使用过程中的浪费是不可避免的,但有些情况是可以控制的,下面由深圳佳金源锡膏厂家
    的头像 发表于 02-23 17:26 371次阅读
    如何避免锡膏的<b class='flag-5'>浪费</b>?

    OpenVINO添加对Paddle 2.5的支持

    我是飞桨黑客马拉松第五期 OpenVINO 赛题获奖者——为 OpenVINO 添加了对 Paddle 2.5 的支持。在此记录下来贡献的过程,希望有更多的同学可以参与到 OpenVINO 的社区
    的头像 发表于 01-19 09:20 606次阅读

    基于OpenVINO™和AIxBoard的智能安检盒子设计

    公共安全问题日益凸显,传统安检手段面临挑战。为提高安检效率和保障公共安全,基于 OpenVINO™ 和 AIxBoard 的智能安检盒子应运而生。
    的头像 发表于 01-18 17:31 790次阅读
    基于<b class='flag-5'>OpenVINO</b>™和AIxBoard的智能安检盒子设计

    如何在MacOS上编译OpenVINO C++项目呢?

    英特尔公司发行的模型部署工具 OpenVINO 模型部署套件,可以实现在不同系统环境下运行,且发布的 OpenVINO 2023 最新版目前已经支持 MacOS 系统并同时支持在苹果 M 系列芯片上部署模型。
    的头像 发表于 01-11 18:07 854次阅读
    如何在MacOS上编译<b class='flag-5'>OpenVINO</b> C++项目呢?

    基于OpenVINO和AIxBoard的智能安检盒子设计

    公共安全问题日益凸显,传统安检手段面临挑战。为提高安检效率和保障公共安全,基于 OpenVINO 和 AIxBoard 的智能安检盒子应运而生。利用深度学习模型和 X 光图像处理技术,该设备能够实时识别危险物品并发出警报,为公共场所、机场等场景提供高效、准确的安检解决方案。
    的头像 发表于 12-25 11:14 512次阅读
    基于<b class='flag-5'>OpenVINO</b>和AIxBoard的智能安检盒子设计

    如何快速下载OpenVINO Notebooks中的AI大模型

    OpenVINO Notebooks是Jupyter Notebook形式的OpenVINO范例程序大集合,方便开发者快速学习并掌握OpenVINO推理程序,并通过Copy&Paste方式将范例中的关键程序应用到自己的AI软件中
    的头像 发表于 12-12 14:40 1080次阅读
    如何快速下载<b class='flag-5'>OpenVINO</b> Notebooks中的AI大模型