專利名稱:一種基于計(jì)算機(jī)視覺檢測技術(shù)的二維碼快速檢測提取方法
技術(shù)領(lǐng)域:
本發(fā)明屬于基于視頻技術(shù)的二維條碼自動(dòng)檢測和圖形分割的方法,它能夠降低二維碼識別設(shè)備對于環(huán)境光或者補(bǔ)光條件的依賴,能夠在復(fù)雜的實(shí)際環(huán)境下快速檢測輸入圖像中是否有二維碼存在,并且快速地分割出有效的二維碼圖形。
背景技術(shù):
社會(huì)發(fā)展推動(dòng)了物聯(lián)網(wǎng)技術(shù)的廣泛需求和快速進(jìn)步,其中二維條碼為作為物聯(lián)網(wǎng)領(lǐng)域的關(guān)鍵技術(shù),是人、貨物和計(jì)算機(jī)等智能設(shè)備之間的信息媒介。相比于其他識別手段, 條碼技術(shù)具有成本低、使用方便、可靠性高等優(yōu)點(diǎn)。在迅速發(fā)展的社會(huì)需求下,傳統(tǒng)的一維條碼由于信息量小,呈現(xiàn)出很大的局限性。在此形勢下,信息容量更大、糾錯(cuò)能力更高的各種二維條碼被相繼提出。另一方面,二維條碼識讀設(shè)備普遍摒棄了傳統(tǒng)的激光掃描方式,而采用更為低成本的基于可見光圖像技術(shù)的數(shù)字?jǐn)z像頭。采用數(shù)字?jǐn)z像機(jī)和數(shù)字圖像處理技術(shù)成為二維條碼圖像數(shù)據(jù)采集設(shè)備的低成本解決方案。近年來,二維條碼被逐漸重視,并開始應(yīng)用于各種帶有視頻功能的智能終端設(shè)備,例如專用的物流管理移動(dòng)終端或是智能手機(jī)。在使用過程中,首先確立需傳遞的信息邊編制相應(yīng)的二維條碼,該信息可以是實(shí)際的物品信息,也可以是虛擬的驗(yàn)證密匙等;然后可將二維條碼打印在適合讀取的特定區(qū)域,如物品的外包裝上;在信息傳播過程中,二維碼作為信息的載體和傳輸接口,例如在物品的出庫、運(yùn)輸、分發(fā)、存儲、轉(zhuǎn)移等等環(huán)節(jié),可以通過掃描讀取物品對應(yīng)的二維碼快速的獲取相關(guān) fn息ο然而,由于二維條形碼的需多方向掃描的特性,導(dǎo)致圖像的畸變對條碼識別的影響較大。同時(shí),由于圖像采集的效果受到環(huán)境光照強(qiáng)弱及均勻程度的限制。更關(guān)鍵的是,照國家標(biāo)準(zhǔn)僅僅定義了在標(biāo)準(zhǔn)二維碼圖形下的檢測方法,并未詳細(xì)解釋如何從真實(shí)的傳感器圖形轉(zhuǎn)換到分割圖像。而不標(biāo)準(zhǔn)的二維碼分割圖形,將導(dǎo)致QR碼無法被檢測。然而實(shí)際使用過程的環(huán)境復(fù)雜多變,經(jīng)常出現(xiàn)二維條形碼被遮擋和污損的情況。因此,研究在在復(fù)雜的光照環(huán)境下進(jìn)行快速的二維碼檢測和分割具有積極意義。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種基于計(jì)算機(jī)視覺檢測技術(shù)的二維碼快速檢測提取方法, 以解決復(fù)雜的成像環(huán)境情況下檢測二維碼和分割二維碼圖形的問題。本發(fā)明的目的是這樣實(shí)現(xiàn)的一種基于計(jì)算機(jī)視覺檢測技術(shù)的二維碼快速檢測提取方法,包括數(shù)字?jǐn)z像機(jī)、補(bǔ)光設(shè)備、定位指示設(shè)備和嵌入式計(jì)算機(jī)或工業(yè)控制計(jì)算機(jī);按以下步驟進(jìn)行1)當(dāng)掃描開始,補(bǔ)光設(shè)備開始補(bǔ)光,定位指示設(shè)備提示掃描范圍;通過計(jì)算機(jī)驅(qū)動(dòng)數(shù)字?jǐn)z像機(jī)讀取彩色圖像;2)對上述彩色圖像進(jìn)行預(yù)處理,包括去噪聲和平滑濾波;3)將處理后的彩色圖像轉(zhuǎn)換為灰度圖像;
4)使用Iaplace算子計(jì)算灰度圖像中的邊緣;5)計(jì)算邊緣圖形的積分圖;6)將圖像分割成若干塊,并用對每塊子圖像計(jì)算其中的邊緣數(shù)量之和;7)遍歷所有子圖像,若子圖像中邊緣數(shù)量和大于設(shè)定閾值,則可認(rèn)為該區(qū)域可能是二維碼圖形區(qū)域,設(shè)置對應(yīng)的判別矩陣的值為1 ;否則設(shè)定為0 ;若沒有任何一個(gè)子圖像被判別為1,則轉(zhuǎn)到步驟14);8)提升子圖像的分辨率一倍,同樣子圖像的尺度縮小為原來的一半,利用預(yù)先獲取的積分圖重新計(jì)算判別矩陣中邊緣對應(yīng)的子圖像中邊緣數(shù)量和;9)若分辨率達(dá)到最大分辨率,則轉(zhuǎn)入步驟10),否則返回步驟8);10)對判別矩陣中為1的位置用Otsu算法計(jì)算其自適應(yīng)分割值;11)擴(kuò)張判別矩陣;12)利用判別矩陣分割圖像,即圖像中的像素灰度值若大于判別矩陣對應(yīng)值,則設(shè)置為255 ;否則設(shè)置為0 ;13)將獲得的二值化圖形傳輸給掃描檢測裝置進(jìn)行識別;若識別成功則開啟用戶提示功能,通知用戶并且將譯碼信息輸出到緩沖區(qū);14)等待用戶指令,若接受到繼續(xù)指令則返回步驟1);否則進(jìn)入步驟15);15)退出。本發(fā)明由三個(gè)部分組成具有補(bǔ)光功能的視頻圖像采集部分,處理視頻圖像的二維碼檢測和識別核心算法部分,負(fù)責(zé)和用戶交互的界面接口部分。視頻采集部分根據(jù)用戶指令,開啟攝像頭并按照固定幀率采集彩色視頻圖像;QR碼檢測識別部分對攝像機(jī)采集的視頻圖像進(jìn)行掃描處理,提取并輸出其中的QR碼信息;人機(jī)交互部分接受到用戶的工作指令后,首先打開補(bǔ)光裝置提示用戶設(shè)備由休眠轉(zhuǎn)為開始工作,并用激光定位指示燈提示用戶掃描范圍,當(dāng)掃描成功后用蜂鳴器提示完成。三個(gè)部分分別包含了最底層的硬件和驅(qū)動(dòng)、 底層核心算法軟件和上層交互界面軟件。本發(fā)明通過分區(qū)域的局部信息自適應(yīng)地分割視頻采集部分獲取的圖片,進(jìn)而掃描定位其中的定位圖像和,從而根據(jù)幾何關(guān)系采樣并譯碼。本發(fā)明能適應(yīng)真實(shí)情況下的光照情況,例如光照不足、光照不均勻、背景雜亂等等,并且自動(dòng)檢測視頻流中的二維碼圖形,再轉(zhuǎn)化為二值化圖像,其中二維碼的深色條紋被處理為黑色,淺色條紋和背景被處理為白色。二值化圖像可供二維碼掃描模塊使用,以檢測其中的定位圖形。整個(gè)處理過程使用了加速算法,使實(shí)現(xiàn)過程比傳統(tǒng)方法的速度更高,同時(shí)不受版本、印刷尺寸和顏色的影響,且具有較高的抗噪聲、抗污損的能力。和其他的二維碼檢測和分割處理方法相比,本發(fā)明的有益效果在于1、本發(fā)明可以在光照極度不均勻的情況下依然實(shí)現(xiàn)二維碼圖形的提??;2、本發(fā)明采用可見光視頻,成本更低,原始數(shù)據(jù)可供人眼直接觀測;3、本發(fā)明可以在弱光環(huán)境下完成檢測和二維碼提??;4、本發(fā)明可以不存在復(fù)雜的機(jī)械設(shè)備,可使故障率更低;5、本發(fā)明有效利用現(xiàn)有智能設(shè)備,利用算法模塊擴(kuò)展現(xiàn)有功能;6、本發(fā)明的檢測和提取處理速率比傳統(tǒng)方法更高。本發(fā)明可以集成于專用的二維條形碼識讀設(shè)備,也可利用現(xiàn)有廣泛使用的嵌入式智能設(shè)備的視頻采集硬件設(shè)備資源,在視頻信號采集的基礎(chǔ)上對觀測到的二維碼圖形進(jìn)行智能化的處理。
圖1是本發(fā)明硬件連接方式說明圖。圖2-1、圖2-2分別是本發(fā)明處理總體流程圖和多分辨率自適應(yīng)閾值計(jì)算處理的流程圖。圖3-1、圖3-2分別是本發(fā)明視頻攝像機(jī)兩種安裝示意圖。
具體實(shí)施例方式圖1中,計(jì)算機(jī)左面連接數(shù)字?jǐn)z像機(jī)以及LED補(bǔ)光燈,計(jì)算機(jī)右面連接蜂鳴器、顯示器以及按鈕(鍵盤)。本發(fā)明主要由數(shù)字?jǐn)z像機(jī)、補(bǔ)光設(shè)備(如LED補(bǔ)光燈)、定位指示設(shè)備和嵌入式計(jì)算機(jī)或工業(yè)控制計(jì)算機(jī)組成。本發(fā)明的基本思想如下一種基于計(jì)算機(jī)視覺檢測技術(shù)的二維碼快速檢測提取方法,包括數(shù)字?jǐn)z像機(jī)、補(bǔ)光設(shè)備、定位指示設(shè)備和嵌入式計(jì)算機(jī)或工業(yè)控制計(jì)算機(jī);按以下步驟進(jìn)行1)當(dāng)掃描開始,補(bǔ)光設(shè)備開始補(bǔ)光,定位指示設(shè)備提示掃描范圍;通過計(jì)算機(jī)驅(qū)動(dòng)數(shù)字?jǐn)z像機(jī)讀取彩色圖像;2)對上述彩色圖像進(jìn)行預(yù)處理,包括去噪聲和平滑濾波;3)將處理后的彩色圖像轉(zhuǎn)換為灰度圖像;4)使用Iaplace算子計(jì)算灰度圖像中的邊緣;5)計(jì)算邊緣圖形的積分圖;6)將圖像分割成若干塊,并用對每塊子圖像計(jì)算其中的邊緣數(shù)量之和;7)遍歷所有子圖像,若子圖像中邊緣數(shù)量和大于設(shè)定閾值,則可認(rèn)為該區(qū)域可能是二維碼圖形區(qū)域,設(shè)置對應(yīng)的判別矩陣的值為1 ;否則設(shè)定為0 ;若沒有任何一個(gè)子圖像被判別為1,則轉(zhuǎn)到步驟14);8)提升子圖像的分辨率一倍,同樣子圖像的尺度縮小為原來的一半,利用預(yù)先獲取的積分圖重新計(jì)算判別矩陣中邊緣對應(yīng)的子圖像中邊緣數(shù)量和;9)若分辨率達(dá)到最大分辨率,則轉(zhuǎn)入步驟10),否則返回步驟8);10)對判別矩陣中為1的位置用Otsu算法計(jì)算其自適應(yīng)分割值;11)擴(kuò)張判別矩陣;12)利用判別矩陣分割圖像,即圖像中的像素灰度值若大于判別矩陣對應(yīng)值,則設(shè)置為255 ;否則設(shè)置為0 ;13)將獲得的二值化圖形傳輸給掃描檢測裝置進(jìn)行識別;若識別成功則開啟用戶提示功能,通知用戶并且將譯碼信息輸出到緩沖區(qū);14)等待用戶指令,若接受到繼續(xù)指令則返回步驟1);否則進(jìn)入步驟15);15)退出。在以上各步驟中,采用紋理的方式判別疑似二維碼區(qū)域,若成功判斷存在二維碼, 則采取多分辨率提取二維碼圖形區(qū)域。由于自適應(yīng)的閾值計(jì)算過程總是在提升分辨率后的圖形區(qū)域的邊緣進(jìn)行的,因此計(jì)算復(fù)雜度由傳統(tǒng)窮舉搜索方法的0(η2)減為了 0(η),即計(jì)算復(fù)雜度大為降低,加速了二維碼檢測提取過程(參見圖2-1、圖2-幻。因此,快速判斷觀測圖像中是否有二維碼圖形并快速分割的意義在于,可以改善檢測識別的速率。首先判斷場景中是否有二維碼的計(jì)算代價(jià)比較小,如果觀測圖像中沒有二維碼,則可回避后續(xù)無用的操作,直接循環(huán)處理下一幀圖像;其次,如果場景中有二維碼,則需對二維碼圖形區(qū)域進(jìn)行提取。此時(shí)的關(guān)鍵要求不是處理速度快,而是盡量準(zhǔn)確獲得高質(zhì)量的分割圖像,進(jìn)而減少掃描譯碼模塊嘗試的次數(shù)。換句話說,盡管高質(zhì)量的分割過程會(huì)適當(dāng)增加運(yùn)算量,但由于提高了命中率,因此從全局看仍然是提高了識別速率。由于我們還采用了高精度分割的加速方法,因此使計(jì)算效率進(jìn)一步提升。硬件列表如下
權(quán)利要求
1. 一種基于計(jì)算機(jī)視覺檢測技術(shù)的二維碼快速檢測提取方法,包括,數(shù)字?jǐn)z像機(jī)、補(bǔ)光設(shè)備、定位指示設(shè)備和嵌入式計(jì)算機(jī)或工業(yè)控制計(jì)算機(jī);其特征是按以下步驟進(jìn)行1)當(dāng)掃描開始,補(bǔ)光設(shè)備開始補(bǔ)光,定位指示設(shè)備提示掃描范圍;通過計(jì)算機(jī)驅(qū)動(dòng)數(shù)字?jǐn)z像機(jī)讀取彩色圖像;2)對上述彩色圖像進(jìn)行預(yù)處理,包括去噪聲和平滑濾波;3)將處理后的彩色圖像轉(zhuǎn)換為灰度圖像;4)使用Iaplace算子計(jì)算灰度圖像中的邊緣;5)計(jì)算邊緣圖形的積分圖;6)將圖像分割成若干塊,并用對每塊子圖像計(jì)算其中的邊緣數(shù)量之和;7)遍歷所有子圖像,若子圖像中邊緣數(shù)量和大于設(shè)定閾值,則可認(rèn)為該區(qū)域可能是二維碼圖形區(qū)域,設(shè)置對應(yīng)的判別矩陣的值為1 ;否則設(shè)定為0 ;若沒有任何一個(gè)子圖像被判別為1,則轉(zhuǎn)到步驟14);8)提升子圖像的分辨率一倍,同樣子圖像的尺度縮小為原來的一半,利用預(yù)先獲取的積分圖重新計(jì)算判別矩陣中邊緣對應(yīng)的子圖像中邊緣數(shù)量和;9)若分辨率達(dá)到最大分辨率,則轉(zhuǎn)入步驟10),否則返回步驟8);10)對判別矩陣中為1的位置用Otsu算法計(jì)算其自適應(yīng)分割值;11)擴(kuò)張判別矩陣;12)利用判別矩陣分割圖像,即圖像中的像素灰度值若大于判別矩陣對應(yīng)值,則設(shè)置為 255 ;否則設(shè)置為0 ;13)將獲得的二值化圖形傳輸給掃描檢測裝置進(jìn)行識別;若識別成功則開啟用戶提示功能,通知用戶并且將譯碼信息輸出到緩沖區(qū);14)等待用戶指令,若接受到繼續(xù)指令則返回步驟1);否則進(jìn)入步驟15);15)退出。
全文摘要
一種基于計(jì)算機(jī)視覺檢測技術(shù)的二維碼快速檢測提取方法,計(jì)算機(jī)接收到數(shù)字?jǐn)z像機(jī)的視頻信號后,控制補(bǔ)光設(shè)備和聲光提示設(shè)備控制掃描范圍。計(jì)算機(jī)內(nèi)安裝的二維碼智能檢測提取模塊,通過分塊處理圖像中的紋理信息,檢測其中可能的二維碼碼圖形,再采用多分辨率自適應(yīng)分割策略提取二維碼圖形,將分割圖像傳輸給后續(xù)掃描定位和譯碼模塊。若成功則提示用戶。本發(fā)明根據(jù)二維碼的紋理特征快速檢測,并使用了精確分割的快速方法。本發(fā)明具有可適應(yīng)復(fù)雜光照情況、成本低廉、不存在易導(dǎo)致故障的復(fù)雜機(jī)械裝置、可有效利用現(xiàn)有智能設(shè)備,利用算法模塊擴(kuò)展現(xiàn)有功能的特點(diǎn)。
文檔編號G06K9/60GK102393906SQ201110193410
公開日2012年3月28日 申請日期2011年7月12日 優(yōu)先權(quán)日2011年7月12日
發(fā)明者唐鵬, 杜濤, 王俊峰, 陳懿, 高琳 申請人:四川大學(xué)