跳到主要內容

發表文章

精選

當相機學會像神經元一樣「放電」:事件相機如何讓會飛的機器,在高速與黑暗中依然看清自己怎麼動

故事的開頭是這樣的:一隻蒼蠅在你伸手要拍牠的那一瞬間,總是能算準你的手是從哪個方向、用多快的速度逼近,然後搓搓手從容閃開。牠的腦袋明明只有針頭大、神經元數量比你手機裡的電晶體少了不知幾個數量級,卻能在毫秒之內解算出「我和這隻手的相對運動」。反觀鴿子的腦袋有一顆葡萄乾大,卻不知道牠會不會苦惱自己的腦容量太小…不,我是說,反觀我們花大錢做的無人機,叫它「只靠一顆相機,告訴我你現在自己飛得多快、轉得多急」,它在光線好、飛得慢的時候還行,一旦飛快一點、或鑽進忽明忽暗的環境,畫面就糊成一團,當場「天黑請閉眼」給你看。 差別到底在哪?這篇要談的,就是一群研究者怎麼讓相機「別再用拍照的方式看世界,改用神經元的方式看世界」,而這個研究方向最近真的很夯。 一、先講老地基:相機是怎麼「感覺到自己在動」的 要讓機器知道自己怎麼動,最便宜的辦法是「光流 (optical flow)」:看畫面上的紋理往哪個方向、流多快,然後反推出「我自己」自身是怎麼平移、怎麼旋轉的。這套思路的數學地基,是 1981 年 Lucas 與 Kanade 立下的(沒錯,雖然不是宋朝人,但仍然比在座很多讀者都老)。它的第一塊磚叫「亮度恆定假設」,也就是假設畫面中同一個點,這一幀和下一幀的亮度並不會改變。把它做一階泰勒展開,會得到一條乾淨的式子:Ix u + Iy v + It = 0 (這邊Ix, Iy 是空間上的亮度梯度,It 是兩幀相減的時間梯度,(u, v) 是我們想求的流。)這條式子怎麼來的,本系列就不在這裡推導了,畢竟篇幅字數限制又不是三十萬字,建議各位若真的好奇,下次去機車行更換機油時,順口請師傅一邊鎖螺絲一邊幫你展開即可。 圖一、孔徑問題示意圖 (aperture problem,圖案取自維基百科https://en.wikipedia.org/wiki/Motion_perception#The_aperture_problem) 但這條式子有個要命的地方:「一個像素只有一條方程,卻有兩個未知數」。施文彬說過:「其實一個人的生活也不算太壞,只是要兩個人才能夠談戀愛[1]」,這就是著名的「孔徑問題 (aperture problem) 」:透過小孔看一條移動的直線,你永遠分不清它到底是往哪滑。對此Lucas–Kanade 的解法很務實:「啊那不然我們就假設一小塊鄰域裡大家動得一樣好了!」。於是窗內幾十...

最新文章

解密 RC-HC 儲備池運算:機器人如何長出大腦般的隱含空間直覺?

機器狗學走路的秘密:為何科學家要給它裝上「第二個大腦」?

SparkVSR:讓使用者也能參與的影片畫質修復技術

在充滿不確定的世界中尋找最佳解

「動態重塑的藝術:回聲狀態網絡中的 AFRICO 自適應機制 」類腦運算的優化 - ESN 的 feedback framework

神經元裡的「加速度感測器」:樹突如何判斷重要訊號?

為什麼我們移動時,眼前的世界不會糊成一團?

視交叉上核如何從多樣性中編織時間?

如何讓神經網路不只是算出答案,而是能穩定地往目標狀態前進?

如何讓 ESN 擁有估計機率分佈的能力