点击上方“计算机视觉life”,选择“星标”

快速获得第一手干货

本文授权自机器之心。

最近,菜鸟全球科技挑战赛总决赛落幕。赛题「智能体积测量」关注物流要素「长宽高」进行数字化,希望引起技术人才对物流业的关注。在总决赛中,10 支队伍共同展示了各自的解决方案,并现场测量不同的物体。第一名「泰坦」队获得 30 万奖金、第二名「VMeasure」获得 20 万奖金、第三名「Wonder」则获得 10 万奖金。

这是一场相当硬核的挑战赛,解决的也是物流行业的痛点问题。

面向未来物流的赛题

作为一场科技竞赛,高额的奖金不仅在告诉我们赛题难度有多大,也在暗示:体积测量这件事非常重要。但对于大多数人而言,我们并不清楚它的重要性。自动测量的意义主要体现在物流的仓储、运输和派送三个环节。

自动准确测量物体体积后,我们就能合理规划包装的耗材,从而大大降低包装成本。在运输中,如果知道每一件商品的正确体积,那么分配运输工具就非常方便了。在物流的派送环节中,准确知晓商品尺寸可以让快递员有规划地将货物投递到不同尺寸的快递箱中,帮助节约存储空间与效率。

这就是本次竞赛的赛题:「对于规则的箱体(如天猫超市纸箱)和不规则物体(如洗衣液、篮球),通过手机拍摄图像,获取其最小外接长方体的长、宽、高尺寸(单位 mm),计算其体积(长×宽×高)。根据测量值与被测物体的真实尺寸差值,评估其测量精度。」

挑战赛设定被测物体在 50mm 到 500mm 之间,且它们都是在空旷的平面上完成测量。在实际测量时,比赛要求选手通过普通手机「自动」测量出物体的垂直高和最小外接矩形的长宽。虽然描述很简单,但其中有三个关键点,即普通手机、自动化和求最小。

  • 首先必须是普通手机,我们需要确保可以在市面上买到,且不能定制化或增加外部装置,例如手持云台或外接深度传感器等。

  • 其次是自动化,赛会希望解决方案能自动采集并求出被测物体的体积。因此我们在测量时并不能标记被测物体,或者使用某些具有测量功能的 APP。理想状态下,手机只要拍几张照或一个小视频,就能立即给出被测物体的长宽高。

  • 最后,在通过最高点求出被测物体的高之后,挑战赛要求我们求最小外接矩形作为长和宽。即将物体投影到水平面后,边界框的面积应该是最小的。

本次比赛要求「手机级普适性」。实际上目前使用深度相机的测量方案已经非常成熟,但成本较高,应用还不够广泛。如果能够使用普通手机测量,可以加速应用。这也显示出菜鸟有意在引导技术人才关注物流实务。

下图展示的是决赛中的被测物体。分别是两种规则、不规则物体:

解决方案:三维重建是核心

在进入决赛的前十组选手的展示中,我们可以看到很多不同的解决方案。很多选手通过 visual (即时定位与地图构建)重建 3D 点云,再结合惯性测量单元(IMU)或标志物而获得 3D 点云的实际尺度;也有选手通过被测物体和标志物重建出深度图,然后融合不同的深度图而构建真实尺度的 3D 点云。这两类方法都可根据 3D 点云计算最小外接立方体。

尽管十支团队的方案各有各的特点,但它们都遵循一个基本的解题思路:先获得被测物体在像素空间中的信息,再获得被测物体在真实世界中的尺寸信息,最后计算被测物体的最小外接立方体。

根据测量精度、设备普适性和技术创新性等多个维度,评审们最终选出排名前三的解决方案。

决赛评委阵容。

第一名:基于全局姿态与 MVSNet 的体积测量

第一名方案是由东华大学等院校的在校师生完成的,他们的方法只需标志物和图像信息就能预测被测物的真实尺寸。在这种方案下,我们可以在被测物周围放几张打印的标志物,然后从多个视角拍摄多组图片,这些图片能通过 MVSNet 生成多视角深度图。最后,对不同视角的深度图进行滤波与融合操作,模型就能重建带尺度的 3D 稠密点云。下图展示了该方案的主要流程:

东华大学蔡棽老师表示,对比 ARKit 等结合 vSLAM 和 IMU 的方案,他们方法最大的优势在于重建完整度高。其中 vSLAM 在鲁棒性上有很多劣势,即使在位移和旋转都比较小的情况下,它还是会丢弃一些无纹理物体。这主要是因为 vSLAM 并不追求重建精度,它是一种稀疏重建,因此在算外接立方体时容易产生误差。

因此我们需要 SFM(Structure from Motion)这种关注鲁棒性点云重建方法,它在精度上比传统 vSLAM 和基于 AR SDK 的方法高。开发者们也正是沿着 SFM 与 MVS 这一思路走下去,从而重建稠密的 3D 点云。相比传统的 MVS 算法,新方法在保持重建准确度的同时,极大地提高了模型的重建完整度。

当然,这种重建完整度很大程度上都是由 MVSNet 带来的,它不仅效果好,运行速度也比之前的 state-of-the-art 快了数倍。

通过基于标定板的精确外参数标定方案,开发者在解决 vSLAM 算法的不鲁棒性、SFM 算法两两特征匹配的计算耗时问题,重建精度、鲁棒性、运行速度等各方面都基本满足了实际测量需求。特别的是,对于无纹理的日常超市物体,该方法仍然适用。

手机摇一摇,极速测体积

如果说第一名团队重点关注测量精度与效果,那么第二名团队 VMeasure 则着重打造一个便捷、快速的解决方案。它的 APK 安装包只有 4.3MB,且无需辅助计算设备、参照物,就可离线使用。这支队伍的方法平均测量时间在 10 秒以内,且对于纹理比较丰富的物体,误差能控制在 5% 以内。

更重要的是,他们设计的应用有一个刷新键,当我们对测量结果不满意时,点击按钮就能快速生成更加完善的立方体。用户根据可视化结果决定是否刷新测量的立方体,因此正确测量的概率要高得多。

既然要面向应用,那么算法就应该简洁一些。VMeasure 的思路非常清晰,首先基于 ARCore 完成立体重构,然后再计算最小外接立方体。

其中对于 ARCore 的调用,模型会根据纹理特征确定关键点,在手机围绕被测物体拍摄时,这些关键点会产生位移或视差信息,它们再结合 IMU 传感器就能获取三维信息了。

手动标数据的体积测量

在第三名 Wonder 队(独立参赛者)的解决方案中,选手从一个非常直观的想法出发,探讨怎样分两步解决体积测量问题。即先感知被测物体在像素空间中的位置与大小,然后建立像素世界与现实世界之间的联系。

将这种思想带入到任务中时,就需要设计两个模块:利用目标检测获取边界框,从而快速算出像素上的长和宽;利用 ARKit 内嵌的方法,开发者可以得到屏幕中一个点在现实世界中的大致坐标位置,即建像素与现实尺度的桥梁。

虽然 Wonder 队的做法非常简洁,但它也有非常特殊的地方:选手自行标注了 1700 多张真实图片和 2800 多张合成图片。这些图片模拟了真实场景下利用手机测量体积会拍到的样子,我们可以用来检测目标的边界框。

该队选手表示,这 4500 张图片可用来精调预训练的 MobileNet V2,它可作为主干网络来预测左上和右下两个关键点。因为 MobileNet 是一种非常精简的架构,所以计算力和准确率都能有比较好的保证。

最终,开发者设计方案结合了计算机视觉和 ARKit 技术,所有的测量和计算都发生在手机端,不需要网络和额外的计算资源。

在这场精彩的比赛中,选手们提出的方法各具特色。除体积测量外,物流还有更多的任务需要探讨,例如三维装箱问题。物流业正处于技术大变革中,新兴技术的应用,将加快物流的数智化发展。

欢迎加入公众号读者群一起和同行交流,请扫描微信号加群,备注:学校/公司+研究方向,(按要求备注否则不通过)添加成功后发送“加群”,即可

推荐阅读

实战 | 相机标定

实战 | 图像矫正技术

实战 | Unity下ARKit与OpenCV的结晶

实战 | 基于SegNet和U-Net的遥感图像语义分割

实战 | 文字定位与切割

实战 | 源码入门之Faster RCNN

我用MATLAB撸了一个2D LiDAR SLAM

实战 | 哪个瞬间让你突然觉得CV技术真有用?

干货 | 史上最全 OpenCV 活体检测教程

Google解决单摄像头和物体都运动下的深度估计

关注计算机视觉life,加星标,获取最新AI干货~

最新AI干货,我在看  

opencv 通过标定摄像头测量物体大小_解决方案 | 如何用普通手机准确测量物体体积?...相关推荐

  1. opencv 通过标定摄像头测量物体大小_视觉激光雷达信息融合与联合标定

    点击上方"新机器视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 编者按 最近在为车辆添加障碍物检测模块,障碍物检测可以使用激光雷达 ...

  2. opencv 通过标定摄像头测量物体大小_激光三角测量法在工业视觉检测上的应用...

    来源:公众号|3D视觉工坊(系投稿) 作者:白杨 「3D视觉工坊」技术交流群已经成立,目前大约有12000人,方向主要涉及3D视觉.CV&深度学习.SLAM.三维重建.点云后处理.自动驾驶.C ...

  3. 测量角速度_自动驾驶系统的定海神针—惯性测量单元

    业界对自动驾驶汽车何时开始商用化的预测从未停止.是2021年?2025年?还是2030年- 事实上,L4级自动驾驶汽车已经出现.在美国亚利桑那州凤凰城的路上,数十辆Waymo One旗下自动驾驶汽车已 ...

  4. 用手机怎么测量米数?这个方法看了就掌握

    在某些场合下,我们需要测量一段距离的长度,但是手头没有专业的测量工具,这时候我们可以利用手机来进行测量.本文将介绍如何通过手机来测量米数,并解释其基本原理. 测量米数的场景 在生活中,我们经常需要测量 ...

  5. android手机量体温,手机体温测量软件

    手机体温测量软件app是一款测量体温的软件,很多人应该不知道,手机也能测量体温?是的你没有听错,只要你有一部智能手机,你就能将手机温度计使用,测量自己的体温,快来下载手机体温测量软件app测量你的体温 ...

  6. OpenCV相机标定与畸变校正

    点击我爱计算机视觉标星,更快获取CVML新技术 本文转载自OpenCV学堂. OpenCV单目相机标定,图像畸变校正 相机标定定义与原理 01 在图像测量过程以及机器视觉应用中,为确定空间物体表面某点 ...

  7. 使用OpenCV进行标定(Python)

    使用OpenCV进行标定(Python) 原文:http://blog.csdn.net/u010128736/article/details/52875137 本人邮箱:sylvester0510@ ...

  8. python使用opencv_Python使用OpenCV进行标定

    本文结合OpenCV官方样例,对官方样例中的代码进行修改,使其能够正常运行,并对自己采集的数据进行实验和讲解. 一.准备 OpenCV使用棋盘格板进行标定,如下图所示.为了标定相机,我们需要输入一系列 ...

  9. opencv,用摄像头识别贴片元件的定位和元件的角度(转载)

    经过半个月学习opencv有点小成果,用摄像头识别贴片元件的定位和元件的角度(转载) (2013-04-17 16:00:22) 转载▼   分类: 学习笔记 先说一下 开源的opencv真是一件伟大 ...

最新文章

  1. Java的Executor框架和线程池实现原理
  2. 学Java好不好?从业方向都有哪些?
  3. layui 如何去dom_常用元素操作 - layui.element
  4. Android五天乐(第三天)ListFragment与ViewPager
  5. 自学python买什么教材-从自学到编写大学python教材——低调quot;虫师”谢乾坤
  6. CF739E Gosha is hunting
  7. 关于vs2015无法启动iis服务
  8. python删除数据框中的字符串列_如何根据条件删除pandas数据框中的列?
  9. CPDA认证|数据分析师如何撰写数据报告?
  10. excel转置怎么操作_Excel选择性粘贴,那些你不得不会的小技巧
  11. 【C/C++】银行排队系统
  12. lange耦合器设计步骤_耦合器设计--基本理论.ppt
  13. android wifi 共享网络,手机与电脑之间共享网络的设置方法(Android无线网络共享设置指南)...
  14. prisma 连接不上Postgres
  15. 【历史上的今天】6 月 17 日:术语“超文本”的创造者出生;Novell 首席科学家诞生;探索频道开播
  16. 无法在节点上执行物理内存检查
  17. pg_stat_database 视图 tup_returned、tup_fetched 的含义
  18. 【电设】常见线性稳压电源设计 - 基本并联稳压电源-稳压二极管
  19. 21岁被人“封神”,曾一分钟黑了阿里巴巴后台系统!
  20. SRE重案调查组 第二集 | 挖掘应用处理变慢的“真相”

热门文章

  1. 如何建立自动语音问卷外呼系统
  2. 如何看待何恺明最新一作论文Masked Autoencoders?
  3. 高等流体力学复习03
  4. excel - 冻结窗格
  5. Spring Security 实战内容:实现自定义退出登录
  6. 解决:jar解压缩之后,图标变白的问题
  7. 地理信息系统的元数据、主数据、参考数据之间的区分
  8. CC00033.bigdatajava——|Java方法封装.V15|——|Java.v15|费氏数列.v01|递归实现|
  9. 计算机网络实验-->> IP 协议分析
  10. 【Codeforces Round #420 (Div. 2) B】Okabe and Banana Trees