数字图像处理高级应用:基于MATLAB与CUDA的实现(第2版) - (EPUB全文下载)

文件大小:1.37 mb。
文件格式:epub 格式。
书籍内容:

数字图像处理高级应用:基于MATLAB与CUDA的实现(第2版)
第1章 热点图像处理方法原理及其MATLAB仿真
第2章 并行计算及其在图像处理中的应用
第3章 图像并行处理环境构建
第4章 典型图像处理方法的GPU实现
第5章 数字图像处理思维方法点拨
附录A Triz矛盾矩阵表、39项技术参数以及40条创新原则
参考文献
第1章 热点图像处理方法原理及其MATLAB仿真
1.1 基于模型的图像边缘检测及其代码快速生成
1.1.1 模型驱动开发思想概述
基于模型设计方法是一种设计复杂系统的可视化数学方法。基于模型的软件开发方法是一种以模型为中心的软件设计方法,用模型来形式化表示用户所构建系统的功能、行为和结构。形式化的意思是指描述模型的语言具有定义良好的语法和语义。基于模型设计思想是通过模型抽象和描述系统的关键问题,用模型表示出系统解决方案,并通过形式化的工具对系统模型进行验证,以保证系统设计正确性。基于模型设计思想从根本上解决了软件设计的正确性保证问题。
什么是模型?模型可以是具体的物理实体,也可以是抽象的描述,如图像描述、数学表达式。模型特征是对对应的物理系统或者非物理系统的一种简化表示,是人们的一种有意识的创造物。有了模型,系统开发人员就可以依赖模型来构建系统,而忽略掉无关的细节。
系统建模和模型仿真验证是基于模型设计方法的两个重点。采用特定的建模语言和模型设计工具,来抽象出被描述的目标系统,从而建立准确的模型,这样可以消除其他系统描述方式(比如文本描述)的模糊性和二义性。仿真验证毫无疑问需要基于建立好的准确的目标模型,而仿真验证带来的好处是通过相应的仿真验证工具对模型进行仿真验证之后可以保证模型的正确性。
模型驱动架构(Model Driven Architecture,MDA)是2002年被提出的,包含了模型的精确形式化表示、模型存储以及模型交换等方面的一系列规约,如MOF(Meta Object Facility)、OCL(Object Constraint Language)、XMI(XML Metadata Interchange)等,旨在提高程序设计的抽象层次,提高软件开发效率,增强软件的可移植性、协同工作能力和可维护性。要求设计时进行严格的模型定义,力求最终能全部或部分自动生成工程代码。
MDA的软件开发过程是由软件系统建模驱动的。模型根据抽象层次不同可分为平台无关模型PIM和平台相关模型PSM。平台无关模型描述系统的行为需求不涉及平台实现细节,平台无关模型的设计者专注于表示系统的业务逻辑;平台相关模型不仅包含系统功能描述,而且包含实现平台的设计思想。平台无关模型可以被转换为一个或多个平台相关模型,平台相关模型最终会转换成具体平台的实现代码。MDA软件开发周期如图1.1.1所示。
图1.1.1 MDA软件开发周期
MDA引入了模型驱动开发(Model-Driven Development,MDD)的软件开发和模型集成运算(Model-Integrated Computing,MIC)的开发模式。模型驱动开发是当今嵌入式系统开发方法的热点,模型集成运算开发方法是面向领域的模型驱动开发方法,在面向特定领域的建模语言方面扩展了模型驱动开发方法,能通过元模型针对特定领域进行定制和裁剪,并能基于领域模型自动生成代码。
代码生成的概念最初见于编译器设计和开发中,编译器先将输入的源程序翻译成某种中间表示,然后产生等价的某种目标程序语言表示的目标程序。这种将中间表示生成目标程序的过程也是代码生成,但是在基于模型的软件设计方法中的代码生成是指利用计算机程序(代码生成器)将模型自动地生成可用的代码。代码生成的过程大致包括模型建立和生成代码。建立一个好的能准确描述应用系统并充分考虑系统应用环境的模型并没有解决所有问题,因为必须将这个模型转化成有效的可运行的模型代码。
基于模型的软件开发方法和传统的软件开发方法有着显著的区别。传统的软件开发方法如图1.1.2所示,其核心是代码,代码的开发、测试和维护占用项目开发的绝大多数时间和精力。而基于模型的软件开发方法,如图1.1.3所示,其核心是模型,项目开发的主要工作是模型的设计,测试和维护也是围绕着模型来开展的,其代码可以方便地依据模型而自动生成。代码生成可以很好地提升软件开发效率、缩短软件开发周期、提高软件开发效率。
图1.1.2 传统的以代码为中心的软件开发方法
图1.1.3 以模型为中心的软件开发方法
1.1.2 模型驱动开发的优势
基于模型驱动的设计开发在各个过程之间没有阻碍,它的优势在于:
(1)在统一的开发、测试平台上,允许产品从需求分析阶段就开始验证,并做到持续不断的验证与测试;
(2)产品的缺陷暴露在产品开发的初级阶段,开发者把主要精力放在算法和测试的研究上,代码生成和验证过程则留给计算机自动完成;
(3)大大缩短开发周期,降低开发成本。
1.1.3 模型驱动开发在图像处理领域中的应用
众所周知,数字图像处理的实现过程中代码量巨大,将模型驱动开发引入到图像处理领域,则可大大提高其规范性和高效性。
基于模型驱动的数字图像处理的主要步骤包括:
(1)需求分析;
(2)将实现过程按照逻辑先后顺序分为各个阶段,再将各个阶段按照功能划分为各个模块;
(3)建立基于功能模块的模型,并进行仿真;
(4)代码自动生成。
1.1.4 基于Simulink-Blocks的模型驱动开发图像处理
MATLAB中的计算机视觉系统工具箱(Computer Vision System)如图1.1.4所示,提供了视频和图像处理的各种模型,共计11个大类库,每个模型库提供了数种模块。用户可以通过拖动、组合,构建视频和图像处理模型,进行视频和图像的仿真和分析。
图1.1.4 计算机视觉系统工具箱的路径
启动MATLAB,选择菜单栏的Simulink Library,按图1.1.4所示选择Computer Vision System Toolbox,系统就会显示计算机视觉系统工具箱,如 ............

以上为书籍内容预览,如需阅读全文内容请下载EPUB源文件,祝您阅读愉快。

版权声明:书云(openelib.org)是世界上最大的在线非盈利图书馆之一,致力于让每个人都能便捷地了解我们的文明。我们尊重著作者的知识产权,如您认为书云侵犯了您的合法权益,请参考版权保护声明,通过邮件openelib@outlook.com联系我们,我们将及时处理您的合理请求。 数研咨询 流芳阁 研报之家 AI应用导航 研报之家
书云 Open E-Library » 数字图像处理高级应用:基于MATLAB与CUDA的实现(第2版) - (EPUB全文下载)