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

?

基于圖像哈希的社交網(wǎng)絡(luò)熱點(diǎn)事件檢測系統(tǒng)

2020-11-18 14:00:16陳毅鏵陳震海譚榮慶
現(xiàn)代計算機(jī) 2020年28期
關(guān)鍵詞:數(shù)字圖像哈希控件

陳毅鏵,陳震海,譚榮慶

(廣西師范大學(xué)計算機(jī)科學(xué)與信息工程學(xué)院,桂林541004)

0 引言

隨著互聯(lián)網(wǎng)和多媒體技術(shù)的發(fā)展,網(wǎng)絡(luò)社交已經(jīng)成為人們生活中不可或缺的一部分。在社交網(wǎng)絡(luò)中,每時每刻都有大量的信息被上傳,奪人眼球的標(biāo)題配上富有沖擊力的圖片就有機(jī)會吸引大量熱度。熱點(diǎn)事件通常會引爆社會輿情輿論,虛假的事件不僅會中傷他人還會對社會造成負(fù)面影響。利用感知圖像哈希算法檢索一段時間內(nèi)的相似圖像,如果相似圖片數(shù)量超過閾值,就可以認(rèn)為包含這些圖像的信息變成了熱點(diǎn)事件。根據(jù)此原理,社交網(wǎng)絡(luò)管理者能夠快速判定并處理熱點(diǎn)事件,有效控制負(fù)面的熱點(diǎn)事件破壞社會的和諧。

熱點(diǎn)事件往往伴隨大量的圖片編輯修改和轉(zhuǎn)發(fā),因此可使用圖像哈希算法檢測社交網(wǎng)絡(luò)中的熱點(diǎn)事件。圖像哈希算法是將數(shù)字圖像映射成一串短小的數(shù)字序列即圖像哈希序列,數(shù)字圖像可以用這串?dāng)?shù)字序列唯一表示。從本質(zhì)上看,圖像哈希反映了數(shù)字圖像的視覺內(nèi)容,視覺內(nèi)容相似的圖像具有相同或相似的哈希序列。采集某一時間段內(nèi)用戶上傳的圖像,視覺內(nèi)容相似的圖像越多,則說明與圖像關(guān)聯(lián)的事件熱度越高,如果熱度超過系統(tǒng)預(yù)先設(shè)置的閾值,則認(rèn)為這批圖像關(guān)聯(lián)的事件為熱點(diǎn)事件,反之,則為一般事件。

本文使用Python 語言實(shí)現(xiàn)基于不變特性的彩色圖像哈希算法[1],并利用該算法開發(fā)了一個高效的社交網(wǎng)絡(luò)熱點(diǎn)事件檢測軟件。該軟件界面美觀,操作方便,實(shí)現(xiàn)了單熱點(diǎn)事件檢測和多熱點(diǎn)事件檢測的功能。

1 軟件設(shè)計

本文設(shè)計的社交網(wǎng)絡(luò)熱點(diǎn)事件檢測軟件能夠快速定位熱點(diǎn)事件。該軟件將接收圖像作為輸入,計算其圖像哈希,并通過圖像間的相似度來檢測社交網(wǎng)絡(luò)熱點(diǎn)事件,最后將檢測結(jié)果輸出。軟件主要包含圖像采集、單熱點(diǎn)事件檢測、多熱點(diǎn)事件檢測和設(shè)置共四個功能模塊,功能模塊圖如圖1 所示。

軟件模塊的功能介紹如下。①圖像采集:從社交網(wǎng)絡(luò)中采集公開的圖像數(shù)據(jù)。②單熱點(diǎn)事件檢測:選擇單幅圖像作為檢測源,并與本地圖像庫中的圖像數(shù)據(jù)逐一比較相似度,最后顯示檢測源的熱度并保存。③多熱點(diǎn)事件檢測:選擇多幅圖像作為檢測源,并與本地圖像庫中的圖像數(shù)據(jù)逐一比較相似度,最后顯示檢測源的熱度并保存。④系統(tǒng)設(shè)置:修改相似圖像判定閾值、熱點(diǎn)事件熱度判定閾值,并能夠恢復(fù)默認(rèn)設(shè)置。

2 軟件處理流程

軟件使用網(wǎng)絡(luò)爬蟲程序采集社交網(wǎng)絡(luò)中的公開圖像,其處理流程如圖2 所示。用戶設(shè)置采集時長后即可啟動采集任務(wù),軟件將從社交網(wǎng)絡(luò)中采集公開的圖像保存至預(yù)設(shè)的文件夾下,同時將圖像的發(fā)布者、關(guān)聯(lián)事件內(nèi)容、圖像本地路徑、發(fā)布時間等信息被存儲在內(nèi)存中,任務(wù)完成后以JSON 格式保存到預(yù)設(shè)的路徑。

圖2 圖像采集處理流程

軟件的單熱點(diǎn)事件檢測的處理流程如圖3 所示。用戶選擇一幅圖像作為檢測源,系統(tǒng)按照預(yù)設(shè)的參數(shù)使用圖像哈希算法計算檢測源哈希,并與本地圖像庫中的圖片逐一比較,最后根據(jù)檢測源熱度判斷與檢測源關(guān)聯(lián)的事件是否為熱點(diǎn)事件。

圖3 單熱點(diǎn)事件檢測處理流程

軟件的多熱點(diǎn)事件檢測的處理流程如圖4 所示。用戶選擇多幅圖像作為檢測源,系統(tǒng)按照預(yù)設(shè)的參數(shù)使用圖像哈希算法計算檢測源哈希并關(guān)聯(lián)檢測源間的相似圖像,檢測源自關(guān)聯(lián)后與本地圖像庫中的圖片逐一比較,最后根據(jù)檢測源自關(guān)聯(lián)熱度判斷與檢測源關(guān)聯(lián)的事件是否為熱點(diǎn)事件。

圖4 多熱點(diǎn)事件檢測處理流程

3 軟件核心算法

本文使用一種基于不變特性的彩色圖像哈希算法計算圖像哈希,算法處理過程如圖5 所示。該算法由以下三個步驟組成:首先是圖像預(yù)處理,將輸入圖像轉(zhuǎn)化為統(tǒng)一規(guī)格的標(biāo)準(zhǔn)圖像,這一步的目的是保證不同分辨率圖像的哈希序列長度相同;然后將預(yù)處理后的圖像從RGB顏色空間分別轉(zhuǎn)換到HIS顏色空間和YCbCr顏色空間。最后,依次從顏色空間的各個分量上提取特征生成圖像哈希。

圖5 算法處理過程示意圖

3.1 圖像預(yù)處理

對輸入的圖像統(tǒng)一進(jìn)行歸一化處理。為了減少高頻成分以及緩解輕微的圖像修改所帶來的哈希值的改變,使用雙線性插值算法將輸入圖像大小調(diào)整為m×m,并利用高斯低通濾波器平滑圖像。通過以上預(yù)處理可以確保任意圖像的哈希值長度相同并能夠抵抗縮放攻擊。

3.2 圖像顏色空間轉(zhuǎn)換

為了提取到魯棒性更強(qiáng)的圖像特征,將彩色圖像從RGB顏色空間轉(zhuǎn)換為HSI顏色空間。其中R、G、B分別是紅、綠、藍(lán)分量,其取值范圍均為[0,255],可通過以下公式將圖像從RGB顏色空間轉(zhuǎn)換到HSI顏色空間:

其中,H、S、I分別代表色調(diào)、飽和度和明度信息,min(R,G,B)表示R、G和B中的最小值,角度θ的定義為:

另外,考慮到常用的JPEG 圖像文件格式均釆用YCbCr 顏色空間,因此也將RGB 彩色圖像轉(zhuǎn)換到Y(jié)Cb?Cr 顏色空間。該操作的目的是使提取到的圖像特征能抵抗壓縮操作,其轉(zhuǎn)換公式如下所示。

其中,Y、Cb和Cr分別代表像素的亮度、藍(lán)色色差和紅色色差。至此,一共提取到圖像的6 個顏色分量[3]。

3.3 特征提取

不變矩最早由Hu[1]提出,對平移、伸縮、鏡像和旋轉(zhuǎn)等操作具有不變性。通常,一幅圖像的不變矩描述了該圖像的全局形狀特征,并提供了關(guān)于該圖像的大量的、不同類型的幾何特征信息,例如大小、位置和方向等。本文選取不變矩作為圖像特征,主要考慮不變矩具有旋轉(zhuǎn)不變性,目的是使圖像對旋轉(zhuǎn)變換穩(wěn)健。

對于一幅大小為M×N的灰度圖像,設(shè)f(x,y)為第x 行第y 列的像素灰度值,其中,0 ≤x≤M,0 ≤y≤N。于是,圖像的七個不變矩可通過下列公式計算得到:

其中,歸一化(p+q)階中心矩ηpq(p,q=0,1,2,…)定義為:

其中,γ的計算公式為:

而相應(yīng)的中心矩μpq則由下列公式計算得到:

其中:

而Mpq則是圖像的( )

p+q階矩,定義如下:

對于圖像的每個顏色分量,分別用公式(4)~(10)提取七個不變矩。依次連接六個不同顏色分量的不變矩,即可得到最終的圖像哈希序列。因此,基于不變矩的算法的哈希序列長度為42 個十進(jìn)制數(shù)。

3.4 圖像相似度比較

比較圖像哈希序列的相似度有多種方法,例如:L2范數(shù)、漢明距離、相關(guān)系數(shù)、最大最小比值法等。本文采用L2范數(shù)作為距離測度,用于判定圖像哈希序列的相似性。L2范數(shù)的定義如下:

其中,h1(l)和h2(l)分別的h1和h2的第l位哈希值,N 為哈希長度。兩幅圖像越相似,其對應(yīng)圖像哈希的L2范數(shù)就越小;反之就越大。如果兩個圖像哈希的L2范數(shù)小于閾值T,則兩幅圖像的視覺內(nèi)容相似;否則,認(rèn)為是不同圖像或存在重要視覺內(nèi)容差異。

3.5 熱點(diǎn)事件判定

一般,網(wǎng)絡(luò)熱門圖像與熱點(diǎn)事件息息相關(guān),且與事件熱度成正比關(guān)系,而熱點(diǎn)事件判定是依據(jù)用戶評論數(shù)、轉(zhuǎn)發(fā)次數(shù)、圖像重復(fù)上傳次數(shù)等信息。由于網(wǎng)絡(luò)平臺會對熱點(diǎn)事件進(jìn)行大量的推送以及用戶對熱門圖像的轉(zhuǎn)發(fā),故熱點(diǎn)事件可以通過同一個或者同一組圖像在不同用戶重復(fù)上傳的次數(shù)判定。因此,采用網(wǎng)絡(luò)爬蟲技術(shù)采集一段時間內(nèi)的用戶圖像到本地圖像庫中,被檢測圖像的哈希與本地圖像庫的哈希逐一進(jìn)行相似度比較時,若檢測到一幅相似圖像則將其的熱度值增加一個單位值,否則不增加。比較結(jié)束后,逐一對圖像的熱度值進(jìn)行判斷,若達(dá)到或者超過預(yù)先設(shè)定的閾值Thot,可以認(rèn)為其關(guān)聯(lián)的事件是社交網(wǎng)絡(luò)熱點(diǎn)事件,否則是一般事件。

4 軟件功能驗(yàn)證

本文設(shè)計的社交網(wǎng)絡(luò)熱點(diǎn)事件檢測軟件使用Py?thon 語言在JetBrains PyCharm 環(huán)境下設(shè)計并實(shí)現(xiàn)。軟件用戶圖形界面使用PyQt5 工具包構(gòu)造,使用OpenCV3 庫和NumPy 庫處理數(shù)字圖像。該軟件的運(yùn)行界面如圖5 所示。

主界面為用戶提供功能的選擇。主界面最上方是軟件名稱;軟件名稱下方是四個Button 控件,分別用于進(jìn)行圖像采集、系統(tǒng)算法參數(shù)設(shè)置、單熱點(diǎn)事件檢測以及多熱點(diǎn)事件檢測。下面分別對“圖像采集”、“單熱點(diǎn)事件檢測”以及“多熱點(diǎn)事件檢測”功能模塊進(jìn)行測試。

圖5 軟件主界面

圖像采集界面如圖6 所示。選擇圖像采集的時長后點(diǎn)擊“開始采集”按鈕即可開始圖像的采集。圖像采集的進(jìn)度通過進(jìn)度條控件進(jìn)行顯示,采集結(jié)束后會將采集到的圖像存儲在系統(tǒng)預(yù)設(shè)的目錄下,圖像的相關(guān)信息則以JSON 文件方式保存在同一目錄下。點(diǎn)擊“查看信息”按鈕即可查看采集到的圖像信息。

圖6 圖像采集界面

單熱點(diǎn)事件檢測界面如圖7 所示。單擊“選擇圖片”按鈕,在打開的對話框中選擇將要進(jìn)行檢測的數(shù)字圖像,確定后,左側(cè)Label 控件上顯示所選圖像的縮略圖,同時,系統(tǒng)將自行計算該幅數(shù)字圖像的圖像哈希序列并以文字形式顯示在上面的Text Browser 控件中;接著,單擊“選擇文件夾”按鈕,在彈出的對話框中選擇包含數(shù)字圖像的文件夾;選擇好文件夾后,單擊“計算哈?!卑粹o進(jìn)行多幅數(shù)字圖像哈希計算,運(yùn)算的結(jié)果以JSON 文件的形式存儲在當(dāng)前選擇的文件夾下;然后,單擊“單個檢測”按鈕開始檢測,檢測的進(jìn)度通過Pro?cess bar 控件進(jìn)行顯示,檢測結(jié)束時Process bar 控件數(shù)值顯示為100%,同時檢測結(jié)果以文字形式顯示顯示在下面的Text Browser 控件中,如圖8 所示。

圖7 單熱點(diǎn)事件檢測界面

圖8 單熱點(diǎn)事件檢測結(jié)果

多熱點(diǎn)事件檢測界面如圖9 所示。單擊“選擇文件夾”按鈕,在打開的對話框中選擇將要檢測的多個圖像所在的文件夾;選擇完成后,點(diǎn)擊“計算圖像哈希”按鈕進(jìn)行多幅數(shù)字圖像哈希計算,并以JSON 文件方式存儲在前面所選擇的文件夾內(nèi);然后,點(diǎn)擊“多圖像相似檢測”按鈕進(jìn)行多圖像相似檢測,其檢測的結(jié)果以JSON 文件方式存儲在前面所選擇的文件夾內(nèi);最后,點(diǎn)擊“檢測結(jié)果顯示”按鈕,會彈出一個Result View 對話框,如圖10 所示。在Result View 對話框中,單擊“選擇文件”按鈕,在打開的對話框選擇已經(jīng)檢測過的文件夾即文件內(nèi)的圖像已經(jīng)執(zhí)行過“多熱點(diǎn)事件檢測”功能,檢測的結(jié)果將會在Table Widgets 控件中顯示,如圖11 所示。圖像的熱度若達(dá)到或超過閾值Thot,其關(guān)聯(lián)的事件可認(rèn)為是一個熱點(diǎn)事件。

5 結(jié)語

本文利用Python 語言實(shí)現(xiàn)了一種基于不變特性的彩色圖像哈希算法以及基于圖像哈希的社交網(wǎng)絡(luò)熱點(diǎn)事件檢測,并在JetBrains PyCharm 環(huán)境下設(shè)計和開發(fā)了一款有效的社交網(wǎng)絡(luò)熱點(diǎn)事件檢測軟件。該軟件實(shí)現(xiàn)了圖像哈希計算、熱點(diǎn)事件檢測功能,其可以有效檢測經(jīng)常規(guī)數(shù)字圖像處理手段處理后的相似圖像,并通過相似圖像的比較進(jìn)一步判斷社交網(wǎng)絡(luò)熱點(diǎn)事件。

圖9 多熱點(diǎn)事件檢測界面

圖10 結(jié)果顯示界面

圖11 多熱點(diǎn)事件檢測結(jié)果

猜你喜歡
數(shù)字圖像哈希控件
ARGUS-100 藝術(shù)品鑒證數(shù)字圖像比對系統(tǒng)
關(guān)于.net控件數(shù)組的探討
軟件(2018年7期)2018-08-13 09:44:42
基于OpenCV與均值哈希算法的人臉相似識別系統(tǒng)
基于塊效應(yīng)測度的JPEG數(shù)字圖像盲取證
基于維度分解的哈希多維快速流分類算法
數(shù)字圖像修復(fù)在圖像壓縮上的應(yīng)用
基于同態(tài)哈希函數(shù)的云數(shù)據(jù)完整性驗(yàn)證算法
一種基于Bigram二級哈希的中文索引結(jié)構(gòu)
基于DirectShow的便攜式X射線數(shù)字圖像采集的實(shí)現(xiàn)
就這樣玩會VBA中常見的自定義控件
電腦迷(2012年24期)2012-04-29 00:44:03
多伦县| 左云县| 博罗县| 桂阳县| 休宁县| 林芝县| 莆田市| 平遥县| 长汀县| 吴旗县| 河间市| 永新县| 东安县| 韶关市| 湖北省| 许昌县| 洪雅县| 壤塘县| 蒲江县| 公安县| 朝阳县| 鹤岗市| 西青区| 天峨县| 兰西县| 怀柔区| 兴仁县| 南宫市| 龙山县| 北川| 温州市| 横山县| 奉化市| 万盛区| 大同市| 晋城| 城市| 惠来县| 宁都县| 亳州市| 甘孜|