国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于深度學習的場景數(shù)字檢出

2019-03-28 09:09
制造業(yè)自動化 2019年3期
關(guān)鍵詞:邊界卷積神經(jīng)網(wǎng)絡(luò)

(青島大學 自動化與電氣工程學院,青島 266071)

0 引言

隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,信息量劇增,現(xiàn)已進入到大數(shù)據(jù)時代。網(wǎng)絡(luò)每天會產(chǎn)生龐大的信息量,面臨的一個巨大難題就是從海量的信息中提取出對我們有用的信息。網(wǎng)上的圖片、視頻都包含大量的文本信息,這些信息稱為場景文本信息。場景文字檢出的研究早在21世紀初就開始了,目的是識別圖片、視頻中的文字。傳統(tǒng)的方法有基于數(shù)字特征(連通域)的方法[1],支持向量機( Support Vector Machines)[2],BP神經(jīng)網(wǎng)絡(luò)[3]等,傳統(tǒng)的檢出思路大致分為兩步,先檢測定位文本,再進行識別[4]。現(xiàn)階段一些算法將兩步并作一步,定位與檢測同步進行,稱為端對端檢測,本文采用的YOLO(You Only Look Once)算法,便可以實現(xiàn)端對端檢測。許多新型應用都需要提取某些場景中的數(shù)字信息,例如:車牌號的識別;拍照翻譯、搜題;馬拉松過程中對運動員的實時監(jiān)測;集裝箱箱號的識別等,這已經(jīng)成為計算機視覺的熱門研究方向,該研究具有廣闊的應用前景。

1 傳統(tǒng)檢出方法

傳統(tǒng)的文字檢出,大多是基于字符[5],即先檢測字符,再對其進行組合,比如利用SVM和ANN實現(xiàn)的字符識別[6]。傳統(tǒng)的檢出方法一般分兩步,首先要確定文本的位置。常見的方法,是假設(shè)文本之間是連通的,通過對圖像進行二值化,膨脹,腐蝕等處理,將待檢測文本真正連通起來,從而確定待檢出文本的位置。但是如果圖像質(zhì)量不高,背景復雜,處理起來會很麻煩。第二步,要檢測文本,需要先分割圖像,將一串字符分割成單個字符,然后再逐步對單個字符進行檢測,最后將檢測結(jié)果輸出。

這種方法的缺點就是在于只適合場景簡單的圖像,對于復雜場景下的文本,定位與檢測都有難度。需要對圖像做細致的處理,大大增加了工作量。通?,F(xiàn)實場景都是很復雜的,所以這種方法在實際應用上會有很大局限。

2 基于深度學習的方法

近幾年,深度學習越來越成熟,出現(xiàn)了很多新算法,在許多領(lǐng)域都取得了不錯的成就[7]。本文將圖像分類問題用目標檢測算法來解決,目標檢測算法主要分為兩類:One-Stage和Two-Stage檢測算法。Two-Stage檢測算法是先產(chǎn)生候選區(qū)域,再對候選區(qū)域分類,代表算法有R-CNN、Fast-R-CNN和Faster-R-CNN算法。One-Stage算法不需要產(chǎn)生候選區(qū)域,直接進行分類,代表算法有SSD和YOLO算法[8]。兩者都是基于深度學習的卷積神經(jīng)網(wǎng)絡(luò),但是設(shè)計思路有些方面有所不同,各有優(yōu)勢。R-CNN系列算法檢測的精準度比較高,速度略遜一籌,YOLO算法檢測速度較快,但是在精度上不及R-CNN[9]。因為本文是用于檢測數(shù)字,檢測對象只是0~9十個數(shù)字,YOLO算法的精度完全可以滿足,并且速度更快,所以選擇YOLO算法。

2.1 檢測思路

區(qū)別于傳統(tǒng)方法,基于深度學習的文字檢出,將定位與判斷并作一步,同時進行,實現(xiàn)端對端的數(shù)字檢測。

R-CNN算法,采用的是滑動窗口技術(shù),即對于一張圖像,用一個小窗口按照規(guī)定的步長在圖像上滑動,每滑動一步,做一次圖像分類,這樣便做到對整張圖像的檢測。但是,對于不同的檢測對象,滑動窗口大小的選擇也是問題,而且選擇不同大小的窗口,產(chǎn)生的候選區(qū)域太多,運算量太大,從而檢測速度會降低[10]。Fast-RCNN就此做出了改進,用卷積層代替原來的全鏈接層,改進后運算量減小,檢測速度便大大提高。

區(qū)別R-CNN,YOLO算法采用了一種新穎的思路,沒有采用滑動窗口,而是直接將圖像分割成若干個格子,再通過卷積得到每個單元格的特征圖,然后每個單元格各自負責預測中心點落在自己區(qū)域內(nèi)的目標。這樣就消除了復雜的滑動窗口的計算量,所以在檢測速度上要快一些。每個單元格會預測幾個邊界框和它們的置信度,邊界框的置信度包括兩個方面,包含檢測目標的可能性和邊界框的準確度。每個邊界框的預測值包括五個元素:(x,y,w,h,c),(x,y)是邊界框的中心坐標,(w,h)是邊界框的寬和高,c為置信度。

邊界框類別置信度計算公式:

Pr表示邊界框包含目標的可能性;IOU表示邊界框的準確度,即預測框跟實際框的并集;Pr(classi|object)表示這個單元格負責預測的目標屬于各個類別的概率,即各個邊界框置信度下的條件概率。每個單元格需要預測B×5+C個值,B表示邊界框的數(shù)量,C表示類別數(shù)。

2.2 神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)

YOLO從誕生以來,不斷更新完善,網(wǎng)絡(luò)結(jié)構(gòu)也越來越復雜。YOLOv1由24個卷基層和2個全連接層組成,卷基層負責獲取特征,全連接層負責預測,卷積層和全連接層采Leaky-ReLU激活函數(shù)[11]。

YOLOv2采用高分辨率分類器,并且在每個卷積層后面添加了Batch Normalization層,Batch Normalization可以提高模型的收斂速度。YOLOv1是用全連接層直接對邊界框進行預測,根據(jù)邊界框預測的4個offsets tx,ty,tw,th,用下面的公式計算邊界框的實際位置和大小:

其中(cx,cy)為cell左上角坐標,pw和ph是先驗框的寬度和長度。

邊界框相對整張圖片的位置和大小:

其中(W,H)是特征圖的大小。

YOLOv2采用卷積層和anchor boxes來代替原來全連接層進行預測。YOLOv2的特征提取器,采用一種新的模型,由19個卷基層和5個maxpooling層構(gòu)成。YOLOv2的輸入圖片大小要求為416×416,經(jīng)過5個maxpooling層后,大小變?yōu)?3×13的特征圖。

YOLOv3采用殘差網(wǎng)絡(luò)和FPN架構(gòu),它的特征提取器是一個殘差模型,包含了53個卷積層,網(wǎng)絡(luò)構(gòu)建更深,可以多尺度預測[12]。此外,基礎(chǔ)分類網(wǎng)絡(luò)和分類器也得到升級,Softmax不適用多標簽分類,所以使用多個獨立的Logistic分類器替代Softmax。

YOLOv3的網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。

圖1 OLOv3網(wǎng)絡(luò)結(jié)構(gòu)圖

場景文字的檢出,文字背景對檢出干擾很大。相對來說YOLOv3的檢測速度更快,可以進行實時檢測,而且背景誤檢率低,所以采用最新的YOLOv3模型。

3 實驗過程

3.1 樣本采集

本文使用自己制作的數(shù)據(jù)集,訓練樣本10000張,測試樣本200張。訓練數(shù)據(jù)包含圖片和標簽兩個部分,標簽部分使用標注工具YOLO-mark來制作,標簽以文本文件形式保存。樣本圖片的場景包括運動員的號碼牌、車牌、超市物價牌和廣告牌等,各類場景樣本數(shù)量大致相同。此外,YOLO自帶圖像增強功能,實際上訓練時會基于角度、飽和度、曝光和色調(diào)產(chǎn)生更多的訓練樣本。

3.2 樣本訓練

本文的訓練是在Ubuntu16.04系統(tǒng)下進行,在該系統(tǒng)下配置了基于YOLO的開源神經(jīng)網(wǎng)絡(luò)框架-Darknet,用來訓練和測試,訓練過程的部分參數(shù)如表1所示。Region Avg IOU代表預測的矩形框和真實目標的交集與并集之比,IOU值越高說明預測框位置越準確;Class表示標注目標分類的準確率;Obj指標的值期望越接近1越好;No Obj指標的值期望越接近0越好,但不為0。隨著迭代次數(shù)的增加,各項指標均有改善,在迭代了大約15000次后,各項指標趨于穩(wěn)定,模型訓練時長約為70小時。

表1 訓練過程部分參數(shù)

3.3 樣本測試

利用迭代20000次后生成的模型,分別選取不同場景下的圖片進行進行測試,部分測試結(jié)果如圖2所示。

圖2 部分測試結(jié)果圖

圖2中圖片的的具體檢測結(jié)果如表2所示。

表2 測試結(jié)果

測試結(jié)果表明YOLO算法可以實現(xiàn)場景中的數(shù)字檢出任務。檢測速度較快,平均在0.07秒左右即可完成一張圖片的檢出。準確率較高,幾乎達到百分百檢出,但當圖像中的數(shù)字較小,很模糊的情況下,會出現(xiàn)漏檢或者誤檢的情況,漏檢的概率高于誤檢概率。針對這個問題,可以通過增加訓練樣本量加以改善。

4 結(jié)束語

針對傳統(tǒng)方法在場景數(shù)字檢測上,弊端較多。其中圖像預處理在傳統(tǒng)方法中工作量占比很大,本文采用深度學習方法進行場景數(shù)字檢測,避免了圖像預處理的工作,直接檢測給定圖像,減少了工程的工作量。采用深度學習方法進行場景數(shù)字檢出,將定位文本與識別并作一步,實現(xiàn)了端對端的檢測。實驗結(jié)果表明該方法檢測速度快,準確率高,具有較高的應用價值。該實驗采用的YOLOv3的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),但是其神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)對于數(shù)字檢出來說過于復雜,下一階段研究要在YOLOv3的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)基礎(chǔ)上進行改進,精簡其結(jié)構(gòu),搭建出一種更適合場景數(shù)字檢出的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),進一步提升檢測速度和準確率。

猜你喜歡
邊界卷積神經(jīng)網(wǎng)絡(luò)
基于遞歸模糊神經(jīng)網(wǎng)絡(luò)的風電平滑控制策略
守住你的邊界
拓展閱讀的邊界
基于3D-Winograd的快速卷積算法設(shè)計及FPGA實現(xiàn)
探索太陽系的邊界
意大利邊界穿越之家
卷積神經(jīng)網(wǎng)絡(luò)的分析與設(shè)計
神經(jīng)網(wǎng)絡(luò)抑制無線通信干擾探究
從濾波器理解卷積
基于神經(jīng)網(wǎng)絡(luò)的中小學生情感分析
民丰县| 乌苏市| 闵行区| 荆门市| 南靖县| 衢州市| 灵丘县| 宣恩县| 长葛市| 定边县| 股票| 屯留县| 贺州市| 邯郸县| 准格尔旗| 星子县| 贞丰县| 彝良县| 柞水县| 麟游县| 凤翔县| 腾冲县| 开阳县| 汝城县| 金乡县| 梅河口市| 英超| 息烽县| 外汇| 阿拉善左旗| 翼城县| 胶州市| 延安市| 体育| 深泽县| 鹿邑县| 商都县| 南平市| 潍坊市| 汾阳市| 华池县|