計(jì)算機(jī)視覺基礎(chǔ)概念與模型WalkThrough

1、計(jì)算機(jī)視覺

1.1什么是計(jì)算機(jī)視覺

計(jì)算機(jī)視覺是一門研究如何使機(jī)器“看”的科學(xué)慨亲。更進(jìn)一步說混槐,就是指用攝影機(jī)和電腦代替人眼對(duì)目標(biāo)進(jìn)行識(shí)別、跟蹤和測量等視覺動(dòng)作歼跟,并進(jìn)一步做圖像處理和媳,使計(jì)算機(jī)處理后的圖像更適合人眼觀察或儀器檢測。

作為一個(gè)科學(xué)學(xué)科哈街,計(jì)算機(jī)視覺研究相關(guān)的理論和技術(shù)留瞳,試圖建立能夠從圖像或者多維數(shù)據(jù)中獲取“信息”的人工智能系統(tǒng)

1.2計(jì)算機(jī)視覺的應(yīng)用

計(jì)算機(jī)視覺現(xiàn)在已經(jīng)被應(yīng)用于多種領(lǐng)域中,是人工智能目前最火的領(lǐng)域之一

> 無人駕駛

> 無人安防

> 人臉識(shí)別

> 文字識(shí)別

> 車牌識(shí)別

> 以圖搜圖

> VR/AR

> 3D重構(gòu)

> 醫(yī)學(xué)圖像分析

> 無人機(jī)

> 其它

1.3圖像和視頻

> 圖像

一張圖片包含了:維數(shù)骚秦、高度她倘、寬度璧微、深度、通道數(shù)硬梁、顏色格式前硫、數(shù)據(jù)首地址、結(jié)束地址靶溜、數(shù)據(jù)量等等

> 視頻

原始視頻=圖片序列开瞭,視頻中的每張有序圖片稱為“幀(frame)”。壓縮后的視頻會(huì)采取各種算法減少數(shù)據(jù)的容量

> 具體解釋

圖像的深度指的是存儲(chǔ)每一個(gè)像素所用到的位數(shù)罩息,當(dāng)每個(gè)像素存儲(chǔ)所需要的容量越大的話嗤详,則深度越深,顏色越豐富

圖像使用的壓縮格式以及編碼決定了圖像的大小

灰度圖單通道瓷炮、RGB是四通道葱色、16位圖兩通道等等

對(duì)視頻分析時(shí),先要了解視頻的結(jié)構(gòu)和特點(diǎn)娘香。如果碼率和幀率很低苍狰,很多算法是不work的

IPB,一種視頻壓縮算法烘绽,即壓縮后只存三種幀淋昭,I幀(關(guān)鍵幀,圖片的完整保留安接,最重要)翔忽、P幀(這一幀與上一關(guān)鍵幀之間的差別)、B幀(雙向差別幀盏檐,與上一個(gè)關(guān)鍵幀的差別和于下一幀的差別)

現(xiàn)在更多不是用硬盤讀取了歇式,而是用網(wǎng)絡(luò)存儲(chǔ),所以現(xiàn)在都是用網(wǎng)絡(luò)攝像頭了

碼率:單位時(shí)間的數(shù)據(jù)傳輸數(shù)胡野;也就是采樣率材失,單位時(shí)間的采樣個(gè)數(shù)

幀率:每秒多少幀

分辨率:圖像質(zhì)量

1.4 計(jì)算機(jī)視覺與其它學(xué)科的關(guān)系

> 計(jì)算機(jī)視覺、機(jī)器視覺和圖像處理的區(qū)別

> 三者都涉及了圖像的處理

> 計(jì)算機(jī)視覺偏軟件處理硫豆,一般和應(yīng)用場景相關(guān)

> 機(jī)器視覺更多涉及硬件的結(jié)合龙巨,包括機(jī)器人、工業(yè)級(jí)的攝像機(jī)够庙、工業(yè)檢測

> 圖像處理更多是對(duì)圖進(jìn)行轉(zhuǎn)換恭应、變形

2、硬件環(huán)境與軟件環(huán)境

2.1 CPU versus GPU

> 性能(低延時(shí)性)耘眨、吞吐量:CPU是低延時(shí)性,低吞吐量境肾;GPU是高吞吐量剔难,高延時(shí)性

> GPU的Cache小胆屿,其是通過高并發(fā)多線程的方式來搞吞吐的處理簡單計(jì)算,所以用來處理圖片十分方便偶宫。因?yàn)樘幚韴D片是將圖片分成很多小塊非迹,然后分別對(duì)每一塊進(jìn)行處理

> 由于計(jì)算機(jī)視覺涉及大量的矩陣運(yùn)算,所以使用GPU纯趋,通過它高并發(fā)的特點(diǎn)能大大的提高運(yùn)行速度

2.2 Open Source Frameworks

2.2.1計(jì)算機(jī)視覺開源算法庫

> OpenCV

OpenCV作為計(jì)算機(jī)視覺的一個(gè)開源軟件庫已經(jīng)存在了很多年了憎兽,其輕量且高效,是由一系列的C函數(shù)和少量C++類構(gòu)成吵冒。OpenCV提供了Python纯命、Ruby、MatLab等語言的接口痹栖,實(shí)現(xiàn)了圖像處理以及計(jì)算機(jī)視覺方面的許多通用算法亿汞。

2.2.2深度學(xué)習(xí)開源框架

> TensorFlow (Google)

> PyTorch (Facebook)

> Caffe2 (Facebook)

> CNTK (Microsoft)

> MXNet (Amazon)

> Paddle (Baidu)

……

1)現(xiàn)狀分析

計(jì)算機(jī)視覺領(lǐng)域的很多應(yīng)用都是基于深度學(xué)習(xí)算法的,應(yīng)該說深度學(xué)習(xí)算法在準(zhǔn)確性方向已經(jīng)全面超過了以前的經(jīng)典機(jī)器學(xué)習(xí)算法揪阿,所以要想對(duì)CV有深度的理解疗我,了解目前這些主流的深度學(xué)習(xí)開源框架就十分有必要了。

上邊列舉的是目前熱度比較高的深度學(xué)習(xí)框架南捂,而且在每個(gè)開源框架后邊的括號(hào)中吴裤,我標(biāo)示出了目前該框架主要是由哪些公司在負(fù)責(zé)運(yùn)營∧缃。可以看出麦牺,每款框架其實(shí)都有著大廠在后邊支撐著的。這第一保證了開源社區(qū)的活躍性矿瘦,其次也確保了這些框架都是在實(shí)際業(yè)務(wù)場景中被使用著的枕面。

下邊我將對(duì)其中兩款框架進(jìn)行簡單的介紹

2)TensorFlow介紹

TensorFlow是Google在2015年開源的一款深度學(xué)習(xí)框架,目前已經(jīng)成為了最火的深度學(xué)習(xí)框架之一缚去。

相比于其它的深度學(xué)習(xí)框架潮秘,TensorFlow構(gòu)建的神經(jīng)網(wǎng)絡(luò)是靜態(tài)的,這代表著用戶必須在程序一開始就將神經(jīng)網(wǎng)絡(luò)構(gòu)建好易结,而不能(或者說很麻煩)根據(jù)反饋動(dòng)態(tài)調(diào)整網(wǎng)絡(luò)枕荞。這是被很多開發(fā)者所詬病的地方,但是也有不少人認(rèn)為這種方式的網(wǎng)絡(luò)能更好的適應(yīng)Google自家的TPU處理器搞动。

因?yàn)橛蠫oogle背書躏精,哪怕TensorFlow有著令人詬病的靜態(tài)網(wǎng)絡(luò)結(jié)構(gòu),它也成為了最火的深度學(xué)習(xí)開源框架鹦肿。這使得有很多的新的組件和功能包被開發(fā)者們不斷的開發(fā)出來矗烛,比如Keras,TFLearn箩溃,TensorLayer等

3)PyTorch介紹

PyTorch的前身是Torch瞭吃,而Torch主要是基于Lua這個(gè)小眾編程語言編寫的碌嘀,這導(dǎo)致Torch常年問津人數(shù)稀少。在經(jīng)過Facebook的AI研究團(tuán)隊(duì)的重新編寫后歪架,PyTorch因?yàn)槠鋬?yōu)雅的設(shè)計(jì)重新進(jìn)入人們的視野股冗,并成為最熱門的深度學(xué)習(xí)開源框架之一。

相對(duì)于TensorFlow的靜態(tài)網(wǎng)絡(luò)結(jié)構(gòu)和蚪,PyTorch構(gòu)建的網(wǎng)絡(luò)是動(dòng)態(tài)的止状,這使得PyTorch能在RNN動(dòng)態(tài)時(shí)間長度輸出的問題上有更好的表現(xiàn)。

2.2.3圖像識(shí)別開源框架

> OpenFace(人臉識(shí)別)

OpenFace是在深度學(xué)習(xí)開源框架torch上實(shí)現(xiàn)的基于python語言的人臉識(shí)別開源框架攒霹,其使用的算法是基于CVPR 2015的文章:FaceNet: A Unified Embeddingfor Face Recognition and Clustering

OpenFace還使用了Dlib模型庫來實(shí)現(xiàn)了對(duì)人臉的檢測怯疤,并使用了OpenCV庫來對(duì)圖像數(shù)據(jù)進(jìn)行處理。

通過實(shí)際使用剔蹋,發(fā)現(xiàn)對(duì)人臉的檢測還是可以基本進(jìn)行使用的

> DarkNet - YOLO(物體檢測)

YOLO是一名叫做JosephChet Redmon的大神與他的幾個(gè)小伙伴做的一個(gè)開源實(shí)時(shí)物體檢測系統(tǒng)旅薄。Joseph的幾個(gè)小伙伴來自于華盛頓大學(xué)以及伯克利大學(xué)等知名院校。

YOLO是基于他們開發(fā)的Darknet(基于c語言的神經(jīng)網(wǎng)絡(luò)開源框架)上的一個(gè)應(yīng)用系統(tǒng)泣崩,不同于前置檢測系統(tǒng)將一副圖像的不同位置以及維度分別進(jìn)行分類預(yù)測少梁,YOLO將整幅圖像輸入進(jìn)單一的神經(jīng)網(wǎng)絡(luò)進(jìn)行分類預(yù)測。這使得YOLO相對(duì)于其它的物體檢測網(wǎng)絡(luò)更加的快速矫付。

YOLO開源框架也使用了OpenCV庫來對(duì)圖像進(jìn)行了處理凯沪,這也側(cè)面說明了OpenCV在計(jì)算機(jī)視覺領(lǐng)域上的重要性。

筆者也實(shí)際進(jìn)行了測試买优,發(fā)現(xiàn)在個(gè)別類別上妨马,識(shí)別效果出眾。

3杀赢、配套的深度神經(jīng)網(wǎng)絡(luò)類型

在介紹了計(jì)算機(jī)視覺的背景以及軟硬件環(huán)境之后烘跺,我們?cè)谶@一節(jié)好好的介紹一下計(jì)算機(jī)視覺領(lǐng)域用到的各種網(wǎng)絡(luò)結(jié)構(gòu)

3.1卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks)

1)卷積神經(jīng)網(wǎng)絡(luò)基本介紹

卷積神經(jīng)網(wǎng)絡(luò),也稱CNN脂崔,是圖像識(shí)別滤淳、音頻識(shí)別領(lǐng)域的一個(gè)重要的算法。

卷積神經(jīng)網(wǎng)絡(luò)的工作原理簡單來說就是利用多個(gè)卷積核(過濾器filter)來對(duì)輸入的矩陣(圖像)進(jìn)行抽象砌左,最后輸出抽象出來的分類的過程脖咐。

上圖是一個(gè)簡單的卷積神經(jīng)網(wǎng)絡(luò)計(jì)算過程,通過對(duì)輸入的車輛圖片進(jìn)行不斷的卷積汇歹、激活和池化操作屁擅,最終輸出一個(gè)正確的分類。

2)常用的卷積神經(jīng)網(wǎng)絡(luò)模型

隨著卷積神經(jīng)網(wǎng)絡(luò)的發(fā)明产弹,各種各樣的卷積神經(jīng)網(wǎng)絡(luò)模型被不斷的提出派歌,圖像分類、預(yù)測的準(zhǔn)確率也在不斷的提升。下邊硝皂,我將對(duì)在ImageNet競賽中的歷年冠軍模型進(jìn)行相應(yīng)的介紹常挚,幫助大家理解這些卷積神經(jīng)網(wǎng)絡(luò)的特點(diǎn)作谭。

AlexNet

AlexNet是2012年ImageNet比賽的冠軍稽物,相對(duì)于前幾年的網(wǎng)絡(luò),其準(zhǔn)確率有了很大的提升折欠。

通過上邊AlexNet的具體網(wǎng)絡(luò)架構(gòu)贝或,我們可以看出,相對(duì)于之前的淺層網(wǎng)絡(luò)锐秦,AlexNet首先加深了網(wǎng)絡(luò)的深度咪奖,并使用了多個(gè)卷積層來對(duì)圖像數(shù)據(jù)進(jìn)行了抽象,最終使用了三個(gè)全連接層輸出了包含1000個(gè)類別的分類結(jié)果酱床。

VGGNet

相對(duì)于AlexNet羊赵,VGGNet的網(wǎng)絡(luò)架構(gòu)更深,而且分類效果也更好扇谣。形成這樣結(jié)果的原因在于昧捷,VGGNet使用了更小的filter來代替大的filter。具體的VGGNet網(wǎng)絡(luò)結(jié)構(gòu)請(qǐng)參見下圖

在介紹VGGNet前罐寨,讓我們先看看一個(gè)簡單的數(shù)學(xué)公式:3x3x3 = 27 < 7x7 = 49

通過這個(gè)公式我們可以知道靡挥,三個(gè)3x3的卷積層的參數(shù)數(shù)目其實(shí)比一個(gè)單一的7x7的卷積層要少的多。那么使用多個(gè)更小的卷積核代替一個(gè)大的卷積核能使得網(wǎng)絡(luò)架構(gòu)更深鸯绿,并且需要計(jì)算的參數(shù)更少跋破。

這么做的背后邏輯在于一個(gè)這樣的認(rèn)知:神經(jīng)網(wǎng)絡(luò)的作用其實(shí)是對(duì)輸入數(shù)據(jù)的抽象,這個(gè)抽象過程使得輸入和期望的輸出形成一種映射關(guān)系瓶蝴。

那么更深的網(wǎng)絡(luò)結(jié)構(gòu)就能形成更加非線性的映射關(guān)系毒返,而這種非線性的映射往往能更好的對(duì)輸入數(shù)據(jù)進(jìn)行抽象。

GoogleNet

看過“盜夢空間”的人應(yīng)該對(duì)夢境的嵌套概念不陌生吧舷手,在越深層的夢境中拧簸,時(shí)間過的越慢、造夢師越難分清夢境與現(xiàn)實(shí)聚霜,但是造夢師卻能越接近做夢者的真正的內(nèi)心狡恬,并對(duì)做夢者的思維進(jìn)行影響。

于此概念類似蝎宇,Google的工程師們引入了Inception(盜夢空間電影的英文名)結(jié)構(gòu)弟劲,即在神經(jīng)網(wǎng)絡(luò)中加入另一層的神經(jīng)網(wǎng)絡(luò),并成功的構(gòu)建了GoogleNet網(wǎng)絡(luò)結(jié)構(gòu)姥芥,這種嵌套的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)使得預(yù)測的效果得到了顯著的提高兔乞。GoogleNet的網(wǎng)絡(luò)結(jié)構(gòu)請(qǐng)參見下圖

GoogleNet網(wǎng)絡(luò)結(jié)構(gòu)背后的設(shè)計(jì)思路是這樣的,通過每個(gè)Inception模型,神經(jīng)網(wǎng)絡(luò)對(duì)輸入進(jìn)行了不同粒度的特征轉(zhuǎn)換(分別是1x1庸追、3x3霍骄、5x5和3x3pooling)。這樣子輸出的特征數(shù)據(jù)更加完整淡溯,丟失的信息更少读整,這使得原始數(shù)據(jù)能傳遞到網(wǎng)絡(luò)的更深層。

ResNet

在介紹ImageNet競賽的冠軍模型ResNet之前咱娶,我們先思考一個(gè)問題米间,那就是既然網(wǎng)絡(luò)越深,分類預(yù)測效果越好膘侮,我們?yōu)槭裁床槐M可能深的設(shè)計(jì)我們的網(wǎng)絡(luò)架構(gòu)呢屈糊?

實(shí)際上,已經(jīng)有人做過這方面的測試了琼了,得出的結(jié)果如下:

從圖中可以看出逻锐,神經(jīng)網(wǎng)絡(luò)達(dá)到一定深度后,其深度越深雕薪,其錯(cuò)誤率反而越大昧诱。這是因?yàn)樯窠?jīng)網(wǎng)絡(luò)是通過比較神經(jīng)網(wǎng)絡(luò)的輸出與真實(shí)輸出之間的差別(loss)來對(duì)網(wǎng)絡(luò)中的各種參數(shù)進(jìn)行調(diào)整的,可是當(dāng)深度過深時(shí)蹦哼,這些差別(loss)傳遞到網(wǎng)絡(luò)前端時(shí)造成的變化就已經(jīng)不足了鳄哭。這就形成了一種稱為“梯度消失”的現(xiàn)象,使得神經(jīng)網(wǎng)絡(luò)并不能通過不斷訓(xùn)練提高精度了纲熏。

如何解決這個(gè)問題呢妆丘?一個(gè)直觀的想法就是想辦法讓數(shù)據(jù)的傳遞盡可能的遠(yuǎn)。ResNet就是根據(jù)這種思想構(gòu)建出來的

通過上邊具體架構(gòu)圖我們可以看出局劲,ResNet通過將輸入引入一個(gè)個(gè)的ResidualBlock使得輸入信息的衰減比例得到緩解勺拣,并形成了驚人的152層網(wǎng)絡(luò)結(jié)構(gòu),獲得了很好的結(jié)果鱼填。

3.2循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Networks)

3.2.1循環(huán)神經(jīng)網(wǎng)絡(luò)基本介紹

不同于卷積神經(jīng)網(wǎng)絡(luò)每一層的神經(jīng)元之間沒有關(guān)聯(lián)药有,循環(huán)神經(jīng)網(wǎng)絡(luò)引入了定向循環(huán),能夠處理那些輸入之間前后關(guān)聯(lián)的問題苹丸。即RNN隱藏層中的每個(gè)節(jié)點(diǎn)的輸出不僅與輸入有關(guān)愤惰,而且還與之前狀態(tài)的輸出有關(guān)。具體情況如下圖所示:

3.2.2常用的循環(huán)神經(jīng)網(wǎng)絡(luò)模型

長短記憶神經(jīng)網(wǎng)絡(luò)-LSTM

RNN顯著的魅力是將以前的信息連接到當(dāng)前任務(wù)的這種思路赘理,根據(jù)這種思路宦言,在理論上,RNN絕對(duì)有能力處理“長依賴”問題商模〉焱可在實(shí)踐中蜘澜,RNN似乎無法學(xué)習(xí)到這些特征。

幸運(yùn)的是响疚,LSTM沒有這個(gè)問題鄙信。

長短記憶神經(jīng)網(wǎng)絡(luò)——通常稱作LSTM,是一種特殊的RNN忿晕,能夠?qū)W習(xí)長的依賴關(guān)系装诡。他們由Hochreiter&Schmidhuber引入,并被許多人進(jìn)行了改進(jìn)和普及杏糙。他們?cè)诟鞣N各樣的問題上工作的非常好慎王,現(xiàn)在被廣泛使用。

由上圖可以看到宏侍,相對(duì)于常規(guī)的RNN網(wǎng)絡(luò),LSTM的結(jié)構(gòu)復(fù)雜了許多蜀漆。這里邊的關(guān)鍵是LSTM引入了細(xì)胞狀態(tài)(上圖中最上端的那條水平線即是細(xì)胞狀態(tài))谅河,細(xì)胞的狀態(tài)類似于輸送帶,細(xì)胞的狀態(tài)在整個(gè)鏈上運(yùn)行确丢,只有一些小的線性操作作用其上绷耍,信息很容易保持不變的流過整個(gè)鏈。

LSTM通過三個(gè)門:遺忘門(forgetgate)鲜侥、輸入門(input gate)褂始、輸出門(output gate)來對(duì)數(shù)據(jù)的抽象過程進(jìn)行管理。其中遺忘門負(fù)責(zé)決定對(duì)前一細(xì)胞狀態(tài)的遺忘程度描函;輸入門決定將多少新的輸入信息注入細(xì)胞狀態(tài)中崎苗;輸出門決定將多少新的輸入信息注入到輸出中。

LSTM獨(dú)特的網(wǎng)絡(luò)結(jié)構(gòu)很好的幫助了深層神經(jīng)網(wǎng)絡(luò)對(duì)長距離的信息的理解和保存

GRU

GRU是另一個(gè)很有效的RNN神經(jīng)網(wǎng)絡(luò)舀寓,與LSTM不同的地方在于其將忘記門與輸入門組合成一個(gè)單一的“更新門”胆数,混合了細(xì)胞狀態(tài)c和隱藏狀態(tài)h,使得最終的模型比LSTM模型要簡單

4互墓、檢測與分割

在介紹了計(jì)算機(jī)視覺的基本概念和深度學(xué)習(xí)的基本框架和算法之后必尼,我們來看看在具體實(shí)踐中都有哪些研究方向,在每個(gè)研究方向中我們又該如何進(jìn)行解決和處理篡撵。

4.1語義分割(Semantic segmentation)

語義分割的目標(biāo)是在像素級(jí)別上對(duì)圖片進(jìn)行分類判莉,即輸入一張圖片,我們要輸出一張同樣大小的圖片育谬,然后在圖片的每塊位置都要標(biāo)注出其所屬的分類(具體理解請(qǐng)參照上圖)

那么如何做呢券盅?很簡單,既然知道了輸入和輸出是什么斑司,我們只需要在輸入和輸出之間填充上神經(jīng)網(wǎng)絡(luò)不就行了渗饮!

當(dāng)然實(shí)際的設(shè)計(jì)過程中并不會(huì)簡單的將不同深度的神經(jīng)網(wǎng)絡(luò)堆疊進(jìn)黑盒中來盲目的進(jìn)行計(jì)算但汞。

回到語義分割的具體場景,一個(gè)直觀的思路是通過設(shè)計(jì)一個(gè)卷積神經(jīng)網(wǎng)絡(luò)互站,對(duì)圖片的每個(gè)像素進(jìn)行預(yù)測私蕾。但是這種方式有個(gè)問題,那就是計(jì)算開銷巨大胡桃,針對(duì)這個(gè)問題踩叭,我們可以通過降維操作將原始數(shù)據(jù)縮小,然后再進(jìn)行卷積預(yù)測翠胰,并在最后將輸出升維到原始尺寸容贝。具體的網(wǎng)絡(luò)結(jié)構(gòu)如下所示:

4.2圖像分類與定位(Classification + Localization)

圖像分類與定位的目標(biāo)是識(shí)別出圖片中包含的物體,并將該物體在圖片中框出來之景,即輸入一張圖片斤富,我們要輸出該圖片所屬的物體分類,并輸出該物體在圖片中的位置锻狗。

這個(gè)場景相對(duì)于4.1語義分割來說满力,輸出要少了不少,仿照之前的思路轻纪,我們的目標(biāo)應(yīng)該是構(gòu)造一個(gè)神經(jīng)網(wǎng)絡(luò)油额,輸入為一個(gè)圖片,輸出為圖片分類以及分類物體的坐標(biāo)位置(四個(gè)值:x刻帚、y潦嘶、方框?qū)挾葁、方框高度h)崇众,具體的網(wǎng)絡(luò)結(jié)構(gòu)如下:

于此類似掂僵,如果我們將模型目標(biāo)改成“識(shí)別出圖片中的人的位置,并將人的骨骼點(diǎn)標(biāo)注出來”校摩,我們?cè)撊绾卧O(shè)計(jì)神經(jīng)網(wǎng)絡(luò)呢蚜退?

很簡單覆致,將輸出的五元組(圖片分類栽渴、x芥备、y、w坤塞、h)改成15元組即可(是否有人標(biāo)簽冯勉、左手坐標(biāo)、右手坐標(biāo)摹芙、左手肘坐標(biāo)灼狰、右手肘坐標(biāo)、…浮禾、頭坐標(biāo))

4.3物體檢測(Object detection)

在4.2圖像分類與定位中交胚,模型的目標(biāo)是對(duì)一個(gè)圖片整體進(jìn)行分類份汗,輸出只是一個(gè)物體的位置。而在本節(jié)物體檢測中蝴簇,模型的目標(biāo)是輸出圖片中包含的所有物體類別以及每個(gè)物體的具體位置杯活。

換句話說,物體檢測模型的輸入為一張圖片A熬词,輸出為檢測出的一系列物體以及定位:a(label, location), b(label, location), … , n(label, location)

這個(gè)場景的不同點(diǎn)在于我們需要設(shè)計(jì)出一個(gè)模型旁钧,使得我們能輸出不定數(shù)量的輸出。如何做呢互拾?有以下兩個(gè)思路

1)先通過一個(gè)選擇算法歪今,對(duì)每張圖片分別進(jìn)行預(yù)計(jì)算,確定每張圖片的輸出個(gè)數(shù)(可能的物體數(shù)量)

Region Proposal算法能快速的從一張圖片中選取出可能包含物體的區(qū)域颜矿,在單一CPU上能在幾秒內(nèi)檢測出1000個(gè)可能包含物體的區(qū)域

R-CNN算法在Region Proposal算法的基礎(chǔ)上對(duì)每個(gè)識(shí)別出來的Regions of Interest(ROI)進(jìn)行分類預(yù)測

Fast R-CNN:R-CNN有個(gè)問題就是要對(duì)每個(gè)ROI訓(xùn)練一個(gè)卷積神經(jīng)網(wǎng)絡(luò)分類器寄猩,這樣子太耗資源了,fast-r-cnn在此基礎(chǔ)上進(jìn)行了改進(jìn)或衡,將卷積層前移先將圖片抽象成特征矩陣焦影,并在此矩陣上進(jìn)行Region Proposal,極大的提高了效率

Faster R-CNN:在Fast R-CNN的基礎(chǔ)上封断,F(xiàn)aster R-CNN又做了進(jìn)一步的優(yōu)化,其將Region Proposal算法進(jìn)行了替換舶担。使用一個(gè)專門的神經(jīng)網(wǎng)絡(luò)來負(fù)責(zé)對(duì)可能的Region區(qū)域進(jìn)行篩選

2)用一種通用的規(guī)則坡疼,將每張圖片的輸出個(gè)數(shù)預(yù)先確定下來(定死每張圖片的輸出個(gè)數(shù))

YOLO/SSD:與其用專門的算法將圖片中可能的物體區(qū)域識(shí)別出來進(jìn)行預(yù)測,不如將圖片平均分割衣陶,然后對(duì)每個(gè)分割區(qū)域以不同的粒度來進(jìn)行框選作為一個(gè)可疑包含物體的區(qū)域柄瑰。這種方法能省去區(qū)域識(shí)別的資源開銷,提高效率

4.4實(shí)體分割(Instance Segmentation)

實(shí)體分割是在4.3物體檢測的基礎(chǔ)上的進(jìn)一步細(xì)化的場景剪况,其不僅要把物體識(shí)別出來教沾,而且要對(duì)物體的輪廓進(jìn)行識(shí)別。其輸入是一張圖片译断,輸出為可能的物體以及其像素級(jí)別的坐標(biāo)點(diǎn)授翻。

那么我們其實(shí)可以將該任務(wù)分成兩步:1)物體檢測;2)對(duì)檢測出的物體進(jìn)行輪廓識(shí)別

Mask R-CNN:該算法是在Faster R-CNN的基礎(chǔ)上設(shè)計(jì)的實(shí)體分割算法孙咪,效果很好堪唐。2017年Kaiming He最新的Mask-R-CNN算法也被選為ICCV 2017最佳論文。Mask-RCNN大體框架還是Faster-RCNN的框架翎蹈,可以說在基礎(chǔ)特征網(wǎng)絡(luò)之后又加入了全連接的分割子網(wǎng)淮菠,由原來的兩個(gè)任務(wù)(分類+回歸)變?yōu)榱巳齻€(gè)任務(wù)(分類+回歸+分割)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市荤堪,隨后出現(xiàn)的幾起案子合陵,更是在濱河造成了極大的恐慌枢赔,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,372評(píng)論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件拥知,死亡現(xiàn)場離奇詭異踏拜,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)举庶,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門执隧,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人户侥,你說我怎么就攤上這事镀琉。” “怎么了蕊唐?”我有些...
    開封第一講書人閱讀 162,415評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵屋摔,是天一觀的道長。 經(jīng)常有香客問我替梨,道長钓试,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,157評(píng)論 1 292
  • 正文 為了忘掉前任副瀑,我火速辦了婚禮弓熏,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘糠睡。我一直安慰自己挽鞠,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,171評(píng)論 6 388
  • 文/花漫 我一把揭開白布狈孔。 她就那樣靜靜地躺著信认,像睡著了一般。 火紅的嫁衣襯著肌膚如雪均抽。 梳的紋絲不亂的頭發(fā)上嫁赏,一...
    開封第一講書人閱讀 51,125評(píng)論 1 297
  • 那天,我揣著相機(jī)與錄音油挥,去河邊找鬼潦蝇。 笑死,一個(gè)胖子當(dāng)著我的面吹牛喘漏,可吹牛的內(nèi)容都是我干的护蝶。 我是一名探鬼主播,決...
    沈念sama閱讀 40,028評(píng)論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼翩迈,長吁一口氣:“原來是場噩夢啊……” “哼持灰!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起负饲,我...
    開封第一講書人閱讀 38,887評(píng)論 0 274
  • 序言:老撾萬榮一對(duì)情侶失蹤堤魁,失蹤者是張志新(化名)和其女友劉穎喂链,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體妥泉,經(jīng)...
    沈念sama閱讀 45,310評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡椭微,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,533評(píng)論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了盲链。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蝇率。...
    茶點(diǎn)故事閱讀 39,690評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖刽沾,靈堂內(nèi)的尸體忽然破棺而出本慕,到底是詐尸還是另有隱情,我是刑警寧澤侧漓,帶...
    沈念sama閱讀 35,411評(píng)論 5 343
  • 正文 年R本政府宣布锅尘,位于F島的核電站,受9級(jí)特大地震影響布蔗,放射性物質(zhì)發(fā)生泄漏藤违。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,004評(píng)論 3 325
  • 文/蒙蒙 一纵揍、第九天 我趴在偏房一處隱蔽的房頂上張望顿乒。 院中可真熱鬧,春花似錦泽谨、人聲如沸淆游。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至拾稳,卻和暖如春吮炕,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背访得。 一陣腳步聲響...
    開封第一講書人閱讀 32,812評(píng)論 1 268
  • 我被黑心中介騙來泰國打工龙亲, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人悍抑。 一個(gè)月前我還...
    沈念sama閱讀 47,693評(píng)論 2 368
  • 正文 我出身青樓鳄炉,卻偏偏與公主長得像,于是被迫代替她去往敵國和親搜骡。 傳聞我的和親對(duì)象是個(gè)殘疾皇子拂盯,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,577評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容

  • 配置環(huán)境 通過學(xué)習(xí)docker,來編寫Dockerfile來構(gòu)建java的環(huán)境 centos的image構(gòu)建 直接...
    LOC_Thomas閱讀 2,878評(píng)論 0 1
  • 一 時(shí)光沉默等候良久 是否是那盞讓人眷念的燈 照亮了黑暗中你帶著愁緒的眉眼 伊人记靡、少年在夢里告別前世的情緣 二 青...
    陶韻閱讀 237評(píng)論 0 1
  • 《丹朱詞》 詞:梅溪仙子 仙客在陌生沼澤里釋放藕香 顫微微地把丹陽的名字呼唱 但黧的色斑糾結(jié)愛美的丹朱 陰沉沉攀不...
    梅溪仙子閱讀 343評(píng)論 0 1
  • 你相信緣分嗎谈竿?不管你信不信团驱,我信!皮蛋和沐沐兄妹倆竟然可以出生在同一天~~9.18空凸!生命中的巧合真的是最好的導(dǎo)...
    沁芳齋閱讀 3,723評(píng)論 0 0
  • 本文參加#未完待續(xù)嚎花,就要表白#活動(dòng),本人承諾呀洲,文章內(nèi)容為原創(chuàng)紊选,且未在其他平臺(tái)發(fā)表過。 去年的那個(gè)暑假道逗,我來...
    春與少年閱讀 125評(píng)論 0 0