资源简介
本课题为基于MATLAB的不变矩答题卡识别。可识别学号,学科,答案,并进行分数统计,以及判断是否及格。后台可设置标准excel答案。经过灰度变换形成灰度图像、二值化处理、图像滤波、边缘检测、hough变换等预处理。带GUI交互式界面。
识别原理***:计算出了单选选择答案后,需要与标准的答案进行对比。这时需要建立一个二维的数组来储存标准答案。在程序中建立了一个数组,只有一行却有多个列,来记录每一道单项选择题的标准答案。记录好考生填涂的答案和标准答案后,这时通过一个 FOR 循环一一对比,如果相同的就让计数器加一如果不同计数器就不加。循环结束后就可以统计出考生选对的答案,然后将统计好的数字乘上每道题的分数就可以计算出考生单选题的得分。
识别原理***:计算出了单选选择答案后,需要与标准的答案进行对比。这时需要建立一个二维的数组来储存标准答案。在程序中建立了一个数组,只有一行却有多个列,来记录每一道单项选择题的标准答案。记录好考生填涂的答案和标准答案后,这时通过一个 FOR 循环一一对比,如果相同的就让计数器加一如果不同计数器就不加。循环结束后就可以统计出考生选对的答案,然后将统计好的数字乘上每道题的分数就可以计算出考生单选题的得分。

代码片段和文件信息
function [Dom Aom Answer Bn] = Analysis(stats1 stats2 Line Img flag)
%%下区域分析
%答题区域默认为六个大区:1~20,21~40,41~60,61~75,76~90,91~105
if nargin < 5
flag = 1;
end
Line1 = Line{1};
Line2 = Line{2};
Line3 = Line{3};
Line4 = Line{4};
yn1 = round(Line1(1 2) + 0.18*(Line2(1 2)-Line1(1 2)));
yn2 = round(Line1(1 2) + 0.34*(Line2(1 2)-Line1(1 2)));
yn3 = round(Line1(1 2) + 0.50*(Line2(1 2)-Line1(1 2)));
yn4 = round(Line1(1 2) + 0.66*(Line2(1 2)-Line1(1 2)));
yn5 = round(Line1(1 2) + 0.82*(Line2(1 2)-Line1(1 2)));
yn6 = round(Line1(1 2) + 0.98*(Line2(1 2)-Line1(1 2)));
%下区域六条横线
Linen1_1 = [Line1(1 1) yn1; Line1(2 1) yn1];
Linen2_1 = [Line1(1 1) yn2; Line1(2 1) yn2];
Linen3_1 = [Line1(1 1) yn3; Line1(2 1) yn3];
Linen4_1 = [Line1(1 1) yn4; Line1(2 1) yn4];
Linen5_1 = [Line1(1 1) yn5; Line1(2 1) yn5];
Linen6_1 = [Line1(1 1) yn6; Line1(2 1) yn6];
% 定位竖直网格分割线
xn1 = round(Line3(1 1) + 0.22*(Line4(1 1)-Line3(1 1)));
xn2 = round(Line3(1 1) + 0.26*(Line4(1 1)-Line3(1 1)));
xn3 = round(Line3(1 1) + 0.48*(Line4(1 1)-Line3(1 1)));
xn4 = round(Line3(1 1) + 0.52*(Line4(1 1)-Line3(1 1)));
xn5 = round(Line3(1 1) + 0.72*(Line4(1 1)-Line3(1 1)));
xn6 = round(Line3(1 1) + 0.77*(Line4(1 1)-Line3(1 1)));
xn7 = round(Line3(1 1) + 0.98*(Line4(1 1)-Line3(1 1)));
Linen1_2 = [xn1 Line3(1 2); xn1 Line3(2 2)];
Linen2_2 = [xn2 Line3(1 2); xn2 Line3(2 2)];
Linen3_2 = [xn3 Line3(1 2); xn3 Line3(2 2)];
Linen4_2 = [xn4 Line3(1 2); xn4 Line3(2 2)];
Linen5_2 = [xn5 Line3(1 2); xn5 Line3(2 2)];
Linen6_2 = [xn6 Line3(1 2); xn6 Line3(2 2)];
Linen7_2 = [xn7 Line3(1 2); xn7 Line3(2 2)];
%下区域一定位横网格线坐标计算
ym1_1 = round(Line1(1 2) + 0.38*(Linen1_1(1 2)-Line1(1 2)));
ym2_1 = round(Line1(1 2) + 0.5*(Linen1_1(1 2)-Line1(1 2)));
ym3_1 = round(Line1(1 2) + 0.65*(Linen1_1(1 2)-Line1(1 2)));
ym4_1 = round(Line1(1 2) + 0.80*(Linen1_1(1 2)-Line1(1 2)));
ym5_1 = round(Line1(1 2) + 0.93*(Linen1_1(1 2)-Line1(1 2)));
%下区域一定位横网格线
Linem1_1 = [Line1(1 1) ym1_1; Line1(2 1) ym1_1];
Linem2_1 = [Line1(1 1) ym2_1; Line1(2 1) ym2_1];
Linem3_1 = [Line1(1 1) ym3_1; Line1(2 1) ym3_1];
Linem4_1 = [Line1(1 1) ym4_1; Line1(2 1) ym4_1];
Linem5_1 = [Line1(1 1) ym5_1; Line1(2 1) ym5_1];
%下区域二定位横网格线坐标计算
ym1_2 = round(Linen1_1(1 2) + 0.30*(Linen2_1(1 2)-Linen1_1(1 2)));
ym2_2 = round(Linen1_1(1 2) + 0.43*(Linen2_1(1 2)-Linen1_1(1 2)));
ym3_2 = round(Linen1_1(1 2) + 0.60*(Linen2_1(1 2)-Linen1_1(1 2)));
ym4_2 = round(Linen1_1(1 2) + 0.75*(Linen2_1(1 2)-Linen1_1(1 2)));
ym5_2 = round(Linen1_1(1 2) + 0.90*(Linen2_1(1 2)-Linen1_1(1 2)));
%下区域二定位横网格线
Linem1_2 = [Line1(1 1) ym1_2; Line1(2 1) ym1_2];
Linem2_2 = [Line1(1 1) ym2_2; Line1(2 1) ym2_2];
Linem3_2 = [Line1(1 1) ym3_2; Line1(2 1) ym3_2];
Linem4_2 = [Line1(1 1) ym4_2; Line1(2 1) ym4_2];
Linem5_2 = [Line1(1 1) ym5_2; Line1(2 1) ym5_2];
%下区域三定位横网格线坐标计算
ym1_3 = round(Linen2_1(1 2) + 0.25*(Linen
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2020-02-28 21:42 MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\
文件 544294 2020-02-28 21:30 MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\鍗氭枃.docx
目录 0 2020-02-28 22:43 __MACOSX\
目录 0 2020-02-28 22:43 __MACOSX\MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\
文件 230 2020-02-28 21:30 __MACOSX\MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\._鍗氭枃.docx
文件 0 2020-02-28 21:30 MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\MATLAB hough鍙樻崲绛旈鍗¤瘑鍒紙GUI锛岄厤璁烘枃锛?
文件 1229 2019-12-29 20:05 MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\MATLAB hough鍙樻崲绛旈鍗¤瘑鍒紙GUI锛岄厤璁烘枃锛?contrastAnswers.m
文件 0 2020-02-28 22:43 __MACOSX\MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\MATLAB hough鍙樻崲绛旈鍗¤瘑鍒紙GUI锛岄厤璁烘枃锛?
文件 230 2019-12-29 20:05 __MACOSX\MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\MATLAB hough鍙樻崲绛旈鍗¤瘑鍒紙GUI锛岄厤璁烘枃锛?._contrastAnswers.m
文件 9707 2020-02-28 21:28 MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\MATLAB hough鍙樻崲绛旈鍗¤瘑鍒紙GUI锛岄厤璁烘枃锛?GUI1.m
文件 230 2020-02-28 21:28 __MACOSX\MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\MATLAB hough鍙樻崲绛旈鍗¤瘑鍒紙GUI锛岄厤璁烘枃锛?._GUI1.m
文件 335 2017-06-14 15:15 MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\MATLAB hough鍙樻崲绛旈鍗¤瘑鍒紙GUI锛岄厤璁烘枃锛?gaussianFilter.m
文件 230 2017-06-14 15:15 __MACOSX\MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\MATLAB hough鍙樻崲绛旈鍗¤瘑鍒紙GUI锛岄厤璁烘枃锛?._gaussianFilter.m
目录 0 2020-02-28 21:26 MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\MATLAB hough鍙樻崲绛旈鍗¤瘑鍒紙GUI锛岄厤璁烘枃锛?images\
文件 9216 2018-03-30 13:33 MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\MATLAB hough鍙樻崲绛旈鍗¤瘑鍒紙GUI锛岄厤璁烘枃锛?images\Thumbs.db
目录 0 2020-02-28 22:43 __MACOSX\MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\MATLAB hough鍙樻崲绛旈鍗¤瘑鍒紙GUI锛岄厤璁烘枃锛?images\
文件 230 2018-03-30 13:33 __MACOSX\MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\MATLAB hough鍙樻崲绛旈鍗¤瘑鍒紙GUI锛岄厤璁烘枃锛?images\._Thumbs.db
文件 3204274 2017-04-03 12:23 MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\MATLAB hough鍙樻崲绛旈鍗¤瘑鍒紙GUI锛岄厤璁烘枃锛?images\绛旈鍗?jpg
文件 230 2017-04-03 12:23 __MACOSX\MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\MATLAB hough鍙樻崲绛旈鍗¤瘑鍒紙GUI锛岄厤璁烘枃锛?images\._绛旈鍗?jpg
文件 230 2020-02-28 21:26 __MACOSX\MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\MATLAB hough鍙樻崲绛旈鍗¤瘑鍒紙GUI锛岄厤璁烘枃锛?._images
文件 525 2017-04-03 18:49 MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\MATLAB hough鍙樻崲绛旈鍗¤瘑鍒紙GUI锛岄厤璁烘枃锛?Morph_Process.m
文件 230 2017-04-03 18:49 __MACOSX\MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\MATLAB hough鍙樻崲绛旈鍗¤瘑鍒紙GUI锛岄厤璁烘枃锛?._Morph_Process.m
文件 1486 2017-04-03 18:52 MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\MATLAB hough鍙樻崲绛旈鍗¤瘑鍒紙GUI锛岄厤璁烘枃锛?Region_Segmation.m
文件 230 2017-04-03 18:52 __MACOSX\MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\MATLAB hough鍙樻崲绛旈鍗¤瘑鍒紙GUI锛岄厤璁烘枃锛?._Region_Segmation.m
文件 5385 2020-02-28 21:28 MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\MATLAB hough鍙樻崲绛旈鍗¤瘑鍒紙GUI锛岄厤璁烘枃锛?GUI1.fig
文件 230 2020-02-28 21:28 __MACOSX\MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\MATLAB hough鍙樻崲绛旈鍗¤瘑鍒紙GUI锛岄厤璁烘枃锛?._GUI1.fig
文件 457 2017-06-14 17:53 MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\MATLAB hough鍙樻崲绛旈鍗¤瘑鍒紙GUI锛岄厤璁烘枃锛?Image_Smooth.m
文件 230 2017-06-14 17:53 __MACOSX\MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\MATLAB hough鍙樻崲绛旈鍗¤瘑鍒紙GUI锛岄厤璁烘枃锛?._Image_Smooth.m
文件 280 2017-04-03 18:37 MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\MATLAB hough鍙樻崲绛旈鍗¤瘑鍒紙GUI锛岄厤璁烘枃锛?Compute_Angle.m
文件 230 2017-04-03 18:37 __MACOSX\MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\MATLAB hough鍙樻崲绛旈鍗¤瘑鍒紙GUI锛岄厤璁烘枃锛?._Compute_Angle.m
文件 17529 2019-12-29 20:05 MATLAB绛旈鍗¤瘑鍒紙GUI锛岃鏂囷級\MATLAB hough鍙樻崲绛旈鍗¤瘑鍒紙GUI锛岄厤璁烘枃锛?Analysis.m
............此处省略21个文件信息
相关资源
- Matlab路面裂缝识别69319
- 高灵敏度GPS接收机MATLAB仿真,附捕获
- 基于MATLAB的质点弹道计算与外弹道优
- 阵列天线的matlab仿真
- MATLAB 经典程序源代码大全
- MATLAB小波软阈值去噪代码33473
- 天线阵的波束形成在MATLAB仿真程序及
- 非线性SVM算法-matlab实现
- 《MATLAB 智能算法超级学习手册》-程序
- 组合导航matlab程序
- 读取txt文件内容matlab代码实现
- Matlab实现基于相关的模板匹配程序
- matlab优化工具箱讲解
- 基于MATLAB的快速傅里叶变换
- 光纤传输中的分布傅立叶算法matlab实
- 基于matlab的图像处理源程序
- matlab 椭圆拟合程序
- 算术编码解码matlab源代码
- optical_flow 光流法 matlab 实现程序
- 引导图像滤波器 Matlab实现
- 分形几何中一些经典图形的Matlab画法
- OFDM系统MATLAB仿真代码
- SVM工具箱(matlab中运行)
- 图像小波变换MatLab源代码
- LU分解的MATLAB实现
- 冈萨雷斯数字图像处理matlab版(第三
- 替代数据法的matlab程序
- 用matlab实现的多站定位系统性能仿真
- 通过不同方法进行粗糙集属性约简m
- k近邻算法matlab实现
评论
共有 条评论