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

?

基于深度學習的智能圖片管理系統(tǒng)的設計與實現(xiàn)

2022-12-21 10:05:22
信息記錄材料 2022年10期
關鍵詞:文件夾人臉類別

袁 貴

(長江職業(yè)學院 湖北 武漢 430070)

0 引言

近年來智能手機發(fā)展迅速,據全球技術市場分析與咨詢機構Canalys報告,僅2021年第四季度,中國大陸智能手機出貨量達到了8 400萬部。智能手機的拍照技術進步迅速,不僅像素大幅提高,美顏、濾鏡等功能幫助用戶可隨時拍出美麗的照片。此外網絡技術的發(fā)展使數(shù)碼照片的數(shù)據量激增,在各種社交應用APP中,用戶可隨意分享生活,由此激發(fā)用戶增加拍照數(shù)量。除用戶拍照,其他圖片來源也不容小覷,如用戶瀏覽消息的過程中保存的風景照、新聞圖、合照等,也會產生大量照片數(shù)據。

面對海量圖像數(shù)據,傳統(tǒng)相冊管理方法依據照片的拍攝時間、地點及圖片來源所屬的手機應用進行分類。此法的弊端是,如果用戶對圖片的時間地點等信息無法確定時,想找到所需照片非常不易。針對這一問題,需要基于內容分類的相冊,用戶若想找風景照,去分類為風景的相冊找,用戶想找自拍照,去分類為人物的相冊找,這將極為便利。如果用戶自定義各種分類,并分類保存圖片,雖然后期查找圖片方便,但是保存圖片非常耗時,所以,設計一套能夠基于圖片內容自動分類的智能相冊管理系統(tǒng)具有現(xiàn)實意義。

1 研究現(xiàn)狀

人工智能是當今時代的潮流,發(fā)展迅速,機器學習作為人工智能的分支,幾乎成為人工智能的代名詞。20世紀80年代末以來,機器學習的發(fā)展大致經歷了兩次浪潮:淺層學習和深度學習[1]。在淺層學習時期的人工神經網絡,多數(shù)只含一層隱層節(jié)點的淺層模型,具有代表性的淺層機器學習模型為支持向量機。而深度學習一般包含大于3層的模型,在ImageNet組織的圖像分類大賽上,卷積神經網絡(convolutional neural networks,CNN)[2]效果令人驚嘆,對120萬張圖片進行分類時,其精度已超過了人類的識別率。此后新的神經網絡模型紛紛出現(xiàn),例如AlexNet,GoogLeNet,VGG(visual geometry group),ResNet等[1],不斷地提高模型的性能。

隨著卷積神經網絡的不斷發(fā)展,推動了圖片分類技術進步,卷積神經網絡在圖像分類方面應用廣泛[3-5]?;谶@一算法開發(fā)的圖片管理軟件層出不窮,目前圖片管理軟件大致分為兩大類別[6-7],即半自動智能圖片管理系統(tǒng)和全自動智能圖片管理系統(tǒng)。半自動智能圖片功能擁有可交互的UI設計,用戶可標注人物身份等信息。劉璐璐等[8]提出基于QT的智能電子相冊,嚴舒婷等[9]提出基于OpenCV視覺庫實現(xiàn)的智能相冊系統(tǒng),全自動的智能圖片管理系統(tǒng)不需要用戶的介入即可以對圖片進行多維度的歸類。

主流手機目前已安裝智能分類相冊,使用全卷積網絡和圖像金字塔算法進行圖片處理。按照拍攝地點及圖片來源的手機應用進行分類,按拍攝的時間地點產生圖片集,智能相冊自動識別圖片類別,用戶根據拍照時間由近及遠進行瀏覽,大部分智能分類相冊分類為:人物、風景、美食、植物、建筑、服飾等。其中功能最強大的人物分類,除了把人物分出來,還會運用人臉識別技術,把不同的人進行二次歸類。

由于手機存儲空間受限,用戶將照片拷貝至電腦、ipad等不同設備瀏覽圖片,此時手機本地相冊的分類功能并不能應用至其他電子設備中。用戶可尋求其他方法解決該問題,例如將照片存儲至云端的智能相冊,擁有智能分類的google相冊,該功能無法在中國大陸地區(qū)應用,國內類似的軟件有“一刻相冊”“時光相冊”,但使用并不廣泛,同時圖片上傳至網盤,不僅泄露隱私,而且網盤空間需要付費。針對以上圖片管理軟件的不足,本文設計了本地圖片自動分類管理軟件。

2 圖像分類相關理論概述

傳統(tǒng)的圖像分類操作為三個步驟:圖像預處理、圖像特征提取、模式分類。

(1)圖像預處理:通過圖像預處理來提高圖像分類的效率和精度,常見的處理為:調整亮度、對比度、圖像直方圖;圖像中若存在噪聲,采用高斯濾波、均值濾波等方法去除噪聲;通過二值化、膨脹和腐蝕等形態(tài)學處理,使圖像邊界信息明顯。

(2)圖像特征提取:特征提取是傳統(tǒng)圖像分類的關鍵步驟,操作得好壞將直接影響圖片分類的效果。特征提取即提取圖片內容的關鍵信息,如圖片的顏色,紋理,邊界形狀,密度等特征。特征提取技術受到大眾認可的方法有不列顛哥倫比亞大學的大衛(wèi)勞伊等人提出的SIFT(scale-lnvariant feature transform,尺度不變特征變換),和由西亞吉安等人提出的Gist(空間包絡特征)[10]。

(3)模式分類:該功能將輸入的圖像進行分類,支持向量機、隨機森林[11]等效果較好的傳統(tǒng)模式分類方法。

通過以上三個步驟,便可以對目標圖片進行歸類。

隨著深度學習技術的發(fā)展,卷積神經網絡(CNN)已是目前圖像分類的主流方法。卷積神經網絡由輸入層、卷積層(convolutional layer)、池化層(pooling layer,也稱為取樣層)、全連接層及輸出層構成,由若干個卷積層和池化層組成。卷積神經網絡相比傳統(tǒng)方法能夠實現(xiàn)端對端的數(shù)據處理,可自動對圖像進行層次化的特征提取,并且通過權值共享和局部連接使得模型參數(shù)數(shù)量減少,加快訓練速度。

3 系統(tǒng)設計

3.1 系統(tǒng)需求分析

本系統(tǒng)主要功能是基于圖片中的內容對圖片進行自動分類,用以提高用戶查找圖片的效率,系統(tǒng)包含以下三個功能:

(1)圖片分類管理:系統(tǒng)準確地識別用戶拍攝的照片,保存在對應的類別中。本文圖片類別共為六類:人物、風景、食物、動物、交通工具、其他。

(2)相冊瀏覽:用戶按照各種類別瀏覽圖片。

(3)圖形化界面:便于用戶操作,以上功能在圖像化界面實現(xiàn)。

除實現(xiàn)基本功能外,為提升用戶體驗,系統(tǒng)需滿足以下特性:

(1)實用性:界面簡單實用,人機交互便利。用戶誤操作,應有反饋;

(2)高效性:用戶使用系統(tǒng)進行分類,等待時間短;

(3)可擴展性:本文使用VGG19網絡實現(xiàn)圖片分類,隨著深度學習技術不斷發(fā)展,圖片處理效果越來越好,系統(tǒng)具有可擴展性,便于后期升級。

3.2 系統(tǒng)總體設計

在分析國內外各種圖片自動歸類管理軟件的優(yōu)缺點基礎上,本文設計出本地的圖片自動歸類軟件,實現(xiàn)圖片自動分類和相冊瀏覽,系統(tǒng)總體結構如圖1所示。

圖1 系統(tǒng)總體結構

系統(tǒng)包括兩大功能:圖片分類和相冊瀏覽。圖片分類功能將用戶未分類的圖片按類別分開保存,實現(xiàn)這一功能,需要完成人臉檢測和圖片分類,創(chuàng)建相應的文件系統(tǒng)。相冊瀏覽功能按類別瀏覽相冊,該功能利用PyQt5工具設計的圖形交互界面實現(xiàn)。

3.3 圖像分類模塊設計

圖像分類模塊主要實現(xiàn)對圖片的自動分類,在分類前,用戶選擇需要分類的圖片所在文件夾,依次從文件夾中加載圖片。預訓練模型沒有人物類別,利用人臉檢測來識別人物可解決該問題,人臉檢測速度快且準確率高。系統(tǒng)讀取圖片,先檢測圖片是否包含人臉,若有人臉,則判定為人物類別;若無人臉,則再對圖片進行分類,并將圖片存入對應類別的文件夾。反復進行上述操作,直至文件夾中所有圖片加載完成。

3.3.1 人臉檢測功能設計

人臉檢測功能使用OpenCV庫中基于哈爾特征(Haarlike features)的分類器進行設計,Haar分類器由Haarlike特征,AdaBoost算法,級聯(lián)和積分圖快速計算組成。

(1)Haar-like特征:Haar特征分為四類:邊界特征、線條特征、中心特征和對角線特征,這四類組合成特征模板。

(2)AdaBoost算法:AdaBoost為迭代算法,針對同一個訓練集訓練不同的分類器,即弱分類器,將弱分類器集合起來,構造一個更強的最終分類器。

(3)級聯(lián):通過多個強分類器的組合使用,增加識別的準確率。

(4)積分圖:能夠描述全局信息的矩陣表示方法。積分圖的構造方式為位置(x,y)處的值是原圖像(x,y)左上角方向所有像素之和。

3.3.2 圖片分類設計

(1)本文使用卷積神經網絡VGG19來進行圖片類別識別,VGG19包含了19個隱藏層(16個卷積層和3個全連接層)。

(2)圖片分類流程如下:讀取圖片后,加載訓練好的分類模型和類別標簽,分類模型為從互聯(lián)網下載的“imagenet-vgg-verydeep-19.mat”,類別標簽為“synset_words.txt”,運行程序時,返回圖片類別標簽,根據標簽名稱將圖片存入與標簽對應的文件夾即可完成圖片歸類。

(3)選擇文件和觸發(fā)分類函數(shù)由PyQt5的按鈕控件加控制函數(shù)實現(xiàn)。

3.3.3 相冊查看功能設計

相冊查看功能使用圖形界面實現(xiàn),用戶選擇需要查看的相冊,在圖形界面顯示相應文件夾的圖片。相冊查看功能關鍵控件為下拉框控件和網格布局。下拉框控件提供用戶要查看的類別功能,并傳遞對應類別的參數(shù),不同參數(shù)對應不同的文件路徑,網格布局顯示圖片。

4 系統(tǒng)實現(xiàn)

系統(tǒng)利用Scipy.misc模塊來實現(xiàn)圖片的讀取、存儲等基礎操作。使用Imread讀取圖片,將圖片縮放至224×224標準格式,在圖片分類前進行預處理,將圖片去均值,增加Batch維度,轉換為Float32類型的數(shù)據。查看相冊使用Imresize調整圖片大小。成功獲取圖片類別后,返回圖片類別標簽,根據標簽和類別字符串對比,確定圖片存儲路徑。

系統(tǒng)核心模塊實現(xiàn)如下:

4.1 人臉檢測功能的實現(xiàn)

使用OpenCV人臉識別分類器進行人臉檢測,人臉模型無須自己訓練,使用OpenCV自帶的模型“haarcascade_frontalface_default.xml”。

(1)通過cv2.CascadeClassifier函數(shù)加載人臉識別分類器模型,實現(xiàn)檢測圖片中是否存在人臉的功能,在檢測前,先對圖片進行預處理。

img = cv2.imread(imgPath) #讀取圖片

gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) #將圖片轉化為灰度圖

(2)經過預處理后,加載人臉識別分類器模型:

classifier = cv2.CascadeClassifier() # OpenCV人臉識別分類器

(3)調用識別人臉:

faceRects = classifier.detectMultiScale

(4)通過返回的參數(shù)判斷圖片中是否存在人臉:

if len(faceRects) # 大于0則檢測到人臉

4.2 圖片分類的實現(xiàn)

(1)圖片分類通過構建VGG19卷積神經網絡實現(xiàn),選擇文件和觸發(fā)分類函數(shù)由PyQt5按鈕控件加控制函數(shù)實現(xiàn)。

根據VGG19網絡結構構件前向傳播網絡,網絡功能可分為兩部分,第一部分是全連接層之前,為特征提取,從全連接層開始為第二部分,目的是獲取類別。VGG19網絡使用卷積核為3×3,步長為(1,1,1,1),邊界用0填充。池化層采用最大池化,步長為2,邊界用0填充。通過圖片加載函數(shù)加載圖片,并壓縮為標準格式。加載模型和標簽文件后,構建CNN前向傳播網絡,返回標簽,根據標簽可知圖片類別,將圖片存儲至對應類別的文件夾。

(2)預訓練模型分類為一千類,需要將一千類映射到本文所設計的六類中,映射關系如表1所示。

表1 類別映射表

4.3 相冊查看功能實現(xiàn)

相冊查看功能使用PyQt下拉框控件和網格布局來實現(xiàn)。用戶點擊下拉框控件選擇要查看的類別,選擇類別后傳遞對應類別的參數(shù),鏈接到不同的文件夾路徑下,在網格布局中顯示圖片。

5 系統(tǒng)測試與分析

5.1 系統(tǒng)測試環(huán)境

測試系統(tǒng)所使用的軟件測試環(huán)境為Windows操作系統(tǒng),硬件測試環(huán)境顯卡RTX2080Ti,內存16 G,用戶實際使用顯卡顯存最低為8 G,否則將調用CPU進行運算。

5.2 系統(tǒng)功能測試

測試系統(tǒng)設計的功能是否正常,點擊按鈕查看關聯(lián)函數(shù)是否成功,測試下拉框是否正確,顯示圖片是否有誤。并測試系統(tǒng)在進行圖片分類時的成功率。

圖片分類測試:人物、動物、交通工具、風景、食物每個類別各使用一百張圖片進行測試。測試思路:在個人相冊每個類別隨機選取100張圖片測試,不足部分由百度圖庫中收集。收集人物類,選取自拍、合照、半身照,全身照等樣例;收集食物類,選取快餐、零食、蔬菜、水果、炒菜等樣例;收集動物類,選取常見的寵物貓狗,以及普通動物,如大象、老虎、猴子等;收集交通工具類,選取飛機、火車、汽車、摩托車、自行車等照片。

以動物為例,隨機選取100張圖片放入“動物測試”文件夾中,開始分類。若識別圖片為動物,則圖片存入“動物”類別,同時刪除“動物測試”文件夾中對應的圖片;若識別結果不是動物,則不對圖片進行操作。按此步驟,“動物”文件夾為分類成功圖片,“動物測試”文件夾為分類失敗圖片。分類完成,進行數(shù)據統(tǒng)計,動物每100張成功識別85張,食物每100張成功識別71張,人物每100張成功識別75張,交通工具每100張成功識別76張,風景每100張成功識別67張。

由測試結果可知,動物、交通工具、人物的分類成功率較高,因為在預訓練模型中,動物和交通工具的分類非常細化,OpenCV人臉識別分類器對人臉的檢測較為成熟。風景和食物的識別成功率較低,因為風景和食物出現(xiàn)的場景比較復雜,為改善這一問題,可以考慮在圖片分類前分割圖像,提取圖像的典型特征,再進行分類。

6 結語

本文利用VGG19網絡實現(xiàn)智能化的圖像分類,并設計與實現(xiàn)了一種基于卷積神經網絡的智能圖片管理系統(tǒng)。系統(tǒng)經過完整地測試,可實現(xiàn)對大量圖片進行基于內容的自動歸類與整理的預期目標。后續(xù)研究中可考慮使用更大型的預訓練模型進一步提高圖片識別模型的性能,并提高用戶界面的友好性。

猜你喜歡
文件夾人臉類別
磁力文件夾
有特點的人臉
三國漫——人臉解鎖
動漫星空(2018年9期)2018-10-26 01:17:14
調動右鍵 解決文件夾管理三大難題
服務類別
新校長(2016年8期)2016-01-10 06:43:59
TC一鍵直達常用文件夾
電腦迷(2015年1期)2015-04-29 21:24:13
馬面部與人臉相似度驚人
論類別股東會
商事法論集(2014年1期)2014-06-27 01:20:42
長得象人臉的十種動物
奇聞怪事(2014年5期)2014-05-13 21:43:01
中醫(yī)類別全科醫(yī)師培養(yǎng)模式的探討
霸州市| 甘肃省| 寿阳县| 天津市| 抚顺市| 塘沽区| 龙口市| 冀州市| 江孜县| 宝山区| 东方市| 延长县| 长海县| 武义县| 繁昌县| 瑞丽市| 尼勒克县| 崇明县| 海伦市| 曲周县| 徐水县| 长武县| 建水县| 松潘县| 凌云县| 安远县| 沙河市| 秭归县| 广宗县| 巫溪县| 屯留县| 邵阳县| 林西县| 阳春市| 彰武县| 广南县| 高尔夫| 邳州市| 清水河县| 潍坊市| 商丘市|