新聞中心

EEPW首頁 > 消費(fèi)電子 > 設(shè)計(jì)應(yīng)用 > Data Matrix二維碼圖像處理與應(yīng)用

Data Matrix二維碼圖像處理與應(yīng)用

作者: 時間:2009-07-28 來源:網(wǎng)絡(luò) 收藏

碼是在平面方向上都記錄信息的符號。它充分利用了平面上的空間,大大提升了信息密度,使得在小面積上編碼大數(shù)據(jù)成為可能。其次由于它超強(qiáng)的糾錯能力,即使大面積受損也能被準(zhǔn)確識別?,F(xiàn)在二維碼于工業(yè)自動化、物流、郵政、醫(yī)療、商業(yè)、金融、交通運(yùn)輸、身份識別、政府管理、公共安全、海關(guān)及國防等領(lǐng)域。在我國,二維碼的尚屬起步階段,地區(qū)和領(lǐng)域也相當(dāng)有限。但是可以預(yù)見,二維碼以其獨(dú)特的優(yōu)勢必將像條形碼一樣在我國的各個領(lǐng)域被推廣和應(yīng)用。

本文引用地址:http://m.butianyuan.cn/article/166921.htm

本文通過Matrox公司的圖像采集卡Meteor-II Standard,利用MIL函數(shù)庫對氣動打印在金屬零件上的 二維碼進(jìn)行了實(shí)時捕捉識別,并對采集來的 圖像進(jìn)行具體的,命名其達(dá)到被識別的要求。最后,通過實(shí)驗(yàn)討論提高識別率的辦法。

1 概述

二維碼有多種類型,本文只討論矩陣式Data Matrix。

Data Matrix最大特點(diǎn)就是“小”,能在25mm2面積上編碼30個數(shù)字,因此被廣泛用于標(biāo)示集成電路、藥品等小件物品。另外在制造業(yè)的流水線生產(chǎn)過程中,打印生成Data Matrix也較容易。

如圖1所示,Data Matrix符號看起來像一個由深淺兩種顏色組成的國際象棋棋盤,每一個相同大小的黑色或白色方格稱為一個數(shù)據(jù)單位。Data Matrix符號由許多這樣的數(shù)據(jù)單位組成。在尋邊區(qū)外層有寬度為一個數(shù)據(jù)單位的靜區(qū)。尋邊區(qū)是“棋盤”的邊界,只用于定位和定義數(shù)字單位的大小,而不含 有任何編碼信息。被尋邊區(qū)包圍的數(shù)據(jù)區(qū)包含著編碼信息。矩陣中的0、1就是Data Matrix的黑白兩色小方格,即數(shù)據(jù)單位。

Data Matrix采用了Reed-Solomon交織交插編碼,編碼時加入了糾錯碼,使Data Matrix的糾錯性能比較強(qiáng)。以一個5位的流水號“12345”為例,通過編碼規(guī)則得到Data Matrix的3位碼字和5位糾錯碼,可糾錯2位碼字,糾錯率為2/8=25%。

2 用MIL識別Data Matrix碼

Meteor-II Standard是Matrox公司的一塊圖像采集卡,通過攝像頭采集外界圖像,然后實(shí)時地傳輸給主機(jī)內(nèi)存。MIL函數(shù)開發(fā)包是一個獨(dú)立于硬件的32位函數(shù)庫,其中有大量基本的函數(shù)。

2.1 基本過程

Data Matrix識別的基本過程如圖2所示。通過MIL提供的函數(shù)采集圖像,并將采集的圖像以數(shù)字化方式存儲在圖像緩沖區(qū)中;對圖像進(jìn)行增強(qiáng)處理,提高圖像的識別準(zhǔn)確率。實(shí)驗(yàn)中通過平滑濾波辦法,減少圖像噪聲,很好地解決了采集金屬零件的Data Matrrix碼時,由于碼符號邊沿亮度過亮影響圖像分割問題;然后對圖像進(jìn)行直方圖均衡化,擴(kuò)大對比度的動態(tài)范圍,解決由于光照或攝像頭的原因,造成采集的圖像偏暗,對比度不夠顯著,引起圖像中明暗模糊不清的問題。

由于采集后的圖像有很多無用背景,Data Matrix符號所在區(qū)域只占整個圖像很上的比重。采用遮罩的辦法,用一個固定位置的子緩沖區(qū)限制圖像處理區(qū)域,忽略區(qū)域外的圖像,實(shí)現(xiàn)Data Matrix的符號提取。最后用MIL函數(shù)直接譯碼,并將譯碼結(jié)果放在指定的字符串中,用顯示語句在屏幕上打印結(jié)果。

2.2 Data Matrix符號的膨賬

金屬零件上的Data Matrix碼是氣動打印而成的成點(diǎn)陣式,與標(biāo)準(zhǔn)的Data Matrix符號不完全一樣,其點(diǎn)間空隙大。如對這種碼毫無處理地進(jìn)行識別,則識別率會很低。為了解決這個問題,采用數(shù)學(xué)形態(tài)學(xué)的膨脹算法。為了提高識別準(zhǔn)確度,可以將Data Matrix符號膨脹若干次,縮小數(shù)據(jù)單位之間的空隙。這樣,計(jì)算機(jī)在“尋找”Data Matrix的“L”型尋邊區(qū)時就容易準(zhǔn)確得多。

2.3 偽實(shí)時識別的實(shí)現(xiàn)

由于MIL本身不支持圖像的實(shí)時處理,所以要實(shí)現(xiàn)實(shí)時識別需要用一種叫做比緩沖的辦法實(shí)現(xiàn)偽實(shí)時的圖像處理,CPU每次處理的圖像其實(shí)是攝像頭采集的上一幀圖像。

雙緩沖區(qū)使一邊采集圖像一邊處理圖像成為可能,如圖3所示。攝像頭將圖像采集到圖像緩沖區(qū)1中等待處理,與此同時CPU利用這段時間處理圖像緩沖區(qū)2中(上一幀)的圖像,完畢后兩個緩沖區(qū)的職能交換;CPU處理緩沖區(qū)1中采集的前一時刻的圖像,而此時緩沖區(qū)2中的圖像已被處理完畢,可以接收攝像頭下一幀的采集圖像。如此往復(fù),兩個緩沖區(qū)互換,不間斷地運(yùn)動便可實(shí)現(xiàn)偽實(shí)時處理。在處理環(huán)節(jié)上加Data Matrix識別功能,就能實(shí)現(xiàn)實(shí)時識別Data Matrix。采集圖像和處理圖像正好相差一幀,所以是“偽”實(shí)時的,但是假如計(jì)算機(jī)運(yùn)算速度足夠快,時間延遲的影響便可忽略。
這種辦法的優(yōu)點(diǎn)是既實(shí)現(xiàn)了實(shí)時性,又將采集和處理這兩項(xiàng)進(jìn)程分開,讓CPU和攝像頭分別獨(dú)立并行地處理,充分利用了空閑時間。


上一頁 1 2 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉