算法概要设计说明书范例Word文档下载推荐.doc
《算法概要设计说明书范例Word文档下载推荐.doc》由会员分享,可在线阅读,更多相关《算法概要设计说明书范例Word文档下载推荐.doc(24页珍藏版)》请在冰豆网上搜索。
所有
创建
2002.08.19
1.0.0
季白杨
李宁溪
王勇
修订页
目录
1.引言 1
1.1编写目的 1
1.2项目背景 1
1.3定义 1
1.4参考资料 1
2.任务概述 1
2.1目标 1
2.2运行环境 2
2.3需求概述 2
2.4条件与限制 4
3.总体设计 4
3.1总体结构设计 4
3.1.1子系统划分 4
3.1.2模块功能和处理流程 5
3.1.3功能分配 10
3.2人工处理过程 10
4.接口设计 10
4.1外部接口 10
4.2内部接口 16
5.数据结构和算法设计 18
5.1数据结构和程序的关系 18
5.2主要算法设计 18
6.运行设计 28
6.1运行模块组合 28
6.2运行控制 28
6.3运行时间 28
7.出错处理设计 29
7.1出错输出信息 29
7.2出错处理对策 29
8.维护设计 29
1.引言
1.1编写目的
本概要设计的读者为图象处理系统(ImageStudio)项目的开发成员、测试成员。
1.2项目背景
项目的委托单位:
公司总部
项目的开发单位:
公司研发部
与其他系统的关系:
为独立的图象处理系统。
所提供处理功能,可供其他电子影像系统进行二次开发
1.3定义
CC ConnectedComponent(连通域)
CS CharacterSmoothing(字符平滑)
FLB FillLineBreaks(补齐断线)
FLB+PL FillLineBreaks+Preserveh&
vLines(补齐断线+保护横竖线)
FR FormsRecognition—ImageStudio(版面识别)
IM ImageMark(图象标注)
IS ImageStudio(图象处理系统缩写)
LAG LineAdjacentGraph(线连接图)
SC+PL Smooth,Clean+Preserveh&
vLines(平滑清洁处理+保护横竖线)
1.4参考资料
2.任务概述
2.1目标
本软件系统在图象处理方面的效果达到与Kofax卡相同的效果,或者优于其处理的效果。
并且在参数的灵活性上和Kofax卡保持一致。
2.1.1长远目标
不断的完善各种图象处理功能,实现类似Kofax卡图象处理的板卡,完成公司在影像方面自主产权的图形处理硬件加速器。
并直接可以作为产品销售,提高公司在图象处理方面的能力和同类市场的竞争力。
2.1.2近期目标
通过软件编程,实现在参数灵活性和性能上与kofax一致,从而满足公司内部其他影像产品项目的需要。
近期目标实现的图象处理功能包括:
序号
功能清单
去黑边
2
去阴影
3
倾斜矫正
4
去黑斑
5
版面识别
6
去线条
7
去条纹
8
图象标注
9
字符平滑处理
10
淡化(腐蚀)滤镜
11
加浓(膨胀)滤镜
12
平滑、清洁处理
13
补齐断线处理
14
平滑、清洁+保护横、竖线条处理
15
补齐断线+保护横、竖线条处理
16
光线加浓(膨胀)滤镜
17
取轮廓处理
表(2-1)功能清单
2.2运行环境
n 硬件环境
4PC服务器一台(含网卡)
4PC机每人一台(含网卡)
4Kofax卡一块(Adrenaline系列)
4Kofax软狗一只
n 软件环境
4WindowsXP/2000/98
4VisualStudio6.0
4ACDSee4.0
4公司以往相关源程序
4AdrenalineHardwareRuntimeVersion3.65(Kofax卡驱动)
4AdrenalineSoftWareRuntimeVersion3.3(Kofax软狗驱动)
2.3需求概述
本软件系统是为了适应公司电子影像产品的不断更新,以及不断提升公司在影像处理方面核心能力,经公司提出,并由研发部进行自行设计开发的整套图象处理系统。
在本系统中的十七个功能需求中,有几项功能是公司原来就已经开发出来的,这些功能将被修改后直接被本系统采用。
下面是对十七图象处理功能的一个概要描述:
l去黑边(BlackBorder--ImageStudio)
公司现有的去黑边处理效果和Kofax卡的处理效果不一样,并且不提供白色噪音宽度(WhiteNoiseGap)的参数。
l去阴影(Deshade--ImageStudio)
公司目前无此功能。
根据阴影最小高度、宽度,黑斑最大高度、宽度,黑斑补偿的高度、宽度等条件,对阴影区域进行检测或者去除。
l倾斜矫正(Deskew--ImageStudio)
与Kofax卡倾斜矫正功能相比,公司现有倾斜矫正功能具有检测角度范围宽(-30degrees~30degrees),精确度高(精确到0.1degrees)等特点。
但是对于一些位图上信息较少的情况,不容易得到倾斜角度。
需要对公司现有倾斜矫正代码进行改善后,可以用于本软件系统。
l去黑斑(Despeckle--ImageStudio)
公司现有去黑斑功能处理效果,与Kofax卡的处理效果基本一致。
但是在去除黑斑时,存在误去相邻连通块的可能。
因此只要对原有去黑斑代码进行少量修改后,即可用于本软件系统。
l版面识别(FormsRecognition--ImageStudio)
公司现有的版面识别功能已经广泛应用于银行、保险等行业的OCR电子影像系统中,并且具有较高的识别率。
在工行储蓄OCR电子影像系统中,版面识别率基本上都在99%以上。
但是由于在实际应用中,版面上识别的有效信息都必须进行人工事先配置过,去除了一些干扰。
而Kofax卡的版面是直接对文件进行添加,而不需要人工对版面内部信息来重新配置调整。
因此需要对公司现有的版面识别程序稍加修改,然后就可以用于本系统。
l去线条(LinesRemoval--ImageStudio)
公司现有去线条功能应该说已经比较成熟,但是考虑到与Kofax卡去线条效果仍然存在的不一致。
并且Kofax卡去线条参数提供线条的最小长度、线条的最大高度、线条的断线距离、去除边缘系数、字符最小修复高度、字符最大修复宽度等参数。
l去条纹(Streak--ImageStudio)
根据条纹横向宽度参数,将小于这个参数的条纹信息进行去除。
l图象标注(ImageMark--ImageStudio)
在电子图象上进行图形、文字的标注。
支持文字的横竖排列方式,支持各种字体,支持透明不透明处理。
l字符平滑处理(CharacterSmoothing)
滤镜一,对图象上字符的外观进行平滑处理。
l淡化(腐蚀)滤镜(ThinningFilter)
滤镜二,对图象上所有信息进行淡化处理。
l加浓(膨胀)滤镜(ThickenFilter)
滤镜三,对图象上所有信息进行加浓处理。
l平滑、清洁处理(SmoothandClean)
滤镜四,对整个图象的质量进行清洁处理。
l补齐断线处理(FillLineBreaks)
滤镜五,将图象上的所有满足条件的断线部分进行补齐。
l平滑、清洁+保护横、竖线条处理(Smooth,Clean+Preserveh&
vLines)
滤镜六,在保护横竖线条的前提下,对图象的所有信息进行平滑、清洁处理。
l补齐断线+保护横、竖线条处理(FillLineBreaks+Preserveh&
滤镜七,在保护横竖线条的前提下,对图象上所有满足条件的断线部分进行补齐。
l光线加浓(膨胀)滤镜(LightThickenFilter)
滤镜八,对图象上所有信息进行向上、向上膨胀处理。
l轮廓处理(Outline)
滤镜九,对图象上所有信息进行提取轮廓处理。
综合以上的十七项图象处理功能需求,结合本软件系统的任务目标和质量标准,由公司的研发部进行设计开发。
并且该产品可用于其他影像处理系统的二次开发。
2.4条件与限制
2.4.1 现有条件
a明确的功能模块需求
a公司已有功能模块的算法文档、源代码
a基本熟悉图象处理技术
a进行各种测试的图象样本
a技术研发部4人
aKofax卡图象处理的效果
a公司质量管理部CMM相关规程、表格、模板
2.4.2 存在限制
;
采用的编程语言为C/C++,产品编译为DLL文件和LIB文件
;
编程遵循公司质量管理部发布的软件编程规范
产品的图象处理性能与参数调节影响均应达到与Kofax卡一致的程度
算法和数据结构的熟悉程度
3.总体设计
3.1总体结构设计
3.1.1子系统划分
本软件系统共分为十七种功能模块,各个功能模块之间相互独立。
如下图(3-1)所示:
图(3-1)功能模块划分
3.1.2模块功能和处理流程
在下面模块功能和处理流程介绍中,省略了共同的读入位图,取得图象头文件,取得图象相关信息,取得调色板信息,取得图象数据区域等步骤。
模块编号
模块名称
模块标识
BB-IS
输入
处理
输出
a)位图句柄
b)最大白色噪音间隙值
a)去除黑边
b)白边截取
成功返回SYD_OK(SYD_OK=1);
失败返回SYD_ERROR(SYD_ERROR<
0,不同值代表不同错误类型)
表(3-1)去黑边
DESHADE-IS
b)阴影区域的最小高度
c)阴影区域的最小宽度
d)黑斑的最大高度
e)黑斑的最大宽度
f)黑斑高度补偿值
g)黑斑宽度补偿值
a)寻找全图连通块
b