版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
摘要基于深度學習的手勢識別處理計算機視覺領(lǐng)域中的關(guān)鍵技術(shù)之一,深度學習技術(shù)在近20年得到了快速的發(fā)展,其中在2014年就提出了VGG和GoogleNet這兩大高精度高準確率的網(wǎng)絡模型。手勢識別是在圖像中捕抓到手部關(guān)鍵信息再通過手勢給機器傳達信息。手勢識別大多數(shù)情況下都是在實時視頻作為應用環(huán)境,這就對模型有著實時處理和準確性這兩個基本要求。隨著科技的發(fā)展和5G時代的到來,身處于深度學習領(lǐng)域的手勢識別技術(shù)越來越完善,在技術(shù)層面上相對現(xiàn)在一定會有了很大的進步,但同時也面臨更加深層的困難,例如各個種群的人類膚色、背景復雜度、光照條件、多人情況下的手部重疊這類打擊性很大的干預因素,是每個開發(fā)手勢識別技術(shù)人員都會面臨的難題。本次論文將以近年來較為流行的深度學習領(lǐng)域中的卷積神經(jīng)網(wǎng)絡等等神經(jīng)算法展開,將獲取到的手部信息關(guān)鍵點給予邏輯處理得到準確無誤的信息。關(guān)鍵詞:手勢識別深度學習卷積神經(jīng)網(wǎng)絡手部關(guān)鍵信息點AbstractOneofthekeytechnologiesinthefieldofcomputervisioningesturerecognitionprocessingbasedondeeplearning,Deeplearningtechnologyhasdevelopedrapidlyinthepast20years.Amongthem,thetwohigh-precisionandhigh-accuracynetworkmodelsofVGGandGoogleNetwereproposedin2014.Gesturerecognitionistocapturethekeyinformationofthehandintheimageandthenconveytheinformationtothemachinethroughthegesture.Gesturerecognitionisinmostcasesusingreal-timevideoastheapplicationenvironment,whichhastwobasicrequirementsforreal-timeprocessingandaccuracyofthemodel.Withthedevelopmentoftechnologyandtheadventofthe5Gera,thegesturerecognitiontechnologyinthefieldofdeeplearningisbecomingmoreandmoreperfect.Theremustbealotofprogressonthetechnicallevelcomparedwiththepresent,butitalsofacesdeeperdifficulties,suchasThestrikinginterventionfactorssuchashumanskincolor,backgroundcomplexity,lightingconditions,andhandoverlapinthecaseofmultiplepeoplearechallengesfacedbyeveryonewhodevelopsgesturerecognitiontechnology.Thispaperwillbedevelopedwithneuralalgorithmssuchasconvolutionalneuralnetworks,whicharemorepopularinthefieldofdeeplearninginrecentyears,andthekeypointsofthehandinformationobtainedwillbelogicallyprocessedtoobtainaccurateinformation.
.Keywords:gesturerecognitiondeeplearningconvolutionalneuralnetworkkeyinformationpointsofhand目錄第一章緒論 第一章緒論1.1課堂背景及研究目的和意義 從2000年以來深度學習理論和技術(shù)逐漸完善,人工智能中的手勢識別這項技術(shù)從被提出開始就一直受到來自不同職業(yè)群體的廣泛關(guān)注。其中的商業(yè)價值更是讓人垂涎欲滴,以至于久久霸占著大眾的視野同時也一直備受科研人員的關(guān)注。手勢識別之所以一直熱度不減。這主要得益于兩個原因,第一個原因是理論和科技已經(jīng)能足夠支撐起手勢識別這個項目。第二個原因是手勢交流是除了語言交流外第二種便捷交流的方式,以至于科普由手勢識別衍生的產(chǎn)品的困難程度遠遠低于同為人工智能的其他技術(shù)產(chǎn)品。現(xiàn)如今該技術(shù)隨著時代的發(fā)展已經(jīng)越來越成熟,已經(jīng)開始運用在廣泛的領(lǐng)域中有汽車行業(yè)、消費電子領(lǐng)域、運輸部門、游戲行業(yè)、智能手機、家庭自動化等等。其中在手機領(lǐng)域中的華為已將該手勢識別技術(shù)帶入Mate30系列手機當中,可見其商業(yè)潛力!但是手勢識別這項技術(shù)一直有一個或多或少會困擾開發(fā)人員的難點,因為無接觸手勢識別技術(shù)是主要依靠光學等進行手勢探測,當光照程度不良好時、背景復雜時或像素值于手部像素接近時、手部被物品遮擋時等等都會給模型造成相當大的干擾。盡管如此,這些難點都可以去避免和修復。優(yōu)化數(shù)據(jù)和網(wǎng)絡等處理,例如進行灰度化和色域轉(zhuǎn)換、膚色切割、閾值化、手部關(guān)鍵信息點、判斷邏輯化、神經(jīng)網(wǎng)絡層進行調(diào)參和驗證。對設備進行升級,例如給攝像頭補光、使用RPG高清攝像頭等等。都可以達到理想的效果。以至于人們依然十分樂意從這個研究方向進行切入。本次實驗我也會利用到上述講到的理論技術(shù)進行研究達到在各種環(huán)境下的最優(yōu)化效果。最后5G時代的來臨一定是屬于人工智能大樹下手勢識別的一股春風,其商業(yè)用途之廣、惠及人群之多不言而喻。其實這句話早已被驗證,而我相信凡是一項技術(shù)被越來越多的人關(guān)注時,無論他是處于何種目的所驅(qū)動,都說明了一點它是當下人們最需要的一項功能系統(tǒng)。1.2手勢識別研究現(xiàn)狀隨著科技和經(jīng)濟的發(fā)展,使用計算機的用戶還是廣度都有了很大的提升。屬于人機交互領(lǐng)域的手勢識別也在這20年間逐漸走向了大眾的視野。在這里我將從實現(xiàn)手勢識別的技術(shù)和前人所研究的成果進行一個概況。手勢識別在系統(tǒng)中主要包括三個基本階段檢測,跟蹤和識別,就目前來看實現(xiàn)手勢識別最主流的技術(shù)是利用深度學習的卷積神經(jīng)網(wǎng)絡對目的數(shù)據(jù)進行關(guān)鍵信息提取以及訓練。但在這項技術(shù)的早期是難以做到讓人滿意的效果,主要的原因是當時的技術(shù)處于起步階段和計算機綜合能力有限所限制的。隨著時代的發(fā)展,理論越發(fā)完善的同時和計算機的綜合能力有著顯著提升,在2014年就提出了GoogleNet和Vgg這種深層次和高參數(shù)量特性的網(wǎng)絡,而這種網(wǎng)絡帶來的就是高準確性。而這一切在深度學習領(lǐng)域種取得的成功主要原因是這項技術(shù)引起了眾多廣泛的關(guān)注。在2002年Bretzner[1]等人提出的使用RGB攝像頭對手部進行多尺寸特征收集。2010年沙亮[2]等人研究了基于無標記全手勢視覺的人機交互技術(shù),并提供了相應的解決方案。2011年微軟公司[3]公布了Kinect,使用有紅外線攝像頭對手勢進行識別和跟蹤。2015年江南大學的姜克[4]等人基于Kinect的研究實現(xiàn)了3D手勢識別2015年,谷歌ATAP部門[5]公布了ProjectSoli,它是采用了微小型雷達來識別手勢。手勢識別這項技術(shù)的進步得益于的深度學習的發(fā)展,正所謂工欲善其事必先利其器。而輸入的數(shù)據(jù)也由最初的2D逐漸變?yōu)?D、準確度和實時性也在逐漸升高。放眼看去,手勢識別隨著時間的向前、科技的發(fā)展,一路推陳出新。1.3主要研究內(nèi)容及論文結(jié)構(gòu)本文共分為五章,具體結(jié)構(gòu)如下:緒論。主要介紹在現(xiàn)階段手勢識別的研究背景、目的和意義,研究現(xiàn)狀、社會價值,并介紹本文的組織結(jié)構(gòu)膚色分割,主要解釋YCrCb的作用和針對正常黃種人的膚色的范圍進行分割。卷積神經(jīng)網(wǎng)絡基礎(chǔ)理論[6]。介紹了卷積神經(jīng)網(wǎng)絡主要組成部分的理論知識,簡要闡明卷積神經(jīng)網(wǎng)絡的相關(guān)算法,并在手勢識別中起到的作用。GoogleNet在手勢識別上的應用,這一節(jié)將主要關(guān)注模型和實現(xiàn)手勢識別的細節(jié),并為了清晰整個過程會繪畫出流程圖??偨Y(jié),在本章中對本次論文做出總結(jié)和引用的其他論文,并提出存在的問題和改進的方向,且希望日后能對其中做出完善。此外對我有過幫助的人將表示感謝。第二章膚色切割2.1YCrCb顏色空間其實預處理對手部進行膚色切割時可以用的色域不止一種,相信有所了解的人也知道這一點,本次論文將使用YCrCb[7]空間。一般的圖像都是基于RGB空間的,在RGB空間里皮膚會受亮度影響相當大,當亮度足夠好時膚色可以在正常的范圍內(nèi),但是亮度低時膚色就無法呈現(xiàn)出來。因此我們需要將膚色和亮度分離開來,也就是說圖像在此空間時膚色點是離散的點。中間嵌有很多的非膚色,這為膚色區(qū)域標定帶來了難題。如果把RGB轉(zhuǎn)為YCrCb空間的話,該問題就可以較為輕松的解決掉。YCrCb又稱為YUV,之所以使用該色域空間是因為它能將亮度和色度分離開來,這也是RGB空間難以處理的一點。圖2-1梯度下降示例圖上圖2-1中Y表示為亮度(Luminance或Luma),通俗的講就是灰階值。而cr和cb表示的則是色度(Chrominance或Chroma),作用是描述影像色彩及飽和度,用于指定像素的色彩。其中,cr和cb它們兩個受亮度的影響很小。因此這就是我選用YCrCb而不是使用其他顏色空間進行膚色檢測的依據(jù),此外正常的黃種人的Cr分量大約在140~175之間,而Cb分量大約在100~120之間。這也就為后續(xù)的閾值化提供了很好的切入點。當然我這種做法也有很明顯的缺點,因為我們是將圖片的RGB顏色空間轉(zhuǎn)換為YCrCb空間,如果圖片在RGB空間時由于受到了各種因素的影響導致膚色過于差勁,那么將其轉(zhuǎn)換為YCrCb空間也是無用之舉。所以這種算法還是無法完全避光照的強度等因素產(chǎn)生的影響,因此不算特別完美的算法。當然如果該系統(tǒng)設備將來會應用到特殊的環(huán)境下的話則需要加上濾波操作,例如中值濾波等等,效果會更好。2.2圖像閾值化在符合某種人為定義的規(guī)則之下的像素點便稱之為像素點分布規(guī)律。圖像閾值化就是利用了圖像素點分布規(guī)律進行切割的。所謂的閾值化往簡單方向說就是劃分成黑和白,通過設定一個標準如果該像素點符合這個標準則設置為白或不變,如果像素點不符合這個標準就設置為黑,這就是本次閾值化的大致原理。設f(i,j)表示圖像中的像素值區(qū)間[i,j],而i和j代表著正常亞洲人的像素值。當像素值落在[i,j]之間就設置為255(白色),如果不在此區(qū)間設置為0(黑色)對圖像進行像素點分割大致可以分為三步。第一步,在實現(xiàn)閾值化之前先讀取圖片,并保存在一個變量名為frame中,frame變量的類型為numpy.ndarray。這一步的目的是獲取整張圖像的像素值。為后續(xù)判斷和修改提供原材料。第二步,利用opencv庫中cvtColor函數(shù)將frame變量將RGB空間轉(zhuǎn)換成YCrCb空間。并單獨取出Cr和Cb兩個變量出來。第三步,我沒有使用opencv庫中的內(nèi)置閾值化函數(shù),而是自己利用for7if對該圖像進行處邏輯理,當Cr變量處于133和175區(qū)間之間并且Cb變量處于77和127區(qū)間之間時像素點,其值不變(在此區(qū)間的像素值是正常亞洲人膚色的像素值,保留不變),而不在此區(qū)間的像素值統(tǒng)一設置為0(其效果為黑色)。效果如下(圖2-2):圖2-2閾值化效果圖經(jīng)過閾值化處理后的圖像僅保留了手部原始圖像且其余背景均大致被剔除。這一步的主要目的是將不必要的圖像噪音點盡可能的除掉,為后續(xù)處理提供最干凈的數(shù)據(jù)。當然將圖像數(shù)據(jù)交付給神經(jīng)層時還需要將圖像灰度化,把RGB圖像的三層變?yōu)榛叶然瘍蓪?,以減少神經(jīng)層不必要的計算壓力。但是這樣做也不能完全不免無噪音的情況,因為黑色的像素點它其實也是一個噪音,只不過被我們統(tǒng)一化了而已。第三章神經(jīng)網(wǎng)絡理論3.1向前傳播一個剛剛建立好的神經(jīng)網(wǎng)絡,在還沒輸入數(shù)據(jù)去運行訓練時,各個神經(jīng)元之間的參數(shù)是隨機的,前向傳播過程,向輸入層輸入特征向量時,經(jīng)過權(quán)重參數(shù)w和偏置參數(shù)b的處理后再經(jīng)過一個激活函數(shù)處理得到中間隱含層1,同理再經(jīng)過第二個參數(shù)處理和激活函數(shù)得到中間隱含層2,依次類推。最后通過輸出處理得到輸出的過程。圖3-1前向傳播示意圖卷積神經(jīng)網(wǎng)絡的前向傳播需要三個信息,其一是卷積核提取的特征向量,其二是神經(jīng)元的連接關(guān)系(包含了卷積核、池化層和神經(jīng)元與神經(jīng)元之間的關(guān)系等等),其三是神經(jīng)網(wǎng)絡各神經(jīng)元的參數(shù),其中包括權(quán)重w和偏置b。3.2向梯度下降和方向傳播算法在說后向傳播之前有必要的先講一下梯度下降,因為梯度下降(gradientdescent)和反向傳播就像連體嬰兒一樣缺一不可的。在機器學習中應用十分的廣泛,它的主要目的是通過迭代找到目標函數(shù)的最小值,或者收斂到極小值。3.2.1梯度下降算法梯度下降算法的基本思想可以類比為一個人在山頂?shù)缴降椎倪^程。首先,我們有一個可微分的函數(shù)。這個函數(shù)就代表著一座山。我們的目標就是找到這個函數(shù)的最小值,也就是山底??梢韵胂笠幌拢话愣宰羁煜律降姆绞骄褪钦业疆斍拔恢米疃盖偷姆较虿⒀刂@個方向下去。對于函數(shù)而言有三種策略去實現(xiàn)。方法1:隨機尋找(不太實用),類似暴力算法一樣用許多參數(shù)一一帶入,然后從里面選一個損失函數(shù)做小的參數(shù)組,這種做法費時費力且效果不理想。方法2:隨機局部搜索,在現(xiàn)有的參數(shù)基礎(chǔ)上,隨機搜索一下周邊的參數(shù)嗎,查看有沒有比現(xiàn)在更好的參數(shù),然后用新的參數(shù)替換現(xiàn)有的參數(shù),不斷迭代。方法3:梯度下降,通俗的講就是計算可微函數(shù)極小值(無條件約束),找到最陡峭的方向從高點逐一小步下降。注意如果每一次的步長如果過大則會錯過最陡峭的方向甚至最佳點,但步長過小則會頻繁計算去尋找下降的方向會造成耗時過長。所以需要合理的調(diào)整參數(shù)才能既保證不偏離方向的去尋找最佳點且耗時相對較短。圖3-2梯度下降示例圖假設,y軸表示為損失函數(shù)的值而x軸表示取值。梯度下降算法的目的是將參數(shù)向右側(cè)移動使圓點向下降落使得損失最小。而參數(shù)的梯度可以通過求偏導的方式計算。參數(shù)X,其梯度公式為3.3,再確定一個學習率(步長)n。那么就可以實現(xiàn)參數(shù)梯度下降(公式3.4)從而求出損失的最小值。 (3.3) (3.4)例如:損失函數(shù)為3.5,那么參數(shù)x的更新公式為如圖3-6。假設步長為0.3且初始值為5,那么優(yōu)化過程為表3-7所示。 (3.5) (3.6)表3-7梯度下降優(yōu)化過程次數(shù)當前值梯度*學習率更新后參數(shù)值152*5*0.3=35-3=2222*2*0.3=1.22-1.2=0.830.82*0.8*0.3=0.480.8-0.48=0.3240.322*0.32*0.3=0.1920.32-0.192=0.12850.1282*0.128*0.3=0.07680.128-0.0768=0.05123.2.2反向傳播算法根據(jù)前面我們介紹了梯度下降算法,但是在實際的開發(fā)中往往是面對海量的數(shù)據(jù),如果沒有一種合理的機制去快速利用這些數(shù)據(jù)實現(xiàn)梯度下降算法的話,那么這個開發(fā)的成本是相當昂貴的。在20世紀中后期便提出了反向傳播算法來為此解決梯度下降算法的問題。反向傳播,通俗的講它是一個神經(jīng)網(wǎng)絡調(diào)整誤差并修正的學習過程。在機器學習中會反復的執(zhí)行正向傳播和反向傳播這個過程。執(zhí)行的順序為先正向后反向。在神經(jīng)網(wǎng)絡運行時正向傳播在輸入層接收到數(shù)據(jù)并逐層傳遞(其中就包含了隱含層),最終由輸出層輸出結(jié)果。如果輸出層輸出的結(jié)果與預期不一致則會進入反向傳播,對各層的權(quán)值參數(shù)等進行修改使得與預期期望值之間的誤差最小化。然后接著正向傳播,以此類推。圖3-8一次正向傳播如圖3-8所示,向x神經(jīng)元輸入-2、y神經(jīng)元輸入5和z神經(jīng)元輸入-4,最終整個網(wǎng)絡的輸出為-12。那么假如目標值為-11呢?這時就需要方向傳播進行修成。計算誤差為實際輸出值減去目標值,接著計算出圖3-8中的x、y、z的偏導數(shù),如3.9、3.10、3.11結(jié)果所示 (3.9) (3.10) (3.11)假設設置為1,就可以求出。然后就更新x、y和z的值(如公式3.12、3.13、3.14所示)。 (3.12) (3.13) (3.14)3.3GoogleInceptionNet網(wǎng)絡結(jié)構(gòu)在說明本次使用的模型之前,有必要先介紹一下GoogleInceptionNet網(wǎng)絡(也可稱為GoogleNet)。GoogleInceptionNet網(wǎng)絡模型的出現(xiàn)是在2014年的ILSVRC比賽中,有趣的是同時期也出現(xiàn)了VGG網(wǎng)絡模型,但本文主角不是VGG也就不過多討論。GoogleInceptionNet網(wǎng)絡的創(chuàng)新是屬于結(jié)構(gòu)體系上的創(chuàng)新。縱觀前三個版本的模型結(jié)構(gòu),最主要的改動有兩點,第一點在Inceptionv1中摒棄了全連接網(wǎng)絡層改而使用全局平均池化層來代替。第二點在Inceptionv3中分別對卷積層和池化層進行了很大的改動,其中對大卷積核分解成多個小卷積核、池化層和卷積層改為并聯(lián)方式的結(jié)構(gòu)。圖3-15Inceptionv3結(jié)構(gòu)圖這一系列的改動其最直接的效果是準確率和錯誤率分別有了很明顯的提升和降低。此外在GoogleInceptionNet網(wǎng)絡模型中給我們最大的特點是它在控制計算量和參數(shù)量的同時有效的提高網(wǎng)絡的性能。因此在內(nèi)存和計算機計算能力都有限的情況下,選擇GoogleInceptionNet是明智地。況且由于計算量和參數(shù)量的降低在實時性的性能上也很使我鐘意。而在本次使用的模型結(jié)構(gòu)是基于GoogleNet來構(gòu)建的如3-5圖[8]所示。圖3-16模型結(jié)構(gòu)在Conv-M模塊是包含著兩個結(jié)構(gòu)Inception-v3[9]、反褶積和ReLU。Inception-v3結(jié)構(gòu)。該結(jié)構(gòu)的特點是增加了模型的寬度和深度,雖然在3-5圖中由于省略了很多內(nèi)部細節(jié)不能很好的直觀感受。大卷積核被分解成多個小卷積核。比如7*7的卷積核拆分成7*1卷積核核1*7卷積核,或者將5*5卷積核拆分成兩個3*3的卷積核。這樣做的結(jié)果,一方面因為卷積數(shù)目的增加導致獲取的特征數(shù)據(jù)信息有所增多,另一方面模型的參數(shù)有所減少(5*5的參數(shù)為25個而3*3核和3*3核的參數(shù)和為18個,降低了大約30%。)。但是該層在面對陰影等雜音時卷積核很有可能也會照樣采集導致特征數(shù)據(jù)信息中會有雜音[10],所有為了避免過度采集使用了反褶積[11]進行一些反補機制,特別是對于小規(guī)模和中等規(guī)模的卷積核的問題上采用的較多。此外傳統(tǒng)的卷積層和池化層串聯(lián)的方式也進行了革新改為并聯(lián)方式,極大的緩解了表達瓶頸使特征數(shù)據(jù)的卷積處理和池化處理都單獨分開,很大程度上降低了池化層的運算量且更重要的是將數(shù)據(jù)特征的表達能力發(fā)揮的淋漓盡致。需要注意的是卷積層和池化層生成的特征數(shù)據(jù)的尺寸需要一致,以至于后續(xù)處理時能夠合并將數(shù)據(jù)交給下一層網(wǎng)絡。為了增加模型非線性能力,還包含著relu激活函數(shù),對非對稱性結(jié)構(gòu)的數(shù)據(jù)具有處理能力。linear結(jié)構(gòu)是輔助分類器。網(wǎng)絡的深度相對較大,為了以有效的方式將梯度傳播給所有神經(jīng)層的能力是值得我們關(guān)注的。一個有趣的發(fā)現(xiàn)當網(wǎng)絡層處于中間這段的時候產(chǎn)生的特征數(shù)據(jù)信息是非常有識別力的。增加輔助分類器linear是希望模型在較低層就有識別的作用。這些輔助分類器的防止形式一般在Inception(4a)和(4d)模塊輸出之上。在整個訓練期間它們產(chǎn)生的損失都會疊在在一起被作為總損失(輔助分類器的損失加權(quán)值一般為0.3)。在該模型的結(jié)尾處也遵循了GoogLeNet的基本理念,拋棄了全連接層。這也是GoogLeNet極具惹人注目的特色。在傳統(tǒng)的卷積網(wǎng)絡中,往往會加上全連接層。但在數(shù)據(jù)集龐大的實驗中這樣的做法反而弊大于利。參數(shù)量呈現(xiàn)爆炸時增長,例如輸入100*100尺寸的數(shù)據(jù),假設輸入層中有100*100個節(jié)點,那么第一個隱含層有100節(jié)點那么在該層中含有的參數(shù)為(100*100+1)*100=1百萬個參數(shù)??梢韵胂蠛罄m(xù)的全連接層參數(shù)會是一個怎樣的數(shù)量級。這對于計算機來說是一個很大的負擔。就拿圖片數(shù)據(jù)來說往往具有空間性,而當這些數(shù)據(jù)進入到全連接層后會直接將這些數(shù)據(jù)變?yōu)?維的數(shù)據(jù)形式。這很大程度上摧毀了數(shù)據(jù)的表達能力。由于全連接層給計算機帶的負擔過于巨大,且對數(shù)據(jù)的損壞程度顯著。一般很難在CNN網(wǎng)絡中有多層全連接網(wǎng)絡,也就很難弄成一個深層次全連接網(wǎng)絡,限制了模型的表達能力。在GoogLeNet網(wǎng)絡中拋棄了全連接網(wǎng)絡。在代替的方法中用AveragePool池化層代替了,是為了保證特征數(shù)據(jù)進入softmax分類器之前,特征數(shù)據(jù)依然保留著最初的空間性(不被粗魯?shù)膲撼梢痪S數(shù)據(jù)形式),最后進行分類。所以GoogleNet網(wǎng)絡模型在面對龐大的數(shù)據(jù)集時,控制計算量和參數(shù)量的同時也獲得了非常好的性能,是一個非常優(yōu)秀且實用的模型。第四章GoogLeNet手勢識別應用無論在實時視頻中還是已經(jīng)錄制好的視頻中,往往都是先對每一幀圖片都進行了手掌檢測并實現(xiàn)跟蹤,但是在現(xiàn)實情況中我們會常常遇到兩大類難點。第一類,每一幀圖片中存在未知數(shù)量的手部,我們到底需要確定哪一個手部為數(shù)據(jù)的基準呢。第二類,手部經(jīng)常會有自我遮擋或相互遮擋(例如手指的彎曲)或物體遮擋(手因抓住物體而被遮擋)等等,使得手部的信息有所殘缺。通用的解決方法主要由手部跟蹤(Handtracking)和手掌檢測(Palmdetection)兩個組成,手部跟蹤器對視頻中的每一幀圖片進行邊界框檢測對人體手部實時跟蹤,再對邊界框中的手掌進行手掌檢測并描繪關(guān)鍵點。因此在后續(xù)的處理識別功能時僅僅對信息關(guān)鍵點進行操作即可。4.1算法實現(xiàn)4.1.1實現(xiàn)步驟1、導入訓練有素的GoogleNet的模型,使用手部圖像數(shù)據(jù)進行訓練,訓練出合乎理想的手勢模型。由于此數(shù)據(jù)集是用48個視頻中每30幀截取下來,用720*1280的尺寸和jpg格式將這些海量數(shù)據(jù)保存下來,將近20000張,因此礙于數(shù)據(jù)龐大,在這里先展示一部分數(shù)據(jù)。圖4-1數(shù)據(jù)集展示再將這些數(shù)據(jù)投給一句設置好的GoogleNet網(wǎng)絡classifier.caffemodel和type_classifier.caffemodel模型,訓練出hand_landmark.tflite手部追蹤器和palm_detection_without_custom_op.tflite手掌檢測器。由于這一過程已被官方人員所實現(xiàn),接下來我將著重講解怎么使用。此外為了對比一下性能,我將在這里另外使用Vgg19和LeNet網(wǎng)絡模型進行對同樣的數(shù)據(jù)進行訓練和測試。實驗過程將會使用訓練準確率、測試準確率和訓練時間這三個標準來進行對比。表4-2性能比較模型訓練集準確率測試集準確率訓練時間GoogLeNet100%94.4%38minVgg模型100%91.3%47minLeNet模型92.3%84.3%26min如表4-2所示,可以看出在訓練集準確率上其實三個模型都相差不多,尤其是GoogleNet和Vgg這兩個網(wǎng)絡最為接近,在訓練集準確率上都達到了100%,但是在測試集準確率上GoogleNet比Vgg高3.1%。單從準確率這一方面的數(shù)據(jù)來看,可以體現(xiàn)出GoogleNet的泛化性會來的更好。而LeNet是比較舊式的卷積網(wǎng)絡,在綜合能力上比不上前兩個網(wǎng)絡模型屬于意料之中。最后從訓練時間來看由于Vgg的包含全連接層,而全連接層帶來的問題就是參數(shù)會急劇增多導致運算量增加,所以在時間上GoogleNet會占據(jù)優(yōu)勢。而LeNet模型相對于前兩個層次為淺模型,因此花費的時間肯定會比前兩個會少。單單從這一點來看LeNet為最優(yōu)但是綜合能力上它是三個里面最不理想的。2、讀入視頻文件,彈出相應界面。在界面中通過攝像頭獲取輸入信息并將逐幀圖片輸入給程序[12],如果檢測到手掌數(shù)據(jù)就進行后續(xù)的處理,如果沒有則繼續(xù)讀幀。如圖4-3所示,在僅僅露出手臂等其他情況下,是沒有檢測出手掌的。圖4-3無檢測出手部3、手掌傳入給程序中,緊接著就是閾值化,對膚色進行分割并灰度化交給網(wǎng)絡層并得到關(guān)鍵點信息。4、得到手部信息關(guān)鍵點后,根據(jù)5個手勢各個分布的關(guān)鍵點進行邏輯處理。先從食指判斷它的關(guān)鍵點,依次為中指、無名指、尾指、大拇指。如果5號至8號關(guān)鍵點的坐標呈現(xiàn)一個線性的。那么我們有理由預判它為1。再對中指、無名指、尾指、拇指輪流進行判斷,假設此時中指的關(guān)鍵點坐標呈現(xiàn)一個非線性,那么無名指、尾指、拇指進行邏輯處理時只要其中有一個是呈現(xiàn)線性的,就不給予輸出(因為已經(jīng)超出了預設的手勢)。如果除了食指而其他的手指均不呈現(xiàn)線性,那么輸出1數(shù)字。圖4-4手掌關(guān)鍵點信息5、將輸出信號傳給視頻界面顯給當前做出手勢的結(jié)果。為了方便查看在這里畫出了實現(xiàn)手勢識別的流程圖。圖4-5實現(xiàn)的流程圖4.1.2環(huán)境與過程(a)實驗環(huán)境硬件設備:CPU:IntelCorei77500U2.70GHz內(nèi)存:8G顯卡:NVIDIAGEFORCE940MX開發(fā)環(huán)境:Windows10開發(fā)語言及其編程軟件:Python+Jupyternotebook(b)實驗過程本次論文使用手部跟蹤器和手掌檢測器來提取特征圖。本次論文中實驗視頻均為本人所自行拍攝的手勢視頻。但是在實際運用過程中周圍的環(huán)境一定比開發(fā)時更加廣泛和復雜。所以為了統(tǒng)一數(shù)據(jù)尺寸將其設置為256*256*3格式。此外也為了避免在識別的過程中出現(xiàn)多個邊界框的重疊的現(xiàn)象,我使用SSD瞄點和非最大抑制算法[13],在找到局部極大值時抑制非極大值元素。并將閾值設置為0.7才能進入候選框,在候選框選取局部極大值,查看圖4-3。圖4-6非最大值抑制算法在對每一幀(間隔5幀)圖片進行檢測時,檢測到手部時將會對其進行膚色分割并灰度化,預處理結(jié)束后才會交給卷積網(wǎng)絡。手掌檢測器檢測到手掌并設置其中的關(guān)鍵點[14]后,因為事先知道手部跟蹤器跟蹤手掌在圖片中的坐標并記錄下來,將這些關(guān)鍵點返回到原本圖片的坐標上并將這些點相連(關(guān)鍵點信息為紅色,線段為黃色)。圖4-7效果圖剩下的就是對這些關(guān)鍵點進行邏輯處理得出該手勢的含義[15]。其中判斷手勢的規(guī)則,當表示1時只能豎起一個食指,表示2時需要同時豎起食指和中指,表示3時需要豎起食指、中指和無名指,表示4時需要豎起食指、中指、無名指和尾指,表示5時需要攤開手掌正對攝像頭。就拿2手勢而言,8號關(guān)鍵點減去6號關(guān)鍵點,6號關(guān)鍵點減去0號關(guān)鍵點。然后除以各自的范數(shù)將向量單元化避免數(shù)據(jù)過大或者過小有溢出現(xiàn)象,再進行點積運算,如果大于預設好的閾值那么就顯示手勢2(1手勢成功的前提下)。需要注意的是用戶使用了預設好的手勢時就輸出結(jié)果,如果用戶使用的手勢是我們沒有預設的手勢,雖然運算關(guān)鍵點會正常運行但因為沒有與之匹配的類型則將不輸出結(jié)果。在實時性方面,由于將圖片數(shù)據(jù)經(jīng)過一系列的處理才能輸出結(jié)果,這一過程是需要一些時間的,當然如果cpu和gpu的配置相當高的話,那么這一過程的時間可以忽略不記。但如果硬件配置一般的話是不能立刻將結(jié)果返回到界面中以至于有延時效果,因此在計算本幀圖片的結(jié)果后,我將其輸出到下一幀的圖片上。圖4-8手勢識別效果圖第五章結(jié)論隨著技術(shù)的發(fā)展,實現(xiàn)手勢識別這項系統(tǒng)已經(jīng)不僅僅局限于本篇論文所提及的技術(shù)。我之所以使用卷積網(wǎng)絡來作為本片的基礎(chǔ)。兩個原因,第一個原因是因為在近幾年卷積網(wǎng)絡的發(fā)展越來越趨向于高準確率和低參數(shù)量,這對于實時性和設備限制都有著很大的幫助。第二個原因是個人對這一領(lǐng)域有著相當不錯的興趣,這就是我做手勢識別的最初動機。這里還有一些小插曲,我剛開始做的時候是用傳統(tǒng)的卷積網(wǎng)絡但效果是相當讓人沮喪,無論在實時響應性還是準確率上。以至于我不得不尋找新的解決辦法,這就有了現(xiàn)在的GoogleNet網(wǎng)絡。因為GoogleNet的改善了卷積層和池化層,其中的全連接層跟是直接拋棄掉,一邊讓網(wǎng)絡深層次的同時還防止了參數(shù)量不爆炸。得益于站在巨人的肩膀上,在光照等因素良好的情況下準確率會高達92%。但盡管如此我的手勢識別系統(tǒng)還是存在這問題。例如在沒有手掌的情況下總是會時不時的彈出關(guān)鍵點信息,這可能與網(wǎng)絡的錯判或非最大抑制算法存在的缺陷有關(guān),而且因為對圖片的計算和預處理導致了實時性的性能有所下降。并且在有手掌的情況下關(guān)鍵點會存在不能準確顯示的情況導致輸入正確手勢時會顯示不出正確的結(jié)果。而且該系統(tǒng)也非常容易環(huán)境因素的干擾,如果手部是處于黑暗環(huán)境下,那么我所作的一切將不會奏效。這些將是我后續(xù)需要解決的部分。參考文獻[1]BretznerL,LaptevI,LindebergT.Handgesturerecognitionusingmulti-scalecolourfeatures,hierarchicalmodelsandparticlefiltering[J].FifthIEEEinternationalconferenceonautomaticfaceandgesturerecognition,2002:405–410.[2]沙亮.基于無標記全手勢視覺的人機交互技術(shù)[D].清華大學,2010.[3]/en-us/windows/kinect[4]姜克.基于深度圖像的3D手勢識別[D].江南大學,2015.[5]/[6]周飛燕,金林鵬,董軍.卷積神經(jīng)網(wǎng)絡研究綜述[J].計算機學報,2017(6).[7]曹建秋,王華清,藍章禮.基于改進YCrCb顏色空間的膚色分割[J].重慶交通大學學報:自然科學版,2010,29(3):488-492.[8]P.Aswathy,SiddharthaandD.Mishra,"DeepGoogLeNetFeaturesforVisualObjectTracking,"2018IEEE13thInternationalConferenceonIndustrialandInformationSystems(ICIIS),Rupnagar,India,2018,pp.60-66.[9]/pdf/1409.4842v1.pdf[10]于凡。李文。李青。劉Y.時興。嚴燕。(2016)POI:具有高性能檢測和外觀特征的多目標跟蹤。在:HuaG.,JégouH.(eds)ComputerVision–ECCV2016Workshops。ECCV2016。計算機科學講座,第9914卷。ChamSpringer[11]H.Noh,S.Hong,andB.Han.LearningDeconvolutionNetworkforSemanticSegmentation.InternationalConferenceonComputerVision(ICCV),2015.[12]王福斌,李迎燕,劉杰,等.基于OpenCV的機器視覺圖像處理技術(shù)實現(xiàn)[J].機械與電子,2010(06):56-59.[13]李旭,王正勇,吳曉紅,etal.一種改進非極大值抑制的Canny邊緣檢測算法[J].成都信息工程學院學報,2011(05):107-112.[14]婁會東,肖強.基于HDC提取關(guān)鍵點的手勢識別算法[J].安陽工學院學報,2007(04):75-78.[15]蘇九林,葛元,王林泉.GestureRecognitionAlgorithmBasedonFeaturePixels%基于關(guān)鍵點的一種字母手勢識別算法[J].計算機工程,2004,030(022):149-151.致謝本次論文在這里也就算告一段落了,在這里我由衷的感謝商麗娟老師。這段時間對我來說很重要同時也很辛苦。就畢業(yè)設計而言,當我拿不準方向時、格式和內(nèi)容都存在問題時,商老師都會及時幫我揪住方向并給予指點。讓我少走了很多彎路,在此我再一次表示感謝。此外還要感謝知網(wǎng)研學,在理論上對我的幫助也起到了相當重要。最后感謝廣東東軟學院對我四年的培養(yǎng)。
怎樣提高電腦系統(tǒng)運行速度WindowsXP的啟動速度比Windows2000要快30%左右,但相對于Windows98仍然要慢了不少,不過,我們可以通過優(yōu)化設置,來大大提高WindowsXP的啟動速度。加快系統(tǒng)啟動速度主要有以下方法:盡量減少系統(tǒng)在啟動時加載的程序與服務;對磁盤及CPU等硬件進行優(yōu)化設置;修改默認設置,減少啟動等待時間等。這些方法大部分既可減少系統(tǒng)啟動的時間,又可以節(jié)省系統(tǒng)資源,加快電腦運行速度。1.加快系統(tǒng)啟動速度WindowsXP的啟動速度比Windows2000要快30%左右,但相對于Windows98仍然要慢了不少,不過,我們可以通過優(yōu)化設置,來大大提高WindowsXP的啟動速度。加快系統(tǒng)啟動速度主要有以下方法:盡量減少系統(tǒng)在啟動時加載的程序與服務;對磁盤及CPU等硬件進行優(yōu)化設置;修改默認設置,減少啟動等待時間等。這些方法大部分既可減少系統(tǒng)啟動的時間,又可以節(jié)省系統(tǒng)資源,加快電腦運行速度。(1)MsconfigWindowsXP的啟動速度在系統(tǒng)安裝初期還比較快,但隨著安裝的軟件不斷增多,系統(tǒng)的啟動速度會越來越慢,這是由于許多軟件把自己加在了啟動程序中,這樣開機即需運行,大大降低了啟動速度,而且也占用了大量的系統(tǒng)資源。對于這樣一些程序,我們可以通過系統(tǒng)配置實用程序Msconfig將它們從啟動組中排除出去。選擇“開始”菜單中的“運行”命令,在“運行”對話框中鍵入“Msconfig”,回車后會彈出“系統(tǒng)配置實用程序”對話框,選擇其中的“啟動”選項卡(如圖1),該選項卡中列出了系統(tǒng)啟動時加載的項目及來源,仔細查看每個項目是否需要自動加載,否則清除項目前的復選框,加載的項目越少,啟動的速度就越快。設置完成后需要重新啟動方能生效。(2)BootvisBootvis是微軟提供的一個啟動優(yōu)化工具,可提高WindowsXP的啟動速度。用BootVis提升WindowsXP的啟動速度必須按照正確的順序進行操作,否則將不會起到提速的效果。其正確的操作方法如下:啟動Bootvis,從其主窗口(如圖2)中選擇“工具”菜單下的“選項”命令,在“符號路徑”處鍵入Bootvis的安裝路徑,如“C:\ProgramFiles\Bootvis”,單擊“保存”退出。從“跟蹤”菜單中選擇“下次引導”命令,會彈出“重復跟蹤”對話框,單擊“確定”按鈕,BootVis將引導WindowsXP重新啟動,默認的重新啟動時間是10秒。系統(tǒng)重新啟動后,BootVis自動開始運行并記錄啟動進程,生成啟動進程的相關(guān)BIN文件,并把這個記錄文件自動命名為TRACE_BOOT_1_1。程序記錄完啟動進程文件后,會重新啟動BootVis主界面,在“文件”菜單中選擇剛剛生成的啟動進程文件“TRACE_BOOT_1_1”。窗口中即會出現(xiàn)“CPU>使用”、“磁盤I/O”、“磁盤使用”、“驅(qū)動程序延遲”等幾項具體圖例供我們分析,不過最好還是讓BootVis程序來自動進行分析:從“跟蹤”菜單中選擇“系統(tǒng)優(yōu)化”命令,程序會再次重新啟動計算機,并分析啟動進程文件,從而使計算機啟動得更快。(3)禁用多余的服務WindowsXP在啟動時會有眾多程序或服務被調(diào)入到系統(tǒng)的內(nèi)存中,它們往往用來控制Windows系統(tǒng)的硬件設備、內(nèi)存、文件管理或者其他重要的系統(tǒng)功能。但這些服務有很多對我們用途不大甚至根本沒有用,它們的存在會占用內(nèi)存和系統(tǒng)資源,所以應該將它們禁用,這樣最多可以節(jié)省70MB的內(nèi)存空間,系統(tǒng)速度自然也會有很大的提高。選擇“開始”菜單中的“運行”命令,在“運行”對話框鍵入“services.msc”后回車,即可打開“服務”窗口。窗口的服務列表中列出了系統(tǒng)提供的所有服務的名稱、狀態(tài)及啟動類型。要修改某個服務,可從列表雙擊它,會彈出它的屬性對話框(如圖3),你可從“常規(guī)”選項卡對服務進行修改,通過單擊“啟動”、“停止”、“暫?!?、“恢復”四個按鈕來修改服務的狀態(tài),并可從“啟動類型”下拉列表中修改啟動類型,啟動類型有“自動”、“手動”、“已禁用”三種。如果要禁止某個服務在啟動自動加載,可將其啟動類型改為“已禁用”。WindowsXP提供的所有服務有36個默認是自動啟動的,實際上,其中只有8個是必須保留的(見下表),其他的則可根據(jù)自己的需要進行設置,每種服務的作用在軟件中有提示。4)修改注冊表來減少預讀取,減少進度條等待時間WindowsXP在啟動過程中會出現(xiàn)一個進度條,我們可以通過修改注冊表,讓進度條只跑一圈就進入登錄畫面。選擇“開始”菜單中的“運行”命令,在“運行”對話框鍵入“regedit”命令后回車,即可啟動注冊表編輯器,在注冊表中找HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\MemoryManagement\PrefetchParameters,選擇其下的EnablePrefetcher鍵,把它的鍵值改為“1”即可。(5)減少開機磁盤掃描等待時間當Windows日志中記錄有非正常關(guān)機、死機引起的重新啟動,系統(tǒng)就會自動在啟動的時候運行磁盤掃描程序。在默認情況下,掃描每個分區(qū)前會等待10秒鐘,如果每個分區(qū)都要等上10秒才能開始進行掃描,再加上掃描本身需要的時間,會耗費相當長的時間才能完成啟動過程。對于這種情況我們可以設置取消磁盤掃描的等待時間,甚至禁止對某個磁盤分區(qū)進行掃描。選擇“開始→運行”,在運行對話框中鍵入“chkntfs/t:0”,即可將磁盤掃描等待時間設置為0;如果要在計算機啟動時忽略掃描某個分區(qū),比如C盤,可以輸入“chkntfs/xc:”命令;如果要恢復對C盤的掃描,可使用“chkntfs/dc:”命令,即可還原所有chkntfs默認設置,除了自動文件檢查的倒計時之外。2.提高系統(tǒng)運行速度提升系統(tǒng)運行速度的思路與加快啟動的速度類似:盡量優(yōu)化軟硬件設置,減輕系統(tǒng)負擔。以下是一些常用的優(yōu)化手段。(1)設置處理器二級緩存容量WindowsXP無法自動檢測處理器的二級緩存容量,需要我們自己在注冊表中手動設置,首先打開注冊表,找到“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\MemoryManagement\”,選擇其下的“SecondLevelDataCache”,根據(jù)自己所用的處理器設置即可,例如PIIICoppermine/P4Willamette是“256”,AthlonXP是“384”,P4Northwood是“512”。(2)提升系統(tǒng)緩存同樣也是在“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\MemoryManagement\”位置,把其下的“LargeSystemCache”鍵值從0改為1,WindowsXP就會把除了4M之外的系統(tǒng)內(nèi)存全部分配到文件系統(tǒng)緩存中,這樣XP的內(nèi)核能夠在內(nèi)存中運行,大大提高系統(tǒng)速度。通常來說,該優(yōu)化會使系統(tǒng)性能得到相當?shù)奶嵘?,但也有可能會使某些應用程序性能降低。需要注意的是必須?56M以上的內(nèi)存,激活LargeSystemCache才可起到正面的作用,否則不要輕易改動它。(3)改進輸入/輸出性能這個優(yōu)化能夠提升系統(tǒng)進行大容量文件傳輸時的性能,不過這只對服務器用戶才有實在意義。我們可在中新建一個DWORD(雙字節(jié)值)鍵值,命名為IOPageLockLimit。一般情況下把數(shù)據(jù)設置8~16MB之間性能最好,要記住這個值是用字節(jié)來計算的,例如你要分配10MB的話,就是10×?1024×1024,也就是10485760。這里的優(yōu)化也需要你的機器擁有大于256M的內(nèi)存。(4)禁用內(nèi)存頁面調(diào)度在正常情況下,XP會把內(nèi)存中的片斷寫入硬盤,我們可以阻止它這樣做,讓數(shù)據(jù)保留在內(nèi)存中,從而提升系統(tǒng)性能。在注冊表中找到“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\MemoryManagement\”下的“DisablePagingExecutive”鍵,把它的值從0改為1即可禁止內(nèi)存頁面調(diào)度了。(5)關(guān)閉自動重新啟動功能當WindowsXP遇到嚴重問題時便會突然重新開機,可從注冊表將此功能取消。打開注冊表編輯器,找到“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl\”將AutoReboot鍵的Dword值更改為0,重新啟動后設置即可生效。(6)改變視覺效果WindowsXP在默認情況下啟用了幾乎所有的視覺效果,如淡入淡出、在菜單下顯示陰影。這些視覺效果雖然漂亮,但對系統(tǒng)性能會有一定的影響,有時甚至造成應用軟件在運行時出現(xiàn)停頓。一般情況下建議少用或者取消這些視覺效果。選擇桌面上“我的電腦”圖標,單擊鼠標右鍵,在彈出的快捷菜單中選擇“屬性”命令,打開“系統(tǒng)屬性”對話框。選擇“高級”選項卡,在其中的“性能”欄中單擊“設置”按鈕,會彈出“性能選項”對話框(如圖4),可選擇“調(diào)整為最佳性能”單選框來關(guān)閉所有的視覺效果,也可選擇“自定義”然后選擇自己需要的視覺效果。(7)合理設置頁面虛擬內(nèi)存同樣也是在“性能選項”對話框中,選擇“高級”選項卡,在其中的“虛擬內(nèi)存”欄中單擊“更改”按鈕,接下來選擇虛擬內(nèi)存為“自定義大小”,然后設置其數(shù)值。一般情況下,把虛擬設為不小于256M,不大于382M比較合適,而且最大值和最小值最好一樣。(8)修改外觀方案WindowsXP默認的外觀方案雖然漂亮,但對系統(tǒng)資源的占用也多,可將其改為經(jīng)典外觀以獲得更好的性能。在桌面空白位置單擊鼠標右鍵,從彈出的快捷菜單中選擇“屬性”命令,會打開“顯示屬性”對話框,在“主題”選項卡選擇主題為“Windows經(jīng)典”,即可將外觀修改為更為經(jīng)濟的Windows經(jīng)典外觀。(9)取消XP對ZIP支持WindowsXP在默認情況下打開了對zip文件支持,這要占用一定的系統(tǒng)資源,可選擇“開始→運行”,在“運行”對話框中鍵入“regsvr32/uzipfldr.dll”,回車確認即可取消XP對ZIP解壓縮的支持,從而節(jié)省系統(tǒng)資源。(10)關(guān)閉Dr.WatsonDr.Watson是WindowsXP的一個崩潰分析工具,它會在應用程序崩潰的時候自動彈出,并且在默認情況下,它會將與出錯有關(guān)的內(nèi)存保存為DUMP文件以供程序員分析。不過,記錄DUMP文件對普通用戶則毫無幫助,反而會帶來很大的不便:由于Dr.Watson在應用程序崩潰時會對內(nèi)存進行DUMP記錄,將出現(xiàn)長時間硬盤讀寫操作,要很長一斷時間程序才能關(guān)閉,并且DUMP文件還會占用大量磁盤空間。要關(guān)閉Dr.Watson可打開注冊表編輯器,找到“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\AeDebug”分支,雙擊其下的Auto鍵值名稱,將其“數(shù)值數(shù)據(jù)”改為0,最后按F5刷新使設置生效,這樣就取消它的運行了。同樣,我們可以把所有具備調(diào)試功能的選項取消,比如藍屏時出現(xiàn)的memory.dmp,可在“系統(tǒng)屬性”對話框中選擇“高級”選項卡,單擊“啟動和故障恢復”欄中的“設置”按鈕,并在彈出的“啟動和故障恢復”對話框中選擇“寫入調(diào)試信息”為“無”(如圖5)。(11)啟動硬盤/光驅(qū)DMA模式打開“系統(tǒng)屬性”對話框,選擇“硬件”選擇卡中的“設備管理器”按鈕,打開“設備管理器”窗口,在設備列表中選擇“IDEATA/ATAPI控制器”,雙擊“主要IDE通道”或“次要IDE通過”,在其屬性對話框的“高級設置”選項卡中檢查DMA模式是否已啟動,一般來說如果設備支持,系統(tǒng)就會自動打開DMA功能,如果沒有打開可將“傳輸模式”設為“DMA(若可用)”。(12)關(guān)掉不用的設備WindowsXP總是盡可能為電腦的所有設備安裝驅(qū)動程序并進行管理,這不僅會減慢系統(tǒng)啟動的速度,同時也造成了系統(tǒng)資源的大量占用。針對這一情況,你可在設備管理器中,將PCMCIA卡、調(diào)制解調(diào)器、紅外線設備、打印機端口(LPT1)或者串口(COM1)等不常用的設備停用,方法是雙擊要停用的設備,在其屬性對話框中的“常規(guī)”選項卡中選擇“不要使用這個設備(停用)”。在重新啟動設置即可生效,當需要使用這些設備時再從設備管理器中啟用它們。(13)關(guān)閉錯誤報告當應用程序出錯時,會彈出發(fā)送錯誤報告的窗口,其實這樣的錯誤報告對普通用戶而言幾乎沒有任何意義,關(guān)閉它是明智的選擇。在“系統(tǒng)屬性”對話框中選擇“高級”選項卡,單擊“錯誤報告”按鈕,在彈出的“錯誤匯報”對話框中,選擇“禁用錯誤匯報”單選項,最后單擊“確定”即可。另外我們也可以從組策略中關(guān)閉錯誤報告:從“運行”中鍵入“gpedit.msc”,運行“組策略編輯器”,展開“計算機配置→管理模板→系統(tǒng)→錯誤報告功能”,雙擊右邊設置欄中的“報告錯誤”,在彈出的“屬性”對話框中選擇“已禁用”單選框即可將“報告錯誤”禁用。(14)關(guān)閉自動更新“自動更新”功能對許多WindowsXP用戶而言并不是必需的,可將其關(guān)閉以節(jié)省系統(tǒng)資源。在“我的電腦”上單擊鼠標右鍵,從快捷菜單中選擇“屬性”命令,選擇“系統(tǒng)屬性”對話框中的“自動更新”選項卡,勾選“關(guān)閉自動更新,我將手動更新計算機”單選框,單擊“確定”按鈕即可關(guān)閉自動更新功能。如果在“服務”已經(jīng)將“AutomaticUpdates”服務關(guān)閉,“系統(tǒng)屬性”對話框中的“自動更新”選項卡就不能進行任何設置了。(15)去掉菜單延遲去掉菜單彈出時的延遲,可以在一定程度上加快XP。要修改的鍵值位置在“HKEY_CURRENT_USER\ControlPanel\Desktop”。修改其下的“MenuShowDelay”鍵,把默認的400修改為0,按F5刷新注冊表即可生效。(16)清除預讀文件WindowsXP的預讀設置雖然可以提高系統(tǒng)速度,但是使用一段時間后,預讀文件夾里的文件數(shù)量會變得相當龐大,導致系統(tǒng)搜索花費的時間變長。而且有些應用程序會產(chǎn)生死鏈接文件,更加重了系統(tǒng)搜索的負擔。所以,應該定期刪除這些預讀文件。預計文件存放在WindowsXP系統(tǒng)文件夾的Prefetch文件夾中,該文件夾下的所有文件均可刪除。(17)關(guān)閉自動播放功能在WindowsXP中,當往光驅(qū)中放入光盤或?qū)SB硬盤接上電腦時,系統(tǒng)都會自動將光驅(qū)或USB硬盤掃描一遍,同時提示你是否播放里面的圖片、視頻、音樂等文件,如果是擁有多個分區(qū)的大容量的USB硬盤,掃描會耗費很長的時間,而且你得多次手動關(guān)閉提示窗口,非常麻煩。這種情況下我們可以將WindowsXP的自動播放功能關(guān)閉。運行“組策略”程序。在組策略窗口左邊欄中,打開“計算機配置”,選擇“管理模板”下的“系統(tǒng)”,然后在右邊的配置欄中找到“關(guān)閉自動播放”并雙擊它,會彈出“關(guān)閉自動播放屬性”對話框。在其中“設置”選項卡中選擇“已啟用”,“關(guān)閉自動播放”下拉列表中選擇“所有驅(qū)動器”(如圖6)。這樣以后就不用擔心WindowsXP的“自動播放”功能帶來的麻煩了。如果你只是想禁止系統(tǒng)掃描某個驅(qū)動器(如USB硬盤)上的文件,可采用下面的方法。先連上你的USB硬盤,讓系統(tǒng)將它識別出來。然后打開“我的電腦”,選擇USB硬盤上的某個分區(qū),按鼠標右鍵,會彈出磁盤屬性窗口,選取“自動播放”選項卡,將所有內(nèi)容的類型都選擇為不執(zhí)行操作。如果USB硬盤有多個分區(qū),對所有分區(qū)都進行同樣的操作,這樣當你將USB驅(qū)動器拔掉再重新接上時,系統(tǒng)會將USB硬盤識別出來,而不會反復問你是否播放USB硬盤中的文件了。3.加快關(guān)機速度WindowsXP的關(guān)機速度要慢于啟動速度,特別有些任務還需要手工結(jié)束,更加延緩了關(guān)機速度。因此,要加快關(guān)機速度,首先要開啟WindowsXP的自動結(jié)束任務功能。具體步驟是:從注冊表中找到“HKEY_CURRENT_USER\ControlPanel\Desktop”,把“AutoEndTasks”的鍵值設置為1即可。然后再修改“HungAppTimeout”為“4000(或更小)”(預設為5000),該鍵值同樣也在“HKEY_CURRENT_USER\ControlPanel\Desktop”下;最后一步再找到“HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\”,同樣把WaitToKillServiceTimeout設置為“4000”;通過這樣設置后的關(guān)機速度明顯要加快了。夠全面吧~~◆二、硬件優(yōu)化設置◆1、關(guān)掉不用的設備
在設備管理器中,將PCMCIA卡、調(diào)制解調(diào)器、紅外線設備、打印機端口(LPT1)或者串口(COM1)等不常用的設備停用,在要停用設備屬性對話框中的“常規(guī)”選項卡中選擇“不要使用這個設備(停用)”。當需要使用這些設備時再從設備管理器中啟用它們?!?、內(nèi)存性能優(yōu)化
WindowsXP中有幾個選項可以優(yōu)化內(nèi)存性能,它們?nèi)荚谧员硐旅嫖恢茫篐KEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession
ManagerMemory
Management
1)禁用內(nèi)存頁面調(diào)度(Paging
Executive)
XP會把內(nèi)存中的片斷寫入硬盤,我們可以阻止它這樣做,讓數(shù)據(jù)保留在內(nèi)存中,從而提升系統(tǒng)性能。256M以上內(nèi)存才使用這個設置。把“DisablePagingExecutive”的值從0改為1就可以禁止內(nèi)存頁面調(diào)度了。
2)提升系統(tǒng)緩存
必須有256M以上的內(nèi)存,才激活它。把LargeSystemCache鍵值從0改為1,一般來說,這項優(yōu)化會使系統(tǒng)性能得到相當?shù)奶嵘?,但也有可能會使某些應用程序性能降低?/p>
3)輸入/輸出性能
內(nèi)存大于256M才更改這里的值,這個優(yōu)化只對server(服務器)用戶才有實在意義,它能夠提升系統(tǒng)進行大容量文件傳輸時的性能。建一個DWORD(雙字節(jié)值)鍵值,命名為IOPageLockLimit,數(shù)值設8M-16M字節(jié)之間性能最好,具體設什么值,可試試哪個值可獲得最佳性能。這個值是用字節(jié)來計算的,比如你要分配12M,就是12×1024×1024,也就是12582912?!?、啟動硬盤/光驅(qū)DMA模式
“系統(tǒng)屬性”-“硬件”-“設備管理器”,在設備列表中選擇“IDE
ATA/ATAPI控制器”,雙擊“主要
IDE
通道”或“次要
IDE
通道”,在其屬性對話框的“高級設置”選項卡中檢查DMA模式是否已啟動,一般來說如果設備支持,系統(tǒng)就會自動打開DMA功能,如果沒有打開可將“傳輸模式”設為“DMA(若可用)”(在BIOS里也應該要先設為支持DMA)。
◆4、關(guān)閉自動播放功能
運行“組策略”程序,在組策略窗口左邊欄中打開“計算機配置”,選擇“管理模板”下的“系統(tǒng)”,然后在右邊的配置欄中找到“關(guān)閉自動播放”并雙擊它,會彈出“關(guān)閉自動播放屬性”對話框,在其中“設置”選項卡中選擇“已啟用”,“關(guān)閉自動播放”下拉列表中選擇“所有驅(qū)動器”。
◆5、設置二級緩存容量
WindowsXP有時無法自動檢測處理器的二級緩存容量,需要我們手動設置。運行注冊表編輯器,找到HKCU_LOCAL_MACHINESYSTEMCurrentControlSetControlSession
ManagerMemory
Management,選擇Dword值SecondLevelDataCache(如果沒有就新建這個值),修改這個值(填時使用10進制)為你的CPU的二級緩存的大小,比如你的CPU的二級緩存是256KB,就修改Dword值
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- DB12T 598.5-2015 天津市建設項目用地控制指標 第5部分:市政基礎(chǔ)設施項目
- 中職校長在新學期教職工大會上的講話稿(8篇)
- 個人自我小結(jié)
- 報關(guān)實務-教學課件 第四章 海關(guān)稅收
- 航空航天用帶沉頭窩的MJ螺紋減小型角形托板自鎖螺母 征求意見稿
- 老師培訓課件教學課件
- 骨科的課件教學課件
- 怎么修改課件教學
- 2025 高考語文總復習 第三部分 語言文字運用(含解析)
- 關(guān)于項目工程實測實量質(zhì)量獎罰辦法的通知g
- GB/T 29712-2023焊縫無損檢測超聲檢測驗收等級
- 初中美術(shù)期末檢測方案
- 配電室運行維護投標方案(技術(shù)標)
- 初中化學試卷講評課件
- 瓶裝水項目市場營銷方案
- 2024屆東北師大附中重慶一中等六校化學高一第一學期期中檢測試題含解析
- 【幼兒園語言文字教學的規(guī)范化分析3000字(論文)】
- 瓶口分液器校準規(guī)范
- (完整版)醫(yī)療器械網(wǎng)絡交易服務第三方平臺質(zhì)量管理文件
- 信息管理監(jiān)理實施細則水利水電工程
- (醫(yī)學課件)DIC患者的護理
評論
0/150
提交評論