版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
基于深度學(xué)習(xí)的口紅識(shí)別器的設(shè)計(jì)與實(shí)現(xiàn)DesignandImplementationofLipstickRecognizerBasedonDeepLearning摘要隨著科學(xué)技術(shù)的不斷發(fā)展,深度學(xué)習(xí)已經(jīng)在不同的領(lǐng)域?yàn)槿祟愄峁└玫胤?wù)。因此,本論文將科學(xué)技術(shù)與生活聯(lián)系起來(lái),實(shí)現(xiàn)基于深度學(xué)習(xí)的口紅識(shí)別器。通過(guò)了解現(xiàn)階段深度學(xué)習(xí)的研究現(xiàn)狀,以及對(duì)卷積神經(jīng)網(wǎng)絡(luò)的分析,應(yīng)用了目標(biāo)檢測(cè)算法作為本系統(tǒng)的核心算法,使用了Vue.js作為框架,結(jié)合MySQL數(shù)據(jù)庫(kù),實(shí)現(xiàn)了該系統(tǒng)的開發(fā)。關(guān)鍵詞:口紅識(shí)別;深度學(xué)習(xí);目標(biāo)檢測(cè);Vue.jsAbstractDeeplearningindifferentaspectstoprovidehigh-qualityservicesforhumanbeings,underthedevelopmentofscienceandtechnology.Therefore,thisthesisconnectsscienceandtechnologywithlife,andimplementsalipstickrecognizerbasedondeeplearning.Applicationoftargetdetectionalgorithmasthecorealgorithmofthesystem,andVue.jsisusedastheframework.Byunderstandingthecurrentstateofdeeplearningresearchandanalysisofconvolutionalneuralnetworks,combinedwiththeMySQLdatabase,thesystemisdeveloped.Keywords:Lipstickrecognition;DeepLearning;TargetDetection;Vue.js目錄1.1課題背景和意義 第一章緒論1.1課題背景和意義人工智能是當(dāng)今社會(huì)上的熱話題與重點(diǎn)研究對(duì)象,國(guó)家更是出臺(tái)了各種政策促進(jìn)人工智能的發(fā)展。人工智能的目的是將機(jī)器“擬人化”,協(xié)助人類解決各項(xiàng)事宜。如今,人工智能應(yīng)用于許多行業(yè)與領(lǐng)域當(dāng)中,各類關(guān)于人工智能的研究也層出不窮,深度學(xué)習(xí)的提出更是讓人工智能這個(gè)領(lǐng)域有了質(zhì)的飛躍。在時(shí)代的大環(huán)境下,我們已然進(jìn)入人工智能時(shí)代[1]。在人工智能日新月異發(fā)展的同時(shí),我國(guó)的經(jīng)濟(jì)也穩(wěn)步提升,經(jīng)濟(jì)的良性發(fā)展促進(jìn)消費(fèi)水平的提升。在這個(gè)契機(jī)下,彩妝口紅行業(yè)迎來(lái)了行業(yè)的春天。在口紅需求提升的大環(huán)境下,口紅也變成了送禮的最佳選擇,但是,口紅色號(hào)千千萬(wàn),選對(duì)了牌子才成功了一半。在紅色能被分為:姨媽紅、梅子紅、豆沙紅等等的彩妝界,色號(hào)的分辨真的讓人眼花繚亂。因此,本課題結(jié)合了生活與科技,將人工智能與口紅有機(jī)結(jié)合起來(lái),使得人工智能進(jìn)一步貼近人們的日常生活。1.2研究現(xiàn)狀1.2.1人工智能國(guó)內(nèi)外研究情況“人工智能”由JohnMccarthy等人在一次研討會(huì)上提出。簡(jiǎn)單來(lái)說(shuō),人工智能將過(guò)去只有人能做的事情交給計(jì)算機(jī)去做,這樣的好處是提高效率,同時(shí)使得所做的事情誤差更小。從1956年到現(xiàn)在60多年來(lái),人工智能經(jīng)歷了幾次起起伏伏。首先在人工智能被提出之后,由于對(duì)新興學(xué)科的向往,許多國(guó)家投入資金對(duì)該學(xué)科進(jìn)行研究,但事情的發(fā)展卻不如人愿。在二十世紀(jì)七十年代初期,下棋程序無(wú)法戰(zhàn)勝更高級(jí)別的冠軍、機(jī)器翻譯鬧出笑話、機(jī)器無(wú)法證明數(shù)學(xué)函數(shù)等這一連串的失敗,使得人工智能走向低谷。但科學(xué)家們沒(méi)有氣餒,而是對(duì)過(guò)去的主要技術(shù)和戰(zhàn)略進(jìn)行總結(jié)并做出改進(jìn),提出了新的發(fā)展重心和方向。由于有了新的重點(diǎn),人工智能又迎來(lái)了新的發(fā)展期。在二十世紀(jì)八十年代交互問(wèn)題與擴(kuò)展問(wèn)題又成為了人工智能的攔路虎,但頑強(qiáng)的人工智能學(xué)者們并沒(méi)有被打倒,而是總結(jié)反思,為人工智能的發(fā)展提供了更多的方法。自從人工智能興起以來(lái),世界各國(guó)都紛紛在“研究人工智能”這條道路上奔跑,許多歐美國(guó)家已然發(fā)展成為“人工智能強(qiáng)國(guó)”。我們國(guó)家對(duì)于人工智能的研究起步較晚,但也在不斷地嘗試和努力中,隨著國(guó)家經(jīng)濟(jì)的發(fā)展,對(duì)人工智能的投入越大也越重視,從自動(dòng)駕駛汽車到無(wú)人駕駛飛行器[2],并且在越來(lái)越多的領(lǐng)域投入研究人工智能,使得人工智能使得其發(fā)展與應(yīng)用空間巨大,并且也越來(lái)越融入到日常生活中。人工智能[3]未來(lái)的前進(jìn)方向也在各種研究中日漸明確。人工智能如同一顆璀璨的明星,在21世紀(jì)這個(gè)科技超高速發(fā)展的時(shí)代中閃耀著它的光芒,并且在時(shí)代的注明下繼續(xù)加速前進(jìn)。1.2.2深度學(xué)習(xí)研究現(xiàn)狀在當(dāng)今人工智能的領(lǐng)域中,不得不提的熱門概念就是深度學(xué)習(xí)。它在2006年被Hinton等人提出,在2016年一則轟動(dòng)科研界的事件使得深度學(xué)習(xí)風(fēng)頭一時(shí)無(wú)兩,這個(gè)事件就是世界圍棋冠軍李世石被Google研發(fā)的下棋機(jī)器人AlphaGo打敗。因此深度學(xué)習(xí)這一概念得到了重視,同時(shí)也迎來(lái)了研究的熱潮。人類是通過(guò)人腦不斷學(xué)習(xí)事物的[4],深度學(xué)習(xí)正是利用了這一點(diǎn),模擬人腦神經(jīng)網(wǎng)絡(luò)的構(gòu)造,在計(jì)算機(jī)里建造出神經(jīng)網(wǎng)絡(luò)。我們?nèi)绻麑C(jī)器[5]比喻為一個(gè)人,那么深度學(xué)習(xí)便是這個(gè)機(jī)器的“腦子”,可以幫助計(jì)算機(jī)對(duì)輸入的數(shù)據(jù)進(jìn)行分析與學(xué)習(xí),使得計(jì)算機(jī)有了類似于人類的學(xué)習(xí)能力。深度學(xué)習(xí)的算法是通過(guò)提取物體的特征,不斷地認(rèn)識(shí)物體,訓(xùn)練的數(shù)據(jù)對(duì)訓(xùn)練的結(jié)果有著一定的影響,一般大的訓(xùn)練數(shù)據(jù)會(huì)得到比小的訓(xùn)練數(shù)據(jù)更好的訓(xùn)練結(jié)果。在21世紀(jì)這個(gè)互聯(lián)網(wǎng)飛速發(fā)展、信息傳播快速的大數(shù)據(jù)時(shí)代,有了數(shù)據(jù)作為依托,深度學(xué)習(xí)在圖像識(shí)別、自然語(yǔ)言處理等方面都得到了很好地應(yīng)用。隨著對(duì)深度學(xué)習(xí)不斷深入的研究[6],各種具有復(fù)雜層次結(jié)構(gòu)與獨(dú)特神經(jīng)處理單元的神經(jīng)網(wǎng)絡(luò)不斷出現(xiàn),提高了訓(xùn)練的效率與結(jié)果。深度學(xué)習(xí)是人工智能的主要訓(xùn)練方式[7],隨著深度學(xué)習(xí)研究的不斷深入,人工智能技術(shù)也會(huì)得到很好的提升,使其更好地應(yīng)用于生產(chǎn)生活中。本篇論文采用的神經(jīng)網(wǎng)絡(luò)是卷積神經(jīng)網(wǎng)絡(luò),以下分別介紹這4種模型:AlexNet[8]AlexKrizhevsky提出這個(gè)擁有5層卷積和3層全連接層的模型——AlexNet模型,使得神經(jīng)網(wǎng)絡(luò)的研究達(dá)到了一個(gè)不小的高潮。它的出現(xiàn)帶來(lái)的提升是:=1\*GB3①使用多個(gè)GPU并行訓(xùn)練網(wǎng)絡(luò)使得訓(xùn)練時(shí)間減少并且提升了網(wǎng)絡(luò)識(shí)別的準(zhǔn)確率。=2\*GB3②激活函數(shù)的改變降低了網(wǎng)絡(luò)學(xué)習(xí)的難度,使得模型更容易得到有效的訓(xùn)練。=3\*GB3③采用擴(kuò)大數(shù)據(jù)集與dropout隨機(jī)刪除一定的神經(jīng)元來(lái)緩解過(guò)度擬合的問(wèn)題。VGGNet[9]VGGNet模型是由牛津大學(xué)的視覺(jué)幾何組提出。VGG的卷積層深度高達(dá)19層,主要增加了卷積神經(jīng)網(wǎng)絡(luò)中的深度。但VGG模型具體的卷積運(yùn)算與AlexNet模型類似,因此被稱為增強(qiáng)版的AlexNet。值得一提的是,VGG采用了小尺度的卷積核,降低了參數(shù)量,提高了計(jì)算速度。同時(shí)因?yàn)槠鋬?nèi)部結(jié)構(gòu)比較簡(jiǎn)潔明了,容易遷徙,因此直到現(xiàn)在,VGG網(wǎng)絡(luò)還經(jīng)常被用來(lái)提出特征。GoogLeNet[10]在卷積神經(jīng)網(wǎng)絡(luò)中,加深模型的深度、寬度與訓(xùn)練數(shù)據(jù)固然能使模型達(dá)到更好的學(xué)習(xí)效果,但這些要素的增加必然會(huì)帶來(lái)過(guò)量的參數(shù)影響效率,所以GoogLeNet提出了一個(gè)全新的深度CNN框架——Inception,這個(gè)有點(diǎn)像金字塔的框架在寬度上使用了1、3、5三種尺寸的卷積核,有效地節(jié)省了運(yùn)算時(shí)間以及減少網(wǎng)絡(luò)中很多參數(shù)的數(shù)量。ResNet[11]ResNet(殘差網(wǎng)絡(luò))是由何凱明及其團(tuán)隊(duì)提出,由于VGG與GooLeNet都是使用增加卷積神經(jīng)網(wǎng)絡(luò)的深度與寬度來(lái)提高模型的學(xué)習(xí)能力,但是模型的層次加深又會(huì)使得正確率降低,為了解決這個(gè)問(wèn)題,作者提出了一個(gè)深度殘差網(wǎng)絡(luò)的結(jié)構(gòu)Residual。1.3章節(jié)安排本文一共分為六個(gè)章節(jié),每個(gè)章節(jié)有著不同的內(nèi)容,具體如下:第1章介紹了基于深度學(xué)習(xí)的口紅識(shí)別器的研究背景和意義,闡述了人工智能與深度學(xué)習(xí)的研究現(xiàn)狀以及卷積神經(jīng)網(wǎng)絡(luò)的四種模型。第2章介紹了本系統(tǒng)所采用的相關(guān)原理以及技術(shù)點(diǎn),分別有本卷積神經(jīng)網(wǎng)絡(luò)及其網(wǎng)絡(luò)結(jié)構(gòu)、輕量型卷積神經(jīng)網(wǎng)絡(luò)、系統(tǒng)核心模塊的原理、系統(tǒng)采用的api及框架。第3章對(duì)該系統(tǒng)進(jìn)行需求分析與數(shù)據(jù)庫(kù)的設(shè)計(jì)。第4章先是對(duì)該系統(tǒng)的總體設(shè)計(jì)進(jìn)行介紹,再分模塊對(duì)系統(tǒng)的功能進(jìn)行設(shè)計(jì)與實(shí)現(xiàn)。第5章測(cè)試該系統(tǒng)的各個(gè)功能板塊,并做出總結(jié)。第6章總結(jié)本論文的研究?jī)?nèi)容,并對(duì)該系統(tǒng)仍有進(jìn)步空間的地方做出展望。第二章論文相關(guān)原理以及技術(shù)介紹2.1卷積神經(jīng)網(wǎng)絡(luò)2.1.1卷積神經(jīng)網(wǎng)絡(luò)概述人體的很多功能擁有著許多奧秘,因此許多科技的創(chuàng)新與發(fā)展也會(huì)利用這些“奧秘”的原理。卷積神經(jīng)網(wǎng)絡(luò)正是根據(jù)人類視覺(jué)奧秘的原理,采用多層神經(jīng)網(wǎng)絡(luò)構(gòu)建了卷積神經(jīng)網(wǎng)絡(luò)。卷積神經(jīng)網(wǎng)絡(luò)在圖像處理方面有著積極的效果,它能在較低層開始識(shí)別圖像的特征,隨著層數(shù)的增加能提取到越多的特征,最終在頂層做出分類。隨著技術(shù)的不斷發(fā)展,卷積神經(jīng)網(wǎng)絡(luò)還應(yīng)用于數(shù)字信號(hào)處理、自然語(yǔ)言處理等中,取得了良好的成效。神經(jīng)網(wǎng)絡(luò)的發(fā)展從20世紀(jì)40年代開始。在該年代,不少模型與理論為神經(jīng)網(wǎng)絡(luò)奠定了基礎(chǔ),神經(jīng)網(wǎng)絡(luò)的研究有了實(shí)質(zhì)性進(jìn)展。隨后在50年代,一系列神經(jīng)網(wǎng)絡(luò)的成果開始涌現(xiàn),例如感知機(jī)、Adaline等。而好景不長(zhǎng),一些在當(dāng)時(shí)無(wú)法解決的問(wèn)題使得神經(jīng)網(wǎng)絡(luò)開始沉寂,直到BP算法的提出才讓神經(jīng)網(wǎng)絡(luò)迎來(lái)了新的春天隨著時(shí)代背景的改變,計(jì)算能力與日增強(qiáng)以及大數(shù)據(jù)的涌現(xiàn),神經(jīng)網(wǎng)絡(luò)迎來(lái)了高潮時(shí)期。在時(shí)代的大背景下,神經(jīng)網(wǎng)絡(luò)已然成為了寵兒,成為了各國(guó)各科研人員的重點(diǎn)研究對(duì)象,在神經(jīng)網(wǎng)絡(luò)中不得不提的便是卷積神經(jīng)網(wǎng)絡(luò),因此卷積神經(jīng)網(wǎng)絡(luò)在技術(shù)層面也是不斷更新,各路大神紛紛提出更優(yōu)越的CNN網(wǎng)絡(luò),不斷增加網(wǎng)絡(luò)的深度與復(fù)雜度從性能方面帶來(lái)提升。各大公司也紛紛斥巨資進(jìn)行研發(fā),由此看來(lái),卷積神經(jīng)網(wǎng)絡(luò)已成為熱門課題。2.1.2卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)卷積神經(jīng)網(wǎng)絡(luò)是一種監(jiān)督式的多層神經(jīng)網(wǎng)絡(luò),卷積層是其中最為重要的結(jié)構(gòu)。卷積神經(jīng)在圖像處理時(shí),輸入的圖像是一個(gè)三維矩陣,從輸入層開始就通過(guò)卷積、池化等操作將特征信息逐層獲取和抽象,不同的層級(jí)分工合作,各有著自己的任務(wù)與操作,直到在最后一層將輸入的圖像進(jìn)行分類,可將此層看作一個(gè)分類器。卷積神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)如圖2-1所示。將圖片輸入之后眾多的操作層提取原始數(shù)據(jù)中的特征,即進(jìn)行特征學(xué)習(xí),最后通過(guò)softmax輸出分類結(jié)果。圖2-1卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖=1\*GB2⑴輸入層圖片在輸入層輸入,相當(dāng)于在卷積神經(jīng)網(wǎng)絡(luò)中輸入一個(gè)三維矩陣。隨后該矩陣經(jīng)過(guò)層層的特征提取,直至全連接層,最后獲得分類結(jié)果。=2\*GB2⑵卷積層卷積神經(jīng)網(wǎng)絡(luò)中不能沒(méi)有卷積層。卷積層是一個(gè):輸入的圖像為矩陣X,與參數(shù)矩陣W進(jìn)行相乘求和的過(guò)程。其中W就是卷積核,通常被稱為過(guò)濾器(filter)。卷積核的尺度不同提取的特征也不相同,在卷積神經(jīng)網(wǎng)絡(luò)中為了提取更多的圖像特征,會(huì)把采用多種卷積核一起運(yùn)算。卷積層的基本原理如下,如圖2-2(a)所示,輸入一個(gè)5×5的圖像,選擇了一個(gè)步長(zhǎng)為1、3×3的矩陣為卷積核,卷積核從左上角開始從左到右、從上到下滑動(dòng),每滑動(dòng)一次就進(jìn)行一次卷積操作,滑動(dòng)的距離由卷積核的步長(zhǎng)決定,圖像中的參數(shù)與卷積核的參數(shù)逐位相乘后得到一次卷積操作的結(jié)果,即:1×1+1×0+1×1+0×1+1×1+1×0+0×1+0×0+1×1=4,卷積結(jié)果如圖2-2(b)左上角所示。由此,我們可以看作有一個(gè)滑動(dòng)窗口,以從左往右從上到下的順序并且以步長(zhǎng)為單位進(jìn)行卷積操作,卷積過(guò)程如圖2-2(b)所示,最終會(huì)得到一個(gè)3×3大小矩陣,如圖2-2(b)右下角所示。該矩陣將會(huì)輸入到下一層中進(jìn)行操作,環(huán)環(huán)相扣。輸入一個(gè)5×5的圖像,選擇了一個(gè)步長(zhǎng)為1、3×3的矩陣為卷積核卷積操作的過(guò)程及結(jié)果圖2-2卷積操作=3\*GB2⑶池化層池化層(Pooling),可以在圖片質(zhì)量不被影響的情況下減少參數(shù)、壓縮圖片,通過(guò)降采樣的方式,使得數(shù)據(jù)維度降低,很好地避免了過(guò)擬合。一般池化層會(huì)選擇性地參雜在卷積層之間。取一個(gè)過(guò)濾器將輸入的圖像劃分為跟過(guò)濾器大小相同的矩陣,每個(gè)子區(qū)域選取最大值作為結(jié)果為最大池化,若選擇平均值作為結(jié)果則為均值池化。池化層不會(huì)改變?nèi)S矩陣的深度,并且池化層里的參數(shù)是人為設(shè)置初始化地,所以與之前卷積層里的卷積核不同。列舉兩個(gè)實(shí)例以便更好地理解最大池化與均值池化的原理,如圖2-3的圖(a)與(b)分別為進(jìn)行的操作為:最大池化與進(jìn)行均值池化。其中池化核是步長(zhǎng)為2的2×2的矩陣??梢钥吹剑?jīng)過(guò)池化后更能保留特征的主要信息,節(jié)省資源,加快速度。利用2×2的池化核,并且以2為步長(zhǎng),對(duì)特征進(jìn)行最大池化利用2×2的池化核,并且以2為步長(zhǎng),對(duì)特征進(jìn)行均值池化圖2-3最大池化與均值池化=4\*GB2⑷激活函數(shù)神經(jīng)網(wǎng)絡(luò)中進(jìn)行線性操作,無(wú)法很好地發(fā)揮神經(jīng)網(wǎng)絡(luò)的潛能。為了提升神經(jīng)網(wǎng)絡(luò)的能力,增加其多樣性,選擇加入激活函數(shù)作為其非線性因素,擺脫只能進(jìn)行線性映射、輸出線性組合的困境。以下介紹三種激活函數(shù)=1\*GB3①Sigmoid函數(shù)(S型生長(zhǎng)曲線函數(shù))Sigmoid函數(shù)可以將連續(xù)的值轉(zhuǎn)換為0和1的輸出,因此可以用來(lái)做二分類。它的數(shù)學(xué)形式如公式2-1(2-1)Sigmoid函數(shù)的幾何圖像如下圖2-4所示:圖2-4Sigmoid的幾何圖像Sigmoid函數(shù)有著易于求導(dǎo)的優(yōu)點(diǎn),但是也有不少如下缺點(diǎn):=1\*GB1⒈在反向傳播時(shí),需要求誤差梯度,但在該求導(dǎo)過(guò)程中會(huì)出現(xiàn)除法,增大了運(yùn)算量。=2\*GB1⒉深層網(wǎng)絡(luò)的訓(xùn)練無(wú)法完成,因其容易在反向傳播時(shí)出現(xiàn)導(dǎo)數(shù)逐漸趨于零或者變?yōu)榱愕那闆r,該情況稱之為梯度“消失”。=2\*GB3②Tanh函數(shù)(雙曲正切函數(shù))它的數(shù)學(xué)形式如公式2-2(2-2)Tanh函數(shù)的幾何圖像及其導(dǎo)數(shù)如圖2-5所示:圖2-5Tanh函數(shù)的幾何圖像與導(dǎo)數(shù)在特征相差明顯時(shí)Tanh函數(shù)會(huì)得到更好地提取效果,并且可以提高BP訓(xùn)練的效率,所以兩者相比,Tanh函數(shù)會(huì)比Sigmoid函數(shù)更勝一籌。但是Tanh函數(shù)也同樣在反向傳播時(shí),需要求誤差梯度,但在該求導(dǎo)過(guò)程中會(huì)出現(xiàn)除法,增大了運(yùn)算量的缺點(diǎn),并且在反向傳播時(shí)候有可能比Sigmoid函數(shù)更快出現(xiàn)梯度“消失”的現(xiàn)象,因此也較為不穩(wěn)定。=3\*GB3③Relu函數(shù)(線性整流函數(shù))它的數(shù)學(xué)形式如公式2-3(2-3)Relu函數(shù)的幾何圖像及其導(dǎo)數(shù)如圖2-6所示圖2-6Relu函數(shù)的幾何圖像及其導(dǎo)數(shù)Relu函數(shù)比起前面兩種激活函數(shù),有著顯著的優(yōu)點(diǎn)=1\*GB1⒈緩解了梯度“消失”的問(wèn)題。=2\*GB1⒉計(jì)算速度于Sigmod函數(shù)和Tanh函數(shù)相比快很多。=3\*GB1⒊網(wǎng)絡(luò)訓(xùn)練速度得到提高。=5\*GB2⑸全連接層輸入圖像的在經(jīng)過(guò)卷積神經(jīng)網(wǎng)絡(luò)前面幾層的特征提取之后,特征被高度提取,此時(shí)進(jìn)入全連接層進(jìn)行分類工作。2.1.3輕量化卷積神經(jīng)模型卷積神經(jīng)網(wǎng)絡(luò)的性能需求隨著其在計(jì)算機(jī)視覺(jué)中的廣泛應(yīng)用不斷提高,于是各路大神紛紛提出性能更強(qiáng)的CNN網(wǎng)絡(luò)以滿足需求,網(wǎng)絡(luò)的性能在神經(jīng)模型深度的不斷增加下得到了高度提升,但此時(shí)效率問(wèn)題也開始產(chǎn)生,模型的存儲(chǔ)空間[12]與進(jìn)行預(yù)測(cè)的問(wèn)題是影響效率的關(guān)鍵問(wèn)題。在21世紀(jì),手機(jī)是人類生活的一大需求。如何使得卷積神經(jīng)網(wǎng)絡(luò)與手機(jī)結(jié)合起來(lái),更好地應(yīng)用于人類生活呢?那么既然想到了這個(gè)需求,就必然會(huì)有解決辦法,于是輕量化卷積神經(jīng)網(wǎng)絡(luò)模型誕生了,它的主要設(shè)計(jì)思想在于更高效的網(wǎng)絡(luò)計(jì)算方式(主要針對(duì)卷積方式),使得在不損失網(wǎng)絡(luò)性能的情況下減少參數(shù)。以下介紹3個(gè)近年來(lái)的輕量化模型:SqueezeNetSqueeNet通過(guò)使用卷積核(1×1矩陣)對(duì)特征圖片進(jìn)行個(gè)數(shù)壓縮的方式,從量上面對(duì)網(wǎng)絡(luò)參數(shù)進(jìn)行減少,使其輕便。SqueeNet與AlexNet的性能相近,卻比AlexNet能減少50倍的網(wǎng)絡(luò)參數(shù)。SqueeNet的網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)思想與VGG類似,堆疊的使用卷積操作。MobileNet由Google團(tuán)隊(duì)提出的MobileNet從它的命名就能聯(lián)想到它的應(yīng)用場(chǎng)所是手機(jī)。該模型減少參數(shù)數(shù)量與提升運(yùn)算速度的方法是通過(guò)采用名為depth-wiseseparableconvolution的卷積方式。這種卷積方式也是這個(gè)模型的精髓,它能使得卷積的計(jì)算量減少8-9倍。簡(jiǎn)單介紹下此種卷積方式,便是將卷積分為兩步:第一步的每個(gè)卷積的通道只能被一個(gè)卷積核卷積,這一步名為逐通道的卷積;第二步的主要工作就是通過(guò)將上一步得到的特征圖串聯(lián),使得輸出的每一個(gè)特征圖都有著輸入層特征圖的信息,這一步名為Pointwiseconvolution。ShuffleNet[13]ShuffleNet也采用了depth-wiseseparableconvolution卷積方式。但并非與MobileNet完全一致,為了解決該卷積方式帶來(lái)的“信息流通不暢”的問(wèn)題,將該卷積方式的第二步Pointwiseconvolution換為channelshuffle,成功地解決了問(wèn)題。2.3系統(tǒng)核心模塊原理本系統(tǒng)的核心模塊為:人臉檢測(cè)模塊、面部特征點(diǎn)標(biāo)記模塊、顏色對(duì)比模塊,具體如圖2-7。圖2-7系統(tǒng)核心模塊其中,人臉檢測(cè)模塊的主要功能是在圖片中識(shí)別出人臉,并定位出人臉?biāo)诘奈恢靡源_保后續(xù)工作順利進(jìn)行。面部特征標(biāo)記模塊涵蓋了人臉五官68個(gè)特征點(diǎn)的信息,可以由此得到唇部的特征點(diǎn)信息并標(biāo)記出唇部并獲取嘴唇的顏色。顏色對(duì)比模塊的功能主要為將獲取到的唇部顏色和口紅的色號(hào)進(jìn)行匹配,選擇相近的顏色值。2.3.1人臉檢測(cè)模塊人臉檢測(cè)模塊往大方向去看便是深度學(xué)習(xí)中的目標(biāo)檢測(cè)。識(shí)別一張圖片中存在什么物體,該物體在哪個(gè)位置,就是目標(biāo)檢測(cè)。標(biāo)檢測(cè)中能檢測(cè)出來(lái)的物體取決于我們的需要,由此可知,人臉檢測(cè)便是目標(biāo)檢測(cè)中所需要檢測(cè)的物體為人臉。于是,人臉檢測(cè)主要完成了兩個(gè)工作:一是判斷所給的圖片中是否含有人臉區(qū)域;二是如果圖片中存在人臉,則需要將人臉的位置預(yù)測(cè)出來(lái)。舉個(gè)例子,如蘋果公司旗下蘋果手機(jī)的人臉解鎖功能還有中國(guó)各大高校帶有人臉識(shí)別的出入校門系統(tǒng),都需要先檢測(cè)出臉部才能進(jìn)行識(shí)別,在各大高校的進(jìn)出校門系統(tǒng)中可以看到,屏幕上會(huì)出現(xiàn)出校門者的臉隨后對(duì)該人臉進(jìn)行對(duì)焦,這一步便可以概括人臉檢測(cè)。人臉檢測(cè)最開始是由人工提取特征,將這些人工特征訓(xùn)練成一個(gè)檢測(cè)器,進(jìn)行人臉識(shí)別。而隨時(shí)時(shí)代的進(jìn)步,科技的發(fā)展,如今的人臉檢測(cè)使用的是深度學(xué)習(xí)的卷積神經(jīng)網(wǎng)絡(luò),衍生出了:FasterR-CNN算法、SSD算法等多種算法。這些算法不僅可以應(yīng)用人臉檢測(cè),同樣也可以應(yīng)用到目標(biāo)檢測(cè)。下面將介紹FasterR-CNN算法與SSD算法。=1\*GB2⑴FasterR-CNN算法在2014年由于R-CNN(Regionproposal+CNN)框架提出之后,目標(biāo)檢測(cè)算法迅速地發(fā)展起來(lái)。在選擇性搜索的策略下接著相繼提出了兩種相應(yīng)的目標(biāo)檢測(cè)算法,但是由于選擇性搜索是一個(gè)影響網(wǎng)絡(luò)性能的緩慢的并且耗費(fèi)時(shí)間的過(guò)程,因此,在2015年這種更優(yōu)化的目標(biāo)檢測(cè)算法FasterR-CNN被卲少仁等人提出。FasterR-CNN可分為四個(gè)內(nèi)容,分別為Convlayers、RegionProposalNetworks、RoiPooling、Classification,如下圖2-8所示。圖2-8FasterR-CNN基本結(jié)構(gòu)=1\*GB3①卷積層(Convlayers)Convlayers負(fù)責(zé)提取圖像中的特征圖,是一種CNN網(wǎng)絡(luò)目標(biāo)檢測(cè)方法。Input進(jìn)去的圖片尺寸若為M*N,在經(jīng)過(guò)該層時(shí),若采用VGG16計(jì)算圖片的特征圖,會(huì)使得特征圖像的尺寸固定變?yōu)?M/16)*(N/16)。=2\*GB3②RPN層(RegionProposalNetworks)主要作用是生成目標(biāo)候選區(qū)域。目標(biāo)檢測(cè)算法的瓶頸是檢測(cè)速度,在精度一路發(fā)展的同時(shí),檢測(cè)速度卻沒(méi)有得到理想的提升,無(wú)法很好地進(jìn)行實(shí)時(shí)檢測(cè)。為了使檢測(cè)速度達(dá)到理想水平,F(xiàn)asterR-CNN使用了RPN生成檢測(cè)框架而不是采用之前傳統(tǒng)的Seletivesearch方法和滑動(dòng)窗口方法,達(dá)到了提升檢測(cè)速度這一目的。RPN網(wǎng)絡(luò)的具體結(jié)構(gòu)如圖2-9所示。圖2-9RPN網(wǎng)絡(luò)的具體結(jié)構(gòu)可以看到首先有一個(gè)3*3的卷積層,并且輸入與輸出的尺寸保持一致。這個(gè)過(guò)程分為兩條線走,一條線利用softmax進(jìn)行分類得到proposal;另一條線利用計(jì)算邊框回歸偏移量得到proposal。最后將兩者結(jié)合得到目標(biāo)候選區(qū)域(proposals),目標(biāo)定位的目的得以實(shí)現(xiàn)。=3\*GB3③RoiPooling層(RoiPooling)負(fù)責(zé)收集proposals(目標(biāo)候選區(qū))和featuremap(輸入的特征圖),并將這兩者結(jié)合起來(lái)計(jì)算出目標(biāo)區(qū)域特征圖,隨后進(jìn)行目標(biāo)類別的判斷,在全連接層進(jìn)行此判斷。=4\*GB3④分類器(Classification)分類器用于最后的分類與最終精準(zhǔn)的定位。通過(guò)結(jié)合前面幾層得到的信息去分類出相應(yīng)的物體、定位出最終的位置。=2\*GB2⑵SSD算法SSD算法是基于改進(jìn)YOLO算法基礎(chǔ)上提出的方法,在目標(biāo)檢測(cè)人物的精度與實(shí)時(shí)性方面達(dá)到了新的高度。它利用YOLO基于回歸模式的算法,加快了檢測(cè)的速度;同時(shí)也利用了基于區(qū)域的概念(類似FasterR-CNN算法中的anchors機(jī)制),保證了精準(zhǔn)的窗口預(yù)測(cè)性能??梢哉f(shuō)它解決了YOLO算法與FasterR-CNN算法的不足并將兩個(gè)算法的創(chuàng)新優(yōu)勢(shì)結(jié)合起來(lái)使用。由此,SSD算法可以適應(yīng)多種尺寸目標(biāo)的訓(xùn)練和檢測(cè)任務(wù)。它的基本框架如圖2-10所示。SSD的核心設(shè)計(jì)理念可以總結(jié)為以下三點(diǎn):第一,采用多尺度特征圖用于檢測(cè);第二,采用卷積進(jìn)行檢測(cè);第三,設(shè)置默認(rèn)框。下面將分別介紹這三個(gè)核心設(shè)計(jì)理念。圖2-10SSD基本框架=1\*GB3①采用多尺度特征圖用于檢測(cè)在卷積層后面直接連接上一層全連接層進(jìn)行檢測(cè)框輸出的有YOLO算法與FasterR-CNN算法,然而只依賴最后一層特征層的圖像特征信息輸出目標(biāo)位置信息實(shí)在太過(guò)單薄。而SSD算法在基礎(chǔ)網(wǎng)絡(luò)之后又添加了六層卷積層進(jìn)行多尺度特征圖檢測(cè),這改善了YOLO算法因只利用最后一層進(jìn)行目標(biāo)檢測(cè)所以不能很好檢測(cè)小目標(biāo)物體的問(wèn)題。SSD算法使用不同深度的卷積層的特征信息來(lái)預(yù)測(cè)不同大小的目標(biāo)。如圖2-11所示,8x8的特征圖可以劃分更多的單元,但它每個(gè)單元的先驗(yàn)框尺度比較小,可以檢測(cè)相對(duì)較大的目標(biāo)。圖2-11示例=2\*GB3②采用卷積進(jìn)行檢測(cè)簡(jiǎn)單來(lái)說(shuō),就是若有特征圖的形狀為m×n×p,只需要采用小卷積核3×3×p進(jìn)行檢測(cè)去獲得檢測(cè)的結(jié)果,使得算法更加快速高效。=3\*GB3③設(shè)置默認(rèn)框默認(rèn)框(defaultbox)的設(shè)置降低了一定的網(wǎng)路訓(xùn)練難度,它是一個(gè)事先設(shè)定好的有著大小不同尺寸的邊框,相當(dāng)于為預(yù)測(cè)的邊界框提供基準(zhǔn),因?yàn)楹罄m(xù)的預(yù)測(cè)邊界框都不會(huì)超過(guò)默認(rèn)框。等待檢測(cè)的圖像中每個(gè)網(wǎng)格都會(huì)生成尺度與大小不同的默認(rèn)框,圖像中的目標(biāo)對(duì)象基本涵蓋在這些默認(rèn)框中。如圖2-12(a)所示,狗對(duì)象和貓對(duì)象的默認(rèn)框都適合它們的體型大小。在每一特征層的網(wǎng)格上,都會(huì)先設(shè)計(jì)好默認(rèn)框的長(zhǎng)寬比與大小再進(jìn)行訓(xùn)練,默認(rèn)框的生成原理如圖2-12所示圖2--12生成默認(rèn)框2.3.2面部特征標(biāo)記模塊檢測(cè)出人臉位置之后,仍無(wú)法滿足本系統(tǒng)的要求,所以需要進(jìn)行面部特征標(biāo)記(LandmarkDetection)。面部特征標(biāo)記是指精確的定位出圖像中面部若干個(gè)特征點(diǎn)的過(guò)程,人臉的形態(tài)(shape)就可以通過(guò)特征點(diǎn)進(jìn)行描述。這些特征點(diǎn)是進(jìn)一步工作的基石,在本文中,將利用這些特征點(diǎn)確定出唇部的位置進(jìn)而繼續(xù)下一步的工作,而在大環(huán)境中,這些特征點(diǎn)是人臉識(shí)別與人臉檢測(cè)的重要銜接,也是美化人臉、表情識(shí)別等一系列人臉屬性分析的核心。本文所用的模型中的landmark包含68個(gè)點(diǎn)如圖2-13所示,每幾個(gè)點(diǎn)構(gòu)成臉部的一個(gè)器官,如61-67是嘴內(nèi)輪廓(紫)。最終臉部的五官由這68個(gè)點(diǎn)標(biāo)出,描述出該人臉的形態(tài)。圖2-13landmark的68個(gè)點(diǎn)2.3.3顏色對(duì)比本項(xiàng)目采用歐幾里得度量(euclideanmetric)予以計(jì)算嘴唇的顏色和口紅的色號(hào)。在多維空間中,歐幾里得度量就想當(dāng)于定義了點(diǎn)到原點(diǎn)的距離或者兩點(diǎn)之間的距離,由此可知在二維和三維空間中其實(shí)就是計(jì)算兩點(diǎn)之間的實(shí)際距離。在本次項(xiàng)目中,RBG作為顏色的三個(gè)維度,因此需代入三維空間的公式,公式如3-1所示(3-1)需要進(jìn)行比對(duì)的是口紅色號(hào)庫(kù)中的顏色與識(shí)別出的人臉唇部的顏色即識(shí)別出的20個(gè)特征點(diǎn)。因此需要將兩者轉(zhuǎn)換為RBG模式再代入歐幾里德距離公式進(jìn)行計(jì)算,得到差值最小的一款口紅色號(hào)將作為最終結(jié)果返回。2.4Face-api模型介紹由前文可知,實(shí)現(xiàn)此系統(tǒng)有三個(gè)核心步驟,人臉檢測(cè)、面部標(biāo)記以及口紅顏色對(duì)比。其中人臉檢測(cè)介紹了兩個(gè)算法,F(xiàn)asterR-CNN算法與SSD算法,由發(fā)展歷程以及算法原理可知,SSD算法具有更強(qiáng)的檢測(cè)能力以及更快的檢測(cè)速度,為本實(shí)驗(yàn)的首選算法,再者,為了使得實(shí)驗(yàn)更加高效與便捷,本實(shí)驗(yàn)將采用Face-api進(jìn)行應(yīng)用。Face-api是一個(gè)人臉識(shí)別框架,它構(gòu)建在TensorFlow.js核心庫(kù)之上,通過(guò)采用不同的神經(jīng)網(wǎng)絡(luò)對(duì)人臉樣本進(jìn)行訓(xùn)練,得到人臉識(shí)別模型。在深度學(xué)習(xí)中,構(gòu)建模型主要是有三個(gè)流程:第一,構(gòu)建神經(jīng)網(wǎng)絡(luò);第二,輸入數(shù)據(jù)集進(jìn)行訓(xùn)練,得到模型;第三,對(duì)獲得的模型進(jìn)行優(yōu)化后輸出。但是Face-api已經(jīng)實(shí)現(xiàn)了上述三個(gè)流程,并封裝成了方便調(diào)用的簡(jiǎn)易api,意味著我們并不需要去尋找數(shù)據(jù)集、對(duì)數(shù)據(jù)集進(jìn)行處理,隨后構(gòu)建神經(jīng)網(wǎng)絡(luò),調(diào)整損失函數(shù)參數(shù)并訓(xùn)練模型,而是可以直接方便地使用人臉識(shí)別技術(shù)。face-api利用不同的神經(jīng)網(wǎng)絡(luò)模型對(duì)人臉數(shù)據(jù)進(jìn)行訓(xùn)練,得到了不同的模型,如圖2-14所示。在本系統(tǒng)中需要用到的模型是ssdMobilenetv1模型和faceLandmark68Net模型。以下分別介紹這兩個(gè)模型圖2-14face-api提供的模型=1\*GB2⑴ssdMobilenetv1模型ssdMobilenetv1模型是Face-api中最準(zhǔn)確的人臉檢測(cè)器,它基本上是基于MobileNetV1的卷積神經(jīng)網(wǎng)絡(luò)且在頂層增加了盒預(yù)測(cè)層提高模型的識(shí)別能力,具有良好的檢測(cè)效果。在本系統(tǒng)中利用它來(lái)識(shí)別輸入圖片的人臉以及人臉位置。=2\*GB2⑵faceLandmark68Net模型模型通過(guò)68個(gè)特征點(diǎn)標(biāo)記了人臉的五官位置。借助FaceLandmarks68.positions獲得Array(68)的數(shù)組,這些數(shù)組元素便是68個(gè)特征點(diǎn)。具體的點(diǎn)位的分布如下圖2-15所示,圖2-1568個(gè)特征點(diǎn)分布圖FaceLandmarks68還提供了一些方法用于獲取五官的點(diǎn)位信息,在本系統(tǒng)中利用FaceLandmarks68.getMouth()方法獲取唇部的20個(gè)特征點(diǎn),為后續(xù)的口號(hào)色號(hào)對(duì)比階段做準(zhǔn)備。2.5MVVM框架開發(fā)模式2.5.1前后端分離隨著前端領(lǐng)域技術(shù)的不斷更新與快速發(fā)展,前后端分離的開發(fā)方式被越來(lái)越多開發(fā)人員選擇。前后端分離是:前端只負(fù)責(zé)頁(yè)面開發(fā)與渲染,后端只負(fù)責(zé)后臺(tái)邏輯與接口編寫,各司其職。其中一個(gè)典型的例子就是SPA(單頁(yè)面應(yīng)用)。比如QQ音樂(lè)的網(wǎng)頁(yè)版就是單頁(yè)面應(yīng)用,它的主要特征就是不需要重新加載整個(gè)頁(yè)面去刷新,而是可以局部刷新網(wǎng)頁(yè)。因此加載速度變快,從而優(yōu)化用戶體驗(yàn);再者,節(jié)省了開發(fā)與維護(hù)的成本。從職責(zé)來(lái)劃分,前后端分離之后各自的職責(zé)為:=1\*GB2⑴前端主要負(fù)責(zé):頁(yè)面邏輯、頁(yè)面渲染、UI交互、用戶體驗(yàn)=2\*GB2⑵后端主要負(fù)責(zé):服務(wù)層開發(fā)、處理數(shù)據(jù)、提供接口前后端分離的優(yōu)點(diǎn)=1\*GB2⑴前后端可并行開發(fā)。各司其職,分工明確,提高工作效率。減少了前后端代碼耦合、混雜,提高了開發(fā)的靈活性。=2\*GB2⑵局部性能提升。實(shí)現(xiàn)頁(yè)面加載快速,提升用戶體驗(yàn)=3\*GB2⑶降低維護(hù)成本。2.5.2MVVM框架及其優(yōu)勢(shì)MVVM的全稱是Model-View-ViewModel,可以看作MVC模式(模型層-視圖層-控制層)的升級(jí)版。MVVM架構(gòu)可以分為三層,如圖2-16所示,分別是模型層(model)、視圖層(view)、視圖模型層(viewmodel)。Model層代表數(shù)據(jù)結(jié)構(gòu),在這一層中對(duì)數(shù)據(jù)進(jìn)行操作與修改,一個(gè)功能或者一個(gè)業(yè)務(wù)對(duì)應(yīng)一個(gè)model;view層代表視圖,主要指用戶可以看到并操作的界面,把數(shù)據(jù)模型轉(zhuǎn)化為UI是它的責(zé)任;viewmodel層是MVVM框架的核心,自動(dòng)把model層和view層連接起來(lái)進(jìn)行交互,多個(gè)view也可對(duì)應(yīng)一個(gè)model,讓數(shù)據(jù)變得容易使用和管理。圖2-16MVVM架構(gòu)示意圖2.6Vue.js前端開發(fā)框架隨著時(shí)間的發(fā)展,前端需要承擔(dān)的業(yè)務(wù)壓力越來(lái)越大,也出現(xiàn)了更多復(fù)雜的業(yè)務(wù)需求。前端框架也不斷涌現(xiàn),其中尤雨溪的vue.js框架、谷歌的Angular、Facebook的React稱為前端三大框架。本系統(tǒng)采用的是遵循前面介紹的MVVM模式的前端框架——vue.js框架。Vue.js是一個(gè)漸進(jìn)式的JavaScript框架,靈活輕便對(duì)新手友好,主要注重視圖層,方便與其他現(xiàn)有項(xiàng)目、第三方庫(kù)整合,提高開發(fā)效率。2.7后端技術(shù)2.7.1Node.jsNode.js是一個(gè)基于JavaScript的開源、高性能的運(yùn)行環(huán)境,被廣泛應(yīng)用于服務(wù)器端和網(wǎng)絡(luò)應(yīng)用中[14]。以前瀏覽器就是JavaScript的代碼解析器,因此JavaScript只能在瀏覽器上運(yùn)行,而現(xiàn)在有了node.js的JavaScript不僅能在服務(wù)器上運(yùn)行,還可以實(shí)現(xiàn)文件處理、網(wǎng)絡(luò)通信等功能。Node.js有著其特有的優(yōu)點(diǎn),第一,可以簡(jiǎn)便編寫高性能Web服務(wù);第二,node.js采用異步非阻塞的方式,使得其不同于Java、PHP等多線程處理請(qǐng)求不同,在并發(fā)量上有著更好地表現(xiàn)。2.7.2Express框架Express是一個(gè)基于Node.js平臺(tái)的Web應(yīng)用框架,它使得服務(wù)器開發(fā)更加便捷高效的原因是:通過(guò)封裝中間件機(jī)制以及API。它使用方便,可以快速進(jìn)行開發(fā),生成Express框架的基礎(chǔ)模板只需要一行命令,可以減少代碼量;并且擁有靈活的擴(kuò)展機(jī)制,有著詳細(xì)的API文檔以及簡(jiǎn)單、直觀的API接口。2.8MySQL數(shù)據(jù)庫(kù)MySQL是一個(gè)開放源碼的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)。深受開發(fā)者的歡迎,因?yàn)镸ySQL有著它自己的優(yōu)點(diǎn),如下:=1\*GB2⑴速度快。精簡(jiǎn)少用或不必要的功能,以及高速優(yōu)化類庫(kù)等技術(shù)層面上的優(yōu)化,使得其速度快。=2\*GB2⑵開放性。開源數(shù)據(jù)庫(kù);以及不受限制免費(fèi)使用。=3\*GB2⑶易用性。MySQL操作簡(jiǎn)單容易上手,可以高效地完成任務(wù)。。2.9本章小結(jié)本章首先是介紹了在深度學(xué)習(xí)中常用于圖像處理的卷積神經(jīng)網(wǎng)絡(luò),并詳細(xì)介紹了其網(wǎng)絡(luò)結(jié)構(gòu),以及輕量化的卷積神經(jīng)模型;其次,本系統(tǒng)劃分了三個(gè)核心模塊,分別介紹了這三個(gè)模塊所用的原理;隨后介紹了本系統(tǒng)所用的api以及所用的模型;然后再介紹了MVVM模式引出前后端分離的好處以及本系統(tǒng)所用的前端系統(tǒng),基于MVVM模式的vue.js;最后介紹了后端所用的技術(shù)以及本系統(tǒng)所用的數(shù)據(jù)庫(kù)。第三章系統(tǒng)需求分析與數(shù)據(jù)庫(kù)設(shè)計(jì)3.1系統(tǒng)需求概述隨著人工智能的興起,將人工智能與人類生活需要連接起來(lái),可以讓人工智能更好地服務(wù)于人類。本系統(tǒng)真是基于此進(jìn)行研發(fā),結(jié)合生活需要,以口紅色號(hào)作為切入點(diǎn),制作一款口紅識(shí)別器,此款口紅識(shí)別器的作用在于:對(duì)女生而言,看劇再也不用辛苦地去扒女主角的口紅色號(hào)了,只需要截出一張圖就可以輕松識(shí)別口紅色號(hào)。對(duì)于男生而言,再也不用擔(dān)心給女朋友買口紅會(huì)踩雷了。隨著國(guó)家經(jīng)濟(jì)的發(fā)展,化妝品行業(yè)的盛行,此款系統(tǒng)具有一定的市場(chǎng)價(jià)值,并且可以滿足用戶的一定需求。3.2功能需求分析口紅色號(hào)識(shí)別系統(tǒng)主要流程:1、登錄系統(tǒng)界面。2、輸入需要識(shí)別的圖片。3、程序后臺(tái)檢測(cè)圖片人臉位置,標(biāo)記出唇部并提取出顏色與色庫(kù)進(jìn)行對(duì)比,并得出結(jié)果。4、返回結(jié)果。軟件使用人主要為廣大群眾。以下是口紅色號(hào)識(shí)別系統(tǒng)用例圖,如圖3-1所示圖3-1系統(tǒng)用例圖下面對(duì)這些用例進(jìn)行分析:表3-1登錄用例用例名稱:用戶登錄簡(jiǎn)要說(shuō)明:用戶進(jìn)入口紅識(shí)別系統(tǒng)的第一步流程。基本事件流:1.用戶進(jìn)入登錄頁(yè)面;2.輸入用戶名以及用戶密碼;3.點(diǎn)擊登錄按鈕;4.進(jìn)入主頁(yè)面;5.用例終止。表3-2口紅識(shí)別用例用例名稱:口紅識(shí)別簡(jiǎn)要說(shuō)明:用戶進(jìn)入系統(tǒng)之后的主要內(nèi)容基本事件流:1.用戶登錄成功之后進(jìn)入該頁(yè)面;2.點(diǎn)擊輸入圖片按鈕上傳圖片;3.進(jìn)行口紅色號(hào)識(shí)別;4.返回口紅色號(hào);5.用例終止。表3-3注冊(cè)用例用例名稱:用戶注冊(cè)簡(jiǎn)要說(shuō)明:用戶進(jìn)入可進(jìn)入該頁(yè)面進(jìn)行注冊(cè)基本事件流:1.用戶點(diǎn)擊注冊(cè)按鈕;2.進(jìn)入注冊(cè)頁(yè)面;3.填寫個(gè)人信息;4.點(diǎn)擊確定;5.用例終止。3.3數(shù)據(jù)庫(kù)設(shè)計(jì)本系統(tǒng)采用MySQL數(shù)據(jù)庫(kù),因其體積小且相較于其他大型數(shù)據(jù)庫(kù)易于操作并且速度快。根據(jù)系統(tǒng)的需要合理規(guī)劃數(shù)據(jù)庫(kù),使得系統(tǒng)可以穩(wěn)定高效地運(yùn)行。3.3.1數(shù)據(jù)建模根據(jù)系統(tǒng)需要,用戶注冊(cè)時(shí)會(huì)輸入用戶的基本信息,具體包括:用戶名、賬戶名、密碼、郵箱、電話、身份證號(hào)碼、生日以及性別。具體的描述如圖3-2所示:圖3-2用戶信息E-R圖3.3.2數(shù)據(jù)表結(jié)構(gòu)本系統(tǒng)主要有一個(gè)數(shù)據(jù)表user,用來(lái)存儲(chǔ)用戶的信息。uer表對(duì)應(yīng)的數(shù)據(jù)字典如圖3-3所示:圖3-3user表數(shù)據(jù)字典3.4本章小結(jié)本章對(duì)該系統(tǒng)進(jìn)行了需求分析,并且簡(jiǎn)要地相應(yīng)的功能進(jìn)行了說(shuō)明,同時(shí)闡述了系統(tǒng)的數(shù)據(jù)庫(kù)物理表結(jié)構(gòu),為后續(xù)系統(tǒng)的實(shí)現(xiàn)做好準(zhǔn)備。第四章系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)4.1系統(tǒng)的總體設(shè)計(jì)本系統(tǒng)遵循便捷、易于使用的原則,使得用戶不需要特別的專業(yè)技能就可以使用。將系統(tǒng)分為三個(gè)功能模塊,分別是登錄模塊、識(shí)別模塊、注冊(cè)模塊,再根據(jù)這三個(gè)模塊再進(jìn)行設(shè)計(jì),層次分解、自頂向下完成整個(gè)系統(tǒng)的設(shè)計(jì)。本系統(tǒng)的整體設(shè)計(jì)圖如下圖4-1所示圖4-1系統(tǒng)整體設(shè)計(jì)圖用戶的使用步驟如下:=1\*Arabic1、在系統(tǒng)內(nèi)注冊(cè)賬戶=2\*Arabic2、登錄系統(tǒng)3、上傳需要進(jìn)行口紅色號(hào)識(shí)別的圖片4、等待識(shí)別結(jié)果返回4.2系統(tǒng)功能模塊設(shè)計(jì)與實(shí)現(xiàn)根據(jù)上文所分的三個(gè)功能模塊進(jìn)行設(shè)計(jì)=1\*GB2⑴登錄模塊:用戶進(jìn)入系統(tǒng)主頁(yè)面,會(huì)有一個(gè)登錄框,用戶需準(zhǔn)確填寫賬號(hào)、密碼以及驗(yàn)證碼才能登錄系統(tǒng)。用戶只有在登錄之后才能使用后續(xù)內(nèi)容。登錄功能的簡(jiǎn)略頁(yè)面設(shè)計(jì)圖如下圖4-2所示圖4-2登錄頁(yè)面設(shè)計(jì)圖登錄模塊具體的頁(yè)面實(shí)現(xiàn)如下圖4-3所示:圖4-3登錄頁(yè)面實(shí)現(xiàn)圖=2\*GB2⑵識(shí)別模塊用戶成功登錄之后進(jìn)入口紅識(shí)別模塊,在該模塊,用戶需點(diǎn)擊“圖片上傳”按鈕對(duì)圖片進(jìn)行上傳,隨后等待結(jié)果的返回。識(shí)別功能模塊的簡(jiǎn)略頁(yè)面設(shè)計(jì)圖如下圖4-4所示:圖4-4識(shí)別頁(yè)面設(shè)計(jì)圖識(shí)別模塊具體的頁(yè)面實(shí)現(xiàn)如下圖4-5所示:圖4-5識(shí)別頁(yè)面實(shí)現(xiàn)圖=3\*GB2⑶注冊(cè)模塊用戶想登錄該系統(tǒng)必須先進(jìn)行注冊(cè),在注冊(cè)頁(yè)面填寫注冊(cè)信息之后方可得到一個(gè)賬戶,在登陸頁(yè)面可以進(jìn)行登錄,注冊(cè)功能模塊的簡(jiǎn)略設(shè)計(jì)圖如下圖4-6所示:圖4-6注冊(cè)頁(yè)面設(shè)計(jì)圖注冊(cè)模塊具體的頁(yè)面實(shí)現(xiàn)如下圖4-7所示:圖4-7注冊(cè)頁(yè)面實(shí)現(xiàn)圖4.3本章小結(jié)本章從系統(tǒng)的總體設(shè)計(jì)開始引入,隨后將系統(tǒng)的功能分解成三個(gè)模塊進(jìn)行設(shè)計(jì),并畫出了粗略的系統(tǒng)設(shè)計(jì)圖,最后對(duì)系統(tǒng)進(jìn)行實(shí)現(xiàn)第五章系統(tǒng)測(cè)試5.1測(cè)試流程系統(tǒng)測(cè)試是開發(fā)系統(tǒng)的最后一步,也是極其重要的一步,它是對(duì)整個(gè)系統(tǒng)的最終審查,是檢測(cè)該系統(tǒng)是否合格的關(guān)鍵。在測(cè)試這一環(huán)節(jié)可以發(fā)現(xiàn)一些系統(tǒng)的漏洞并且及時(shí)改正,對(duì)整個(gè)系統(tǒng)而言十分重要。在本次測(cè)試中,需要測(cè)試的模塊有登錄模塊、識(shí)別模塊與注冊(cè)模塊。主要的內(nèi)容是檢測(cè)這三個(gè)模塊里的功能能否正確實(shí)現(xiàn),具體流程如下=1\*GB2⑴搭建好測(cè)試環(huán)境,對(duì)三個(gè)模塊分別進(jìn)行測(cè)試=2\*GB2⑵記錄下測(cè)試用例的缺陷并解決=3\*GB2⑶完成測(cè)試5.2測(cè)試用例表5-1口紅識(shí)別用例需求功能名稱測(cè)試用例名稱執(zhí)行說(shuō)明執(zhí)行情況是否通過(guò)瀏覽器頁(yè)面啟動(dòng)瀏覽器頁(yè)面啟動(dòng)測(cè)試測(cè)試開發(fā)環(huán)境是否存在問(wèn)題;頁(yè)面是否能正常打開。良好是用戶登錄登錄測(cè)試測(cè)試用戶打開頁(yè)面之后能否進(jìn)行用戶登錄,跳轉(zhuǎn)主頁(yè)面是否流暢;能否登錄成功。良好是口紅識(shí)別口紅識(shí)別測(cè)試測(cè)試是否能正常識(shí)別口紅色號(hào)并給予反饋。良好是用戶注冊(cè)注冊(cè)測(cè)試測(cè)試用戶是否能夠順利注冊(cè)。良好是5.3測(cè)試小結(jié)本次測(cè)試是為了對(duì)基于深度學(xué)習(xí)的口紅識(shí)別器的系統(tǒng)進(jìn)行質(zhì)量檢測(cè)。除了檢驗(yàn)質(zhì)量是否合格之外,也為了從中可以發(fā)現(xiàn)在開發(fā)過(guò)程中沒(méi)有發(fā)現(xiàn)的問(wèn)題從而更好地對(duì)系統(tǒng)進(jìn)行優(yōu)化。本次測(cè)試針對(duì)各個(gè)模塊和功能進(jìn)行了反復(fù)測(cè)試,發(fā)現(xiàn)該系統(tǒng)的整體性能尚可,并且容易上手易于操作,測(cè)試結(jié)果基本達(dá)到了期望。但是在細(xì)節(jié)方面以及前端美化方面還是存在不足。在問(wèn)題發(fā)現(xiàn)之后及時(shí)對(duì)本系統(tǒng)進(jìn)行改進(jìn)。5.4本章小結(jié)本章主要是對(duì)本系統(tǒng)進(jìn)行測(cè)試,通過(guò)測(cè)試檢驗(yàn)系統(tǒng)的質(zhì)量并從中發(fā)現(xiàn)系統(tǒng)的不足給予改進(jìn)。第六章總結(jié)與展望4.1總結(jié)從論文啟動(dòng)至今,歷時(shí)幾個(gè)月,從最開始的迷茫,到后來(lái)一點(diǎn)一點(diǎn)的經(jīng)驗(yàn)累積,并且在老師、同學(xué)的幫助下,最終順利完成了畢業(yè)論文各個(gè)環(huán)節(jié)的工作。本項(xiàng)目最開始的思想是結(jié)合當(dāng)下熱門的技術(shù)與實(shí)際生活聯(lián)系起來(lái)為人們的生活提供便利。人工智能是當(dāng)下的熱點(diǎn),各種人工智能的應(yīng)用也層出不窮,全世界各個(gè)國(guó)家都在致力于發(fā)展人工智能。而之所以會(huì)想要做口紅色號(hào)識(shí)別,是因?yàn)樵谖覈?guó)國(guó)民經(jīng)濟(jì)不斷發(fā)展下,化妝品行業(yè)也越來(lái)越盛行,口紅的銷量首當(dāng)其沖;并且在日常生活看劇或者看圖片中,有時(shí)候總會(huì)看到有人在評(píng)論下方求口紅色號(hào),我就在想,如果有一款自動(dòng)識(shí)別口紅色號(hào)的系統(tǒng),或許就能為生活提供更大的便利。在互聯(lián)網(wǎng)技術(shù)的高速發(fā)展的大環(huán)境下,人工智能的興起為人們的生活提供了極大的便利,并廣泛應(yīng)用于各種實(shí)時(shí)場(chǎng)景,是現(xiàn)代生活必不可少的應(yīng)用技術(shù)。隨著近幾年機(jī)器訓(xùn)練瓶頸的突破以及深度學(xué)習(xí)理論高速發(fā)展,本系統(tǒng)采用的目標(biāo)檢測(cè)算法也得到了越來(lái)越深入的研究,各種檢測(cè)算法如春筍般孕育而出,主要發(fā)展為端到端的單步檢測(cè)器和基于區(qū)域的目標(biāo)檢測(cè)器,各種算法的速度和精確度都得到了顯著的提升??偟膩?lái)說(shuō),本文主要研究工作如下=1
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 社會(huì)保險(xiǎn)管理與法律規(guī)制
- 節(jié)能減排部管理之道
- 地下電纜溝挖機(jī)租賃合同協(xié)議書
- 2025公路陸運(yùn)貨物運(yùn)輸合同模板
- 教育機(jī)構(gòu)行政人員聘用協(xié)議
- 川省水利事業(yè)單位聘用合同條款
- 收款銷售操作規(guī)程
- 道路改造工程監(jiān)督意見書
- 企業(yè)銷售合同管理準(zhǔn)則
- 建筑工程公司員工招聘合同樣本
- 2024-2030年中國(guó)室內(nèi)滑雪場(chǎng)市場(chǎng)需求預(yù)測(cè)及發(fā)展規(guī)劃研究報(bào)告
- 期末綜合素養(yǎng)評(píng)價(jià)一(試題)-2024-2025學(xué)年三年級(jí)上冊(cè)科學(xué)教科版
- 施工工地汛期防洪防汛應(yīng)急預(yù)案(9篇)
- 動(dòng)車運(yùn)用所施工組織設(shè)計(jì)
- 新聞媒體編輯與發(fā)布規(guī)范流程
- 03S702鋼筋混凝土化糞池-標(biāo)準(zhǔn)圖集
- 耳鼻咽喉-頭頸外科:緒論
- 統(tǒng)編版 七年級(jí)上冊(cè) 第五單元 活動(dòng)·探究 任務(wù)一 體會(huì)人與動(dòng)物的關(guān)系 20 狼(教學(xué)設(shè)計(jì))
- 特朗普第二任總統(tǒng)任期的國(guó)際經(jīng)濟(jì)影響-2024-10-宏觀大勢(shì)
- 2024年高中語(yǔ)文課內(nèi)文言文復(fù)習(xí)《項(xiàng)脊軒志》課后練習(xí)、探究性閱讀含答案解析翻譯
- 汽車機(jī)械制圖(第二版)AB卷模擬試卷及答案2套
評(píng)論
0/150
提交評(píng)論