本申請(qǐng)涉及圖像處理技術(shù)領(lǐng)域,更具體的涉及圖片分類方法及裝置。
背景技術(shù):
圖片分享是一種網(wǎng)絡(luò)圖片存儲(chǔ)的分發(fā)服務(wù),網(wǎng)絡(luò)用戶可以通過把自己的本地圖片存放到提供圖片分享服務(wù)的網(wǎng)站服務(wù)器上,并通過一定的圖片分享代碼,嵌入Blog或論壇等進(jìn)行分享。由于網(wǎng)絡(luò)用戶的良莠不齊,上傳的圖片也摻雜著非法內(nèi)容,這其中包括色情圖片、政治圖片以及廣告圖片。作為網(wǎng)站服務(wù)器的工作人員擔(dān)負(fù)著巨大的圖片審核任務(wù)。
目前,已經(jīng)采用自動(dòng)圖像識(shí)別算法,自動(dòng)辨別網(wǎng)絡(luò)用戶上傳的圖片的內(nèi)容是否合法,以降低人工工作的強(qiáng)度。然而,隨著圖像編輯軟件的普及,網(wǎng)絡(luò)用戶可以將其需要共享的多張圖片拼成一張圖片進(jìn)行分享,如圖1所示九宮格的多圖拼圖圖片,圖1所示的圖片是由9張圖片組成的。而自動(dòng)圖像識(shí)別算法無法識(shí)別多圖拼圖圖片,使得多圖拼圖成為網(wǎng)絡(luò)用戶上傳非法圖片的手段。
因此,工作人員需要手動(dòng)從大量圖片中篩選出多圖拼圖圖片,人工對(duì)多圖拼圖圖片進(jìn)行審核,從而降低了圖片審核的效率。
技術(shù)實(shí)現(xiàn)要素:
有鑒于此,本發(fā)明提供了一種圖片分類方法及裝置,以克服現(xiàn)有技術(shù)中工作人員需要手動(dòng)從大量圖片中篩選出多圖拼圖圖片,人工對(duì)多圖拼圖圖片進(jìn)行審核,從而降低了圖片審核的效率的問題。
為實(shí)現(xiàn)上述目的,本發(fā)明提供如下技術(shù)方案:
一種圖片分類方法,包括:
獲得圖片的水平方向邊緣圖和垂直方向邊緣圖;
依據(jù)所述水平方向邊緣圖和所述垂直方向邊緣圖,獲得所述圖片各行的邊緣強(qiáng)度以及各列的邊緣強(qiáng)度,每行的邊緣強(qiáng)度為位于所述行相應(yīng)的所有像素點(diǎn)的邊緣強(qiáng)度之和,每列的邊緣強(qiáng)度為位于所述列的所有像素點(diǎn)的邊緣強(qiáng)度之和;
依據(jù)所述圖片各行的邊緣強(qiáng)度以及各列的邊緣強(qiáng)度,計(jì)算所述圖片的各行的邊緣強(qiáng)度的重復(fù)周期,以及各列的邊緣強(qiáng)度的重復(fù)周期;
依據(jù)各行的邊緣強(qiáng)度的重復(fù)周期以及各列的邊緣強(qiáng)度的重復(fù)周期,判斷所述圖片是否為多圖拼圖圖片。
其中,所述依據(jù)所述圖片各行的邊緣強(qiáng)度以及各列的邊緣強(qiáng)度,計(jì)算所述圖片的各行的邊緣強(qiáng)度的重復(fù)周期,以及各列的邊緣強(qiáng)度的重復(fù)周期包括:
計(jì)算所述水平方向邊緣圖中每一行中各像素點(diǎn)的邊緣強(qiáng)度之和,獲得水平邊緣直方圖,所述水平邊緣直方圖的橫坐標(biāo)為所述圖像各行的位置信息,縱坐標(biāo)為各行的邊緣強(qiáng)度;
計(jì)算所述垂直方向邊緣圖中每一列中各像素點(diǎn)的邊緣強(qiáng)度之和,獲得垂直邊緣直方圖,所述垂直邊緣直方圖的橫坐標(biāo)為所述圖像各列的位置信息,縱坐標(biāo)為各列的邊緣強(qiáng)度;
將所述水平邊緣直方圖和所述垂直邊緣直方圖分別歸一化,獲得歸一水平邊緣直方圖和歸一垂直邊緣直方圖;
依據(jù)所述歸一水平邊緣直方圖中各邊緣強(qiáng)度的幅值信息,計(jì)算所述歸一水平邊緣直方圖的重復(fù)周期;
依據(jù)所述歸一垂直邊緣直方圖中各邊緣強(qiáng)度的幅值信息,計(jì)算所述歸一垂直邊緣直方圖的重復(fù)周期。
優(yōu)選地,還包括:
確定所述歸一水平邊緣直方圖中各行的邊緣強(qiáng)度大于第一預(yù)設(shè)邊緣強(qiáng)度閾值的第一數(shù)目;
確定所述歸一垂直邊緣直方圖中各列的邊緣強(qiáng)度大于第二預(yù)設(shè)邊緣強(qiáng)度閾值的第二數(shù)目;
當(dāng)所述第一數(shù)目或所述第二數(shù)目小于等于預(yù)設(shè)最大強(qiáng)度,且大于等于預(yù)設(shè)最小強(qiáng)度時(shí),執(zhí)行步驟依據(jù)所述歸一水平邊緣直方圖中各邊緣強(qiáng)度的幅值信息,計(jì)算所述歸一水平邊緣直方圖的重復(fù)周期。
其中,所述依據(jù)各行的邊緣強(qiáng)度的重復(fù)周期以及各列的邊緣強(qiáng)度的重復(fù)周期,判斷所述圖片是否為多圖拼圖圖片包括:
當(dāng)各行的邊緣強(qiáng)度的重復(fù)周期的數(shù)目大于等于預(yù)設(shè)周期閾值時(shí),或當(dāng)各列的邊緣強(qiáng)度的重復(fù)周期的數(shù)目大于等于所述預(yù)設(shè)周期閾值時(shí),確定所述圖片為多圖拼接圖片。
其中,所述獲得圖片的水平方向邊緣圖和垂直方向邊緣圖包括:
依據(jù)水平梯度算子與所述圖片,計(jì)算出所述水平方向邊緣圖;
依據(jù)垂直梯度算子與所述圖片,計(jì)算出所述垂直方向邊緣圖。
一種圖片分類裝置,包括:
獲取邊緣圖模塊,用于獲得圖片的水平方向邊緣圖和垂直方向邊緣圖;
獲取邊緣強(qiáng)度模塊,用于依據(jù)所述水平方向邊緣圖和所述垂直方向邊緣圖,獲得所述圖片各行的邊緣強(qiáng)度以及各列的邊緣強(qiáng)度,每行的邊緣強(qiáng)度為位于所述行相應(yīng)的所有像素點(diǎn)的邊緣強(qiáng)度之和,每列的邊緣強(qiáng)度為位于所述列的所有像素點(diǎn)的邊緣強(qiáng)度之和;
計(jì)算重復(fù)周期模塊,用于依據(jù)所述圖片各行的邊緣強(qiáng)度以及各列的邊緣強(qiáng)度,計(jì)算所述圖片的各行的邊緣強(qiáng)度的重復(fù)周期,以及各列的邊緣強(qiáng)度的重復(fù)周期;
判斷模塊,用于依據(jù)各行的邊緣強(qiáng)度的重復(fù)周期以及各列的邊緣強(qiáng)度的重復(fù)周期,判斷所述圖片是否為多圖拼圖圖片。
其中,所述計(jì)算重復(fù)周期模塊包括:
計(jì)算水平邊緣強(qiáng)度單元,用于計(jì)算所述水平方向邊緣圖中每一行中各像素點(diǎn)的邊緣強(qiáng)度之和,獲得水平邊緣直方圖,所述水平邊緣直方圖的橫坐標(biāo)為所述圖像各行的位置信息,縱坐標(biāo)為各行的邊緣強(qiáng)度;
計(jì)算垂直邊緣強(qiáng)度單元,用于計(jì)算所述垂直方向邊緣圖中每一列中各像素點(diǎn)的邊緣強(qiáng)度之和,獲得垂直邊緣直方圖,所述垂直邊緣直方圖的橫坐標(biāo)為所述圖像各列的位置信息,縱坐標(biāo)為各列的邊緣強(qiáng)度;
獲得歸一化直方圖單元,用于將所述水平邊緣直方圖和所述垂直邊緣直方圖分別歸一化,獲得歸一水平邊緣直方圖和歸一垂直邊緣直方圖;
計(jì)算水平重復(fù)周期單元,用于依據(jù)所述歸一水平邊緣直方圖中各邊緣強(qiáng)度的幅值信息,計(jì)算所述歸一水平邊緣直方圖的重復(fù)周期;
計(jì)算垂直重復(fù)周期單元,用于依據(jù)所述歸一垂直邊緣直方圖中各邊緣強(qiáng)度的幅值信息,計(jì)算所述歸一垂直邊緣直方圖的重復(fù)周期。
優(yōu)選的,還包括:
第一確定模塊,用于確定所述歸一水平邊緣直方圖中各行的邊緣強(qiáng)度大于第一預(yù)設(shè)邊緣強(qiáng)度閾值的第一數(shù)目;
第二確定模塊,用于確定所述歸一垂直邊緣直方圖中各列的邊緣強(qiáng)度大于第二預(yù)設(shè)邊緣強(qiáng)度閾值的第二數(shù)目;
執(zhí)行模塊,用于當(dāng)所述第一數(shù)目或所述第二數(shù)目小于等于預(yù)設(shè)最大強(qiáng)度,且大于等于預(yù)設(shè)最小強(qiáng)度時(shí),執(zhí)行所述計(jì)算水平重復(fù)周期單元。
其中,所述判斷模塊包括:
確定單元,當(dāng)各行的邊緣強(qiáng)度的重復(fù)周期的數(shù)目大于等于預(yù)設(shè)周期閾值時(shí),或當(dāng)各列的邊緣強(qiáng)度的重復(fù)周期的數(shù)目大于等于所述預(yù)設(shè)周期閾值時(shí),用于確定所述圖片為多圖拼接圖片。
其中,所述獲取邊緣圖模塊包括:
計(jì)算水平邊緣圖單元,用于依據(jù)水平梯度算子與所述圖片,計(jì)算出所述水平方向邊緣圖;
計(jì)算垂直邊緣圖單元,用于依據(jù)垂直梯度算子與所述圖片,計(jì)算出所述垂直方向邊緣圖。
經(jīng)由上述的技術(shù)方案可知,與現(xiàn)有技術(shù)相比,本發(fā)明實(shí)施例提供了一種圖片分類方法,巧妙的利用圖片與圖片之間的拼接處為邊緣,即圖與圖的拼接處相應(yīng)的行或列的邊緣強(qiáng)度最大的原理。首先獲得圖片的水平方向邊緣圖和垂直方向邊緣圖,依據(jù)水平方向邊緣圖和垂直方向邊緣圖,獲得圖片各行的邊緣強(qiáng)度以及各列的邊緣強(qiáng)度。依據(jù)圖片各行的邊緣強(qiáng)度以及各列的邊緣強(qiáng)度,計(jì)算圖片的各行的邊緣強(qiáng)度的重復(fù)周期,以及各列的邊緣強(qiáng)度的重復(fù)周期。依據(jù)各行的邊緣強(qiáng)度的重復(fù)周期以及各列的邊緣強(qiáng)度的重復(fù)周期,判斷圖片是否為多圖拼圖圖片。從而避免了人工從海量圖片中篩選出多圖拼圖圖片,從而提高了圖片審核效率。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。
圖1為九宮格的多圖拼圖圖片;
圖2為本申請(qǐng)實(shí)施例提供的一種圖片分類方法的流程示意圖;
圖3(a)為圖1所示圖片對(duì)應(yīng)的水平方向邊緣圖;
圖3(b)為圖1所示圖片對(duì)應(yīng)的垂直方向邊緣圖;
圖4為本申請(qǐng)實(shí)施例提供的一種圖片分類方法中的依據(jù)所述圖片各行的邊緣強(qiáng)度以及各列的邊緣強(qiáng)度,計(jì)算所述圖片的各行的邊緣強(qiáng)度的重復(fù)周期,以及各列的邊緣強(qiáng)度的重復(fù)周期的一種實(shí)現(xiàn)方式的方法流程示意圖;
圖5(a)為本申請(qǐng)實(shí)施例提供的以圖1為樣本的水平邊緣直方圖;
圖5(b)為本申請(qǐng)實(shí)施例提供的以圖1為樣本的垂直邊緣直方圖;
圖6為本申請(qǐng)實(shí)施例提供的一種圖片分類裝置的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
請(qǐng)參閱圖2,為本申請(qǐng)實(shí)施例提供的一種圖片分類方法的流程示意圖,該方法包括:
步驟S201:獲得圖片的水平方向邊緣圖和垂直方向邊緣圖。
步驟S201可以依據(jù)邊緣檢測(cè)方法,獲得圖片的水平方向邊緣圖和垂直方向邊緣圖。邊緣檢測(cè)是圖像處理和計(jì)算機(jī)視覺中的基本問題,邊緣檢測(cè)的目的是標(biāo)識(shí)數(shù)字圖像中亮度變化明顯的點(diǎn)。
本申請(qǐng)實(shí)施例提供的圖片分類方法中,巧妙的利用圖片與圖片之間的拼接處應(yīng)該為邊緣,如圖1所示圖片與圖片的拼接處均為邊緣,即圖片與圖片拼接處相應(yīng)的行或列的邊緣強(qiáng)度最大的原理,因此在計(jì)算各行和各列的邊緣強(qiáng)度之前,需要計(jì)算水平方向邊緣圖和垂直方向邊緣圖。
之所以計(jì)算水平方向邊緣圖和垂直方向邊緣圖,是由于一張圖片可能是由多個(gè)圖橫向拼接而成,也可能是由多個(gè)圖縱向拼接而成,也可能是如圖1所示,多個(gè)圖橫向拼接以及縱向拼接在一起。
其中,獲得圖片的水平方向邊緣圖和垂直方向邊緣圖包括:
將待識(shí)別圖片轉(zhuǎn)換為灰度圖片或亮度圖片。獲得所述灰度圖片或亮度圖片的水平方向邊緣圖和垂直方向邊緣圖。
當(dāng)圖片本身就是灰度圖片或者亮度圖片時(shí),是不需要進(jìn)行轉(zhuǎn)換的,當(dāng)圖片為RGB色彩空間的圖片時(shí),需要將圖片轉(zhuǎn)換為灰度圖片或者任意包括亮度通道的顏色空間,例如YUV顏色空間(其中Y表示亮度通道),HSV顏色空間(其中V表示亮度通道),HSL顏色空間(其中L表示亮度通道),LAB顏色空間(其中L表示亮度通道),本申請(qǐng)實(shí)施例中,將圖片轉(zhuǎn)換為包含亮度通道的顏色空間后,將亮度通道對(duì)應(yīng)的圖片稱為亮度圖片。
一般情況下,網(wǎng)絡(luò)用戶上傳的圖片都為RGB顏色空間的圖像,將RGB顏色空間的圖片轉(zhuǎn)換為灰度圖片的公式如下:
灰度圖片Gray=R*0.299+G*0.587+B*0.114。
將RGB顏色空間的圖片轉(zhuǎn)換為HSL顏色空間中的亮度通道對(duì)應(yīng)的亮度圖片的公式如下:
亮度圖片L=(max(R,G,B)+min(R,G,B))/2。
將RGB顏色空間的圖片轉(zhuǎn)換為YUV顏色空間中的亮度通道對(duì)應(yīng)的亮度圖片的公式如下:
亮度圖片Y=0.30R+0.59G+0.11B。
本申請(qǐng)實(shí)施例中提到的圖片已經(jīng)轉(zhuǎn)換成的灰度圖片或亮度圖片。
獲得圖片的水平方向邊緣圖和垂直方向邊緣圖,可以是依據(jù)邊緣檢測(cè)方法獲得的,請(qǐng)參閱圖3(a),為圖1所示圖片對(duì)應(yīng)的水平方向邊緣圖,圖3(b)為圖1所示圖片對(duì)應(yīng)的垂直方向邊緣圖。
步驟S202:依據(jù)所述水平方向邊緣圖和所述垂直方向邊緣圖,獲得所述圖片各行的邊緣強(qiáng)度以及各列的邊緣強(qiáng)度。
每行的邊緣強(qiáng)度為位于所述行相應(yīng)的所有像素點(diǎn)的邊緣強(qiáng)度之和,每列的邊緣強(qiáng)度為位于所述列的所有像素點(diǎn)的邊緣強(qiáng)度之和。
步驟S203:依據(jù)所述圖片各行的邊緣強(qiáng)度以及各列的邊緣強(qiáng)度,計(jì)算所述圖片的各行的邊緣強(qiáng)度的重復(fù)周期,以及各列的邊緣強(qiáng)度的重復(fù)周期。
可以將各行的邊緣強(qiáng)度和各列的邊緣強(qiáng)度分別轉(zhuǎn)換為頻域信號(hào),這里將各行的邊緣強(qiáng)度轉(zhuǎn)換的頻域信號(hào)稱為行頻域信號(hào),將各列的邊緣強(qiáng)度轉(zhuǎn)換的頻域信號(hào)稱為列頻域信號(hào)。
具體的,可以將各行的邊緣強(qiáng)度進(jìn)行快速傅里葉變換得到行頻域信號(hào),可以將各列的邊緣強(qiáng)度進(jìn)行快速傅里葉變換得到列頻域信號(hào)。
各行的邊緣強(qiáng)度在頻域中的重復(fù)周期的計(jì)算方法可以如下??梢岳斫獾氖?,多圖拼圖圖片各行的邊緣強(qiáng)度可能都不同,各列的邊緣強(qiáng)度可能都不同,所以在計(jì)算行頻域信號(hào)的重復(fù)周期時(shí),可以設(shè)置預(yù)設(shè)范圍,例如設(shè)置[0,0.2]、[0.2,0.5]、[0.5,0.6]、[0.6,0.8]、[0.8,1],即行頻域信號(hào)中信號(hào)幅值為0至0.2之間的視為同一值,信號(hào)幅值為0.2至0.5之間的視為同一值,信號(hào)幅值為0.5至0.6之間的視為同一值,信號(hào)幅值為0.6至0.8之間的視為同一值,信號(hào)幅值為0.8至1之間的視為同一值,利用這種方法,就可以找到行頻域信號(hào)的重復(fù)周期。各列的邊緣強(qiáng)度的重復(fù)周期的計(jì)算方法同各行的邊緣強(qiáng)度的重復(fù)周期的計(jì)算方法,在此不再贅述。
計(jì)算重復(fù)周期的方法還可以為,對(duì)各行的邊緣強(qiáng)度計(jì)算自相關(guān)系數(shù),獲得各行的邊緣強(qiáng)度的波峰,通過波峰的個(gè)數(shù),獲得各行的邊緣強(qiáng)度的重復(fù)周期。具體的,可以利用信號(hào)波峰檢測(cè)的算法計(jì)算出自相關(guān)系數(shù),獲得各行的邊緣強(qiáng)度的波峰。各列的邊緣強(qiáng)度的重復(fù)周期的計(jì)算方法同各行的邊緣強(qiáng)度的重復(fù)周期的計(jì)算方法,在此不再贅述。
在利用自相關(guān)系數(shù)計(jì)算重復(fù)周期的方法中,考慮到兩個(gè)圖片的拼接處的邊緣可能被弱化,所以可以為波峰的幅值設(shè)置一個(gè)范圍,例如[0.9,1],即當(dāng)幅值為0.9至1之間的任一值時(shí),都認(rèn)為該處為波峰。
可以理解的是,圖片中橫向有幾個(gè)圖片,則應(yīng)該有幾個(gè)重復(fù)周期,如圖1所示的圖片,橫向由3個(gè)圖構(gòu)成,則應(yīng)該有3個(gè)重復(fù)周期??v向由3個(gè)圖構(gòu)成,則應(yīng)該有3個(gè)重復(fù)周期,即3個(gè)重復(fù)頻率。
各行的邊緣強(qiáng)度在頻域中的重復(fù)周期可以為峰值個(gè)數(shù),以圖1為例,其峰值個(gè)數(shù)為3個(gè)。
步驟S204:依據(jù)各行的邊緣強(qiáng)度的重復(fù)周期以及各列的邊緣強(qiáng)度的重復(fù)周期,判斷所述圖片是否為多圖拼圖圖片。
本申請(qǐng)實(shí)施例提供的圖片分類方法中,巧妙的利用圖片與圖片之間的拼接處為邊緣,即圖與圖的拼接處相應(yīng)的行或列的邊緣強(qiáng)度最大的原理。首先獲得圖片的水平方向邊緣圖和垂直方向邊緣圖,依據(jù)水平方向邊緣圖和垂直方向邊緣圖,獲得圖片各行的邊緣強(qiáng)度以及各列的邊緣強(qiáng)度,依據(jù)圖片各行的邊緣強(qiáng)度以及各列的邊緣強(qiáng)度。計(jì)算圖片的各行的邊緣強(qiáng)度的重復(fù)周期,以及各列的邊緣強(qiáng)度的重復(fù)周期,依據(jù)各行的邊緣強(qiáng)度的重復(fù)周期以及各列的邊緣強(qiáng)度的重復(fù)周期,判斷圖片是否為多圖拼圖圖片。從而避免了人工從海量圖片中篩選出多圖拼圖圖片,從而提高了圖片審核效率。
參閱圖4,為本申請(qǐng)實(shí)施例提供的一種圖片分類方法中的依據(jù)所述圖片各行的邊緣強(qiáng)度以及各列的邊緣強(qiáng)度,計(jì)算所述圖片的各行的邊緣強(qiáng)度的重復(fù)周期,以及各列的邊緣強(qiáng)度的重復(fù)周期的一種實(shí)現(xiàn)方式的方法流程示意圖,該方法包括:
步驟S401:計(jì)算所述水平方向邊緣圖中每一行中各像素點(diǎn)的邊緣強(qiáng)度之和,獲得水平邊緣直方圖。
所述水平邊緣直方圖的橫坐標(biāo)為所述圖像各行的位置信息,縱坐標(biāo)為各行的邊緣強(qiáng)度。
如圖5(a)所示,為本申請(qǐng)實(shí)施例提供的以圖1為樣本的水平邊緣直方圖。為了本領(lǐng)域技術(shù)人員更加理解,圖5(a)中將水平方向邊緣圖的各行與水平邊緣直方圖的各行的邊緣強(qiáng)度一一對(duì)應(yīng)。
從圖5(a)中可以看出,圖的拼接處由于都是邊緣,所以水平邊緣直方圖在圖與圖的拼接邊緣出的邊緣強(qiáng)度最大。
步驟S402:計(jì)算所述垂直方向邊緣圖中每一列中各像素點(diǎn)的邊緣強(qiáng)度之和,獲得垂直邊緣直方圖。
所述垂直邊緣直方圖的橫坐標(biāo)為所述圖像各列的位置信息,縱坐標(biāo)為各列的邊緣強(qiáng)度。
如圖5(b)所示,為本申請(qǐng)實(shí)施例提供的以圖1為樣本的垂直邊緣直方圖。
從圖5(b)中可以看出,圖的拼接處由于都是邊緣,所以垂直邊緣直方圖在圖與圖的拼接邊緣出的邊緣強(qiáng)度最大。為了本領(lǐng)域技術(shù)人員更加理解,圖5(b)中將垂直方向邊緣圖的各行與垂直邊緣直方圖的各行的邊緣強(qiáng)度一一對(duì)應(yīng)。
步驟S403:將所述水平邊緣直方圖和所述垂直邊緣直方圖分別歸一化,獲得歸一水平邊緣直方圖和歸一垂直邊緣直方圖。
可以理解的是,不同圖片的水平邊緣直方圖和垂直邊緣直方圖的最大的邊緣強(qiáng)度可能不同,因此可以對(duì)水平邊緣直方圖和垂直邊緣直方圖分別歸一化,水平邊緣直方圖對(duì)應(yīng)歸一水平邊緣直方圖,垂直邊緣直方圖對(duì)應(yīng)歸一垂直邊緣直方圖。歸一水平邊緣直方圖和歸一垂直邊緣直方圖的最大值均為1。
對(duì)水平邊緣直方圖和垂直邊緣直方圖分別歸一化的方法,包括但不限于以下方法:
第一種,獲得水平邊緣直方圖中最大的邊緣強(qiáng)度,將水平邊緣直方圖中各行的邊緣強(qiáng)度除以最大的邊緣強(qiáng)度,從而對(duì)水平邊緣直方圖進(jìn)行歸一化。
獲得垂直邊緣直方圖中最大的邊緣強(qiáng)度,將垂直邊緣直方圖中各行的邊緣強(qiáng)度除以最大的邊緣強(qiáng)度,從而對(duì)垂直邊緣直方圖進(jìn)行歸一化。
第二種,獲得圖片的寬度,將水平邊緣直方圖中各行的邊緣強(qiáng)度除以圖片的寬度,從而對(duì)水平邊緣直方圖進(jìn)行歸一化。
獲得圖片的長(zhǎng)度,將垂直邊緣直方圖中各行的邊緣強(qiáng)度除以圖片的長(zhǎng)度,從而對(duì)垂直邊緣直方圖進(jìn)行歸一化。
步驟S404:依據(jù)所述歸一水平邊緣直方圖中各邊緣強(qiáng)度的幅值信息,計(jì)算所述歸一水平邊緣直方圖的重復(fù)周期。
具體的,可以將歸一水平邊緣直方圖轉(zhuǎn)換成頻域信號(hào),例如通過傅里葉變換轉(zhuǎn)換成頻域信號(hào),獲得頻域信號(hào)的重復(fù)周期。
還可以直接通過歸一水平邊緣直方圖,利用信號(hào)波峰檢測(cè)的算法計(jì)算出自相關(guān)系數(shù),獲得各行的邊緣強(qiáng)度的波峰個(gè)數(shù)。
步驟S405:依據(jù)所述歸一垂直邊緣直方圖中各邊緣強(qiáng)度的幅值信息,計(jì)算所述歸一垂直邊緣直方圖的重復(fù)周期。
具體的,可以將歸一垂直邊緣直方圖轉(zhuǎn)換成頻域信號(hào),例如通過傅里葉變換轉(zhuǎn)換成頻域信號(hào),獲得頻域信號(hào)的重復(fù)周期。
還可以直接通過歸一垂直邊緣直方圖,利用信號(hào)波峰檢測(cè)的算法計(jì)算出自相關(guān)系數(shù),獲得各列的邊緣強(qiáng)度的波峰。
步驟S404和步驟S405沒有先后順序,也可以先執(zhí)行步驟S305再執(zhí)行步驟S404,還可以同時(shí)執(zhí)行。
本申請(qǐng)實(shí)施例中還可以包括:
確定所述歸一水平邊緣直方圖中各行的邊緣強(qiáng)度大于第一預(yù)設(shè)邊緣強(qiáng)度閾值的第一數(shù)目;確定所述歸一垂直邊緣直方圖中各列的邊緣強(qiáng)度大于第二預(yù)設(shè)邊緣強(qiáng)度閾值的第二數(shù)目;當(dāng)所述第一數(shù)目或所述第二數(shù)目小于等于預(yù)設(shè)最大強(qiáng)度,大于等于預(yù)設(shè)最小強(qiáng)度時(shí),執(zhí)行步驟S404和步驟S405。
第一預(yù)設(shè)邊緣強(qiáng)度閾值和第二預(yù)設(shè)邊緣強(qiáng)度閾值可以相同,也可以不同。
可以理解的是,兩個(gè)圖的拼接處相應(yīng)的行或列的邊緣強(qiáng)度最大,一般情況下,一張圖中可能有9個(gè)圖拼接而成,或者更多的圖拼接而成,但是為了保證圖的可視化,即多圖拼圖圖片中各個(gè)圖可以正常瀏覽,多圖拼圖圖片中的橫向拼接圖的個(gè)數(shù)或縱向拼接圖的個(gè)數(shù)不宜太多,例如可以為2、3、4、5、6、7、8,…等等,可以將這個(gè)數(shù)值設(shè)置為預(yù)設(shè)最大強(qiáng)度。
或者,由于各圖的歸一水平邊緣直方圖和歸一垂直邊緣直方圖在進(jìn)行歸一化時(shí),都是使用自己的最大的邊緣強(qiáng)度進(jìn)行歸一化的,不是所有的圖統(tǒng)一有一個(gè)最大的邊緣強(qiáng)度,也就是說,若圖A的水平邊緣直方圖的最大的邊緣強(qiáng)度為10,其歸一化后為1,而圖B的水平邊緣直方圖的最大的邊緣強(qiáng)度為2,其歸一化后也為1。顯然圖A更有可能是多圖拼圖圖片,而圖B可能只包括一副圖,對(duì)于圖B而言,其歸一水平邊緣直方圖的第一數(shù)目可能很大,為了排除圖B這種情況,可以采用上述方式,先預(yù)判一下圖片是否可能是多圖拼圖圖片。
上述任一圖片分配方法實(shí)施例中,依據(jù)各行的邊緣強(qiáng)度的重復(fù)周期以及各列的邊緣強(qiáng)度的重復(fù)周期,判斷所述圖片是否為多圖拼圖圖片包括:
當(dāng)各行的邊緣強(qiáng)度的重復(fù)周期的數(shù)目大于等于預(yù)設(shè)周期閾值時(shí),或當(dāng)各列的邊緣強(qiáng)度的重復(fù)周期的數(shù)目大于等于所述預(yù)設(shè)周期閾值時(shí),確定所述圖片為多圖拼接圖片。
上述任一圖片分配方法實(shí)施例中,步驟獲得圖片的水平方向邊緣圖和垂直方向邊緣圖包括:依據(jù)水平梯度算子與所述圖片,計(jì)算出所述水平方向邊緣圖;依據(jù)垂直梯度算子與所述圖片,計(jì)算出所述垂直方向邊緣圖。
水平梯度算子和垂直梯度算子可以為Sobel算子,具體的:
水平梯度算子可以為垂直梯度算子可以為
依據(jù)水平梯度算子與所述圖片,計(jì)算出所述水平方向邊緣圖包括:將水平梯度算子與圖片進(jìn)行卷積;將卷積結(jié)果進(jìn)行二值化,獲得水平方向邊緣圖。
依據(jù)垂直梯度算子與所述圖片,計(jì)算出所述垂直方向邊緣圖包括:將垂直梯度算子與圖片進(jìn)行卷積;將卷積結(jié)果進(jìn)行二值化,獲得垂直方向邊緣圖。
將卷積結(jié)果進(jìn)行二值化是指,將卷積結(jié)果中像素點(diǎn)的像素值大于預(yù)設(shè)閾值的設(shè)置為255,將卷積結(jié)果中像素點(diǎn)的像素值小于該預(yù)設(shè)閾值的設(shè)置為0。
經(jīng)過實(shí)驗(yàn)數(shù)據(jù)測(cè)試,本申請(qǐng)實(shí)施例提供的圖片分類方法,在4000張的圖像數(shù)據(jù)庫上,取得了近97%的正確率,可以很好地分類多圖拼圖圖片和普通圖片(一副圖組成的圖片即為普通圖片)。
本申請(qǐng)實(shí)施例還提供了一種與上述圖片分類方法相應(yīng)的圖片分類裝置。對(duì)圖片分類裝置中各模塊和各單元的描述,可以參見圖片分類方法中相應(yīng)的步驟的描述,因此不再贅述。
請(qǐng)參參閱圖6,為本申請(qǐng)實(shí)施例提供的一種圖片分類裝置的結(jié)構(gòu)示意圖,該裝置包括:獲取邊緣圖模塊61、獲取邊緣強(qiáng)度模塊62、計(jì)算重復(fù)周期模塊63以及判斷模塊64,其中
獲取邊緣圖模塊61,用于獲得圖片的水平方向邊緣圖和垂直方向邊緣圖。
獲取邊緣強(qiáng)度模塊62,用于依據(jù)所述水平方向邊緣圖和所述垂直方向邊緣圖,獲得所述圖片各行的邊緣強(qiáng)度以及各列的邊緣強(qiáng)度,每行的邊緣強(qiáng)度為位于所述行相應(yīng)的所有像素點(diǎn)的邊緣強(qiáng)度之和,每列的邊緣強(qiáng)度為位于所述列的所有像素點(diǎn)的邊緣強(qiáng)度之和。
計(jì)算重復(fù)周期模塊63,用于依據(jù)所述圖片各行的邊緣強(qiáng)度以及各列的邊緣強(qiáng)度,計(jì)算所述圖片的各行的邊緣強(qiáng)度的重復(fù)周期,以及各列的邊緣強(qiáng)度的重復(fù)周期。
判斷模塊64,用于依據(jù)各行的邊緣強(qiáng)度的重復(fù)周期以及各列的邊緣強(qiáng)度的重復(fù)周期,判斷所述圖片是否為多圖拼圖圖片。
其中,計(jì)算重復(fù)周期模塊63可以包括:
計(jì)算水平邊緣強(qiáng)度單元,用于計(jì)算所述水平方向邊緣圖中每一行中各像素點(diǎn)的邊緣強(qiáng)度之和,獲得水平邊緣直方圖,所述水平邊緣直方圖的橫坐標(biāo)為所述圖像各行的位置信息,縱坐標(biāo)為各行的邊緣強(qiáng)度;
計(jì)算垂直邊緣強(qiáng)度單元,用于計(jì)算所述垂直方向邊緣圖中每一列中各像素點(diǎn)的邊緣強(qiáng)度之和,獲得垂直邊緣直方圖,所述垂直邊緣直方圖的橫坐標(biāo)為所述圖像各列的位置信息,縱坐標(biāo)為各列的邊緣強(qiáng)度;
獲得歸一化直方圖單元,用于將所述水平邊緣直方圖和所述垂直邊緣直方圖分別歸一化,獲得歸一水平邊緣直方圖和歸一垂直邊緣直方圖;
計(jì)算水平重復(fù)周期單元,用于依據(jù)所述歸一水平邊緣直方圖中各邊緣強(qiáng)度的幅值信息,計(jì)算所述歸一水平邊緣直方圖的重復(fù)周期;
計(jì)算垂直重復(fù)周期單元,用于依據(jù)所述歸一垂直邊緣直方圖中各邊緣強(qiáng)度的幅值信息,計(jì)算所述歸一垂直邊緣直方圖的重復(fù)周期。
圖片分類裝置,還可以包括:
第一確定模塊,用于確定所述歸一水平邊緣直方圖中各行的邊緣強(qiáng)度大于第一預(yù)設(shè)邊緣強(qiáng)度閾值的第一數(shù)目;
第二確定模塊,用于確定所述歸一垂直邊緣直方圖中各列的邊緣強(qiáng)度大于第二預(yù)設(shè)邊緣強(qiáng)度閾值的第二數(shù)目;
執(zhí)行模塊,用于當(dāng)所述第一數(shù)目或所述第二數(shù)目小于等于預(yù)設(shè)最大強(qiáng)度,且大于等于預(yù)設(shè)最小強(qiáng)度時(shí),執(zhí)行所述計(jì)算水平重復(fù)周期單元。
其中,判斷模塊64可以包括:
確定單元,當(dāng)各行的邊緣強(qiáng)度的重復(fù)周期的數(shù)目大于等于預(yù)設(shè)周期閾值時(shí),或當(dāng)各列的邊緣強(qiáng)度的重復(fù)周期的數(shù)目大于等于所述預(yù)設(shè)周期閾值時(shí),用于確定所述圖片為多圖拼接圖片。
其中,獲取邊緣圖模塊61可以包括:
計(jì)算水平邊緣圖單元,用于依據(jù)水平梯度算子與所述圖片,計(jì)算出所述水平方向邊緣圖;
計(jì)算垂直邊緣圖單元,用于依據(jù)垂直梯度算子與所述圖片,計(jì)算出所述垂直方向邊緣圖。
最后,還需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來,而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個(gè)……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。
本說明書中各個(gè)實(shí)施例采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同相似部分互相參見即可。
對(duì)所公開的實(shí)施例的上述說明,使本領(lǐng)域?qū)I(yè)技術(shù)人員能夠?qū)崿F(xiàn)或使用本申請(qǐng)。對(duì)這些實(shí)施例的多種修改對(duì)本領(lǐng)域的專業(yè)技術(shù)人員來說將是顯而易見的,本文中所定義的一般原理可以在不脫離本申請(qǐng)的精神或范圍的情況下,在其它實(shí)施例中實(shí)現(xiàn)。因此,本申請(qǐng)將不會(huì)被限制于本文所示的這些實(shí)施例,而是要符合與本文所公開的原理和新穎特點(diǎn)相一致的最寬的范圍。