微信「扫一扫」识物为什么这么快?背后的秘诀竟然是
微信“扫一扫”识物已上线一段时间,受到了外界极大的关注。相比于行内相关竞品的“拍”,“扫一扫”识物的特点在于“扫”,带来更为便捷的用户体验。“扫”离不开高效的移动端物体检测,本文将为你揭秘。
作者 | arlencai,腾讯 WXG 应用研究员
一、背景
“扫”是“扫一扫”识物的亮点,带来更为便捷的用户体验。相比于“拍”的交互方式,“扫”的难点在于如何自动地选择包含物体的图像帧,这离不开高效的移动端物体检测。
二、问题
“扫一扫”识物是一种面向开放环境的通用物体检测——复杂多样的物体形态要求模型具有强的泛化性,移动端的计算瓶颈又要求模型保持高的实时性。
“扫一扫”识物需要一个什么样的移动端检测(Class-wise or Object-ness)呢?
Class-wise 检测(即传统意义上的物体检测)的优势在于同时输出物体的位置和类别,然而开放环境下的物体类别很难准确定义和完整覆盖。
因此,我们将问题定义为Object-ness 检测(即主体检测):只关注是否为物体和物体的位置,并不关心物体的具体类别。
Object-ness 的物体检测对多样化的物体具有更强的普适性,同时大大减轻模型的负担来保证其实时性。这是“扫一扫”识物相比于相关竞品在移动端检测问题上定义的不同。
三、选型
近几年物体检测算法日新月异,面对琳琅满目的检测模型(见图 1),合适的才是最好的。
