計(jì)算機(jī)視覺的三部曲

JM
0 評論 9043 瀏覽 24 收藏 12 分鐘

計(jì)算機(jī)視覺目前已經(jīng)被應(yīng)用到多個(gè)領(lǐng)域,如無人駕駛、人臉識(shí)別、文字識(shí)別、智慧交通、VA/AR、以圖搜索、醫(yī)學(xué)圖像分析等等,是人工智能(AI)目前最火的領(lǐng)域之一。那計(jì)算機(jī)視覺是什么?完整鏈路是怎樣的?有哪些技術(shù)點(diǎn)?本文將跟大家一起探討。

計(jì)算機(jī)視覺(Computer?Vision),就是用機(jī)器來模擬人的視覺獲取和處理信息的能力。它主要研究的內(nèi)容是通過對圖片或視頻的處理,以獲得相應(yīng)場景的三維信息,另外其研究很大程度上是針對圖像的內(nèi)容。

本文主要參考了商湯科技CEO徐立老師的分享,將計(jì)算機(jī)視覺分為三部分:成像、早期視覺和識(shí)別理解。本文也是圍繞這三部分進(jìn)行討論。

一、成像(Image)

成像就是計(jì)算機(jī)“看”的能力,是計(jì)算機(jī)視覺的輸入,相當(dāng)于人的眼睛。影響計(jì)算機(jī)成像(看),主要有幾個(gè)因素:光、物體不全、模糊。

當(dāng)然計(jì)算機(jī)看到的東西可能不僅只是人眼看到的那樣,甚至可以是人眼能力的延伸。

這個(gè)怎么說呢?后面將為會(huì)你解密。

1.1 光

(1)光線不足

光線不足是常見的問題之一,特別是在晚上。

比如說以上左圖可能是人眼看到的,但是通過對圖像做增強(qiáng)或者其他算法的處理,就可以變成了像以上右圖那樣,能看清物體了。這就是我們前面說的,機(jī)器成像也可以是人眼能力的延伸。

(2)曝光過渡

曝光過渡也比較容易出現(xiàn)在晚上,為什么呢?比如說你所拍攝的物體被車燈或其他強(qiáng)燈光照射,就容易出現(xiàn)曝光。

曝光的話,也可以通過一些簡單的算法處理,來還原圖像的樣子。

1.2 物體不全

物體不全,主要表現(xiàn)有兩方面原因:被拍物體部分被遮擋住了、只拍了被拍物體的一部分。

那出現(xiàn)這種場景的時(shí)候,我們機(jī)器需要怎么處理呢?可以嘗試考慮的方向有兩點(diǎn):

  1. 機(jī)器能不能根據(jù)拍得清晰的那部分的特征,自動(dòng)去補(bǔ)全被遮擋的部分呢。
  2. 機(jī)器能不能對被擋住的部分做一些特殊的標(biāo)記,傳送到下一層的時(shí)候,下一層就知道這個(gè)地方是異常的,需要特殊考慮。這樣就可以避免擋住的部分給下一層的傳達(dá)錯(cuò)誤的信息。

1.3 模糊

造成模糊的原因可能有幾種:

  • 運(yùn)動(dòng)模糊
  • 對焦模糊
  • 分辨率低(圖片質(zhì)量差)
  • 待識(shí)別物體過小
  • 霧霾、煙氣等因素

那出現(xiàn)模糊的情況,計(jì)算機(jī)能做什么呢?

比如說拍照的時(shí)候,手一抖,就拍成了如下左圖,是可以通過一些算法,恢復(fù)成如下右圖的樣子。

或者說霧霾很嚴(yán)重的時(shí)候,拍出來的照片如下左圖,經(jīng)過機(jī)器成像后,可以變成如下右圖的樣子,把圖片還原成了沒有霧霾的樣子。

那是不是一定要還原成物體最真實(shí)的樣子呢?也不見得,我們還可以做一些更加有情懷,更加有藝術(shù)感的處理。比如說把霧霾的圖片,變成油畫的樣子,就相當(dāng)于給我們戴上了墨鏡,或者說戴上了3D眼睛去看電影。

所以,具體需要“看”成什么樣,也是根據(jù)我們的最終目的調(diào)整的。

二、早期視覺(Early Vision)

在徐立老師的定義里,早期視覺可以理解為視覺系統(tǒng)處理的中間結(jié)果,相當(dāng)于我們?nèi)艘曈X感知系統(tǒng)的某一層。

就像我們的視覺感知系統(tǒng)那樣,雖然我們不太容易直觀的描述它做了什么處理,但它確實(shí)是有處理了一些信息,然后傳給了大腦的其系統(tǒng)。早期視覺也是這樣,充當(dāng)一個(gè)中轉(zhuǎn)站的角色。

早期視覺主要包括的內(nèi)容有:圖像分割、邊緣檢測、運(yùn)動(dòng)和深度估計(jì)等。

下面我們給大家介紹下圖像分割和邊緣檢測(運(yùn)動(dòng)和深度估計(jì)不太懂就不在這瞎說了,感興趣的同學(xué)可以自行研究)。

2.1 圖像分割

圖像分割指的是根據(jù)灰度、 顏色、 紋理和形狀等特征把圖像劃分成若干互不交迭的區(qū)域, 并使這些特征在同一區(qū)域內(nèi)呈現(xiàn)出相似性,而在不同區(qū)域間呈現(xiàn)出明顯的差異性。

比如說上圖,根據(jù)顏色區(qū)分出了不同的模塊,路是路,車是車,樹是樹。

圖像分割經(jīng)典方法有:邊緣法和閾值法,但也可以用深度學(xué)習(xí)處理出很好的效果。

圖像分割在圖像處理中非常經(jīng)典,也經(jīng)常用到。比如說摳圖,首先進(jìn)行圖像分割,取出我們目標(biāo)部分,就可以把背景去掉了,最后還原。

還有表情包的合成:

2.2 邊緣檢測

邊緣檢測的目的就是找到圖像中亮度變化劇烈的像素點(diǎn)構(gòu)成的集合,因此表現(xiàn)出來往往是事物的輪廓。

如果把“圖像分割”比喻成油畫的話,那“邊緣檢測”就是素描。

如果圖像中邊緣能夠精確的測量和定位,那么,就意味著實(shí)際的物體能夠被定位和測量,包括物體的面積、物體的直徑、物體的形狀等就能被測量。

以下4種情況會(huì)表現(xiàn)在圖像中時(shí)通常可以形成一個(gè)邊緣:

  1. 深度的不連續(xù)(物體處在不同的物平面上);
  2. 表面方向的不連續(xù)(如正方體的不同的兩個(gè)面);
  3. 物體材料不同(這樣會(huì)導(dǎo)致光的反射系數(shù)不同);
  4. 場景中光照不同(如被樹萌投向的地面)。

2.3 小結(jié)

早期視覺目前還有很多問題,還是不能做到很精準(zhǔn),因此現(xiàn)在端到端的訓(xùn)練方法是個(gè)很好的解決方案,比如說我們用深度學(xué)習(xí)來做圖像分割。

三、識(shí)別理解(Recognition)

識(shí)別理解相當(dāng)于人的大腦對信息的處理,經(jīng)過處理后并給出反饋結(jié)果。

比如說人臉識(shí)別:

我們輸入一張人臉的圖片,機(jī)器就與人臉數(shù)據(jù)庫中人臉進(jìn)行比對,然后機(jī)器就可以告訴你這個(gè)圖片的人是誰。

就像我們的大腦,看到一個(gè)人,我們就會(huì)去回憶,之前有沒有見過這個(gè)人,在哪里見過,他叫什么名字等等一些信息。

從這個(gè)例子中,我們可以看出,機(jī)器識(shí)別理解的兩個(gè)重要因素:

(1)數(shù)據(jù)庫(人的記憶)

只有你數(shù)據(jù)庫的數(shù)據(jù)足夠多,也就是說你見過足夠多的人,再給你看一個(gè)人的時(shí)候,你才知道這個(gè)人是誰。

(1)標(biāo)簽(特征點(diǎn))

你是根據(jù)什么辨識(shí)這個(gè)人的,他的膚色、發(fā)型、眼睛、鼻子、嘴巴等等,也就是說我們需要給這些數(shù)據(jù)打上足夠多的標(biāo)簽,識(shí)別的時(shí)候,就可以拿這些標(biāo)簽特征進(jìn)行對比了。

徐立說:只要把圖片和這種標(biāo)簽定義得足夠好,數(shù)據(jù)量足夠大,數(shù)據(jù)夠完善的話,它有非常大的可能在垂直領(lǐng)域上,能夠超越現(xiàn)有人類的識(shí)別準(zhǔn)確率。

小結(jié):

其實(shí)我們現(xiàn)在缺的不是數(shù)據(jù),想要數(shù)據(jù)很簡單,裝足夠多的攝像頭,沒日沒夜的拍,數(shù)據(jù)就夠多了。但是這些數(shù)據(jù)意義不大,沒有標(biāo)簽,或者說場景不夠豐富,因此我們?nèi)狈Φ氖歉哔|(zhì)量的數(shù)據(jù),高質(zhì)量表現(xiàn)在標(biāo)簽足夠豐富和完善。

此文章主要參考了徐立老師的演講內(nèi)容,感興趣可以去看下,徐立老師講得更加哲學(xué)和情懷。

附參考文章:

  • 《商湯徐立:計(jì)算機(jī)視覺的完整鏈條,從成像到早期視覺再到識(shí)別理解》
  • 《看AI產(chǎn)品經(jīng)理如何介紹“計(jì)算機(jī)視覺”(基于實(shí)戰(zhàn)經(jīng)驗(yàn)和案例)》_Jasmine
  • 《從0開始搭建產(chǎn)品經(jīng)理的AI知識(shí)框架:計(jì)算機(jī)視覺》_藍(lán)風(fēng)GO
  • 《邊緣檢測》_Ronny
  • 《閑聊圖像分割這件事兒》_言有三
  • 《圖像分割》_古路

 

本文由 @Jimmy 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載。

題圖來自Unsplash,基于CC0協(xié)議。

更多精彩內(nèi)容,請關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號(hào)或下載App
評論
評論請登錄
  1. 目前還沒評論,等你發(fā)揮!