满地乐高有救了!用乐高拼一台AI识别器:自动分拣所有乐高零件,2...

恋习Python

共 2693字,需浏览 6分钟

 ·

2019-12-23 23:23

4fa0625543044d03fdb9e3eaaca347d6.webp作者:牛婉杨、大萌
来源:大数据文摘


乐高,一款可以充分锻炼人的创造力与想象力的积木玩具,连成年人也对它爱不释手。


乐高重度痴迷者可以对它爱到什么程度呢?
乐高爱好者Mike Doyle曾在2009年美国房产危机爆发时,用上万块乐高积木制作了一栋遭到废弃的房屋;纽约艺术家Nathan Sawaya曾用乐高制作出三维雕塑以及大型马赛克画。


澳大利亚的一位软件工程师Daniel West也同样是乐高爱好者,近日他在推特上发表了他的乐高作品,竟然会动!而且还结合了CNN和3D识别,可以说是玩到了登峰造极的地步!


推特链接:

https://twitter.com/JustASquid/status/1201959889943154688


他花了两年时间,制作出世界上第一台「乐高通用分拣机」,这是一台由AI驱动的自动分拣机,能够识别出任何已生产的乐高零件并将它们归类。
也就是说,再也不用发愁归纳整理零件了!(假装我们也可以拥有这个机器)
话不多说,先来一睹它的风采吧~

原视频:

https://www.youtube.com/watch?v=04JkdHEX3Yk


和屏幕前的你一样,看到这个视频的同学纷纷表示惊叹!


3e4c1cc891a626165403d4e5e8835365.webp

“强大的项目和执行力!以一种实用的方式将乐高和工程学结合在一起了!”


d313cb52caf3ac010f9e9e87e51e1035.webp

“Wow Daniel,太令人印象深刻了!我很惊讶于你的创造力,足智多谋,以及你做的有多酷。我将向我年幼的儿子介绍你所做的,并把你作为他在创造力和毅力方面的榜样!”


甚至已经成功的吸引了金主的注意~

ebc3497b589be7248b7be5a55ca0e0fc.webp

“你好,Daniel。我是Evgeny,Bricklink上最大的二手乐高玩具商店之一的老板。我对这种分类机很感兴趣。我怎样和你联系讨论?”


可见这位小哥的发明真的不一般!想知道他到底是怎么做到的吗?跟随文摘菌的脚步一探究竟吧~

初代乐高分拣机:小哥的灵感来源


Daniel在视频中提到,2011年一位来自日本的乐高爱好者Akiyuki,就曾发明了一款乐高分拣机,那是他最初的灵感来源。当时的分拣机虽然没有那么华丽,但也算很厉害了。

Akiyuki当时的数据库图像较少,而且识别和分拣的速度也比较慢。
原视频:

https://www.youtube.com/watch?v=6lZ9rSZwDzE


如今,Daniel的这台机器由10000多块乐高零件组成,带有6个乐高电机和9个伺服电机,为传送带和搅拌器提供动力。
能够将近3000种乐高零件分拣到18个不同的盒子,每2秒就可以分拣一个零件,这效率可以的!
怪不得Daniel称他的这款分拣机为世界上“第一台乐高通用分拣机”,是因为它使用了最先进的人工智能技术,通过卷积神经网络能够识别和分类任何已经生产出的乐高部件,甚至是机器从未见过的零件。
Daniel也计划在将来公布代码。

How it works?


在过去的两年中,Daniel一直在设计和制造可以识别并分类乐高零件的机器,用了超过10000块乐高零件,终于大功告成!借助计算机视觉算法,可以识别分拣出任何乐高零件。
小哥很有心的把分拣机的实现过程制作成了视频,快来和文摘菌一起看看吧~

原视频:

https://www.youtube.com/watch?v=-UGl0ZOCgwQ

 分拣机的核心部分是“Capture Unit”,一个拥有传送带、照相机和照明灯的小空间。看起来好像没什么大不了,实际上要想让它顺利完成工作,有很多需要注意的事情。
80c9aef611135560fc375ba82408423f.webp
相机会拍摄沿着传送带输送的乐高零件,然后将照片上传到运行着AI算法的服务器,从数千个可能的乐高元素中识别零件。
核心问题是需要将传送带的实时视频流,转换成神经网络可以识别的各个部分的独立图像。
95273b5a84e725ff7c9e93b52b5aae67.webp

最终目标:从原始视频(左)到大小均匀的图像(右),然后发送到神经网络。(动图的速度比实时视频慢了50%左右)


这里用到了目标检测,即检测目标的存在、位置和大小,以便零件在每一帧都能生成边界框。表面上看起来很简单,实际上却困难重重。
要想顺利实现零件的识别与分拣,还有许多需要注意的地方,比如相机的位置和角度;光源要保证充足;另外零件还不能与传送带的颜色一样,否则无法扣除背景,小哥选择的传送带颜色是淡粉色。
9d956c17f499e5e39964a3283fe617db.webp
在训练神经网络上也需要耗费大量时间和精力,什么是神经网络呢?可以把它看作一个虚拟的大脑,它可以通过接受输入并转换成相应的输出来完成特定任务。
一般来说,输入给神经网络的数据越多,它完成任务的能力就越强。乐高分拣机的神经网络是通过输入乐高零件的图像,输出相应零件的编号。
由于乐高的零部件有成千上百种类型,颜色多样,并且从不同角度看形状也不一样。因此,收集正确的训练数据集是整个工作中最难的一部分。小哥在分拣机运行几天后捕获了30万张图像,这是其中的一部分。
504380f26b27f4e6d74ad9e4432f8417.webp
更多相关技术实现的内容,请见以下Daniel West的文章:https://towardsdatascience.com/a-high-speed-computer-vision-pipeline-for-the-universal-lego-sorting-machine-253f5a690ef4

https://towardsdatascience.com/how-i-created-over-100-000-labeled-lego-training-images-ec74191bb4ef


所有乐高爱好者都头疼的一件事


没错,就是分类整理! Daniel有了这个归纳整理小能手,再也不用对着那一桶桶零件发愁了!不过咱也只有眼馋的份啊,想着那些年被堆到桶里的乐高,还是只得长叹一句,唉~ 论乐高到目前为止究竟有多少种零件,还真的找不到确切的数字,因为分类方式不一样,统计出来的种类自然也就不一样,而且似乎每天都有新的乐高零件诞生... 乐高爱好者们只得互相交流,探讨整理乐高零件的心得体会,文摘菌看了一下豆瓣和知乎上广大网友的热心分享,大致的分类方式有按大小分、按颜色分、按系列分,甚至还有按照零件上的颗粒数量分。装零件的器皿多是一些收纳盒,整理箱。 啊,好想把这个工作交给AI啊~ 有网友在Daniel视频的评论区开玩笑道,已经把制作AI乐高分拣机列入他的退休计划了。      eb570c73b120d10141ebb8f7ddf0b630.webp

“这真的太棒了,你要出租吗?我的阁楼里有几千块零件,想想都是噩梦啊。这被列入我的退休计划了!”


乐高:爱我,你怕了吗?
792fec077445c1a017b514e40d4b54de.webp 如果你也玩乐高,欢迎在评论区分享你的看法和经历哦~
相关报道:

https://www.theverge.com/2019/12/11/21011792/lego-ai-universal-sorting-machine


 觉得不错,点个在看呗!
浏览 48
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报