0
本文作者: 黃善清 | 2018-12-25 18:08 |
雷鋒網(wǎng) AI 研習(xí)社按: 以 LIDAR 為代表的 3D 傳感器經(jīng)常用于今日的道路場景理解中。在 GPS 與 IMU 的幫助下,我們將大量捕獲的點(diǎn)云注冊到預(yù)先構(gòu)建的 3D 地圖上,再通過復(fù)雜、計(jì)算量大且存儲密集的深度學(xué)習(xí)方法來檢測與分割運(yùn)動中的障礙物。這些方法已經(jīng)被證明是有效的,但是對于一些簡單的問題如「一個物體切入我的車道嗎?」或者「人行道上有人嗎?」,這些計(jì)算卻是不必要的。
因此,嘉賓的團(tuán)隊(duì)提出了一種替代解決方案——「可編程光幕」傳感器(light curtain sensor),該解決方案幾乎不需要增加任何開銷,同時還能具有高能效與靈活性等特點(diǎn)。在本次公開課中,嘉賓將分享關(guān)于這個光幕傳感器的設(shè)計(jì)思路與實(shí)際應(yīng)用效果。
分享嘉賓:
王建,Snap 公司 Research Scientist,卡內(nèi)基梅隆大學(xué)博士,導(dǎo)師是 Aswin Sankaranarayanan 教授和 Srinivasa Narasimhan 教授,主要研究方向?yàn)橛?jì)算機(jī)視覺,三維視覺,計(jì)算攝影等。其研究工作曾在 CVPR、ICCV、ECCV、ICCP 等發(fā)表并且多次獲得 oral presentation 機(jī)會。
公開課回放地址:
分享主題:一種新型光幕傳感器 Light curtain sensor 在機(jī)器人避障和無人駕駛中的應(yīng)用
分享提綱:
傳統(tǒng) 3D 傳感器。
提出的光幕傳感器的原理。
傳感器設(shè)計(jì)和優(yōu)化
展示大量實(shí)驗(yàn)結(jié)果
雷鋒網(wǎng) AI 研習(xí)社將其分享內(nèi)容整理如下:
我們先看一下我們已經(jīng)熟悉的一種電梯里的 light curtain。電梯門的兩邊裝有傳感器,一邊是紅外發(fā)射器,一邊是紅外接收器。當(dāng)有人或物體在電梯門之間阻擋了紅外接收器對紅外光的接收,電梯會立馬知道,從而知道是否可以關(guān)門。Light curtain 在工業(yè)界有很多應(yīng)用。比如自動化工廠里,在機(jī)器的周圍會裝有這種 safety light curtain——當(dāng)工人接近時,傳感器感知到,可以通知機(jī)器關(guān)閉。
接下來講一下我們提出的傳感器。以前的電梯里的 light curtain 傳感器可以看成由一個線光源和線陣 sensor 構(gòu)成,并且 light source 和 sensor 是面對面的。
我們提出的傳感器是把 light source 和 sensor 放在同一邊。Light plane 和 imaging plane,兩個平面交于一條線。當(dāng)這條線上沒有物體時,相機(jī)沒有任何讀數(shù),圖像是黑的。當(dāng)有物體時,相機(jī)的讀數(shù)就是非0,傳感器可以立馬感知到物體的存在。通過同時旋轉(zhuǎn) light plane 和 imaging plane,我們可以掃描空間中的任何一個平面。
通過改變 light plane 和 imaging plane 的相對旋轉(zhuǎn)速度,我們也可以掃描空間中的一個圓柱面。
由于我們傳感器的成本很低,一個機(jī)器人或者無人車上面可以搭載好幾個這樣的傳感器。并且各個傳感器可以掃描不同的曲面來達(dá)到不同的監(jiān)控目的。比如這個機(jī)器人上面可以有我們的傳感器,用來監(jiān)測一個 tilted plane,一個圓柱面,或者看前進(jìn)路線上有沒有障礙物。無人車上面有監(jiān)測前方的 curtain,有監(jiān)測車兩邊的 curtain,也有監(jiān)測路面的 curtain.
現(xiàn)在的無人車基本都裝載 LIDAR 傳感器。通過 LIDAR 可以得到 3D 點(diǎn)云,然后通過對點(diǎn)云進(jìn)行處理來知道車前方是否有行人和車輛。我們認(rèn)為,如果只是單純的想知道車前方幾米處是否有障礙物,完全可以用我們的傳感器來解決,并且我們的傳感器很便宜,計(jì)算復(fù)雜度也非常低,只需要一個 thresholding 就可以了。
這個動畫展示了使用我們傳感器的一個場景。一輛汽車上搭載了好幾個傳感器。有一個前方的 curtain 一直監(jiān)控前方道路上有沒有別的車。當(dāng)車要換道時,首先打開側(cè)邊的 curtain,看測道上是否有別的車。當(dāng)車要轉(zhuǎn)彎時,注意 curtain 可以根據(jù)車速動態(tài)變化。當(dāng)有霧來臨時,由于我們的 light curtain 可以看透煙霧,可以在這時打開路面 curtain,由此看到地面上的鐵路標(biāo)志。
接下來看一下我們的硬件實(shí)現(xiàn)。這里顯示了我們傳感器的光路。左邊是線光源,右邊是線相機(jī)。左邊線光源部分,首先是一個點(diǎn)激光,然后經(jīng)過 collimation lens 和 line lens 變成一條線,再使用一個一維振鏡來轉(zhuǎn)動這個光平面。右邊線相機(jī)部分,首先是 line sensor,然后是成像物鏡,再是一個一維振鏡來掃描看的角度。
這里展示了我們做的 hardware prototype. 左邊是線激光部分,右邊是線相機(jī)部分,中間是 power 和控制電路,還有一個 2d helper 相機(jī),只是用來標(biāo)定和更方便的展示檢測結(jié)果用。
接下里我們用實(shí)際實(shí)驗(yàn)來展示我們傳感器的掃描的 light curtain 形狀的可編程性。
這里通過控制 line laser 和 line sensor 的相對旋轉(zhuǎn)速度,傳感器掃描出了 cosine 形狀的 light curtain。中間的視頻來自于 2D helper camera,圖中的藍(lán)色部分是我們預(yù)設(shè)的 curtain,綠色是檢測到的結(jié)果,右邊的視頻則是來自線相機(jī)的原始讀數(shù)。我們可以看到,當(dāng)物體或人出現(xiàn)在預(yù)設(shè)的 curtain 上時,它們很容易被檢測出來。
這個是機(jī)器人使用 Arc light curtain 來尋找前方可行的道路。
這里使用 volume light curtain 來監(jiān)測一個空間。這個 volume light curtain 由很多離散的線組成。
這是車庫使用 light curtain 來監(jiān)測車庫里汽車的情況。
這是搭載在汽車上的 curtain,來監(jiān)測前方道路情況。
這是 tilted curtain 來監(jiān)測一個機(jī)器人。
接下來我們看一下我們傳感器在強(qiáng)烈太陽光下的表現(xiàn)。 對于主動打出光的設(shè)備,戶外能否工作是非常有挑戰(zhàn)性的。因?yàn)樘柟馐莻€非常大的噪聲源,強(qiáng)烈的太陽光的光子噪聲會將主動光設(shè)備打出的光淹沒。這也是為什么 Microsoft Kinect 不能在戶外工作的原因。
一個有效的方法是:將主動光聚集起來,然后掃描。這里有主動光設(shè)備可選的三種機(jī)制,第一個是像 Microsoft Kinect 那樣,光就這么發(fā)散著打到空間中;第二個是將光聚集到一條線上,然后使用一維振鏡進(jìn)行一維掃描,這也是我們的傳感器使用的方案;第三個是將所有光聚集到一個點(diǎn)上,然后使用二維振鏡進(jìn)行掃描。從信噪比上看,第二種機(jī)制比第一種機(jī)制,也就是 Microsoft Kinect 使用的機(jī)制增加了 N 倍, N 可以認(rèn)為是 1000. 第三種機(jī)制的信噪比提高了 N^2 倍。從幀率的角度看,第一種是最快的,但是它沒法在太陽光下面工作。第三種盡管信噪比很高,速度超級慢。第二種,也就是我們使用的機(jī)制,既有較高的信噪比保證可以在陽光下使用,又有較快的幀率。
這里展示的是一個 sidewalk curtain 。當(dāng)有行人從路邊走到路上時,我們的傳感器很容易的將其檢測了出來。
這里我們使用 volume light curtain 來監(jiān)測人行道。
在強(qiáng)烈的太陽光下,我們的傳感器依然可以看到 25m 外的白板,35m 外的白板也依稀可見。
對于一般反射率的物體,我們的傳感器可以看到 13m 遠(yuǎn)。這里我們通過 sweeping 40 個 planar curtains 來合成一個 depth map。需要注意的是,我們的傳感器一般不用做 depth sensor,而只是用作 half depth sensor,就是只是監(jiān)測空間中某個預(yù)設(shè)的 depth,所以更準(zhǔn)確的講,是一個 proximity sensor。
接下來我們看下我們的傳感器在散射介質(zhì),比如煙霧中的表現(xiàn)。
在煙霧中,如果使用傳統(tǒng)的成像,那就是有一個光源,然后有一個 2D 相機(jī)。相機(jī)中的每個像素除了接收到物體反射的光之外,還接收到在煙霧媒介中散射的光。這些散射的光中既有散射一次的,也有散射多次的。
在我們 light curtain 成像中,我們線激光打出去,線相機(jī)接收,對于線相機(jī)上的每個像素,它除了接收到物體反射的光外,也會接收到煙霧媒介散射的光,但是在媒介中只散射一次的散射光是進(jìn)不來的,也就是在光路中就被隔離掉了。相較于傳統(tǒng)的成像,我們的成像隔離掉了只散射一次的散射光,而只散射一次的散射光的強(qiáng)度要比散射多次的光強(qiáng)很多倍。由此,我們的傳感器成的像的對比度要比傳統(tǒng)的成像高很多。
這是我們的傳感器在煙霧中的表現(xiàn)。中間的視頻是普通的相機(jī)得到的,右邊是我們的傳感器得到的。當(dāng)有煙霧時,通過我們的傳感器依然能看到路牌,但是普通的相機(jī)就看不到了。
接著我們來討論下 light curtain 的厚度問題。
由于相機(jī)的像素是有大小的,一般是幾個微米;線激光也是有厚度的,一般也有幾個微米到幾十微米;triangulation 的結(jié)果就不是一個點(diǎn),而是一個四邊形。我們把這個四邊形的縱深稱為 triangulation uncertainty. 由于 Triangulation uncertainty 的存在,原本我們設(shè)定在 3.8 米處的 planar curtain,變成了一個有一定厚度的 curtain。所以當(dāng)面對的是樓梯這個場景時,有三個樓梯被檢測到。
在一些情況下 curtain 有點(diǎn)厚有些好處,比如可以預(yù)防漏檢。但是在一些情況下,我們也希望 curtain 越薄越好,比如我們只想檢測車子左邊 2 米處有沒有物體,超過 2 米的我們不關(guān)心,如果 curtain 比較厚,就很可能會出現(xiàn)虛警。
根據(jù)理論推算,triangulation uncertainty 是跟深度的平方成正比的。這說明 curtain 會隨著深度的增加越來越厚。怎么降低 curtain 的厚度呢?我們提出在相機(jī)端使用 line TOF sensor。根據(jù)理論推算,我們知道 continuous wave TOF 的 uncertainty 只跟調(diào)制頻率有關(guān),頻率越高,uncertainty 越小,是不隨深度變化的。
所以,當(dāng)在相機(jī)端使用 TOF 時可以取 triangulation 和 TOF 兩個 uncertainty 的最小值,這樣 uncertainty,也就是厚度,可以一直比較低。
對于樓梯這個場景,當(dāng)只使用 triangulation 時,有三個樓梯被檢測到。當(dāng)結(jié)合 TOF 的 phase 信息時,那么厚的 curtain 變得很薄,所以只有一個樓梯亮了。
要想 TOF 的 uncertainty 比較小,TOF 使用的頻率就得比較高,但是當(dāng)面對較大的場景時,TOF 會出現(xiàn) phase wrapping 的問題。巧的是,Triangulation 可以和 phase 相結(jié)合,triangulation 可以幫助做 phase unwrapping。這是因?yàn)殡m然 triangulation 的 uncertainty 比較高,但也提供了一定的深度信息。所以依然可以得到非常薄的 curtain。
接下來講一下 depth-adaptive imaging. 主動光系統(tǒng)一般都會面臨 light fall off 的問題。主動光系統(tǒng)發(fā)出的光會隨著深度逐漸減弱,這使得近處的物體的像很容易飽和,而遠(yuǎn)處的物體會因?yàn)楣馓醵浅0?,?dǎo)致檢測不到。
但是對于我們的系統(tǒng)來說,由于我們掃描的面是由一條一條線組成的,對于每條線,它的曝光時間是可以改變的,我們的設(shè)備有這個自由度,所以我們可以對近處的線進(jìn)行短曝光,而對遠(yuǎn)處的線進(jìn)行長曝光。這樣,總的發(fā)射能量是一樣的,但是可以看得更遠(yuǎn)。
我們也可以控制每條線的激光強(qiáng)度。效果是一樣的,也就是總的使用能量一樣,但是能看得更遠(yuǎn),比如這里后面車的 frame 看得更清楚。
總結(jié)一下,為什么我們的 light curtain 有諸多好處呢,是因?yàn)槲覀冾A(yù)設(shè)了一個 depth of interest,所以整個設(shè)備就可以進(jìn)行相應(yīng)的最優(yōu)化了。
我們的傳感器成本很低,消耗的能量很少,需要的運(yùn)算也非常少;
它可以在強(qiáng)烈太陽光下工作,也可以穿透煙霧;
它的形狀和厚度也可以很靈活的改變;
它的幀率也很高。
最后再講一下很多人關(guān)心的激光安全問題。激光安全距離需要非常多嚴(yán)格的計(jì)算。根據(jù)計(jì)算,我們的 prototype 中使用的激光在 0.72m 之外是絕對安全的。我們在 prototype 中使用的激光是可見紅色激光,在實(shí)際使用時應(yīng)該使用紅外激光,紅外激光比紅色激光還要安全。
我今天的分享就到這里,謝謝大家!
以上就是本期嘉賓的全部分享內(nèi)容。更多公開課視頻請到雷鋒網(wǎng) AI 研習(xí)社社區(qū)(http://ai.yanxishe.com/)觀看。關(guān)注微信公眾號:AI 研習(xí)社(okweiwu),可獲取最新公開課直播時間預(yù)告。
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。