亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于OpenCV和Tesseract-OCR的表帶字符識別算法研究

        2022-05-17 20:39:30徐陽
        科海故事博覽·上旬刊 2022年5期
        關(guān)鍵詞:字符識別

        徐陽

        摘 要 隨著我國智能制造的迅速發(fā)展,信息技術(shù)和制造業(yè)的覆蓋面越來越廣泛,本文針對智能穿戴中表帶字符識別,提出了利用OpenCV和Tesseract-OCR(Google開源光學(xué)文字識別引擎)的方法。經(jīng)過一系列圖像預(yù)處理、圖像降噪、定位等操作,再通過Pyteseract模塊的處理,達(dá)到了快速、準(zhǔn)確的文字識別目的。

        關(guān)鍵詞 OpenCV 字符識別 Tesseract-OCR技術(shù)

        中圖分類號:TP3 文獻(xiàn)標(biāo)識碼:A 文章編號:1007-0745(2022)05-0016-03

        1 研究背景及理論基礎(chǔ)

        當(dāng)下智能穿戴在人群中非常流行,專屬化以及個性化的服務(wù)讓人們有著滿滿的時尚感、科技感。人們在追求高品質(zhì)生活的同時,對穿戴樣式及美觀需求更高,作為可更換的配件手表表帶,除了對材質(zhì)要求外,對圖案樣貌以及一些專屬字符等也有需求。在生產(chǎn)車間里,用傳統(tǒng)方式面對字符檢測,耗時、耗力、效率低。所以為了更加簡潔快速地識別表帶字符,剔除劣質(zhì)品,快速找到合格品[1],本文著重研究基于OpenCV和Tesseract-OCR的表帶字符識別算法的實現(xiàn)。

        OpenCV創(chuàng)建之初,是為了提供來源優(yōu)化過的基礎(chǔ)代碼,可以實現(xiàn)許多圖像處理的基礎(chǔ)算法,具有更強(qiáng)的可讀性、移植性且免費,支持C++,Python等語言。二十世紀(jì)八十年代初開發(fā)的一個開源OCR引擎在測試中精準(zhǔn)度很高,經(jīng)過不斷地改進(jìn)后,結(jié)合Python語言逐漸發(fā)展為Pytesseract的模塊。它支持PIL庫中各式各樣的圖片文件,也可以靈活地處理OpenCV圖像,和Numpy數(shù)組相互轉(zhuǎn)化,同時為了提高圖像轉(zhuǎn)對文本的處理能力,可以訓(xùn)練自己的庫[2-3]。

        2 表帶字符識別流程

        本文將采集到的表帶圖像進(jìn)行預(yù)處理,包括圖像灰度化、二值化,再進(jìn)行定位,包括尋找字符輪廓、繪制輪廓等操作,將所需檢測部分進(jìn)行截取,最后OCR字符識別輸出結(jié)果。

        1.獲取圖像。

        2.預(yù)處理。

        3.字符定位。

        4.字符圖像提取。

        5.OCR字符識別。

        3 表帶圖像預(yù)處理

        3.1 圖像顏色空間轉(zhuǎn)換

        在顏色空間轉(zhuǎn)換中,灰度圖像經(jīng)過轉(zhuǎn)換后,彩色圖像中的所有通道都相同,其中CV_8U類型圖像范圍在0到255之間,CV_16U類型圖像范圍在0到6535之間,CV_32F類型圖像范圍在0到1之間。與之相反,彩色圖像轉(zhuǎn)換為灰色圖像,就要使用加權(quán)公式,如下:

        Y=(0.299)R+(0.587)G+(0.114)B

        其中,R代表彩色圖像中紅色部分(Red)的像素值,G代表彩色圖像中綠色部分(Green)的像素值,B則代表彩色圖像中藍(lán)色部分(Blue)的像素值,加權(quán)的最終結(jié)果Y代表灰度的像素值。

        gray=cv.cvtColor(dst,cv.COLOR_BGR2GRAY)

        其中g(shù)ray代表處理之后圖像,COLOR_BGR2GRAY代表BGR格式圖像轉(zhuǎn)化為GRAY格式圖像。以下是得到的灰度圖像(見圖1):

        3.2 高斯濾波降噪

        我們經(jīng)常使用的圖像濾波算法包括:中值濾波、均值濾波、高斯濾波。中值濾波特點是計算模板內(nèi)所有像素的中值,然后用計算出來的值分別代替該像素點的灰度值,這種方法能很好地保護(hù)邊緣信息,但是花費時間較長。均值濾波的特點是計算模板內(nèi)所有像素的平均值,然后用計算出來的值分別代替該像素點的灰度值,對于目標(biāo)圖像只能相對減弱噪聲,無法克服邊緣像素信息丟失部分。結(jié)合前兩種方法不同的優(yōu)缺點,本文采用高斯濾波的方法去除噪聲,因為它對圖像鄰域內(nèi)像素進(jìn)行平滑時,不同位置的鄰域像素有著不同的權(quán)值,能夠更多地保留圖像總體灰度分布特征。一維零均值高斯函數(shù):

        G(x,y)=exp(-)

        其中x2和y2分別表示的是鄰域內(nèi)其他像素與鄰域內(nèi)中心像素的距離,σ是標(biāo)準(zhǔn)差。σ值越大,函數(shù)圖形越寬,圖形越平坦,類似于平均模板。

        σ值越小,分布越集中,圖形寬度越窄。

        dst=cv.GaussianBlur(image,(3,3),0)

        表帶圖像經(jīng)過高斯濾波降噪處理后,如圖2所示:

        4 表帶字符定位

        為了使圖像定位更加準(zhǔn)確,首先需要將圖像的輪廓清晰地表現(xiàn)出來,可以選用閾值分割法或者邊緣檢測的方法。

        4.1 閾值分割法

        簡單的圖像分割方法可以利用閾值來處理,圖像閾值化適用于背景和目標(biāo)占據(jù)不同灰度級范圍的圖像,因為它計算量小,性能穩(wěn)定,成為最廣泛的圖像分割技術(shù)。我們可以給出一個數(shù)組以及一個閾值,然后根據(jù)每個數(shù)組中的值與閾值進(jìn)行比對,不管是高了還是低了分別進(jìn)行相應(yīng)的處理。給定原始圖像f(x,y),T為閾值,則g(x,y)滿足下式:

        使用全局閾值方法進(jìn)行閾值圖像處理:

        ret,binary=cv.threshold(gray,0,255,cv.THRESH_BINARY|cv.THRESH_OTSH)

        其中閾值類型THRESH_BINARY中,可以將超過閾值部分取最大值,反之取0。THRESH_OSTH遍歷所有可能的閾值,然后對每個閾值結(jié)果的兩類像素計算方差σi2。OTSU算法計算方差使下列表達(dá)式最?。?/p>

        σw2≡W1(t).σ12+W2(t).σ22

        其中的W1(t)和W2(t)是根據(jù)兩種類型像素的數(shù)量計算的權(quán)重,σ12和σ22表示兩類像素的方差。圖3是經(jīng)過全局閾值處理后的表帶圖像:

        4.2 邊緣檢測

        這些輪廓是通過將滯后閾值應(yīng)用于像素而形成的,并且采用了兩個閾值。兩個閾值中分為較大的數(shù)值a和較小的數(shù)值b,像素的梯度被計算出后大于a就接受,反之小于b則舍棄,但如果介于a與b之間,那么接受它的方式只有它連接到一個高于閾值的像素時[4-5]。Canny內(nèi)部調(diào)用Sobel算子,不但用了高斯平滑還有微分導(dǎo)數(shù),來計算該圖像灰度函數(shù)的近似梯度[6]。

        xgrad=cv.Sobel(gray,cv_16SC1,1,0)

        ygrad=cv.Sobel(gray,cv_16SC1,0,1)

        得到x和y方向的梯度后,對圖像進(jìn)行Canny(xgr-ad,ygrad,50,150)操作后得到圖像(見圖4):

        4.3 兩種定位方法的比較

        閾值分割是用于強(qiáng)調(diào)圖像中感興趣的部分的方法,經(jīng)過二值化處理后,顯示出該目標(biāo)的灰度值,強(qiáng)調(diào)主體本身具有灰度特性,使用閾值分割來表現(xiàn)。與之相似的,邊緣檢測重點在于利用算法表現(xiàn)邊緣的灰度特性,常用于發(fā)現(xiàn)物體的邊緣,特征更加明顯,方便后續(xù)操作[7-8]。

        5 表帶字符圖像提取

        將表帶中需要提取的部分定位好后,準(zhǔn)備進(jìn)行字符圖像提取,需要尋找輪廓并繪制輪廓:

        cv.findContours(binary,cv.RETR_EXTERNAL,cv.CHAIN_APPROX_SIMPLE)

        cv.drawContours(image,contours,i,(0,0,255),1)

        其中cv.RETR_EXTERNAL表示只檢測最外層的輪廓,cv.CHAIN_APPROX_SIMPLE表示水平、垂直、對角線方向的元素被壓縮,只保留該方向的最終坐標(biāo)位置。表帶字符的矩形外框只需4個點來保存輪廓信息。執(zhí)行結(jié)束后得到的圖像為(見圖5):

        6 表帶字符識別

        6.1 預(yù)處理

        由于使用Tesseract-OCR有字符識別方面的要求,所以在字符背景和像素方面要進(jìn)行一些處理。首先進(jìn)行圖像預(yù)處理,去除干擾線與點,防止識別過程中出現(xiàn)錯誤[9]。

        開操作是先腐蝕后膨脹的過程,它相當(dāng)于一個幾何運算的濾波器[10]。

        open_out=cv.morphologyEx(binary,cv.MORPH_OPEN,kernel)

        作為形態(tài)學(xué)中核心的API函數(shù)morphologyEx(),cv.M ORPH_OPEN可以代表開運算,kernel是其中的內(nèi)核,可以通過cv.getStructuringElement(cv.MORPH_RECT,(3,3))返回具有特定形狀和大小的結(jié)構(gòu)元素。得到開操作后的圖像為(見圖6):

        6.2 Tesseract-OCR字符識別

        Tesseract是一種開源OCR(光學(xué)字符識別),可以識別不同格式的圖像文件并將其轉(zhuǎn)換為文本。首先我們需要下載windows下相應(yīng)的安裝文件,Pytesseract是由Python封裝,支持PIL圖像或者Numpy圖像,使用Image.fromarray(open_out)函數(shù)實現(xiàn)數(shù)組array到image的轉(zhuǎn)換,使用OCR模塊的API的方法:

        text=tess.image_to_string(textImage)

        最后以字符串的形式返回結(jié)果(見圖7):

        7 結(jié)語

        本文利用一些傳統(tǒng)的Opencv圖像處理方式和目前較為流行的OCR方法,主要是使用Python語言,對表帶識別進(jìn)行了初步的研究。對于一些簡單的圖像,處理迅速、識別準(zhǔn)確。但是關(guān)于如何應(yīng)對復(fù)雜場景下的字符識別、能否進(jìn)行算法的擴(kuò)充以達(dá)到提高識別準(zhǔn)確率的效果,還需要更進(jìn)一步的分析研究。

        參考文獻(xiàn):

        [1] 郝輝,哈里木拉提·買買提,喬薩礎(chǔ)拉,等.字符識別研究現(xiàn)狀和發(fā)展趨勢計量分析[J].現(xiàn)代電子技術(shù), 2018,41(22):154.

        [2] 阮秋琦,阮宇智.岡薩雷斯數(shù)字圖像處理(第二版)[M].北京:電子工業(yè)出版,2010.

        [3] Hongkun Tian,Tianhai Wang,Yadong Liu,Xi Qiao,Yanzhou Li.Computer vision technology in agricultural automation[J].Information Processing in Agriculyure,2020,07(01):1-19.

        [4] 孫汝萍.一種改進(jìn)的圖像邊緣提取方法[J].科技通報,2018,34(10):158-161.

        [5] RGV Gioi,G Randall.A Sub-Pixel Edge Detector:an Implementation of the Canny/Devernay Algorithm[J].Image Processing on Line,2017,07(01):347-372.

        [6] 趙芳,周旺輝,陳岳濤,等.改進(jìn)的Canny算子在裂縫檢測中的應(yīng)用[J].電子測量技術(shù),2018,41(20):107-111.

        [7] 曾建華,黃時杰.典型圖像邊緣檢測算子的比較與分析[J].河北師范大學(xué)學(xué)報(自然科學(xué)版),2020,44(04): 295-301.

        [8] 張少偉.基于機(jī)器視覺的邊緣檢測算法研究與應(yīng)用[D].上海:上海交通大學(xué),2013.

        [9] 沈同平,王元茂.基于灰度形態(tài)學(xué)的圖像邊緣特征提取算法研究[J].蘭州紋理學(xué)院學(xué)報,2018,32(02):58-61.

        [10] 劉曉剛,閆紅方,張榮.基于形態(tài)學(xué)多尺度多結(jié)構(gòu)的熔池圖像邊緣檢測[J].熱加工工藝,2019,48(05):216-219.

        猜你喜歡
        字符識別
        一種改進(jìn)深度學(xué)習(xí)網(wǎng)絡(luò)結(jié)構(gòu)的英文字符識別
        基于自動智能分類器的圖書館亂架圖書檢測
        儀表字符識別中的圖像處理算法研究
        基于數(shù)據(jù)挖掘技術(shù)的圖片字符檢測與識別
        基于CUDA和深度置信網(wǎng)絡(luò)的手寫字符識別
        機(jī)加工件點陣字符識別研究
        河南科技(2014年3期)2014-02-27 14:05:36
        亚洲aⅴ无码国精品中文字慕| 伊人久久大香线蕉av色婷婷| 最新中文字幕日韩精品| 蜜桃av噜噜一区二区三区9| 丰满少妇高潮惨叫久久久一| 亚洲第一av导航av尤物| 亚洲另类自拍丝袜第五页| 高清国产亚洲va精品| 日产精品一区二区在线| 丰满人妻中文字幕一区三区| 加勒比hezyo黑人专区| 国产乱码一二三区精品| 日日摸夜夜添狠狠添欧美| 麻豆国产乱人伦精品一区二区 | 青青草成人在线播放视频| 亚洲精品成人片在线观看精品字幕| 日本夜爽爽一区二区三区| 99在线视频精品费观看视| 91桃色在线播放国产| 国产91会所女技师在线观看| 亚洲av成人片在线观看| 亚洲免费人成在线视频观看| 熟女系列丰满熟妇av| 久久老熟女一区二区三区| 久久精品国产亚洲av网| 久久久久人妻精品一区蜜桃| 国内精品人妻无码久久久影院94 | 亚洲日韩av无码一区二区三区人| 久久婷婷成人综合色| 在线av野外国语对白| 久久五月精品中文字幕| 青青草好吊色在线观看| 亚洲色偷偷偷综合网| 亚洲狠狠婷婷综合久久久久图片| 亚洲色图+国产精品| 中文字幕日本女优在线观看| 亚洲日本精品国产一区二区三区| 性色av浪潮av色欲av| ZZIJZZIJ亚洲日本少妇| 精品精品国产一区二区性色av| 青春草在线视频观看|