精度:99.306%
排名:第二
目錄
1.數(shù)據(jù)處理
2.搭建模型
3.模型集成
1.數(shù)據(jù)處理
1.1中值濾波(median filter)進(jìn)行降噪
中值濾波的主要原理是將數(shù)字圖像中的某點(diǎn)用該點(diǎn)的鄰域中各個(gè)像素值的中值所來代替桐早,例如黑點(diǎn)的像素值比較大,在周圍都是白點(diǎn)的情況下雄坪,用中值進(jìn)行填充芽突,那么黑點(diǎn)的像素值就會(huì)變小座柱,從而能在過濾出噪聲點(diǎn)。標(biāo)桿模型中用某點(diǎn)周圍的5個(gè)像素值的中值進(jìn)行代替,如圖1:1.2閾值分割法(threshold segmentation)生成掩膜(binary mask)
在本文中的閾值分割法原理就是以一張圖片所有像素值的眾數(shù)作為閾值咳短,當(dāng)某點(diǎn)的像素值小于閾值時(shí)眶蕉,則通過布爾值進(jìn)行分類砰粹,分成白點(diǎn)或黑點(diǎn),例如眾數(shù)對(duì)應(yīng)是黑點(diǎn)的像素值造挽,那么小于眾數(shù)的像素值點(diǎn)就被分類為白點(diǎn)碱璃,那么一張圖片就形成黑白分明的圖弄痹。如圖2:1.3形態(tài)閉合(morphology closing)
形態(tài)變換分為形態(tài)閉運(yùn)算和形態(tài)開運(yùn)算,形態(tài)閉運(yùn)算是形態(tài)先膨脹后腐蝕嵌器,可用來填充小孔肛真,而開運(yùn)算則是先腐蝕后膨脹,可用來消除小斑塊爽航。本文采用閉運(yùn)算來填充圖2中蚓让,閾值分割后的小孔。
膨脹:原理是在二值圖像上岳掐,找到像素值為1的點(diǎn)凭疮,將它的鄰近像素點(diǎn)都設(shè)置成這個(gè)值。1值表示白串述,0值表示黑执解,因此膨脹操作可以擴(kuò)大白色值范圍,壓縮黑色值范圍纲酗。
腐蝕:和膨脹相反的操作衰腌,將0值擴(kuò)充到鄰近像素。擴(kuò)大黑色部分觅赊,減小白色部分右蕊。如圖3:
1.4添加異型數(shù)量
由于訓(xùn)練集中并沒有異型的樣本,所以當(dāng)測試集中出現(xiàn)異型樣本時(shí)吮螺,模型不能識(shí)別饶囚。所以往訓(xùn)練集中添加異型樣本,其中異性樣本來自測試集鸠补,通過對(duì)數(shù)據(jù)的可視化萝风,人工標(biāo)識(shí)異型樣本。如圖41.5數(shù)據(jù)增廣
keras中的圖片生成器(ImageDataGenerator)紫岩,其實(shí)就是對(duì)數(shù)據(jù)進(jìn)行一些處理规惰,比如去中心化、圖片寬度泉蝌、高度的處理歇万、圖片旋轉(zhuǎn)等。
2.模型搭建
2.1卷積層
原理就是用一個(gè)超參數(shù)filter對(duì)圖像矩陣進(jìn)行局部提取特征勋陪。如圖5:
如上圖所示贪磺,該圖片的輸入為一個(gè)三通道的圖片,即RGB圖像诅愚。而超參數(shù)為Filter_w0和Filter_w1缘挽。其中藍(lán)色部分為圖像的像素?cái)?shù)據(jù),為了增加對(duì)邊緣數(shù)據(jù)的利用,在外層增加了一層灰色全為0的數(shù)據(jù)壕曼,目的就是在用超參數(shù)提取局部數(shù)據(jù)時(shí),能增加外層數(shù)據(jù)的利用等浊,其中b0為偏置項(xiàng)腮郊,一個(gè)filter就輸出一組數(shù)據(jù)硅堆,即綠色部分纹坐。
2.2池化層
池化層就是對(duì)卷積層的結(jié)果進(jìn)行進(jìn)一步的提取,設(shè)置一個(gè)filter毅厚,對(duì)卷積結(jié)果進(jìn)行局部提取撒踪,取局部矩陣中的最大值或者平均值过咬,作為這個(gè)局部矩陣的代表值,這樣就縮小的圖像的大小制妄,例如卷積層輸出是4x4大小的矩陣掸绞,而池化層filter是2x2矩陣,那么池化后的輸出結(jié)果為2x2的矩陣耕捞。如圖6:
2.3全連接層
其實(shí)就是傳統(tǒng)神經(jīng)網(wǎng)絡(luò)衔掸,如圖7:
3模型集成
集成原理就是少數(shù)服從多數(shù),我們采用三個(gè)卷積神經(jīng)網(wǎng)絡(luò)模型的預(yù)測結(jié)果進(jìn)行一個(gè)集成俺抽,例如樣本1在三個(gè)模型中的預(yù)測結(jié)果是一樣時(shí)敞映,集成結(jié)果即三個(gè)模型一致的結(jié)果,若三個(gè)模型中磷斧,兩個(gè)模型的預(yù)測結(jié)果是一致振愿,而只有一個(gè)模型的預(yù)測結(jié)果不同時(shí),那就少數(shù)服從多數(shù)弛饭,取兩個(gè)模型一致的預(yù)測結(jié)果作為集成結(jié)果冕末,若三個(gè)模型預(yù)測結(jié)果均不一樣時(shí),取最優(yōu)模型的預(yù)測結(jié)果作為集成結(jié)果孩哑。
最后結(jié)果如下: