关于医学信息工程专业2018届本科毕业 设计(毕业论文)的相关规定和要求
各科室、教研室、实验室及研究所:
为加强本科毕业设计(毕业论文)管理工作,突出对本科毕业设计(毕业论文)选题、开题及答辩三个环节的全过程质量监控并使其进一步科学化、规范化,提高学生毕业设计(毕业论文)的质量,根据学校的有关规定,结合学院实际情况,经2017年11月9日学院教学指导委员会讨论通过医学信息工程专业2018届本科毕业设计(毕业论文)的相关规定和要求,请及时通知相关教师及学生,认真贯彻落实。
一、2018届本科毕业设计(毕业论文)总体要求
毕业论文的写作以学生为主体,指导老师适度点拨和指导,最终共同完成。学生应高度重视毕业论文的写作,明确其目的、意义和要求,严格按照学校及学院毕业设计(毕业论文)的有关规定和要求,保质保量地完成毕业设计(毕业论文)。
二、2018届本科毕业设计(毕业论文)进度安排
毕业设计(毕业论文)分为选题、开题、答辩三个阶段:
1、确定毕业设计(毕业论文)选题 2017年11月24日
2、确定指导教师 2017年11月27日—12月1日
3、毕业设计(毕业论文)调研、收集查阅文献,撰写可行性报告 2017年12月2日—24日
4、提交可行性报告与选题审批表 2017年12月25日-12月29日
5、毕业设计(毕业论文)初稿写作 2017年12月30日—3月22日
6、毕业设计(毕业论文)中期检查 2018年3月23日—4月1日
7、毕业设计(毕业论文)修改、定稿 2018年4月2日—5月25日
8、毕业设计(毕业论文)打印与提交 2018年5月26日—5月31日
9、毕业设计(毕业论文)答辩 2018年6月2日—6月3日
10、毕业设计(毕业论文)最终稿装订与提交 2018年6月6日前
三、2018届本科毕业设计(毕业论文)题库
指导教师 | 毕业设计题目 |
李燕 | 基于Android的校园用户移动社交App设计与实现 |
高校食堂用餐信息分析软件的设计与实现 | |
刘珊珊 | 基于MCS-51单片机的压力数据采集 |
智能压力传感器系统设计 | |
武晓东 | IC卡读写系统设计 |
基于单片机的步进电机的控制 | |
柳 春 | 基于CNN的中药叶片识别 |
基于深度学习的图像识别系统 | |
李四海 | 基于卷积神经网络的图像识别 |
网络即时通信系统的设计与实现 | |
任 真 | 病案管理信息系统--网站版(SQL-server、Photoshop、DW、ASP、IIS) |
病案管理信息系统--软件版(Java、myeclipse) | |
张 伟 | 基于PHP的信息工程学院图书资料管理系统设计与开发 |
基于PHP的《计算机应用》在线考试系统的设计与开发 | |
李子荣 | 胸片计算机辅助诊断 |
基于python人脸检测识别 | |
陶维天 | 兰州市居民健康信息平台(系统)设计与实现 |
甘肃中医药大学校友管理系统的设计与实现 | |
宋贤霞 | 基于b/s架构的中医处方管理系统的设计与开发 |
在线图书销售系统的设计与开发 |
四、2019届毕业生要求
依据信息工程学院本科生导师制,要求医学信息工程专业2019届毕业生也同批选题,进行毕业设计(毕业论文)答辩。
附件:甘肃中医药大学信息工程学院本科毕业设计(毕业论文) 指导手册
信息工程学院
甘肃中医药大学信息工程学院 2017年11月20日印发 |
甘肃中医药大学信息工程学院
本科毕业设计(毕业论文)
指导手册
甘肃中医药大学信息工程学院
二○一六年七月
前 言
本科毕业设计(毕业论文),是人才培养方案中设定的重要教学环节,是对大学本科学习阶段所学理论知识的综合运用与检验;是教育与社会实践相结合的重要体现;是培养大学生创新能力、实践能力和创业精神的重要实践环节。 本科毕业设计的水平直接反映了高校的教学水平和人才培养的质量。同时,毕业论文(设计)的质量也是衡量教学水平,学生获得学位的重要依据。为加强本科毕业设计(毕业论文)管理工作,突出对本科毕业设计(毕业论文)选题、开题及答辩三个环节的全过程质量监控并使其进一步科学化、规范化,提高学生毕业设计(毕业论文)的质量,根据学校的有关规定,结合学院实际情况,特制定本手册。
本手册涉及的内容是参照学校有关规定和要求,根据几年来的实际工作及今后的目标制定的,其中一些规定尚属试行,还有待进一步改进和完善。因此,希望各位教师在认真执行的过程中,对发现的问题与不足,及时反馈,以便改进和完善,使本学院本科毕业论文(设计)工作进一步科学化与规范化。
目 录
附件2:甘肃中医药大学本科生毕业设计(毕业论文)选题审批表 28
附件3: 甘肃中医药大学本科生毕业设计(毕业论文)检查指导情况记录表 29
附件4:甘肃中医药大学本科生毕业设计(毕业论文)指导教师审阅意见表 30
附件7:甘肃中医药大学本科生毕业设计(毕业论文)答辩表 33
1. 2016届本科毕业设计(毕业论文)总体要求
1.1 撰写毕业论文的必要性
毕业论文的写作,是学生对本课阶段所学知识的一次系统总结和升华,它是本科专业培养计划中举足轻重的一部分。
毕业论文的写作,也是对学生的创新能力、独立工作能力和自我管理能力的一次重要的锻炼。因为论文的选题、研究的方法、文章的结构、算法的设计、程序的编写、时间的安排,等等,都需要经过学生不懈努力才能够完成,是学生综合实力的一次反映,所以,毕业论文又常常成为未来用人单位或科研院所招聘员工或录取研究生的重要参考。
需要强调的是,毕业论文的写作要以学生为主体,指导老师适度点拨和指导,最终共同完成本科毕业设计!
1.2 毕业论文的内涵
毕业论文是在现有的知识基础上,反映你对知识的理解和进行原创性分析评述的一项学术研究工作的书面沟通形式。
既然是书面沟通形式,它就要求作者必须将自己的思想准确无误地传达给读者,因而必要的格式和标准就是必需的。文章中的语法和文字错误应该尽量避免,并非人所共知的缩略语也不应使用。
既然是研究性质的,简单来说,毕业论文就需要发现些什么。换句话说,毕业论文需要有研究的目标和方向。作为一项学术工作,毕业论文的写作还必须有学术方面的支撑,比如专业数据和资料以及对他人研究成果的引证。同时,毕业论文的研究也不是孤立的,其结果与现有的知识基础的关系应该通过文献综述或者论文中引注等方式反映出来。
在论文中,还必须反映出作者对所研究领域相关知识的理解,用自己的思想和方法(所谓原创性)去探询一切,怀疑一切!所谓大胆设想,小心求证。用严密的理论框架将各种思想和实证结果合乎逻辑地组织起来,对结论进行分析评述。
1.3 进度安排
毕业设计分为选题、开题、答辩三个阶段:
1、确定毕业论文选题 2015年11月1日
2、确定指导教师 2015年11月10日—2015年11月15日
3、毕业设计调研、收集查阅文献 2015年11月16日—2015年11月30日
4、撰写可行性报告 2015年12月1日—2015年12月12日
5、提交可行性报告与选题审批表 2015年12月15日前
6、毕业论文初稿写作 2015年12月16日—2016年3月31日
7、毕业论文中期检查 2016年4月1日—4月10日
8、毕业论文修改、定稿 2016年4月11日—2016年5月20日
9、毕业论文打印与装订、提交 2016年5月21日—2016年5月27日
10、毕业论文答辩 2016年6月1日—2016年6月2日
1.4 对学生的要求
学生应高度重视毕业论文的写作,明确其目的、意义和要求,严格按照学校(学院)毕业设计(毕业论文)的有关规定和要求,保质保量地完成毕业论文。
虚心接受教师的指导。积极主动与指导教师联系和沟通,对毕业论文的进展、遇到的问题及时与指导教师进行交流、探讨,按照指导教师的指导意见进行修正、改进论文,确保文章的质量。
独立完成毕业论文工作,严禁弄虚作假,对抄袭、套用他人成果者,其毕业论文成绩按不及格处理。
严格遵守学院相关工作的规章制度。必须按时完成毕业论文各环节的工作任务,无故未能按时完成的,不得参加答辩,其成绩按不及格处理。
2. 毕业论文的选题
毕业论文的选题对于本科生毕业设计(毕业论文)至关重要。学院将结合专业培养目标、本科教学情况建立统一的毕业设计题库,原则上学生应在该题库范围内进行选题,特殊情况下,可以征得指导老师的同意,报请学院批准后自拟题目。
2.1 确定选题的基本原则
1.应结合自己的兴趣和特长进行选题。
选择毕业论文题目的过程,就是初步进行科学研究的过程。选择一个好的题目,需要经过作者多方思索、互相比较、反复推敲和精心策划。
2.选题可以规划文章的方向、角度和规模,弥补知识储备的不足。一篇毕业论文的题目不仅有确定研究方向、框定研究范围的功能,而且也有助于写作者弥补自身知识储备的不足。撰写毕业论文,是先打基础后搞科研,大学生在打基础阶段,学习知识需要广博一些,在搞研究阶段,钻研资料应当集中一些。而选题则是广度和深度的有机结合。在选题过程中,研究方向逐渐明确,研究目标越来越集中,最后要紧紧抓住论题开展研究工作。对准研究目标,进入研究过程,根据研究的需要来补充、收集有关的资料。只有这样,选题的过程,也成了学习新知识,拓宽知识面,加深对问题理解的好时机。
3.选题应结合自己的实际情况,难易适中。毕业论文的题目切忌过大或过难,否则就难以顺利完成;反之,题目过于容易,又不能较好地锻炼科学研究的能力,达不到写作毕业论文的目的。
2.2 自拟选题的基本原则
1.论题要有价值。
2.题目应注重创新。论文的生命在于创新。创新的含义非常广泛,是指一种新的观点(创立新说),新的论据(新材料),新的补充,新的方法,新的角度。当然,创新也不能完全脱离前人的研究成果,不能离开管理学的主流思想,不能没有创新平台。
3.题目要联系实际,关注热点。
4.题目要大小适宜,深入发掘。
5.选题要适应自己的主客观条件。
6.选题要在本专业范围之内。
3. 毕业论文的开题
3.1 撰写可行性报告
可行性报告是在查阅文献并做好文献综述后的活动,它其实是你写作毕业论文前的一次“预研究”,目的是检验一下你选择的论文题目或者写作大纲是否可行,有没有研究的价值。它主要说明这个课题进行研究的依据,研究条件以及准备如何开展研究等问题。可行性报告是提高选题质量和水平的重要环节,也是本科生提高科研能力的必经之路。可行性报告一般为表格式,它把要报告的每一项内容转换成相应的栏目,这样做,既便于可行性报告按栏目填写,避免遗漏;又便于评审者一目了然,把握要点。
撰写可行性报告,作为多层次科研工作的第一个写作环节,非常重要,撰写可行性报告的目的,是要让指导老师了解:自己为什么要选这个题目,选题的意义何在,自己做这个题目的优势是什么,自己准备怎么做,会出什么结果等等。并请指导老师帮学生做出如下判断:课题所确定的问题有没有研究价值,题目的大小是否合适,所选择的研究途径与方法是否可行等。指导教师可以根据可行性报告的内容及时做出判断,此课题能否这样实施,要不要改变题目或研究方法;学生则可以在得到批准后按可行性报告的安排来开展工作。
如果可行性一旦被批准,课题得以正式确立,则还可以通过它,对立题后的研究工作发生直接的影响:或者作为课题研究工作展开时的一种暂时性指导;或者作为课题修正时的重要依据等。
总之可行性报告是选题阶段的主要文字表现,它实际上成了连接选题过程中备题、可行性、审题及立题这四大环节的强有力的纽带。
3.2 提交选题审批表
可行性报告评审由指导老师和教研室共同完成。
指导教师须对可行性报告的深度、广度及工作量提出具体意见和结论,为教研室的评议提供依据。
可行性报告报告评议结果:
1、通过。论文结构是合理的,内容有自己的创意。学生在听取导师组的意见加以修改后,可开始撰写论文;
2、修改。论文结构不甚合理,或内容陈旧没有创意。学生应根据导师组的意见加以修改,并在一周之内交指导教师审阅认可后,才能开始撰写论文;
3、不通过。未完成可行性报告报告的要求、或论文结构混乱。学生应重新作可行性报告报告。
4.毕业论文的写作
4.1 毕业设计(毕业论文)的类型与体例
4.1.1 论文的类型
信息类本科毕业设计(毕业论文)通常以下面四种类型:
1.完成一个不太大的实际项目或在某一个较大的项目中设计并完成一个模块(如应用软件、工具软件或自行设计的板卡、接口等等),然后以工程项目总结或科研报告、或已发表的论文的综合扩展等形式完成论文。
2.对一个即将进行的项目的一部份进行系统分析(需求分析,平台选型,分块,设计部分模块的细化)。例如对一个大中型企业管理信息系统中的财务部分进行调研,分析和设计等,这类工作可以没有具体编程,但应得到有关方面的初步认可,有一定的工作量。例如打印后有30页以上的报告。
3.对某一项计算机领域的先进技术或成熟软件进行分析、比较,进而能提出自己的评价和有针对性创见。例如XML目前是因特网上新涌现的标记语言,它较HTML有许多无可比拟的优点,其中XML-QL是基于XML提出的一种新型查询语言,分析总结这一新型查询语言并探索它的实现途径是十分有意义的工作。再如对自由软件数据库系统MySQL,分析总结其在Web应用上的特色,并能将有关技术用于自己研制的系统中。这类工作要注意把分析和实验相结合,不要只停留在消化上。消化是前提,吸收和转化才是工作的重点。
4.对某一个理论问题有一定见解,接近或达到了在杂志上发表的水平。例如,解决了一个众所周知的问题,纠正了某杂志上理论的错误且提出解决修正方案,或自己提出有意义的模型,定义,且有定理、命题、或性能比较、分析、测试报告等。涉及的是计算机信息管理专业内容——管理信息系统,则应包括什么管理信息系统及其系统建设的经验教训、开发方法等内容。
4.1.2 论文的结构
依据上述的论文类型,由于各类工作特点的不同,在搜集整理论文的素材、组织安排论文的结构方面,应有所不同,做到有的放矢。
1.系统实现型论文:重点收集整理系统体系结构,程序模块调用关系,数据结构,算法,实验或测试等内容,论文结构一般安排如下:
(1)引言或背景 (概述题目背景,实现情况,自己开发内容或模块)
一般谈课题意义,综述已有成果,如”谁谁在文献某某中做了什么工作,谁谁在文献某某中有什么突出贡献“,用“但是”一转,分析存在问题,引出自己工作必要性、意义和价值、创新点和主要思想、方法和结果。然后用“本文组织如下:第二节第三节.... ,第四节....." 作为这段结束。
(2)系统体系结构(强调系统的整体性,突出自己工作在整体中的位置)
(3)主要实现功能的描述(包括模块调用关系,数据结构,算法说明,依据内容多少此部分可安排两到三节)
(4)实验或测试
(5)总结
2.应用开发型论文:重点收集整理应用项目的背景分析,需求分析,平台选型,分块,设计部分模块的细化,使用的开发工具的内容。论文结构一般安排如下:
(1)引言(重点描述应用项目背景,项目开发特色,工作难度等)
(2)项目分析设计(重点描述项目的整体框架,功能说明,开发工具简介等)
(3)项目实现(重点描述数据库设计结果,代码开发原理和过程,实现中遇到和解决的主要问题,项目今后的维护和改进等,此部分可安排两到三节)
(4) 总结
3.分析比较型论文:重点收集整理有关的最新论文或软件,分析比较心得,实验数据等内容。论文结构一般安排如下:
(1)引言(重点描述分析对象的特点,分析比较工作的意义,主要结果等)
(2)分析对象的概括性描述
(3)分析比较的主要结果(如果是技术分析,给出主要数据,如果是软件分析,给出代码分析结果,实验过程等)
(4) 分析比较的评价和系统应用(可以给出基于分析比较的结果,提出某些设计实现方案,和进行一些实验工作
(5)结论
4.理论探索型论文:重点收集整理问题的发现,解决问题所用到的基本知识,解决问题的独特方法,定理证明,算法设计和分析。论文结构一般安排如下:
(1)引言(重点描述要解决的问题的来源,难度,解决问题的主要方法等)
(2)基本知识(解决问题涉及的基本定义,定理,及自己提出的概念等)
(3)推理结论(给出问题解决方案,包括定理证明,算法设计,复杂性分析等)
(4)结论
上述论文结构的安排和划分不是绝对,可依据各自工作的实际情况,采用某一种或某几种混合的方式指导自己论文的写作。但无论采用什么样的结构,一定要作到心中有数,贯穿一条逻辑线索,切不可泛论成文或堆砌成文,时刻突出自己的工作内容。
4.2毕业论文撰写内容及要求
4.2.1 毕业设计(毕业论文)的基本要求
毕业设计(毕业论文)基本结构是:1.封面;2.中文摘要及关键词;3.英文摘要及关键词;4.目录;5.论文正文;6.参考文献。相关领域研究内容的综述。如果有必要,还可以加上注释、符号说明、附录、致谢等内容。
毕业设计(毕业论文)必须用汉语撰写,理论研究性论文字数一般不得少于10000字,设计性论文一般不得少于15000字。论文内容应层次分明,数据可靠,文字简练,说理透彻,推理严谨,立论正确。
4.2.2 毕业设计(毕业论文)的内容要求
1.论文题目
题目应恰当、准确地反映本论文的中心内容。一般不得超过20个汉字。
2.中文摘要及关键词
摘要是论文内容的简要陈述,是一篇具有独立性和完整性的短文。摘要应包括本论文的基本内容、研究方法、成果及其理论与实际意义。要突出本科毕业设计(毕业论文)中具有创新性的成果和新见解的部分。语言力求精练。字数以300—500字为宜,摘要中不宜使用公式、图表,不标注引用文献编号。以第三人称对文中观点进行概括和提炼,避免以“作者指出”等类词语表述,要避免将摘要写成目录式的内容介绍。
目前科技期刊的论文摘要均要求按结构式摘要的格式书写,即明确写出目的、方法、结果、结论四部分。针对部分作者在摘要写作中存在的不足,对文摘编写详细说明如下,以供写作时参照。
目的:简介研究背景或目的,用一、两句话概括,不要简单重复文题中已有的信息。
方法:简述研究所用原理、条件、材料、对象和方法,并说明有无对照、病例或实验次数。
结果:实验的、研究的结果、数据,所得数据需经统计学处理。
结论:结果的分析、比较、评价、应用,并说明得到何种启发或提出问题及展望。
在摘要的写作中应注意的问题:①客观如实地反映所做的研究或工作,不加作者的主观见解、解释或评论;②着重反映新内容和作者特别强调的观点;③排除在本学科领域已成常识的内容;④用第三人称的写法,应采用“对……进行了研究”、“报告了……现状”、“进行了……调查”等记述方式,而不使用“本文”、“我们”、“作者”等作为主语;⑤采用规范化名词术语(包括地名、机构名和人名);⑥缩略语、略称、代号,除非本专业读者能清楚理解,否则首次出现时不论中、英文均应给出全称;⑦应采用国家颁布的法定计量单位;⑧注意正确使用简化字和标点符号。
关键词是供检索用的主题词条,应采用能覆盖论文主要内容的通用技术词条(参照相应的技术术语标准)。关键词一般列3~5个,应该尽量从《汉语主题词表》中选用。
3.英文摘要及关键词
英文摘要内容应与中文摘要基本相对应,以100个左右单词为宜,要符合英语语法,语句通顺,文字流畅。既可以与中文摘要对应地加以翻译,亦可概括地加以翻译。
英文关键词与中文关键词应一一对应。
4.目录
目录应将文内的章节标题依次排列,标题应该简明扼要,各级标题有较显著区别。具体要列出论文的大标题、一级和二级标题,逐项表明页码。目录中层次一般不超过3级。
5.论文正文
论文正文是主体,毕业设计写作形式可因科研项目的性质不同而变化,一般可包括理论分析、计算方法、实验装置和测试方法,经过整理加工的实验结果分析和讨论,与理论计算结果的比较以及本研究方法与已有研究方法的比较等。毕业设计(毕业论文)正文包括绪论、论文主体及结论等部分。
(1)绪论
绪论一般作为第1章。绪论应包括:本题目的来源、题目的学术背景及其理论与实际意义;国内外文献综述;相关领域的工作进展及成果、存在的不足或待深入讨论的问题;论文的主要工作内容及论文的结构安排。绪论内容一般在3000-5000字左右。
(2)论文主体
论文主体是论文的主要部分,应该结构合理,层次清楚,重点突出,文字简练、通顺。
论文应包括对要讨论的问题的深入论述及分析,比较研究,模型或方案设计,案例论证或实证分析,模型运行的结果分析或建议、改进措施等。注意定性与定量的结合、理论与实际的结合。
偏重理论研究的论文应对问题有较全面的理论分析和验证。对论文的工作内容及成果应进行较全面、客观的理论阐述,指出对研究内容中的改进与实际应用之处。
偏重信息系统设计与开发的论文应包括对系统的详细系统分析、设计、与系统实现的关键技术的讨论等。
(3)结论
论文的结论作为论文正文的最后一章单独排写,但不加章号。
结论是对整个论文主要工作成果的总结。如果论文中有创造性成果或创新点理论(含新见解、新观点),则在结论中应明确指出,并对其应用前景和社会、经济价值等加以预测和评价,还应指出今后进一步工作的展望与设想。结论内容一般在400—1000字以内。
6.注释
它是对论文正文中某一特定内容的进一步解释或补充说明,用圆圈标注①②,置于当页底脚。
7.参考文献
论文的参考文献数一般应不少于15篇,其中外文文献一般不少于总数的1/3。参考文献中近五年的文献数一般应不少于总数的1/3,并应有近两年的参考文献。
教材、各种报纸上刊登的文章及未公开发表的研究报告等通常不宜做为参考文献引用。
引用网上参考文献时,应注明该文献的准确网页地址,网上参考文献不包含在上述规定的文献数量之内。
参考文献应按文中引用出现的顺序列出,只列出作者直接阅读过、在正文中被引用过的文献资料,一律列在正文的末尾。特别在引用别人的科研成果时,应在引用处加以说明,严禁论文抄袭现象发生。
8.附录
主要列入正文内过分冗长的公式推导,供查阅方便所需的辅助性数学工具或表格;重复性数据图表;论文使用的缩写、程序全文及说明等。论文的附录依次为附录1,附录2……编号。附录中的图表公式另编排序号。
9.致谢
对给予各类资助、指导和协助完成研究工作以及提供各种对论文工作有利条件的单位及个人表示感谢。致谢应实事求是,切忌浮夸与庸俗之词。
4.3 毕业论文的格式要求
1.封面
封面是对论文题目、指导教师、单位(系)等较详细的说明。指导老师最多二人:如果有外单位的指导老师,则放在第一个,中间空二格。
2.摘要
(1)论文的摘要(包括关键字)要求用中、英文两种文字分别给出。
(2)中文和英文摘要若能在一页内排完。按照摘要后跟关键词,空一行后写Abstract,接着是Keywords。如果一页不能排完,中文摘要+中文关键词一页,Abstract+Keywords一页。编排上中文在前。
(3)摘要(中文黑体,外文用Time New Roman,加粗;内容中文用楷体,外文用Time New Roman,全部采用五号字体),中文摘要在300-500汉字,英文摘要应与中文摘要基本相对应。
(4)摘要页不需写出论文题目。“摘 要”两个字之间空一格,居中。
(5)格式: 摘 要 (中文黑体五号)
然后隔行书写摘要的正文部分。摘要正文之后隔一行顶格书写:
【关键词】关键词1└┘关键词2└┘关键词2 (各个关键词之间空一格)
【Keywords】同上 (英文摘要的关键词通常应用小写,各个关键词之间空二格)
(6)无页码,无页眉。
3.目录
目录应包括论文中全部章、节、目三级标题及其页号(目录应自动生成),含:
摘要
Abstract
正文章节题目(要求编到第3级标题,即×.×.×。一级标题顶格书写,二级标题缩进一格,三级标题缩进两格。)
参考文献
附录
致谢
4.论文正文
(1)正文中不写论文题目。直接从第一章开始。论文正文分章节撰写,每章应另起一页。
各章标题要突出重点、简明扼要。字数一般应在15字以内,不得使用标点符号。标题中尽量不采用英文缩写词,对必须采用者,应使用本行业的通用缩写词。五号黑体,居中。
(2)层次
层次以少为宜,根据实际需要选择。层次要求统一,但若节下内容无需列条的,可直接列款、项。具体用到哪一层次视需要而定。一般不超过4级。各层次题序及标题不得置于页面的最后一行(孤行)。正文层次的编排建议用表5-1所示格式。
表5-1 层次代号及说明
层次名称 | 示 例 | 说 明 |
章 | 第1章└┘□□……□ | 章序及章名居中排,章序用阿拉伯数字 五号黑体,居中 |
节 | 1.1└┘□□……□ | 题序顶格书写,与标题间空一格,下面阐述内容另起一段五号宋体 |
条 | 1.1.1└┘□□……□ | |
款 | 1.1.1.1└┘□□……□└┘□□……□□ □ □…… | 题序顶格书写,与标题间空一格,下面阐述内容在标题后空一格接排 |
项 | └┘└┘1.□□…□└┘□□…□□…□□ □□…… | 题序空二格书写,以下内容接排 |
(3)正文内容用五号宋体;外文用Time New Roman,标题加粗。行距1.5倍,段距0行,标题与内容之间无段间距。每段首行缩进二个字符。
(4)正文每一页加页眉:“甘肃中医药大学本科毕业设计(毕业论文)”,小五宋体居中。从正文第一页编页码,只给数字,靠右对齐。
5.引用文献
正文中引用文献的标示应置于所引内容最后一个字的右上角,所引文献编号用阿拉伯数字置于方括号“[ ]”中,用小4号字体的上角标。例如:棉酚对人类的抗生育效果达99%[1] ……;
当提及的参考文献为文中直接说明时,则用小4号字与正文排齐,如“由文献[8,10~14]可知”。
同一处引用多篇文献时,将各篇文献的序号在方括号中全部列出,各序号间用“,”;如遇连续序号,可标起讫号“-”。例如:......形成了多种数学模型[7,9,11-13]......;
同一文献在论著中被引用多次,只编1个号,引文页码放在“[ ]”外,文献表中不再重复著录页码。例如:间质细胞CAMP含量测定[3]101-108......。
不得将引用文献标示置于各级标题处。
6.名词术语
全文名词术语必须标准、统一。采用英语缩写词时,除本行业广泛应用的通用缩写词外,文中第一次出现的缩写词应该用括号注明英文原词。
7.数字
除习惯用中文数字表示的以外,一般均采用阿拉伯数字。
8.公式
公式原则上应居中书写。若公式前有文字(如“解”、“假定”等),文字空两格写,公式仍居中写。公式末尾不加标点。
公式序号按章编排,如第1章第一个公式序号为“(1-1)”,又如附录2中的第一个公式为(2-1)等。
文中引用公式时,一般用“见式(1-1)”或“由公式(1-1)”。
公式序号的右侧与右边线顶边排写。
公式较长时最好在等号“=”处转行,如难实现,则可在+、-、×、÷运算符号处转行,转行时运算符号仅书写于转行式前,不重复书写。
公式中第一次出现的物理量代号应给予注释,注释的转行应与破折号“——”后第一个字对齐。破折号占二个字,格式见下例:
式中└┘————试样断裂前的最大扭矩();
————试样断裂时的单位长度上的相对扭转角
公式中应注意分数线的长短(主、副分线严格区分),长分数线与等号对齐,如:
9.插表
(1)表题及表中说明
每个表格均应有表题(由表序和表名组成)。表序一般按章编排,如第1章第一个插表的序号为“表1-1”等。表序与表名之间空一格,表名中不允许使用标点符号,表名后不加标点。表题置于表上,用中文文字居中排写,要求用5号宋体字。
(2)表格编排
表格不加左、右边线。
表头设计应简单明了,尽量不用斜线。
全表如用同一单位,则将单位符号移至表头右上角,加圆括号。
表中数据应准确无误,书写清楚。数字空缺的格内加横线“-”(占2个数字宽度)。表内文字或数字上、下或左、右相同时,采用通栏处理方式,不允许用“〃”、“同上”之类的写法。
表内文字说明,起行空一格、转行顶格、句末不加标点。
紧靠表题的上面一行和紧靠表的下面一行均应为空白行。
(3)表格示例
表1-1 合金钢的化学成分与力学性能
材料名称 | 化学成分(%) | 力 学 性 能 | |||||||
C | Mn | Cr | 其它 | 抗拉强度 N/mm2 | 屈服点 N/mm2 | 弹性模量 N/mm2 | 伸长率 % | 布氏硬度① HBS | |
… |
10.插图
插图应与文字紧密配合,文图相符,内容正确。选图要力求精练。
(1)图题及图中说明
每个图均应有图题(由图号和图名组成)。图号按章编排,如第1章第一个插图的图号为“图1-1”等。图题置于图下,用中文字居中书写,要求用5号宋体字,图与图题之间无空白行。有图注或其它说明时应置于图题之上。图名在图号之后空一格排写。引用图应注明出处,在图题右上角加引用文献号。图中若有分图时,分图题置于分图之下,分图号用a)、b)等表示。
(2)插图编排
插图之前,文中必须有关于本插图的提示,如“见图1-1”、“如图1-1所示”等。插图与其图题为一个整体,不得拆开排写于两页。插图处的该页空白不够排写该图整体时,则可将其后文字部分提前排写,将图移到次页最前面。
紧靠图题的下面一行和紧靠图的上面一行均应为空白行。
(3)插图示例
图1-3 中国宽带用户数量增长
11.参考文献
(1)参考文献的类型
参考文献(即引文出处)的类型以单字母方式标识,具体如下:
M——专著 C——论文集 N——报纸文章 J——期刊文章
D——学位论文 R——报告 S——标准 P——专利
A——文章
对于不属于上述的文献类型,采用字母“Z”标识。
常用的电子文献及载体类型标识:
[DB/OL]——联机网上数据(database online)
[DB/MT]——磁带数据库(database on magnetic tape)
[M/CD]——光盘图书(monograph on CDROM)
[CP/DK]——磁盘软件(computer program on disk)
[J/OL]——网上期刊(serial online)
[EB/OL]——网上电子公告(electronic bulletin board online)
(2)参考文献著录格式要求及示例
在文后参考文献表中,各文献按正文部分标注的序号依次列出。
1)专著
序号└┘主要责任者.题名:其他题名信息[文献类型标志].其他责任者.版本项.出版地:出版者,出版年:引文页码[引用日期].获取和访问路径.
示例:
[1] 余敏 .出版集团研究[M].北京:中国书籍出版社,2001:179-193.
[2] 昂温 G,昂温PS.外国出版史[M].陈生铮,译.北京中国书籍出版社,1988.
[3] 全国文献工作标准化技术委员会第七分委员会.GB/T 5795-1986 中国标准书号[S]北京:中国标准出版社. 1986
2)专著中的析出文献
序号└┘析出文献主要责任者.析出文献题名[文献类型标志].析出文献其他责任者//专著主要责任者.专著题名:其他题名信息.版本项.出版地:出版者,出版年:析出文献的页码[引用日期].获取和访问路径.
示 例 :
[l] 程根伟.1998年长江洪水的成因与减灾对策仁M]//许厚泽,赵其国.长江流域洪涝灾害与科技对策.北京:科学出版社,1999; 32 -36.
[2] 陈晋镶,张惠民,朱士兴,等.蓟县震旦亚界研究〔M]//中国地质科学院天津地质矿产研究所.中国震旦亚界.天津:天津科学技术出版社,1980;56-114.
[3] 白书农.植物开花研究「M]//李承森.植物科学进展.北京:高等教育出版社,1998;146-163.
3)连续出版物
序号└┘主要责任者题名:其他题名信息[文献类型标志].年,卷(期)-年,卷(期) 出版地:出版者,出版年[引用日期].获取和访问路径.
示 例 :
[1] 中国地质学会.地质论评「J1.1 936,1(1)-.北京:地质出版社,1936-.
[2] 中国图书馆学会.图书馆学通讯[J].1 957(l)-1990(4).北京:北京图书馆,1957-1990.
[3] American Associationf ort heA dvancemento fS cience.S cience[ J].1 883,1(1)一Washington,D.C.:American Association for the Advancement of Science, 1883-.
4)连续出版物中的析出文献
序号└┘析出文献主要责任者.析出文献题名[文献类型标志].连续出版物题名:其他题名信息,年,卷(期):页码[引用日期].获取和访问路径.
示 例 :
[1] 李晓东,张庆红,叶瑾琳.气候学研究的若干理论问题[J].北京大学学报:自然科学版,1999,35(1):101-106.
[2] 刘武,郑良,姜础.元谋古猿牙齿测量数据的统计分析及其在分类研究上的意义〔J].科学通报,1999,44(23); 2481 -2488.
[3] 傅刚,赵承,李佳路.大风沙过后的思考[N/OL].北京青年报,2000-04-12(14) [2005-07-12].http://www.bjyouth.com .cn/Bgb/20000412/GB/4216%5ED0412B1401.htm
[4] 莫少强.数字式中文全文文献格式的设计与研究[J/OL].情报学报,1999,18(4):1-6[2001-07-081.http://periodical.wanfangdata.com.cn /periodical/gbxb/qbxb99/qbxb9904/990407.htm.
5)专利
序号└┘专利申请者.专利题名.其他责任者.附注项.专利国别,专利文献种类,专利号.出版日期
示 例:
[1] 姜锡洲.一种温热外敷药制备方案:中国,88105607.3[P].1989-07-26.
6)电子文献
序号└┘主要责任者.题名:其他题名信息[文献类型标志/文献载体标志].出版地:出版者,出版年(更新或修改日期)[引用日期].获取和访问路径.
示 例 :
[1] PACSL;the publiccess computer systems for um[EB/OL].Houston,Tex;University of Houston Libraries,1989 [1995-05-17].http,//info.lib.uh.edu/pacsl.html.
7)会议录、论文集
序号└┘作者.文章名.编者名.会议名称,会议地址,年份.出版地,出版者,出版年:引用部分起止页
示 例:
[1] 中国力学学会.第3届全国实验流体力学学术会议论文集[C].天津:[出版社不祥],1990.
8)学位论文
序号└┘研究生名.学位论文题目.学校及学位论文级别.答辩年份:引用部分起止页
示 例:
[1] 王斌.稀土β—二酮混配合物的光谱和晶体结构[D].北京:北京师范大学化学系,1992.
12.附录
对需要收录于论文中且又不适合书写于正文中的(要求的)译文、程序清单、附加数据、资料、详细公式推导等有特色的内容,可作为附录排写,序号采用“附录1”、“附录2”等。
4.4 毕业论文装订要求
毕业设计(毕业论文)的装订顺序是:封面、中文摘要及关键词、英文摘要及关键词、目录、论文正文、参考文献、附录、致谢、文献综述。
5. 毕业论文的答辩
毕业设计(毕业论文)答辩是审查论文的一种补充形式。目的是综合检验学生在校期间对所学专业的基本知识、基本技能的掌握情况,检查学生是否达到本专业人才培养基本要求,综合衡量学生毕业设计(毕业论文)的质量和水平,尽可能防止在毕业设计(毕业论文)中的抄袭和弄虚作假。
5.1 答辩程序及要求
1.答辩资格
学生完成毕业论文(设计)课题规定的各项任务,指导教师写出审阅评语和评分。经指导教师审阅后的毕业论文(设计)材料及评分意见送答辩小组评阅老师交叉评阅,写出评阅意见和评分。
只有指导老师和评阅教师的论文评定成绩均为60分以上者,方可参加毕业答辩,否则不能参加答辩。
2.答辩程序
①学生陈述;②答辩小组提出问题;③学生认真准备后回答问题;④答辩小组评分。此外,系统开发的学生一般首先要演示开发的软件系统。
每位同学答辩时间为15-25分钟。
3.答辩成绩评定标准
答辩成绩参考评定标准如表6-1。
表5-1 信息工程学院本科毕业论文(设计)答辩参考评定标准
序号 | 评审项目 | 指 标 | 满分 |
1 | 报告内容 | 思路清新;语言表达准确,重点突出;概念清楚,方法正确,论据充分,分析归纳合理;结论有应用或参考价值。 | 40 |
2 | 报告过程 | 准备工作充分,时间符合要求。 | 10 |
3 | 创新 | 对前人工作有改进、突破,或有独特见解。 | 20 |
4 | 答辩 | 回答问题有理论依据,基本概念清楚。主要问题回答准确、深入。 | 30 |
5.2 怎样做答辩用POWERPOINT
学生陈述时间一般为10-15分钟,把自己的工作内讲出来,是对综合能力、表达能力的挑战。做好幻灯片是答辩好的重要环节。一般有下列要点:
(1)每页8-10行字或一幅图。只列出要点,关键技术。
(2)毕业设计(毕业论文)要突出自己的工作,不要在背景,前人工作上花过多时间。篇幅可以大致分配如下:
提纲:1页,
背景:1-2页,
提出问题,分析问题:5页,
解决问题,10—15页,
小结:1页,主要成果,工作,程序量,效益等等。
(3)演讲者大约一分钟讲2页。听众一分钟可以看完4-5页。因此不能完全照着念。要用口语化的语言,讲演式的语言。
(4)充分利用图形,可以在较短时间内传递较多信息。
(5)有些细节,如算法,可以全部用小字写在一页上,用红色标出特别重要的几个句子,讲解时可以快速"闪"过(20秒),"算法如此页","要点是...",讲思想,介绍方法,讲关键。听众可以在较短时间内了解大意。
(6)10-15分钟的报告,准备20-22页即可。
5.3 答辩注意事项
毕业设计(毕业论文)答辩,是面对面与评委们的交流,是评委们对同学们毕业设计(毕业论文)的认定与评价,主要考核同学们语言表达能力、对问题的说明能力。
同学们在参加答辩之前,应确保完成各项准备工作,包括按要求装订毕业设计(毕业论文)、列写答辩提纲、制作展示挂图等等,这一切都是为了给参加答辩作好物质上的准备。
物质上进行了准备,对毕业设计(毕业论文)答辩的精神准备也要充分。重要的一条就是要消除紧张心理。绝对不能一见到评委会的“阵势”就什么也不会说了。特别是一旦评委指出了文中存在的一些错误,就不知所措、无言以对。请同学们记住,在这种情况下,要稳住阵脚,继续着眼于问题本身,可以回答:“您指出的错误确实存在,因条件所限,未能及时发现与改正,在今后的工作中将加以改正,感谢您的提醒。”显得大方得体,有利于对问题的继续陈述。
同学们对评委的各项提间、质疑,一定要做到有问必答、一针见血,切忌答非所问、不懂装懂。答辩过程是展现自己才华的一个好机会,应予以重视。
6. 毕业论文的成绩评定
毕业设计(毕业论文)的成绩评定以学生的学风、论文质量和答辩水平为依据,既看学生基本理论、基本技能掌握的程度,又要看学生的创造力、分析和解决实际问题的能力,并重视学生答辩时的表达能力和其它有关情况。
6.1 毕业设计(毕业论文)成绩的结构比例
毕业设计(毕业论文)成绩采取“结构分”进行成绩的综合评定。“结构分”由指导教师评分、评阅人评分、答辩小组评分组成。三部分的比例为4:2:4。综合评定成绩以百分计,按优秀(90-100分)、良好(70-89分)、合格(60-70分)和不合格(60分以下)给定。其中优秀毕业设计(毕业论文)数量不超过15%。
6.2 毕业论文的评判标准
(1)优秀:能独立圆满完成毕业论文(设计)各项任务,并在某些方面有独特的见解或创新,其成果有一定的理论意义或实用价值;毕业论文内容完整、概念清楚、论述详尽、计算正确、层次分明、书写规范;答辩思路清晰,论点正确,回答问题有理论根据,对主要问题回答正确、深入。
(2)良好:按期圆满完成毕业论文(设计)规定的任务;能较好地运用所学理论和专业知识;分析问题比较正确全面,能提出解决问题的意见,毕业论文原始资料基本齐全,能较好地进行加工整理;答辩思路清晰,论点基本正确,能正确地回答主要问题。
(3)合格:在教师指导帮助下,能按期完成毕业论文(设计)任务,毕业论文(设计)内容基本完整,论述及计算无原则性错误,书写基本规范,书写文理通顺,有一定的独立工作能力,工作表现好,答辩时能回答所提出的主要问题,且基本正确。
(4)不合格:未按期完成毕业论文(设计)任务;或基本概念和基本技能未掌握,在运用理论和专业知识中出现不应有的原则错误;毕业论文(设计)书写不够规范,文理不通,答辩时逻辑混乱、概念不清,对主要问题回答有错误,或回答不出。
6.3 其他要求
学生的毕业论文成绩是在学生按照学院的要求,提交所有必要的文档以后才能获得。学生必须按照学校的要求装订提交论文一式三份,还要提交相应的电子文档:
开题报告书;文献综述;毕业论文;答辩PPT;实习报告;开发系统的同学还需要额外提交:全部程序源代码;简单的程序说明书(安装,用户名,密码)
上述纸质和电子文档交指导老师。
7. 附件:毕业设计(毕业论文)相关规范性
附件1:甘肃中医药大学本科生毕业论文题库
基于Android的在线音乐播放器的设计与实现
基于Android平台的即时通信系统的设计与实现
基于B/S模式的运动会管理系统
基于java的学生成绩管理系统的设计及实现
基于工作流的办公系统设计与实现
基于PHP医药商务系统设计与实现
信息工程学院学生考勤管理系统开发
基于PHP电子政务系统设计与实现
搜索引擎的研究与实现
教师工作量管理系统的设计与开发
数据挖掘技术在超市销售系统的应用研究
操作系统中基本分页存储管理方式研究与模拟实现
甘肃中医药大学大型仪器设备共享平台的设计与实现
社区医院信息系统的规划与设计
中小医院住院管理系统的设计与实现
毕业设计课题管理系统的设计与实现
基于Web的即时通信系统设计与实现
基于安卓的个性化医疗信息管理平台的设计与实现
基于WEB的电子病历查询系统的设计与实现
图书管理系统的设计与实现
中小企业人事管理系统的设计与实现
基于WEB技术的网络考试系统的设计与实现
网上书店的设计与实现
医疗器械行业电子商务平台的设计与实施
聚类算法在中药质量评价中的应用研究
基于Apriori算法的中医方剂关联规则挖掘与辅助诊断
基于数据挖掘技术的学生成绩分析系统
云计算在桌面虚拟化方面的应用现状与发展展望
基于PHP的医院信息管理系统
基于PHP的信息查询系统
基于PHP的考试系统的设计和实现
区域卫生信息化建设模式与研究
医院数据集成分析
穿戴式设备在医疗中的应用研究
个性化医疗/个人化医疗应用研究
医院临床数据挖掘分析研究(单病种或病系)
社区居民电子健康档案数据挖掘分析研究
8位数码管显示电路及程序
数据的输入和存储数字电路设计
基于WAMP技术的校园二手信息平台设计
基于Android平台的电子书架设计
基于Android平台的选票系统设计
附件2:甘肃中医药大学本科生毕业设计(毕业论文)选题审批表
甘肃中医药大学
本科生毕业论文(设计)选题审批表
姓 名 | 学号 | ||||
系部(院) | 专业 | 年级 | |||
指导老师 姓 名 | 所在 单位 | 职称 | |||
论文题目 | |||||
选题理由及准备情况
申报人: 年 月 日 | |||||
指导教师意见:
指导教师签名: 年 月 日 | |||||
院部审查意见:
系部 (院)(盖章) 年 月 日 |
附件3: 甘肃中医药大学本科生毕业设计(毕业论文)检查指导情况记录表
甘肃中医药大学
本科生毕业论文(设计)检查指导情况记录表
指导老师对学生论文指导过程记录 | ||
时间 | 讨论内容(包括存在的问题和改进措施) | 指导老师签名 |
附件4:甘肃中医药大学本科生毕业设计(毕业论文)指导教师审阅意见表
甘肃中医药大学
本科生毕业论文(设计)指导教师审阅意见表
姓 名 | 学号 | ||||
系部(院) | 专业 | 年级 | |||
指导老师 姓 名 | 职称 | 论文得分 | |||
论文题目 | |||||
指导教师审阅意见:(含是否同意答辩)
指导老师签名: 年 月 日 |
附件5:甘肃中医药大学本科生自然科学类论文评阅评分表
甘肃中医药大学本科生自然科学类论文评阅评分表
指标 | 权重 | 评分要素 | 评判分数 | 分数 |
选题 | 10% | 选题来自生产实践第一线或学科前沿,有较强理论意义或实用价值,创新性强 | 10分 | |
选题有较大理论意义或实用价值,较有新意 | 8-9分 | |||
选题有一定理论意义或实用价值 | 6-7分 | |||
选题脱离生产实践,基本没有理论意义或实用价值 | <6分 | |||
文献综述 | 10% | 有比较完善的文献综述,能全面地反映该学科及相关领域的发展状况,归纳总结正确 | 8-10分 | |
有文献综述,基本能反映该学科发展的状况 | 5-7分 | |||
缺少文献综述 | <5分 | |||
论文体现的科学技术水平与实际能力 | 30% | 设计合理,理论分析与计算正确,实验数据正确,有较强的实际动手能力 | 25-30分 | |
设计比较合理,理论分析与计算基本正确,实验数据基本准确,实际动手能力尚可 | 20-24分 | |||
设计基本合理,理论分析与计算无大错,实验数据无原则差错,实际动手能力较差 | 10-19分 | |||
设计不合理,理论分析与计算有原则错误,实验数据不可靠,实际动手能力差 | <10分 | |||
论文 体现作者研究成果与专业知识 | 30% | 对研究的问题能较深刻分析或者有独 到见解,成果突出,反映出作者很好地掌握了有关基础理论和专业知识 | 25-30分 | |
对研究的问题能提出个人的见解,成果有一定意义,反映出作者基本掌握了有关基础理论和专业知识 | 20-24分 | |||
提不出各人的见解,未取得什么成果,反映出作者基础理论和专业知识掌握得不扎实 | <20分 | |||
写作与总结提炼能力 | 20% | 结构严谨,逻辑严密,语言流畅;表达准确,简明扼要;层次清晰,重点突出 | 18-20分 | |
基本达到上述要求 | 15-17分 | |||
尚未达到上述要求 | <15分 | |||
总 计 得 分 |
附件6:甘肃中医药大学本科生社会科学类论文评阅评分表
甘肃中医药大学本科生社会科学类论文评阅评分表
指标 | 权重 | 评分要素 | 评判分数 | 分数 |
选题 | 10% | 选题有重要理论意义和现实意义,富有创新性 | 10分 | |
选题有一定的理论意义和现实意义,有新意 | 6-9分 | |||
选题缺乏新意,价值不大 | <6分 | |||
文献综述 | 10% | 有比较完善的文献综述,能全面地反映该学科及相关领域的发展状况,归纳总结正确 | 8-10分 | |
有文献综述,基本能反映该学科发展的状况 | 5-7分 | |||
缺少文献综述 | <5分 | |||
学术水平 | 30% | 论文有独到见解,对某些问题有较深刻的分析,有较高的学术水平或实用价值 | 27-30分 | |
论文有一定的见解,或对某一问题分析较深,有一定的学术水平或实用价值 | 24-26分 | |||
论文能提出自己的看法 | 18-23分 | |||
论文中自己的见解不多 | <18分 | |||
研究能力 | 30% | 论点鲜明,论据确凿,论文表现出较强的研究问题的能力 | 27-30分 | |
论点正确,论据可靠,对事物有一定研究能力 | 24-26分 | |||
观点正确,但论文缺乏一定的深度 | 18-23分 | |||
能对观点进行一定的论述,但缺乏分析概括能力和研究能力 | <18分 | |||
写作与总结提炼能力 | 20% | 结构严谨,逻辑严密,语句优美、流畅;层次清晰,详诺得当 | 18-20分 | |
基本达到上述要求 | 15-17分 | |||
尚未达到上述要求 | <15分 | |||
总 计 得 分 |
附件7:甘肃中医药大学本科生毕业设计(毕业论文)答辩表
系部(院) 专业 第 组
答辩时间 | ||||||||
答辩小组 成员(签名) | ||||||||
第 号答辩学生姓名 | 学 号 | |||||||
论文题目 | ||||||||
答辩记录: | ||||||||
答辩能力(阐述论文的主要内容,简明扼要、重点突出、能准确流利回答问题) | 评估等级 | |||||||
优秀 | 良好 | 合格 | 不合格 | |||||
综合评语:
答辩成绩: 分 系部(院)盖章: 年 月 日 |
8. 范文参考
毕业设计(毕业论文)参考范文
论文题目:网上店铺导航网站语音服务的设计与实现
网上店铺是依靠因特网进行交易的虚拟商店,导航网站是为了方便网民快速获取所需要的信息而提供导向服务的网站。语音是人类最自然的交互方式,在导航网站中嵌入语音导航服务,使得网民在浏览商品时,可以听到商品信息的语音介绍,让网民很快对商品的情况有所了解,迅速做出选择。
本文介绍了如何利用微软语音合成、流媒体技术,以及.NET平台下的数据绑定技术,在网上店铺导航网站上实现自动语音导航服务,从而让网民更方便、更快捷地进行网上购物。
【关键词】 网上店铺;语音合成;流媒体;数据绑定;语音导航
The Design and Implementation of Voice Service for an Online Shopping Navigation Website
Abstract:
An online shop is a virtual store, which relies on Internet to do transactions. Navigation website intends to facilitate Internet users to attain the information they need, and provide quick access to service-oriented websites. Voice is the most natural form of interaction. Embedding voice navigation service in Web navigation enables Internet users to hear the voice introduction about merchandise when they are browsing the merchandise, which can help the users to make a purchasing-decision quickly.
This paper discusses how to utilize Microsoft voice synthesis, streaming media technology and the data binding technology under .NET platform, achieving automatic voice navigation services on Internet shopping which makes Internet users more convenient and efficient for online shopping.
Keywords:
Internet shopping; Voice synthesis; Streaming Media; Data binding; Voice navigation
目 录
略
随着社会发展和科学技术进步,人类已跨入信息时代,人们在不断寻求灵活、方便、快捷的信息交换方式。语音是众多信息载体中信息容量大、智能水平高的信号之一,作为信息交换的一种方式,语音具有独特的优越性[1]。
电子商务技术的快速发展,使网上购物逐渐成为一种潮流和必然的趋势。越来越多的人在网上购物,面对成千上万的商品,网民如何快速的买到称心如意的商品是每一个网上店铺需要解决的问题。将电子商务技术与语音合成技术相结合,实现网上店铺语音导航服务功能,使网民在浏览商品时,可以听到商品信息的语音介绍,让网民很快对商品的情况有所了解,做出选择,方便网上购物。
本文对如何设计和实现一个完善可行的网上店铺语音服务系统,作了一些研究和探讨,并给出相应的解决方案。
本系统的开发涉及电子商务和语音合成等方面的内容,因此有必要首先对电子商务、语音合成等相关技术的发展现状与趋势作些介绍。
随着互联网的社会化普及率的空前扩大,越来越多的国内企业开始采用互联网进行商业交易。据统计,2005年中小企业IT巿场规模达到1129.8亿元,2000多万家中小企业中仅有不足四成尝试过网络营销,可见我国电子商务的巿场潜力依然巨大[2]。与国外的中小企业热衷于体现自我、建设独立网站不同的是,我国中小企业更愿意通过第三方的B2B交易平台介入电子商务活动。同时据权威机构统计,我国互联网购物大军也在高速增长,越来越多的人愿意通过当当、卓越、淘宝、易趣这样的互联网平台进行交易。可见电子商务巿场规模正在迅速扩张。
目前,网上店铺有两类。一类是大型化,网上店铺门户化的网站,如:淘宝、卓越、易趣;另一类是专业化和行业化的网上店铺,如:海尔专卖网、手机专卖网等。随着Internet技术的发展,这两种类型的网上店铺都会紧跟其步伐,对自已的网站进行升级改造,智能化的网上店铺必将诞生。
目前,因特网上的语音网站主要是一些音乐网站、电影在线播放网站、门户网站(如:中国安徽)等。随着Internet网络带宽越来越大,网络中可承受的流量也就越来越大,使语音文件在网络中传输速度也就会加快,传输过程中丢包率降低,语音文件播放的清晰度很高,提高了网民浏览网页的效率,方便了网民。可见,语音网站的发展是一种必然趋势。
这些音乐网站、电影在线播放网站中的语音文件都是先前录制好的,并不是通过语音合成来实现的。
市场上有比较多的语音识别[3]和语音合成引擎产品,国外的有:微软公司的语音引擎,IBM推出ViaVioce系列。IBM是拥有几十年语音研发历史的IT巨头,推出了一系列的语音产品,其中 的ViaVioce Telephony便是IBM ViaVioce在电信领域中的延伸和发展,提供了开放的电话语音引擎和应用开发工具,使语音功能可以方便快速地集成到电话系统中,而且其中文语音技术支持普通话、台湾普通话和粤语。国内的有:安徽中科大讯飞信息科技有限公司[4],科大讯飞的最新TTS产品InterPhonic C&E Rev1.2语音平台是中英文混读的系统,不仅合成语音连续、可懂、自然,相当于普通人说话标准。而且针对大吞吐量的、高性能的、稳定的高端应用而开发,提供基于TCP/IP网络的集群式语音合成服务,语音合成服务采用动态负载均衡机制对任务进行动态调度,很好地解决了现代信息社会海量数据和动态查询的需求,满足电信及大型企业级的CTI应用的要求。
语音服务已经应用到社会的各个方面,如:有声电子邮件,考分查询等,语音技术嵌入电子商务网站后,可以让网民更快速、方便的购物。
语音合成技术将朝以下几个方向发展:
(1)提高合成语音的自然度
提高合成语音的自然度仍然是高性能文语转换的当务之急[5]。就汉语语音合成来说,目前在单字和词组一级上,合成语音的可懂度和自然度已基本解决,但是到句子乃至篇章一级时其自然度问题就比较大。
(2)丰富合成语音的表现力
目前国内外大多数语音合成研究是针对文语转换系统,且只能解决以某种朗读风格将书面语言转换成口语输出,缺乏不同年龄、性别特征及语气、语速的表现,更不用说赋予个人的感情色彩。随着信息社会的需求发展,对人机交互提出了更高的要求,人机口语对话系统的研究也提到了日程上。即语音合成研究已开始从文字到语音的转换阶段向概念到语音的转换阶段发展。
(3)降低语音合成技术的复杂度
语音合成技术正在走向市场。为了适应社会的需求,扩大文语合成的应用场合,除了解决好上面两个问题,提高合成语音的质量和增强语音合成的表现力以外,在其他实用化方面也有要加以改进的地方。就目前汉语文语转换系统而言,减小音库容量就是一个重要课题。
(4)多语种文语合成
语言是人们交流的工具,不同民族有自己不同的语言,不同语言之间的交流在今天开放的信息社会和网络时代显得十分重要,多语种的文语合成有着独特的应用价值。
系统分析是平台开发的一个不可缺少的环节,为了能够使本系统更好、更完善地被设计出来并达到既定目标。为此必须对系统的功能进行细致的分析,才能够开发出完整的系统。
本系统为适应现代电子商务技术的发展及网上购物的需要,采用B/S结构体系、微软公司提供语音引擎及数据库技术相结合,选用Windows操作系统,开发出基于Internet的网上店铺导航网站语音服务系统,能实现商品介绍信息语音文件的自动生成功能。
要实现系统目标,本系统可分解为语音合成和流媒体两个模块来进行分析。
网上店铺的店长或店员在客户端通过IE浏览器进入本导航网站的首页,登录系统后,点击添加商品信息,进入添加页面,填写商品信息并提交后,本模块会在服务器端定时的扫描数据库,提取出刚插入的商品介绍文字信息,自动地生成相互的商品介绍语音文件。
当网上网民浏览本网站并点击商品详细信息页面时,相应的商品语音介绍文件将从服务器传到本地客户端浏览器,并由本地客户端IE浏览器播放。当客户端连接到服务器时,将从头开始播放语音内容,最终用户可以使用播放器上的播放控件来暂停、快进、倒回、停止。只有当客户端已连接且可以接收流时,点播发布点才可以传输内容。
网上店铺导航网站语音导航系统由服务层、客户层组成。其中:
服务层由Web服务器、TTS服务器组成。Web服务器负责接受用户请求、转发命令和结果。TTS服务器负责文本数据自动的语音合成。
客户层由Web浏览器和流媒体播放器组成。流媒体播放器用来播放合成语音流,Web浏览器用来接受用户的请求,启动流媒体播放器和显示结果。系统结构图如图3-1所示:
由功能分析得出,系统主要有语音合成和流媒体播放两大功能模块。
功能说明:定时扫描数据表,判断是否有新的商品信息插入到数据库表中,如果有,就立即提取这些新插入的商品信息,语音合成系统负责在接收这些信息,并将商品介绍文字信息合成语音文件,语音文件的文件名以该商品的ID号命名,生成后的语音文件存放到指定的文件夹中;提取结束后,将这些已经生成了语音文件的商品信息置为“旧”商品,即:已经存在语音文件的商品。本模块流程图如图3-2所示:
功能说明:客户端通过IE浏览器向服务器发出请求,以显示商品介绍语音信息。服务器端接收客户的请求,并根据请求用的商品ID号,找出相应的商品介绍语音文件发给客户端,在客户端通过内嵌在网页中的媒体播放器在IE浏览器播放该语音文件。本模块流程图如图3-3所示:
本网站是一个典型的电子商务系统,针对它要实现的导航功能,与语音服务模块有关的数据库表主要的内容是商品信息,采用SQL Server数据库。
商品信息包含:商品ID,商品名,商品图片,商品网址,商品介绍,商品人气指数,所属类别,商品价格,商品标记。
主要设计思想:
(1)将商品表的商品介绍字段值设为语音系统所要转换的内容,以便网民在浏览网站商品信息时,能自动读出商品介绍信息。当语音文件生成后,以商品表中的商品ID为相应语音文件的名字,这样可以避免重名。
(2)为了区分某一商品信息是否已经产生了相应的语音文件,在商品表中增加了一个flag字段;默认情况下flag为0,即没有产生相应的语音文件,当语音文件生成后,flag置为1。数据库的表结构如表3-1所示:
表3-1 商品表
名称 | 数据类型 | 数据长度 | 作用 |
productID | Int | 10 | 商品ID (主键) |
Productname | Varchar | 50 | 商品名 |
productimages | varchar | 50 | 商品图片 |
productlink | varchar | 200 | 商品所在网址 |
productcount | Int | 6 | 商品点击率 |
childID | Int | 4 | 商品所属类 |
jointime | datetime | 8 | 商品加入时间 |
introduction | varchar | 1000 | 商品介绍 |
Money | Int | 10 | 商品价格 |
reviewcount | Int | 5 | 商品评论量 |
Flag | Int | 4 | 标记 |
存储过程是存放在服务器上经过编译的SQL语句集合,因此使用存储过程可以提高应用程序访问数据库的速度和效率,并且能够大大减少网络数据传输[6]的开销。在本系统中使用了高效简洁的存储过程来简化编程。本系统中涉及到的存储过程如表3-2所示。在后面各个模块的介绍中还会详细介绍这些存储过程。
表3-2 存储过程
存储过程 | 功能描述 |
product_voice | 根据标记flag返回没转换相应语音文件的商品信息,返回列表中的信息包括商品ID、introduction。并将标记flag的值置为0,表示该商品的语音文件已经生成 |
get_product_detail | 返回某个商品的详细信息。商品信息包含商品ID商品名,商品图片名,商品介绍,商品网址,商品价格,商品人气等。该存储过程的参数为productID |
运行环境是系统的基础,选择合适的开发工具将提高系统开发的效率。
(1) 服务器端:计算机CPU要求在PⅣ 2G以上,内存512M以上,操作系统为Windows 2000 server/2003以上并配置好Web服务器,.NET Framework SDK v1.1或其以上版本,数据库服务器为Microsoft SQL Server 2000。
(2) 客户端:计算机CPU要求在PII200以上,内存128M以上,IE6.0以上版本。建议最好使用具有中文环境的Windows XP或Windows 2000。
系统的开发使用了美国微软公司的Visual Studio.NET 2003 v1.1的集成开发环境下的Visual C#,并选用了ASP.NET Web应用程序开发语音合成模块,ASP.NET Web服务开发流媒体播放模块。
ASP.NET是微软.NET体系结构[7]的组成部分,它不是单纯的ASP 3.0的升级版本,而是继承了ASP 3.0的优点,并在此基础上扩展了大量实用新功能,同时,修复了以前的错误。由此,ASP.NET性能更稳定,使用更便捷。
C#语言[8]是一种简单、类型安全、平台独立的新型面向对象的编程语言,其语法风格源自C/C++家庭,融合了Visual Basic的高效和C/C++的强大,是微软为奠定其下一代互联网地位而打造的.NET平台的主流语言。微软公司对C#的定义是:“C#是一种类型安全的、现代的、简单的、由C和C++衍生出来的面向对象的编程语言。它是牢牢根植于C和C++语言之上的,并可立即被C和C++使用者所熟悉。C#的目的就是综合Visual Basic的高生产率和C++的行动力”。能利用C#快速地建立大规模的基于Windows网络平台的应用程序,并且提供了大量的开发工具和服务帮助我们开发基于.NET的各种应用。
系统实现采用的关键技术是:数据绑定、语音合成、流媒体播放三大核心技术。
数据绑定技术[9]指在运行时动态地给控件的属性赋值的过程,数据绑定的意思就是将控件与存储在数据源中的信息绑定在一起。数据绑定牵涉了将ASP.NET的Web控件(如:DataGrid)附加到包含一些数据库数据的DataSet上。DataGrid.DataSource属性指定控件要的绑定的DataSet,而DataBind方法会真正地用数据来填充控件。数据绑定不仅公是快捷应用程序开发的一个重要方法,它还有助于将数据结构的细节对应用程序的表示层隐藏起来,这也是我选用此技术原因。
DataGrid控件以表格的形式显示数据,通过编辑DataGrid控件的属性可以实现对其中显示的数据进行选择、编辑、更新以及添加排序、分页等。
DataList控件用于显示绑定在控件上的数据源中的数据。DataList控件没有固定的外形,在使用前需要编辑其模板,用户根据需要来设计自已想要的模板。
在本系统的语音合成模块的实现中,使用了Web控件中的DataGrid控件来获取商品的商品ID和商品介绍信息。在本系统流媒体播放模块的实现中,将数据库中的数据绑定到 DataList的项中,并显示出来。
语音合成的英文全称是Text To Speech(TTS),是把计算机中任意出现的文字转换成自然流畅的语音输出。它使得计算机不仅能够处理数据、显示图象和文字,还能像人一样说话,从而使得计算机更加亲切、自然。
TTS的工作原理是将需要输出的数字信号通过合成引擎转换为用户可以听到的自然语言[10],当应用程序需要发声的时候就调用语音合成引擎(SPEECH SYNTHESIS ENGINE)进行语言合成,将文本处理后通过扬声器用近似于人的声音“读”出来。与一些用预先录制的声音文件实现发声的应用程序相比,TTS的发声引擎只有几兆大小,不需要大量的声音文件支持,因此可以节省很大的储存空间,并且可以朗读预先未知的任何语句。
一般认为,语音合成系统包括三个主要的组成部分:文本分析模块、韵律生成模块和声学模块,语音合成系统的框架如图4-1所示。
TTS的实现利用微软公司语音引擎[11]。SAPI SDK是微软公司免费提供的语音应用开发工具包,这个SDK中包含了语音应用设计接口(SAPI)、微软的连续语音识别引擎(MCSR)以及微软的语音合成(TTS)引擎等等。目前的5.1版本一共可以支持3种语言的识别 (英语,汉语和日语)以及2种语言的合成(英语和汉语)。SAPI是基于COM技术[12]开发的,COM技术是原来微软为了解决组件调用而推出的一种解决方法。但在微软新的开发战略.NET平台下,没有沿用原来的COM技术,而是采用了一种新的技术:程序集方法。为了在.NET的开发环境下调用原来的COM技术实现组件的方法,维持与COM组件的互操作性,微软公司设计出了.NET框架,通过使用.NET框架提供的COM Interop功能,只需建立对COM对象的引用,就可以访问任何COM对象所公开的所有对象、方法和事件。下面对COM和.NET框架做进一步的叙述。
(1) COM即组件对象模型(Component Object Model):是关于如何建立组件以及如何通过组件构建应用程序的一个规范,是微软公司用于构建可重用对象的标准,描述了程序员如何在Win 32编程环境中生成可重用对象。在.NET出现以前的几乎所有微软公司的应用程序都使用了COM。这些对象是独立于任何一种编程语言的二进制对象模块,具有明确定义的、面向对象的各种接口。在实际运用中,COM表现为ActiveX DLL对象、ActiveX控件、ActiveX EXE对象等几种形式。ActiveX DLL提供的对象与应用程序运行于同一个进程中,应用程序可以创建对象,设置对象属性,调用对象的方法,它一般不需要建立用户界面;ActiveX控件提供的对象与应用程序运行于同一个进程中,应用程序可以创建对象,设置对象属性,调用对象的方法,触发对象的事件,它一般需要建立用户界面;ActiveX EXE提供的对象与应用程序运行于不同的进程中,应用程序创建对象,设置对象属性后,可继续进行自己的工作,当对象的工作完成后,它会通知应用程序。
(2) .NET Framework类型是生成.NET应用程序、组件和控件的基础,它包括类、接口和值类型,可加速和优化开发过程并提供对系统功能的访问。.NET Framework[13]包括3个主要部分:公共语音运行库(CLR)、.NET Framwork类库以及应用程序开发技术包括(ASP.NET和Windows Forms)。为便于语言之间进行交互操作,.NET Framework类型是符合公共语言规范(CLS)的,因此可在任何编译器符合CLS的编程语言中使用。它提供了一组丰富的接口以及抽象类和具体(非抽象)类,可以按原样使用这些具体的类,或者在多数情况下从这些类派生类。.NET的运行库提供了包装类,使托管和非托管客户端认为它们是在其各自的环境中调用对象。每当托管客户端对某个COM对象调用方法时,运行库就会创建一个运行库可调用包装(RCW)。RCW的功能之一是抽取托管和非托管引用机制之间的差异。运行库还会创建一个COM可调用包装(CCW)来逆转此过程,使COM客户端能对.NET对象无缝地调用方法。具体实现如下:
① 安装SAPI5.1 SDK 到http://www.microsoft.com/speech/download/sdk51/下载Speech SDK 5.1(68M)和5.1 Language Pack (81.5M)。
② 导入COM对象到.NET。 SAPI5.1是基于Windows平台的,通过COM接口进行调用。
在.NET平台下要应用SAPI5.1,我们可以利用.Net Framework自带的强大工具TlbImp.exe来把SAPI SDK的COM对象导入到.NET中。TlbImp.exe产生一个管制的包装类,管理客户端可以使用它。包装类管理实际的COM对象的参考数。当包装类当作收集的垃圾时,包装类释放掉它包装的COM对象。下面演示如何导入SAPI的COM对象:
C:\Program Files\Common Files\Microsoft Shared\Speech>Tlbimp sapi.dll /out: DotNetSpeech.dll。如图4-2所示:
图4-2 导入SAPI的COM对象图
在安转SDK以后,可以在C:\Program Files\Common Files\Microsoft Shared\Speech\目录下面找到SAPI.dll,这里面定义了SAPI的COM对象,用Tlbimp.exe工具将该dll转换成.NET平台下的DotNetSpeech.dll,转换的过程会提示不少的警告(warning),但这部影响开发,可以忽略。最后,可以使用.NET框架提供的反编译工具Ildasm查看DotNetSpeech.dll里面的对象。
③ 用C#开发语音合成代码部分见后述MakeWavFile方法[14]。
本模块使用了数据层和逻辑层来用实现。
语音生成模块使用了时钟Timer控件,在一定的时间间隔内扫描数据库商品表一次,将未被转换的商品信息转换成相应的语音文件。其中数据层用于直接操作数据库商品表,并在数据库中定义了一个名为product_voice的存储过程,用于得出未生成语音文件的商品信息。
逻辑层的作用是利用Timer控件,定期扫描数据库表,发现新加入的商品信息,就调用语音合成程序;在该层定义了Form1.cs和TTS.cs文件,其功能结构如图4-3所示:
各方法的功能解释:
Timer1_Tick方法:
① 调用Get_product方法,以便得到在该时间段内新加入的商品信息。
② 调用MakeWavFile方法,以便将DataSet中的商品信息生成语音文件。
③ 调用Close_dataset方法,关闭与数据库的连接。
Get_product方法调用product_voice存储过程,以获得在该时间段内新加入的商品信息,并以DataSet形式返回。
MakeWavFile方法:将商品信息生成语音文件。TTS.cs文件关键代码清单如下:
using DotNetSpeech; //通过namespace来引用库//
……………………………
SqlDataAdapter myCommand; //定义SqlDataAdapter类型全局变量//
SqlConnection myConnection; //定义SqlConnection类型全局变量//
程序说明:MakeWavFile方法是根据商品ID和商品介绍信息将其转为相应的语音文件,其中,包含两个参数productID、strFileContent分别为商品ID号,商品介绍。语音文件名以商品ID号命名,语音的内容为商品介绍信息。
public void MakeWavFile( string productID, string strFileContent)
{
string strFileDir = Application.StartupPath+@"\";
try
{
string strTempWavFileName = productID + ".wav";
SpeechVoiceSpeakFlags SpFlags=
SpeechVoiceSpeakFlags.SVSFlagsAsync;
SpVoice Voice = new SpVoiceClass();
SpObjectToken sot =
Voice.GetVoices(String.Empty,String.Empty).Item(0);
Voice.Voice = sot;
SpeechStreamFileMode SpFileMode =
SpeechStreamFileMode.SSFMCreateForWrite;
SpFileStream SpFileStream = new SpFileStream();
SpFileStream.Format.Type =
SpeechAudioFormatType.SAFT8kHz16BitMono;
SpFileStream.Open(strFileDir + strTempWavFileName, SpFileMode, false);
Voice.AudioOutputStream = SpFileStream;
Voice.Speak(strFileContent, SpFlags);
Voice.WaitUntilDone(Timeout.Infinite);
SpFileStream.Close();
}
catch(Exception ex)
{
throw new Exception("合成音频文件出现错误:",ex);
}
}
程序说明:Get_product方法是返回一个DataSet型商品信息数据集的方法。该方法首先实例化数据库连接和数据库命令,然后调用存储过程product_voice,得到所有未转换成语音文件的商品信息。
public DataSet Get_product()
{
SqlConnection myConnection = new SqlConnection();
myConnection.ConnectionString =
"server=WUJIANPING;database=shopping;uid=sa;pwd=1";
myConnection.Open();
SqlDataAdapter myCommand =
new SqlDataAdapter("product_voice",myConnection);
myCommand.SelectCommand.CommandType =
CommandType.StoredProcedure;
DataSet ds = new DataSet();
myCommand.Fill(ds);
return ds;
}
程序说明:Close_dataset方法是关闭与数据库的连接。其作用是非常明显的,因为在调用Get_product方法实例化数据库连接后并没有关闭连接,由于受时钟的触发,要频繁的调用Get_product方法,使得与数据库的连接数量不断增多,而数据库的连接数量是有上限的,这样下去就会使本系统出错,并显示“所有池都被使用并达到最大池的大小”的错误信息,通过自定义一个Close_dataset方法解决了这个问题。以下是Close_dataset方法的代码清单:
public void Close_dataset()
{
myCommand.Dispose();
myConnection.Close();
}
Form1.cs文件包含Form1_Load和timer1_Tick两个方法,关键代码清单如下:
程序说明:Form1_Load方法用于启动定时器和设置时钟触发的间隔。
private void Form1_Load(object sender, System.EventArgs e)
{
timer1.Start(); //启动定时器//
timer1.Interval=50000; //每5秒发生一个Tick事件//
}
程序说明:timer1_Tick方法先扫描数据库,先将未被转换成语音的商品列出来,再从中提取出商品ID和商品介绍字段信息,将这两个信息作为参数,调用MakeWavFile方法生成相应的语音文件,最后调用Close_dataset方法关闭与数据库的连接。
private void timer1_Tick(object sender, System.EventArgs e)
{
string productID;
string introduction;
int i=0;
DotNetTTS my=new DotNetTTS();
DataSet ds = new DataSet();
ds = my.Get_product();
dataGrid1.DataSource = ds;
for(i=0;i<ds.Tables[0].Rows.Count;i++)
{
introduction=ds.Tables[0].Rows[i]["introduction"].ToString();
productID=ds.Tables[0].Rows[i]["productID"].ToString();
my.MakeWavFile(productID,introduction);
}
my.close_dataset();
}
流媒体播放技术[15]是把连续是影像和声音信息经过压缩处理后放在网站服务器上,让用户边下载边观看和收听,而不需要等整个文件全部下载完毕后才观看的技术。
在目前的网上视频、音频传输过程中,通常要求用户将视频、音频文件下载到本地计算机后,才能进行播放。这样带来了三个比较突出的问题:首先多媒体信息的下载,由于目前普通用户接入速率较低的情况下,下载要很长时间。其次,由于多媒体信息必须下载到本地计算机才能播放,这样必然占用本地计算资源。第三,就是版权问题。因为用户将视频、音频下载到硬盘后,可能会对这些资料进行再传播,那么制作单位的知识产权可能受到伤害。
为了解决这些问题,“流式传输”应运而生。流式传输借鉴计算机本身利用缓冲区来提高文件运行速度的方式,考虑在播放端放置缓冲区来解决服务质量问题。流式传输将动画、音频和视频等多媒体文件经过特殊的压缩方式分成一个个的压缩包,由视频服务器向用户计算机连续、实时地传送。在采用流式传输方式的系统中,用户不必像非流式播放那样等到整个文件全部下载完毕后才能看到具体内容,只需要经过几秒或几十秒的启动延时即可利用相应的播放器对压缩的动画、音频、视频等流式多媒体文件解压后进行播放,多媒体文件的剩余部分也将在后台的服务器内继续下载,流式传输基本原理如图4-4所示。而流媒体就是指在Internet/Intranet网络中使用流式传输技术的连续时基媒体,如音频、视频或多媒体文件。
到目前为止,Internet上使用较多的流媒体格式主要有Real Networks公司的Real System、Microsoft公司的Windows Media Technology和Apple公司的QuickTime。
Real System由媒体内容制作工具RealProducer、服务器端RealServer、客户端软件(Client Software)3部分组成。Real System采用SureStream技术,自动地并持续地调整数据流的流量以适应实际应用中各种不同网络带宽需求,轻松在网上实现音频、视频和三维动画的回放。由于其成熟稳定的技术性能,互联网巨人美国在线(AOL)、ABC等公司和网上电台都使用Real System向世界各地传送实时影音媒体信息以及实时的音乐广播。
Windows Media Technology 是Microsoft提出的信息流式播放方案,其主要目的是在Internet和Intranet上实现包括音频、视频信息在内的多媒体信息的传输,其核心是ASF(Advanced Stream Format )。ASF是一种包括音频、视频、图像以及控制命令脚本等多媒体信息在内的数据格式,通过分成一个个网络数据包在Internet传输,实现流式多媒体内容发布。ASF支持任意的压缩/解压缩编码方式,并可以使用任何一种底层网络传输协议,具有很大的灵活性。Windows Media技术捆绑在Windows2000以上的系统中,并打算将ASF用做将来Windows版本中多媒体内容标准文件格式,这无疑将对Internet特别是流式技术的应用和发展产生重大影响。
Apple公司于1991年开始发布QuickTime,它几乎支持所有主流的个人计算机平台和各种格式的静态图象文件、视频和动画格式,具有内置Web浏览插件(Plug-in)技术,支持IETF流标准以及RTP、RTSP、SDP、FTP和HTTP等网络协议。通过好莱坞影视城检索到的许多电影片段都是以QuickTime格式存放的。
在本系统中,我选用了Windows Media Technology来实现流媒体的播放。
Windows Media流媒体[16]文件与Web网页结合,最终被用户访问的方式有两种。一种是启动Media Player播放窗口直接打开流媒体文件,另一种是将Media Player嵌入到页面之中。同时,所连接到的流媒体文件可能是位于Web Server上的,也可能是位于Windows Media Server上的。通常情况下,可以直接连接到文件本身并播放它,也可以先连接到一个指引文件(ASX),再由指引文件指向流媒体文件,后者是经常被使用到的方法。
ASX文件是一个文本文件,它主要的目的是对流信息进行重定向。在ASX中包含了与媒体内容对应的URL,当我们在HTML中让一个超链接与ASX联系时,浏览器会直接将ASX的内容送给Windows Media Player,Windows Media Player 会根据ASX文件的信息用相应的协议去打开指定位置上的流媒体或多媒体文件。利用ASX文件来重定向流媒体的原因主要是:目前通用的浏览器通常都不能直接支持用于播放流媒体的MMS协议,所以我们采用ASX文件。采用ASX文件以后,当浏览器发现一个链接与ASX有关时,它知道需要用Windows Media Player来播放流媒体,于是它就会启动Windows Media Player。
在本系统的实现中,如果采用Web Server方式将Media Player直接嵌入到Web网页,这种情况下Media Player播放器是与Web网页融为一体的,通过网页直接调用服务器中的流媒体文件,省去了ASX文件,这样提高了服务器的响应速度,并节省了服务器的磁盘空间,降低了系统开发难度。如果采用Media Server实现流媒体的播放,先要在服务器端安装Windows Media Server,并进行配置;这样使得服务器的硬件投资增加,最主要的是磁盘空间的增加,因为在本系统中,商品是成千上万的,要实现商品流媒体自动播放,每一个流媒体文件要有一个对应的ASX文件来重定位,这样就有成千上万个ASX文件;当然,使用Windows Media Server方式具有Web Server方式没有许多优点,如:进程管理及事件记录、运行状况报告等方面。考虑上述因素,我采用了第一种方式来实现流媒体的播放。
流媒体自动播放实现采用了微软的Windows Media和ASP.NET的DataList数据绑定技术。本模块使用ASP.NET数据访问层、业务逻辑层、用户表示层三层结构实现。
所谓三层体系结构,是在客户端与数据库之间加入了一个中间层,也叫组件层。这里所说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构,也不仅仅有B/S应用才是三层体系结构,三层是指逻辑上的三层,即使这三个层放置到一台机器上。三层体系的应用程序将业务规则、数据访问、合法性校验等工作放到了中间层进行处理。通常情况下,客户端不直接与数据库进行交互,而是通过COM/DCOM通讯与中间层建立连接,再经由中间层与数据库进行交换。三层的优点很明显,即:安全性很高。关系结构如图4-5所示。
功能说明:当浏览器加载show_product.aspx页面时,服务器端调用show_product.aspx.cs文件,该文件先获得商品的商品ID号(productID),通过productID查询并输出满足条件的商品信息,然后将该信息用DataSet接收,并绑定到myDataList中,以实现语音文件的自动播放。下面分别对以上三层进行说明。
(1) 数据访问层
数据访问层用于直接访问数据库表,将满足条件的数据返回给业务逻辑层。商品信息页面的数据访问层位于CS文件夹下的product.cs,命名空间为shopping,类名为productDB。
程序说明: Getproduct方法是返回一个DataSet型商品信息数据集的方法。该方法首先实例化数据库连接和数据库命令,然后调用存储过程getproduct,并为该存储过程添加sqlparameter类型[17]的参数ProductID。最终执行该存储过程,返回DataSet类型的数据集。
public DataSet Getproduct(int productid)
{
//实例化一个数据库连接对象myconnection//
SqlConnection myConnection = new SqlConnection(ConfigurationSettings.AppSettings["ConnectionString"]);
//实例化一个使用myconnection执行存储过程getproduct的数据库命令mycommand//
SqlDataAdapter myCommand = new SqlDataAdapter("getproduct",myConnection);
myCommand.SelectCommand.CommandType = CommandType.StoredProcedure;
//定义一个sqlparameter类型的存储过程参数parameterproductID//
SqlParameter ParameterProductID = new SqlParameter("@ProductID",SqlDbType.NVarChar,50);
//设置parameterproductID的值为方法的参数productid的值//
ParameterProductID.Value = productid; myCommand.SelectCommand.Parameters.Add(ParameterProductID);
DataSet ds = new DataSet();
myCommand.Fill(ds);
return ds;
}
对应的存储过程是get_product_detail,其作用:返回某个商品的详细信息。以下是该存储过程的代码清单。
create proc get_product_detail(@productID varchar(50))as
begin
select *
from product
where productID=@productID
//浏览该商品页面一次,商品人气就加1//
update product
set productcount=productcount+1
where productID=@productID
end
本层主要是接受数据访问层返回的数据,并对数据进行处理。商品信息页面show_product.aspx的后台编码类为show_product.aspx.cs。该后台编码类在页面载入方法Page_Load中首先从页面传递参数中获得当前商品的productID,根据商品的productID从数据访问层获得商品的数据集,将该数据集绑定到页面控件myDataList。
用户表示层主要接受用户的请求,以及数据的返回,为客户端提供应用程序的访问。商品信息页面show_product.aspx为显示商品详细信息的页面,商品信息列表构成了商品信息页面的主体并以DataList控件形式展现。
本模块的实现采用了嵌入式播放器。浏览器与嵌入式播放器的通信使用下面两种方式之一:使用Netscape Plug-in插件或是使用Microsoft公司提供的Actvie X控件。Active X控件是由Microsoft公司提出的一种可重用的软件组件。它的用途非常广泛,特别是在界面中的开发应用,无论是IE浏览器还是Netscape浏览器都支持Active X控件技术。
以下是商品信息页面的前台实现关键代码清单。
<asp:DataList id=myDataList Runat=server >
<ItemTemplate>
程序说明:使用Microsoft Active X控件要使用标签<object>,以及很多附加的参数。参数可以用包name和value的<param>标签单独指定。"FileName"参数表示Media Player要播放的文件或流。"ShowControls"表示在播放时是否显示控制条。codebase指明当用户的浏览器中没有安装Player控件时可以从该URL指定的位置去获取。下面的代码是使用Active X控件在网页中嵌入Windows媒体播放器。
<object id="WMPlay" width=320 height=42
classid="CLSID:22D6f312-B0F6-11D0-94AB-0080C74C7E95"
codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,5,715"
standby="Loading Microsoft? Windows Media? Player components..."
type="application/x-oleobject" viewastext>
< param name ="FileName" value=
"Release/<%# DataBinder.Eval(Container.DataItem,"productID")%>.wav">
< param name ="ShowControls" value="true">
< param name ="AutoRewind" value="0">
<param name="AutoStart" value="true">
</ object>
</ItemTemplate>
</asp:DataList>
(1)在服务器中运行SQL Server 2000数据库服务器、语音服务系统和IIS。
(2)在服务器端通过开始菜单进入数据库服务器SQL查询分析器,在分析器中选择进入“shopping”数据库,在分析器的主窗口中输入:
insert into product
(productimages,productname,introduction,[money],flag) values
('003.gif', '诺基亚N93', '主屏参数: 65536色TFT屏;128×160像素 和弦铃音: 72和弦;MP3铃声 话机通讯录: 共1000条 内存容量: 24M 130万摄像头,MP3功能: ……',2600,1)
(3)点击“执行查询”,关闭数据库的SQL查询分析器。
(4)在客户端Windows XP系统下,双击桌面上的IE浏览器图标打开IE浏览器,在浏览器中输入服务器的IP地址“http://192.168.0.1” 。进入商品介绍页面,可以看到页面中有一个流媒体播放器在播放刚才所插入的商品介绍信息的语音文件,表明测试成功。
以下是测试的效果图。运行语音服务系统界面如图5-1所示:
图5-1 语音服务系统运行界面
在商品信息页面中,用户可以根据页面中的播放器开控制声音的播放。如图5-2所示:
图5-2 商品信息页面
在安装语音服务系统之前,先要安装好Web服务器、.NET框架SDK以及SQL Server服务器。
(1) 在服务器版操作系统中单击“开始”按钮,指向“设置”,单击“控制面板”选项,然后启动“添加或删除程序”。
(2) 单击“添加/删除Windows组件”按钮,打开“Windows组件向导”对话框,选择“Internet信息服务(IIS)”。
(3) 单击“下一步”按钮,按照提示即可完成安装。
(4) 打开操作系统“控制面板”,双击控制面板中的“管理工具”,进入管理工具界面后,双击“Internet信息服务”,进入IIS主界面后,选中其中的“默认网站”并右击选择“属性”,在“属性”里选择“主目录”下的本地路径,将本地路径设置为本网站所在的路径“D:/Shopping”,点击“确定”按钮。重起IIS服务器。
安装了IIS后,在浏览器地址栏中键入http://localhost/,可以查看主目录中的文件以测试安装。
(1) 将Microsoft Visual Studio.net 2003光盘第一张放入光驱,如果有自动播放功能,则会出现安装程序启动画面,否则直接运行光盘中的setup程序,进入主界面。选择“安装系统必备”,系统提示插入系统必备光碟。
(2) .NET框架SDK在Microsoft Visual Studio.net 2003第三张中,将该光碟放到光驱中,点击“确定”,待安装完成,点击“完成”按钮。
(1) 将SQL Server2000的光盘放入光驱,如果有自动播放功能,则会出安装程序启动画面,否则直接运行光盘中的setup程序。选择“安装SQL Server 2000组件”,
在接下来的程序中选择“安装数据库服务器”。
(2) 按照提示,单击“下一步”按钮。在“服务设置”处,选择“使用本地系统账户”。
(3) 设置服务器的用户名为“sa”,密码设置为“1”,因为语音服务系统访问数据库的默认用户名为“sa”,密码设置为“1”。
(4) 数据库服务器安装完成后,进入“企业管理器”,将本网站shopping文件夹下的数据库文件附加到数据库服务器中。
将语音服务系统的光盘放入光驱,将光盘中的“voice”文件夹拷到本网站所在的文件夹“shopping”中,进入“voice”直接点击setup程序。该系统将自动启动,点击“退出”按钮,关闭系统。
Microsoft的TTS引擎提供了4种朗读文字的声音,其中三种英文声音:Mary(女),mike和sam(男)一种中文声音:simplyfied Chinese。所以利用微软SAPI 5.1开发中文语音合成程序,只能输出男的声音,声音比较机械、呆板。而中文女声语音库,能朗读简繁体中文的语音库,支持对多音字,词组的语音处理,在朗读中可以调节语音速度和音量,使朗读更加柔和、流畅。中文女声语音库是建立在SAPI 5系统基础上的,所以使用SAPI 5.0系统编制的程序都可以直接调用中文女声语音库。这样在SAPI 5.1的基础上,再调用中文女声语音库就可以输出柔和、流畅的中文女声。
基于以上设计,我在Windows2000平台上,用.NET+SQL2000开发、利用Windows Media服务以及IIS实现了购物上网语音导航服务。该服务可以让网民网上购物时更方便、更快捷的找到所需要的商品。
[1] 党万胜. 语音合成技术应用研究: [硕士论文]. 南京: 南京航天航空大学, 2000
[2] 杨晨. 电子商务主要形式及我国电子商务的发展现状. 商场现代化, 2006,(7): 109-110
[3] 狄国强. 语音识别与语音合成在商场中的应用. 商场现代化, 2005, (10): 61-62
[4] 安徽科大讯飞信息科技股份有限公司。 2005-07-06/2007-03-06
[5] 王仁华. 语音合成技术及国内外发展现状。 2003-08-18/2007-01-07
[6] Martin J. Principles of Data Base System. Computer Science Press, 2005
[7] 黎晓冬, 李华飚, 王福水. 精通ASP.NET编程. 第一版. 北京: 科学出版社, 2003
[8] 邹建峰, 李律松, 李晓栓. ASP.NET开发技术详解. 第一版. 北京: 人民邮电出版社, 2005
[9] [美]Stephen Walther著. ASP.NET UNLEASHED. Second Edition. 北京: 中国电力出版社, 2004
[10] 杨鸿武, 陶建华, 蔡莲红. 基于流媒体在线语音合成系统. 小型微型计算机系统, 2003, (11)
[11] 陈本峰. .NET平台下开发中文语音应用程序。2006-12-2
[12] 张能立, 杨绍明. 在.NET框架的类对象中实现COM对象的引用. 微机发展. 2004.14(5): 93-95
[13] 黎卫东. ASP.NET网络开发入门与实践. 第一版. 北京: 人民邮电出版社, 2006
[14] 武眉博. 使用微软SAPI文语合成。2007-03-9
[15] 廖勇, 周德松, 麻信洛等. 流媒体技术入门与提高. 第一版. 北京: 国防工业出版社, 2006
[16] 白煜, 辛向晖. Windows Media与Real网络流媒体案例教程. 第一版. 北京: 清华大学出版社, 2004
[17] 刘庆国, 聂元铭. ASP.NET企业级开发案例精解. C#篇. 第一版. 北京: 人民邮电出版社, 2006
在本系统的设计及本论文的完成过程中,笔者得到了指导老师和同学的大力帮助和支持,在此表示深深的谢意。
感谢×××老师的悉心指导和帮助!感谢×××同学的支持和帮助!感谢××××学院所有老师的关怀,感谢××××大学的培养!