国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

計(jì)算機(jī)圖像分析算法的探究

2013-04-29 23:48:39孫珊珊
關(guān)鍵詞:譯碼條碼條形碼

摘要:隨著數(shù)字信息的發(fā)展,現(xiàn)在人們對(duì)計(jì)算機(jī)對(duì)圖像的識(shí)別與處理越來越關(guān)注。本文通過分析計(jì)算機(jī)對(duì)EAN_13商品條形碼的解析,來闡述計(jì)算機(jī)對(duì)圖像分析的一般步驟和一些關(guān)鍵算法。

關(guān)鍵詞:EAN_13 圖像處理

1 EAN_13條形碼概述

EAN_13條形碼是一種常用的商品條形碼,目前大多數(shù)商品上標(biāo)有的條形碼就是此種碼制。改條形碼是由一系列條、空及字符組成,調(diào)和空有序排列,蘊(yùn)含著數(shù)字信息。而特定的數(shù)字代表著特定的商品編號(hào)。

EAN-13條形碼由深色的條和白色的空組成。條碼一共有13位,13位的含義分別為前綴、制造廠商代碼、商品代碼和校驗(yàn)碼。其中條碼直接表示12個(gè)數(shù)字,12個(gè)數(shù)字分為兩組,由前面的三個(gè)“條”和“空”代表101開始,之后24個(gè)“條”和“空”表示6個(gè)數(shù)字,中間由五個(gè)“條”和“空”表示中間分隔符,用“01010”來表示,分隔符后面是后面6個(gè)數(shù)字,由24個(gè)“條”和“空”表示,最后是結(jié)束符,由3個(gè)“條”和“空”表示。如果用0表示“空”,用1來表示“條”,則開始符、中間分隔符、結(jié)束符的“條”和“空”都是單位長度,其余的12個(gè)數(shù)字,每個(gè)數(shù)字由4個(gè)“條”和“空”組成,這4個(gè)“條”和“空”共有7個(gè)單位長度,每個(gè)條和空的寬度在1~4之間,分為2個(gè)條和2個(gè)空[1]。在編碼的時(shí)候,EAN-13商品條碼的起始符、終止符均為 “101”,中間分隔符為“01010”。其他的數(shù)據(jù)字符的編碼的二進(jìn)制表示有三個(gè)子集,如表1,而括號(hào)中表示1和0的個(gè)數(shù):

EAN-13商品條碼的第2-7為數(shù)字,從遵守A、B子集的排列,第8-13位遵循C子集的第一位條形碼隱藏在前6位數(shù)字中,取決于前6位數(shù)字在AB子集的順序。而右側(cè)數(shù)據(jù)符及校驗(yàn)符的編碼均用C子集表示,EAN-13商品條碼中第13位是校驗(yàn)碼2 條形碼圖像解析探究

了解EAN_13商品條形碼的含義,就為條形碼的圖像解析奠定了基礎(chǔ)。計(jì)算機(jī)解析條形碼圖像主要是識(shí)別出條和空的寬度,然后對(duì)其進(jìn)行譯碼編碼。而對(duì)圖形的分析,主要是可以分為二值化、濾波、邊緣檢測、圖像分割、圖像提取、譯碼幾部分。下面,分別概括各種算法。

2.1 二值化 圖片在計(jì)算機(jī)中存儲(chǔ)是按照RGB三元素存儲(chǔ)的。由于計(jì)算機(jī)采集到的圖像受包裝、光照等各方面影響,所以處理圖片的信息非常困難。而且條碼的研究,只需要條和空的寬度即可,所以不需要其他的顏色信息,所以講顏色多彩的圖像,進(jìn)行二值化處理,讓計(jì)算機(jī)存儲(chǔ)的數(shù)據(jù),只保留純黑和純白兩種顏色,這就叫做二值化處理。二值化處理的方式是,先計(jì)算圖像的灰度值Y=0.299R+0.587G

+0.114B。然后去一個(gè)中間值X,當(dāng)改點(diǎn)像素點(diǎn)大于X,則將其像素值設(shè)為255,小于改值,則為0。此時(shí),可以設(shè)置一個(gè)圖像的地圖數(shù)組,將黑色存為1,白色存為0。

2.2 濾波 因?yàn)閳D像受到光照、角度等各方面的影響,所以二值化后的圖像存在一定的毛躁點(diǎn)。中值濾波可以有效地去掉毛躁點(diǎn),讓誤差縮減到最低。由于條碼的特殊性,因?yàn)樗膱D像是豎直方向上一致,所以可以采取取每一列五個(gè)點(diǎn),將五個(gè)點(diǎn)排序,來得到中間數(shù)值的為改點(diǎn)的取值。本算法可以基于上面的地圖數(shù)組來計(jì)算,會(huì)非常方便。

2.3 邊緣檢測 邊緣檢測是計(jì)算出改點(diǎn)是否為圖像的邊緣。這個(gè)算法為后面的圖像分割提取做了準(zhǔn)備。按照條碼圖像的特殊性,我們可以取一個(gè)2*5的數(shù)組的圖像,即5行2列的圖像,如果這兩列的圖像中第一列和下一列至少存在4行元素發(fā)生像素改變,則證明改點(diǎn)為邊緣點(diǎn)。

2.4 圖像提出 因?yàn)榕臄z到的圖像存在著含有其他圖像的邊緣,或者是條碼圖像位置不居中等各種情況,要順利地譯出條碼就需要將條碼圖像從原圖像中提取出來。對(duì)條碼圖像的提取,主要是上下分割和左右分割。

上下分割比較簡單,可以通過邊緣檢測,從圖像的中間位置開始,分別向上和向下掃描,假如檢測到圖像的邊緣小于59,則認(rèn)為其不是條碼圖像,記錄圖像的上端和下端。

左右分割,根據(jù)顯示中商品的條碼位置,經(jīng)過反復(fù)試驗(yàn),我們可以發(fā)現(xiàn),無論圖像中拍攝其他邊緣還是沒有拍攝,當(dāng)圖像邊緣由0變?yōu)?時(shí),恰好是條碼邊緣的開始。以此特征來,我們可以得出條碼左右分割的方法:①從圖像中部開始,從左向右掃描圖像,記錄第一個(gè)從0到1轉(zhuǎn)變的邊緣位置,本步也要通過邊緣檢測,以免誤用于毛躁點(diǎn)。②圖像向上和向下掃描,記錄上下分割后,圖像全部從0到1轉(zhuǎn)變的邊緣位置。③計(jì)算獲得邊緣的傾斜多,如果大于10°,則影響圖像效果,建議重新采集圖像;如果傾斜度小于10°,則圖像可用。④對(duì)所有邊緣進(jìn)行微調(diào),將偏差過于大的圖像邊緣進(jìn)行處理,讓其與其他邊緣的差別變小。⑤以此方法,查找下一個(gè)由條變空的邊緣,然后將其位置值與前面的邊緣值之差作為第一個(gè)寬度值,記錄到數(shù)組中。⑥排序全部第一寬度值得到的數(shù)組,取得其中間值。⑦判斷此中間值與排序之中的上下兩個(gè)值的差別如果大于2,則獲取圖像失??;如果小于等于1,則圖像獲取正確,將此中間值保存在最終的寬度數(shù)組中,作為第一個(gè)寬度以備譯碼使用。⑧按上述步驟,將全部59個(gè)條和空的寬度全部找出。則最后的一點(diǎn)的位置,將是圖像的右邊緣,而經(jīng)過查找右邊緣的過程,圖像的條和空的寬度也記錄在了數(shù)組中。

3 譯碼

在條碼圖像提取出來之后,就可以進(jìn)行譯碼了。譯碼的理論依據(jù)就是條形碼的含義。因?yàn)闂l形碼包含著3+6*7+5+6*7+3=95個(gè)單位長度,所以我們可以把上面圖像提取的時(shí)候計(jì)算的全部長度相加,然后計(jì)算出單位長度。因?yàn)閱挝幻恳徊蕉伎赡艽嬖谡`差,下面的譯碼也不能絕對(duì)的相等。計(jì)算出單位長度之后,主要譯碼步驟按照下面:①取出前三個(gè)寬度,看其長度是在0.6-1.4個(gè)單位長度之間,如果正確,則為開始標(biāo)志,繼續(xù)譯碼;若為錯(cuò)誤,說明圖像采集錯(cuò)誤。②循環(huán)取六次寬度,每次取出4個(gè)寬度。比較寬度與單位寬度的比值取整,得到一個(gè)四位的編碼,在A子集和B子集中尋找此四位編碼對(duì)應(yīng)的數(shù)字信息,并同時(shí)記錄這六個(gè)數(shù)字信息所在的A子集或者B子集。③越過5個(gè)寬度(中間分隔符),取后面6次的連續(xù)的4個(gè)寬度,在C子集中查找相應(yīng)的數(shù)值信息。④按照前6個(gè)數(shù)字得到的AB子集的順序,查找其前置碼的數(shù)值。⑤驗(yàn)證譯碼結(jié)果,將前12位數(shù)字的奇數(shù)位相加,偶數(shù)位相加乘以3,兩個(gè)結(jié)果之和相加后,個(gè)位數(shù)減去10得到的模的個(gè)位即是校驗(yàn)結(jié)果,與第13位進(jìn)行比較,如果正確,則譯碼成功。

4 結(jié)論

本文主要描述了計(jì)算機(jī)下處理?xiàng)l形碼圖像的圖像分析算法。算法的創(chuàng)新點(diǎn)主要是圖像的左右分割步驟和圖像譯碼過程。對(duì)于計(jì)算機(jī)處理其他的圖形奠定了基礎(chǔ)。

參考文獻(xiàn):

[1]孫江濤,孫珊珊,趙健飛.基于圖像分析的攝像頭識(shí)別條形碼的算法[J].華北科技學(xué)院學(xué)報(bào),2012(3).

[2]龔亞歡,王超,胡晨.EAN-13碼的圖像識(shí)別系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2009(22):106-109.

[3]康牧.圖像處理中幾個(gè)關(guān)鍵算法的研究[D].西安電子科技大學(xué),2009.

基金項(xiàng)目:中央高校基本科研業(yè)務(wù)費(fèi)資助(DX2013B01)。

猜你喜歡
譯碼條碼條形碼
中國條碼技術(shù)與應(yīng)用協(xié)會(huì)
條碼微站
創(chuàng)意條形碼
基于校正搜索寬度的極化碼譯碼算法研究
從條形碼到二維碼
從條形碼到二維碼
條形碼大變身
從霍爾的編碼譯碼理論看彈幕的譯碼
新聞傳播(2016年3期)2016-07-12 12:55:27
LDPC 碼改進(jìn)高速譯碼算法
遙測遙控(2015年2期)2015-04-23 08:15:19
基于固定條碼與電子標(biāo)簽比對(duì)設(shè)備的設(shè)計(jì)
城步| 资中县| 西吉县| 陈巴尔虎旗| 民和| 宕昌县| 南川市| 博爱县| 甘孜| 湘潭县| 民和| 奈曼旗| 永定县| 合作市| 洮南市| 青田县| 洛宁县| 大竹县| 图们市| 舞钢市| 萝北县| 香河县| 鲁甸县| 潢川县| 平舆县| 民县| 孝感市| 确山县| 晋州市| 德州市| 崇文区| 安陆市| 连江县| 巩留县| 缙云县| 建水县| 淮南市| 琼海市| 渭南市| 旬阳县| 九龙城区|