机器学习帮你做家务:外国小哥10分钟给袜子自动配对

2021-02-27 20:34 865 阅读 ID:256
新智元
新智元

打工人下班之后还要为家务发愁?这不,为了摆脱每次都要给洗好的袜子配对的烦恼,一位国外小哥使用机器学习方法,创建了一个可以自动匹配袜子的项目,并且有着神奇的效果。全程操作丝滑,还不快来试试?


你有没有这样的经历?


袜子好不容易洗好了,乱成一团,想好好配对整理时,无论如此都找不到!!!


是不是很心累?


对于那些喜欢积攒袜子并且放在一起洗的人来说,配对袜子简直就是噩梦!



在这一点上,不分国籍,似乎全世界的人都可能有这样的烦恼——

这不,这位国外的小哥也深受困扰:



「我现在又要配对大量的洗过的袜子!图中这还只是其中的一半!上次我花了整整十分钟,来亲手整理这些袜子」



不过,为了改变这种「残酷的现状」,这位小哥随后「化悲愤为力量」,使用机器学习去实现袜子的自动搭配:

「我决定做一件唯一合理的事,用机器学习来匹配袜子。我只给了自己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/

免责声明:作者保留权利,不代表本站立场。如想了解更多和作者有关的信息可以查看页面右侧作者信息卡片。
反馈
to-top--btn