当前位置:网站首页>程序员奶爸自制AI喂奶检测仪,预判宝宝饿点,不让哭声影响老婆睡眠
程序员奶爸自制AI喂奶检测仪,预判宝宝饿点,不让哭声影响老婆睡眠
2022-07-25 12:34:00 【QbitAl】
梦晨 发自 凹非寺
量子位 | 公众号 QbitAI
一位程序员老哥Caleb最近喜得一子,不过烦恼也随之而来。
刚出生的Baby每隔几个小时就要喂一次,夜里饿了就会放声大哭,这时全家都被吵醒,被折腾一晚上睡不好觉。

他咨询了周围有经验的人,得到的建议都是:
忍着,熬过最初几个月就好了。
但Caleb作为程序员可不甘心,开始运用他的工程师思维解决问题。
最终,通过摄像头+AI算法的组合,他搞出一套婴儿饥饿自动检测系统,能在宝宝真正开始哭之前就及时发现。

Caleb让程序一旦判定宝宝的饥饿可能性达到100%,就给他的手机发送通知。

这样他就可以自己悄悄起床去喂奶,用技术力守护了他老婆的睡眠。

这样一套系统也不用从头开发,因为现成的人体姿态检测算法已经很成熟。
比如Caleb用到了谷歌开源的MediaPipe,包括完整的全身姿态、面部网格和手部动作检测。

剩下的问题就是——
AI如何判断婴儿饿了?
在开始动手之前,Caleb先去母婴论坛查阅了大量资料。
根据理论,哭出声代表婴儿已经进入饥饿的后期阶段。此时要想直接喂奶都不太容易,需要先安抚一下宝宝情绪。
饥饿的早期表现还包括咂么嘴(Smacking)或舔嘴唇,反复张嘴闭嘴,吸吮嘴唇、手指或其他衣物玩具等。

Caleb根据观察自家小孩的经验,分别编写代码给这些行为赋予了不同权重。

比如咂么嘴会+10%置信度,把拳头伸到嘴边也要+10%。
而婴儿来回扭头代表正在寻找食物来源,他观察到自家宝宝会根据饥饿程度扭头的频率也不同。
于是他设置在一个短时间段内,扭头越频繁增加的置信度越多。

在此期间,还遇到过婴儿叼着安抚奶嘴会造成遮挡,算法就无法准确识别嘴唇移动的情况。
为此他在开源算法的基础上还重新训练了自己的定制化模型,分别根据叼奶嘴和不叼奶嘴的情况给出置信度。

这个过程中他还发现,宝宝饿极了会把安抚奶嘴吐出去。这个动作会足足增加30%的置信度,代表马上就要哭出声了。
这套系统投入使用以后,确实给Caleb的家庭带来不少好处,他总结道:
宝宝更开心了,大人也能睡得更多一些。
不过,这个故事还没结束……
自动喂奶系统可不可行?
有了软件上的初步成果,并没有满足这位老哥的DIY之魂。
接下来他把这套系统和硬件、机械装置联动在一起,尝试图打造一款全自动喂奶系统。

想法很大胆,不过从结局来看还是有点超纲了。
他也知道这玩意容易出意外,所以先找一个大人扮演婴儿来做实验。

只见他叼着奶嘴模仿婴儿的动作反复扭头咂么嘴,让系统提升置信度,最后把奶嘴吐出去触发系统警报。

接下来发生的事,只能说一句“危险动作,请勿模仿”。

Caleb把这段经历拍成视频分享到网上,在程序员圈、DIY圈都引起了关注。
他透露完成整个开发工作大约只用了50小时,因为MediaPipe开源工具已经非常完善了。
有网友评论说:如果是我来开发这套系统,等我做完孩子已经会打酱油了。

Caleb能做得这么快也是有原因的,目标检测应用的一套开发流程他已经很熟悉了,之前还做过在自家院子里检测狗什么时候拉粑粑。
对于他这种做法,也有人感觉怪怪的。
饿了→必须大哭→得到食物,这应该是学会与周围环境互动、与父母交流的必经阶段,如果只是躺着就能得到食物,是否会影响发育?

另一位网友认为,他从育儿课程上得到的专业建议也是尽力在婴儿哭之前就喂饱他们,所以问题应该不大。

Caleb自己也表示,他和老婆不会完全依赖算法决定给孩子喂食的世界,只是有了AI帮助,他们可以把养孩子做的更有效率。
当然,还有更多感兴趣的网友都在催他:快开源!

视频地址:
https://www.youtube.com/watch?v=Lda1Sq8HRY4
MediaPipe
https://google.github.io/mediapipe/
参考链接:
[1]https://www.reddit.com/r/programming/comments/w58xyn/built_a_hungry_baby_alarm/
边栏推荐
- logstash
- 【AI4Code】《CoSQA: 20,000+ Web Queries for Code Search and Question Answering》 ACL 2021
- Numpy first acquaintance
- 2022河南萌新联赛第(三)场:河南大学 I - 旅行
- 基于Caffe ResNet-50网络实现图片分类(仅推理)的实验复现
- MySQL remote connection permission error 1045 problem
- Deployment of Apache website services and implementation of access control
- go : gin 自定义日志输出格式
- Azure Devops (XIV) use azure's private nuget warehouse
- 跌荡的人生
猜你喜欢

485 communication (detailed explanation)

A turbulent life

Cmake learning notes (II) generation and use of Library

The first scratch crawler

零基础学习CANoe Panel(12)—— 进度条(Progress Bar)

Pytorch project practice - fashionmnist fashion classification

【运维、实施精品】月薪10k+的技术岗位面试技巧

"Wei Lai Cup" 2022 Niuke summer multi school training camp 2 supplementary problem solution (g, J, K, l)

弹性盒子(Flex Box)详解

Use of hystrix
随机推荐
Moving Chinese figure liushenglan
JS sorts according to the attributes of the elements in the array
【运维、实施精品】月薪10k+的技术岗位面试技巧
力扣 83双周赛T4 6131.不可能得到的最短骰子序列、303 周赛T4 6127.优质数对的数目
《富兰克林自传》修身
Deployment of Apache website services and implementation of access control
微软提出CodeT:代码生成新SOTA,20个点的性能提升
I register the absolutely deleted data in the source sqlserver, send it to maxcomputer, and write the absolute data when cleaning the data
The first scratch crawler
【问题解决】ibatis.binding.BindingException: Type interface xxDao is not known to the MapperRegistry.
"Autobiography of Franklin" cultivation
SSTI template injection vulnerability summary [bjdctf2020]cookie is so stable
【11】 Production and adjustment of vector and grid data Legends
If you want to do a good job in software testing, you can first understand ast, SCA and penetration testing
基于Caffe ResNet-50网络实现图片分类(仅推理)的实验复现
2022 年中回顾 | 大模型技术最新进展 澜舟科技
Ecological profile of pytorch
MySQL remote connection permission error 1045 problem
推荐系统-协同过滤在Spark中的实现
Fiddler packet capturing app