用手机就能实时给图像直线描边,速度不亚于目标检测,在线Demo可玩

苹果/安卓机型都能用

萧箫 发自 凹非寺
量子位 报道 | 公众号 QbitAI

没想到,现在手机上就能做实时线段检测了。

速度丝毫不比目标检测慢,而且检测效果还非常不错:

线段是计算机建立视觉认知的基础元素,利用LSD可以快速检测图像中的直线段,从而根据图像的几何特征设计算法,快速确定目标区域。

△几种不同的线段检测模型效果

虽然之前的线段检测模型也能做到实时性,但往往只有在计算性能不错的GPU上才能实现。

随着机器人用途的多样化,现在就连移动设备(如手机)和嵌入式设备(机器人)也希望能搭载线段检测模型,为机器人视觉研究做准备。

为了满足这些需求,一个名为M-LSD的移动设备实时线段检测模型出现了。

据作者表示,这是首个能在移动设备上运行的线段检测模型,目前已开源

采用单个模块,手机实时预测线段

此前,线段检测之所以复杂,是因为它需要用到很多模块来预测图片中的线段。

如下图,蓝色部分是之前的主流线段检测模型,这些模型的计算量和类型太大,结构还都基于大型模型构造,如基于ResNet50构建的FPN网络、残差U-Net……

这些模型,往往需要对图像进行多个模块的变换,最终才生成线段预测的结果。

然而M-LSD决定只用一个模块,直接生成center/displacement map,从而一步到位预测图像中的线段,极大地降低模型大小。

事实上,这个模型也确实非常小:1~11层基于MobileNet改编,12~16层则是一个自顶向下结构。

没错,一共也才16层结构,只相当于大型线段检测模型体积的2.5%

据论文介绍,相比于其他大型模型(圆圈大小表示模型大小),M-LSD能在线段检测精度几乎保持不变的情况下,将模型运行速度提升至原来的2.3倍+

从图中可见,作者们推出了M-LSD和M-LSD-tiny两个模型,都可以在安卓和苹果机上实时运行。

其中,M-LSD-tiny最快能以56.8FPS48.6FPS的速度在手机上实时运行。

没错,现在AI在手机上给家具直线描边的速度,可能比你还快。

而且只要是直线物体,它都能快速地将轮廓提取出来,就像是我们快速勾勒草图一样。

现在你也可以用手机试一试(项目地址见文末)。

还有网页版在线demo

为了方便效果展示,作者们还推出了一个网页版demo,基于Python的flask框架开发。

打开这个在线demo(传送门见文末)后,就可以在线上传你想要检测线段的图片了。

由于是在网页上运行的,而且生成模型用的是M-LSD,因此检测速度无法达到手机上的实时检测效果(手机版M-LSD检测速度在12.7~26FPS左右)。

不过,网页版M-LSD生成一张线段检测图片,也只需要2.5秒左右。

我们先上传一张室内设计的图片试试。

效果确实不错,直线结构的部分都被勾勒了出来。

不过,线段检测的效果也会出现一些小bug。

例如在图中直线不够明确的时候,容易出现某些线段“漂移”的情况。

团队介绍

这项研究来自有“韩国版百度”之称的韩国最大互联网服务公司NAVER,主职搜索引擎业务。

一作Geonmo Gu,本科毕业于延世大学的电气与电子工程学院,硕士毕业于KAIST,研究方向是计算机视觉。

共同一作ByungSoo Ko,本科毕业于韩国忠南大学、加拿大纽芬兰纪念大学,硕士毕业于KAIST,目前在NAVER就职技术研究工程师。

对线段检测感兴趣的小伙伴,可以戳下方地址用起来了~

在线「线段检测」网页Demo:
https://gradio.app/g/AK391/mlsd

论文地址:
https://arxiv.org/abs/2106.00186

项目地址:
https://github.com/navervision/mlsd

版权所有,未经授权不得以任何形式转载及使用,违者必究。