自製樹莓派“防鬆鼠神器”在Reddit火了13行代碼就能讓AI替你護食
沒想到,有一天樹莓派還能用在給鳥護食上!看這只松鼠抱著糧吃的正香……突然!就來了一股水流把它噴走了:再來一次?還是沒能倖免,繼續被水噴中:
此時鬆鼠內心OS:誰這麼閒每天沒事噴勞資???
原來,這是一位小哥用樹莓派做出的餵鳥器保護器。因為自己後院鳥兒餵食器的糧被松鼠頻頻偷走,這位小哥賭上自己機器學習愛好者的尊嚴,開發了這個新裝置。
它能夠讓攝像頭每30 秒拍下一張照片,然後由CV 算法來檢測餵鳥器上是否有鬆鼠。如果有的話,信號就會發送給花園裡的電控水龍頭,讓它朝著餵鳥器噴水趕走松鼠。而做出這個設備,小哥用到的AI 模型只需13 行代碼就能搞定,訓練甚至只花了45 分鐘。效果也是立竿見影的,用了幾個星期後,松鼠造訪的頻率直線下降。
嗯,此刻可能更多要心疼小哥家附近的松鼠了。
“13 行代碼+ 樹莓派”趕走松鼠
效果這麼好的設備,做起來難嗎?
非常easy,一共只需3 步:
第一,讓攝像頭每30 秒拍下一張照片;
第二,將照片發送到AWS Lambda 端點,在端點上使用訓練好的AI 模型檢測照片;
第三,如果檢測到照片中有鬆鼠,設備就會將信號發送給電控水龍頭的開關,這時花園中的噴頭就會持續噴出幾秒鐘水流趕走松鼠。
大概效果就是這樣:
判斷畫面中是否有鬆鼠,靠的則是小哥自己用fast.ai 訓練的一個模型。
他首先自己收集了一個數據集—— 連續幾個星期讓相機每30 秒就拍一次照片,然後手動將照片分類為“有鬆鼠”和“沒有鬆鼠”兩類。之後用這個數據集來訓練模型,小哥是在Google Colab 上搞定的。一共只有13 行代碼,訓練全程花了大約45 分鐘。硬件端,這套設備運行的核心是一個帶有攝像頭的樹莓派,在亞馬遜商店能直接買到。
由於在試驗過程中弄出了短路、不小心燒壞了自己的Pi 4,所有小哥不得不用Pi 2+AWS Lambda 的方式來完成整個推理過程。
在實際使用過程中,如果模型判斷照片中有鬆鼠的置信度超過70%,就會啟動裝置。同時它還會拍下視頻和照片,這樣小哥就能從歷史記錄中看到模型是否判斷正確了。
小哥表示,這套裝置的準確率為86.6%,趕走大部分來訪的松鼠沒什麼問題,但也有失誤的時候。從總共記錄的321 次防禦中可以看到,其中有43 次判斷失誤。有時畫面中是鴿子在吃東西、有時畫面中什麼都沒有,有時則是小哥本人路過了那一區域,設備也噴出了水流。針對鴿子的情況,小哥猜測可能是自己做數據集那段時間,很少有鴿子光顧他的餵食器,所以導致模型判斷有誤。其中有一天設備則一直在噴水,無論餵食器上站的是鳥還是松鼠,或者什麼都沒有。後來小哥發現,這是因為有樹枝剛好擋在了松鼠平常會出現的位置上。
整體來看,這套設備一共花費了大約50 美元,也就是人民幣300 多塊。主要用來購買硬件設備,AWS Lambda 則是小哥白嫖的(doge)。
小哥本職是位記者
最後來介紹一下這套設備的主人Jeremy B. Merrill,他是華盛頓郵報的一位記者,平常會用機器學習、數據分析來寫一些調查新聞。
他的傑作也吸引了不少網友的關注,Reddit 上熱度300+。不少人受到他的啟發,想通過類似的方法搞定後院裡亂竄的松鼠、野貓。是時候做出一個貓屎爆破神器阻止野貓來我的花園便便了!
也有人腦洞大開,認為長此以往松鼠會覺得這是個不錯的水源地,總之就還是要經常造訪了。
看來,各種突然造訪的動物們的確有夠讓歪果人頭痛的。
此前YouTube 上有一位博主在後院做了一套非常複雜的設備,就是為了來惡搞突然來搗亂的松鼠。
相比之下,用AI 識別然後精準“打擊”的方法似乎實用性更強。由於最近已經入冬,小哥暫時停用了這套設備,松鼠也鮮少造訪了,他表示之後天氣轉暖還會繼續用下去。不知重新啟動後的效果會是如何呢?蹲個後續~
參考鏈接:
[1] https://jeremybmerrill.com/blog/2022/01/squirrel-soaker-9000-repelling-squirrels-with-ai.html
來源:量子位