1. 計算機視覺——典型的目標檢測演算法(OverFeat演算法)(二)
【嵌牛導讀】目標檢測在現實中的應用很廣泛,我們需要檢測數字圖像中的物體位置以及類別,它需要我們構建一個模型,模型的輸入一張圖片,模型的輸出需要圈出圖片中所有物體的位置以及物體所屬的類別。在深度學習浪潮到來之前,目標檢測精度的進步十分緩慢,靠傳統依靠手工特徵的方法來提高精度已是相當困難的事。而ImageNet分類大賽出現的卷積神經網路(CNN)——AlexNet所展現的強大性能,吸引著學者們將CNN遷移到了其他的任務,這也包括著目標檢測任務,近年來,出現了很多目標檢測演算法。
【嵌牛鼻子】計算機視覺
【嵌牛提問】如何理解目標檢測演算法——OverFeat
【嵌牛正文】
一、深度學習的典型目標檢測演算法
深度學習目標檢測演算法主要分為 雙階段檢測演算法 和 單階段檢測演算法 ,如圖1所示。
雙階段目標檢測演算法先對圖像提取候選框,然後基於候選區域做二次修正得到檢測結果,檢測精度較高,但檢測速度較慢;單階段目標驗測演算法直接對圖像進行計算生成檢測結果,檢測速度快,但檢測精度低。
1、雙階段目標檢測演算法
雙階段目標檢測方法主要通過選擇性搜索(Selective Search)或者Edge Boxes等演算法對輸入圖像選取可能包含檢測目標的候選區域(Region Proposal),再對候選區域進行分類和位置回歸以得到檢測結果。
1.1 OverFeat 演算法
《OverFeat: Integrated Recognition, Localization and Detection using Convolutional Networks》
Sermanet 等改進AlexNet 提出 OverFeat 演算法。該演算法結合AlexNet通過多尺度滑動窗口實現特徵提取功能,並且共享特徵提取層,應用於圖像分類、定位和目標檢測等任務。
關鍵技術:
1、FCN( 全卷積神經網路 )
對於一個各層參數結構都設計好的網路模型,要求輸入圖片的尺寸是固定的(例如,Alexnet要求輸入圖片的尺寸為227px*227px)。如果輸入一張500*500的圖片,希望模型仍然可以一直前向傳導,即一個已經設計完畢的網路,可以輸入任意大小的圖片,這就是FCN。
FCN的思想在於:
1、從卷積層到全連接層,看成是對一整張圖片的卷積層運算。
2、從全連接層到全連接層,看成是採用1*1大小的卷積核,進行卷積層運算。
如上圖所示,綠色部分代表卷積核大小。假設一個CNN模型,其輸入圖片大小是14*14,通過第一層卷積後得到10*10大小的圖片,然後接著通過池化得到了5*5大小的圖片。像但是對於像素值為5*5的圖片到像素值為1*1的圖片的過程中:
(1)傳統的CNN:如果從以前的角度進行理解的話,那麼這個過程就是全連接層,我們會把這個5*5大小的圖片,展平成為一維向量進行計算。
(2)FCN:FCN並不是把5*5的圖片展平成一維向量再進行計算,而是直接採用5*5的卷積核,對一整張圖片進行卷積運算。
二者本質上是相同的,只是角度不同,FCN把這個過程當成了對一整張特徵圖進行卷積,同樣,後面的全連接層也是把它當做是以1*1大小的卷積核進行卷積運算。
當輸入一張任意大小的圖片,就需要利用以上所述的網路,例如輸入一張像素為16*16的圖片:
根據上圖,該網路最後的輸出是一張2*2的圖片。可見採用FCN網路可以輸入任意大小的圖片。同時需要注意的是網路最後輸出的圖片大小不在是一個1*1大小的圖片,而是一個與輸入圖片大小息息相關的一張圖片。
Overfeat就是把採用FCN的思想把全連接層看成了卷積層,在網路測試階段可以輸入任意大小的圖片。
2、offset max-pooling
簡單起見,不用二維的圖像作為例子,而是採用一維作為示例:
如上圖所示,在X軸上有20個神經元,並且選擇池化size=3的非重疊池化,那麼根據之前所學的方法應該是:對上面的20個神經元,從1位置開始進行分組,每3個連續的神經元為一組,然後計算每組的最大值(最大池化),19、20號神經元將被丟棄,如下圖所示:
或者可以在20號神經元後面,添加一個數值為0的神經元編號21,與19、20成為一組,這樣可以分成7組:[1,2,3],[4,5,6]……,
[16,17,18],[19,20,21],最後計算每組的最大值。
如果只分6組,除了以1作為初始位置進行連續組合之外,也可以從位置2或者3開始進行組合。也就是說其實有3種池化組合方法:
A、△=0分組:[1,2,3],[4,5,6]……,[16,17,18];
B、△=1分組:[2,3,4],[5,6,7]……,[17,18,19];
C、△=2分組:[3,4,5],[6,7,8]……,[18,19,20];
對應圖片如下:
以往的CNN中,一般只用△=0的情況,得到池化結果後,就送入了下一層。但是該文獻的方法是,把上面的△=0、△=1、△=2的三種組合方式的池化結果,分別送入網路的下一層。這樣的話,網路在最後輸出的時候,就會出現3種預測結果了。
前面所述是一維的情況,如果是2維圖片的話,那麼(△x,△y)就會有9種取值情況(3*3);如果我們在做圖片分類的時候,在網路的某一個池化層加入了這種offset 池化方法,然後把這9種池化結果,分別送入後面的網路層,最後的圖片分類輸出結果就可以得到9個預測結果(每個類別都可以得到9種概率值,然後我們對每個類別的9種概率,取其最大值,做為此類別的預測概率值)。
演算法原理:
文獻中的演算法,就是把這兩種思想結合起來,形成了文獻最後測試階段的演算法。
1、論文的網路架構與訓練階段
(1)網路架構
對於網路的結構,文獻給出了兩個版本——快速版、精確版,一個精度比較高但速度慢;另外一個精度雖然低但是速度快。下面是高精度版本的網路結構表相關參數:
表格參數說明:
網路輸入:圖片大小為221px*221px;
網路結構方面基本上和AlexNet相同,使用了ReLU激活,最大池化。不同之處在於:(a)作者沒有使用局部響應歸一化層;(b)然後也沒有採用重疊池化的方法;(c)在第一層卷積層,stride作者是選擇了2,這個與AlexNet不同(AlexNet選擇的跨步是4,在網路中,如果stride選擇比較大得話,雖然可以減少網路層數,提高速度,但是卻會降低精度)。
需要注意的是把f7這一層,看成是卷積核大小為5*5的卷積層,總之就是需要把網路看成前面所述的FCN模型,去除了全連接層的概念,因為在測試階段可不是僅僅輸入221*221這樣大小的圖片,在測試階段要輸入各種大小的圖片,具體請看後面測試階段的講解。
(2)網路訓練
訓練輸入:對於每張原圖片為256*256,然後進行隨機裁剪為221*221的大小作為CNN輸入,進行訓練。
優化求解參數設置:訓練的min-batchs選擇128,權重初始化選擇高斯分布的隨機初始化:
然後採用隨機梯度下降法,進行優化更新,動量項參數大小選擇0.6,L2權重衰減系數大小選擇10-5次方。學習率初始化值為0.05,根據迭代次數的增加,每隔幾十次的迭代後,就把學習率的大小減小一半。
然後就是DropOut,這個只有在最後的兩個全連接層,才採用dropout,dropout比率選擇0.5。
2、網路測試階段
在Alexnet的文獻中,預測方法是輸入一張圖片256*256,然後進行multi-view裁剪,也就是從圖片的四個角進行裁剪,還有就是一圖片的中心進行裁剪,這樣可以裁剪到5張224*224的圖片。然後把原圖片水平翻轉一下,再用同樣的方式進行裁剪,又可以裁剪到5張圖片。把這10張圖片作為輸入,分別進行預測分類,在後在softmax的最後一層,求取個各類的總概率,求取平均值。
然而Alexnet這種預測方法存在兩個問題:
一方面這樣的裁剪方式,把圖片的很多區域都給忽略了,這樣的裁剪方式,剛好把圖片物體的一部分給裁剪掉了;
另一方面,裁剪窗口重疊存在很多冗餘的計算,像上面要分別把10張圖片送入網路,可見測試階段的計算量還是較大的。
Overfeat演算法:
訓練完上面所說的網路之後,在測試階段不再是用一張221*221大小的圖片了作為網路的輸入,而是用了6張大小都不相同的圖片,也就是所謂的多尺度輸入預測,如下表格所示:
當網路前向傳導到layer 5的時候,就利用了前面所述的FCN、offset pooling這兩種思想的相結合。現以輸入一張圖片為例(6張圖片的計算方法都相同),講解layer 5後面的整體過程,具體流程示意圖如下:
步驟一:
對於某個尺度的圖片,經過前五層的卷積後得到特徵圖。上圖中特徵圖的解析度是20x23,256個通道。
步驟二:
對於該特徵圖,重復多次使用非重疊的池化,每次池化的偏置不同,有行偏置和列偏置。上圖中偏置池化3次,偏置分別為為(0,1,2)。這就是offset pooling,也被稱為fine stride。offset pooling得到的特徵圖的維度為6x7x3x3xD,其中6x7是特徵圖的解析度,3x3是偏置池化的次數,D是通道數。上圖中是以1維顯示的。
步驟三:
池化後得到的特徵圖將被送入分類器。
步驟四:
分類器的輸入是的5x5xD,輸出是C(類別數)維向量。但是offset pooling後得到的特徵圖並不是5x5xD,比如上圖中的特徵圖大小為6x7xD,因此分類器以滑動窗口的方式應用在特徵圖上,每個滑動窗口經過分類器輸出一個C維向量。比如上圖中輸入的6x7xD的特徵圖最終得到2x3xC的輸出,其中2x3是滑動窗口的個數。
步驟五:
而2x3xC只是一組偏置池化的輸出,總的輸出為2x3x3x3xC,將輸出的張量reshape,得到6x9xC輸出張量。最終輸出分類張量為3d張量,即兩個解析度維度 x C維。
然後需要在後面把它們拉成一維向量,這樣在一個尺度上,可以得到一個C*N個預測值矩陣,每一列就表示圖片屬於某一類別的概率值,並且求取每一列的最大值,作為本尺度的每個類別的概率值。
最後一共用了6種不同尺度(文獻使用了12張,另外6張是水平翻轉的圖片)進行做預測,然後把這六種尺度結果再做一個平均,作為最最後的結果。
從上面過程可以看到整個網路分成兩部分:layer 1~5這五層稱之為特徵提取層;layer 6~output稱之為分類層。
六、定位任務
用於定位任務的時候,就把分類層(上面的layer 6~output)給重新設計一下,把分類改成回歸問題,然後在各種不同尺度上訓練預測物體的bounding box。
2. 全圓測回法觀測水平角的操作步驟是什麼
??回法測測水平角方法1.經緯儀的安置1)松開三腳架,安置於測站點上。其高度大約在胸口附近,架關大致水平。2)打開儀器箱,雙手握住儀器支架,將儀器從箱中取出置於架關上。一手緊握支架,一手擰緊連螺旋。2.熟悉儀器各部件的名稱和作用。??3.經緯儀的使用對中:調整對中器對光螺旋,看清測站點,依次移動三腳架的其中兩個腳,使對中器中的十字絲對准測站點,踩緊三腳架,通過調節三腳架高度使圓水準氣泡居中。整平:轉動照準部,使水準管平行於任意一對腳螺旋,同時相對旋轉這對腳螺旋,使水準管氣泡居中;將照準部繞豎軸轉動90°,旋轉第三隻腳螺旋,使氣泡居中。??再轉動90°,檢查氣泡誤差,直到小於妥劃線的一格為止。瞄準:用望遠鏡上瞄準器瞄準目標,從望遠鏡中看到目標,旋轉望遠鏡和照準部的制動螺旋,轉動目鏡螺旋,使十字絲清晰。再轉動物鏡對光螺旋,使目標影像清晰,轉動望遠鏡和照準部的微動螺旋,使目標被單根豎絲平分,或將目標夾在雙根豎絲中央。??讀數:打開反光鏡,調節反光鏡使讀數窗亮度適當,旋轉讀數顯微鏡的目鏡,看清讀數窗分劃,根據使用的儀器用分微尺或測微尺讀數。測回法測測水平角的步驟1)度盤配置:設共測n個測回,則第I個測回的度盤位置為略大於。若測兩個測回,根據公式計算第一測回起始讀數稍大於0°,第二測回起始讀數稍大於90°。??2)一測回觀測盤左瞄準左邊目標A,進行讀數記a1,順時針方向轉動照準部,瞄準右邊目標B,進行讀數記b1,計算上半測回角值β左=b1-a1。盤右瞄準右目標B,進行讀數記b2,逆時針方向轉動照準部,瞄準目標A,進行讀數記a2,計算下半測回角值β右=b2-a2。????檢查上、下半測回角值互差是否超限,計算一測回角值。(3)測站觀測完畢後,檢查各測回角值互差不超過±24″,計算各測回的平均角值。回法測測水平角注意事項1.瞄準目標時,盡可能瞄準其底部。2.同一測回觀測時,切勿誤動度盤變換手輪或復測扳手。
3. DOTA V1.5數據集:基於航空圖像的大規模目標檢測數據集
目標檢測是計算機視覺任務中一個具有挑戰性的方向。盡管在過去十年中目標檢測在自然場景中有了重大突破,但是在航拍圖像的進展是十分緩慢的,這不僅是因為地球表面相同類別物體的規模、方向和形狀有著巨大的差異,而且還因為缺少航拍影像中目標對象的標注信息。為了推進「Earth Vision」(也稱為「地球觀測和遙感」)中目標檢測的研究,我們提出了用於航拍影像中用於目標檢測的大規模數據集(DOTA)。我們從不同的感測器和平台收集了2806個航拍影像,每張圖像的大小約為4000*4000像素,並包含了各種不同比例、方向和形狀的目標對象。航拍圖像專家將這些DOTA數據集圖像中常見的15種對象類別進行標注。完全注釋之後的DOTA數據集圖像包含188282個實例,每個實例都由四點確定的任意四邊形(8 d.o.f.)標記。為了建立地球視覺中目標檢測的基準,我們評估了DOTA上最新的目標檢測演算法。實驗表明,DOTA能夠代表真實的地球視覺應用,並具有一定的挑戰性。
Earth Vision中的目標檢測是指在將地球表面感興趣的物體(例如車輛、飛機場)定位並預測他們的類別。與傳統的目標檢測數據集相反,在傳統的目標檢測數據集中,物體的位置通常由於重力而以一種向上的姿態出現,航拍圖像中物體的實例通常以任意狀態出現,如圖1所示,這取決於航拍視角的關系。
由於計算機視覺領域的最新進展以及Earth Vision應用的高要求,有大量的研究者已經開始圍繞航拍影像中的目標檢測開展研究,這些方法中的大多數嘗試將原有的目標檢測演算法應用在航拍影像中。最近,在基於深度學習的目標檢測演算法取得巨大成功的鼓舞下,Earth Vision的研究者們基於大規模數據集(ImageNet和MSCOCO數據集)預訓練模型上進行微調網路的方法,使之在航拍數據集檢測中有所改善。
盡管這種基於微調的方法是可行的,但是如圖1所示,航拍圖像中的目標檢測與常規的目標檢測有著以下方面的區別:
近年來,在一些較為依賴數據的研究中,數據集扮演著十分重要的角色,像MSCOCO這樣的大型數據集在促進目標檢測和圖像捕捉研究方面發揮了重要的作用。當涉及到分類任務和場景識別任務時,ImageNet以及Places也很重要。
但是,在航拍目標檢測中,缺少像MSCOCO和ImageNet這樣在圖像數量和詳細注釋方面的數據集,特別是對於開發基於深度學習的演算法時,這是Earth Vision研究的主要障礙之一。航拍目標檢測對於車輛計數,遠程目標跟蹤和無人駕駛領域非常有用。因此,創建一個能實際應用的大規模數據集並提出富有挑戰性的航拍目標檢測基準對於促進該領域的研究十分必要。
我們認為,一個好的航拍影像數據集應該具有以下四個屬性:
1)大量的圖片;2)每個類別都有很多實例;3)合適角度的目標注釋框;4)許多不同類別的對象,這使得數據集能夠應用到實際中。然而目前所公開的航拍數據集存在以下缺點:圖像數據和類別不足,缺少更精細的注釋以及解析度過低。而且,它們缺少復雜性並不能足以應用再實際現實世界中。
像TAS,VEDAI,COWC等數據集只關注車輛,UCAS-AOD包含汽車和飛機,HRSC2016隻包含船隻,雖然有標注細致的分類信息。但所有這些數據集在類別的數量上都是少的,這對它們在復雜場景的泛化適應上有所約束。作為對比,NWPU VHR-10數據集由10種類型的物體組成,而它的總實例數大概只有3000。關於這些已存在的數據集的具體比較細節在表1中給出。我們在第四部分可以看到,對比這些航拍數據集,DOTA具有更龐大的目標實例數目、隨意但是均勻的方向,多樣性的分類目錄和復雜的航拍場景。此外,DOTA數據集中的場景與真實場景更加一致,所以DOTA數據集對於真實世界應用開發來說是更有幫助的。
當涉及到普通對象數據集時,ImageNet和MSCOCO因其具有大量的圖像、更多的類別和詳細的注釋而被大多數研究人員所選擇。在所有對象檢測數據集中,ImageNet的圖像數量最多。但是每個圖像的平均實例數遠少於MSCOCO和我們的DOTA數據集,而且必須擁有干凈的背景和精心選擇的場景帶來了局限性,DOTA數據集中的圖像包含大量的對象實例,其中一些圖片具有1000多個實例。 PASCAL VOC數據集在每個圖像和場景的實例上與ImageNet相似,但是圖像數量不足使得它不適合處理大多數檢測需求。我們的DOTA數據集在實例編號和場景類型方面類似於MSCOCO,但是DOTA的類別不如MSCOCO那樣多,因為可以在航拍影像中能清晰看到的對象時非常有限的。
此外,在上文提到的大規模普遍目標檢測基準中DOTA數據集的特別之處在於使用OBB方法注釋,OBB可以很好的區分目標物體的離散與聚集,在第三部分詳細描述了使用OBB注釋目標物體的好處。在表2中對DOTA,PASCAL VOC,ImageNet and MSCOCO等數據集的比較中給出不同點。
在航拍數據集中由於存在多種多樣的感測器被使用的情況,導致數據集產生偏差。為了消除這些偏差,我們數據集中的圖片是由多解析度多感測器和多平台收集而來的,如谷歌地球。為了提高數據的多樣性,我們收集的圖片的城市是由圖像判讀方面的專家來挑選的。在挑選過程中,會記錄下精確的地理坐標,來捕捉圖片使得確保沒有重復的圖像。
我們的DOTA數據集注釋選擇了15種類別,包括飛機、船隻、儲蓄罐、棒球內場、網球場、籃球場、田徑場、海港、橋、大型車輛、小型車輛、直升飛機、英式足球場、環狀交叉路口、游泳池。
標注類別是由圖像判讀方面的莊家根據目標物體的普遍性和現實世界中存在的價值來挑選的,前十個類別在已有的數據集中很普遍,我們保留了下來,除了將交通工具的汽車分為大型和小型,因為兩種類型的汽車在航拍圖像上區別很大。其他的類別主要是由於現實場景的應用。我們選擇直升機是考慮到航拍圖像中運動物體具有重要的意義,環狀交叉路口被選中是因為它在巷道分析中具有重要意義。
要不要把「stuff」作為一類是值得探討的,在SUN數據集中,一般說來沒有明確的定義說明什麼是stuff一類,比如海港、機場、停車場。但是,它們提供的語義信息是對檢測有幫助的。我們只採納了海港分類,因為它的邊界容易定義,並且在我們的圖片源信息中有豐富的實例。最後拓展的分類是足球場。
在表2我們比較了DOTA和NWPU VHR_10,後者在先前存在的航拍圖像目標檢測數據集中有更多的分類數。而且DOTA在目錄分類數目和每一類下的實例數目都遠超過了NWPU VHR-10。
我們考慮了許多不同的注釋方法。在計算機視覺領域,許多視覺概念(比如區域說明,目標,屬性,關系)都可以被一個注釋邊框說明,對邊框的一個普遍描述一般採用 ,其中 表示位置, 是邊框的寬和高度。
沒有一定方向的物體可以採用這種注釋方式充分注釋。然而,在航拍影像中的文本和物體以這種方式標記的邊界框不能精確或緊湊地貼合物體的輪廓。如圖3(c)所示的極端但實際的普遍存在情況和圖(d)比起來,兩個邊界框之間的重疊是如此之大以至於最先進的對象檢測方法也不能區分它們。為了解決這一問題,我們需要一種其他更適合面向這種有一定方向物體的注釋方法。
一個可選選項是採用基於 的邊界框,它被應用於一些文本檢測基準,即 ,其中 表示從邊界框與水平方向的夾角度。但這種方法的缺點是依舊不能貼合圍繞住那些不同部分之間可能有較大變形的物體。考慮到航拍圖像中物體的復雜場景和物體的各種方位,我們需要放棄這種方法選擇其他更靈活易懂的方式。一種可供選擇的方法是使用任意四邊形邊界框,它可以被描述為: ,其中 表示圖像中定向邊界框的頂點的位置,頂點按順時針順序排列,這種方法在定向場景的文本檢測中廣泛使用。我們受到這些研究的啟發,在注釋物體時使用這種任意四邊形邊界框的方式。
為了進行更具體的注釋,如圖3所示,我們強調了第一點 的重要性,該點通常表示對象的「首部」。對於直升機,大型車輛,小型車輛,港口,棒球鑽石,輪船和飛機等類別,我們選擇與之豐富的潛在用途有關的點作為起始點。對於足球場,游泳池,橋梁,地面田徑場,籃球場和網球場類別來說,沒有視覺上的線索來確定第一個點,因此我們通常選擇左上角的點作為起點。
我們在圖4中展示了DOTA數據集中一些已經注釋過的例子(不是全部的初始圖像)
為了確保訓練數據和測試數據分布大致相同,我們隨機選擇原始圖像的一半作為訓練集,將1/6作為驗證集,將1/3作為測試集。 我們將為訓練集和驗證集公開提供所有帶有原始事實的原始圖像,但不會為測試集提供。 為了進行測試,我們目前正在構建評估服務。
與其他圖像數據集相比,航拍圖像一般尺寸很大。我們的數據集中圖像的原始大小約為800×800到4000×4000之間不等,而常規數據集中的大多數圖像(例如PASCAL-VOC和MSCOCO)則不超過1000×1000。我們在原始完整圖像上進標注,而不將其分割成塊,以避免將單個實例分割成不同碎片的情況。
如圖1(f)所示,我們的數據集在不同方向的實例中達到了比較好的平衡,這對於網路檢測器的魯棒性提升有很大幫助。此外,我們的數據集更接近真實場景,因為在現實世界中通常會看到各種方向的對象。
我們還為數據集中的每幅圖像提供了空間解析度,這可以推斷出實例的實際大小。空間解析度對檢測任務的重要性有兩個方面。首先,它使模型對於相同類別的各種對象更具適應性和魯棒性。眾所周知,從遠處看物體會顯得更小。具有不同大小的同一對象會給模型造成麻煩並損害分類。但是,通過提供解析度信息而不是對象的大小,模型可以更加關注形狀。其次,可以進行進行更精細的分類。例如,將一艘小船與一艘大型軍艦區分開是很簡單的。
空間解析度還可以用於過濾數據集中標記錯誤的離群值,因為大多數類別的類內實際大小變化是有限的。在較小的空間解析度范圍內,選擇與同類物體尺寸相差較大的物體,可以發現離群值(Outliers)。
按照[33]中的規定,我們將水平邊框的高度(簡稱為像素大小)稱為實例大小的度量。我們根據水平邊界框的高度將數據集中的所有實例分為三個部分:較小的范圍為10到50,中間的范圍為50到300,較大的范圍為300以上。圖3說明了不同數據集中的三個實例拆分的百分比。顯然,PASCAL VOC數據集,NWPU VHR-10數據集和DLR 3K Munich Vehicle數據集分別由中間實例,中間實例和較小實例主導。但是,我們在小實例和中間實例之間實現了良好的平衡,這與現實世界場景更加相似,因此有助於在實際應用中更好地捕獲不同大小的對象。
值得注意的是,像素大小在不同類別中有所不同。例如,車輛可能小到30像素,但是橋梁可能大到1200像素,比車輛大40倍。不同類別實例之間的巨大差異使檢測任務更具挑戰性,因為模型必須足夠靈活以處理極小的物體。
表3:航拍圖像和自然圖像中某些數據集的實例大小分布比較
對於基於錨的模型,例如Faster RCNN和YOLO V2,長寬比是至關重要的因素。我們對數據集中所有實例的兩種長寬比進行計數,以提供更好的模型設計參考:1)最低程度受限於水平邊界框的橫縱、2)原始四邊形邊框的長寬比。圖5說明了我們數據集中實例的兩種縱橫比分布類型,我們可以看到實例的縱橫比差異很大。此外,DOTA數據集中有許多橫縱比較大的實例。
航拍圖像中常常包括數以千計的實例,它們完全與自然場景圖像不同。例如IMANEET數據集中每張圖像平均包含2個類別和2個實例,MSCCO共有3.5個類別、7.7個實例。如圖5所示我們的DOTA數據集更豐富,每個圖像的實例可以高達2000個。
在一幅圖像中有如此多的實例,不可避免地會看到很密集的實例聚集在某個區域。在COCO數據集中,實例並不是逐個注釋的,因為圖像中的遮擋使之難以將實例與其相鄰實例區分開來。在這些情況下,實例組被標記為一個屬性名為「crowd」的片段。然而,這種情況不會在航拍圖像下出現,因為從航拍視角來看,很少有遮擋物。因此,我們可以在擁擠的實例場景中將實例一個個分別標注。圖4展示了聚集著很多實例的一個例子。在這種情況下檢測物體對現有的檢測方法提出了巨大的挑戰。
我們在DOTA上評估了最新的物體檢測方法。對於水平物體檢測,我們謹慎地選擇Faster R-CNN,R-FCN,YOLO V2和SSD作為我們的基準測試演算法,因為它們在一般物體檢測中具有出色的性能。對於定向對象檢測,我們修改了原始的Faster R-CNN演算法,以便可以預測正確定向的邊界框,表示為 。
值得注意的是,R-FCN和Faster R-CNN的骨幹網路分別ResNet-101,用於SSD的是Inception V2,YOLO V2用的是GoogLeNet 。
為了全面評估基於深度學習的DOTA檢測方法的現狀,我們提出了兩個任務,即在水平邊界框(簡稱HBB)上進行檢測以及在定向邊界框(簡稱OBB)上進行檢測。更具體地說,無論採用何種方法訓練,我們都根據兩種不同的基礎事實(HBB或OBB)評估這些方法。
DOTA的圖像太大,無法直接發送到基於CNN的探測器。因此,我們將原始圖像裁剪為一系列1024*1024的面片,步幅設置為512。注意在裁剪過程中,完整的物體可能會被切成兩部分。為了方便起見,我們將原始對象的面積為 ,劃分部分 的面積為 然後計算:
最終我們將U<0.7的部分標記為「difficult」,其他的標記和原始注釋一樣。對於那些新生成的部分的頂點我們需要保證它們可以被一個具有4個順時針排列頂點的定向邊界框用一種合適的方法來描述。
在測試階段,我們首先將裁剪後的面片送到一個臨時的結果中,然後將結果合並在一起,來重構原始圖像的檢測,最後我們對預測結果使用NMS(非極大值抑制演算法)。我們設置NMS的參數閾值對於水平邊界框(簡稱HBB)將閾值設置為0.3,定向的邊界框閾值設置為0.1。通過使用這種方式,我們在基於CNN的模型上訓練和測試了DOTA數據集。
對於評價的度量,我們使用和PSASCAL VOC一樣的mAP計算方式。
HBB實驗的ground truth 是通過在原始的已標注的邊界框上計算軸對稱邊界框產生的,為了公平起見,我們將實驗的配置以及超參數設置為與文章[4,16,25,26]一致。
在表4中給出了HBB實驗的預測結果,我們注意到SSD上的結果比其他模型低很多。我們懷疑可能是因為SSD數據集數據增長策略中的隨意裁剪操作,這種操作在普通的目標檢測中有用,但是在航拍圖像目標檢測的大規模小實例上作用有所降低。實驗結果也進一步表明了航拍圖像和普通目標圖像檢測在實例大小上的巨大差別。
OBB的預測比較困難,因為現有的目標檢測方法並非針對定向對象而設計。因此,我們依據准確性和效率選擇Faster R-CNN作為基礎框架,然後對其進行修改使之能預測定向的邊界框。
由RPN(候選區域生成網路)產生的RoIs(興趣區域)是可以被表示為 的矩形框,更為詳盡的解釋是 。在R-CNN程序中,每個RoI都附加有一個ground truth定向邊界框寫作: ,然後R-CNN的輸出目標 由以下等式計算:
其中 。
其他配置和超參數設置保持與Faster R-CNN中所述相同。數值結果顯示在表5中。為了與我們為OBB實施的Faster R-CNN進行比較,我們評估了OBB地面實況在HBB上訓練的YOLO V2,R-FCN,SSD和Faster R-CNN。如表5所示,在HBB上訓練的那些方法的結果比在OBB上訓練的Faster R-CNN的結果低得多,這表明對於空中場景中的定向目標檢測,相應地調整這些方法可能會得到更好的結果。
當我們分析表4中呈現的數據結果時,小型汽車,大型汽車,船隻的分類結果不盡人意,因為它們的尺寸較小,並且在航拍圖像中位置十分密集。然而大型的離散物體如飛機,游泳池、網球場等,表現出的效果較好。
在圖6中我們比較了HBB和OBB兩種檢測方式的結果。在圖6(a)和6(b)中表示的緊密圖像中,HBB實驗的定位精度要比OBB實驗差的多,並且許多結果受到先前工作的限制。所以OBB回歸是定向物體檢測的一個正確方式,並且可以被真正在實際中應用。在圖6(c)中,使用OBB來標注縱橫比較大的物體(比如橋和海港),對於現在的檢測器來說很難做回歸。但是在HBB方法中,這些物體通常有著較為普通的縱橫比,因此結果如圖6(d)看起來比OBB好很多。但是在一些極度擁擠的場景下,比如圖6(e)和6(f),HBB和OBB的結果並不盡如人意,表明了現階段檢測器具有一定的缺陷。
交叉數據集驗證是數據集泛化能力的一個評價方式。我們選擇UCAS-AOD數據集來做交叉數據集泛化,因為它與其他航空物體檢測數據集相比有著更大的數據量。因為沒有UCAS-AOD數據集的官方劃分方式,於是我們隨機選擇1110個進行訓練和400個進行測試。選擇YOLO V2作為所有測試實驗的檢測器,並且將所有的ground truth使用HBB標注。將UCAS-AOD數據集中原始圖片大小改為960*544作為輸入的圖片大小,其餘的配置不改變。
結果顯示在表6中,對於YOLOv2-A模型而言兩個數據集之間的性能差異分別為35.8和15.6。這表明DOTA極大地覆蓋了UCAS-AOD,並且具有更多的模式和特性,而UCAS-AOD則不具備這種特性。兩種模型在DOTA上的結果都很低,這表明DOTA更具挑戰性。
我們建立了一個大型數據集,用於航拍圖像中進行定向物體檢測,這個數據集比這個領域中所有現有的數據集都要大。 與一般對象檢測基準相反,我們使用定向邊界框標注大量分布良好的定向物體。 我們猜測這個數據集是具有挑戰性的,並且非常類似於自然的航拍場景,更適合實際應用。我們還為航拍圖像物體檢測建立了基準,並展示了通過修改主流檢測演算法生成定向邊界框的可行性。
這個數據集在大圖片中檢測密集排列的小實例和具有任意方向的超大實例都將特別有意義且具有挑戰性。我們相信DOTA不僅會推動Earth Vision中物體檢測演算法的發展,而且還會對計算機視覺中的一般物體檢測提出有趣的問題。
4. 如何用OpenCV自帶的adaboost程序訓練並檢測目標
轉自:http://hi..com/andyzcj/blog/item/3b9575fc63c3201f09244d9a.html可能遇到的問題:1.如果跑到某一個分類器時,幾個小時也沒有反應,而且顯示不出訓練百分比,這是因為你的負樣本數量太少,或者負樣本的尺寸太小,所有的負樣本在這個分類器都被reject了,程序進入不了下一個循環,果斷放棄吧。解決方法:負樣本盡量要大一些,比如我的正樣本是40*15,共300個,負樣本是640*480,共500個。2.讀取樣本時報錯:,網上說這個錯誤是因為opencv規定單幅iplimage的內存分配不能超過10000,可是我的每個負樣本都不會超過這個大小,具體原因不明。後來我把負樣本的數量減少,尺寸加大,這個問題就解決了。最近要做一個性別識別的項目,在人臉檢測與五官定位上我採用OPENCV的haartraining進行定位,這里介紹下這兩天我學習的如何用opencv訓練自己的分類器。在這兩天的學習里,我遇到了不少問題,不過我遇到了幾個好心的大俠幫我解決了不少問題,特別是無忌,在這里我再次感謝他的幫助。一、簡介目標檢測方法最初由PaulViola[Viola01]提出,並由RainerLienhart[Lienhart02]對這一方法進行了改善。該方法的基本步驟為:首先,利用樣本(大約幾百幅樣本圖片)的harr特徵進行分類器訓練,得到一個級聯的boosted分類器。分類器中的"級聯"是指最終的分類器是由幾個簡單分類器級聯組成。在圖像檢測中,被檢窗口依次通過每一級分類器,這樣在前面幾層的檢測中大部分的候選區域就被排除了,全部通過每一級分類器檢測的區域即為目標區域。分類器訓練完以後,就可以應用於輸入圖像中的感興趣區域的檢測。檢測到目標區域分類器輸出為1,否則輸出為0。為了檢測整副圖像,可以在圖像中移動搜索窗口,檢測每一個位置來確定可能的目標。為了搜索不同大小的目標物體,分類器被設計為可以進行尺寸改變,這樣比改變待檢圖像的尺寸大小更為有效。所以,為了在圖像中檢測未知大小的目標物體,掃描程序通常需要用不同比例大小的搜索窗口對圖片進行幾次掃描。目前支持這種分類器的boosting技術有四種:DiscreteAdaboost,RealAdaboost,GentleAdaboostandLogitboost。"boosted"即指級聯分類器的每一層都可以從中選取一個boosting演算法(權重投票),並利用基礎分類器的自我訓練得到。根據上面的分析,目標檢測分為三個步驟:1、樣本的創建2、訓練分類器3、利用訓練好的分類器進行目標檢測。二、樣本創建訓練樣本分為正例樣本和反例樣本,其中正例樣本是指待檢目標樣本,反例樣本指其它任意圖片。負樣本負樣本可以來自於任意的圖片,但這些圖片不能包含目標特徵。負樣本由背景描述文件來描述。背景描述文件是一個文本文件,每一行包含了一個負樣本圖片的文件名(基於描述文件的相對路徑)。該文件創建方法如下:採用Dos命令生成樣本描述文件。具體方法是在Dos下的進入你的圖片目錄,比如我的圖片放在D:\face\posdata下,則:按Ctrl+R打開Windows運行程序,輸入cmd打開DOS命令窗口,輸入d:回車,再輸入cdD:\face\negdata進入圖片路徑,再次輸入dir/b>negdata.dat,則會圖片路徑下生成一個negdata.dat文件,打開該文件將最後一行的negdata.dat刪除,這樣就生成了負樣本描述文件。dos命令窗口結果如下圖:正樣本對於正樣本,通常的做法是先把所有正樣本裁切好,並對尺寸做規整(即縮放至指定大小),如下圖所示:由於HaarTraining訓練時輸入的正樣本是vec文件,所以需要使用OpenCV自帶的CreateSamples程序(在你所按照的opencv\bin下,如果沒有需要編譯opencv\apps\HaarTraining\make下的.dsw文件,注意要編譯release版的)將准備好的正樣本轉換為vec文件。轉換的步驟如下:1)製作一個正樣本描述文件,用於描述正樣本文件名(包括絕對路徑或相對路徑),正樣本數目以及各正樣本在圖片中的位置和大小。典型的正樣本描述文件如下:posdata/1(10).bmp1112323posdata/1(11).bmp1112323posdata/1(12).bmp1112323不過你可以把描述文件放在你的posdata路徑(即正樣本路徑)下,這樣你就不需要加前面的相對路徑了。同樣它的生成方式可以用負樣本描述文件的生成方法,最後用txt的替換工具將「bmp」全部替換成「bmp1112323」就可以了,如果你的樣本圖片多,用txt替換會導致程序未響應,你可以將內容拷到word下替換,然後再拷回來。bmp後面那五個數字分別表示圖片個數,目標的起始位置及其寬高。這樣就生成了正樣本描述文件posdata.dat。2)運行CreateSamples程序。如果直接在VC環境下運行,可以在Project\Settings\Debug屬性頁的Programarguments欄設置運行參數。下面是一個運行參數示例:-infoD:\face\posdata\posdata.dat-vecD:\face\pos.vec-num50-w20-h20表示有50個樣本,樣本寬20,高20,正樣本描述文件為posdata.dat,結果輸出到pos.vec。或者在dos下輸入:"D:\ProgramFiles\OpenCV\bin\createsamples.exe"-info"posdata\posdata.dat"-vecdata\pos.vec-num50-w20-h20運行完了會d:\face\data下生成一個*.vec的文件。該文件包含正樣本數目,寬高以及所有樣本圖像數據。結果入下圖:Createsamples程序的命令行參數:命令行參數:-vec訓練好的正樣本的輸出文件名。-img源目標圖片(例如:一個公司圖標)-bg背景描述文件。-num要產生的正樣本的數量,和正樣本圖片數目相同。-bgcolor背景色(假定當前圖片為灰度圖)。背景色制定了透明色。對於壓縮圖片,顏色方差量由bgthresh參數來指定。則在bgcolor-bgthresh和bgcolor+bgthresh中間的像素被認為是透明的。-bgthresh-inv如果指定,顏色會反色-randinv如果指定,顏色會任意反色-maxidev背景色最大的偏離度。-maxangel-maxangle,-maxzangle最大旋轉角度,以弧度為單位。-show如果指定,每個樣本會被顯示出來,按下"esc"會關閉這一開關,即不顯示樣本圖片,而創建過程繼續。這是個有用的debug選項。-w輸出樣本的寬度(以像素為單位)-h《sample_height》輸出樣本的高度,以像素為單位。到此第一步樣本訓練就完成了。恭喜你,你已經學會訓練分類器的五成功力了,我自己學這個的時候花了我一天的時間,估計你幾分鍾就學會了吧。三、訓練分類器樣本創建之後,接下來要訓練分類器,這個過程是由haartraining程序來實現的。該程序源碼由OpenCV自帶,且可執行程序在OpenCV安裝目錄的bin目錄下。Haartraining的命令行參數如下:-data存放訓練好的分類器的路徑名。-vec正樣本文件名(由trainingssamples程序或者由其他的方法創建的)-bg背景描述文件。-npos,-nneg用來訓練每一個分類器階段的正/負樣本。合理的值是:nPos=7000;nNeg=3000-nstages訓練的階段數。-nsplits決定用於階段分類器的弱分類器。如果1,則一個簡單的stumpclassifier被使用。如果是2或者,則帶有number_of_splits個內部節點的CART分類器被使用。-mem預先計算的以MB為單位的可用內存。內存越大則訓練的速度越快。-sym(default)-nonsym指定訓練的目標對象是否垂直對稱。垂直對稱提高目標的訓練速度。例如,正面部是垂直對稱的。-minhitrate《min_hit_rate》每個階段分類器需要的最小的命中率。總的命中率為min_hit_rate的number_of_stages次方。-maxfalsealarm沒有階段分類器的最大錯誤報警率。總的錯誤警告率為max_false_alarm_rate的number_of_stages次方。-weighttrimming指定是否使用權修正和使用多大的權修正。一個基本的選擇是0.9-eqw-mode選擇用來訓練的haar特徵集的種類。basic僅僅使用垂直特徵。all使用垂直和45度角旋轉特徵。-w《sample_width》-h《sample_height》訓練樣本的尺寸,(以像素為單位)。必須和訓練樣本創建的尺寸相同。一個訓練分類器的例子:"D:\ProgramFiles\OpenCV\bin\haartraining.exe"-datadata\cascade-vecdata\pos.vec-bgnegdata\negdata.dat-npos49-nneg49-mem200-modeALL-w20-h20訓練結束後,會在目錄data下生成一些子目錄,即為訓練好的分類器。訓練結果如下:恭喜你,你已經學會訓練分類器的九成功力了。四:利用訓練好的分類器進行目標檢測。這一步需要用到performance.exe,該程序源碼由OpenCV自帶,且可執行程序在OpenCV安裝目錄的bin目錄下。performance.exe-datadata/cascade-infoposdata/test.dat-w20-h20-rs30performance的命令行參數如下:Usage:./performance-data-info[-maxSizeDiff][-maxPosDiff][-sf][-ni][-nos][-rs][-w][-h]也可以用opencv的cvHaarDetectObjects函數進行檢測:CvSeq*faces=cvHaarDetectObjects(img,cascade,storage,1.1,2,CV_HAAR_DO_CANNY_PRUNING,cvSize(40,40));//3.檢測人臉
5. 什麼是全圓觀測法 工程測量中的!
方向觀測法 - 概念
1、方向觀測法是以兩個以上的方向為一組,從初始方向開始,依次進行水平方向觀測,正鏡半測回和倒鏡半測回,照準各方向目標並讀數的方法.
2、方向觀測法(direction observation)是將一測站上待測方向的全部或部分作為一組,從選擇的起始方向(零方向)開始,依次對各方向進行觀測,以獲取各方向相對零方向的水平方向值(歸零方向值).當從零方向開始依次觀測各方向至最後方向時,再繼續對零方向進行的重復觀測稱歸零觀測.
方向觀測法 - 方法
根據一測站上待測方向的多寡,可選擇使用以下方法:
1、簡單方向觀測法:不進行歸零觀測.當一測站的待測方向數不超過3個時可用此法.
2、全圓方向觀測法:需進行歸零觀測.當一測站的待測方向數超過3個但不超過6個時可用此法.
3、分組方向觀測法:當超過6個時,可將待測方向分為方向數不超過6個的若干組,分別按此法進行,稱分組方向觀測法.但各組之間必須有兩個共同的方向,且在觀測結束後對各組的方向值進行平差處理,以便獲得全站統一的歸零方向值.
6. 幼兒園小班數學教案《認識圓形》
作為一位優秀的人民教師,有必要進行細致的教案准備工作,教案是教學活動的依據,有著重要的地位。教案應該怎麼寫呢?下面是我為大家收集的幼兒園小班數學教案《認識圓形》,希望對大家有所幫助。
活動目標:
1、能在認知、操作和游戲活動中掌握圓形的特徵。
2、能在周圍環境中尋找圓形的物體,感知圓形在生活中的應用。
3、培養幼兒的觀察力和想像力。
活動准備:
1、活動室布置一些圓形的物品。
2、圓形紙一張,圓形物品若干(如鏡子、瓶蓋、鈴鼓、盤子)。
3、幻燈片,每桌一隻箱子,箱子里有各種不同的圓形物品,操作紙若干、彩筆人手一份。
活動過程:
一、創設情境,認識圓形物品。
師:(用神秘的口氣加眼神)今天老師給小朋友帶來一箱子的玩具,請你們每人拿一件在桌上玩一下,說說它是什麼?
幼:我拿的鏡子,
幼:我拿的鈴鼓,
幼:我拿的盤子……
師:你發現了什麼?這些物品有什麼相同的地方?
幼:他們都是圓圓的。(引出圓形這一話題。)
師:(出示一張圓形的紙)提問:它像什麼?
幼:它像盤子,
幼:它像太陽,
幼:它像……
自評:
活動一開始就創設情景,激發幼兒的情趣,引發幼兒的發散性思維,這里不僅發展了幼兒的語言表達能力,也培養了幼兒的觀察力。
二、感知圓形的特徵
師:請小朋友自選圓形物品,沿著物品的表面和邊緣觸摸,互相交流一下自己的感受。
幼:平平的,
幼:圓圓的,
幼:邊緣是光滑的,
幼:沒有稜角……(幼兒交流,充分表達自己的觀點)
師:說一說,你還見過哪些東西也是圓形的?(鼓勵幼兒說出在家裡或者在其他地方見到的圓形物品)
幼:碗、盆,球、掉燈……
三、觀察幻燈片《雜技表演》
師:說一說,畫面上有誰?他們在干什麼?
幼:奇奇、樂樂、歡歡、小熊。
幼:他們在玩雜技。
師:想一想,圓圈能翻跟頭,為什麼方圈不能呢?
幼:方圈不光,它有角翻不過去。(引導幼兒說)
師:看一看,獨輪車的輪子是什麼形狀的?還有哪些東西也是圓形的?
幼:圓形的,(幼兒一起說)
幼:還有球,呼啦圈,滾圈,盤子
活動目標
1.願意參與活動,對數學活動感興趣。
2.認識圓形,初步掌握圓形的特徵。
3.能在生活中找出各種圓形的物品。
活動准備
環境准備:教師提前在班級內的各個角落放置一些圓形的物品。
課件准備:「圓形專賣店」情景圖片;「各種形狀」組圖;「去進貨」組圖;游戲背景音樂。
紙面教具:《圓形專賣店》。
材料准備:馬克筆。
活動過程
一,出示圖片引導幼兒初步感知圓形
——小老鼠皮皮新開了一家專賣店,裡面賣的物品很特別,我們一起去瞧瞧吧!
——皮皮的專賣店裡都有哪些物品?
二,幫助幼兒認識圓形掌握圓形的特徵
——這個圓圓的圖形就叫做圓形。
——圓形和其他形狀相比,有什麼特別的地方?
三,發放紙面教具鞏固幼兒對圓形的認識
1.發放紙面教具,引導幼兒尋找正確的小汽車。
2.引導幼兒在紙面教具上連一連。
3.教師操作課件,驗證幼兒的答案。
四,播放游戲音樂玩游戲尋找圓形的`物品
——恭喜小朋友們順利地幫助皮皮完成了進貨任務,現在請小朋友在班級內找一找,哪些物品是圓形的?
一、活動准備:
1、將各色色紙剪成大大小小的圓,貼在磁鐵黑板上。剪刀、糨糊、圓形貼紙、畫紙、磁鐵、彩色等。
2、幼兒數學用書。
二、活動過程
(一)以講《愛畫畫的波波的故事》的形式引起興趣
隨著故事情節讓幼兒猜猜波波畫的是什麼?「小豬波波畫了好多大大小小的圓,哥哥姐姐看了好久,不知道波波的圓圈是什麼,就問波波:「你畫的圓圈是什麼呀?」波波說:「這個圓圈裡有兩只手,一隻長,一隻短,從早到晚繞著轉。」哥哥說:「啊,我知道了,是時鍾」,姐姐說:「那這個是什麼?」波波說:「它下面還有一條長長的線,要抓好,才不會跑掉」。姐姐說:「喔,是氣球」哥哥姐姐終於知道波波畫什麼了。波波又畫了許多圓圈,連肚臍眼的圓都有呢?媽媽說:「 波波真是個很棒的畫家」。
(二)運用操作法讓幼兒拼圖
幼兒也當波波,用圓形色紙拼拼貼貼,看可以拼貼出什麼造型。完成後請幼兒欣賞作品,鼓勵幼兒說一說自己用圓形拼貼出了什麼。
(三)帶領幼兒打開《我的數學》第一頁,啟發幼兒觀察畫面內容,讓幼兒給圓形塗上自己喜歡的顏色,再說說圖中還有哪些東西是圓的。
(四)引導幼兒觀察周圍環境,想一想、說一說,生活中還有哪些東西是圓的。
三、活動目標:
1、認識圓形,運用圓形創作造型。
2、發展幼兒想像力及操作能力。
7. 建築測量,什麼叫全圓測回法
當觀測目標多於2個時觀測水平角就需要採用全圓觀測法
安置儀器
在 O點置經緯儀,A、B、C、D設置目標。
2.盤左
對零度,瞄A,再順時針瞄B、C、D、A,第二次瞄A稱為歸零,分別讀數,記入手簿,上半測回。
3.盤右
瞄A、逆時針瞄D、C、B、A,分別讀數記入手簿,下半測回。
4.上、下半測回,組成一測回
觀測n測回時,起始方向讀數變化為180°/n。
5.計算
*計算兩倍照準差(2C)
2C=盤左-(盤右±180°)
*計算各方向平均值
平均讀數=[盤左+(盤右±180°)]/2
*A方向平均值,填寫在括弧內
*計算歸零後的方向值
*計算各方向的測回平均值
*計算各目標間水平角值
6.限差
*半測回歸零差
*上、下半測回同一方向的方向值之差
*各測回的方向差
根據不同精度的儀器有不同的規定
8. 【目標檢測演算法解讀】yolo系列演算法二
https://blog.csdn.net/Gentleman_Qin/article/details/84349144
|聲明:遵循CC 4.0 BY-SA版權協議
建立在YOLOv1的基礎上,經過Joseph Redmon等的改進,YOLOv2和YOLO9000演算法在2017年CVPR上被提出,並獲得最佳論文提名,重點解決YOLOv1召回率和定位精度方面的誤差。在提出時,YOLOv2在多種監測數據集中都要快過其他檢測系統,並可以在速度與精確度上進行權衡。
YOLOv2採用Darknet-19作為特徵提取網路,增加了批量標准化(Batch Normalization)的預處理,並使用224×224和448×448兩階段訓練ImageNet,得到預訓練模型後fine-tuning。
相比於YOLOv1是利用FC層直接預測Bounding Box的坐標,YOLOv2借鑒了FSR-CNN的思想,引入Anchor機制,利用K-Means聚類的方式在訓練集中聚類計算出更好的Anchor模板,在卷積層使用Anchor Boxes操作,增加Region Proposal的預測,同時採用較強約束的定位方法,大大提高演算法召回率。同時結合圖像細粒度特徵,將淺層特徵與深層特徵相連,有助於對小尺寸目標的檢測。
下圖所示是YOLOv2採取的各項改進帶了的檢測性能上的提升:
YOLO9000 的主要檢測網路也是YOLO v2,同時使用WordTree來混合來自不同的資源的訓練數據,並使用聯合優化技術同時在ImageNet和COCO數據集上進行訓練,目的是利用數量較大的分類數據集來幫助訓練檢測模型,因此,YOLO 9000的網路結構允許實時地檢測超過9000種物體分類,進一步縮小了檢測數據集與分類數據集之間的大小代溝。
下面將具體分析YOLOv2的各個創新點:
BN概述:
對數據進行預處理(統一格式、均衡化、去噪等)能夠大大提高訓練速度,提升訓練效果。BN正是基於這個假設的實踐,對每一層輸入的數據進行加工。
BN是2015年Google研究員在論文《Batch Normalization: Accelerating Deep Network Training by Recing Internal Covariate Shift》一文中提出的,同時也將BN應用到了2014年的GoogLeNet上,也就是Inception-v2。
BN層簡單講就是對網路的每一層的輸入都做了歸一化,這樣網路就不需要每層都去學數據的分布,收斂會更快。YOLOv1演算法(採用的是GoogleNet網路提取特徵)是沒有BN層的,而在YOLOv2中作者為每個卷積層都添加了BN層。
使用BN對網路進行優化,讓網路提高了收斂性,同時還消除了對其他形式的正則化(regularization)的依賴,因此使用BN後可以從模型中去掉Dropout,而不會產生過擬合。
BN優點:
神經網路每層輸入的分布總是發生變化,加入BN,通過標准化上層輸出,均衡輸入數據分布,加快訓練速度,因此可以設置較大的學習率(Learning Rate)和衰減(Decay);
通過標准化輸入,降低激活函數(Activation Function)在特定輸入區間達到飽和狀態的概率,避免梯度彌散(Gradient Vanishing)問題;
輸入標准化對應樣本正則化,BN在一定程度上可以替代 Dropout解決過擬合問題。
BN演算法:
在卷積或池化之後,激活函數之前,對每個數據輸出進行標准化,方式如下圖所示:
公式很簡單,前三行是 Batch內數據歸一化(假設一個Batch中有每個數據),同一Batch內數據近似代表了整體訓練數據。第四行引入了附加參數 γ 和 β,此二者的取值演算法可以參考BN論文,在此不再贅述。
fine-tuning:用已經訓練好的模型,加上自己的數據集,來訓練新的模型。即使用別人的模型的前幾層,來提取淺層特徵,而非完全重新訓練模型,從而提高效率。一般新訓練模型准確率都會從很低的值開始慢慢上升,但是fine-tuning能夠讓我們在比較少的迭代次數之後得到一個比較好的效果。
YOLO模型分為兩部分,分類模型和檢測模型,前者使用在ImageNet上預訓練好的模型,後者在檢測數據集上fine-tuning。
YOLOv1在預訓練時採用的是224*224的輸入(在ImageNet數據集上進行),然後在檢測的時候採用448*448的輸入,這會導致從分類模型切換到檢測模型的時候,模型還要適應圖像解析度的改變。
YOLOv2則將預訓練分成兩步:先用224*224的輸入在ImageNet數據集訓練分類網路,大概160個epoch(將所有訓練數據循環跑160次)後將輸入調整到448*448,再訓練10個epoch(這兩步都是在ImageNet數據集上操作)。然後利用預訓練得到的模型在檢測數據集上fine-tuning。這樣訓練得到的模型,在檢測時用448*448的圖像作為輸入可以順利檢測。
YOLOv1將輸入圖像分成7*7的網格,每個網格預測2個Bounding Box,因此一共有98個Box,同時YOLOv1包含有全連接層,從而能直接預測Bounding Boxes的坐標值,但也導致丟失較多的空間信息,定位不準。
YOLOv2首先將YOLOv1網路的FC層和最後一個Pooling層去掉,使得最後的卷積層可以有更高解析度的特徵,然後縮減網路,用416*416大小的輸入代替原來的448*448,使得網路輸出的特徵圖有奇數大小的寬和高,進而使得每個特徵圖在劃分單元格(Cell)的時候只有一個中心單元格(Center Cell)。
為什麼希望只有一個中心單元格呢?由於圖片中的物體都傾向於出現在圖片的中心位置,特別是比較大的物體,所以有一個單元格單獨位於物體中心的位置用於預測這些物體。
YOLOv2通過引入Anchor Boxes,通過預測Anchor Box的偏移值與置信度,而不是直接預測坐標值。YOLOv2的卷積層採用32這個值來下采樣圖片,所以通過選擇416*416用作輸入尺寸最終能輸出一個13*13的特徵圖。若採用FSRCNN中的方式,每個Cell可預測出9個Anchor Box,共13*13*9=1521個(YOLOv2確定Anchor Boxes的方法見是維度聚類,每個Cell選擇5個Anchor Box)。
在FSRCNN中,以一個51*39大小的特徵圖為例,其可以看做一個尺度為51*39的圖像,對於該圖像的每一個位置,考慮9個可能的候選窗口:3種面積3種比例。這些候選窗口稱為Anchor Boxes。下圖示出的是51*39個Anchor Box中心,以及9種Anchor Box示例。
YOLOv1和YOLOv2特徵圖數據結構:
YOLOv1:S*S* (B*5 + C) => 7*7(2*5+20)
其中B對應Box數量,5對應邊界框的定位信息(w,y,w,h)和邊界框置信度(Confidience)。解析度是7*7,每個Cell預測2個Box,這2個Box共用1套條件類別概率(1*20)。
YOLOv2:S*S*K* (5 + C) => 13*13*9(5+20)
解析度提升至13*13,對小目標適應性更好,借鑒了FSRCNN的思想,每個Cell對應K個Anchor box(YOLOv2中K=5),每個Anchor box對應1組條件類別概率(1*20)。
聚類:聚類是指事先沒有「標簽」而通過某種成團分析找出事物之間存在聚集性原因的過程。即在沒有劃分類別的情況下,根據數據相似度進行樣本分組。
在FSR-CNN中Anchor Box的大小和比例是按經驗設定的,然後網路會在訓練過程中調整Anchor Box的尺寸,最終得到准確的Anchor Boxes。若一開始就選擇了更好的、更有代表性的先驗Anchor Boxes,那麼網路就更容易學到准確的預測位置。
YOLOv2使用K-means聚類方法類訓練Bounding Boxes,可以自動找到更好的寬高維度的值用於一開始的初始化。傳統的K-means聚類方法使用的是歐氏距離函數,意味著較大的Anchor Boxes會比較小的Anchor Boxes產生更多的錯誤,聚類結果可能會偏離。由於聚類目的是確定更精準的初始Anchor Box參數,即提高IOU值,這應與Box大小無關,因此YOLOv2採用IOU值為評判標准,即K-means 採用的距離函數(度量標准) 為:
d(box,centroid) = 1 - IOU(box,centroid)
如下圖,左邊是聚類的簇個數和IOU的關系,兩條曲線分別代表兩個不同的數據集。分析聚類結果並權衡模型復雜度與IOU值後,YOLOv2選擇K=5,即選擇了5種大小的Box 維度來進行定位預測。
其中紫色和灰色也是分別表示兩個不同的數據集,可以看出其基本形狀是類似的。更重要的是,可以看出聚類的結果和手動設置的Anchor Box位置和大小差別顯著——結果中扁長的框較少,而瘦高的框更多(更符合行人的特徵)。
YOLOv2採用的5種Anchor的Avg IOU是61,而採用9種Anchor Boxes的Faster RCNN的Avg IOU是60.9,也就是說本文僅選取5種box就能達到Faster RCNN的9中box的效果。選擇值為9的時候,AVG IOU更有顯著提高。說明K-means方法的生成的boxes更具有代表性。
直接對Bounding Boxes求回歸會導致模型不穩定,其中心點可能會出現在圖像任何位置,有可能導致回歸過程震盪,甚至無法收斂,尤其是在最開始的幾次迭代的時候。大多數不穩定因素產生自預測Bounding Box的中心坐標(x,y)位置的時候。
YOLOv2的網路在特徵圖(13*13)的每一個單元格中預測出5個Bounding Boxes(對應5個Anchor Boxes),每個Bounding Box預測出5個值(tx,ty,tw,th,t0),其中前4個是坐標偏移值,t0是置信度結果(類似YOLOv1中的邊界框置信度Confidence)。YOLOv2借鑒了如下的預測方式,即當Anchor Box的中心坐標和寬高分別是(xa,ya)和(wa,wh)時,Bounding Box坐標的預測偏移值(tx,ty,tw,th)與其坐標寬高(x,y,w,h)的關系如下:
tx = (x-xa)/wa
ty= (y-ya)/ha
tw = log(w/wa)
th = log(h/ha)
基於這種思想,YOLOv2在預測Bounding Box的位置參數時採用了如下強約束方法:
上圖中,黑色虛線框是Anchor Box,藍色矩形框就是預測的Bounding Box結果,預測出的Bounding Box的坐標和寬高為(bx,by)和(bw,bh),計算方式如圖中所示,其中:對每個Bounding Box預測出5個值(tx,ty,tw,th,t0),Cell與圖像左上角的橫縱坐標距離為(cx,cy),σ定義為sigmoid激活函數(將函數值約束到[0,1]),該Cell對應的Anchor Box對應的寬高為(pw,ph)。
簡而言之,(bx,by)就是(cx,cy)這個Cell附近的Anchor Box針對預測值(tx,ty)得到的Bounding Box的坐標預測結果,同時可以發現這種方式對於較遠距離的Bounding Box預測值(tx,ty)能夠得到很大的限制。
YOLOv2通過添加一個轉移層,把高解析度的淺層特徵連接到低解析度的深層特徵(把特徵堆積在不同Channel中)而後進行融合和檢測。具體操作是先獲取前層的26*26的特徵圖,將其同最後輸出的13*13的特徵圖進行連接,而後輸入檢測器進行檢測(檢測器的FC層起到了全局特徵融合的作用),以此來提高對小目標的檢測能力。
為了適應不同尺度下的檢測任務,YOLOv2在訓練網路時,其在檢測數據集上fine-tuning時候採用的輸入圖像的size是動態變化的。具體來講,每訓練10個Batch,網路就會隨機選擇另一種size的輸入圖像。因為YOLOv2用到了參數是32的下采樣,因此也採用32的倍數作為輸入的size,即採用{320,352,…,608}的輸入尺寸(網路會自動改變尺寸,並繼續訓練的過程)。
這一策略讓網路在不同的輸入尺寸上都能達到較好的預測效果,使同一網路能在不同解析度上進行檢測。輸入圖片較大時,檢測速度較慢,輸入圖片較小時,檢測速度較快,總體上提高了准確率,因此多尺度訓練算是在准確率和速度上達到一個平衡。
上表反映的是在檢測時,不同大小的輸入圖片情況下的YOLOv2和其他目標檢測演算法的對比。可以看出通過多尺度訓練的檢測模型,在測試的時候,輸入圖像在尺寸變化范圍較大的情況下也能取得mAP和FPS的平衡。
YOLOv1採用的訓練網路是GoogleNet,YOLOv2採用了新的分類網路Darknet-19作為基礎網路,它使用了較多的3*3卷積核,並把1*1的卷積核置於3*3的卷積核之間,用來壓縮特徵,同時在每一次池化操作後把通道(Channels)數翻倍(借鑒VGG網路)。
YOLOv1採用的GooleNet包含24個卷積層和2個全連接層,而Darknet-19包含19個卷積層和5個最大池化層(Max Pooling Layers),後面添加Average Pooling層(代替v1中FC層),而Softmax分類器作為激活被用在網路最後一層,用來進行分類和歸一化。
在ImageNet數據集上進行預訓練,主要分兩步(採用隨機梯度下降法):
輸入圖像大小是224*224,初始學習率(Learning Rate)為0.1,訓練160個epoch,權值衰減(Weight Decay)為0.0005,動量(Momentum)為0.9,同時在訓練時採用標準的數據增強(Data Augmentation)方式如隨機裁剪、旋轉以及色度、亮度的調整。
fine-tuning:第1步結束後,改用448*448輸入(高解析度模型),學習率改為0.001,訓練10個epoch,其他參數不變。結果表明:fine-tuning後的top-1准確率為76.5%,top-5准確率為93.3%,若按照原來的訓練方式,Darknet-19的top-1准確率是72.9%,top-5准確率為91.2%。可以看出,兩步分別從網路結構和訓練方式方面入手提高了網路分類准確率。
預訓練之後,開始基於檢測的數據集再進行fine-tuning。
首先,先把最後一個卷積層去掉,然後添加3個3*3的卷積層,每個卷積層有1024個卷積核,並且後面都連接一個1*1的卷積層,卷積核個數(特徵維度)根據需要檢測的類數量決定。(比如對VOC數據,每個Cell需要預測5個Boungding Box,每個Bounding Box有4個坐標值、1個置信度值和20個條件類別概率值,所以每個單元格對應125個數據,此時卷積核個數應該取125。)
然後,將最後一個3*3*512的卷積層和倒數第2個卷積層相連(提取細粒度特徵),最後在檢測數據集上fine-tuning預訓練模型160個epoch,學習率採用0.001,並且在第60和90個epoch的時候將學習率除以10,權值衰減、動量和數據增強方法與預訓練相同。
YOLO9000通過結合分類和檢測數據集,使得訓練得到的模型可以檢測約9000類物體,利用帶標注的分類數據集量比較大的特點,解決了帶標注的檢測數據集量比較少的問題。具體方法是:一方面採用WordTree融合數據集,另一方面聯合訓練分類數據集和檢測數據集。
分類數據集和檢測數據集存在較大差別:檢測數據集只有粗粒度的標記信息,如「貓」、「狗」,而分類數據集的標簽信息則更細粒度,更豐富。比如「狗」就包括「哈士奇」、「金毛狗」等等。所以如果想同時在檢測數據集與分類數據集上進行訓練,那麼就要用一種一致性的方法融合這些標簽信息。
用於分類的方法,常用Softmax(比如v2),Softmax意味著分類的類別之間要互相獨立的,而ImageNet和COCO這兩種數據集之間的分類信息不相互獨立(ImageNet對應分類有9000種,而COCO僅提供80種目標檢測),所以使用一種多標簽模型來混合數據集,即假定一張圖片可以有多個標簽,並且不要求標簽之間獨立,而後進行Softmax分類。
由於ImageNet的類別是從WordNet選取的,作者採用以下策略重建了一個樹形結構(稱為WordTree):
遍歷ImageNet的標簽,然後在WordNet中尋找該標簽到根節點(所有的根節點為實體對象)的路徑;
如果路徑只有一條,將該路徑直接加入到WordTree結構中;
否則,從可選路徑中選擇一條最短路徑,加入到WordTree結構中。
WordTree的作用就在於將兩種數據集按照層級進行結合。
如此,在WordTree的某個節點上就可以計算該節點的一些條件概率值,比如在terrier這個節點,可以得到如下條件概率值:
進而,如果要預測此節點的概率(即圖片中目標是Norfolk terrier的概率),可以根據WordTree將該節點到根節點的條件概率依次相乘得到,如下式:
其中:
YOLO9000在WordTree1k(用有1000類別的ImageNet1k創建)上訓練了Darknet-19模型。為了創建WordTree1k作者添加了很多中間節點(中間詞彙),把標簽由1000擴展到1369。
訓練過程中GroundTruth標簽要順著向根節點的路徑傳播:為了計算條件概率,模型預測了一個包含1369個元素的向量,而且基於所有「同義詞集」計算Softmax,其中「同義詞集」是同一概念下的所屬詞。
現在一張圖片是多標記的,標記之間不需要相互獨立。在訓練過程中,如果有一個圖片的標簽是「Norfolk terrier」,那麼這個圖片還會獲得「狗」以及「哺乳動物」等標簽。
如上圖所示,之前的ImageNet分類是使用一個大Softmax進行分類,而現在WordTree只需要對同一概念下的同義詞進行Softmax分類。然後作者分別兩個數據集上用相同訓練方法訓練Darknet-19模型,最後在ImageNet數據集上的top-1准確率為72.9%,top-5准確率為91.2%;在WordTree數據集上的top-1准確率為71.9%,top-5准確率為90.4%。
這種方法的好處是有「退而求其次」的餘地:在對未知或者新的物體進行分類時,性能損失更低,比如看到一個狗的照片,但不知道是哪種種類的狗,那麼就預測其為「狗」。
以上是構造WordTree的原理,下圖是融合COCO數據集和ImageNet數據集以及生成它們的WordTree的示意圖(用顏色區分了COCO數據集和ImageNet數據集的標簽節點), 混合後的數據集對應的WordTree有9418個類。另一方面,由於ImageNet數據集太大,YOLO9000為了平衡兩個數據集之間的數據量,通過過采樣(Oversampling)COCO數據集中的數據,使COCO數據集與ImageNet數據集之間的數據量比例達到1:4。
對YOLO9000進行評估,發現其mAP比DPM高,而且YOLO有更多先進的特徵,YOLO9000是用部分監督的方式在不同訓練集上進行訓練,同時還能檢測9000個物體類別,並保證實時運行。雖然YOLO9000對動物的識別性能很好,但是對衣服或者裝備的識別性能不是很好(這跟數據集的數據組成有關)。
YOLO9000的網路結構和YOLOv2類似,區別是每個單元格只採用3個Anchor Boxes。
YOLO9000提出了一種在分類數據集和檢測數據集上聯合訓練的機制,即使用檢測數據集(COCO)的圖片去學習檢測相關的信息即查找對象(例如預測邊界框坐標、邊界框是否包含目標及目標屬於各個類別的概率),使用僅有類別標簽的分類數據集(ImageNet)中的圖片去擴展檢測到的對象的可識別種類。
具體方法是:當網路遇到一個來自檢測數據集的圖片與標記信息,就把這些數據用完整的損失函數(v2和9000均沿用了v1網路的損失函數)反向傳播,而當網路遇到一個來自分類數據集的圖片和分類標記信息,只用代表分類誤差部分的損失函數反向傳播這個圖片。
YOLO v2 在大尺寸圖片上能夠實現高精度,在小尺寸圖片上運行更快,可以說在速度和精度上達到了平衡,具體性能表現如下所示。
coco數據集
voc2012數據集
9. OPT機器視覺光源的機器視覺光源分類
OPT機器視覺光源共有25大系列
1、 環形光源(OPT-RI系列)
特點:環形光源提供不同角度照射,能突出物體的三維信息,有效解決對角照射陰影問題。高密度LED陣列,高亮度;多種緊湊設計,節省安裝空間;可選配漫射板導光,光線均勻擴散。
應用:PCB基板檢測;IC元件檢測;顯微鏡照明;液晶校正;塑膠容器檢測;集成電路印字檢測;通用外觀檢測。
2、 條形光源(OPT-LI系列)
特點:條形光源是較大方形結構被測物的首選光源;顏色可根據需求搭配,自由組合;照射角度與安裝隨意可調。
應用:金屬、玻璃等表面檢查;表面裂縫檢測;LCD面板檢測;線陣相機照明;圖像掃描。
3、 高均勻條形光源(OPT-LIT系列)
特點:高密度貼片LED,高亮度,高散射漫射板,均勻性好;良好的散熱設計確保產品穩定性和壽命;安裝簡單、角度隨意可調;尺寸設計靈活;顏色多樣可選,可定製多色混合、多類型排布非標產品。
應用:電子元件識別與檢測;服裝紡織;印刷品質量檢測;家用電器外殼檢測;圓柱體表面缺陷檢測;食品包裝檢測;燈箱照明;替代熒光燈。
4、 條形組合光源(OPT-LIM系列)
特點:四邊配置條形光,每邊照明獨立可控;可根據被測物要求調整所需照明角度,適用性廣。
應用:PCB基板檢測,IC元件檢測;顯微鏡照明,包裝條碼照明;二次元影像測量。
5、 同軸光源(OPT-CO系列)
特點:高密度排列LED,亮度大幅提高;獨特的散熱結構,延長壽命,提高穩定性;高級鍍膜分光鏡,減少光損失;成像清晰,亮度均勻。
應用:此系列光源最適宜用於反射度極高的物體,如金屬、玻璃、膠片、晶片等表面的劃傷檢測;晶元和硅晶片的破損檢測,Mark點定位;包裝條碼識別。
6、 底部背光源(OPT-FL系列)
特點:用高密度LED陣列面提供高強度背光照明,能突出物體的外形輪廓特徵,尤其適合作為顯微鏡的載物台;紅白兩用背光源、紅藍多用背光源,能調配出不同的顏色,滿足不同被測物多色要求。
應用:機械零件尺寸的測量;電子元件、IC的引腳、端子連接器檢測;膠片污點檢測;透明物體劃痕檢測等。
7、 側部背光源(OPT-FLC系列)
特點:多次散射發光,局部和整體均勻性都很好;尺寸定製靈活,可以做到較大面積;超薄設計,最薄產品可做到6mm。
應用:大面積電路板電子器件檢測與識別;透視尺寸測量;LCD壞點檢測。
8、 平行背光源(OPT-FP系列)
特點:採用精確光路設計,出射光接近理想平行光,整體結構緊湊。
應用:可以作為背光源用於高精度尺寸測量,也可配合同軸光學系統,用於檢測光滑平整表面的細小劃傷、碰傷等缺陷。
9、 線形光源(OPT-LS系列)
特點:超高亮度;採用柱面透鏡聚光;適用於各種流水連續檢測場合。
應用:線陣相機照明專用;AOI檢測;鍍膜、玻璃表面破損、內部雜質檢則。
10、 線形同軸光源(OPT-LSC系列)
特點:大功率LED,高亮度,保證高度檢測的需要;獨特分光鏡結構,減少光損失;適用於各種流水線連續檢測場合。
應用:線陣相機照明專用;薄膜、玻璃表面破損、內部雜質檢測;高速印刷質量檢測。
11、 點光源(OPT-PI系列)
特點:大功率LED,體積小,發光強度高; 光纖鹵素燈的替代品,尤其適合作為鏡頭的同軸光源等;高效散熱裝置,大大提高光源的使用壽命。
應用:配合遠心鏡頭使用;用於晶元檢測,Mark點定位;晶片及液晶玻璃底基校正。
12、 球積分光源(OPT-RID系列)
特點:具有球積分效果的半球面內壁,均勻反射從底部360度發射出的光線,使整個圖象的照度十分均勻;紅、白、藍、綠、黃等多種顏色可選;可調制出任何顏色。
應用:適合於曲面,表面凹凸不平的工件檢測;適合於表面反光較強的物體表面檢測;包裝檢測;適用於外形相同顏色不同的工件。
13、 平面無影光源(OPT-FC系列)
特點:散射發光,均勻性良好;同時具備無影光和同軸光效果;輕巧、緊湊、便於安裝、節省空間。
應用:食品、煙草、日化用品包裝檢測;電器外殼、零件檢測與測量;高反光、不平整表面字元、圖形檢測、測量與識別等。
14、 無影照射RIH系列(OPT-RIH系列)
特點:實現了四有無影照射效果,不同的工作距離能形成不同的光照環境,可以針對不同的檢測類型使用。
應用:主要應用於表面碰傷、劃傷等缺陷,印刷字元、標志、條碼、指紋、圖文識別等,大多針對幅面較大的矩形目標和幅面較小的不規則目標使用,也可替代普通環形光實現更高均勻性有。
15、 無影照射RIF系列(OPT-RIF系列)
特點:實現了圓形無影照射效果,不同的工作高度能形成不同的光0照環境,可以針對不同的檢測類型使用。
應用:主要應用於表面碰傷、劃傷等缺陷,印刷字元、標志、條碼、指紋、圖文識別等,大多針對幅面較大的圓形目標和幅面較小的不規則目標使用,也可替代普通環形光實現更高均勻性照明。
16、 無影照射RIE系列(OPT-RIE系列)
特點:採用設計獨特的漫射板,將光線經過反射和散射形成雙向、高均勻的圓對稱光場,可以將物體表面細微差異造成的干擾過濾掉,凸顯坡度急劇變化特徵。
應用:主要應用於金屬器件邊緣定位、尺寸測量、碰傷檢測等,也可替代普通環形光實現更高均勻性照明。
17、 無影照射RIW系列(OPT-RIW系列)
特點:採用設計獨特的漫射板,將光線經過多次反射,形成多方向、高度均勻的圓對稱光場,可以將物體表面不同坡面都照射均勻。
應用:主要應用於電子配件維修、回收返修、器件安裝定位、表面字元圖案識別和尺寸檢測等,也可替代普通環形光實現更高均勻性照明。
18、 無影照射RIU系列(OPT-RIU系列)
特點:採用特製漫射板將光散射到不同方向,形成漸變球狀分布,使得整個球面目標不同坡度的反光強度都比較一致,過濾局部反光干擾。
應用:主要應用於電子器件、玻璃製品、沖壓金屬件、注塑塑料件等反光表面的字元、圖案檢測與識別等,也可替代普通環形光實現更高均勻性照明。
19、 平行集光光源(OPT-PL系列)
特點:採用大功率LED結合獨特散熱結構,確保光源有足夠的亮度,整體上利用透鏡將通過散射板的光線匯聚起來形成均勻的光束,光線方向性好,接近平行光,可以保持在比較遠的距離,光線都比較集中,可以作為背光或遠距離打光的光源。
應用:遠距離集束光源,實現不同距離下的聚光照明。
20、 對位專用光源(OPT-VA系列)
特點:對位精度高;體積小,集成度高;攝像機介面可選;放大倍數可選。
應用:上下兩工件對准專用,如全自動印刷機、COG等。
21、 AOI專用光源(OPT-RIA系列)
特點:RIA系列光源專用於電路板焊錫檢測;不同角度三色照明,凸顯焊錫三維信息,層次清晰;漫射板導光,光線均勻,減少反光;紅、藍、綠、三色搭配,其它多種顏色可選。
應用:AOI專用光源。
22、 大功率系列光源
特點:原材料為超大功率LED,高密度排布,亮度超過一般光源三倍以上;散熱設計好,發光穩定,壽命長;設計製作靈活,形態多樣;尺寸和發光方向可根據客戶要求定製。
應用:遠距離照明;高速流水線照明;大面積照明。
23、 光纖點光源(OPT-QG15)
特點:採用德國原裝大功率LED燈芯,壽命約為鹵素光源的20倍;亮度控制採用恆流控制方式;一體化
機箱,內置100-240VAC電源;功耗為25W,亮度相當於150W鹵素光。
應用:原使用鹵素燈+光纖的應用都可以直接替代;醫療照明;半導體設備;電子器件設備;顯微鏡操作;一般工業照明。
24、 紅外光源
特點:真空波長:850nm,940nm
應用:醫學(血管網識別、眼球定位);包裝(可以透過塑料包裝);服裝、紡織;制葯;電子、半導體;LCD、OLED。
25、 紫外光源
特點:真空波長:365nm,385nm
應用:驗鈔;熒光特質檢測;熒光字元、條碼、二維碼識別;玻璃微小缺陷檢測;光化學效應(只能用於抽檢);產品外殼微小劃傷、碰傷等缺陷檢測。
10. 認識圓形小班教案
活動目標
1、認識圓形,了解圓形的外形特徵。
2、培養幼兒對認知圖形的數學活動的興趣。
3、能從許多實物和周圍環境中找到與圓形相似的實物。
活動准備
1、各種圓形的實物(如圓形鏡子、圓盤、圓餅乾等)。
2、課件:各種各樣的形狀[2-54]
教學具圖片
活動過程
一、導入
情境導入:「小朋友們,今天有些圖形寶寶到我們班來,我們一起去看一看好嗎?
帶領幼兒參觀由於圓形物品組成的圓圓商店,說說這些物品的面是什麼形狀的?
小結:這些物品的面都是圓形的。那麼究竟什麼樣子的圖形是圓形呢?
二、展開
1、幼兒每人一張阿圓形卡片,引導幼兒觀察探索圓形的外形特徵。
幼兒每人一個圓形卡片,請幼兒沿著圓形邊緣摸一摸,
問:你有什麼感覺?請幼兒摸一摸圓形的面,問:有什麼感覺?
感知圓形邊緣是光滑的,圓形的面是平的,初步感知圓形的外形特徵。
小結:圓形的面是平平的,周圍很圓滑,沒有稜角,這樣的圖形就是圓形。
2、觀察拓展,找找身邊的圓形
請小朋友找一找身邊的圓形:我們教室里有什麼東西是圓形的?
你還在那裡見過圓形的物體呢?
3、課件觀察,感知生活中的圓形
師:請小朋友看一看,這些物品中哪些是圓形的?
4、游戲「送圖形寶寶回家」
方法:幼兒人手一個三角形、一個圓形卡片,老師准備兩個圖形媽媽的卡片,
引導幼兒自己觀察後將手中的圖形送回家,並說:「我把xx圖形送回家」。
最後,老師帶領幼兒進行檢查驗證。
三、結束部分
小朋友們今天你們和圓形寶寶玩的開心嗎?我們一起到教室外面找找看,還有那些東西也是圓形的好嗎?
(教師帶領幼兒去尋找圓形的物體,活動結束。)
活動目標:
1、讓幼兒感知圖形圓形。
2、創設愉悅的游戲情節,運用多種感觀來調動幼兒思維,想像能力,發展幼兒觀察能力,激發幼兒探索的慾望。
活動准備:
小圓片、多媒體課件。
活動過程:
一、導入
師:老師今天帶了一個好朋友,你們想見見他嗎?我們把它請出來。
它是什麼樣子的?
圓溜溜,很光滑。它有一個好聽的名字叫做圓形。
請跟我一起說一說,圓形。
二、新授
1、師:小朋友們,請你們也從盒子中拿出一個圓形,摸一摸,它是什麼樣子的。
它是光滑的,圓圓的。請大家把圓形放回盒子里。
小朋友們,我們來找一找,教室里有沒有圓形的東西?
2、師:老師也找到許多我們生活中圓形的東西,讓我們一起來看一看吧!(出示PPT)
依次出示:球、硬幣、盤子、鍾、泡泡、車輪、紐扣、餅干、巧克力豆。
三、游戲
組合圖形,利用圓形,拼出孩子喜歡的圖案。
設計意圖:
小班幼兒在認知過程中,容易受外界事物和情緒的支配。無意記憶占優勢,常常在無意中記住一些事物。游戲、操作是幼兒最喜愛的活動形式,如果單純讓幼兒認識圓形,幼兒會感到很枯燥,興趣往往不高,而且效果也會不好。因此,在設計這個教學活動時,讓幼兒在游戲操作中了解一些常見的圓形物品與特點,從而激發幼兒對周圍事物觀察探究的興趣,發展幼兒的感知、觀察和想像能力。
活動目標:
1、在認知、操作和游戲活動中掌握圓形的特徵。
2、在周圍環境中尋找圓形物體,感知圓形在生活中的應用。
3、培養幼兒的觀察力和想像力。
4、願意大膽嘗試,並與同伴分享自己的心得。
5、激發幼兒對科學活動的興趣。
活動准備:
1、活動室布置一些圓形的物品。
2、圓形紙一張,圓形物品若干(如鏡子、瓶蓋、鈴鼓、盤子)。
3、幻燈片,每桌一隻箱子,箱子里有各種不同的圓形物品,操作紙若干、彩筆人手一份。
活動過程:
一、創設情境,認識圓形物品。
師:(用神秘的口氣加眼神)今天老師給小朋友帶來一箱子的玩具,請你們每人拿一件在桌上玩一下,說說它是什麼?
幼:我拿的鏡子,
幼:我拿的鈴鼓,
幼:我拿的盤子……
師:你發現了什麼?這些物品有什麼相同的地方?
幼:他們都是圓圓的。(引出圓形這一話題。)
師:(出示一張圓形的紙)提問:它像什麼?
幼:它像盤子,
幼:它像太陽,
二、感知圓形的特徵
師:請小朋友自選圓形物品,沿著物品的表面和邊緣觸摸,互相交流一下自己的感受。
幼:平平的,
幼:圓圓的,
幼:邊緣是光滑的,
幼:沒有稜角……(幼兒交流,充分表達自己的觀點)
師:說一說,你還見過哪些東西也是圓形的?(鼓勵幼兒說出在家裡或者在其他地方見到的圓形物品)
幼:碗、盆,球、掉燈……
三、觀察幻燈片《雜技表演》
師:說一說,畫面上有誰?他們在干什麼?
幼 :奇奇、樂樂、歡歡、小熊。
幼:他們在玩雜技。
師:想一想,圓圈能翻跟頭,為什麼方圈不能呢?
幼:方圈不光,它有角翻不過去。(引導幼兒說)
師:看一看,獨輪車的輪子是什麼形狀的?還有哪些東西也是圓形的?
幼:圓形的,(幼兒一起說)
幼:還有球,呼啦圈,滾圈,盤子
四、做圓形標記
發給每個幼兒一張白紙(四周打好圓形的小孔),指導幼兒沿小孔撕成圓形,然後請幼兒在圓形紙上畫出自己喜歡的東西或作一個標記,做完後把它貼到自己的物品上作為標志。
五、尋找圓形物品
引導幼兒尋找活動室里的圓形物品,要求幼兒用語言表達出來如「我發現: 是圓形的.」。並把他們有規律的擺放到數學活動區。
活動延伸:
為幼兒准備一些畫有圓形的紙,啟發孩子在圓形上面添加幾筆後變成另一個圖案(如太陽,蘋果),鼓勵他畫的越多越好。
教學反思:
1、通過本節課的活動,幼兒能夠從眾多物體中區分出圓形,能夠通過觀察,尋找到生活中的圓形物體。
2、本節課,我上的還是比較成功的,達到了預期的教學目的,這次活動我遵循了幼兒的年齡特徵,以幼兒的興趣為前提,通過幼兒喜歡的泡泡來引出了今天的活動主題 ——認識圓圓世界,幼兒能夠根據老師的引導參與其中,並一步一步的認識圓形。不足的是,我覺得我的語言還不夠兒童化,有些話語稍顯生硬,幼兒聽不太明白,導致整節課的活動進程有點不流暢,我以後一定要多聽其他老師課,綜合他們的教學語言,最終形成我自己獨特的教學語言。
3、如果讓我重新上這堂課,我將利用課件來展示各種圓形,設計吹泡泡的游戲讓更多的幼兒參與其中,因為在我看來,通過課件展示的泡泡更加生動,更加能夠吸引住幼兒的眼球,設計吹泡泡的游戲,更加能夠調動幼兒的參與興趣。
一、活動准備:
1、將各色色紙剪成大大小小的圓,貼在磁鐵黑板上。剪刀、糨糊、圓形貼紙、畫紙、磁鐵、彩色等。
2、幼兒數學用書。
二、活動過程
(一)以講《愛畫畫的波波的故事》的形式引起興趣
隨著故事情節讓幼兒猜猜波波畫的是什麼?「小豬波波畫了好多大大小小的圓,哥哥姐姐看了好久,不知道波波的圓圈是什麼,就問波波:「你畫的圓圈是什麼呀?」波波說:「這個圓圈裡有兩只手,一隻長,一隻短,從早到晚繞著轉。」哥哥說:「啊,我知道了,是時鍾」,姐姐說:「那這個是什麼?」波波說:「它下面還有一條長長的線,要抓好,才不會跑掉」。姐姐說:「喔,是氣球」哥哥姐姐終於知道波波畫什麼了。波波又畫了許多圓圈,連肚臍眼的圓都有呢?媽媽說:「 波波真是個很棒的畫家」。
(二)運用操作法讓幼兒拼圖
幼兒也當波波,用圓形色紙拼拼貼貼,看可以拼貼出什麼造型。完成後請幼兒欣賞作品,鼓勵幼兒說一說自己用圓形拼貼出了什麼。
(三)帶領幼兒打開《我的數學》第一頁,啟發幼兒觀察畫面內容,讓幼兒給圓形塗上自己喜歡的顏色,再說說圖中還有哪些東西是圓的。
(四)引導幼兒觀察周圍環境,想一想、說一說,生活中還有哪些東西是圓的。
三、活動目標:
1、認識圓形,運用圓形創作造型。
2、發展幼兒想像力及操作能力。
活動目標
1、願意參與活動,對數學活動感興趣。
2、認識圓形,初步掌握圓形的特徵。
3、能在生活中找出各種圓形的物品。
活動准備
環境准備:教師提前在班級內的各個角落放置一些圓形的物品。
課件准備:「圓形專賣店」情景圖片;「各種形狀」組圖;「去進貨」組圖;游戲背景音樂。
紙面教具:《圓形專賣店》。
材料准備:馬克筆。
活動過程
一,出示圖片引導幼兒初步感知圓形
——小老鼠皮皮新開了一家專賣店,裡面賣的物品很特別,我們一起去瞧瞧吧!
——皮皮的專賣店裡都有哪些物品?
二,幫助幼兒認識圓形掌握圓形的特徵
——這個圓圓的圖形就叫做圓形。
——圓形和其他形狀相比,有什麼特別的地方?
三,發放紙面教具鞏固幼兒對圓形的認識
1、發放紙面教具,引導幼兒尋找正確的小汽車。
2、引導幼兒在紙面教具上連一連。
3、教師操作課件,驗證幼兒的答案。
四,播放游戲音樂玩游戲尋找圓形的物品
——恭喜小朋友們順利地幫助皮皮完成了進貨任務,現在請小朋友在班級內找一找,哪些物品是圓形的?
活動目標:
1、通過分享活動,感受圓形的物體,理解圓形的主要特徵。
2、豐富幼兒對圖形的認識。
3、能在生活中找出各種圓形物體
4、通過各種感官訓練培養幼兒對計算的興致及思維的准確性、敏捷性。
5、能與同伴合作,並嘗試記錄結果。
活動准備:
圖形餅干,有圓形特徵的小豬圖片活動過程:
1、通過吃餅干游戲,激發幼兒的興趣。
師:小朋友,瞧,這是什麼?(餅干)
師:這些餅干是什麼樣子的呢?我們一起來品嘗這些餅干吧。
師:餅干好不好吃,餅干長什麼樣子。
2、觀看圖片,了解圓形
師:老師除了帶來圓圓的好吃的餅干,還給你們帶來了一個小動物朋友呢。看看是誰?(出示圖片)師:我們來仔細認識這個朋友。看看,①他的頭是什麼形狀的?(圓形的)②他身上還有那些地方是圓形的?
3、師幼討論圓形特點師:圓形是什麼樣子的呢?
4、尋找生活中的圓形師:生活中還有很多東西是圓形的。我們教室里也有,找一找?!你還見過那些圓形東西呢?說一說
教學反思:
在執教的過程中缺少激情,數學本身就是枯燥的,那在教孩子新知識的時候,就需要老師以自己的激情帶動孩子的學習,在今後的教學中這方面也要注意。
活動設計背景
小班的幼兒略微有了粗淺的幾何概念,這一階段的幼兒通過老師引導能正確的認識圓形,三角形和正方形。但他們不是從這些形狀的特徵來認識而是將其和日常生活中熟悉的物體相對照。因此,我讓幼兒在游戲中探索中對圖形產生興趣,並通過觀察,比較,想像動手等形式感知圖形的不同特徵。
活動目標
1、通過對比讓幼兒感知圖形的基本特徵,創設愉悅的游戲情節。
2、運用多種感官來調動幼兒的思維想像能力的觀察力,激發幼兒的探索能力。
3、引導幼兒積極與材料互動,體驗數學活動的樂趣。
4、引發幼兒學習圖形的興趣。
5、發展幼兒邏輯思維能力。
教學重點、難點
圓形三角形和方形的認識和區別
活動准備
小動物的圖片,幾何圖形組成的圖畫和三種幾何圖形卡片若干。
活動過程
1、小朋友老師今天帶你們拼拼圖,你們願不願意圖?隨後,我會出示用這三種圖片組成的各種圖片展示給幼兒,激發幼兒的興趣。我會和幼兒一起繼續通過想像擺出各種圖形。
2、提問;這么多好看的圖形你們知道它們使用什麼圖形組成的嗎?
3、幼兒回答完我會根據小朋友的回答用兒歌的形式把三種圖形的特點 和名稱說給小朋友們聽。
用游戲的形式讓幼兒認識三種圖形。
1、游戲;摸一摸。用摸得形式讓小朋友體會這三種圖形的不同之處,並說出圖形的名稱。
2、游戲;誰的本領大。出示由圖形拼成的各種圖案讓小朋友找出是由什麼圖形組成的。
3、游戲;小動物找家。出示小動物圖片,我會告訴小朋友它們哭了,原因是找不到自己的家了,請小朋友幫幫它找找它們的家。例如;我會扮演小動物說說自己的房子是什麼形狀的,請小朋友來幫忙。
4、游戲;找圖形寶寶。在教室地板上擺放三個圖形寶寶,我喊口令小朋友找圖形站好看誰找的快又好。
結束。今天我們玩得很開心,小朋友們能告訴老師你們都認識了什麼圖形,它們都有什麼特點?你們回家觀察一下,你家裡什麼東西是由我們今天認識的圖形組成的,明天來了告訴老師。
放排排隊的歌,帶小朋友去衛生間。
教學反思
當我進行實際教學過程時,我從孩子們身上看到了這樣的現象:
1、幼兒對各種圖形非常感興趣,幼兒對身邊的事物有著敏銳的觀察力,有渴望了解圖形寶寶的慾望
2、 在活動中,幼兒的情緒很活躍,能把自己發現的主動地告訴老師和周邊的小夥伴,使幼兒的表達能力、反應能力和觀察能力都得到了發展。
我還從孩子們的操作中,在這次活動中孩子樂於參與,積極發現。 孩子們興致濃厚,也願意主動去探索,主動去參與。我覺得我原來的設計可以這樣的調整:幼兒自我操作時間不足,沒有創設幼兒合作交流的機會,語言還要精煉等,在以後組織活動的過程中我應加以改進,為幼兒傳遞良好的語感,培養幼兒善於表達的能力。