基于BSCB模型图像修复的并行技术_第1页
基于BSCB模型图像修复的并行技术_第2页
免费预览已结束,剩余4页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于BSCB模型图像修复的并行技术摘要:基于偏微分方程(PDE)的图像修复有大量计算,这使它的实用化比较困难。为了实现高速灵活的图像处理,本文提出了基于在信息传递接口(MPI)下的BSCB模型的图像修复技术的并行算法的进展。人们提出了三种划分一个图像修复任务的方法,成功避免了程序子任务间的通讯。文中测试了两张图片,一系列处理器上的图像修复速度都得到了提高。关键词:图像修复;平行;PDE;BSCB1 介绍最近这些年,由于PDE模型的简单性和高效性,基于PDE的图像修复技术已经达到了先进水平。一些常用的模型包括BSCB模型1,TV模型2,和CDD模型3,这些模型的中心思想是把被修复区域周围的区域信息传播到被修复区域。信息的传播用沿着时间轴的数字集成来完成,这是很费时的。要修复的区域越大,要用的时间就越长。高度的计算复杂性使得基于PDE的图像修复方法很难实用化。本文利用一种广泛使用的并行环境信息传递库的信息传递界面(MPI)4来探究基于BSCB模型的图像修复技术的并行技术。数字实验在有并行环境分布和提供良好速率的情况下进行。本文组织如下:首先介绍BSCB模型和它的数字格式;其次探究BCSB模型的可能并行方法;然后介绍本文的分配环境和数字实验;最后给出结论。2 基于BSCB模型的图像修复21 BSCS图像修复模型BSCB模型利用拉布拉斯算子操作去测量修复区域的邻域信息并顺利地把信息沿着等灰度方向传递到修复区域。同时,为了避免延长线穿过各自区域,BSCB模型也使用了各向异性功能。这个模型包括两个步骤:修复和传播。设为被修复区域,是的边缘。两者的关系如图1。是个不相关的2D灰度图,表示真实空间。BSCB模型如下描述:(1)(2)等式(1)是用来修复的,是一些某种信息,是等照度方向7;等式(2)用来传播,是照度的欧氏曲率。是带有球半径的的扩大部分,是在中的光滑函数。图1 一个破损画面的图例和它的边缘在一个简单的情况下,信息被上的拉布拉斯算子替代。等式(1)和等式(2)被离散成8,9:(3)(4)或者分别是在n次迭代图像中处于像素的强度和在n次图像中处于像素的强度。和中,是输入图像,是算法输出。是提高率。22 BSCB图像修复模型的连续算法图像修复的连续工具如下:(1) 读取图像文件,存储图像数据为一个数组。(2) 搜索这个数组,并存储要被修复像素的位置为另外一个数组,称mask。(3) 开始迭代循环,利用修复功能和传播功能重新存储图片。(4) 写输出到结果文件。3 利用MPI图像修复算法的并行工具 因为数字图像处理的几个特性,他们可以进行并行处理。A显著的特点是像素到像素区域到区域5-6间的相同运算的处理。基于这个特点,并行的主要问题是分割任务的方法。31 任务分割目前,一个图像处理任务10并行操作中的一种普通的方法是根据节点数平均地把一个图像分割成一片一片。也就是说,如果在一个分配并行环境中有N个估算节点,最初的图像被分成N个更小的非重叠的子图像,每个子图像在一个节点上处理。对于图像修复问题,被修复区域的位置是随机的。把图像直接均分成更小块会导致下列问题:首先,如果图像的一小块没有包含丢失区域,相应的节点就没有用,这很浪费。其次,一个需要被修复的确定区域可能被分到不同的子任务中去。在处理过程中,这些子任务不得不交换邻域信息,这会增加通讯时间,降低效率。由于这些原因,这节提出了一些其他的用于任务分割的方法。(1) 基于三色通道的分割 一个带有RGB模型的彩色图像容易被分割成三个颜色通道。每个通道为一个灰度图。所以,一个图像处理任务能被分解成三个子任务,每个任务处理一个灰度图。(2) 基于区域的分割一个具有k1连续丢失区域要被修复的灰度图能被分割成k个区域,每个区域包括一个连续丢失区域。这个方法可以降低处理中的通讯。(3) 区域通道分割对于一个有多个连续区域要修复的彩色图像,上述讨论的两种分割方法应该结合起来使用。让可变的nregion变成一系列连续的要被修复的丢失区域,然后全部的修复任务能被分成3*nregion区域子任务:彩色图像首先被分割成nregion区域,每个区域再被分割成三个颜色通道。4 并行图像修复算法的工具41 MPI并行环境的结构MPI是一个常用的并行环境信息传递库,它指出了一个有利于处理器通讯的惯例的集合。本文选择MPICH2-1.0.5来构建并行环境。这里有两个MPI并行程序的设计模型:主仆模型和同位模型。本文使用的是主仆模型。当利用主仆模型时,MPI并行程序包含下列部分:(1) 起始:程序的一开始,下列功能被用来启动每个程序。 MPI_Init(&argc,&argv); MPI_Comm_rank(MPI_COMM_WORLD,&rank);/rank:程序的索引 MPI_Comm_size(MPI_COMM_WORLD,&size);/size:程序的数量(2) 程序体:计算和通讯(3) 程序结束:下列功能被使用。MPI_Finalize();在主仆模型的MPI并行程序设计中,程序体中包含两个部分:主程序的程序体和从程序的程序体。主进程完成下列工作:(1) 从BMP文件中读取图像数据;(2) 分割任务;(3) 灵活地分配子任务给子进程并等待子每个程序的输出;(4) 检查是否每个子任务已经完成,如果不是,重复步骤3。(5) 结合所有从子任务中输出的图片重新构成一个新图。(6) 程序最后决策子程序主要完成下列工作:(1) 等待子任务;(2) 执行它自己修复图像的任务并把结果发送给主程序;(3) 重复步骤(1)和(2)直到没有子任务被分配。(4) 程序最后决策。42 实验的结果本文中测试了三个分割方法。有两张24位的大小为256x256的图片用来实验,在图2(a)和图3(a)中描述。图2(b)和图3(b)描述带有红色区域的损坏的版本分别变成含有3542个像素的修复区域和含有3817个像素的白色区域。这些实验在一个具有六个3.0GHz1GByteRAM的处理器分配记忆系统中进行。运行系统是Window XP。程序用C语言和MPI库编写。测试1:图2(b)基于三色通道的各分割;测试2:图3(b)基于区域分割;测试3:图2(b)区域通道风格;测试1和测试3的结果图是一样的,如图2(c)描述。图3(c)是测试2的结果图。在每个测试中,因为主程序没有进行计算任务,两个程序都被运行,这两个程序一个是主程序,另外一个是子程序。在其他节点上,只有一个程序被运行。图3实验2的测试图表1测试1的结果 表2测试2的结果 表3测试3的结果比较表1到表3,加速度和并行效率如下定义:(5)(6)当表示计算节点的数量时,表示在1个处理器上图像修复任务的运行时间,表示图像修复任务在n个处理器上的运行时间。5结

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论