学生头像采集系统的设计与实现Word下载.docx
- 文档编号:21738322
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:25
- 大小:450.90KB
学生头像采集系统的设计与实现Word下载.docx
《学生头像采集系统的设计与实现Word下载.docx》由会员分享,可在线阅读,更多相关《学生头像采集系统的设计与实现Word下载.docx(25页珍藏版)》请在冰豆网上搜索。
3.1系统可行性分析8
3.2系统需求分析9
3.2.1软件开发目标9
3.2.2系统功能需求9
3.2.3系统界面需求9
3.3系统开发的原则9
4系统设计11
4.1系统的设计思想11
4.2系统的结构13
4.3系统的功能13
4.4系统使用流程14
5系统功能的实现15
5.1程序启动及其代码15
5.2开启相机与关闭17
5.3相机拍照及照片预览18
5.4照片的保存及学生信息19
6结论22
参考文献23
致谢24
1绪论
1.1系统开发的背景
当前多媒体计算机,信息高速公路和计算机网络是计算机信息科学的三个重要发展方向。
它们相互联系、相互促进、共同发展,已经渗透到人们日常生活、学习、工作、娱乐等各个方面。
计算机管理信息系统的普及,极大提高了管理水平和工作效率,在解决了传统的文字信息计算机管理的同时,结合人像照片等信息进行的图文结合管理模式越显迫切,并逐渐提上了议事日程。
在诸如人事管理、学籍管理、考试报名、证卡制作等需要大量录入人像照片的场合,一直来为照片的计算机录入问题所困扰。
随着计算机技术的迅猛发展,全国各高校正快速实现信息化、数学化管理。
在实现数字化管理的过程中,采集和管理学生电子像片是数字化发展的必然要求,同时也是实现数字化管理的薄弱环节。
采集电子照片的常用方法是由专业摄影师对学生进行现场拍照,记录相机中照片与学生的对应关系,待拍摄完毕后,导入电脑并用图像处理软件修改成相应尺寸的照片,在摄像头应用普及的的条件下,出现了许多利用摄像头进行照片采集的研究,如全国英语四六级考试报名、国家公务员考试报名中,就采用摄像软件进行照片采集。
这种方式具有操作简单,便捷灵活的特点,生成的图像易于保存应用[1]。
1.2国内外背景及其现状
国外主要拟采用人脸检测技术来自动提取和规范头像,采用二维条码和数据库技术来自动命名照片。
人脸检测及头像提取技术:
采用人工智能和模式识别技术检测照片中人脸位置,并根据用户设置的参数以人脸为中心裁剪出符合要求的头像图片。
二维条码和数据库命名技术:
通过用户数据库信息直接命名所拍摄的照片,或将关键编码字段生成二维条码并通过自动解码来命名所扫描的照片。
目前国内照片采集主要有数码拍照和照片扫描分割两种方式。
下面我们就这两种采集方式存在的问题给大家分析一下:
方式一:
现场数码拍照,由专业摄影师对人员进行现场拍照,并记录相机中照片与人员的对应关系,拍摄完毕后导入电脑通过手工修改所拍照片的编号。
主要存在的问题:
1、照片命名速度慢且容易出错,采用数码相机拍照时往往需要辅助人员在旁边拿着花名册逐个点名并记录其在相机中照片的编号,拍摄完毕后还需要手工更改照片编号。
2、对摄影师有较高技术要求。
数码拍照时往往需要专业摄影师操作,根据人员高矮及天气状况实时调整坐姿和相机参数以保证所采集照片的规范性,一般非专业人士很难保证采集的照片整齐规范。
3、需要将人员在固定时间集中拍摄,往往因为时间或地域原因无法实现,即使实现了也容易造成现场混乱,影响正常生产、教学秩序。
方式二:
照片扫描分割,上交照片统一处理,将上交的照片整批扫描输入电脑,然后对扫描的图片进行手工分割裁剪和手工命名。
存在的问题:
1、手工分割效率低,且不规范,速度和精度完全取决于个人因素,每小时处理的图像有限。
2、手工命名速度慢,且容易出错,一旦出错很难查证。
3、上交的照片原始质量和背景参差不齐,手工单张调整需要消耗大量时间[2]。
1.3主要研究目标和研究内容
随着我国综合国力的不断增强,教育水平的不断提高,我国大学生数量在逐年增加,越来越多的学生给各高校采集学生头像信息带来了不少困难,每年的大学外语四六级考试,研究生报名考试,公务员考试,计算机二级考试,会计证报名等考试,学校都要向考试办上报考生的图像信息,而且要求电子图像的像素为固定值,大小不能超过15kb的以学生学号命名的jpg格式图像文件。
这就意味着我们要在短时间内(一般2-3天)完成4000人以上的图像采集。
如果以传统的工作方式。
用数码照相机进行拍照,再对生成的电子照片修改像素,压缩大小,重新以学号命名。
这个过程所需的工作量是巨大的,不但很难在短时间内完成,而且也很容易在重命名时出现张冠李戴的错误,而且会花费学生和工作人员不菲的时间。
可见传统的方式在现今科技高速发展的年代,办公信息数字化的趋势下是不可取的,本文所使用的是摄像机和电脑相结合利用图像采集软件获取考生图像的新方法,其大大提高了工作效率,在规定时间内顺利完成了学生图像采集工作[3]。
本文要实现的基本目标和主要内容有一下几个方面:
(1)学生头像采集系统能调用摄像头,并且显示摄像头所拍摄的视频信息。
(2)学生头像采集系统对于摄像头所捕获信息,能够进行保存为照片格式。
(3)学生头像采集系统对于拍摄的照片能够进行学生头像部位的截取。
1.4论文组织结构
本论文分6章。
第一章绪论,主要介绍系统发展的背景,及国内外现状。
第二章主要对开发平台及语言.NET,C#介绍,以及对开发环境VisualStudio2010的介绍。
第三章系统开发的可行性,目的,以及原则,并且对项目进行了详细的介绍。
第四章写了系统的设计,详细的介绍了数据库的设计以及具体的流程图。
第五章系统的具体功能的实现,以及部分具体相关代码。
第六章总结全文。
2系统开发及相应配置
2.1.Net简介
.NET是MicrosoftXMLWebservices平台。
XMLWebservices允许应用程序通过Internet进行通讯和共享数据,而不管所采用的是哪种操作系统、设备或编程语言。
Microsoft.NET平台提供创建XMLWebservices并将这些服务集成在一起之所需。
对个人用户的好处是无缝的、吸引人的体验。
.NET就是微软用来实现XML,WebServices,SOA和敏捷性的技术。
对技术人员,想真正了解什么是.NET,必须先了解.NET技术出现的原因和它想解决的问题,必须先了解为什么他们需要XMLWebServices和SOA。
技术人员一般将微软看成一个平台厂商。
微软搭建技术平台,而技术人员在这个技术平台之上创建应用系统。
从这个角度,.NET也可以如下来定义:
.NET是微软的新一代技术平台,为敏捷商务构建互联互通的应用系统,这些系统是基于标准的,联通的,适应变化的,稳定的和高性能的。
从技术的角度,一个.NET应用是一个运行于.NETFramework之上的应用程序。
(更精确的说,一个.NET应用是一个使用.NETFramework类库来编写,并运行于公共语言运行时CommonLanguageRuntime之上的应用程序。
)如果一个应用程序跟.NETFramework无关,它就不能叫做.NET程序。
比如,仅仅使用了XML并不就是.NET应用,仅仅使用SOAPSDK调用一个WebService也不是.NET应用。
.NET是基于Windows操作系统运行的操作平台,应用于互联网的分布式[4]。
2.2C#
C#是微软公司发布的一种面向对象的、运行于.NETFramework之上的高级程序设计语言。
并定于在微软职业开发者论坛(PDC)上登台亮相。
C#是微软公司研究员AndersHejlsberg的最新成果。
C#看起来与Java有着惊人的相似;
它包括了诸如单一继承、接口、与Java几乎同样的语法和编译成中间代码再运行的过程。
但是C#与Java有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的。
C#是一种安全的、稳定的、简单的、优雅的,由C和C++衍生出来的面向对象的编程语言。
它在继承C和C++强大功能的同时去掉了一些它们的复杂特性(例如没有宏和模版,不允许多重继承)。
C#综合了VB简单的可视化操作和C++的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程的支持成为.NET开发的首选语言。
并且C#成为ECMA与ISO标准规范。
C#看似基于C++写成,但又融入其它语言如Pascal、Java、VB等。
C#在设计者从C++继承的可选选项方面比Java要广泛一些(比如说struts),它还增加了自己新的特点(比方说源代码版本定义).但它还太不成熟,不可能挤垮JavaC#还需要进化成一种开发者能够接受和采用的语言
C#将不可避免地崛起,在Windows平台上成为主角,而JAVA将在UNIX、Linux等平台上成为霸主,C++将继续在系统软件领域大展拳脚。
非常有意思的是,这些语言的语法极其接近,因为JAVA和C#都是由C++发展而来的。
其他的开发工具当然还会在相当长的时间里继续他们的旅程,不过在市场份额上,将不可避免地受到冲击。
C#旨在设计成为一种“简单、现代、通用”,以及面向对象的程序设计语言,此种语言的实现,应提供对于以下软件工程要素的支持:
强类型检查、数组维度检查、未初始化的变量引用检测、自动垃圾收集(GarbageCollection,指一种自动内存释放技术)。
软件必须做到强大、持久,并具有较强的编程生产力。
此种语言为在分布式环境中的开发提供适用的组件开发应用。
为使程序员容易迁移到这种语言,源代码的可移植性十分重要,尤其是对于那些已熟悉C和C++的程序员而言。
对国际化的支持非常重要。
C#适合为独立和嵌入式的系统编写程序,从使用复杂操作系统的大型系统到特定应用的小型系统均适用[5]。
2.3VisualStudio2010
VisualStudio是微软公司推出的开发环境。
是目前最流行的Windows平台应用程序开发环境。
VisualStudio2010版本于2010年4月12日上市,其集成开发环境(IDE)的界面被重新设计和组织,变得更加简单明了。
VisualStudio2010同时带来了NETFramework4.0、MicrosoftVisualStudio2010CTP(CommunityTechnology),并且支持开发面向Windows7的应用程序。
除了MicrosoftSQLServer,它还支持IBMDB2和Oracle数据库。
目前有五个版本:
专业版、高级版、旗舰版、学习版和测试版。
在一个组织中,应用程序生命周期管理(ALM)将牵涉到多个角色。
但是在传统意义上,这一过程中的每个角色并不是完全平等的。
VisualStudioTeamSystem2010将坚持打造一个功能平等、共同分担的平台以用于组织内的应用程序生命周期管理过程。
VS作为微软.NETFramework平台开发工具,无论易用性、功能性等各方面,是现时所有开发工具套件中最为出色的,而VS2010更是微软抛离其他对手一个里程碑版本。
微软官方确认VisualStudio2010正式版将在2010年4月12日正式发布,这对软件业以及开发人员将产生重要影响。
VisualStudio是微软公司推出的、目前最流行的Windows平台应用程序开发环境。
VisualStudio2010精心打造了云计算架构,使在线应用软件的开发及应用更为简洁;
在敏捷开发中,VisualStudio2010把Scrum作为基本Agile开发模型,真正实现了方法论,这是VisualStudio的一大成就;
VisualStudio2010搭配Windows7,Silverlight4,在RIA应用、Web应用上有较大切入,使Web应用达到一个新境界;
VisualStudio2010加大了对多核并行运算的支持并且其中的C++IDE增强,可更好支持C++。
顺应新的技术潮流,每年,业界内的新技术和新趋势层出不穷。
通过VisualStudio2010,微软将为开发者提供合适的工具和框架,以支持软件开发中最新的架构,开发和部署。
从VisualStudio的第一个版本开始,微软就将提高开发人员的工作效率和灵活性作为自己的目标。
VisualStudio2010将继续关注并且显著地改进开发者最核心的开发体验。
微软将继续投资于市场领先的操作系统,工具软件和服务器平台,为客户创造更高的价值。
使用VisualStudio2010,将可以在新一代的应用平台上,为你的客户创造令人惊奇的解决方案。
客户将在不同规模的组织内创建应用,跨度从单个部门到整个企业。
VisualStudio2010将确保在这么宽泛的范围内的应用开发都得到支持。
MicrosoftVisualStudio2010采用拖曳式便能完成软件的开发。
简简单单的操作便可以实现一个界面的生成。
但拖曳的界面,也应当有相应的代码来实现功能。
MicrosoftVisualStudio2010支持C#、C++、VB。
可以快速实现相应的功能。
主要特点:
●支持WindowsAzure,微软云计算架构迈入重要里程碑。
●助力移动与嵌入式装置开发,三屏一云商机无限。
●实践当前最热门的Agile/Scrum开发方法,强化团队竞争力。
●升级的软件测试功能及工具,为软件质量严格把关。
●搭配Windows7,Silverlight4与Office,发挥多核并行运算威力,
●创建美感与效能并重的新一代软件。
●支持最新C++标准,增强IDE,切实提高程序员开发效率
2.4摄像头
摄像头(CAMERA)又称为电脑相机,电脑眼,电子眼等,是一种视频输入设备,被广泛的运用于视频会议,远程医疗及实时监控等方面。
普通的人也可以彼此通过摄像头在网络进行有影像、有声音的交谈和沟通。
另外,人们还可以将其用于当前各种流行的数码影像,影音处理。
摄像头可分为数字摄像头和模拟摄像头两大类。
数字摄像头可以将视频采集设备产生的模拟视频信号转换成数字信号,进而将其储存在计算机里。
模拟摄像头捕捉到的视频信号必须经过特定的视频捕捉卡将模拟信号转换成数字模式,并加以压缩后才可以转换到计算机上运用。
数字摄像头可以直接捕捉影像,然后通过串、并口或者USB接口传到计算机里。
电脑市场上的摄像头基本以数字摄像头为主,而数字摄像头中又以使用新型数据传输接口的USB数字摄像头为主,市场上可见的大部分都是这种产品。
除此之外还有一种与视频采集卡配合使用的产品,但还不是主流。
由于个人电脑的迅速普及,模拟摄像头的整体成本较高,而且不能满足BSV液晶拼接屏接口等原因,USB接口的传输速度远远高于串口、并口的速度,因此市场USB接口的数字摄像头。
模拟摄像头可和视频采集卡或者USB视频采集卡配套使用。
摄像头(webcam)一般具有视频摄影/传播和静态图像捕捉等基本功能,它是借由镜头采集图像后,由摄像头内的感光组件电路及控制组件对图像进行处理并转换成电脑所能识别的数字信号,然后借由并行端口或USB连接输入到电脑后由软件再进行图像还原。
摄像头的工作原理大致为:
景物通过镜头(LENS)生成的光学图像投射到图像传感器表面上,然后转为电信号,经过A/D[2](模数转换)转换后变为数字图像信号,再送到数字信号处理芯片(DSP)中加工处理,再通过USB接口传输到电脑中处理,通过显示器就可以看到图像了。
USB具有传输速度快(USB1.1是12Mbps,USB2.0是480Mbps,USB3.0是5Gbps),使用方便,支持热插拔,连接灵活,独立供电等优点,可以连接鼠标、键盘、打印机、扫描仪、摄像头、闪存盘、MP3机、手机、数码相机、移动硬盘、外置光软驱、USB网卡、ADSLModem、CableModem等,几乎所有的外部设备。
2.5C#捕捉摄像头的API接口(avicap32.dll)
avicap32.dll是Windows
API应用程序接口相关模块,用于对摄像头和其它视频硬件进行AⅥ电影和视频的截取,部分C#详细控制视频参数如下:
WM_CAP_START=
WM_USER=1024;
//
start
of
Unicode
messages
WM_CAP_UNICODE_START=
WM_USER+100;
//开始
WM_CAP_GET_CAPSTREAMPTR=
(WM_CAP_START+
1);
//获得
CAPSTR
EAMPTR
WM_CAP_SET_CALLBACK_ERROR=
2);
//设置回调错误
WM_CAP_SET_CALLBACK_STATUS=
3);
//设置回调状态
WM_CAP_SET_CALLBACK_YIELD=
4);
//设置回调出产
WM_CAP_SET_CALLBACK_FRAME=
5);
//设置回调结构
WM_CAP_SET_CALLBACK_ⅥDEOSTREAM=
6);
//设置回调视频
WM_CAP_SET_CALLBACK_WAVESTREAM=
7);
//设置回调视频波
WM_CAP_GET_USER_DATA
=(WM_CAP_START+
8);
//获得使用者数据
WM_CAP_SET_USER_DATA
9)
;
//设置使用者数据
WM_CAP_DRⅣER_CONNECT
10);
//驱动程序连接
WM_CAP_DRⅣER_DISCONNECT
11);
//断开启动程序连接
WM_CAP_DRⅣER_GET_NAME
12);
//获得驱动程序名字
WM_CAP_DRⅣER_GET_VERSION
13);
//获得驱动程序版本
WM_CAP_DRⅣER_GET_CAPS
14);
//获得驱动程序性能
WM_CAP_FILE_SET_CAPTURE_FILE
20);
//设置捕获文件的文件名
WM_CAP_FILE_GET_CAPTURE_FILE
21);
//获得捕获文件的文件名
WM_CAP_FILE_SAVEAS
23);
//另存文件为
WM_CAP_FILE_SAVEDIB
25);
//保存文件
WM_CAP_FILE_ALLOCATE
22);
//分派文件
WM_CAP_FILE_SET_INFOCHUNK
24);
//设置开始文件
WM_CAP_EDIT_COPY
30);
//编辑复制
WM_CAP_SET_AUDIOFORMAT
35);
//设置音频
WM_CAP_GET_AUDIOFORMAT
36);
//捕获音频
WM_CAP_DLG_ⅥDEOFORMAT
41);
//1065打开视频格式设置对话框
WM_CAP_D
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 头像 采集 系统 设计 实现