基于人臉識別的酒店自助入住管理系統(tǒng)的設(shè)計與實現(xiàn)_第1頁
基于人臉識別的酒店自助入住管理系統(tǒng)的設(shè)計與實現(xiàn)_第2頁
基于人臉識別的酒店自助入住管理系統(tǒng)的設(shè)計與實現(xiàn)_第3頁
基于人臉識別的酒店自助入住管理系統(tǒng)的設(shè)計與實現(xiàn)_第4頁
基于人臉識別的酒店自助入住管理系統(tǒng)的設(shè)計與實現(xiàn)_第5頁
已閱讀5頁,還剩44頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

口,固然產(chǎn)生了一大批制造自助入住終端機的公司,每個公司所采用的軟件系統(tǒng)又不一樣,表面有界面設(shè)計的不一樣,所用的人臉檢測接口也不一樣。并非所有公司都會花錢去研究人臉識別技術(shù),這樣不僅耗費大量成本并且難以在此領(lǐng)域立足,畢竟目前已有非常成熟的人臉識別技術(shù)。2020年的開年迎來前所未有的具強感染力心冠肺炎病毒,據(jù)北京一篇報道[1],酒店已成為當(dāng)前情況下無論是跨省返工或是回國人員選擇隔離的場所。各個酒店行業(yè)都采取了相應(yīng)的疫情防控措施,為此保障酒店客人與員工的生命健康,并且一部分酒店還借此疫情推出了“無接觸”項目,酒店客人從大廳到房間都無需與人接觸。這次疫情無疑是快速推動了生物特征的識別領(lǐng)域,較傳統(tǒng)的指紋識別,人臉識別更具無無接觸的特點,較傳統(tǒng)的身份證認(rèn)證,它具有生物信息的唯一性,穩(wěn)定性,可保證信息的不被偽造性,即身份驗證的準(zhǔn)確唯一性。目前的酒店終端機尚未完全解放人們的雙手,如今的自助系統(tǒng)仍需入住旅客在指定屏幕上進行入住登記等一系列工作,如果酒店僅僅只需要進行人臉識別與認(rèn)證,其他預(yù)定,入住,離店等功能都體現(xiàn)在自己的手機app或者是小程序,如此的話這樣才是真正意義上的實現(xiàn)與他人“無接觸”。在人臉識別這一塊領(lǐng)域里,大致做了好幾類研究,有基于深度學(xué)習(xí)的人臉識別[2],利用CNN架構(gòu)訓(xùn)練人臉識別模型,然后再使用opencv獲取實時攝像頭進行在線捕捉人臉圖像,亮點在于梯度訓(xùn)練使用Adam優(yōu)化算法,ReLU激活函數(shù)從而構(gòu)造此人臉識別的CNN結(jié)構(gòu)。此研究重在認(rèn)證的效率。而另一種基于區(qū)塊鏈和人臉識別的雙因子身份認(rèn)證[3]重點則在認(rèn)證上,確保人臉識別的身份認(rèn)證的安全性,在人臉識別上利用了SphereFace算法,即采用的是改進的基于角度距離的損失函數(shù)而優(yōu)于傳統(tǒng)的euclideanloss和tripletloss。去中心化的存儲保證了身份的安全與隱私,即形成了身份鏈,即若從旅客認(rèn)證通過打開房門之后,可保證與確保旅客的身份同時,若需要進行其他服務(wù)已不需再進行身份驗證。1.3研究目的通過對人臉識別的研究了解人工智能的趨勢,人臉識別早期1994年使用CNN判斷每個圖片是否包含人臉;到1996年Rowley取得旋轉(zhuǎn)不變性檢測成就;再到2002年卷積神經(jīng)網(wǎng)絡(luò)得到了發(fā)展,雖是一些簡單的數(shù)據(jù),但亦能取得不錯的結(jié)果。這一系列機器學(xué)習(xí)的趨勢正是帶動著智能時代的變遷,在科技與人的交互上,若要取得一定成就那將必然以人為本,服務(wù)于酒店旅客是此項研究與設(shè)計的最終結(jié)果,希望通過研究能找到同路人。一定程度上徹底解放人們的雙手,利用隨身攜帶的手機聯(lián)網(wǎng)實現(xiàn)遠(yuǎn)程人機交互。研究更具身份驗證可靠性的人臉識別技術(shù)必將推動生物特征識別的發(fā)展,亦能使酒店成為旅客出行的第二個家,甚至更加方便于自己家。推動智能家居的發(fā)展必將依靠人工智能設(shè)備,人臉識別即將成為代替身份證的新型身份識別。除了對時代趨勢方面研究人臉識別之外,我還希望通過對人臉識別的研究提升自己對該領(lǐng)域的認(rèn)知程度,雖說在大學(xué)期間并沒有全心全力專研學(xué)術(shù),但至少也是需要增加自己的知識儲備能力的,或許暫時不能馬上使用到該技術(shù),但是至少了解得比別人多,認(rèn)知得更多就能讓自己更加清晰地看世界,不被糊弄與欺騙。1.4研究步驟1.4.1主題的擬定人臉識別已成為人們出行購物、政府辦事大廳、銀行等等需要身份驗證必不可少的一步,那么酒店作為唯一直接連接公安系統(tǒng)的大行業(yè),對身份驗證十分重視與眼睛的行業(yè),在將來需要改變的不會是制度,而是屬于酒店自己的一套制度,嚴(yán)格來講是盈利制度,那么能執(zhí)行制度的除了人就是機器了,作為消費行業(yè)但凡能夠便于消費者群體的項目必將是發(fā)展的趨勢,固然基于人臉識別的酒店自助入住系統(tǒng)就此誕生。1.4.2文獻綜述一方面是酒店管理系統(tǒng)的研究,千篇一律,流程萬變不離其中,翻閱的文獻并不多。另一方面是人臉識別,然而這才是自己給自己挖的一個大坑,有關(guān)人臉識別的技術(shù)這幾年急速發(fā)展,如今拼的已經(jīng)在識別速度與防控研發(fā),認(rèn)證準(zhǔn)確率基本上在99%以上。1.4.3實地考察二種酒店自助入住形式。第一種是傳統(tǒng)的酒店智能化設(shè)備,在酒店大廳中終端機上進行訂單核對,人臉身份驗證,下發(fā)房卡或者房門密碼,完成入??;第二種是完全解放入住繁瑣辦理事項,僅需網(wǎng)上預(yù)定,到店人臉識別核對身份即可使用酒店所有硬件設(shè)施,即馬云杭州的“無人酒店”。1.4.4結(jié)合實際整理設(shè)計思路通過對人類歷史發(fā)展的研究,人類文明會逐漸提高,實現(xiàn)全民高素質(zhì)發(fā)展趨勢。解放人們便捷的消費體驗以為,更加需要解放的是人們的思想。無需酒店大廳,無需電梯身份驗證,僅需進門人臉識別認(rèn)證即可,如同iphone的FaceID一般,打開自己的房門跟解鎖手機屏幕一般簡單。1.4.5調(diào)整設(shè)計計劃原計劃的主題偏向于實地考察的第一種酒店自助入住模式,后來經(jīng)過市場實際考察,發(fā)現(xiàn)還可以以此為基礎(chǔ)對系統(tǒng)進行升華,但是又不用第二種“無人酒店”那般極具科技感的設(shè)計。調(diào)整為消費者以手機操作為主,到店僅需對接人臉識別設(shè)備即可。圖1-1研究步驟圖1.5論文架構(gòu)本文主論述五個章節(jié),如下所述:第一章緒論,主要講解基于人臉識別的酒店自助入住的背景,研究人臉識別技術(shù)的動機,還有其目的與意義,計劃論文工作的開展和系統(tǒng)的設(shè)計。第二章對文獻探討,通過對大量的文獻翻閱進行對系統(tǒng)設(shè)計的計劃與開發(fā),并探討部分文獻對人臉識別領(lǐng)域的技術(shù)應(yīng)用,參考其重要研究內(nèi)容。第三章主要講研究方法,整體的應(yīng)用以及其系統(tǒng)架構(gòu),采用的一系列技術(shù)開發(fā)應(yīng)用。第四章實驗設(shè)計,呈現(xiàn)軟件執(zhí)行的流程。第五章系統(tǒng)測試結(jié)果,展示相關(guān)模塊代碼并對運行結(jié)果進行分析測試,對其數(shù)據(jù)進行分析以及調(diào)整頁面設(shè)計。第六章是結(jié)論與未來研究方向,研究該項目所產(chǎn)生的價值,根據(jù)測試結(jié)果進行模塊功能的說明,進行該項目的比較分析與效益分析,因為此項設(shè)計所萌發(fā)的對未來想研究的方向以及想去完成的。最后進行致謝:對所經(jīng)歷所感受的人與事懷揣感恩之心。第二章文獻探討2.1基于人臉識別的相關(guān)算法機器學(xué)習(xí)時代以來,機器深度學(xué)習(xí)研究領(lǐng)域潮流迸發(fā),基于卷積神經(jīng)網(wǎng)絡(luò)的深度學(xué)習(xí)在人臉識別的特征學(xué)習(xí)上被應(yīng)用得淋漓盡致,通過電腦卷積神經(jīng)網(wǎng)絡(luò)處理待分類圖像,那么此圖像的特征自然就被學(xué)習(xí)出來,無需傳統(tǒng)的人工特征提取。在研究深度學(xué)習(xí)的過程中,反而距離度量學(xué)習(xí)方法被發(fā)現(xiàn)非常適合人臉識別。深度學(xué)習(xí)的不斷學(xué)習(xí)中,研究人員已對其卷積神經(jīng)網(wǎng)絡(luò)模型不斷的加以訓(xùn)練并不斷改進,人臉識別技術(shù)的識別能力以及準(zhǔn)確率提高了不少,那么后期隨著攝像頭的清晰度以及算法運算能力,該模型對計算和存儲的需求也將大大提高,逐漸會淘汰掉一大部分的低性能設(shè)備,所以正如SOPHANYOULY[4]總結(jié)的基于ShuffleNet模型的數(shù)據(jù)測試,是Face++提出的深度網(wǎng)絡(luò)模型,正好適合于筆者想要開發(fā)的移動設(shè)備端的在線管理酒店系統(tǒng)。ShufflNet引入了PointwiseGroup,這個所帶來的問題在于群設(shè)定數(shù)量越多,信息更豐富但是對于各組的輸入通道數(shù)量會變少,導(dǎo)致單個卷積核的退化,降低網(wǎng)絡(luò)的表達能力,為了解決這個問題,研究者用Shuff'Net將以分組好的輸入通道隨機打亂,為了保證所有卷積核的感受能分散到來自不同分組的通道。借鑒ResNet的思路,ShuffNet引入類似的網(wǎng)絡(luò)單元,用concat操作代替add,用平均池化代替1*1的卷積操作,從而減少計算量和提高準(zhǔn)確率。與研究者的水平差距有限,對于他給出的研究與算法僅供學(xué)習(xí)參考。2.2應(yīng)用領(lǐng)域智能化酒店行業(yè)的發(fā)展,“刷臉”成為人機交互必不可少的程序,那么不僅在現(xiàn)有的“無人酒店”,在各行各業(yè)甚至是出門購物都可以實現(xiàn)不帶現(xiàn)金不用手機了,臉逐漸成為身份象征,雖然臉排在虹膜與指紋之后,但是在方便的發(fā)展上研究人員終有一天能將最方便的特征應(yīng)用在所需要的行業(yè)當(dāng)中。人臉識別在APP中的應(yīng)用更為廣泛,從iphone的faceid到applepay支付寶的人臉支付,與酒店一樣同樣都為公安系統(tǒng)直接監(jiān)控,不一樣的是入住酒店的旅客還需要相應(yīng)的信息記錄,而每一家酒店的信息有獨立的系統(tǒng)記錄。在金融與安防兩大領(lǐng)域中,人臉識別技術(shù)作為兩者主角,目前機場、火車站、學(xué)校、等公共場所的安檢系統(tǒng)已采用人臉識別技術(shù)。自助設(shè)備基本上都配備攝像頭以供人臉識別功能。2.3國內(nèi)外評價關(guān)于人臉識別的評價有支持亦有不足,雖然在我們生活中給予了我們便利,但是還未完全發(fā)展完善。人臉識別受攝像頭的辨析程度影響,系統(tǒng)對人臉圖片收集也要有一定的要求,當(dāng)畫面出現(xiàn)模糊時攝像頭難以辨識出相應(yīng)的臉部。另一方面,對于人臉相當(dāng)接近時,也會導(dǎo)致人臉識別出現(xiàn)困難,但隨著科技設(shè)備的發(fā)展,算法的不斷更新與修改,識別能力也在逐日增加,高清攝像頭等等。為了系統(tǒng)匹配更高的準(zhǔn)確性,也有必要的條件。關(guān)于生物的唯一無需主動特征,較虹膜與指紋相比,人臉通過攝像頭收集進行網(wǎng)絡(luò)惡意攻擊,也是容易出現(xiàn)信息泄露的問題。面對人臉識別的“雙刃劍”,該如何發(fā)展就交給研究他們的手上了。第三章研究方法3.1系統(tǒng)架構(gòu)項目系統(tǒng)包括酒店自助入住管理系統(tǒng),人臉識別門控系統(tǒng),和人臉識別模塊,移動端APP在線預(yù)定模塊鏈接。簡單來說采用了酒店預(yù)訂系統(tǒng)增加了人臉識別模塊,而酒店人臉識別門控屬于輔助酒店管理系統(tǒng)輔助驗證工具,免去了傳統(tǒng)的身份證以及對人臉的雙重認(rèn)證,實現(xiàn)真正意義上的“無接觸”入住。為了系統(tǒng)搭建的便捷,系統(tǒng)采用線上的方式執(zhí)行,在如今網(wǎng)絡(luò)平臺上搭建系統(tǒng)一方面考慮了系統(tǒng)搭建的效率另一方面考慮到信息儲存的安全性。移動端采取目前火熱的app、公眾號或者微信小程序進行消費者預(yù)定平臺的搭建,商家則需要在PC端申請相關(guān)平臺進行搭建,因為互聯(lián)網(wǎng)的高速發(fā)展以及平臺的穩(wěn)定安全性,找一些知名品牌的平臺搭建即可,模塊可自動生成,只需要給平臺相應(yīng)的平臺服務(wù)費即可,遠(yuǎn)比一個軟件開發(fā)的運營成本來得親民。人臉識別的模塊的接口當(dāng)然也需要交費,那么市面上也有非常多的選擇,最好是選擇人臉識別技術(shù)成熟并且有附帶人臉識別設(shè)備的商家,這樣合作起來就比較全面。3.2數(shù)據(jù)來源清華創(chuàng)業(yè)團隊所推出的人臉云識別開放平臺Face++的API總調(diào)用超過60萬億,并且在安防領(lǐng)域開始了商業(yè)化探索成果Face++Financial,Face++BI等垂直人臉驗證的解決方案產(chǎn)品。如今年輕女生喜歡的美顏相機,美圖秀秀等等用了Face++所提供的領(lǐng)先人臉檢測與人臉關(guān)鍵點檢測技術(shù)。Linkface提供了全球領(lǐng)先的人臉檢測技術(shù),LFW人臉識別準(zhǔn)確率已達99.5%以上,F(xiàn)DDB人臉檢測公開測試穩(wěn)居世界第一。圖1-2人臉識別準(zhǔn)確度較高公司排名系統(tǒng)需求分析4.1需求規(guī)格4.1.1系統(tǒng)的構(gòu)成部分 前臺功能模塊:用戶登陸模塊:用戶登陸模塊是提供給住客進行登陸的功能,采用JSP實現(xiàn),用戶進行預(yù)定時自動彈出登陸界面,讓住客進行用戶名密碼的填寫,并使用了ajax進行住客的相關(guān)驗證從而登陸,在密碼與用戶正確的前提下點擊登陸并完成登陸。只有登陸成功的用戶方能預(yù)定房間。圖4-1登陸流程圖用戶注冊模塊:用戶注冊模塊是提供給用戶進行注冊的功能,采用JSP實現(xiàn),用戶點擊登陸界面的注冊按鈕后,彈出注冊界面,讓用戶進行相應(yīng)信息的填寫,并帶有數(shù)據(jù)合法性檢驗功能,用戶數(shù)據(jù)合法后點擊注冊按鈕完成注冊。圖4-2注冊流程圖預(yù)訂房間模塊:當(dāng)用戶點擊選擇房間按鈕時,觸發(fā)點擊事件,系統(tǒng)將信息將傳給服務(wù)器并訪問數(shù)據(jù)庫中的數(shù)據(jù),將數(shù)據(jù)以圖片的形式展示在頁面中,如下圖4-3所示。圖4-3選擇房間流程圖查看預(yù)定訂單模塊:用戶通過點擊預(yù)定訂單模塊進入界面,系統(tǒng)響應(yīng)反饋出現(xiàn)酒店訂單詳情包括預(yù)定是填寫的信息與預(yù)定記錄。一鍵入住模塊:用戶在預(yù)定界面點擊一鍵入住后,在預(yù)定酒店時填寫的證件號及時反饋到酒店內(nèi)部數(shù)據(jù)庫,待管理員核對后發(fā)送請求到門禁系統(tǒng),用戶對準(zhǔn)門口的攝像頭,核對成功后門自動打開。后臺功能模塊:用戶管理模塊:用戶管理模塊下有用戶列表,利用了SQL的用戶增刪查改原理進行對用戶的實時管理,非常有效與方便。系統(tǒng)日志模塊:此模塊針對管理員開發(fā)的系統(tǒng)日志,同樣是利用了SQL的增刪查改原理進行對文本的管理。房型管理模塊:管理員在房型管理這塊可以進行對房間類型分類并且標(biāo)價,可住人數(shù),床位數(shù),房間數(shù),可用房間數(shù),已預(yù)定數(shù),已住人數(shù),狀態(tài)以及房間類型的備注進行增刪查改指令。房間管理模塊:管理員可以在此上傳房間圖片,更改房間編號,房間類型,樓層以及入住狀態(tài)和備注預(yù)訂管理模塊:管理員進入預(yù)訂管理模塊后能夠清楚的查詢到用戶預(yù)訂信息并對此相關(guān)管理,同樣使用了SQL的增刪查改功能實現(xiàn)。入住管理模塊:當(dāng)管理員核對用戶信息之后,可以對用戶進行入住管理的設(shè)定,從而使用戶進入可入住狀態(tài),實現(xiàn)管理員對系統(tǒng)的互動響應(yīng)。營業(yè)統(tǒng)計模塊:通過簡單的算法計算出用戶訂單情況形成可視化數(shù)據(jù)統(tǒng)計圖像,有利于管理者對酒店進一步的管理。4.1.2非功能性需求此項目UI界面設(shè)計簡潔清晰,由于技術(shù)有限,人臉識別功能需手動對用戶進行核對信息,方能使住客完成入住。固然對于所需要的系統(tǒng)配置不用很高,運行起來相對穩(wěn)定,也是大部分酒店都比較適用,靈感參考一般的酒店預(yù)訂系統(tǒng)。4.2開發(fā)環(huán)境的選擇系統(tǒng)需求分析階段采用了MicrosoftWindows10。后期系統(tǒng)代碼開發(fā)階段則采用idea+mysql+springmvc+jsp+mybatis+tomcat7的運行環(huán)境。下面我主要介紹一下這兩個工具,在設(shè)計這個項目過程中,為了方便處理數(shù)據(jù),會用到數(shù)據(jù)庫這個東西來為系統(tǒng)提供有效地訪問數(shù)據(jù)的方式,數(shù)據(jù)庫能夠提高程序的安全性以及方便性,同時還減少了我們開發(fā)的時間。圖4-4數(shù)據(jù)庫系統(tǒng)和接口的原理圖數(shù)據(jù)庫一般是分為兩種,一種是關(guān)系型的數(shù)據(jù)庫(Oracle,DB2,MySQL,SQLServer),還有一種就是是非關(guān)系型數(shù)據(jù)庫(NoSql、MongeDB),本人就選擇了MYSQL數(shù)據(jù)庫。MySQL由于比較大眾,并且還能提高速度,而且提高了多種借口來實現(xiàn)數(shù)據(jù)的交互,雖然功能還不咋樣,但是面對本人這個項目的話就足夠了,后期有需要的話也可以再次加工。利用MYSQL數(shù)據(jù)庫來進行數(shù)據(jù)的存儲好處有很多,這里主要將它和控制層連接在一起,通過sql語句進行增刪改查這種小功能,如果后面有需要才會增加新的功能。Tomcat是一個輕量級的服務(wù)器,目前多用于中小型企業(yè)開發(fā)首選,而且Tomcat還是免費,開源的應(yīng)用服務(wù)器,在運行時占用資源少,擴展性也強,本課題也將使用它作為服務(wù)器。第五章系統(tǒng)的實現(xiàn)5.1總體實現(xiàn)系統(tǒng)的運行首先是登錄模塊,用戶端分為商家與消費者,兩者都需要對用戶進行人臉識別與身份驗證,通過之后方能進入系統(tǒng)主頁面,兩種用戶端有不同的系統(tǒng)操作頁面,商家主要鏈接著系統(tǒng)的各種管理功能模塊以及消費者訂單信息,身份信息以及人臉信息直接儲存到相關(guān)云端,甚至可直接接入公安系統(tǒng)。商家端需要人臉識別身份認(rèn)證登錄后臺,消費者端在登陸時需要人臉注冊登陸,接入公安系統(tǒng)認(rèn)證,直接進行預(yù)定和退房等等酒店功能,門控系統(tǒng)連入WIFi直接進行對消費者的人臉進行識別與認(rèn)證即可。服務(wù)基本上可以在移動端上實現(xiàn),圖5-1總體系統(tǒng)設(shè)計結(jié)構(gòu)5.2預(yù)訂界面的實現(xiàn)部署的網(wǎng)站為http://localhost:8080/HotelSSM/home/index,使用Chrome進去之后的首頁如圖5-2首頁酒店預(yù)訂圖。圖5-2首頁酒店預(yù)訂圖5.3客戶端的實現(xiàn)5.3.1登陸與注冊頁面已注冊用戶可直接使用用戶名與密碼進行網(wǎng)頁登陸從而進行正常預(yù)訂流程,若沒有注冊過直接點擊立即注冊然后進行相應(yīng)的信息填寫,如圖5-3所示。圖5-3用戶登陸界面注冊頁面如圖5-4所示。圖5-4注冊頁面圖5.3.2用戶中心登陸進入用戶主頁面之后回到網(wǎng)頁一開始的預(yù)訂界面,預(yù)訂之后可以查詢用戶中心,然后可以查詢預(yù)訂的相關(guān)信息,可以進行修改密碼,修改個人資料。如圖5-5所示。圖5-5用戶中心圖5.3.3預(yù)訂房間界面用戶通過點擊預(yù)訂按鈕彈出預(yù)訂界面, 然后進行相關(guān)新的填寫圖5-6預(yù)訂房間界面具體代碼如下: /** *@parammodel *@return */ @RequestMapping(value="/book_order",method=RequestMethod.GET) publicModelAndViewbookOrder(ModelAndViewmodel,LongroomTypeId ){ model.addObject("roomType",roomTypeService.find(roomTypeId)); model.setViewName("home/account/book_order"); returnmodel; } /** *預(yù)定信息提交 *@paramaccount *@return */ @RequestMapping(value="/book_order",method=RequestMethod.POST) @ResponseBody publicMap<String,String>bookOrderAct(BookOrderbookOrder,HttpServletRequestrequest){ Map<String,String>ret=newHashMap<String,String>(); if(bookOrder==null){ ret.put("type","error"); ret.put("msg","請?zhí)顚懻_的預(yù)定訂單信息!"); returnret; } Accountaccount=(Account)request.getSession().getAttribute("account"); if(account==null){ ret.put("type","error"); ret.put("msg","客戶不能為空!"); returnret; } bookOrder.setAccountId(account.getId()); if(bookOrder.getRoomTypeId()==null){ ret.put("type","error"); ret.put("msg","房型不能為空!"); returnret; } if(StringUtils.isEmpty(bookOrder.getName())){ ret.put("type","error"); ret.put("msg","預(yù)定訂單聯(lián)系人名稱不能為空!"); returnret; } if(StringUtils.isEmpty(bookOrder.getMobile())){ ret.put("type","error"); ret.put("msg","預(yù)定訂單聯(lián)系人手機號不能為空!"); returnret; } if(StringUtils.isEmpty(bookOrder.getIdCard())){ ret.put("type","error"); ret.put("msg","聯(lián)系人身份證號不能為空!"); returnret; } if(StringUtils.isEmpty(bookOrder.getArriveDate())){ ret.put("type","error"); ret.put("msg","到達時間不能為空!"); returnret; } if(StringUtils.isEmpty(bookOrder.getLeaveDate())){ ret.put("type","error"); ret.put("msg","離店時間不能為空!"); returnret; } bookOrder.setCreateTime(newDate()); bookOrder.setStatus(0); if(bookOrderService.add(bookOrder)<=0){ ret.put("type","error"); ret.put("msg","添加失敗,請聯(lián)系管理員!"); returnret; } RoomTyperoomType=roomTypeService.find(bookOrder.getRoomTypeId()); //預(yù)定成功后去修改該房型的預(yù)定數(shù) if(roomType!=null){ roomType.setBookNum(roomType.getBookNum()+1); roomType.setAvilableNum(roomType.getAvilableNum()-1); roomTypeService.updateNum(roomType); //如果可用的房間數(shù)為0,則設(shè)置該房型狀態(tài)已滿 if(roomType.getAvilableNum()==0){ roomType.setStatus(0); roomTypeService.edit(roomType); } } ret.put("type","success"); ret.put("msg","預(yù)定成功!"); returnret; }5.4服務(wù)端的實現(xiàn)5.4.1登陸界面5-7登陸界面圖5.4.2房型列表管理員通過對房型的管理可以定義酒店的房間類型價格以及相關(guān)屬性,讓用戶實時查看可預(yù)訂的房間相關(guān)信息。實現(xiàn)圖片如圖5-8所示。圖5-8酒店房型圖5.4.3房間管理管理對房間的管控也是一道工序,該功能呈現(xiàn)的效果是管理員可以更改房間的入住情況,若有人入住則標(biāo)記入住,若有人退房,則標(biāo)記打掃中或者可入住,如圖5-9所示。圖5-9房間管理圖5.4.4預(yù)訂管理管理員可增刪查改用戶的相關(guān)信息,在此進行人臉身份與身份證核對,方能更改入住狀態(tài),一般是從預(yù)定中改為已入住,相關(guān)界面如圖5-10。圖5-10預(yù)訂管理界面相關(guān)代碼如下:packagegrammer.controller.admin;importgrammer.entity.BookOrder;importgrammer.entity.RoomType;importgrammer.page.admin.Page;importgrammer.service.AccountService;importgrammer.service.BookOrderService;importgrammer.service.RoomTypeService;importmons.lang.StringUtils;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.stereotype.Controller;importorg.springframework.web.bind.annotation.RequestMapping;importorg.springframework.web.bind.annotation.RequestMethod;importorg.springframework.web.bind.annotation.RequestParam;importorg.springframework.web.bind.annotation.ResponseBody;importorg.springframework.web.servlet.ModelAndView;importjava.util.Date;importjava.util.HashMap;importjava.util.Map;/***@authorAdministrator*/@RequestMapping("/admin/book_order")@ControllerpublicclassBookOrderController{ @Autowired privateAccountServiceaccountService; @Autowired privateRoomTypeServiceroomTypeService; @Autowired privateBookOrderServicebookOrderService; /** *預(yù)定訂單管理列表頁面 *@parammodel *@return */ @RequestMapping(value="/list",method=RequestMethod.GET) publicModelAndViewlist(ModelAndViewmodel){ model.addObject("roomTypeList",roomTypeService.findAll()); model.addObject("accountList",accountService.findAll()); model.setViewName("book_order/list"); returnmodel; } /** *預(yù)定訂單信息添加操作 *@parambookOrder *@return */ @RequestMapping(value="/add",method=RequestMethod.POST) @ResponseBody publicMap<String,String>add(BookOrderbookOrder){ Map<String,String>ret=newHashMap<String,String>(); if(bookOrder==null){ ret.put("type","error"); ret.put("msg","請?zhí)顚懻_的預(yù)定訂單信息!"); returnret; } if(bookOrder.getAccountId()==null){ ret.put("type","error"); ret.put("msg","客戶不能為空!"); returnret; } if(bookOrder.getRoomTypeId()==null){ ret.put("type","error"); ret.put("msg","房型不能為空!"); returnret; } if(StringUtils.isEmpty(bookOrder.getName())){ ret.put("type","error"); ret.put("msg","預(yù)定訂單聯(lián)系人名稱不能為空!"); returnret; } if(StringUtils.isEmpty(bookOrder.getMobile())){ ret.put("type","error"); ret.put("msg","預(yù)定訂單聯(lián)系人手機號不能為空!"); returnret; } if(StringUtils.isEmpty(bookOrder.getIdCard())){ ret.put("type","error"); ret.put("msg","聯(lián)系人身份證號不能為空!"); returnret; } if(StringUtils.isEmpty(bookOrder.getArriveDate())){ ret.put("type","error"); ret.put("msg","到達時間不能為空!"); returnret; } if(StringUtils.isEmpty(bookOrder.getLeaveDate())){ ret.put("type","error"); ret.put("msg","離店時間不能為空!"); returnret; } bookOrder.setCreateTime(newDate()); if(bookOrderService.add(bookOrder)<=0){ ret.put("type","error"); ret.put("msg","添加失敗,請聯(lián)系管理員!"); returnret; } RoomTyperoomType=roomTypeService.find(bookOrder.getRoomTypeId()); //預(yù)定成功后去修改該房型的預(yù)定數(shù) if(roomType!=null){ roomType.setBookNum(roomType.getBookNum()+1); roomType.setAvilableNum(roomType.getAvilableNum()-1); roomTypeService.updateNum(roomType); //如果可用的房間數(shù)為0,則設(shè)置該房型狀態(tài)已滿 if(roomType.getAvilableNum()==0){ roomType.setStatus(0); roomTypeService.edit(roomType); } } ret.put("type","success"); ret.put("msg","添加成功!"); returnret; } /** *預(yù)定訂單信息編輯操作 *@paramaccount *@return */ @RequestMapping(value="/edit",method=RequestMethod.POST) @ResponseBody publicMap<String,String>edit(BookOrderbookOrder){ Map<String,String>ret=newHashMap<String,String>(); if(bookOrder==null){ ret.put("type","error"); ret.put("msg","請?zhí)顚懻_的預(yù)定訂單信息!"); returnret; } if(bookOrder.getAccountId()==null){ ret.put("type","error"); ret.put("msg","客戶不能為空!"); returnret; } if(bookOrder.getRoomTypeId()==null){ ret.put("type","error"); ret.put("msg","房型不能為空!"); returnret; } if(StringUtils.isEmpty(bookOrder.getName())){ ret.put("type","error"); ret.put("msg","預(yù)定訂單聯(lián)系人名稱不能為空!"); returnret; } if(StringUtils.isEmpty(bookOrder.getMobile())){ ret.put("type","error"); ret.put("msg","預(yù)定訂單聯(lián)系人手機號不能為空!"); returnret; } if(StringUtils.isEmpty(bookOrder.getIdCard())){ ret.put("type","error"); ret.put("msg","聯(lián)系人身份證號不能為空!"); returnret; } if(StringUtils.isEmpty(bookOrder.getArriveDate())){ ret.put("type","error"); ret.put("msg","到達時間不能為空!"); returnret; } if(StringUtils.isEmpty(bookOrder.getLeaveDate())){ ret.put("type","error"); ret.put("msg","離店時間不能為空!"); returnret; } BookOrderexistBookOrder=bookOrderService.find(bookOrder.getId()); if(existBookOrder==null){ ret.put("type","error"); ret.put("msg","請選擇正確的數(shù)據(jù)進行編輯!"); returnret; } if(bookOrderService.edit(bookOrder)<=0){ ret.put("type","error"); ret.put("msg","編輯失敗,請聯(lián)系管理員!"); returnret; } //判斷房型是否發(fā)生變化 if(existBookOrder.getRoomTypeId().longValue()!=bookOrder.getRoomTypeId().longValue()){ //房型發(fā)生了變化 //首先恢復(fù)原來房型的預(yù)定數(shù)及可用數(shù) RoomTypeoldRoomType=roomTypeService.find(existBookOrder.getRoomTypeId()); oldRoomType.setAvilableNum(oldRoomType.getAvilableNum()+1); oldRoomType.setBookNum(oldRoomType.getBookNum()-1); roomTypeService.updateNum(oldRoomType); if(oldRoomType.getStatus()==0){ //舊的房間原來是滿房,現(xiàn)在不滿房的話,恢復(fù)狀態(tài) if(oldRoomType.getAvilableNum()>0){ //設(shè)置成狀態(tài)可用 oldRoomType.setStatus(1); roomTypeService.edit(oldRoomType); } } //修改新的房型的可用數(shù)和預(yù)定數(shù) RoomTypenewRoomType=roomTypeService.find(bookOrder.getRoomTypeId()); newRoomType.setAvilableNum(newRoomType.getAvilableNum()-1); newRoomType.setBookNum(newRoomType.getBookNum()+1); roomTypeService.updateNum(newRoomType); if(newRoomType.getAvilableNum()<=0){ //沒有可用房間數(shù) newRoomType.setStatus(0);//設(shè)置成滿房 roomTypeService.edit(newRoomType); } } ret.put("type","success"); ret.put("msg","修改成功!"); returnret; } /** *分頁查詢預(yù)定訂單信息 *@paramname *@parampage *@return */ @RequestMapping(value="/list",method=RequestMethod.POST) @ResponseBody publicMap<String,Object>list( @RequestParam(name="name",defaultValue="")Stringname, @RequestParam(name="accountId",defaultValue="")LongaccountId, @RequestParam(name="roomTypeId",defaultValue="")LongroomTypeId, @RequestParam(name="idCard",defaultValue="")StringidCard, @RequestParam(name="mobile",defaultValue="")Stringmobile, @RequestParam(name="status",required=false)Integerstatus, Pagepage ){ Map<String,Object>ret=newHashMap<String,Object>(); Map<String,Object>queryMap=newHashMap<String,Object>(); queryMap.put("name",name); queryMap.put("status",status); queryMap.put("accountId",accountId); queryMap.put("roomTypeId",roomTypeId); queryMap.put("idCard",idCard); queryMap.put("mobile",mobile); queryMap.put("offset",page.getOffset()); queryMap.put("pageSize",page.getRows()); ret.put("rows",bookOrderService.findList(queryMap)); ret.put("total",bookOrderService.getTotal(queryMap)); returnret; } }5.5數(shù)據(jù)庫設(shè)計房間表(rooms表)用于管理酒店的房間的信息,這里面包括(長度,寬度,類型,價格,照片等),其中rid為主鍵值,數(shù)據(jù)類型為int,其他都為varchar如圖3.1rooms表所示表5.1rooms表列名數(shù)據(jù)類型長度約束ridint200PRIMARYKEYWidthVarchar200DEFAULTNULLStateVarchar200DEFAULTNULLTelVarchar200DEFAULTNULLTypeVarchar200DEFAULTNULLMoneyVarchar200DEFAULTNULLPhotoVarchar200DEFAULTNULL 用戶表(user表)是用于管理和儲存注冊用戶的相關(guān)信息,這里面包括(id,名字,手機號,身份證,性別,密碼,號數(shù)),如圖3.2user表所示表5.2user表列名數(shù)據(jù)類型長度約束idint300PRIMARYKEYnameVarchar300DEFAULTNULLphoneVarchar300DEFAULTNULLIdentifyVarchar300DEFAULTNULLsexVarchar300DEFAULTNULLpasswordVarchar300DEFAULTNULLcardVarchar300DEFAULTNULL5.6人臉識別模塊實現(xiàn)該酒店管理系統(tǒng)以人臉識別技術(shù)貫穿,云端通過移動端攝像頭對客戶人臉信息進行采集并直接發(fā)送至智能門控系統(tǒng)中,通過人臉匹配后控制房門鎖,實現(xiàn)一步到位,無需通過酒店前臺工作人員,入住全程由客人自行辦理,一定從程度上減少酒店管理成本,還能得到顧客新鮮體驗感。目前技術(shù)有限,僅可以實現(xiàn)一人一房一張臉,如有隨從住客,僅能由通過認(rèn)證的住客帶入房間。圖8人臉識別模塊人臉識別檢測模塊的調(diào)用首先要去大廠平臺獲取APP_ID、APP_KEY、SECRET_KEY三個重要密鑰,然后借用大廠上的APIExplorer自動生成調(diào)用代碼。個人密鑰可以免費申請,稍微填一下資料就可以的。圖9人臉驗證接口調(diào)用publicclassVerifyFace{publicstaticvoidmain(String[]args){try{Credentialcred=newCredential("Secretld密鑰","SecretKey密鑰");HttpProfilehttpProfile=newHttpProfile();httpProfile.setEndpoint("");ClientProfileclientProfile=newClientProfile();clientProfile.setHttpProfile(httpProfile);IaiClientclient=newIaiClient(cred,"ap-guangzhou-open",clientProfile);Stringparams="{\"PersonId\":\"1\"}";VerifyFaceRequestreq=VerifyFaceRequest.fromJsonString(params,VerifyFaceRequest.class);VerifyFaceResponseresp=client.VerifyFace(req);System.out.println(VerifyFaceRequest.toJsonString(resp));}catch(TencentCloudSDKExceptione){System.out.println(e.toString());}}}當(dāng)接口過期的時候,可采用單機的人臉識別算法需要手動核對信息,以下為關(guān)鍵代碼圖。圖5-人臉識別關(guān)鍵實現(xiàn)代碼以下為人臉識別效果圖,運用opencv與os框架實現(xiàn)。圖5-人臉識別效果圖第六章系統(tǒng)測試嚴(yán)格來說本論題的系統(tǒng)測試應(yīng)該包括硬件測試、軟件測試與整機測試的,由于整機還有待開發(fā),固目前只分析硬件與軟件測試。其中最為核心的是系統(tǒng)的人臉識別準(zhǔn)確度和識別效率。6.1系統(tǒng)功能測試首先通過服務(wù)器鏈接進行對移動APP聯(lián)網(wǎng)響應(yīng),再將門控系統(tǒng)通電并且連接網(wǎng)絡(luò),服務(wù)器顯示正常即測試通過。其次測試員對準(zhǔn)門控系統(tǒng)的攝像頭,攝像頭自動識別人臉并進行驗證,測試范圍內(nèi)的時間里,驗證通過則反饋到云端服務(wù)器并發(fā)送開門指令,執(zhí)行開門動作,若驗證失敗,則保持關(guān)門狀態(tài)。當(dāng)門控系統(tǒng)斷網(wǎng)時,不與服務(wù)器發(fā)生響應(yīng),即保持關(guān)門狀態(tài)。此時只能依靠在通電的情況下提前錄入相關(guān)數(shù)據(jù)的酒店管理員進行單機人臉識別驗證方能執(zhí)行開門動作。6.2人臉識別模塊測試通過對不同公司的人臉識別API接口以及相關(guān)可靠數(shù)據(jù)測試得出,在測試人數(shù)一定的情況下以及其攝像頭燈光充足下,識別率基本上穩(wěn)定在99%以上,平均的人臉識別準(zhǔn)確率以及其響應(yīng)效率控制在1s左右。其中Face++公司以及阿里旗下的較為先進。人臉識別的測試早已在多年前根據(jù)不同層次的卷積程度以及其不同算法進行無數(shù)次的測試,雖然目前所作的測試相比之下微不足道,但是還是對人臉識別模塊有所研究,以下是對人臉識別登陸測試的核心代碼。publicstaticJSONObjectFaclogin(ImageimageU){//人臉登錄 JSONObjectjson=newJSONObject(); json.put("error_msg","error"); if(imageU!=null){ JSONObjectdfjson=DetectionFace.Detection(imageU);//合格照片檢查 if("SUCCESS".equals(dfjson.get("error_msg"))){ JSONObjectuf=UserFace.User(imageU);//提交 if("SUCCESS".equals(uf.get("error_msg").toString())){//查詢出結(jié)果 Doublescore=newDouble(uf.get("score").toString()); if(score>70){ json.put("error_msg","SUCCESS"); json.put("user_id",uf.get("user_id").toString()); }圖10人臉識別登陸測試用例6.3遠(yuǎn)程控制端性能測試門控系統(tǒng)中的人臉識別模塊通過WIFI遠(yuǎn)程控制端發(fā)送相應(yīng)數(shù)據(jù)到服務(wù)器中,再到移動端的云端服務(wù)器中,因為網(wǎng)絡(luò)問題必然存在一些網(wǎng)絡(luò)延遲,通過對比普通APP與微信小程序可知,微信小程序中調(diào)用的云端數(shù)據(jù)處理稍微快那么0.5s左右,不過差距也不大目前還是可以滿足其系統(tǒng)的運行效率標(biāo)準(zhǔn)。第七章結(jié)論與未來研究方向7.1結(jié)論通過對基于人臉識別的酒店自助管理系統(tǒng)研究,其中花了大量時間在人臉識別的研究上,后來發(fā)現(xiàn)這是一個無底洞并且也值得我接下來業(yè)余時間對此進行研究,目前的技術(shù)有限,無法自己另外做一套區(qū)別于市面上的人臉識別算法,接入外部模塊是如今云端系統(tǒng)最好的選擇,結(jié)合當(dāng)前現(xiàn)況來講需要花時間的不再是從前的敲代碼反而是對軟件的設(shè)計與界面UI設(shè)計來得比較真實與快捷,畢竟如今模擬平臺數(shù)不勝數(shù),甚至有不少自動生成代碼的移動端設(shè)計。酒店的智能化程度推動著人工智能發(fā)展,而人臉識別便是人工智能最開始的產(chǎn)物,這也將會是以后繼續(xù)需要研究的領(lǐng)域,雖說人臉識別的缺點多于虹膜與指紋識別,但隨著科技的發(fā)展,人臉識別必將成為人們出行的主導(dǎo)作用。酒店管理系統(tǒng)的基礎(chǔ)上,設(shè)計結(jié)果顛覆了傳統(tǒng)的登陸模式,不再是以往的手機號與賬號注冊登陸了,而是直接人臉識別認(rèn)證登陸,這有便于監(jiān)控APP本身以外還能對住客及時接入公安系統(tǒng),也被實時監(jiān)控。那么進入預(yù)定界面之后跟如今的酒店預(yù)定差別不大,在預(yù)定好并完成支付的時候,云端將把人臉圖像特征采集等傳輸?shù)街悄荛T控,實現(xiàn)一步到位無需辦理中間入住手續(xù)。當(dāng)然,其中有不少弊端,興許大家會考慮安全問題,畢竟所有人都可以上酒店電梯,酒店里面的所有監(jiān)控如果都能智能識別到住客的危險并實時接入公安系統(tǒng),那么是不是住客就不需要擔(dān)心危險了。除了模塊流程以外跟重要的是模塊體驗感,如今手機上的軟件如云,如何吸引消費者的眼球越來越成為軟件設(shè)計主流,模塊多數(shù)可以采用第三方的而通過比較,界面相對簡陋或者設(shè)計感不強的商家成交量也不會太大。那么利用小程序設(shè)計出來的界面效果也算是界面模塊了,這個模塊所涵蓋的工作量就比較大了,首先是商家管理系統(tǒng),包含了住客信息模塊和房間狀態(tài)模塊,若出現(xiàn)異常,商家可在管理平臺上進行信息修改,為了防止商家管理者出現(xiàn)責(zé)任爭執(zhí),每次不同商家在平臺的修改都有記錄。系統(tǒng)并不全面,仍然有多處模塊需要完善與修改的地方,希望的是在不斷修改與突發(fā)奇想之后并被相關(guān)酒店管理者借鑒參考也算是實現(xiàn)了此系統(tǒng)的價值了。通過對傳統(tǒng)的入住系統(tǒng)的對比分析,基于人臉識別的酒店自助入住系統(tǒng)不僅在入住效率上有所提高還能讓消費者有著愿意去嘗試的心態(tài)做出嘗試消費,這種消費理念在消費行為里是很難得的,也使得酒店管理者減少了管理成本。系統(tǒng)設(shè)計論述得比較籠統(tǒng),具體詳細(xì)設(shè)計還需要進一步完善與開發(fā)。7.2未來研究方向未來可能會往小程序方面發(fā)展,開發(fā)對自己工作有幫助的小程序,前一段時間在一家公司實習(xí)就被需要這項技能,因為技術(shù)不夠成熟沒有拿下該項目,這是一個動力與方向指導(dǎo)我去學(xué)習(xí)小程序,目前的小程序模塊也越來越豐富,很多都可以調(diào)用了。待時機成熟之時,屬于自己開發(fā)那套小程序被運營起來是我畢業(yè)之后最想去完成的事情之一。還需要不斷地磨練自己,嚴(yán)格鞭策自己重新投入到學(xué)習(xí)之中,即使邊工作邊學(xué)習(xí),也不能耽誤了今后研究的方向,成為社會有價值的人,做有價值的事。參考文獻潘福達.進酒店自助辦理入住.全流程無接觸[N].北京日報客戶端,2020-02-19.江白華.基于深度學(xué)習(xí)的人臉識別研究[D]安徽.安徽理工大學(xué).2019.呂婧淑.基于區(qū)塊鏈和人臉識別的雙因子身份認(rèn)證模型[J]應(yīng)用科學(xué)學(xué)報,2019,(2):164-178.THACHANSOPHANYOULY.基于ShuffleNet的人臉識別[D]浙江.浙江大學(xué).2019.Shieyguoxiaoling.微信小程序--人臉采集與識別[Z]/shirleyguoxiaoling/java/article/details/80474910,2018-05-28.李曉風(fēng).基于人臉識別的自助式酒店入住裝置[P].中國專利:201920813192.6.2019-05-31未知.酒店入住自助辦理系統(tǒng)設(shè)計方案[Z]/p-1422604031.html.2016-01-10張家亮.主題酒店智能集成控制系統(tǒng)設(shè)計與實現(xiàn)[D]武漢.武漢理工大學(xué).2014.孔垂禹.遠(yuǎn)程終端可控AI門禁系統(tǒng)[J].吉林大學(xué)學(xué)報,2019,(5):533-539.[10]顧德喜.基于百度AI開放平臺的人臉識別門禁系統(tǒng)[D]江南.江南大學(xué).2019.[11]趙琪.基于Android系統(tǒng)設(shè)計的人臉識別門鎖[D]江蘇.三江學(xué)院.2017致謝首先感謝徐老師對我論題的認(rèn)可,當(dāng)時這個論題也是自己一時興起想到的,也沒有考慮得特別周到,甚至是沒有考慮到自己曾經(jīng)掌握的知識是否能駕馭此論文,但是徐老師還是選擇了對我的相信,并在論文撰寫期間與論文指導(dǎo)工作中對我細(xì)心并耐心教導(dǎo)。在學(xué)??煲ㄖ峤徽撐闹畷r,老師也能對我忙碌的工作有所理解,讓我及時跟上畢業(yè)論文進度,以防耽誤畢業(yè),感謝!其次要感謝的是過去四年的老師,對每個同學(xué)都不放棄不拋棄,真心誠意對待同學(xué)并鼓勵我們通過實際操作提升自己的能力。還要感謝的是即將要參加答辯的老師,雖然還沒開展答辯,我想評閱與答辯老師都會對我們的論文極其負(fù)責(zé)與指導(dǎo),使得我們畫上完美的畢業(yè)句號。最后我還想要感謝大學(xué)以來陪伴我的同學(xué)們還有背后支持我的父母,是身邊的人才讓我們活得更加有意義,大學(xué)四年同學(xué)們也選擇相信我才讓我一直以來從事班長這一職務(wù),但是期間也留下了不少遺憾??傆幸恍┻z憾才會讓生活過得去,才會使我們變得更加的努力,不管是畢業(yè)以后做什么事,時刻懷揣一顆感恩之心也是會收獲更多!

捷鍵與一些電腦小技巧HYPERLINKwinkey+d:

這是高手最常用的第一快捷組合鍵。這個快捷鍵組合可以將桌面上的所有窗口瞬間最小化,無論是聊天的窗口還是游戲的窗口……只要再次按下這個組合鍵,剛才的所有窗口都回來了,而且激活的也正是你最小化之前在使用的窗口!

--這個就是winkeywinkey+f:

不用再去移動鼠標(biāo)點“開始→搜索→文件和文件夾”了,在任何狀態(tài)下,只要一按winkey+f就會彈出搜索窗口。

winkey+r:

在我們的文章中,你經(jīng)常會看到這樣的操作提示:“點擊‘開始→運行’,打開‘運行’對話框……”。其實,還有一個更簡單的辦法,就是按winkey+r!

alt+tab:

如果打開的窗口太多,這個組合鍵就非常有用了,它可以在一個窗口中顯示當(dāng)前打開的所有窗口的名稱和圖標(biāo)●,選中自己希望要打開的窗口,松開這個組合鍵就可以了。而alt+tab+shift鍵則可以反向顯示當(dāng)前打開的窗口。

winkey+e:

當(dāng)你需要打開資源管理器找文件的時候,這個快捷鍵會讓你感覺非?!八?!再也不用騰出一只手去摸鼠標(biāo)了!

小提示:

winkey指的是鍵盤上刻有windows徽標(biāo)的鍵●。winkey主要出現(xiàn)在104鍵和107鍵的鍵盤中。104鍵盤又稱win95鍵盤,這種鍵盤在原來101鍵盤的左右兩邊、ctrl和alt鍵之間增加了兩個windwos鍵和一個屬性關(guān)聯(lián)鍵。107鍵盤又稱為win98鍵盤,比104鍵多了睡眠、喚醒、開機等電源管理鍵,這3個鍵大部分位于鍵盤的右上方。

再補充點

F1顯示當(dāng)前程序或者windows的幫助內(nèi)容。

F2當(dāng)你選中一個文件的話,這意味著“重命名”

F3當(dāng)你在桌面上的時候是打開“查找:所有文件”對話框

F10或ALT激活當(dāng)前程序的菜單欄

windows鍵或CTRL+ESC打開開始菜單

CTRL+ALT+DELETE在win9x中打開關(guān)閉程序?qū)υ捒?/p>

DELETE刪除被選擇的選擇項目,如果是文件,將被放入回收站

SHIFT+DELETE刪除被選擇的選擇項目,如果是文件,將被直接刪除而不是

放入回收站

CTRL+N新建一個新的文件

CTRL+O打開“打開文件”對話框

CTRL+P打開“打印”對話框

CTRL+S保存當(dāng)前操作的文件

CTRL+X剪切被選擇的項目到剪貼板

CTRL+INSERT或CTRL+C復(fù)制被選擇的項目到剪貼板

SHIFT+INSERT或CTRL+V粘貼剪貼板中的內(nèi)容到當(dāng)前位置

ALT+BACKSPACE或CTRL+Z撤銷上一步的操作

ALT+SHIFT+BACKSPACE重做上一步被撤銷的操作

Windows鍵+D:最小化或恢復(fù)windows窗口

Windows鍵+U:打開“輔助工具管理器”

Windows鍵+CTRL+M重新將恢復(fù)上一項操作前窗口的大小和位置

Windows鍵+E打開資源管理器

Windows鍵+F打開“查找:所有文件”對話框

Windows鍵+R打開“運行”對話框

Windows鍵+BREAK打開“系統(tǒng)屬性”對話框

Windows鍵+CTRL+F打開“查找:計算機”對話框

SHIFT+F10或鼠標(biāo)右擊打開當(dāng)前活動項目的快捷菜單

SHIFT在放入CD的時候按下不放,可以跳過自動播放CD。在打開wo

rd的時候按下不放,可以跳過自啟動的宏

ALT+F4關(guān)閉當(dāng)前應(yīng)用程序

ALT+SPACEBAR打開程序最左上角的菜單

ALT+TAB切換當(dāng)前程序

ALT+ESC切換當(dāng)前程序

ALT+ENTER將windows下運行的MSDOS窗口在窗口和全屏幕狀態(tài)間切換

PRINTSCREEN將當(dāng)前屏幕以圖象方式拷貝到剪貼板

ALT+PRINTSCREEN將當(dāng)前活動程序窗口以圖象方式拷貝到剪貼板

CTRL+F4關(guān)閉當(dāng)前應(yīng)用程序中的當(dāng)前文本(如word中)

CTRL+F6切換到當(dāng)前應(yīng)用程序中的下一個文本(加shift可以跳到前

一個窗口)

在IE中:

ALT+RIGHTARROW顯示前一頁(前進鍵)

ALT+LEFTARROW顯示后一頁(后退鍵)

CTRL+TAB在頁面上的各框架中切換(加shift反向)

F5刷新

CTRL+F5強行刷新1.打開“我的電腦”-“工具”-“文件夾選項”-“查看”-在“顯示所有文件和文件夾”選項前打勾-“確定”

2.刪除以下文件夾中的內(nèi)容:

x:\DocumentsandSettings\用戶名\Cookies\下的所有文件(保留index文件)

x:\DocumentsandSettings\用戶名\LocalSettings\Temp\下的所有文件(用戶臨時文件)

x:\DocumentsandSettings\用戶名\LocalSettings\TemporaryInternetFiles\下的所有文件(頁面文件)

x:\DocumentsandSettings\用戶名\LocalSettings\History\下的所有文件(歷史紀(jì)錄)

x:\DocumentsandSettings\用戶名\Recent\下的所有文件(最近瀏覽文件的快捷方式)

x:\WINDOWS\Temp\下的所有文件(臨時文件)

x:\WINDOWS\ServicePackFiles(升級sp1或sp2后的備份文件)

x:\WINDOWS\DriverCache\i386下的壓縮文件(驅(qū)動程序的備份文件)

x:\WINDOWS\SoftwareDistribution\download下的所有文件

3.如果對系統(tǒng)進行過windoesupdade升級,則刪除以下文件:x:\windows\下以$u...開頭的隱藏文件

4.然后對磁盤進行碎片整理,整理過程中請退出一切正在運行的程序

5.碎片整理后打開“開始”-“程序”-“附件”-“系統(tǒng)工具”-“系統(tǒng)還原”-“創(chuàng)建一個還原點”(最好以當(dāng)時的日期作為還原點的名字)

6.打開“我的電腦”-右鍵點系統(tǒng)盤-“屬性”-“磁盤清理”-“其他選項”-單擊系統(tǒng)還原一欄里的“清理”-選擇“是”-ok了

7、在各種軟硬件安裝妥當(dāng)之后,其實XP需要更新文件的時候就很少了。刪除系統(tǒng)備份文件吧:開始→運行→sfc.exe/purgecache近3xxM。(該命令的作用是立即清除"Windows文件保護"文件高速緩存,釋放出其所占據(jù)的空間)

8、刪掉\windows\system32\dllcache下dll檔(減去200——300mb),這是備用的dll檔,只要你已拷貝了安裝文件,完全可以這樣做。

9、XP會自動備份硬件的驅(qū)動程序,但在硬件的驅(qū)動安裝正確后,一般變動硬件的可能性不大,所以也可以考慮將這個備份刪除,文件位于\windows\drivercache\i386目錄下,名稱為driver.cab,你直接將它刪除就可以了,通常這個文件是74M。

10、刪除不用的輸入法:對很多網(wǎng)友來說,WindowsXPt系統(tǒng)自帶的輸入法并不全部都合適自己的使用,比如IMJP8_1日文輸入法、IMKR6_1韓文輸入法這些輸入法,如果用不著,我們可以將其刪除。輸入法位于\windows\ime\文件夾中,全部占用了88M的空間。

11、升級完成發(fā)現(xiàn)windows\多了許多類似$NtUninstallQ311889$這些目錄,都干掉吧,1x-3xM

12、另外,保留著\windows\help目錄下的東西對我來說是一種傷害,呵呵。。。都干掉!

13、關(guān)閉系統(tǒng)還原:系統(tǒng)還原功能使用的時間一長,就會占用大量的硬盤空間。因此有必要對其進行手工設(shè)置,以減少

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論