




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、南京航空航天大學(xué)課程設(shè)計(jì)題目二維碼的生成及識(shí)別小組成員:何俊豪韓懷曉晉曉飛瞿詩華薛莉二0一五年十一月第一章QR碼簡介QR碼是由日本Denso公司與1994年制定出來的一種矩陣二維碼符號(hào),它除了具有信息 容量大、可靠性高、可表示漢字及圖像信息、保密性強(qiáng)等優(yōu)點(diǎn)外,還具有超高速響應(yīng)、全方 位識(shí)別等特點(diǎn)。QR碼符號(hào)是由正方形的細(xì)小模塊構(gòu)成,分為功能區(qū)和編碼區(qū)。功能圖形包括位置探測 圖形、分隔符、定位圖形、校正圖形、格式信息、版本信息等,編碼區(qū)域包括數(shù)據(jù)編碼塊和 糾錯(cuò)碼圖形。普通QR碼基本圖形及區(qū)域功能對(duì)照?qǐng)D如圖所示。圖QR碼基本結(jié)構(gòu)QR碼的密度標(biāo)識(shí)圖形位于兩個(gè)“回”字標(biāo)識(shí)符之間的黑白相間的條紋,用紅色
2、線標(biāo)注的,這個(gè)區(qū)域可以用于 確定QR碼符號(hào)的像素方塊的密度(即一個(gè)像素的大?。瑯?biāo)識(shí)識(shí)別模塊如圖所示。圖QR碼密度標(biāo)識(shí)圖形位置探測圖形位置探測圖形由三個(gè)重疊的同心正方形構(gòu)成,如圖所示。通過探測位置探測圖形可以迅 速的從背景圖像中判斷出QR碼符號(hào)的大致位置。圖QR碼探測圖形二維碼定位就是找到二維碼符號(hào)的位置探測圖形,對(duì)有明顯條碼特征的區(qū)域進(jìn)行定位, 然后根據(jù)圖形結(jié)構(gòu)特征值對(duì)不同的條碼符號(hào)進(jìn)行進(jìn)一步的處理。通過QR碼的定位圖形,可 以得到左上角位置探測圖形的邊界點(diǎn)和左下角位置探測圖形的邊界點(diǎn)如圖(a)所示,因此 可以采用魯棒性較好的算法擬合條碼左邊框,然后通過直線擬合得到條碼的上邊框直線。在 此基
3、礎(chǔ)上構(gòu)建直角三角形,尋找出圖形中心,如圖(b)所示,并可以得到第四個(gè)交點(diǎn),如 圖(c)所示。(a)確定左邊界和上邊界(b)確定探測圖形中心(c)確定第四個(gè)交點(diǎn)圖條碼圖像初步定位流程版本信息QR碼符號(hào)共有40種規(guī)格,版本1的規(guī)格為21模塊X21模塊,版本2為25模塊X25 模塊,以此類推,每一版本符號(hào)比前一版本每邊增加4個(gè)模塊,直到版本40,規(guī)格為177 模塊X177模塊。QR碼的版本信息圖形在整個(gè)二維碼圖像中的位置如圖所示,QR碼最高版 本40可容納多達(dá)1850個(gè)大寫字母或2710個(gè)數(shù)字或1108個(gè)字節(jié),或500多個(gè)漢字,比普通 條碼信息容量約高幾十倍。圖 版本信息圖形糾錯(cuò)碼QR碼具有“糾錯(cuò)能
4、力”,即使在使用過程中遇到污損、折疊等現(xiàn)象,也可以自動(dòng)恢復(fù) 數(shù)據(jù)。這一 “糾錯(cuò)能力”具備四個(gè)級(jí)別,級(jí)別越高,糾錯(cuò)能力越高,但是數(shù)據(jù)量也會(huì)增加, 編碼尺寸也會(huì)變大。QR碼各級(jí)別糾錯(cuò)碼糾錯(cuò)能力如表所示。表糾錯(cuò)碼級(jí)別糾錯(cuò)能力對(duì)照表QR碼的糾錯(cuò)能力級(jí)別L約7%級(jí)別M約15%級(jí)別Q約25%級(jí)別H約30%第二章QR碼編碼規(guī)則介紹將輸入的數(shù)據(jù)轉(zhuǎn)變?yōu)橐粋€(gè)位流,如果最開始的模式指示符不是默認(rèn)的,其前面要用ECI 標(biāo)頭,如果以默認(rèn)的開始,位流的開頭為第一個(gè)模式的指示符,如表所示,該表定義了不 同模式下的模式指示符。表定義了不同模式和符號(hào)版本下的字符計(jì)數(shù)指示符的長度。表模式指示符模式指示符ECI0111數(shù)字0001
5、字母數(shù)字00108位字節(jié)0100日本漢字1000中國漢字1101結(jié)構(gòu)鏈接0011FNCI0101 (第一位置)1001 (第二位置)終止符(信息結(jié)尾)0000表字符計(jì)數(shù)指示符的位數(shù)版本數(shù)字模式字母數(shù)字模式8位字節(jié)模式中國漢字模式1910988102612111610274014131612數(shù)字模式編碼實(shí)現(xiàn)將輸入的數(shù)據(jù)從左至右每三位轉(zhuǎn)化成一個(gè)10位的二進(jìn)制數(shù),剩余的一位或者兩位數(shù)據(jù) 分別轉(zhuǎn)化成4位或7位二進(jìn)制數(shù)。然后在轉(zhuǎn)換后的二進(jìn)制數(shù)據(jù)前加上模式指示符和字符計(jì)數(shù) 指示符。例如輸入數(shù)據(jù):,編碼步驟如圖所示。圖數(shù)字模式編碼流程字母模式編碼實(shí)現(xiàn)字母模式編碼規(guī)則與數(shù)字模式編碼規(guī)則類似,不過首先要根據(jù)對(duì)應(yīng)
6、的字母模式編碼轉(zhuǎn)換 表將字符轉(zhuǎn)化為相應(yīng)的數(shù)值,再將每兩個(gè)字母分為一組,前面字符的值乘以與第二個(gè)字符的值相加,所得的結(jié)果轉(zhuǎn)換為位二進(jìn)制數(shù)。表字母模式編碼轉(zhuǎn)換表字符值字符值字符值字符值字符值字符值字符值字符值0066C12I18O24U30SP36.421177D13J19P25V31$37/432288E14K20Q26W32%38:443399F15L21R27X33*3944A10G16M22S28Y34+4055B11H17N23T29Z35-41中國漢字模式編碼實(shí)現(xiàn)GB2312標(biāo)準(zhǔn)規(guī)定的漢字字符為雙字節(jié)表示QR的漢字編碼模式將16位的轉(zhuǎn)換為13位 二進(jìn)制字符序列,提高了編碼效率。編碼具體
7、步驟:(1)將第一字節(jié)值減去0 xA6;(2)將(1)的結(jié)果乘以0 x60;(3)將第二字節(jié)值減去0 xA1;(4)將(2)的值加上(3)的值;(5)將結(jié)果轉(zhuǎn)化成13位二進(jìn)制。糾錯(cuò)編碼按需要將碼字序列分塊,并根據(jù)糾錯(cuò)等級(jí)和分塊的碼字,產(chǎn)生糾錯(cuò)碼字,并把糾錯(cuò)碼字 加入到數(shù)據(jù)碼字序列后面,成為一個(gè)新的序列。在二維碼規(guī)格和糾錯(cuò)等級(jí)確定的情況下,其 實(shí)它所能容納的碼字總數(shù)和糾錯(cuò)碼字?jǐn)?shù)也就確定了。糾錯(cuò)碼主要通過里德-所羅門糾錯(cuò)算法 算出來,例如:版本10,糾錯(cuò)等級(jí)時(shí)H時(shí),總共能容納346個(gè)碼字,其中224個(gè)糾錯(cuò)碼字。 就是說二維碼區(qū)域中大約1/3的碼字時(shí)冗余的。對(duì)于這224個(gè)糾錯(cuò)碼字,它能夠糾正112個(gè)
8、替代錯(cuò)誤(如黑白顛倒)或者224個(gè)據(jù)讀錯(cuò)誤(無法讀到或者無法譯碼)。在規(guī)格確定的條件下,將原先產(chǎn)生的序列按次序放如分塊中,按規(guī)定把數(shù)據(jù)分塊,然后 對(duì)每一塊進(jìn)行計(jì)算,得出相應(yīng)的糾錯(cuò)碼字區(qū)塊,把糾錯(cuò)碼字區(qū)塊 按順序構(gòu)成一個(gè)序列,添 加到原先的數(shù)據(jù)碼字序列后面,如圖所示。圖二維碼矩陣構(gòu)造Zxing簡介Zxing是一個(gè)開放源碼的,用Java實(shí)現(xiàn)的多種格式一維或者二維的條碼圖像處理庫, 它包含了聯(lián)系到其他語言的端口,通常使用Zxing生成相應(yīng)的二維碼碼以及解碼。生成二維碼的編碼技術(shù)是指基于給定內(nèi)容生成二維條碼圖片,Zxing可以對(duì)生成的二維 碼的圖片格式、各項(xiàng)參數(shù)以及二維碼類型進(jìn)行設(shè)置,生成的圖片包含給
9、定的內(nèi)容,當(dāng)使用識(shí) 別設(shè)備進(jìn)行掃描時(shí),能夠讀出給定的內(nèi)容。使用Zxing進(jìn)行編碼的步驟主要如下:首先,將所需的Zxing類庫中的包導(dǎo)入工程;其 次,對(duì)需要生成二維條碼的給定內(nèi)容進(jìn)行編碼方式處理,防止在顯示中文時(shí)出現(xiàn)亂碼問題, 并指定所生成二維條碼圖片的路徑、名稱和文件格式;然后,找到Zxing中二維碼QR碼所 對(duì)應(yīng)的編碼類QR-CodeWriter,調(diào)用encode方法生成給定內(nèi)容對(duì)應(yīng)的比特矩陣;最后將比 特矩陣轉(zhuǎn)化為制定的圖片格式。第三章處理流程及結(jié)果演示處理流程二維碼處理流程如圖所示,若已有二維碼圖像,直接讀取該圖像,在此基礎(chǔ)上完成解碼識(shí)別等過程,用戶也可按照自己的意愿在文本框里輸入漢字或
10、數(shù)值等內(nèi)容,調(diào)用Zxing,生 成對(duì)應(yīng)的二維碼圖像。后對(duì)圖像進(jìn)行灰度化、加噪平滑、二值化、旋轉(zhuǎn)校正、畸變校正等預(yù) 處理,并在此基礎(chǔ)上再次調(diào)用Zxing完成解碼識(shí)別的過程。結(jié)束開始圖二維碼生成及處理流程圖界面設(shè)計(jì)預(yù)處理解碼識(shí)別畸變校正灰度化調(diào)用Zxing調(diào)用Zxing二值化旋轉(zhuǎn)校正加噪平滑讀取已有QR圖像自動(dòng)生成QR圖像界面設(shè)計(jì)本實(shí)驗(yàn)設(shè)計(jì)界面如圖所示,界面可實(shí)現(xiàn)功能:打開一幅二維碼圖像,對(duì)該圖像進(jìn)行灰度 化、加噪平滑、二值化、旋轉(zhuǎn)校正、畸變校正等預(yù)處理,并在這些過程的基礎(chǔ)上完成對(duì)二維 碼圖像的解碼過程。還可以對(duì)用戶自身想要的文字或者網(wǎng)址進(jìn)行二維碼圖形的制作,并完成 解碼顯示。圖界面設(shè)計(jì)預(yù)處理及其
11、結(jié)果演示通過讀取圖像打開待處理原始二維碼圖像,并顯示該二維碼圖像如圖所示。根據(jù)待識(shí) 別圖像各自特點(diǎn)施以不同的預(yù)處理手段。圖原始QR圖像灰度化處理通常情況下,使用數(shù)碼相機(jī)等攝像設(shè)備獲取的QR碼是彩色的,和灰度圖像相比,彩色 圖像含有的信息量較大,所占存儲(chǔ)空間更多,將彩色圖像轉(zhuǎn)化成灰度圖像是為了減少存儲(chǔ)空 間,降低運(yùn)算量。灰度化處理后圖像如圖所示。圖灰度化處理圖像平滑處理對(duì)圖像加入椒鹽噪聲,然后采用中值濾波對(duì)圖像進(jìn)行平滑濾波處理,加噪及平滑處理后 圖像分別如圖(a)和(b)所示。(a)加噪圖像(b)平滑圖像圖 加噪平滑處理二值化處理標(biāo)準(zhǔn)的二維碼圖像是由黑白兩種小的模塊組合而成的,灰度化之后需對(duì)圖像
12、進(jìn)行二值化 處理,以便數(shù)據(jù)的壓縮、特征的突出以及圖形的識(shí)別。圖像二值化的方法是通過預(yù)先設(shè)定的 一個(gè)閾值,將灰度圖像分為小于這個(gè)閾值和大于這個(gè)閾值的兩部分,通過閾值的選取可以將 圖像的背景區(qū)和條碼符號(hào)分開,本文采用自適應(yīng)閾值法對(duì)圖像進(jìn)行二值化處理。自適應(yīng)閾值 法的基本原理是采用某一假定的灰度值t將圖像的灰度分為兩組,當(dāng)兩組的類間方差最大 時(shí),此灰度值就是二值化的最佳閾值,二值化處理結(jié)果如圖所示。圖 二值化處理旋轉(zhuǎn)校正在二維碼圖像采集的過程之中,由于拍攝角度的問題,會(huì)導(dǎo)致圖像產(chǎn)生一定的旋轉(zhuǎn)畸變, 本文采取霍夫變換的方法對(duì)此情況進(jìn)行校正,旋轉(zhuǎn)校正前后的圖像如圖所示。圖原圖(左)以及旋轉(zhuǎn)校正后的圖像(
13、右)在旋轉(zhuǎn)校正之前,需要對(duì)圖像做邊緣檢測。本實(shí)驗(yàn)使用的邊緣檢測算子為“canny”算 子,“canny”算子可尋找圖像梯度的局部最大值,且不易受噪聲干擾,能夠很好地檢測出 弱邊緣,邊緣檢測結(jié)果如圖所示。圖 邊緣檢測采取霍夫變換的方法對(duì)圖像進(jìn)行旋轉(zhuǎn)校正,主要是在圖像空間和參數(shù)空間建立起一個(gè) “線-點(diǎn)”之間的對(duì)應(yīng)關(guān)系,每條曲線表示一個(gè)點(diǎn),Hough變換統(tǒng)計(jì)所有變化的峰值,并標(biāo) 記,得到4個(gè)頂點(diǎn),如圖所示。圖Hough空間顯示圖使用Hough變換檢測線段,標(biāo)出線段以及線段的起始和端點(diǎn),得到每條線段的斜率,并 計(jì)算傾斜角度值。,最后將圖像中的線條與點(diǎn)顯示出來,如圖所示。圖直線標(biāo)識(shí)圖像圖像的坐標(biāo)原點(diǎn)默認(rèn)
14、為平面的左上角,根據(jù)得到的角度值。,將圖像按照。角度進(jìn)行 旋轉(zhuǎn),便能夠完成對(duì)圖像的旋轉(zhuǎn)校正?;兂C正可能會(huì)由于角度的問題,導(dǎo)致圖像產(chǎn)生幾何形變,使原來的QR碼呈現(xiàn)不規(guī)則的四邊形, 從而影響二維碼信息的正確提取。使用雙線性插值法將不規(guī)則則的四邊形區(qū)域通過一定的映 射關(guān)系變?yōu)镼R碼標(biāo)準(zhǔn)正方形,從而方便了對(duì)二維碼信息的提取?;冃U昂笕鐖D所示。圖原圖(左)以及畸變校正后的圖像(右)QR碼解碼識(shí)別解碼技術(shù)是指從二維碼中讀取出所包含的信息,本實(shí)驗(yàn)直接調(diào)用Zxing完成解碼識(shí)別的 過程,包括以下幾個(gè)步驟:首先,導(dǎo)入Zxing類庫中的包;其次,指定二維條碼圖片的路徑; 然后,找到Zxing中二維條碼QR碼所對(duì)應(yīng)的解碼類QR-C
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度環(huán)保設(shè)備租賃合同價(jià)款調(diào)整與環(huán)保設(shè)施運(yùn)行維護(hù)
- 二零二五年度醫(yī)療健康產(chǎn)業(yè)合作利潤分成協(xié)議
- 2025年度股東持股比例調(diào)整與公司投資決策程序協(xié)議
- 二零二五年度手集裝箱房移動(dòng)辦公空間轉(zhuǎn)讓協(xié)議
- 二零二五年度知識(shí)產(chǎn)權(quán)保護(hù)服務(wù)協(xié)議范本
- 藥店員工勞動(dòng)合同協(xié)議書(2025年度)-藥品追溯與供應(yīng)鏈安全
- 二零二五年度游泳池租賃與水上運(yùn)動(dòng)設(shè)備供應(yīng)合同
- 二零二五年度電商平臺(tái)電商平臺(tái)數(shù)據(jù)分析與運(yùn)營優(yōu)化合同
- 電梯維修四季度安全事故應(yīng)急預(yù)案
- 2025年度豪華私人房屋裝修安全保證合同
- 云南省實(shí)驗(yàn)教材信息技術(shù)三年級(jí)第一冊(cè)第13課PPT課件
- 交際德語教程第二版A1Studio[21] 課后習(xí)題參考答案
- 最新修改 班組安全管理建設(shè)--5831模式通用課件
- 氣割、電氣焊作業(yè)的應(yīng)急救援預(yù)案
- 2018年柴油機(jī)大修工程量單
- 超級(jí)精美PPT模版美國經(jīng)典ppt模板(通用珍藏版2)
- 2022年“葉圣陶杯”全國中學(xué)生新作文大賽專用稿紙
- 中醫(yī)內(nèi)科方歌-八
- 氣動(dòng)控制閥的定義分類及工作原理詳解
- 梯形練字格A4紙打印版
- 對(duì)丁達(dá)爾效應(yīng)的研究
評(píng)論
0/150
提交評(píng)論