• 正文
    • 光流的基本概念
    • 光流和其他圖像識(shí)別方法的區(qū)別
    • 光流的應(yīng)用場(chǎng)景
  • 相關(guān)推薦
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

光流直觀解

02/08 08:44 來(lái)源:直觀解
1836
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

光流的基本概念

光流(Optical Flow)是指圖像中像素或特征點(diǎn)在時(shí)間序列上的運(yùn)動(dòng)軌跡。它反映了物體在場(chǎng)景中的運(yùn)動(dòng)信息,廣泛應(yīng)用于計(jì)算機(jī)視覺(jué)、視頻處理等領(lǐng)域。

光流是在連續(xù)運(yùn)動(dòng)的視頻中識(shí)別運(yùn)動(dòng)物體的識(shí)別方法。

這里強(qiáng)調(diào)物體的運(yùn)動(dòng)屬性(運(yùn)動(dòng)的影像,拖影就是流)。就像青蛙捕蟲(chóng),蟲(chóng)子不動(dòng)是不會(huì)被青蛙發(fā)現(xiàn)的。

光流如何在動(dòng)態(tài)視頻中識(shí)別出運(yùn)動(dòng)物體?

核心點(diǎn)在于,在動(dòng)態(tài)視頻中,運(yùn)動(dòng)物體的像素點(diǎn)的運(yùn)動(dòng)方式和靜止物體的像素點(diǎn)運(yùn)動(dòng)方式不一樣。

如果載體(無(wú)人機(jī),車輛,船只等)本身靜止不動(dòng),那么所有靜止物體的像素點(diǎn)在第t幀和第t+1幀的位置是不變的,像素點(diǎn)的運(yùn)動(dòng)矢量(就是像素點(diǎn)x從第t幀位置往第t+1幀位置的有向連線)是0向量。

如果載體(無(wú)人機(jī),車輛,船只等)本身運(yùn)動(dòng),那么所有靜止物體的像素點(diǎn)在第t幀和第t+1幀的位置會(huì)“均勻”的改變,像素點(diǎn)的運(yùn)動(dòng)矢量(就是像素點(diǎn)x從第t幀位置往第t+1幀位置的有向連線)是載體本身運(yùn)動(dòng)矢量的逆。

凡是不按上述方式運(yùn)動(dòng)的像素點(diǎn),這些“叛逆分子”就代表運(yùn)動(dòng)物體。

圖二中的光流,由于是全部是靜物環(huán)境,所以都按相同規(guī)律超中心射影點(diǎn)匯聚。假設(shè)出現(xiàn)一些“倒行逆施”的像素點(diǎn),那么它們必然是運(yùn)動(dòng)物體。

光流這個(gè)名字的直觀記憶方法是運(yùn)動(dòng)拖影。雖然在現(xiàn)實(shí)中我們拍攝到的動(dòng)態(tài)圖像由于使用高速攝影機(jī)根本沒(méi)有拖影。但是我們確實(shí)是使用“拖影”原理來(lái)表現(xiàn)光流,所謂拖影也就是前面幀和后面幀的像素位置差異。

光流和其他圖像識(shí)別方法的區(qū)別

前面舉例青蛙捕蟲(chóng),蟲(chóng)子不動(dòng)的話青蛙就發(fā)現(xiàn)不了,這是因?yàn)榍嗤苡霉饬鬟@種方法來(lái)識(shí)別運(yùn)動(dòng)物體;但對(duì)于某些不依賴光流方法的捕食者,即使目標(biāo)靜止不動(dòng)也會(huì)被發(fā)現(xiàn),因?yàn)檫@些捕食者是依靠靜態(tài)圖像識(shí)別

一言以蔽之,光流是依靠連續(xù)圖像的幀與幀之間像素位置變化,挑選出不符合靜物特征的像素點(diǎn)群作為運(yùn)動(dòng)物體來(lái)識(shí)別。只有單幀圖像時(shí),光流無(wú)法工作。

其它圖像識(shí)別算法是以單幀圖像為基礎(chǔ)來(lái)識(shí)別其中的物體。所以,直觀的講,非光流方法的圖像識(shí)別可以識(shí)別不動(dòng)的目標(biāo)物體。

非光流方法中最有代表性的是圖像語(yǔ)義識(shí)別。這里的語(yǔ)義不是說(shuō)和自然語(yǔ)言處理有任何關(guān)系,而是說(shuō)給出被識(shí)別物體的語(yǔ)義稱謂,通俗的說(shuō)就是不僅識(shí)別出物體,還識(shí)別出該物體在人類語(yǔ)言體系中叫什么。比如一只黃白相間圓頭圓腦毛茸茸的小動(dòng)物會(huì)被識(shí)別為“貓”,貓就是語(yǔ)義。

光流的應(yīng)用場(chǎng)景

視頻監(jiān)控

1. 目標(biāo)跟蹤

利用光流可以直觀地跟蹤視頻中的目標(biāo)。例如在商場(chǎng)監(jiān)控中,通過(guò)對(duì)人體特征點(diǎn)的光流分析,可以持續(xù)跟蹤顧客的行動(dòng)軌跡,無(wú)論是在平地上行走還是在上下樓梯,光流都能提供準(zhǔn)確的運(yùn)動(dòng)方向和速度信息,方便安保人員監(jiān)控異常行為。

2. 人群流動(dòng)分析

在大型活動(dòng)場(chǎng)所,如體育場(chǎng)或者演唱會(huì)現(xiàn)場(chǎng),光流可以用來(lái)分析人群的整體流動(dòng)方向和速度。通過(guò)計(jì)算大量像素或者特征點(diǎn)的光流,可以得到人群的動(dòng)態(tài)分布情況,有助于場(chǎng)地管理和安全保障。

自動(dòng)駕駛

1. 環(huán)境感知

車輛周圍的物體運(yùn)動(dòng)信息對(duì)于自動(dòng)駕駛至關(guān)重要。光流可以直觀地提供道路標(biāo)志、其他車輛和行人的運(yùn)動(dòng)情況。例如,通過(guò)分析路邊樹(shù)木或者路燈桿的光流,車輛可以判斷自己的行駛速度和方向是否正確;通過(guò)跟蹤其他車輛的光流矢量,可以提前做出避讓或者跟車決策。

2. 視覺(jué)里程計(jì)

光流有助于計(jì)算車輛相對(duì)于周圍環(huán)境的運(yùn)動(dòng)距離。就像我們通過(guò)觀察周圍景物的移動(dòng)來(lái)感覺(jué)自己走了多遠(yuǎn)一樣,車輛利用光流可以更精確地確定自己的行駛里程,提高導(dǎo)航和定位的準(zhǔn)確性。

雖然光流有很多應(yīng)用場(chǎng)景,在筆者的日常工作中,我們用的最多的是用光流來(lái)進(jìn)行環(huán)境感知。我們結(jié)合圖像語(yǔ)義識(shí)別和光流法來(lái)識(shí)別運(yùn)動(dòng)型障礙物的存在以及運(yùn)動(dòng)方式,再用匈牙利算法之類的匹配算法將圖像語(yǔ)義識(shí)別和光流法分別識(shí)別到的運(yùn)動(dòng)障礙物一一對(duì)應(yīng)起來(lái),并剔除誤識(shí)別的障礙物。這種方法也被稱為“后融合”。

相關(guān)推薦