freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于手勢識別的幻燈片控制系統(tǒng)的設計畢業(yè)論文-在線瀏覽

2024-08-07 20:35本頁面
  

【正文】 弊端。例如:  inline int Add(int a,int b)。使用函數(shù)重載  在C語言中,兩個函數(shù)的名稱不能相同,否則會導致編譯錯誤。例如:  void PutHz(char* str)。//在x,y處輸入數(shù)字  使用函數(shù)重載可以幫助程序員處理更多的復雜問題,避免了使用諸如intabs()、fabs()、dabs()等繁雜的函數(shù)名稱;同時在大型程序中,使函數(shù)名易于管理和使用,而不必絞盡腦汁地去處理函數(shù)名。用引用(reference)代替指針進行參數(shù)傳遞  在C語言中,如果一個函數(shù)需要修改用作參數(shù)的變量值的時候 ,參數(shù)應該聲明為指針類型?!   調(diào)用時則使用  Add(amp。 //其中x為int或可以轉(zhuǎn)化為int的類型,如unsigned int, 但這時候編譯器通常會給出warning  對于復雜的程序,使用指針容易出錯,程序也難以讀懂。引用就是對變量取的一個別名,對引用進行操作,這就相當于對原有變量進行操作。 a)  {  a++。 //其中x為int  這個函數(shù)與使用指針的上一個函數(shù)的功能是一樣的,然而代碼卻更為簡潔和清晰易懂?! f(y==1)  x=wherex()?! utHx(str)。//使用缺省參數(shù),在當前位置輸出  PutHzxy(C++語言,10,10)。//對y使用缺省參數(shù),指定x的位置  通常的情況下,一個函數(shù)應該具有盡可能大的靈活性?! ⌒枰f明的是,所有的缺省參數(shù)必須出現(xiàn)在不缺省參數(shù)的右邊。否則當你省略其中一個參數(shù)的時候,編譯器無法知道你是自定義了這個參數(shù)還是利用了缺省參數(shù)而定義了非缺省的參數(shù)。幾乎所有的代碼都采用了模板類和模版函數(shù)的方式,這相比于傳統(tǒng)的由函數(shù)和類組成的庫來說提供了更好的代碼重用機會。//使用typedef 使代碼看起來更簡潔  int main()  {  intvector vi。i10,i++)  (i)。i()。//[]操作符被重載,使得我們可以像訪問數(shù)組一樣訪問vector中的元素} MFC簡介 MFC簡述MFC是一個編程框架。因為總體上,MFC框架定義了應用程序的輪廓,并提供了用戶接口的標準實現(xiàn)方法,程序員所要做的就是通過預定義的接口把具體應用程序特有的東西填入這個輪廓。MFC實現(xiàn)了對應用程序概念的封裝,把類、類的繼承、動態(tài)約束、類的關(guān)系和相互作用等封裝起來。針對不同的應用和目的,程序員采用不同的模板。這些模板都采用了以文檔視為中心的思想,每一個模板都包含一組特定的類。例如,為了實現(xiàn)消息映射機制,MFC編程框架必須要保證首先得到消息,然后按既定的方法進行處理。同時,MFC支持對底層API的直接調(diào)用。框架或者由其本身處理事件,不依賴程序員的代碼;或者調(diào)用程序員的代碼來處理應用程序特定的事件。例如,繼承時,應用程序特定的事件由程序員的派生類來處理,不感興趣的由基類處理。MFC類庫提供了一組通用的可重用的類庫供開發(fā)人員使用。MFC 應用程序的總體結(jié)構(gòu)通常由開發(fā)人員從MFC類派生的幾個類和一個CWinApp類對象(應用程序?qū)ο螅┙M成。Windows 應用程序中,MFC 的主包含文件為。 重要的MFC 有一些重要的MFC應用如下:CWnd 窗口,它是大多數(shù)“看得見的東西”的父類(Windows里幾乎所有看得見的東西都是一個窗口,大窗口里有許多小窗口),比如視圖CView、框架窗口CFrameWnd、工具條CToolBar、對話框CDialog、按鈕CButton,等等?! Document 文檔,負責內(nèi)存數(shù)據(jù)與磁盤的交互?! View 視圖,負責內(nèi)存數(shù)據(jù)與用戶的交互。最重要的是OnDraw(重畫窗口),通常用CWnd::Invalidate()來啟動它?! DC 設備文本。這圖就抽象為CDC。把CDC想象成一張紙,每個窗口都有一個CDC相聯(lián)系,負責畫窗口?! Dialog 對話框。似于C中的main函數(shù),是程序執(zhí)行的入口和管理者,負責程序建立、消滅,主窗口和文檔模板的建立?! GdiObject及子類,用于向設備文本畫圖?! Pen 筆,畫線?! Font 字體,控制文字輸出的字體?! Palette調(diào)色板?! File 文件?! String 字符串?! Point 點,就是(x,y)對。  CSize 大小,就是(cx,cy)對(寬、高)。它輕量級而且高效——由一系列 C 函數(shù)和少量 C++ 類構(gòu)成,實現(xiàn)了圖像處理和計算機視覺方面的很多通用算法,功能涵蓋圖像處理、計算機視覺和模式識別等領域。OpenCV 擁有包括 300 多個C函數(shù)的跨平臺的中、高層 API。它對非商業(yè)應用和商業(yè)應用都是免費的。 Integrated Performance Primitives (IPP) 提供了透明接口。首先有必要簡單介紹一下計算機視覺的有關(guān)知識。作為一門綜合性的交叉學科,計算機視覺處理的領域涉及到計算機科學與工程、信號處理、物理學、應用數(shù)學與統(tǒng)計學以及神經(jīng)生理學與認知科學等方面,并在制造業(yè)、檢驗、文檔分析、醫(yī)療診斷和軍事等領域的各種智能自主系統(tǒng)中有著廣泛的應用。OpenCV作為開放的數(shù)字圖像處理和計算機視覺軟件平臺,有以下特點:① 開放C源碼。③ 統(tǒng)一的結(jié)構(gòu)和功能定義。⑤ 方便靈活的用戶接口。作為一個基本的計算機視覺、圖像處理和模式識別的開源項目,OpenCV可以直接應用于很多領域,作為二次開發(fā)的理想工具。下面介紹一些OpenCV編程時的特點。 cvMoveWindow(win1, 100, 100)。 img=cvLoadImage(fileName)。顯示圖像: cvShowImage(win1,img)。改變窗口尺寸: cvResizeWindow(win1,100,100)。src = float/byte grayscale/color imagedst = byte grayscale/color imagelags = CV_CVTIMG_FLIP (flip vertically)CV_CVTIMG_SWAP_RB (swap the R and B channels)轉(zhuǎn)換彩色圖像為灰度圖像: 使用OpenCV轉(zhuǎn)換函數(shù): cvCvtColor(cimg,gimg,CV_BGR2GRAY)。icimgheight。jcimgwidth。從視頻序列中抓取一幀:OpenCV支持從攝像頭或視頻文件(AVI)中抓取圖像.從攝像頭獲取初始化: CvCapture*capture=cvCaptureFromCAM(0)。抓取幀: IplImage* img = 0。exit(0)。 // 恢復獲取的幀圖像 支持向量機(SVM)簡介支持向量機(Support Vector Machine)簡稱 SVM,是統(tǒng)計學習理論中較年輕的內(nèi)容,也是最實用的部分,目前仍處在不斷發(fā)展階段。該方法從樣本集中選擇一組特征子集,使得對于特征子集的劃分等價于對整個樣本集的分割,這組特征子集稱為支持向量(SV)。SVM的主要思想可以概括為兩點: (1) 它是針對線性可分情況進行分析,對于線性不可分的情況,通過使用非線性映射算法將低維輸入空間線性不可分的樣本轉(zhuǎn)化為高維特征空間使其線性可分,從而 使得高維特征空間采用線性算法對樣本的非線性特征進行線性分析成為可能;(2) 它基于結(jié)構(gòu)風險最小化理論之上在特征空間中建構(gòu)最優(yōu)分割超平面,使得學習器得到全局最優(yōu)化,并且在整個樣本空間的期望風險以某個概率滿足一定上界。而其他分類方法(如基于規(guī)則的分類器和人工神經(jīng)網(wǎng)絡)都采用一種基于貪心學習的策略來搜索假設空間,這種方法一般只能獲得局部最優(yōu)解。盡管如此,用戶必須提供其他參數(shù),如使用核函數(shù)類型和引入松弛變量等。(4)SVM不僅可以用在二類問題,還可以很好的處理多類問題。如C++編程中的一些技巧和注意的地方;MFC的概況和幾個重要的MFC應用;OpenCV的概述及編程中的注意事項;支持向量機(SVM)的簡單介紹和一般特征。 系統(tǒng)總體結(jié)構(gòu)本系統(tǒng)主要完成使用攝像頭采集使用者的手勢,并將手勢加以處理后計算其Hu矩特征,然后根據(jù)訓練的SVM模型進行預測匹配,同時將手勢識別模塊與簡單的幻燈片控制按鈕功能相結(jié)合,在匹配成功后,調(diào)用相應的函數(shù),控制幻燈片的翻頁操作。本系統(tǒng)的總體結(jié)構(gòu)如圖31所示:圖31 系統(tǒng)總體結(jié)構(gòu) System general structure在圖31中,手勢識別主要包括手勢圖像的獲取,提取后圖像的預處理(包括灰度化和二值化處理),圖像幾何矩的提取,SVM模型的訓練以及最后的匹對。而在手勢識別這一大的模塊,又可細分出很多問題。我們可以采用轉(zhuǎn)換色彩空間然后灰度化的方法來克服光照的影響,而在各種二值化的方法中,我們選擇Ostu的全局自動閾值分割法獲取手所在區(qū)域,然后采用灰度投影的辦法獲取準確的手區(qū)域。另外我們對于SVM的訓練模型如何使用以及SVM在整個統(tǒng)計最小化理論中如何體現(xiàn)其優(yōu)勢都需要加以研究和掌握。 這需要一個接口,我們通過設置中間變量來傳遞特征值,實現(xiàn)當圖像狀態(tài)發(fā)生改變時調(diào)用相應的控制函數(shù)。其中手勢識別處理模塊可以再細分為:手圖像的預處理、手圖像特征的提取、支持向量機(SVM)的訓練模型三個子模塊。其中手勢識別模塊是最為核心的部分。手勢預處理模塊主要是針對圖像的獲取位置的選取、圖像的灰度化及二值化處理,并對相關(guān)算法進行的介紹和闡述;手勢矩特征的提取模塊主要解決圖像幾何矩特征的有關(guān)問題,包括矩的有關(guān)概念和Hu矩的相關(guān)計算;訓練SVM模型模塊先介紹一下最優(yōu)化理論,再闡述SVM的有關(guān)應用,以及與本課題設計相關(guān)的一些知識。接口部分主要解決的就是將兩大模塊結(jié)合起來的問題,如何將手勢識別后的值存入變量,并在進行相關(guān)手勢操作時調(diào)用變量,在調(diào)用時根據(jù)設定的不同情況將調(diào)用不同的幻燈片控制函數(shù),從而使幻燈片翻頁。對各模塊進行了功能劃分,并針對不同模塊的功能進行了闡述。 4 手勢識別的設計和實現(xiàn)本章主要詳細闡述系統(tǒng)的核心部分——手勢識別模塊的設計與實現(xiàn),對相關(guān)算法進行了說明和介紹。本節(jié)主要針對如何得到比較理想的處理效果,準確提取手勢圖像的特征進行闡述。而手勢也與其他的圖像不同,它沒有現(xiàn)成的手勢圖像庫可供使用。手勢由攝像頭獲取,樣本庫主要包括各種手勢分割的黑白圖像。在這個過程中控制周圍光照強度變化,同時實驗者改變手勢的角度。相比較第一種方法,第二種方法采集樣本準確、全面,比如各種光照和各個角度下的手勢樣本,但是效率不如第一種方法高效。 (2)逐個樣本檢查,去掉不理想的樣本,比如采集樣本時候手僅有部分在攝像頭視野內(nèi),或者分割不理想的情況。這樣就建立起來了一個手勢樣本庫。為了更好的對手的區(qū)域進行準確的特征提取,要求盡可能準確的獲取手勢所在區(qū)域,本文采用投影法獲取手勢所在區(qū)域。如圖 41(A)是從實時視頻中截取的手的 RGB 圖像,圖 41(B)對應的二值化圖像,圖 41(C)通過灰度投影確定的準確手區(qū)域,圖41中標示出了更準確的手區(qū)域的范圍。為了抑制噪聲和改善圖像質(zhì)量,必要時可對圖像進行平滑處理,這可以在空域或頻域中進行,在平滑噪聲時以不損害圖像中邊沿和各種細節(jié)為準則。通常,將數(shù)字圖像的平滑技術(shù)劃分為兩類:一類是全局處理,即對噪聲圖像的整體或大的塊進行校正以得到平滑的圖像,例如在變換域中使用 Wiener 濾波、最小二乘濾波等,使用這些技術(shù)需要知道信號和噪聲的統(tǒng)計模型,但對于大多數(shù)圖像而言,人們不知道或不可能用簡單的隨機過程精確的描述統(tǒng)計模型,而且這些技術(shù)計算量也相當大;另一類平滑技術(shù)是對噪聲圖像使用局部算子,當對某一像素進行平滑處理時,僅對它的局部小鄰域的一些像素加以運算,其優(yōu)點是計算效率高,而且可以多個像素并行處理,因此可實現(xiàn)實時或準實時處理。根據(jù)計算機色彩理論,對一種顏色而言,在計算機中有著不同的表達方式,這樣就形成了各種不同的色彩空間。主要的色彩空間有:(1)RGB 模式(紅、綠、藍三基色模型)這是一種最直接的方法,即使用紅、綠、藍的亮度值來表示彩色,其大小限定到一定范圍。RGB 模式是基于自然界中 3 種基色光的混合原理,將紅(R)、綠(G)和藍(B)3 種基色按照從 0 到 255 的亮度值在每個色階中分配,從而指定其色彩。例如,一種明亮的紅色可能 R 值為 246,G 值為 20,B 值為 50。當 3 種亮度值都是 255 時,產(chǎn)生純白色。當 3 種色光混合生成的顏色一般比原來的顏色亮度值高,所以 RGB 模式產(chǎn)生顏色的方法又被稱為色光加色法?!?色相(H):表示與顏色主波長有關(guān)的顏色物理特性。眾多波長的光以不同比例混合可以形成各種各樣的顏色,但只要波長組成情況一定,那么顏色就確定了。它們就是所有的色相,有時色相也稱為色調(diào)。◆亮度(I):亮度是顏色的相對明暗程度,通常用 0% (黑)100% (白)來度量。其中四個字母分別指青(Cyan)、洋紅(Magenta)、黃(Yellow)、黑(Black),在印刷中代表四種顏色的油墨。由于 C、M、Y、K 在混合成色時,隨著 C、M、Y、K 四種成分的增多,反射到人眼的光會越來越少,光線的亮度會越來越低,所有 CMYK 模式產(chǎn)生顏色的方法又被稱為色光減色法。此模式解決了由于不同的顯示器和打印設備所造成的顏色的差異,也就是它不依賴于設備。其中 L 的取值范圍是 0100,a 分量代表由綠色到紅色的光譜變化,而 b 分量代表由藍色到黃色的光譜變化,a 和 b 的取值范圍均為120120。CMYK 模式所包含的顏色最少,有些在屏幕上看到的顏色在印刷品上卻無法實現(xiàn)。本設計中首先把 RGB 空間的手勢圖像變換到Y(jié)CbCr 空間,然后利用 Cb 和 Cr 通道圖像進行下一步處理。 (6)灰度(Grayscale)模式灰度模式可以使用多達 256 級灰度來表現(xiàn)圖像,使圖像的過渡更平滑細膩。灰度值也可以用黑色油墨覆蓋的百分比來表示(0%等于白色,100%等于黑色)。下面介紹由RGB模式到灰度模式的轉(zhuǎn)換。因為 Y 通道圖像包含的亮度信息,所以其受光照影響很大。具體做法是:首先把 RGB
點擊復制文檔內(nèi)容
教學教案相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1