指紋識(shí)別的研究與實(shí)現(xiàn)【畢業(yè)論文】_第1頁
已閱讀1頁,還剩38頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  本科畢業(yè)設(shè)計(jì)</b></p><p><b>  (20 屆)</b></p><p>  指紋識(shí)別的研究與實(shí)現(xiàn)</p><p>  所在學(xué)院 </p><p>  專業(yè)班級(jí) 通信工程

2、 </p><p>  學(xué)生姓名 學(xué)號(hào) </p><p>  指導(dǎo)教師 職稱 </p><p>  完成日期 年 月 </p><p><b>  摘 要</b></p

3、><p>  指紋識(shí)別技術(shù)在如今的許多領(lǐng)域都有非常廣闊的應(yīng)用前景,無論是在各個(gè)企業(yè)單位的員工考勤或者是門禁系統(tǒng)中應(yīng)用都很廣泛,所以建立一套準(zhǔn)確可靠的指紋識(shí)別系統(tǒng)是近幾年的研究重點(diǎn)。</p><p>  本文設(shè)計(jì)開發(fā)了一套自動(dòng)指紋識(shí)別系統(tǒng):通過指紋采集,指紋預(yù)處理,指紋特征提取,指紋特征匹配來達(dá)到自動(dòng)指紋識(shí)別的目的。本文詳細(xì)討論了指紋圖像預(yù)處理所包含的各種算法,在Poincare index方法

4、上提出了一種改進(jìn)的方法,并做了初步測(cè)試,測(cè)試結(jié)果準(zhǔn)確有效。 </p><p>  關(guān)鍵詞:指紋識(shí)別;特征提取;預(yù)處理;指紋匹配</p><p><b>  Abstract</b></p><p>  Nowadays,fingerprint identification technology has a widly application p

5、rospects and has very widly used in many fields,whether the employees' attendance or entrance guard system is very widely applied.So set up an accurate and reliable fingerprint identification system is the research f

6、ocus in recent years.</p><p>  This paper designed and developed a set of automatic fingerprint identification system: through fingerprints acquisition, fingerprint pretreatment, the fingerprint feature extr

7、action, fingerprint characteristic matching to achieve automatic fingerprint identification purposes. This paper discussed the fingerprint image preprocessing contains various algorithm, and the Poincare index method in

8、the paper proposes an improved method, although not established fingerprint storehouse, but made a folde</p><p>  Key Words:Fingerprint identification, Feature extraction, Pretreatment, Fingerprint matching.

9、</p><p><b>  目 錄</b></p><p><b>  1 概 述1</b></p><p>  1.1 課題研究背景及意義1</p><p>  1.2 論文研究內(nèi)容1</p><p>  1.2.1主要研究內(nèi)容1</p><

10、p>  1.2.2 論文結(jié)構(gòu)2</p><p>  2 指紋識(shí)別系統(tǒng)總體設(shè)計(jì)3</p><p>  2.1 指紋識(shí)別系統(tǒng)設(shè)計(jì)3</p><p>  2.2 指紋識(shí)別系統(tǒng)開發(fā)工具4</p><p>  3 指紋圖像預(yù)處理5</p><p>  3.1 預(yù)處理的基本概念5</p><p

11、>  3.2 預(yù)處理步驟5</p><p>  3.2.1 平滑處理5</p><p>  3.2.2 銳化處理6</p><p>  3.2.3二值化處理8</p><p>  3.2.4修飾處理9</p><p>  3.2.5細(xì)化處理10</p><p>  4 指紋特征

12、提取12</p><p>  4.1 Poincare index方法及分析12</p><p>  4.2 改進(jìn)的Poincare index方法13</p><p>  5 指紋分類與檢索17</p><p><b>  6 論文總結(jié)18</b></p><p>  致 謝錯(cuò)誤!

13、未定義書簽。</p><p><b>  參考文獻(xiàn)19</b></p><p>  附錄1 主要源程序代碼21</p><p>  附錄2 程序運(yùn)行結(jié)果及說明31</p><p><b>  1 概 述</b></p><p>  1.1 課題研究背景及意義</p

14、><p>  近年來,國內(nèi)外學(xué)者對(duì)自動(dòng)指紋識(shí)別技術(shù)進(jìn)行了深入和廣泛的研究,取得了較大的進(jìn)展,研究的重點(diǎn)主要集中在如何提高識(shí)別的準(zhǔn)確率和速度[1]。目前,已經(jīng)有很多自動(dòng)指紋識(shí)別的產(chǎn)品面市,并開始逐步在管理、門禁、金融、公安和網(wǎng)絡(luò)安全等領(lǐng)域得到應(yīng)用。以指紋為代表的生物識(shí)別技術(shù)的發(fā)展和應(yīng)用,不僅可以開發(fā)相關(guān)的系列產(chǎn)品,獲得巨大的經(jīng)濟(jì)效益,還可以帶動(dòng)圖像處理[2]、模式識(shí)別、光學(xué)、電子、生理。學(xué)和計(jì)算機(jī)應(yīng)用等相關(guān)學(xué)科的發(fā)展,

15、具有很高的學(xué)術(shù)價(jià)值,會(huì)產(chǎn)生巨大的社會(huì)效益[3]。文獻(xiàn)[4]和文獻(xiàn)[5]中闡述了以指紋為代表的生物識(shí)別技術(shù)的發(fā)展和應(yīng)用已被公認(rèn)將會(huì)給身份識(shí)別領(lǐng)域帶來一場(chǎng)革命,并已經(jīng)成為各國學(xué)術(shù)界和工業(yè)界研究的熱點(diǎn)之一。目前,基于通用PC機(jī)進(jìn)行指紋識(shí)別的技術(shù)已經(jīng)很成熟,并且已經(jīng)開始大規(guī)模推廣[6]。講述了許多大公司有專門的機(jī)構(gòu)從事該項(xiàng)技術(shù)的研究、開發(fā)、應(yīng)用,包括IBM、INTEL、Microsoft、Digitalpersona、Identix、Motor

16、ola、韓國現(xiàn)代、朝鮮培富士、法國THOMSON—CSF、臺(tái)灣Aetex公司、Veridicom、BAC等。在技術(shù)上,基于WINDOWS操作系統(tǒng)的指紋識(shí)別</p><p>  1.2 論文研究內(nèi)容</p><p>  1.2.1主要研究內(nèi)容</p><p>  利用MATLAB軟件編寫指紋識(shí)別的程序,設(shè)計(jì)一個(gè)指紋識(shí)別的軟件,做成一個(gè)小型的指紋庫,進(jìn)行指紋的采集、指紋

17、預(yù)處理、特征提取、指紋分類以及特征匹配的過程。</p><p><b>  開發(fā)工作具體步驟:</b></p><p>  理解指紋預(yù)處理,指紋分類,特征匹配,設(shè)計(jì)指紋識(shí)別算法。</p><p>  熟悉MATLAB開發(fā)平臺(tái)以及MATLAB的程序設(shè)計(jì)。</p><p>  利用MATLAB軟件開發(fā)自動(dòng)指紋識(shí)別的軟件。&l

18、t;/p><p>  1.2.2 論文結(jié)構(gòu)</p><p>  論文分五章。第一章概述介紹了本課題的背景、意義和研究開發(fā)的主要內(nèi)容。第二章介紹了總體流程。第三章介紹指紋圖像預(yù)處理。第四章是指紋特征提取。第五章指紋分類與檢索。第六章程序運(yùn)行及結(jié)果。最后對(duì)整個(gè)論文工作情況進(jìn)行總結(jié)。</p><p>  2 指紋識(shí)別系統(tǒng)總體設(shè)計(jì)</p><p>  2

19、.1 指紋識(shí)別系統(tǒng)設(shè)計(jì)</p><p>  指紋取像這部分因?yàn)闆]有指紋采集器,所以找了幾張指紋圖片,然后對(duì)這些指紋圖片進(jìn)行圖像預(yù)處理,指紋特征提取,再進(jìn)行指紋分類與檢索,達(dá)到指紋圖像識(shí)別的目的。在接下來的第三,四,五章中詳細(xì)的介紹了這些方法。圖1就是指紋識(shí)別系統(tǒng)的設(shè)計(jì)流程圖。</p><p>  圖2-1 指紋識(shí)別系統(tǒng)總體流程圖</p><p>  圖像預(yù)處理的作

20、用是去除圖像中的噪音,把它變成一幅清晰的點(diǎn)線圖,以便于提取正確的指紋特征。指紋特征提取可以把指紋特征點(diǎn)賦予一些參數(shù)、標(biāo)記,使得這些參數(shù)和標(biāo)記能把每一個(gè)指紋從眾多指紋中唯一地區(qū)別出來,從而達(dá)到來辨別各個(gè)指紋的目的。指紋的分類與檢索就是把經(jīng)過前面處理后的指紋進(jìn)行分類,從而可以避免搜索整個(gè)數(shù)據(jù)庫,從而提高指紋識(shí)別的速度。</p><p>  2.2 指紋識(shí)別系統(tǒng)開發(fā)工具</p><p>  本次

21、設(shè)計(jì)是用MATLAB6.5軟件實(shí)現(xiàn)的。</p><p>  MATLA簡(jiǎn)介:MATLAB是由美國MathWorks公司發(fā)布的主要面對(duì)科學(xué)計(jì)算、可視化以及交互式程序設(shè)計(jì)的高科技計(jì)算環(huán)境。它將數(shù)值分析、矩陣計(jì)算、科學(xué)數(shù)據(jù)可視化以及非線性動(dòng)態(tài)系統(tǒng)的建模和仿真等諸多強(qiáng)大功能集成在一個(gè)易于使用的視窗環(huán)境中,為科學(xué)研究、工程設(shè)計(jì)以及必須進(jìn)行有效數(shù)值計(jì)算的眾多科學(xué)領(lǐng)域提供了一種全面的解決方案,并在很大程度上擺脫了傳統(tǒng)非交互式程

22、序設(shè)計(jì)語言(如C、Fortran)的編輯模式,代表了當(dāng)今國際科學(xué)計(jì)算軟件的先進(jìn)水平。</p><p>  MATLAB的7大優(yōu)勢(shì):工作平臺(tái)和編程環(huán)境友好,程序語言簡(jiǎn)單,科學(xué)計(jì)算機(jī)數(shù)據(jù)處理能力強(qiáng),圖形繪制能力出色,工具箱廣泛,有實(shí)用的程序接口和發(fā)布平臺(tái),開發(fā)環(huán)境出色。</p><p><b>  3 指紋圖像預(yù)處理</b></p><p>  3

23、.1 預(yù)處理的基本概念</p><p>  指紋圖像預(yù)處理是對(duì)采集設(shè)備采集到的指紋原始圖像去除噪聲的過程。在指紋分類和指紋匹配時(shí)都需要提取指紋的有效特征信息,指紋圖像的質(zhì)量決定了而特征提取的正確性。目前,受采集設(shè)備和采集條件(指紋過濕、過干、比較臟或指紋不完整)等因素影響,有的指紋原始圖像質(zhì)量比較差,含有大量的噪音。指紋圖像預(yù)處理的目的就是削弱圖像中的噪音,提高指紋紋線的清晰度,從而來做后面的工作。好的預(yù)處理可以

24、在很大程度上減少噪聲的干擾,去除指紋前景區(qū)中無法修復(fù)及無法提取特征的低質(zhì)量區(qū)域,對(duì)有效區(qū)域進(jìn)行增強(qiáng),保證特征提取的可靠性。</p><p><b>  3.2 預(yù)處理步驟</b></p><p>  3.2.1 平滑處理</p><p>  指紋圖像是通過掃描儀獲得模擬信號(hào),并經(jīng)采樣、量化后,以矩陣的形式存入計(jì)算機(jī)。由于圖像的采集為縱列式方式,

25、量化后的指紋圖像有許多噪聲。它們因其時(shí)間的不相干性,含有較高的空間頻譜,且多呈點(diǎn)結(jié)構(gòu)。</p><p>  平滑處理的任務(wù)就是去除這些干擾噪聲,而又不使圖像失真。圖像平滑包括空域法和頻域法兩大類。由空域處理公式知,輸出函數(shù)為:</p><p><b>  (3-1)</b></p><p>  其中m=1,2…,H';n=1,2,…N&

26、#39;;M'=M-L;N'=N-L。若令輸入圖像陣F為N×N,卷積陣H為L×L,輸出陣G為M×M,則關(guān)系式:</p><p><b> ?。?-2)</b></p><p>  為了平滑噪聲,卷積陣H需呈低通型。當(dāng)H為3×3陣列時(shí),選用:</p><p><b>  (3-3)

27、</b></p><p>  其中X為要處理的像素值,ai (i=1,2…,8)為其八鄰域的數(shù)值。</p><p>  采用多圖像平均法(即多遍輸入疊加取均值的方法),可去除時(shí)間噪聲。它以噪聲干擾的統(tǒng)計(jì)學(xué)特征為基礎(chǔ)。即如果一幅圖像包含有噪聲,可以假定噪聲相對(duì)于每一坐標(biāo)點(diǎn)(x,y)是不相關(guān)的。</p><p>  其數(shù)字期望為零。設(shè)g(x,y)是有噪聲η(

28、x,y)和原始圖像f(x,y)疊加而成的。</p><p><b>  即:</b></p><p>  g(x,y)=f(x,y)+η(x,y) (3-4)</p><p>  若噪音η(x,y)滿足上述的假定,則可以通過將給定的一系列噪聲圖像g(x,y)疊

29、加后取其平均值,以達(dá)到平滑圖像的目的。因此,在獲得一幅圖像時(shí),可用采集M次的方法去取平均值,即可達(dá)到要求。</p><p>  g(x,y)= 1/M∑gi(x,y) (3-5)</p><p>  因?yàn)?E{g(x,y)}=f(x,y)

30、 (3-6)</p><p>  一般情況下,當(dāng)n=4時(shí),圖像趨于穩(wěn)定。</p><p>  實(shí)踐表明,用這些方法去除噪聲,可獲得滿意的效果。圖1是指紋原圖像,圖2為去噪聲后的指紋圖像。</p><p>  圖1:指紋原圖像 圖2: 原指紋除去噪聲后的指紋</p><p>  3.2.2 銳化處理<

31、/p><p>  為強(qiáng)化指紋紋線間的界線,突出邊緣信息,以利于二值化,銳化處理是必要的。銳化處理對(duì)于增強(qiáng)反差和檢測(cè)邊緣是很有用的。圖像銳化的作用就是補(bǔ)償圖像的輪廓,使圖像較清晰。圖像銳化可分為空間域圖像銳化法和空間頻率域圖像銳化法兩大類型。</p><p>  圖像的模糊,是由于高的空間頻率成分比低的空間頻成分弱這一原因造成的。這一影響表現(xiàn)在均勻灰度區(qū)域間的邊界部分(邊緣)。因此,為了消除模糊

32、,可以增強(qiáng)高的空間頻率成分。</p><p>  作為在圖像空間簡(jiǎn)單的高頻增強(qiáng)濾波有:</p><p>  g(i,j)=f(i,j)-f(i,j)=5f(i,j)-[f(i+1,j)+f(i-1,j)+f(i,f+1)+f(i,j-1)] (3-7)</p><p>  這里f(i,j)表示輸入圖像f(i,j)的二次微分的數(shù)字拉普拉斯算子

33、,被定義為:</p><p>  f(i,f)=f(i+1,f)+f(i-1,j)+f(i,j+1)+f(i,j-1)-4f(i,j) (3-8)</p><p>  由于模糊的圖像是感光過程中的擴(kuò)散現(xiàn)象所致,它必然滿足線形擴(kuò)散方程:</p><p>  аf(x,y,t)/аt=kf(x,y,t)=k(аf/аx2+а

34、f/аy2) (3-9)</p><p>  其中f(x,y,t)是時(shí)間與空間的函數(shù),k是擴(kuò)散系數(shù);f是f的拉普拉斯算子。如令t=0,且忽略其展開的泰勒級(jí)數(shù)的高次項(xiàng),則輸出函數(shù):</p><p>  g(x,y)=f(x,y,t)-τkf(x,y,t) (

35、3-10)</p><p>  其中τ為擴(kuò)散時(shí)間間隔的長度。選取不同的τk值,可得到不同的拉普拉斯算子的沒加權(quán)系數(shù)。經(jīng)過多次實(shí)驗(yàn)知,7×7方陣的加權(quán)系數(shù)p為:</p><p>  p=8f(x,y)-f(x-3,y)-f(x-2,y+2)-f(x,y+3)-f(x,y-3)-f(x+2,y+2)-f(x+3,y)-f(x+2,y-2)-f(x-2,y-2)

36、 (3-11)</p><p>  時(shí)能更好地反映出泰勒級(jí)數(shù)展開時(shí)函數(shù)的連續(xù)性,用于指紋圖像的銳化處理是適宜的。圖2是銳化后的指紋圖像。</p><p>  圖3 銳化后的指紋圖像</p><p>  3.2.3二值化處理</p><p>  二值圖像是指

37、整幅圖像畫面內(nèi)僅有黑(灰度值為0)白(灰度值為1)二值的圖像。在數(shù)字圖像處理中,二值圖像的地位相當(dāng)?shù)母?。因?yàn)樵趯?shí)用的圖像處理系統(tǒng)中,要求處理的信息量大、成本又低,速度又快的濃淡圖像處理花銷太大,不是上策。而且二值化后的圖像能夠用幾何學(xué)中的概念進(jìn)行分析和特征描述,比起灰度圖像來說方便得多。因而二值圖像處理目前已成為圖像處理中的一個(gè)獨(dú)立的、重要分支而獲得廣泛的應(yīng)用。對(duì)于指紋的識(shí)別來說,有的信息得包含有脊線和谷線的二值描述中。因而必須根據(jù)原始

38、的灰度圖像來確定圖像上的每一點(diǎn)應(yīng)屬于客體區(qū)域還是背景區(qū)域,從而產(chǎn)生對(duì)應(yīng)的二值圖像。它不僅可以大大減少儲(chǔ)存量,而且對(duì)使得后面的判別過程少受干擾,大大簡(jiǎn)化其后的處理方法。二值化后的圖像是以后處理的基礎(chǔ),它的算法對(duì)后面的處理有直接的影響。一個(gè)好的算法可以得到一個(gè)高質(zhì)量的二值圖像。反之,如果該階段引入噪聲,就會(huì)直接降低圖像質(zhì)量,影響識(shí)別精度。</p><p>  位于(x,y)處的像素f(x,y)閾值V(x,y)是由以(

39、x,y)為中心的指紋圖像窗口(2m+1)×(2m+1)中諸點(diǎn)的灰度值來確定的。即:</p><p><b> ?。?-12)</b></p><p>  當(dāng)(2m+1)×(2m+1)窗口落在兩種不同區(qū)域?qū)?huì)引起誤判:</p><p>  (1) 當(dāng)窗口較多地在谷線區(qū)時(shí),將會(huì)使得一部分乃至大部分的像素點(diǎn)被判為脊線;</

40、p><p>  (2) 當(dāng)窗口較多地落在脊線區(qū)時(shí),將會(huì)使得一部分乃至大部分的像素點(diǎn)被判為谷線。</p><p>  借助于參數(shù)β和固定閾值可以解決這個(gè)問題。</p><p>  令ε為一個(gè)通過試驗(yàn)獲得的正整數(shù),即ε>0,故有:令</p><p><b> ?。?-13)</b></p><p>

41、;<b>  則:</b></p><p><b> ?。?-14)</b></p><p>  其中Vt,為參考閾值。令二值化后的圖像為g(x,y),則:</p><p><b>  (3-15)</b></p><p>  圖4是經(jīng)過二值化處理后的指紋圖像</p>

42、;<p>  圖4 二值化處理后的指紋圖像</p><p><b>  3.2.4修飾處理</b></p><p>  指紋圖像經(jīng)過二值化后,由于量化等原因,紋線邊緣凹凸不齊,受銳化的影響,畫面出現(xiàn)離散點(diǎn),為使圖像整潔,邊緣圓滑,需要進(jìn)行修飾處理。</p><p>  用適宜的模板可去除紋溝中的離散黑點(diǎn)和填補(bǔ)紋線中的空缺白點(diǎn)。如

43、令3×3模板中待處理的像素為x,其鄰域ai∈白(i=1,2,…,8),則x=白;ai∈黑(i=2,4,6,8),則x=黑。</p><p><b> ?。?-16)</b></p><p>  修飾處理包括去除孤立點(diǎn)及填補(bǔ)空白點(diǎn)等操作它們各自的模板表征如下:</p><p><b>  去除孤立點(diǎn):</b><

44、;/p><p><b> ?。?-17)</b></p><p>  (a) (b) (c) (d)</p><p><b>  去除空白點(diǎn):</b></p><p><b> ?。?-18)</b></p><p>  (a) (b

45、) (c) (d)</p><p>  圖3-5是經(jīng)過修飾處理后的圖像。</p><p>  圖3-5 修飾處理后的圖像</p><p><b>  3.2.5細(xì)化處理</b></p><p>  由于我們所關(guān)心的不是紋線的粗細(xì),而是紋線的有無。因此,在破壞圖像連通性的情況下必須去掉多余的信息。在二值圖

46、像處理領(lǐng)域,細(xì)化是很重要的一個(gè)處理環(huán)節(jié)。如干涉條紋圖像,由于條紋粗、寬二邊緣彌散,不細(xì)化成線狀就沒有辦法去精確地取數(shù)計(jì)算它。另一方面,一個(gè)連接成分如果能用線狀結(jié)構(gòu)去值圖像的細(xì)化問題成為圖像處理的一大熱門,有不少指紋脊線的輪廓和有關(guān)的端點(diǎn)和交叉點(diǎn)。但是,二值化后的脊線有一定的寬度,這種表征它的特性,無論在圖像識(shí)別還是在數(shù)據(jù)壓縮方面都有重要意義。所以寬度會(huì)給后面的識(shí)別增添很多麻煩。因而應(yīng)先將指紋脊線的寬度采用逐漸剝離的方法,使得脊線成為只有

47、一個(gè)象素寬的細(xì)線,這將非常有利于下一步的分析,這個(gè)過程叫細(xì)化。其目的是用一組細(xì)線來刻畫一個(gè)連接成分,這不僅能達(dá)到壓縮數(shù)據(jù)量的目的,而且易于對(duì)連接成分的特征提取。因而,這一操作過程必然需要?jiǎng)h除某些象素。</p><p>  利用兩種類型的模板進(jìn)行細(xì)化處理的算法如下:</p><p><b>  A 型模板</b></p><p><b>

48、; ?。?-19)</b></p><p>  A1 A2 A3 A4</p><p><b>  B 型模板</b></p><p><b>  (3-20) </b></p><p>  B1 B2 B3 B4</p><p>

49、;  指紋圖像細(xì)化后,還可以根據(jù)指紋得到一般處理規(guī)律。進(jìn)行后加工處理,如去掉無效的紋線搭橋及連接豁口等。還可以采用人機(jī)交互方式,對(duì)殘缺指紋進(jìn)行人工修補(bǔ)。圖6是經(jīng)過細(xì)化處理后的圖像。</p><p>  圖3-6: 細(xì)化處理后的圖像</p><p><b>  4 指紋特征提取</b></p><p>  指紋特征提取就是要給指紋特征點(diǎn)賦予一些參

50、數(shù)、標(biāo)記,使得這些參數(shù)和標(biāo)記能把每一個(gè)指紋從眾多指紋中唯一地區(qū)別出來。指紋中存在兩種特征:全局特征和局部特征。全局特征常用于指紋的分類,局部特征用于指紋比對(duì)。</p><p>  全局特征的主要表現(xiàn)為指紋奇異區(qū),通常將奇異區(qū)中紋線方向變化最大的點(diǎn)稱為奇異點(diǎn)。指紋奇異點(diǎn)的類型、數(shù)目、位置及方向決定了指紋紋線的全局走向,相比于細(xì)節(jié)特征具有更好的穩(wěn)定性,是指紋分類的主要依據(jù)。</p><p> 

51、 本文采用的是基于poincare index指紋特征提取的改進(jìn)方法。</p><p>  4.1 Poincare index方法及分析</p><p>  目前,基于Poincare index的方法是指紋奇異點(diǎn)檢測(cè)方法中的主流方法.Poincare index早在1984年就被Kawagoe和Tojo用來檢測(cè)奇異點(diǎn)。如果用G表示一個(gè)向量域,用C表示該向量域中的一條曲線,那么Poine

52、are index值PG,C(i,j)被定義為向量域G中的向量沿著曲線C旋轉(zhuǎn)過的角度值。</p><p>  但是,指紋圖像的方向場(chǎng)并不是一個(gè)真正意義上的矢量場(chǎng),這是因?yàn)橹讣y方向場(chǎng)中的每一個(gè)值并不是一個(gè)方向在[o,2兀]上的矢量,通常情況下指紋的方向定義在[o,兀]或者是[-兀/2,兀/2]上.一個(gè)可行的辦法是將指紋的方向場(chǎng)標(biāo)定成有方向的矢量場(chǎng),然后去計(jì)算它的Poincare index值。經(jīng)方向標(biāo)定以后,點(diǎn)(i

53、,j)處的Poincare Index值PG,C(i,j)可按式(1)計(jì)算(假設(shè)該閉曲線上有m個(gè)元素):</p><p><b> ?。?-1)</b></p><p>  計(jì)算結(jié)果顯示,在指紋圖像的Core點(diǎn)處其Poincare index值為兀,在Delta點(diǎn)處其Poincare index值為-兀,在指紋圖像的其他點(diǎn)處其值為0。</p><p

54、>  對(duì)方向場(chǎng)進(jìn)行方向標(biāo)定是一個(gè)比較復(fù)雜的過程?,F(xiàn)有文獻(xiàn)在提取指紋圖像</p><p>  中的奇異點(diǎn)時(shí)并未對(duì)指紋圖像的方向場(chǎng)進(jìn)行矢量標(biāo)定而多采用如下的公式進(jìn)行處理:</p><p><b>  (4-2)</b></p><p><b> ?。?-3)</b></p><p><b&g

55、t; ?。?-4)</b></p><p>  如果Poincare index的值為l/2給定點(diǎn)(i,j)被確定為Core點(diǎn),如果Poincare index值為-1/2定點(diǎn)(i,j)就被確定為Delta點(diǎn).計(jì)算一個(gè)點(diǎn)周圍的方向改變累積量需要根據(jù)式(3)的不同情況去調(diào)整兩相鄰方向角的差值,這樣從式(3)可以看出,求得的Core點(diǎn)的Poincare index值并不是準(zhǔn)確地等于1/2是在1/2近的一個(gè)

56、很小的鄰域內(nèi)[1/2-δ,-1/2+δ]。由于不同的指紋圖像其奇異點(diǎn)區(qū)紋線曲率有著較大的差別,這使得參數(shù)δ的選取比較困難,如果選取一個(gè)較大的δ,那么會(huì)檢測(cè)到較多的偽奇異點(diǎn),如果選取一個(gè)較小的δ,則可能導(dǎo)致漏檢真正的奇異點(diǎn)。</p><p>  此外,因?yàn)楸辉肼曃廴镜闹讣y區(qū)域的方向場(chǎng)變化比較復(fù)雜,在計(jì)算封閉曲線上點(diǎn)的方向變化累積量時(shí)需要不止一次利用式(3)后面的兩個(gè)條件(if, δ(k) ≤-兀/2和otherwi

57、se) 對(duì)方向角的差值進(jìn)行調(diào)整。在這種情況下,部分噪聲點(diǎn)的Poincare index值會(huì)滿足檢測(cè)條件,被作為奇異點(diǎn)檢測(cè)出來,形成偽奇異點(diǎn)。然而真正的奇異點(diǎn)區(qū)的方向場(chǎng)變化應(yīng)該是連續(xù)的漸變,不會(huì)多次用到(3)或者是(if, δ(k) ≤-兀/2和otherwise)。這個(gè)就是傳統(tǒng)的Poincare index方法抗噪性不強(qiáng)的表現(xiàn),以引出下文的改進(jìn)方法。</p><p>  4.2 改進(jìn)的Poincare index

58、方法</p><p>  1)圍繞Core點(diǎn)的封閉曲線上的點(diǎn)其方向角的變化是連續(xù)的,即封閉曲線上的點(diǎn)的方向由連續(xù)的正方向和連續(xù)的負(fù)方向兩部分組成,若按順時(shí)針方向遍歷,該封閉曲線上的點(diǎn)的方向由正方向變?yōu)樨?fù)方向和由負(fù)方向變?yōu)檎较蚋饔幸淮吻覂H有一次。</p><p>  2)這兩次角度的變化有一次變化較大有一次變化較小,變化較小的一次是發(fā)生在0度角附近而變化較大的一次是發(fā)生在+兀/2或者說-兀

59、/2角附近,變化較大的這一次其方向角的差值隨脊線曲率的大小而改變,且這次方向的突變發(fā)生在紋線結(jié)構(gòu)的固定位置(見圖2(a)橢圓線標(biāo)出的位置),對(duì)于Delta點(diǎn)有類似的結(jié)論,只是它方向發(fā)生突變的點(diǎn)與Core點(diǎn)方向發(fā)生突變的點(diǎn)不在同一位置(見圖2(b)橢圓線標(biāo)出的位置)。</p><p>  3) 對(duì)這兩類奇異點(diǎn)而言,除了方向發(fā)生突變的位置,封閉曲線上其他點(diǎn)的方向變化都是緩慢的,即相鄰兩方向角的差值都小于兀/2.圖1是

60、奇異點(diǎn)周圍的方向場(chǎng)轉(zhuǎn)化成的紋線趨勢(shì)變化示意圖,黑色的線表示奇異點(diǎn)最內(nèi)側(cè)的脊線,橢圓線標(biāo)注出方向發(fā)生突變的點(diǎn)。</p><p>  基于以上性質(zhì),對(duì)Poincare index方法作了一些相應(yīng)的改進(jìn)。首先,將式(4-3)中的第3項(xiàng)調(diào)整為δ(k)- 兀,如式(5)所示:</p><p><b> ?。?-5)</b></p><p>  此外,在沿

61、封閉曲線做方向角變化的累加時(shí)附加以下限制條件:</p><p>  1 統(tǒng)計(jì)Nψ方向的符號(hào)變化次數(shù),若方向由正到負(fù)和由負(fù)到正各發(fā)生一次,且僅有一次,則繼續(xù)計(jì)算其Poincare Index值,否則,認(rèn)為該點(diǎn)是普通點(diǎn);</p><p>  2 統(tǒng)計(jì)Nψ個(gè)差中絕對(duì)值≥兀/2的差的個(gè)數(shù),若個(gè)數(shù)多于1個(gè)則認(rèn)為該點(diǎn)是普通點(diǎn)。</p><p>  圖2是利用式(4-5)檢測(cè)到的

62、奇異點(diǎn)在指紋圖像中的分布情況,用白點(diǎn)表示Delta點(diǎn),用黑點(diǎn)表示Core點(diǎn),最終在Delta點(diǎn)密集的地方形成一白色區(qū)域,在Core點(diǎn)密集的地方形成一黑色區(qū)域。</p><p>  通過對(duì)實(shí)驗(yàn)結(jié)果的分析發(fā)現(xiàn),該方法檢測(cè)到的奇異點(diǎn)在指紋圖像上的分布具有如下特征:</p><p>  1 在指紋的奇異點(diǎn)區(qū)能夠檢測(cè)到的奇異點(diǎn)數(shù)目是相對(duì)穩(wěn)定的且集中在奇異點(diǎn)區(qū)最內(nèi)部,這個(gè)數(shù)目不會(huì)隨著積分曲線條數(shù)的增加

63、而增加,如圖3所示.對(duì)于低質(zhì)量指紋圖像,只要奇異點(diǎn)區(qū)不受大噪聲的污染,那么在奇異點(diǎn)區(qū)內(nèi)能夠檢測(cè)到的奇異點(diǎn)數(shù)目也是穩(wěn)定的。</p><p>  2 從圖2還可以看到,在真正的奇異點(diǎn)區(qū)Core點(diǎn)聚類和Delta點(diǎn)聚類是相互獨(dú)立分布的,聚類之間沒有交叉.而在噪聲區(qū)域,既能檢測(cè)到偽Core點(diǎn)又能檢測(cè)到偽Delta點(diǎn),這兩種奇異點(diǎn)聚類呈交叉分布。</p><p>  綜合以上分析,給出本文第1階段算

64、法(改進(jìn)的Poincare index算法)流程如下:</p><p>  1 利用式(4-5)檢測(cè)指紋圖像中的奇異點(diǎn),并按奇異點(diǎn)的類型對(duì)檢測(cè)到的奇異點(diǎn)進(jìn)行歸類。</p><p>  2 元素個(gè)數(shù)少于N(結(jié)合上述特征1))的分析和實(shí)驗(yàn)結(jié)果,本文算法N取25)的聚類去掉,對(duì)剩余的聚類檢測(cè)每個(gè)聚類的范圍內(nèi)是否存在不同類型的奇異點(diǎn),若存在其他類型的奇異點(diǎn)則將這樣的聚類去掉。</p>

65、<p>  3 算剩余的每個(gè)聚類的平均方向突變程度并從中選擇平均方向突變程度最大的M個(gè)(考慮到噪聲的影響,本文取為3)歸類,Delta點(diǎn)聚類也是如此.最終的奇異點(diǎn)就定位在這些聚類的質(zhì)心上。</p><p>  圖4-1 奇異點(diǎn)周圍領(lǐng)域方向變化示意圖。(a)Core點(diǎn)周圍領(lǐng)域方向場(chǎng)變化示意圖;(b)Delta點(diǎn)周圍領(lǐng)域方向變化示意圖</p><p>  圖2 利用式(4-5)

66、檢測(cè)到的奇異點(diǎn)在指紋圖像中的分布。(a)(b)是質(zhì)量較好的指紋圖像的檢測(cè)結(jié)果;(c)(d)是質(zhì)量較差的指紋圖像的檢測(cè)結(jié)果;(e)(f)(g)(h)分別是(a)(b)(c)(d)的白框標(biāo)記區(qū)域放大6倍以后的效果</p><p><b>  5 指紋分類與檢索</b></p><p>  在第3章的指紋特征提取中用改進(jìn)的Poincare index法將指紋分為5類:拱型(

67、Arch)、尖拱型(TentedArch)、左箕型(LeftLoop)、右箕型(RightLoop)和漩渦型(Whorl),設(shè)Nc和Nd分別表示Core點(diǎn)和Delta點(diǎn)的數(shù)目,分類規(guī)則如下:</p><p>  (1) 如果Nc=0:</p><p>  ①如果Nd=0,則為拱型指紋(Arch);</p><p> ?、谌绻鸑d>0且所有Delta點(diǎn)到指紋邊界

68、的距離d<10,則為拱型指紋(Arch)。</p><p>  (2)如果=1,則求取Core點(diǎn)處脊線的對(duì)稱軸Axis(Axis的方向定義為以Core點(diǎn)為起點(diǎn),與指紋脊線平行的方向):</p><p> ?、?如果Nd=0或Nd=2,則過Core點(diǎn)作一條垂直于對(duì)稱軸Axis的直線L,在L上Core點(diǎn)的兩側(cè)距離d=10Pixels處各取一點(diǎn)P1和P2 (P1在對(duì)稱軸Axis方向的-90

69、度一側(cè),P2在對(duì)稱軸Axis方向的+90度一側(cè)),分別以P1和P2為起點(diǎn),在方向圖O(i,j)上沿對(duì)稱軸Axis的方向進(jìn)行方向場(chǎng)跟蹤,直到指紋邊界或跟蹤步數(shù)s>S1為止,得到兩條有向曲線C1和C2:(有向曲線的方向定義為從起點(diǎn)指向終點(diǎn)的方向):</p><p>  如果C1為順時(shí)針且為逆時(shí)針,則為尖拱型指紋(Tented Arch);</p><p>  如果C1和C2都為順時(shí)針,則

70、為左箕型指紋(Left Loop);</p><p>  如果C1和C2都為逆時(shí)針,則為右箕型指紋(Right Loop)。</p><p>  ② 如果Nd=1,則計(jì)算對(duì)稱軸Axis到Core點(diǎn)和Delta點(diǎn)連線Lcd的旋轉(zhuǎn)角度α;</p><p>  如果abs(α)<th1,則為尖拱型指紋(Tented Arch);</p><p&g

71、t;  如果th1<abs(α)<th2,則按分類規(guī)則①進(jìn)行分類;</p><p>  如果abs(α)>th2;如果α<0,則為左箕型指紋(Left Loop);如果α>O,則為右箕型指紋(Right Loop)。</p><p>  (3)如果Nc=2,則為漩渦型指紋(whorl)。</p><p>  (4)否則,指紋質(zhì)量太差,拒

72、絕。其中th1、th2和S1為預(yù)先6閥值(分別是15、35和250)。</p><p><b>  6 論文總結(jié)</b></p><p>  本設(shè)計(jì)方案按照任務(wù)書的要求設(shè)計(jì)了自動(dòng)指紋識(shí)別系統(tǒng),在李君老師的指導(dǎo)下,理論聯(lián)系實(shí)際,基本達(dá)到了預(yù)先的目標(biāo)。</p><p>  這次課題從開始到結(jié)束總共用了幾個(gè)月的時(shí)間,在這幾個(gè)月的時(shí)間里,我先是按照要求

73、完成了閱讀文獻(xiàn),各種資料的整理,在理論方面學(xué)習(xí)了指紋識(shí)別系統(tǒng)的構(gòu)成。然后開始做,掌握了圖像預(yù)處理,指紋特征提取以及指紋的分類與檢索。指紋庫我是直接建立一個(gè)小的文件夾進(jìn)行查找,基本可以滿足小指紋庫的要求。</p><p>  現(xiàn)在的指紋識(shí)別系統(tǒng)多種多樣,但是原理都是不變的,做指紋識(shí)別系統(tǒng)幫助我了解了指紋識(shí)別的過程及原理,學(xué)會(huì)了自己動(dòng)手做軟件設(shè)計(jì),還學(xué)會(huì)了很多東西。</p><p><b

74、>  參考文獻(xiàn)</b></p><p>  [1] 曾建一.指紋識(shí)別技術(shù)的研究[J].自動(dòng)化技術(shù)與應(yīng)用,2007,(8):74-76.</p><p>  [2] 楊海軍.圖像檢測(cè)中若干低級(jí)處理問題及在指紋識(shí)別中應(yīng)用的研究[D].西安:西安交通大學(xué)博士論文,2000,70-80.</p><p>  [3] 沈庭芝,方子文.?dāng)?shù)字圖像處理及模式識(shí)別[

75、M].北京:北京理工大學(xué)出版社,1998,95-100.</p><p>  [4] R.Wildes.lris. recognition:Anemerging.biometrictechno1ogy[J]. Proceeding of IEEE,1997,85(9):1348-1363.</p><p>  [5] A.K.Jain. Recent advances in fingerp

76、rint verification[J].In Proceedings of 3rd International Conference on Audio and Video Based Person Authentication,2001,182-191.</p><p>  [6] 柴曉光等.民用指紋識(shí)別技術(shù)[M].北京:人民郵電出版社,2004,30-45.</p><p>  [7]

77、 張成,周媛媛,林嘉宇.指紋采集技術(shù)及其產(chǎn)品發(fā)展趨勢(shì)[J].電子技術(shù)應(yīng)用,2004,60-65.</p><p>  [8] MAIO D,MALTON I D.Davide Matloni. Direct gray scale minutiae detection in finger prints[J].IEEE PAM I,1997,19(1):27-39.</p><p>  [9]

78、 羅希平,田捷.自動(dòng)指紋識(shí)別中的圖像增強(qiáng)和細(xì)節(jié)匹配算法.軟件學(xué)報(bào),2002.</p><p>  [10] KALLE K,ANIL K J. Finger print classification[J].Pattern Recognition,1996,29(3):389-404.</p><p>  [11] 簡(jiǎn)兵,莊鎮(zhèn)泉,李海鷹,等.基于脊線跟蹤的指紋圖細(xì)節(jié)提取算法[J]. 電路與系

79、統(tǒng)學(xué)報(bào),2001,6(3):1-5.</p><p>  [12] 潘雷.自動(dòng)指紋識(shí)別原型系統(tǒng)的研究與實(shí)現(xiàn)[J].北京交通大學(xué),2008.10,39-50.</p><p>  [13] 趙陽. 基于嵌入式系統(tǒng)的指紋識(shí)別技術(shù)的研究[J],四川:西華大學(xué),2008:68</p><p>  [14] 于秀霞. 指紋識(shí)別技術(shù)及其應(yīng)用[B], 吉林: 長春大學(xué),2007.

80、30-32.</p><p>  [15] 黃韌,陸亨立,張維新.基于方向角度變化的指紋奇異點(diǎn)提取的快速算法[J].華東師范大學(xué)學(xué)報(bào),2002(1):52-55.</p><p>  [16] M.Bazen,G Verwaaijen,S.H.Gerez and et a1.A Correlation.BasedFingerprint Verification System[C]. In:

81、Proceedings of ProRISC2000, Veldhovert, The Netherlands, 2000.</p><p>  [17] K.Jain,S.Prabhakar,L.Hong and et a1.Filterbank-Based Fingerprint Matching[J],IEEE Transactions on Image Processing,2000,9(5):846-

82、859.</p><p>  [18] J.J.Feng,Z.Y Ouyang,A.N.Cai.Fingerprint Matching Using Ridges[J].Pattern Recognition,2006,39:2131-2140.</p><p>  [19] N.Yager,A.Amin.Fingerprint Verification Based ON Minutiae

83、 Features[J].A Review. Pattern Recognition and Applications,2004, 7:94—113.</p><p>  附錄1 主要源程序代碼</p><p><b>  clear;</b></p><p><b>  clc;</b></p><p

84、>  close all;</p><p>  global immagine n_bands h_bands n_arcs h_radius h_lato n_sectors matrice num_disk</p><p>  n_bands=4;</p><p>  h_bands=20;</p><p>  n_arcs=16;

85、</p><p>  h_radius=12;</p><p>  h_lato=h_radius+(n_bands*h_bands*2)+16;</p><p>  if mod(h_lato,2)==0</p><p>  h_lato=h_lato-1;</p><p><b>  end</b&

86、gt;</p><p>  n_sectors=n_bands*n_arcs;</p><p>  matrice=zeros(h_lato);</p><p>  for ii=1:(h_lato*h_lato)</p><p>  matrice(ii)=whichsector(ii);</p><p><b

87、>  end</b></p><p>  num_disk=8;</p><p>  % 1--> add database</p><p>  % 0--> recognition</p><p><b>  %ok=0;</b></p><p><b>

88、  chos=0;</b></p><p>  possibility=5;</p><p>  messaggio='Insert the number of set: each set determins a class. This set should include a number of images for each person, with some va

89、riations in expression and in the lighting.';</p><p>  while chos~=possibility,</p><p>  chos=menu('指紋識(shí)別系統(tǒng)','增加指紋圖像','選擇要識(shí)別的指紋','刪除指紋數(shù)據(jù)庫','指紋圖像可視化',&#

90、39;退出');</p><p>  %--------------------------------------------------------------------------</p><p>  %-------------------------------</p><p>  %-------------------------------

91、-------------------------------------------</p><p>  % Calculate FingerCode and Add to Database</p><p>  if chos==1</p><p><b>  clc;</b></p><p>  close all;

92、</p><p>  selezionato=0;</p><p>  while selezionato==0</p><p>  [namefile,pathname]=uigetfile({'*.bmp;*.tif;*.tiff;*.jpg;*.jpeg;*.gif','IMAGE Files (*.bmp,*.tif,*.tiff,*

93、.jpg,*.jpeg,*.gif)'},'Chose GrayScale Image');</p><p>  if namefile~=0</p><p>  [img,map]=imread(strcat(pathname,namefile));</p><p>  selezionato=1;</p><p>

94、<b>  else</b></p><p>  disp('Select a grayscale image');</p><p><b>  end</b></p><p>  if (any(namefile~=0) && (~isgray(img)))</p><

95、p>  disp('Select a grayscale image');</p><p>  selezionato=0;</p><p><b>  end</b></p><p><b>  end</b></p><p>  immagine=double(img);&

96、lt;/p><p>  if isa(img,'uint8')</p><p>  graylevmax=2^8-1;</p><p><b>  end</b></p><p>  if isa(img,'uint16')</p><p>  graylevmax=2

97、^16-1;</p><p><b>  end</b></p><p>  if isa(img,'uint32')</p><p>  graylevmax=2^32-1;</p><p><b>  end</b></p><p>  fingerpri

98、nt = immagine;</p><p><b>  N=h_lato;</b></p><p>  [BinarizedPrint,XofCenter,YofCenter]=centralizing(fingerprint,0);</p><p>  [CroppedPrint]=cropping(XofCenter,YofCenter,

99、fingerprint);</p><p>  [NormalizedPrint,vector]=sector_norm(CroppedPrint,0);</p><p>  for (angle=0:1:num_disk-1) </p><p>  gabor=gabor2d_sub(angle,num_disk);</p><p>

100、  ComponentPrint=conv2fft(NormalizedPrint,gabor,'same');</p><p>  [disk,vector]=sector_norm(ComponentPrint,1); </p><p>  finger_code1{angle+1}=vector(1:n_sectors);</p><p>

101、;<b>  end</b></p><p>  img=imrotate(img,180/(num_disk*2));</p><p>  fingerprint=double(img);</p><p>  [BinarizedPrint,XofCenter,YofCenter]=centralizing(fingerprint,0);&l

102、t;/p><p>  [CroppedPrint]=cropping(XofCenter,YofCenter,fingerprint);</p><p>  [NormalizedPrint,vector]=sector_norm(CroppedPrint,0);</p><p>  for (angle=0:1:num_disk-1) </p>&

103、lt;p>  gabor=gabor2d_sub(angle,num_disk);</p><p>  ComponentPrint=conv2fft(NormalizedPrint,gabor,'same');</p><p>  [disk,vector]=sector_norm(ComponentPrint,1); </p><p>

104、;  finger_code2{angle+1}=vector(1:n_sectors);</p><p><b>  end</b></p><p>  % FingerCode added to database</p><p>  if (exist('fp_database.dat')==2)</p>&l

105、t;p>  load('fp_database.dat','-mat');</p><p>  fp_number=fp_number+1;</p><p>  data{fp_number,1}=finger_code1;</p><p>  data{fp_number,2}=finger_code2;</p>

106、<p>  save('fp_database.dat','data','fp_number','-append');</p><p><b>  else</b></p><p>  fp_number=1;</p><p>  data{fp_number,1}=f

107、inger_code1;</p><p>  data{fp_number,2}=finger_code2;</p><p>  save('fp_database.dat','data','fp_number');</p><p><b>  end</b></p><p&g

108、t;  message=strcat('指紋已加至數(shù)據(jù)庫Fingerprint no. ',num2str(fp_number));</p><p>  msgbox(message,'FingerCode DataBase','help');</p><p><b>  end</b></p><p

109、>  %--------------------------------------------------------------------------</p><p>  %--------------------------------------------------------------------------</p><p>  %-----------------

110、---------------------------------------------------------</p><p>  % Fingerprint recognition</p><p>  if chos==2</p><p><b>  clc;</b></p><p>  close all;<

111、;/p><p>  selezionato=0;</p><p>  while selezionato==0</p><p>  [namefile,pathname]=uigetfile({'*.bmp;*.tif;*.tiff;*.jpg;*.jpeg;*.gif','IMAGE Files (*.bmp,*.tif,*.tiff,*.jp

112、g,*.jpeg,*.gif)'},'Chose GrayScale Image');</p><p>  if namefile~=0</p><p>  [img,map]=imread(strcat(pathname,namefile));</p><p>  selezionato=1;</p><p><

113、;b>  else</b></p><p>  disp('Select a grayscale image');</p><p><b>  end</b></p><p>  if (any(namefile~=0) && (~isgray(img)))</p><p&g

114、t;  disp('Select a grayscale image');</p><p>  selezionato=0;</p><p><b>  end</b></p><p><b>  end</b></p><p>  immagine=double(img);<

115、/p><p>  if isa(img,'uint8')</p><p>  graylevmax=2^8-1;</p><p><b>  end</b></p><p>  if isa(img,'uint16')</p><p>  graylevmax=2^16

116、-1;</p><p><b>  end</b></p><p>  if isa(img,'uint32')</p><p>  graylevmax=2^32-1;</p><p><b>  end</b></p><p>  fingerprint

117、= immagine;</p><p><b>  N=h_lato;</b></p><p>  [BinarizedPrint,XofCenter,YofCenter]=centralizing(fingerprint,0);</p><p>  [CroppedPrint]=cropping(XofCenter,YofCenter,fin

118、gerprint);</p><p>  [NormalizedPrint,vector]=sector_norm(CroppedPrint,0);</p><p>  % memoria per feature vector d'ingresso</p><p>  vettore_in=zeros(num_disk*n_sectors,1);</p

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論