計(jì)算機(jī)視覺應(yīng)用算法
計(jì)算機(jī)視覺應(yīng)用算法
1.計(jì)算機(jī)視覺的應(yīng)用算法
計(jì)算機(jī)視覺有許多算法任務(wù):圖像分類,圖片相似搜索。圖像分割,關(guān)鍵點(diǎn)檢測(cè),目標(biāo)檢測(cè),目標(biāo)跟蹤,視頻分類,深度估計(jì),人臉檢測(cè)等。
這些算法,又有很多各種各樣的網(wǎng)絡(luò)結(jié)構(gòu),復(fù)雜又抽象,我們只知道把數(shù)據(jù)輸入到模型,得到結(jié)果,這網(wǎng)絡(luò)里面怎么處理的數(shù)據(jù),處理的過程又是怎么樣的,太抽象了。
因此我寫這篇文章,是想盡可能把這樣抽象過程,描述成小白都能理解的形式。
2.圖像的特征與視頻特征
再說算法,我們先談一下,圖像的特征和視頻的特征,從這些算法任務(wù)中,不難看出,算法模型用到的數(shù)據(jù),不外乎圖片和視頻。
所以首先我們要知道圖像和視頻在機(jī)器代碼角度下,有哪些有價(jià)值的特征。
2.1 圖像特征

比如我們大冪冪,我們?nèi)说囊暯牵吹降模俏骞伲路^發(fā)這類(宏觀一點(diǎn)的),但在機(jī)器角度,看到的要更微觀很多,微觀到每一個(gè)像素點(diǎn)(學(xué)ps的就知道,做p圖,其實(shí)是對(duì)每個(gè)像素塊做處理,一張圖片也又幾千個(gè)不同顏色像素塊組成)。算法處理圖像的最小單位也就是像素塊。
**基于這樣的像素塊,機(jī)器看到是什么呢**:
**顏色**:每個(gè)像素塊都有自己的顏色1. **形狀**:基于相似顏色的像素塊,可以區(qū)分不同的形狀1. **紋理**:有些像素塊上還有條紋,類似于一塊木地板1. **序列**:有些像素塊之間是有關(guān)聯(lián)的,比如文本,下一章會(huì)詳細(xì)說明前三者,融合起來就是我們?nèi)艘暯强吹降奶卣鳎罕热纾浩つw的紋理,皮膚的顏色,皮膚形狀(就是我們看到的楊冪的臉)
了解“風(fēng)格遷移”算法的或許更能明白,這些特征的使用。
2.2 視頻特征
視頻特征,視頻其實(shí)就是由連續(xù)幀的圖片,按照時(shí)間順序,組合成的。因此,視頻特征里有圖像的特征,
除此之外,視頻特征由于有連續(xù)幾張圖片的特征,因此會(huì)有二張圖片或者多張圖片對(duì)比下的一些特定的特征,比如位置和速度二個(gè)特征,這二者其實(shí)也就是序列特征

3.算法通俗理解
接下來,我將用圖像的特征和視頻的特征來介紹,這些不同算法,在訓(xùn)練和預(yù)測(cè)過程,算法的網(wǎng)絡(luò)是怎么處理的。
先介紹圖像分類,圖像分類是其他算法開發(fā)基礎(chǔ),理解了圖像分類,就明白后續(xù)的計(jì)算機(jī)視覺算法如何處理的
3.1 圖像分類
訓(xùn)練
圖像分類,我們數(shù)據(jù)有圖像和圖像的label,我們將圖像加入到模型,模型根據(jù)圖像的特征(紋理、顏色、形狀),這些特征通過模型組合形成更抽象的五官,模型記住了這個(gè)label類別下人的五官,知道了他長(zhǎng)什么樣了。
嬰兒:父母告訴嬰兒這個(gè)是爸爸,那個(gè)是媽媽,嬰兒也是根據(jù)臉部的特征,五官記住了,這個(gè)人是爸爸。
預(yù)測(cè)
同樣預(yù)測(cè),我們向模型加入預(yù)測(cè)的圖像,模型同理分解除圖像的特征,再組合成更抽象的特征(五官),再與模型之前訓(xùn)練后記住的特征(五官)進(jìn)行對(duì)比,判斷。
3.2 目標(biāo)檢測(cè)

目標(biāo)檢測(cè)有點(diǎn)像圖像分類訓(xùn)練
我們數(shù)據(jù),是經(jīng)過標(biāo)注后的數(shù)據(jù),類似于上圖這張,我們通過邊框和label標(biāo)注,讓模型,只針對(duì)邊框內(nèi)的圖像,做處理(這里就跟圖像分類訓(xùn)練很像了),相當(dāng)于做摳圖,摳下來做圖像分類訓(xùn)練。
預(yù)測(cè)
模型預(yù)測(cè)的時(shí)候,模型先對(duì)預(yù)測(cè)的圖片按一定規(guī)則在圖片上產(chǎn)生一系列的候選區(qū)域,如下圖所示:
然后模型對(duì)每個(gè)框做,一個(gè)圖像分類預(yù)測(cè)處理,來判斷屬于的類別,并給出一個(gè)類別閾值,找出類別為楊冪的閾值也高的圖片,這里可能會(huì)出現(xiàn)多個(gè)框有重合,如下圖所示:
這里就需要對(duì)這幾個(gè)框做一個(gè)去重處理,就OK了。
3.3 語義分割
語義分割通俗來說就是有l(wèi)abel標(biāo)簽的分割,對(duì)每個(gè)分割出的區(qū)域,都會(huì)告訴這個(gè)區(qū)域是什么類別。
計(jì)算機(jī)視覺領(lǐng)域還有2個(gè)與語義分割相似的重要問題,即圖像分割(image segmentation)和實(shí)例分割(instance segmentation)。我們?cè)谶@里將它們同語義分割簡(jiǎn)單區(qū)分一下。
**圖像分割**:圖像分割將圖像劃分為若干組成區(qū)域,這類問題的方法通常利用圖像中像素之間的相關(guān)性,也就是圖像的顏色,形狀,紋理之間的相關(guān)性,將同一類的事物。劃分成一個(gè)區(qū)域。但這種預(yù)測(cè)不需要有關(guān)圖像像素的標(biāo)簽信息,在預(yù)測(cè)時(shí)也無法保證分割出的區(qū)域具有我們希望得到的語義。- **實(shí)例分割**:也叫同時(shí)檢測(cè)并分割(simultaneous detection and segmentation),它研究如何識(shí)別圖像中各個(gè)目標(biāo)實(shí)例的像素級(jí)區(qū)域。與語義分割不同,實(shí)例分割不僅需要區(qū)分語義,還要區(qū)分不同的目標(biāo)實(shí)例。例如,如果圖像中有兩條狗,則實(shí)例分割需要區(qū)分像素屬于的兩條狗中的哪一條。是不是就是目標(biāo)檢測(cè)+圖像分割,再分下來就是:畫框+圖像分類+圖像分割至于分割出來不同區(qū)域的顏色,其實(shí)是指定的
到這里從圖像分類,目標(biāo)檢測(cè),圖像分割是不是看起來像是一層一層算法疊加的。
3.4 關(guān)鍵點(diǎn)檢測(cè)
哎呀這精致的臉龐。
關(guān)鍵點(diǎn)本質(zhì)上是一種特征。它是對(duì)一個(gè)固定區(qū)域或者空間物理關(guān)系的抽象描述,描述的是一定鄰域范圍內(nèi)的組合或上下文關(guān)系,可以說是圖像中紋理、顏色、形狀的高維聚合。
前面說圖像分類的時(shí)候,楊冪的五官通過紋理、顏色、形狀可以找出來,那人體的形狀也同樣可以找出來。
關(guān)鍵點(diǎn)檢測(cè)方法總體上可以分成兩個(gè)類型,一個(gè)種是用坐標(biāo)回歸的方式來解決,另一種是將關(guān)鍵點(diǎn)建模成熱力圖,通過像素分類任務(wù),回歸熱力圖分布得到關(guān)鍵點(diǎn)位置
