劉海敬,毛晚堆,劉永軍
(1.石家莊鐵道大學(xué),河北 石家莊 050043;2.石家莊經(jīng)濟學(xué)院,河北 石家莊 050031)
圖像識別技術(shù)已日益成熟,以圖像處理為依托的網(wǎng)上閱卷也逐步為用戶所接受??陀^題網(wǎng)上閱卷是由計算機自動完成對學(xué)生客觀題答卷評閱的技術(shù)。本文主要講述二值圖像直方圖投影分組方法[1]在網(wǎng)上閱卷系統(tǒng)中的應(yīng)用。該系統(tǒng)要能對試卷上的選擇題答案自動評分,客觀題答題由投影分組函數(shù)得到。
網(wǎng)上閱卷系統(tǒng)是將紙質(zhì)試卷的評閱轉(zhuǎn)為對試卷圖像評閱的閱卷系統(tǒng)。其主要涉及圖像采集及圖像處理方面[2]。圖像采集采用高速掃描儀實現(xiàn),圖像處理的目標是為了更準確的對目標圖像進行識別,本文主要討論圖像直方圖投影分組方法[1]。系統(tǒng)工作流程[3]如圖1所示,首先制作模版試卷;其次通過過高速掃描儀掃描考生試卷成電子圖像;而后對試卷進行預(yù)處理,得到答題區(qū)域;繼而閱卷系統(tǒng)自動識別信息,實現(xiàn)自動閱卷;最后記錄數(shù)據(jù)及結(jié)果并將其存入數(shù)據(jù)庫。
圖1 系統(tǒng)流程圖
此模塊的主要功能是將模板試卷的各部分信息,例如,定位點、考號、客觀題、主觀題等區(qū)域的信息識別并記錄到文件中[1]。如圖2所示,模板試卷信息識別流程如下:
圖2 模板試卷信息識別流程
(1)讀入試卷圖像并對試卷圖像進行去噪、增強、傾斜矯正、二值化等預(yù)處理。
(2)識別試卷圖像左上、右上兩個位置的定位點坐標并記錄。
(3)識別考號信息。以左上角定位點為基準,在軸、軸分別投影并比較閾值的方式識別出考號區(qū)域的邊框坐標,以邊框坐標為第二次搜索范圍,在軸、軸分別投影并比較閾值的方式識別出每位考號的涂卡區(qū)域坐標,之后在每個考號區(qū)域內(nèi)在X軸方向上投影獲得數(shù)字坐標信息并記錄。
(4)識別客觀題信息。以左上角定位點為基準,在軸、軸分別投影并比較閾值的方式識別客觀題區(qū)域的邊框坐標,以邊框坐標為第二次搜索范圍,在其區(qū)域內(nèi)在軸、軸分別投影識別出各選項的橫豎坐標信息并記錄。
(5)識別主觀題信息。以左上角定位點為基準,在軸、軸分別投影獲取主觀題邊框線的坐標,由此獲得主觀題答題區(qū)坐標信息并將主觀題答題區(qū)域坐標信息寫入已知文件。
給定一條直線,用垂直該直線的一簇等間距直線將一幅二值圖像分割成若干條,每一條內(nèi)像素值為1的像素個數(shù)為該二值圖像在給定直線上的投影[4]。定義給定直線為水平或垂直直線時,二值圖像列或行上像素值為1的像素數(shù)量之和為該圖像的水平或垂直投影[4]。模板試卷客觀題標準答案識別的原理[5]:首先利用圖像投影算法識別出客觀題區(qū)域,其次通過圖像投影分組算法確定每個題目的涂卡區(qū)域,最后將模板試卷圖像得到的投影值與設(shè)置的閾值比較,分析其投影特征并識別選項。
二值圖像投影是在垂直給定方向的二值圖像像素值的累加,描述像素點在所選方向上的分布情況[6]。
本系統(tǒng)通過分析試卷圖像投影中的峰值特征來進行試卷圖像信息的識別。在模板試卷中,通過分析圖像投影后的特點發(fā)現(xiàn):圖像投影后,是包含投影值和坐標值的點序列,而所需的有效組,是由有效點組成的。
需要設(shè)置的參數(shù)有:投影值的有效區(qū)間(投影值在某一給定區(qū)間內(nèi)的點為有效點)、組寬度(大于某一個給定的組寬度才為有效組)以及組內(nèi)容忍度(組內(nèi)兩個有效點間所夾的無效點個數(shù))。
圖像的投影分組算法的原理[1]:依次掃描投影序列的各點,根據(jù)參數(shù)判斷掃描得到的連續(xù)有效點組成的塊,是否是所需組,如果是則記錄該有效組的首尾坐標,繼續(xù)掃描直至所有投影序列結(jié)束,否則直接掃描下一個投影序列。以下是圖像投影分組的算法:
算法1(投影分組算法)
輸入:在給定方向上的投影序列:序列長度為L,rejects={reject0(pixle0,co0),reject1,…,rejectL};
輸出:投影的分組總數(shù) N 以及分組序列g(shù)roups={group0(begin0,end0),group1,…,groupN};
步驟如下:
(1)將當(dāng)前輸入作為第一個投影序列reject0,首末坐標分別記為beginCo=0,endCo=0,i=0;
(2)如果所掃描的投影序列為空,則轉(zhuǎn)到第(11)步;
(3)如果當(dāng)前投影值pixle介于最低閾值Tmin和最高閾值Tmax之間,則該點為有效點轉(zhuǎn)到第(7)步,否則該點為無效點轉(zhuǎn)到第(4)步;
(4)如果末坐標endCo=0,或者當(dāng)前坐標coi與末坐標endCo的差小于組內(nèi)容忍度,則取下一個投影,令i=i+1轉(zhuǎn)至第(2)步,否則轉(zhuǎn)至第(5)步;
(5)如果末坐標endCo與首坐標beginCo的差值≥組寬,則其為有效組,轉(zhuǎn)至第(6)步,否則令beginCo=0,
enendCo=0,且取下一個投影,令i=i+1轉(zhuǎn)到第(2)步;
(6)將得到的組坐標(beginCo,endCo)寫入分組數(shù)組begingroups中,然后將首末坐標值初始化為0,取下一個投影 且令i=i+1轉(zhuǎn)到第(2)步;
(7)如果首坐標和末坐標值為0,即beginCo=0且endCo=0,則表明此為新組的開始,則令末坐標endCo=當(dāng)前坐標coi,取下一個投影,且令i=i+1轉(zhuǎn)到第(2)步,否則轉(zhuǎn)到第(8)步;
(8)如果當(dāng)前坐標coi與末坐標endCo之差小于組內(nèi)容忍度,則令endCo=coi并取下一個投影,且令i=i+1轉(zhuǎn)到第(2)步,否則表明當(dāng)前坐標已經(jīng)在組內(nèi),轉(zhuǎn)至第(9)步;
(9)如果endCo與beginCo的差大于組寬,則其是一個有效組,轉(zhuǎn)至第(10)步,否則表明該組無效,令末坐標endCo=當(dāng)前坐標coi,取下一個投影且令i=i+1轉(zhuǎn)到第(2)步;
(10)將該組首末坐標寫入分組序列g(shù)roups中,且令beginCo=coi,endCo=coi,取下一個投影且令i=i+1轉(zhuǎn)到第(2)步;
(11)如果endCo與beginCo的差大于組寬,則其是有效組將組坐標記入分組數(shù)組groups中。
模板試卷客觀題選項識別的算法[1]如下:
算法2(模板試卷客觀題選項識別算法)
輸入:模板試卷圖像S;
輸出:模板試卷中客觀題所涂選項;
算法步驟如下:
(1)獲取客觀題數(shù)目N和各客觀題選項的坐標信息序列
(2)選取首個坐標信息序列objectCo0,i=0;
(3)如果i>N-1,則客觀題所涂選項識別結(jié)束,退出此算法,否則轉(zhuǎn)至第(4)步;
(4)根據(jù)objectCo[i]值設(shè)定所涂客觀題選項的大致識別區(qū)域range;
(5)在識別區(qū)域range內(nèi),用投影分組算法查找所涂區(qū)域的個數(shù)Num及各填涂區(qū)域坐標序列
(6)將填涂序列black各坐標序列分別與objectCo[i]中各選項坐標比較,判斷坐標位置并得到選項結(jié)果;
(7)將得到的選項結(jié)果轉(zhuǎn)成字符串連接成答案,取下一道客觀題i=i+1,轉(zhuǎn)到第(3)步;
(8)將所有的字符串連接即為整個題組的答案。
本程序通過delphi編程實現(xiàn),部分主要程序代碼如下所示:
通過編程實現(xiàn)得到如圖3所示的結(jié)果。具體參數(shù)設(shè)置如圖3右側(cè)部分所示。通過使用100份考卷對該系統(tǒng)進行測試,且測試時均采用標準的鉛筆填涂,結(jié)果的識別準確率為99%(其中只有一份考卷發(fā)生了一道題的誤判,由于考生涂改過程留下的痕跡與新選答案接近)。
圖3 實驗結(jié)果
通過實驗結(jié)果可以看出,直方圖投影分組算法可以得到客觀題答題區(qū)域及所選答案。
本文以網(wǎng)上閱卷系統(tǒng)為背景,分析了基于直方圖的投影分組算法。實驗結(jié)果表明,采用上述直方圖投影分組方法,能夠真實客觀地反應(yīng)試卷圖像的客觀題信息,且為進一步解決考生試卷客觀題自動閱卷提供了方法。
[1]宋錚錚.自動化掃描閱卷系統(tǒng)的研究和實現(xiàn):[D].保定:華北電力大學(xué)計算機應(yīng)用與技術(shù),2008.
[2]肖利峰,楊永躍.圖像處理系統(tǒng)在網(wǎng)上閱卷中的作用[J].Computer Knowledge and Technology電腦知識與技術(shù),2008.
[3]王海.基于 Web Services的網(wǎng)上閱卷系統(tǒng)的設(shè)計和實現(xiàn):[D].上海:華東師范大學(xué),2006.
[4]賈云得.機器視覺[M].科學(xué)出版社,2000,31-32.
[5]沈庭芝,方子文.數(shù)字圖像處理及模式識別[M].北京理工大學(xué)出版社,1998.
[6]馬頌德,張正友.計算機視覺:計算理論與算法基礎(chǔ)[M].北京:科學(xué)出版社,1998.