?

圖像處理耦合模板定位的答題卡識別研究與應用

2016-03-25 17:29郝平?k
計算技術與自動化 2015年4期
關鍵詞:人機交互圖像處理

郝平?k

摘要:當前大多數機器閱卷中采用的識別算法基于模糊識別,即針對某類型的試卷,更換多種試卷或者同種試卷不同采集方式下很難準確對應,具有一定的局限性。對此,本文提出一個基于OpenCV耦合模板定位的答題卡識別機制。首先基于人機交互劃定學號區與客觀題區;然后基于圖像處理算法定位得到填涂位置,評價填涂結果,完成答題卡識別。本系統模板制作模塊由C#編程實現,答題卡識別由C++和OpenCV實現。最后測試本文機制性能,結果表明:與基于模糊識別的普通方法相比,本文機制具有更好的定位效果和識別準確度。

關鍵詞:模板定位;OpenCV;人機交互;模糊識別;圖像處理

中圖分類號:TP391文獻標識碼:A

1引言

答題卡識別系統是針對客觀題答案進行檢測識別的應用性軟硬件的綜合,目前使用的答題卡識別系統具有閱卷速度快、效率高、準確率高等優點,但也存在一定的局限性,必須采用光電閱卷機和專用機讀答題卡,成本高昂,普通學校難以承受;且一旦確定規格就難以修改[1-3]。而利用價格相對低廉的數碼相機或復印機作為圖像數據輸入設備采集答題卡圖像,再經過軟件處理、識別將獲得的考試信息存入數據庫,同樣可以實現自動閱卷的目的,并可以降低設備成本[4-6]。而且軟件實現方式方便修改答題卡結構以適應不同需求易于普及推廣。

基于軟件處理的答題卡識別主要應用圖像處理與識別算法,總體分為兩種模式:第一種是模糊識別,以答題卡圖像中某特定目標為參照進行識別,然后根據位置信息定位客觀題區域,然后進行識別,實現答題卡信息讀取。第二種是先模板制作,然后根據模板定位客觀題位置,進行識別,實現答題卡信息讀取。第一種方式,由于依靠特定目標,在更換試卷類型同樣存在識別不準的問題。第二種方式,在前期基于人機交互,用軟件制作出模板,可對應于試卷類型變更。本文研究的機制就是采用第二種方式,先基于C#編程實現模板制作軟件的開發,得到模板信息即客觀題位置信息;然后用圖像處理的方式對客觀題進行識別,完成答題卡識別。

計算技術與自動化2015年12月

第34卷第4期郝平:圖像處理耦合模板定位的答題卡識別研究與應用

為了解決當前光電閱卷機和專用機讀答題卡成本高昂的問題和模糊識別通用性差的問題,本文提出了一個基于圖像處理耦合模板定位的答題卡識別系統,實現對考生學號與客觀題答案的識別。首先基于模板定位軟件得到考生學號區域和答題卡答案區域的圖像坐標;然后開始進入批量閱卷階段,基于圖像處理識別學號和答案,再最后在界面上顯示,并上傳至服務器數據庫。最后實驗證明本文識別機制的性能。

2答題卡識別的整體機制

程序控制掃描儀采集答題卡圖像,供模板制作和閱卷識別,具體掃描儀端采集控制程序不是本文研究的重點,本文從圖像采集完成開始研究。答題卡上待識別的內容主要是考生學號和客觀題答案,如圖1所示。模板的主要信息是:劃定區域的左上角圖像坐標和長寬、學號或者客觀題、單選或多選、區域幾行幾列。這些信息在圖像載入C#模板制作軟件后,用鼠標基于人機交互的方式劃定和輸入。

模板制作完成并保存后,基于模板信息對后面的試卷開始批量閱卷,主要經過模板定位、填涂位置定位、識別、顯示結果,整體機制的框架如圖2所示。

3基于模板制作的區域定位

采用模糊識別定位某個特定目標然后根據位置信息推算客觀題或者學號區位置,這樣方法在變更試卷類型時往往準確率嚴重下降。本文先用人機交互的方式,用軟件制作出模板,該模板包含的信息強大,可以有學號和客觀題的區域坐標、學號的位數、客觀題是多選或者單選,客觀題的選項數和個數等等(如圖3所示)。模板制作,為后期圖像準確識別做好了數據準備,只要在前期花很少的制作時間,而且制作軟件界面友好易操作,每次不同類型的試卷批量閱卷前,只需制作一次即可用于后面大量的試卷閱卷。

經過本文的模板制作軟件處理,得到目模板信息,如圖4所示。本模板制作軟件基于.NET平臺C#語言開發實現,秉承了界面友好和開發效率高的優點,成功運用在了本系統中,為后期圖像處理掃清定位障礙。

模板制作部分關鍵代碼:

var jsonModel = new JsonModel();//初始化模板

jsonModel.Items = new List();//初始化特征列表

jsonModel.ImageBase64String=Convert.ToBase64String(image);//模板格式轉換

jsonModel.PicBoxSize=string.Format("{0},{1}",picBoxSize.Width, picBoxSize.Height); //圖像格式轉換

jsonModel.RealImageSize=string.Format("{0},{1}",realImageSize.Width, realImageSize.Height);//圖像格式歸一化

double ratio = (double)realImageSize.Width / (double)picBoxSize.Width;

//遍歷模板

list.ForEach(x =>jsonModel.Items.Add(new Item {

Id = x.Id,

Name = x.Name,//模板對象名

RectPointType = x.RectPointType,//模板點類型

RectType = x.RectType.ToString(),

DeawType = x.DeawType,

Direction = x.Direction,

ColCount = x.ColCount,//數據列

RowCount = x.RowCount,// 數據行

Table = x.Table,

Rect = string.Format("{0},{1},{2},{3}", x.SelectRectangle.X, x.SelectRectangle.Y,

x.SelectRectangle.Width, x.SelectRectangle.Height),

RealRect = string.Format("{0},{1},{2},{3}", Convert.ToInt32(x.SelectRectangle.X * ratio), Convert.ToInt32(x.SelectRectangle.Y * ratio),Convert.ToInt32(x.SelectRectangle.Width * ratio), Convert.ToInt32(x.SelectRectangle.Height * ratio))}));

var json = JsonConvert.SerializeObject(jsonModel);

File.WriteAllText(fileName, json);//文件寫入

4基于OpenCV的答題卡識別

通過模板數據易定位學號和客觀題區域,本節以學號為例,展開研究,得到的學號區域圖像如圖5所示。由于試卷背景為白色,填涂顏色為黑色,具有很強的對比度,本機制利用自適應閾值分割[7-8]和圖像取反[9],得出學號區域二值圖,如圖6所示。然后用形態學開運算[12]進一步去除噪聲,最后基于OpenCV[10-11]匹配函數,定位出填涂目標。

本文使用的匹配函數[12]主要基于面積、周長、長軸短軸比、長軸短軸差,由于檢測矩形目標,因此目標的面積、周長、長軸短軸比、長軸短軸差具有區別性,經過調試,可計算出經驗值范圍,從而判斷目標是否是填涂目標。

L=∑s[n](1)

CDB=aixs/aiys(2)

CDC=aixs-aiys(3)

其中,所示L為周長,S[n]為目標輪廓邊緣像素點組成的數組。如式2所示CDB為目標輪廓長軸與短軸的比例,aixs為長軸,aiys為短軸。如式3所示CDC為目標輪廓長軸與短軸的差值,aixs為長軸,aiys為短軸。

經過本文的閾值分割、形態學處理、匹配函數相結合的方法,得到學號填涂目標定位結果,如圖7所示。

答題卡識別部分關鍵代碼:

IplImage* gray = cvCreateImage( cvGetSize(ipl), 8, 1 ); //圖像初始化

cvCvtColor( ipl, gray, CV_BGR2GRAY );//顏色空間轉換

IplImage* erzhi = cvCreateImage(cvSize(width,height), 8 , 1);

cvThreshold( gray, erzhi,179,255,CV_THRESH_BINARY);//閾值分割

IplImage* qufan=cvCreateImage(cvSize(width,height), 8 , 1);

cvNot(erzhi,qufan);

IplConvKernel*element=cvCreateStructuringElementEx(5,5,1,1,CV_SHAPE_RECT,0);//構建形態學結構分子

cvMorphologyEx(qufan,qufan,NULL,element, CV_MOP_OPEN, 1); //形態學處理

tmparea=fabs(cvContourArea(contour1)); //面積計算

zhouchang=fabs(cvArcLength(contour1)); //周長計算

End_Rage2D = cvMinAreaRect2(contour1);//最小內接矩形

CDB=End_Rage2D.size.height/End_Rage2D.size.width;

CDC= End_Rage2D.size.height-End_Rage2D.size.width;

5實驗與討論

本文機制基于模板制作得到學號與客觀題區域,圖像處理采用閾值分割與形態學處理得到目標分明的二值圖,再通過匹配得到目標的精確坐標,輪廓特征有面積、周長、長寬比、長寬差,實現答題卡信息讀取。經過實驗驗證,試卷類型變更和試卷采集位置變換的情況下,傳統定位方式是基于模糊識別定位算法,存在定位不準確和無法識別答題卡信息的問題,如圖9所示。

本文定位機制基于C#模板制作軟件得到準確的學號和客觀題位置坐標,然后用圖像處理OpenCV函數,準確定位目標位置,并精確完成答題卡識別,如圖8所示。

為了量化不同算法的識別精確度,本文采用對相同一組試卷進行檢測,先用傳統算法識別;然后本文算法識別,分別記錄所用時間和識別結果,最后進行人工校驗。結果見表1。從表中可知,本文算法的識別精度比傳統機制要高,所用時間也少于傳統機制;而傳統機制還存在較高的漏檢。

6結論

為了解決當前模糊識別通用性差的問題,本文提出了一個基于圖像處理耦合模板定位的答題卡識別系統,采用C++、C#主流語言實現。首先基于模板定位軟件得到考生學號區域和答題卡答案區域的圖像坐標;然后開始進入批量閱卷階段,基于圖像處理識別學號和答案。

結果表明:與普通識別卡識別定位算法相比,本文機制具有更好的識別精度和更高的效率。

參考文獻

[1]楊青燕. 基于灰度圖像的答題卡識別技術[J].山東科技大學學報:自然科學版,2009,13(17):43-46.

[2]KAUL T,GRIEBEL R,KAUFMANN E. Transcription as a Tool for Increasing Metalinguistic Awareness in Learners of German Sign Language as a Second Language[J]. Teaching and Learning Signed,2014,18(11):383-387.

[3]RUSHTON VE,HIRSCHMANN PN,BEARN DR. The effectiveness of undergraduate teaching of the identification of radiographic film faults[J]. Dentomaxillofacial Radiology, 2014, 34(6): 225-232.

[4]HSIUNG CM,LUO LF,CHUNG HC. Early identification of ineffective cooperative learning teams[J]. Journal of Computer Assisted Learning,2014, 30(6):534-545.

[5]李翀倫. 復雜背景下紅外圖像目標的快速定位[J]. 海軍工程大學學報,2013, 33(10):2886-2890.

[6]呂鳴. 提高自學考試答題卡識別準確率的探討及實踐[J]. 中國考試,2011, 23(2):371-376.

[7]RAJKUMAR TMP,LATTE MV. Adaptive Thresholding Based Medical Image Compression Technique Using Haar Wavelet Based Listless SPECK Encoder and Artificial Neural Network[J]. Journal of Medical Imaging and Health Informatics,2015, 5(2):223-234.

[8]SHARMA P,KHAN K,AHMAD K. Image denoising using local contrast and adaptive mean in wavelet transform domain[J]. International Journal of Wavelets, Multiresolution and Information Processing,2014, 12(06):1450038-1~1450038-15.

[9]SHARMA Y,MEGHRAJANI YK. Extraction of Grayscale Brain Tumor in Magnetic Resonance Image[J].International Journal of Advanced Research in Computer and Communication Engineering, 2014, 3(11): 8542-8545.

[10]葉昕, 秦其明, 王俊. 結合數學形態學與多角度模板匹配的高分辨率遙感圖像救災帳篷識別[J]. 測繪通報, 2015, 5(1): 86-89.

[11]CHOU LD,CHEN CC,KUI CK. Implementation of Face Detection Using OpenCV for Internet Dressing Room[J]. Advanced Technologies, 2014, 260(23): 587-592.

[12]張亞榮, 裴志利. OpenCV耦合三目視覺的標準件目標定位研究與應用[J].組合機床與自動化加工技術, 2015, 2(1): 35-38.

猜你喜歡
人機交互圖像處理
“課程思政”視域下職業學?!秷D像處理》課程教學改革實踐
構建《Photoshop圖像處理》課程思政實踐教學路徑的探索
基于圖像處理與卷積神經網絡的零件識別
基于新一代信息技術的Photoshop圖像處理課程開發與建設
某型柴油機虛擬維修系統研究
人機交互課程創新實驗
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合