全国免费服务热线:800 828 6005
设为首页
/
收藏本站
网站首页
关于我们
公司简介
资质荣誉
公司产品
光标阅读机
高速扫描仪
答题卡
系统软件
解决方案
光标阅读机
高速扫描仪
答题卡
成功案例
光标阅读机
高速扫描仪
答题卡
新闻动态
公司新闻
行业资讯
服务与支持
服务承诺
软件下载
常见问题
软件升级通知
联系我们
联系我们
在线留言
解决方案
光标阅读机
高速扫描仪
答题卡
联系我们
销售电话:
0513-88960551 88931005
上海办:021-51696039
技术支持:13615226082
免费服务热线:800 828 6005
当前位置:
首页
/
解决方案
/
光标阅读机
/
光标阅读机
干部测评统计分析系统的设计与实现
数据处理层包括数据的读写、分析和统计接口。这一层是系统的核心部分,它负责从底层数据库中读取数据,将数据统计分析后,提交给上层界面显示;并且从用户接口层接收到输入的数据进行处理,最后写入到数据库中存储。处理层包含系统主要的类:初始化和连接数据库的CADORecordset 类和CADOConnection类,用于数据管理的CDataMgr类,用于数据统计的CDataStat类。
用户接口层包括图像识别、数据显示、系统设置和打印排序等功能。图像识别功能提供了用户选择测评主体和显示识别进度的界面。数据显示功能具有按照测评项目、测评小项、测评等级等多种形式显示测评结果的能力。系统设置包括对测评主体、测评表类型、测评表等级、测评表项目等信息的设置。排序操作提供了对测评结果按照不同属性进行排序的功能。打印操作和普通系统的打印功能不相同,它将测评结果数据导出到Word中显示,用户可以根据自己的需要,修改格式后打印。它避免了部分系统不能完全显示打印数据的缺陷,同时提高了打印操作的灵活性。用户接口层含有最多的类,其中有:完成打印功能的CDataPrint类,提供排序的CDataSort类,显示主窗口的CMainFrame类,显示主要框架的CUserInfoView类和CUserListView类,还有实现系统设置功能的类。
3 关键技术
3.1 图像识别
由于经过扫描设备扫描生成的是8位BMP灰度图像文件,文件的每个字节数据对应图像的单个像素,根据这一特点对图像的每个有关像素进行读取和分析。
处理步骤如下:
(1)将文件中的数据读入缓冲区中,并得到位图文件的大小,如图像高度、宽度以及每一行的像素个数。
(2)从数据缓冲区的一个较小偏移处开始顺序读取。为了避免扫描图像出现黑边干扰判读,取值应避免是图像边界,以后每读到图像边界都应跳过边界范围。
(3)由于对于位图的读取是按照从下至上、从左至右的顺序逐行逐个像素点读取。因此,理想情况下得到的第一个深色像素点且满足两根线交叉点条件的点应是表格的左下角点,如果得到的第一个这样的点经过判定不是左下角点,则应该是图像出现右下倾斜的情况,得到的应是右下角点。为避免这种情况,可给出一定的判定条件,保证得到的第一个满足这些条件的点应是表格的左下角点。
(4)根据表格的特点和实际测评对象数沿线搜索得到评价区域的左下起始位置点。在搜索过程中,通过得到的一些与表格起始位置点同行或同列的点的情况,判断出表格是否发生倾斜,如果倾斜超过一定程度,则应认为这个图像出错,应重新扫描这个表格生成新的图像文件。
(5)找到评价区域左下起始点后,从通用性来讲,应该找到第一行每个单元格的下边界点,从而以此为依据得到每一列单元格的宽度;再找到第一列每个单元格的左边界点,从而可以得到每一行单元格的高度。根据这些宽度和高度值得到每一个单元格的四个角点的位置,确定每一个单元格的范围。
(6)根据每个单元格的范围,取一定的子范围搜索每个单元格内的深色像素点的个数,为避免可能将边框包括在内的情况,对于单元格中同行或同列的深色像素点只按照一个深色像素点来计数,这样即使将四个边框都包括进来,也只会认为只有四个像素点,不会对结果有大的影响。
(7)根据测评表要比较的项目情况,根据先前给出的有关参数,以一定数目的单元格为一组,对中间出现的深色像素点个数进行比较,找到深色像素点个数最多的单元格,得到其对应位置,进行相应项的计数,作为后面的统计依据。
3.2 数据统计和分析
按照需求分析,系统需要提供按照测评项目和不同的测评小项的数据统计,同时提供票数、分数和等级百分比等多种形式的综合测评结果。因此,系统需要将测评数据统一存储,按照用户的需求快速地查找并统计出测评结果。为了实现这个目标,系统从数据库层到数据的处理层进行了合理的设计。
首先,为了减少数据的冗余,并提供综合的测评数据,系统的基本数据:人员信息、测评项目、测评等级、测评小项等分别存储在不同的基本表中,并且具有连续的惟一ID号。如图4所示,测评等级信息表中的每一个等级具有惟一的ID号“dj_djid”,并且ID号从‘1’连续编号到‘5’。因此我们在测评数据表“cpdata”中的等级字段只需要存储等级ID号即可,从而保证了较小的数据冗余度和灵活的数据修改能力,最重要的是ID号可以用于数据统计时数组的下标。
图4 测评等级信息表
所有的测评数据储存在基本表“cpdata”中。如图5所示,这个表包含基本信息的ID号,如人员ID,测评项目ID和测评等级ID,除此之外,还有所对应的得票数“cd_shumu”。因此,系统通过读取此表的信息就可以获得所有的数据。
图5 测评数据表
对多人员、多项目的分别统计是非常耗时的工作,SQL语句没有提供这种功能。因此,我们采用一种基于项目ID号的统计方法。系统将测评数据读入到一个二维数组中,同时初始化统计结果的数组。假设我们需要统计不同等级的得票数,我们初始化一个长度为等级数目的数组dj[DJNUM]后从第一条记录开始
计算
。如图5所示,第一条记录等级ID号为‘2’我们将对应的得票数‘12’加入到数组dj[1]中。依次类推,当我们浏览完所有记录时,各个等级的总得票数存入到数组dj中。我们仅读取一遍数据就可以完成不同数据的统计,从而大大提高了数据的统计速度。
如上所述,我们在浏览记录的同时可以对多项内容进行累加,从而得出多项统计结果。同时,每一测评等级本身具有权值,将此等级所得的票数和权值相乘就得出用户所得分数。因此,系统只需进行一次数据记录的遍历,就可以得出所有的统计值,保证了数据统计的效率。
3.3 测评表的定制
用户使用的测评表多种多样,不但格式不尽相同,测评项目也有所变化。因此,为了对多种测评表进行图像识别和数据统计,系统需要提供对测评表的定制功能。通过对不同的测评表进行对比,我们发现测评表所包含的信息有五类:测评主体、测评客体、测评项目、测评等级和基本信息。
(1)测评主体,即被评价人员。不同的测评表所包含的测评主体的数目不相同,相关信息有所差异。因此,测评表的定制功能需要设置测评主体的数目并提供填写相关信息的接口。
(2)测评客体是指参评人员的类型,如领导和普通人员对测评主体的评价分量是不相同的。不同测评客体的权值也不相同。
(3)测评项目指评价指标,测评表的评价项目不相同,每一种评价指标的权值不相同。并且可能测评项目下含有不同的测评小项。测评项目是测评表的关键内容,需要详细进行划分。所以,系统设置了测评项目和测评小项两类数据,分别存储在不同的基本表中。
(4)测评等级的变化不大,每一种等级需要对应不同的分值,用于最终测评主体得分的计算。
(5)表基本信息包括表的ID号、表的名称、所属的基本类型、表的行列数、表的测评项目数、表的测评等级数和相关的备注信息。
根据以上对测评表的分析,系统需要分别提供对这些内容的设置接口。用户定制或修改表内容是一个自顶向下的过程。首先,用户添加表的基本信息,如:表名称、表的基本类型和行列数。然后,用户分别添加各项的信息,在添加测评项目时,先添加测评大项,然后将所属的测评小项逐一加入。同时,在每项内容的设置界面上提供了查看、修改和删除项目的功能。
通过对测评表每项内容的设置,系统提供了统一的表定制功能,这种设置方式简单、灵活。用户添加新型的测评表后,系统自动读取表的关键信息,如行列数,从而确定图像识别的有效区域;读取测评项目和等级信息,完成图像信息和测评数据的转换;读取所有信息完成测评数据的统计和分析。
4 应用情况
干部测评统计分析系统
已经应用于测评工作。我们使用富士通“fi-2150c”型扫描仪将纸质测评表扫描成灰度图像,利用本系统对图像文件进行识别和数据统计。
首先,由于图像的识别速度远大于图像的扫描速度,因此整个图像识别工作的速度取决于测评表的扫描速度。同时系统对扫描的图像要求较低,所以扫描速度相对较快,利用富士通扫描仪大约每分钟可以扫描20张测评表。
在图像识别后,测评数据自动存储到数据库中,用户根据自己的需要查看测评结果。数据的统计速度较快,我们利用10000张扫描表进行测试,数据计算所花费的时间为13ms。
通过对统计结果进行验证,系统除不能识别严重变形的图像外,统计数据的正确率达到100%。
本系统利用图像识别技术对测评表进行数据识别,采用优化的数据统计算法达到多种测评数据的高速统计,提供了灵活的表格定制功能,对不同格式的测评表进行数据统计,从而大大地提高测评数据的统计速度和准确率,减轻用户的统计负担。
分享到:
QQ空间
新浪微博
腾讯微博
人人网
微信
【
打印此页
】 【
关闭
】
上一篇:
基于图像识别的干部测评系统的设计与实现
下一篇:
图像识别的阅卷系统的设计与实现
展开
收缩
业务咨询
业务咨询
业务咨询
业务咨询
技术支持
销售电话
0513-88960551
0513-88931005
免费服务热线
800-828-6005