机器学习帮你做家务:外国小哥10分钟给袜子自动配对
新智元报道
新智元报道
来源:外媒
编辑:keyu
【新智元导读】打工人下班之后还要为家务发愁?这不,为了摆脱每次都要给洗好的袜子配对的烦恼,一位国外小哥使用机器学习方法,创建了一个可以自动匹配袜子的项目,并且有着神奇的效果。全程操作丝滑,还不快来试试?
你有没有这样的经历?
袜子好不容易洗好了,乱成一团,想好好配对整理时,无论如此都找不到!!!
是不是很心累?
对于那些喜欢积攒袜子并且放在一起洗的人来说,配对袜子简直就是噩梦!
在这一点上,不分国籍,似乎全世界的人都可能有这样的烦恼——
这不,这位国外的小哥也深受困扰:
「我现在又要配对大量的洗过的袜子!图中这还只是其中的一半!上次我花了整整十分钟,来亲手整理这些袜子」
不过,为了改变这种「残酷的现状」,这位小哥随后「化悲愤为力量」,使用机器学习去实现袜子的自动搭配:
「我决定做一件唯一合理的事,用机器学习来匹配袜子。我只给了自己10分钟的时间来完成项目,所以它不会比亲自动手匹配更昂贵。在这个视频中,我会让机器接管我的家务!」
这则用AI帮自己配对袜子的视频已经上传到了YouTube,截至目前,已经收获了千级的观看量:
「头脑风暴」全过程记录:只要找对方法,分分钟消除烦恼
「头脑风暴」全过程记录:只要找对方法,分分钟消除烦恼
这位小哥记录了他在十分钟内完成任务的思考和实践全过程:
“在这个项目中,我决定使用机器学习来配对我的袜子。我只给自己十分钟来完成这个项目,因为10分钟就是我手动整理袜子的时间。
作为一名高级软件工程师,我应该能够在十分钟内使用机器学习自动完成同样的任务——这才公平。
由于我只有十分钟的时间来完成整个项目,我不得不走捷径——
我决定不使用像PyTorch或TensorFlow这样的机器学习框架,相反,我只是在谷歌上搜索「图像模式匹配」,然后就发现了OpenCV。
OpenCV是一个基于各种预训练模型和机器学习算法的计算机视觉库。正如我所发现的,在图像处理和识别方面,它代表着人工智能目前的最高水平。
通过使用OpenCV文档,我设法快速开发出了一个可以成功工作的袜子分类应用程序。
在Manjaro Linux上使用OpenCV制作袜子配对应用是一件轻而易举的事,我只用了八分钟就完成了整个项目。
我认为使用OpenCV构建一个机器学习移动应用程序也会非常快,我也打算在下次洗完袜子之后尝试一下,我也会把它记录下来,并继续发布到YouTube上!”
官网代码通用性佳,袜子配对效果「惊人」
说到具体做法,这位小哥是这么操作的:
在谷歌上搜索「图像模式匹配」时,他发现了热门搜索中的opencv页面。
接着,他在opencv上发现了「特征匹配」的文档说明:
然后发现实例中的代码正好满足了他的需求:
下面是官网上的结果实例:
所以,他就直接下载了opencv相关安装包,并将代码直接用到了自己的袜子配对问题上:
在把单只袜子自身遮挡住之后,他发现,算法可以很好帮他完成袜子配对的问题:
小哥还改了代码中的一行,之后就实现了匹配所有相同袜子对的操作:
是不是很神奇?
而到了这个阶段,项目已经算完成了,而从开始构思到最后整个实现,他只花了8分钟的时间!
下面是他用到的Opencv库地址:
* https://opencv.org
* https://github.com/opencv/opencv
如果你也想试试看,那么就可以遵循下面的步骤,即可解决自己的袜子配对问题:
1、打开
https://docs.opencv.org/master/d5/d6f/tutorial_feature_flann_matcher.html,这个网页记录了「特征匹配」的实例
2、使用包管理器,安装这些包:opencv, opencv-contrib, cmake, make
3、创建一个叫“Matcher”的目录
4、将1中的代码复制粘贴到该目录中名为Matcher.cpp的文件中
5、在Matcher目录下,执行下面命令:cmake . && make && ./Matcher
6、完成,你现在已经有了一个可以工作的图像匹配app
在这里需要提醒的是,这个实例代码用的是尺度不变特征变换的蛮力匹配法,当然,你也可以试着用OpenCV里的深度学习模块,这样,你可以实现更好的效果。
参考链接:
https://www.reddit.com/r/programming/comments/lastj4/ai_socks_matching_app_in_10_minutes/