資源描述:
《基于CUDA的PCASIFT算法研究》由會員上傳分享,免費在線閱讀,更多相關內容在學術論文-天天文庫。
1、i寶京交碩士學位論文基于CUDA的PCA-SIFT算法研究TheresearchofPCA-—SIFTalgorithmbasedonCUDA作者:申吳導師:孫永奇北京交通大學2012年12月中圖分類號:TP311UDC:004北京交通大學碩士學位論文基于CUDA的PCA.SIFT算法研究ThestudyofPCA—SIFTalgorithmbasedOnCUDA作者姓名:申吳導師姓名:孫永奇學位類別:工學學號:10120502職稱:副教授學位級別:碩士學科專業(yè):計算機科學與技術研究方向:高性能計算北京交通大學2012年
2、12月致謝本論文的工作是在我的導師孫永奇副教授的悉心指導下完成的,孫永奇老師嚴謹?shù)闹螌W態(tài)度和科學工作方法給了我極大的幫助和影響。在此衷心感謝兩年半以來孫永奇老師對我的關心和指導。同時,我還要感謝實驗室的老師瞿有利副教授,瞿有利老師在學習和生活上給予我無私的幫助和耐心的指導,并提出了很多寶貴的意見,使我受益匪淺。在實驗室工作及撰寫論文期間,張銳師兄及趙男、張瀟、時魯艷等實驗室中的同學對我論文中研究工作給予了熱情幫助,在此向他們表達我的感激之情。另外也感謝家人,他們的理解和支持使我能夠在學校專心完成我的學業(yè)。中文摘要近些年來
3、,隨著顯卡技術的高速發(fā)展以及性價比的提升,將GPU用于通用計算逐漸成為國內外研究的熱點。早期的GPGPU開發(fā)使用GPU的圖形學接口,開發(fā)難度大、成本高。NVIDIA公司推出的CUDA技術是一種GPU通用計算編程模型,該模型提供了一個類似C語言的編程環(huán)境,使得研發(fā)人員可以更為簡便地利用GPU龐大的并行計算資源。尺度不變特征變換算法(SIFT)被廣泛應用于圖像特征的檢測,該算法在圖像發(fā)生平移、旋轉、仿射變換情況下依然能夠獲得較穩(wěn)定的特征點。與SIFT算法相比,主成分不變特征算法PCA.SIFT檢測出的特征點的描述信息具有較少
4、的維度,從而可以加快匹配速度和節(jié)約存儲空問。本文詳細描述了CUDA的編程模型、線程組織和存儲器結構,并深入分析了SIFT特征檢測算法和PCA—SIFT特征檢測算法的具體實現(xiàn)步驟,揭示了SIFT和PCA.SIFT算法之間的聯(lián)系。在上述研究工作基礎上,提出了一種基于CUDA的并行PCA.SIFT特征檢測算法,并對該算法進行了實驗驗證。實驗結果表明,本文所設計的算法能夠保證特征檢測與特征描述的準確性,并且在實時性方面有3.5倍的提高。關鍵詞:GPGPU;CUDA;并行計算;特征檢測;PCA.SIFT分類號:TP311ABSTR
5、ACTCurrently,、舫mthedevelopmentoftechnologyandupgradeofcost-effectiveofthegraphicscard,uSiIlgGPUforgeneral-purposecomputinghasbecomeahotresearchtopicaroundtheworld.SincetheearlyGPGPUprogrammingisbasedongraphicsAPI,itisverydifficultandcostly.CUDA(ComputeUnifiedDevi
6、ceArchitecture)isaGPGPUdevelopingtooHdtintroducedbyNVIDIACorporation.CUDAprovidesaprogrammingenvironmentsimilartotheClanguage,withwhichthedevelopersCanusethemassiveparallelcomputingresourcesofGPUinaneasierway.Scale—invariantfeaturetransform(SIFT)iswidelyusedinima
7、gefeaturedetection,thisalgorithmcalldetectconstantfeatureseveniftheimageischangedbytranslation,rotationandaffmetransformation.Compared、)l,itllSIFT,principalcomponentanalysis(PCA)一SIFTcompressesthedimensionofthefeaturedescriptionvectors,asaresult,itCanspeedupthepr
8、ocessoffeaturematchingandeconomizethestorageoffeatures.Atfn'st,theprogrammingmodel,thethreadorganizationandthememorystructureofCUDAareintroducedindetail,andthe