




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