




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、××大學(xué)2013-2014學(xué)年第二學(xué)期課程考核圖像處理綜合設(shè)計(jì)報(bào)告基于數(shù)字圖像處理技術(shù)的答題卡識(shí)別方法學(xué) 號(hào) 姓 名 班 級(jí) 日 期 本人鄭重聲明:本人認(rèn)真、獨(dú)立完成了查找資料、編寫程序、撰寫報(bào)告等考核任務(wù)。簽字:日期:摘 要背景:隨著科技的發(fā)展,電子與計(jì)算機(jī)技術(shù)的進(jìn)步,答題卡的出現(xiàn)大大減輕教學(xué)工作者們批改試卷的工作量。答題卡是光標(biāo)閱讀機(jī)輸入信息的載體,是配套光標(biāo)閱讀機(jī)的各種信息錄入表格的總稱。 答題卡將用戶需要的信息轉(zhuǎn)化為可選擇的選項(xiàng),供用戶涂寫。OMR是用光學(xué)掃描的方法來識(shí)別按一定格式印刷或書寫的標(biāo)記,并將其轉(zhuǎn)換為計(jì)算機(jī)能接受的電信號(hào)的設(shè)備,并根據(jù)信息點(diǎn)的涂與未涂和格式
2、文件設(shè)置將信息還原。因此,如何將答題卡填涂的黑色區(qū)域識(shí)別出來并使用計(jì)算機(jī)進(jìn)行處理是極為關(guān)鍵的。本論文探索了有效識(shí)別答題卡的方法,以matlab為工具,基于數(shù)字圖像處理技術(shù)對(duì)答題卡填涂區(qū)域進(jìn)行了識(shí)別,并對(duì)識(shí)別的結(jié)果進(jìn)行了處理,得到了結(jié)果。本論文利用Hough變換的直線檢測(cè)技術(shù)檢測(cè)圖像的傾斜度,判斷圖像是否傾斜,對(duì)存在傾斜的圖像進(jìn)行旋轉(zhuǎn)校正。最終實(shí)現(xiàn)答題卡答案的定位和檢測(cè)。論文使用像素統(tǒng)計(jì)方法進(jìn)行識(shí)別,利用黑白顏色灰度值的巨大差異對(duì)二值圖像的灰度值進(jìn)行累加并進(jìn)行閾值判定,識(shí)別錯(cuò)誤效率極低,能夠準(zhǔn)確的識(shí)別答題卡的涂卡標(biāo)記。關(guān)鍵詞:Hough變換,答題卡識(shí)別,matlab,一、設(shè)計(jì)任務(wù)、目的和要求本設(shè)
3、計(jì)以matlab為工具利用數(shù)字圖像處理技術(shù)對(duì)答題卡進(jìn)行了識(shí)別,并對(duì)識(shí)別結(jié)果進(jìn)行了處理。注意到答題卡在采集圖像的過程中由于各種原因可能會(huì)產(chǎn)生圖像傾斜、水平或垂直錯(cuò)位,要進(jìn)行正確識(shí)別首先必須對(duì)其進(jìn)行校正,再依據(jù)像素檢索技術(shù)進(jìn)行識(shí)別。二、總體方案設(shè)計(jì)說明系統(tǒng)運(yùn)行環(huán)境,編程軟件平臺(tái),編碼算法原理,算法流程圖設(shè)計(jì)本系統(tǒng)運(yùn)行在當(dāng)今主流的Windows7系統(tǒng),使用較新的MATLAB2012b進(jìn)行設(shè)計(jì)。在進(jìn)行旋轉(zhuǎn)校正時(shí),先使用Hough變換檢測(cè)出答題卡邊緣直線,調(diào)用lines函數(shù)的參數(shù)得到傾斜角度并進(jìn)行旋轉(zhuǎn)變換從而消除答題卡傾斜狀態(tài)。將掃描部分分為7個(gè)掃描區(qū)域,分別使用像素檢索技術(shù),對(duì)各個(gè)檢索區(qū)域內(nèi)的灰度值進(jìn)
4、行累加,并對(duì)累加和進(jìn)行閾值判定,從而得出檢索區(qū)域顏色,完成判定。最后再與標(biāo)準(zhǔn)答案進(jìn)行比對(duì),得出成績(jī)。流程圖:開始灰度化Hough變換圖像旋轉(zhuǎn)圖像傾斜嗎? 是 是 否 測(cè)量各個(gè)掃描區(qū)域的起始坐標(biāo)分別依次統(tǒng)計(jì)各大掃描區(qū)域內(nèi)各個(gè)檢測(cè)區(qū)域的灰度值閾值判定,得出所檢測(cè)區(qū)域顏色并賦值與標(biāo)準(zhǔn)答案比對(duì)算出成績(jī)結(jié)束三、程序設(shè)計(jì) clc;clear;close;A=imread('原圖.jpg');%讀取圖像imshow(A),title('原圖');gray=rgb2gray(A);bw=edge(gray,'canny');%canny算子邊緣檢測(cè)得到二值邊緣圖
5、像h,t,r=hough(bw,'RhoResolution',0.5,'ThetaResolution',0.5); %Hough變換figure,imshow(imadjust(mat2gray(h),'XData',t,'YData',r,'InitialMagnification','fit'),title('Hough變換矩陣');%顯示Hough變換矩陣xlabel('theta'),ylabel('rho');axis on, axis
6、normal,hold on;P=houghpeaks(h,2);x=t(P(:,2);y=r(P(:,1);plot(x,y,'s','color','r'),title('');%獲取并標(biāo)出參數(shù)平面的峰值點(diǎn)lines=houghlines(bw,t,r,P,'FillGap',5,'Minlength',7);%檢測(cè)圖像中的直線段figure,imshow(gray);hold on;max_len=0;for i=1:length(lines) xy=lines(i).point1;lines
7、(i).point2; plot(xy(:,1),xy(:,2),'LineWidth',2,'Color','g');%用綠色線段標(biāo)注直線段 plot(xy(:,1),xy(1,2),'x','LineWidth',2,'Color','y'); plot(xy(:,1),xy(2,2),'x','LineWidth',2,'Color','r');%標(biāo)注直線段端點(diǎn)endx=lines.theta;%由與圖像邊緣平行的
8、直線段的斜率得到整個(gè)圖像旋轉(zhuǎn)的角度B=imrotate(gray,x);%圖像修正figure,imshow(B),title('旋轉(zhuǎn)后圖像');T=graythresh(B);%使用OTSU方法獲得閥值Tresult=im2bw(B,T);%二值化圖像figure,imshow(result),title('二值化后結(jié)果');%掃描區(qū)域:在本程序中,有7個(gè)掃描區(qū)域,分別對(duì)應(yīng)題號(hào)為1-5,6-10,11-15,16-20,21-25,26-30,31-35這幾個(gè)區(qū)域n=52;m=244;% 首先測(cè)得答題區(qū)域第一題A選項(xiàng)左上角的坐標(biāo)(52,244)s=60;t=9
9、0;%s為上下兩個(gè)掃描區(qū)域的距離,t為左右兩個(gè)掃描區(qū)域的距離。P=4;Q=5;%P為字母項(xiàng)的個(gè)數(shù)(這里有ABCD共有4項(xiàng)),Q為每個(gè)小區(qū)域選項(xiàng)數(shù)。interval_length=14;%左右相鄰兩題填涂區(qū)域左邊線的距離interval_width=9;%上下相鄰兩題填涂區(qū)域上邊線的距離length=11;%填涂區(qū)域的長(zhǎng)度width=6;%填涂區(qū)域的寬度a2=zeros(4,5);%初始化灰度值統(tǒng)計(jì)矩陣%第1-5題區(qū)域的檢測(cè)for P=1:4 for Q=1:5 %m=244;n=52;%第1-5題區(qū)域的檢測(cè)的起始坐標(biāo)(即第一題A選項(xiàng)左上角的坐標(biāo)) a1=result(m+(P-1)*(inte
10、rval_width+1) :m+(P-1)*(interval_width+1)+width,n+(Q-1)*(interval_length+1):n+(Q-1)*(interval_length+1)+length); %得到矩形區(qū)域內(nèi)各像素的灰度值 sum1=sum(sum(a1);%計(jì)算統(tǒng)計(jì)的矩形區(qū)域內(nèi)像素灰度值之和 a2(P,Q)=sum1;%多次循環(huán)后得到20個(gè)統(tǒng)計(jì)區(qū)域的灰度值,并依次放在a2矩陣中 endend a2(a2<80)=1;a2(a2>=81)=0;%對(duì)灰度值統(tǒng)計(jì)矩陣?yán)锏臄?shù)值進(jìn)行處理,大于某一閥值的值賦1,其余的賦0。 %在此程序中,涂黑則相應(yīng)數(shù)值為1。
11、result1_5=a2;%存儲(chǔ)1-5題的結(jié)果%第6-10題區(qū)域的檢測(cè)for P=1:4 for Q=1:5 a1=result(m+s*1+(P-1)*(interval_width+1) :m+s*1+(P-1)*(interval_width+1)+width,n+(Q-1)*(interval_length+1):n+(Q-1)*(interval_length+1)+length); sum1=sum(sum(a1); a2(P,Q)=sum1; endend a2(a2<80)=1;a2(a2>=81)=0;result6_10=a2; %存儲(chǔ)6-10題的結(jié)果%第11-
12、15題區(qū)域的檢測(cè)for P=1:4 for Q=1:5 a1=result(m+(P-1)*(interval_width+1) :m+(P-1)*(interval_width+1)+width,n+t*1+(Q-1)*(interval_length+1):n+t*1+(Q-1)*(interval_length+1)+length); sum1=sum(sum(a1); a2(P,Q)=sum1; endend a2(a2<80)=1;a2(a2>=81)=0;result11_15=a2; %存儲(chǔ)11-15題的結(jié)果%第16-20題區(qū)域的檢測(cè)for P=1:4 for Q=1
13、:5 a1=result(m+s*1+(P-1)*(interval_width+1) :m+s*1+(P-1)*(interval_width+1)+width,n+t*1+(Q-1)*(interval_length+1):n+t*1+(Q-1)*(interval_length+1)+length); sum1=sum(sum(a1); a2(P,Q)=sum1; endend a2(a2<80)=1;a2(a2>=81)=0;result16_20=a2; %存儲(chǔ)16-20題的結(jié)果%第21-25題區(qū)域的檢測(cè)for P=1:4 for Q=1:5 a1=result(m+s*
14、2+(P-1)*(interval_width+1) :m+s*2+(P-1)*(interval_width+1)+width,n+t*1+(Q-1)*(interval_length+1):n+t*1+(Q-1)*(interval_length+1)+length); sum1=sum(sum(a1); a2(P,Q)=sum1; endend a2(a2<80)=1;a2(a2>=81)=0;result21_25=a2; %存儲(chǔ)21-25題的結(jié)果%第26-30題區(qū)域的檢測(cè)for P=1:4 for Q=1:5 a1=result(m+s*3+(P-1)*(interval
15、_width+1) :m+s*3+(P-1)*(interval_width+1)+width,n+t*1+(Q-1)*(interval_length+1):n+t*1+(Q-1)*(interval_length+1)+length); sum1=sum(sum(a1); a2(P,Q)=sum1; endend a2(a2<80)=1;a2(a2>=81)=0;result26_30=a2; %存儲(chǔ)26-30題的結(jié)果%第31-35題區(qū)域的檢測(cè)for P=1:4 for Q=1:5 a1=result(m+s*4+(P-1)*(interval_width+1) :m+s*4+
16、(P-1)*(interval_width+1)+width,n+t*1+(Q-1)*(interval_length+1):n+t*1+(Q-1)*(interval_length+1)+length); sum1=sum(sum(a1); a2(P,Q)=sum1; endend a2(a2<80)=1;a2(a2>=81)=0;result31_35=a2; %存儲(chǔ)31-35題的結(jié)果answer=result1_5,result6_10,result11_15,result16_20,result21_25,result26_30,result31_35;%將所檢測(cè)的7個(gè)區(qū)域
17、的結(jié)果匯總dlmwrite('Result.txt',answer);%以txt文本的形式輸出結(jié)果矩陣disp(answer);%在command窗口實(shí)時(shí)顯示結(jié)果%附加一個(gè)統(tǒng)計(jì)錯(cuò)誤的并顯示分?jǐn)?shù)的部分,假定正確答案是35個(gè)CT=zeros(4,35);%初始化矩陣T(1,:)=1;%設(shè)定正確答案的參數(shù)mark1=answer-T;wrongx=sum(mark1=0);%當(dāng)結(jié)果選錯(cuò)時(shí),每一列將分別多一個(gè)1與-1。選擇正確時(shí),此列都是0。A=sum(sum(wrongx);%統(tǒng)計(jì)非零的結(jié)果。wrong=A/2;%由于-1與1是成對(duì)出現(xiàn)的,所以需要將上一步所得結(jié)果除以2.score=
18、35-wrong;%算出結(jié)果fprintf('選擇題得分為%d',score);%在command窗口輸出成績(jī)四、模塊測(cè)試與分析1、首先進(jìn)行Hough變換,得到Hough變換矩陣如下所述(見圖1)。圖1可以觀察到2個(gè)峰值。2、使用Houghlines函數(shù)檢測(cè)直線,得到如下結(jié)果(見圖2)圖2并使用lines.theta語句得到直線角度,即為圖像傾斜角度。x=lines.theta x =43、修正圖像(如圖3所示)圖3這時(shí)觀察到傾斜的圖像已經(jīng)得到改正。4、在二值化后使用像素檢索技術(shù)對(duì)灰度值進(jìn)行統(tǒng)計(jì)。分為7個(gè)掃描區(qū)域,如圖4中7個(gè)方框所示。圖45、進(jìn)行灰度統(tǒng)計(jì),得到結(jié)果矩陣。最后處理由fprintf語句得到分?jǐn)?shù)。五、測(cè)試與調(diào)試過程這次實(shí)驗(yàn)遇到的第一個(gè)問題是如何由Hough變換得到直線角度。這個(gè)是教材上沒有的。網(wǎng)上提示說是調(diào)用lines函數(shù),但沒有說怎么調(diào)用。后來才從一篇Hough變換的文章中知道是lines.theta,類似于C#的調(diào)用方法。還有就是在本次設(shè)計(jì)中我第一次是將旋轉(zhuǎn)部分和灰度值統(tǒng)計(jì)部分分開寫成2個(gè)m文件的,然后再直接合并,結(jié)果發(fā)現(xiàn)有誤。經(jīng)過檢查后發(fā)現(xiàn)matlab在讀取圖片時(shí)會(huì)在原圖片外加一圈白色“幕布”,導(dǎo)致原圖片的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年速凍丸類制品合作協(xié)議書
- 智慧城市發(fā)展背景下智能交通系統(tǒng)的戰(zhàn)略規(guī)劃
- 2025年紫外固化材料項(xiàng)目發(fā)展計(jì)劃
- 創(chuàng)新教育心理學(xué)方法激發(fā)學(xué)生內(nèi)在動(dòng)力
- 情緒心理學(xué)與課堂氛圍的營(yíng)造
- 醫(yī)療培訓(xùn)中的教育政策與效果評(píng)估研究
- 以數(shù)據(jù)為支撐的學(xué)生行為心理分析實(shí)踐
- 在線教育在商業(yè)領(lǐng)域的廣泛應(yīng)用及未來前景
- 混合式學(xué)習(xí)模式在醫(yī)學(xué)教學(xué)中的實(shí)踐應(yīng)用研究
- 中職教育課件
- GA/T 1169-2014警用電子封控設(shè)備技術(shù)規(guī)范
- 第十二篇 糖尿病患者生活常識(shí)
- 污水處理站安全培訓(xùn)課件
- 2015高考全國(guó)新課標(biāo)1地理試題及答案
- 超星爾雅《詩經(jīng)》導(dǎo)讀檢測(cè)題答案
- GB 27954-2020 黏膜消毒劑通用要求
- 中考《紅星照耀中國(guó)》各篇章練習(xí)題及答案(1-12)
- (完整版)ECRS培訓(xùn)課件
- 外輪理貨工作英語
- 華中師范大學(xué)輔導(dǎo)員隊(duì)伍建設(shè)實(shí)施辦法
- kr法脫硫工藝介紹
評(píng)論
0/150
提交評(píng)論