没有合适的资源?快使用搜索试试~ 我知道了~
可在www.sciencedirect.com在线获取理论计算机科学电子笔记327(2016)125-146www.elsevier.com/locate/entcs基于移动O加载的高效图像拼接王秋实1法比安·雷迈尔2卡廷卡·沃尔特3柏林计算机科学德国柏林摘要图像拼接是将具有重叠部分的图像组合成一幅大图像的任务。它需要一系列复杂的计算步骤,特别是在移动终端上执行可能需要很长时间,消耗大量资源的能量移动加载可以缓解这些问题,因为它旨在在移动设备上执行复杂应用程序时提高性能并节省能源。在本文中,我们调查在何种程度上移动o-loading可能会提高性能和能源效率的图像拼接移动设备上。我们通过拼接两个或四个图像来演示我们的方法,但是这个过程可以很容易地扩展到任意数量的图像。我们研究了三种方法来o的计算的一部分,一个资源丰富的服务器,并评估他们使用几个指标。对于第一个加载策略,所有贡献图像都被发送、处理并返回组合图像。对于第二种策略,图像被加载,但不是所有的拼接步骤都在远程服务器上执行,并且较小的XML文件被返回到移动客户端。 XML文件包含移动终端执行最后一个拼接步骤(图像组合)所需的单应性信息。对于第三种策略,图像被转换成灰度级,然后发送到服务器并返回XML文件。考虑的指标是执行时间、要传输的数据的大小和存储器使用。我们发现,第一个策略实现了最低的总执行时间,但它需要更多的数据传输比其他两个策略。保留字:图像拼接,移动加载,程序分割1介绍拍照已经成为移动设备上最广泛使用的应用之一在过去的几年里,手机中的摄像头变得非常好。照片被用来保存难忘的时刻,但也采取扫描文件。对于全景图片以及较大文档的图像,单独的一个图像有时可能不足以表示完整的图片。 然后拍摄场景部分的几个为了还原全貌,这些图像必须1电子邮件:qiushi.wang @ fu-berlin.de2电子邮件:f. fu-berlin.de3电邮地址:katinka. fu-berlin.dehttp://dx.doi.org/10.1016/j.entcs.2016.09.0271571-0661/© 2016作者。出版社:Elsevier B.V.这是一篇基于CC BY-NC-ND许可证的开放获取文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。126Q. Wang等人/理论计算机科学电子笔记327(2016)125将它们缝合在重叠部分[16]。虽然这种多个图像的拼接对于环境文档的目的也是理想的,但是拼接多个图像所需的计算是相当广泛的[13]。即使移动终端的用户产生各个图片并请求获得组合图像,也不需要由移动终端执行拼接本身由于图像拼接算法包括繁重的计算,因此该工作理想地将由强大的服务器执行,而不是由移动终端执行。在强大的远程设备上执行复杂的任务可以节省时间并延长移动终端的电池寿命,但是必须将计算所需的数据发送到服务器,服务器在完成之后将结果返回到移动终端。移动应用程序加载是一种将大量计算转移到服务器以降低移动设备功耗的技术。在某些情况下,当将计算迁移到服务器时,任务的完成速度更快。在[15,26,27]中探索了不同的加载策略。必须满足一些要求,移动应用程序加载才能受益。传输的数据不能太大,网络连接必须足够大和稳定。本文的目的是探索移动应用程序的潜在好处,图像拼接的加载。我们已经实现了一个本地版本的图像拼接算法作为一个移动应用程序,可以使用三种不同的策略来加载全部计算或部分计算。图像拼接由五个不同的步骤组成,其中一些步骤需要比其他步骤更多的处理。我们使用执行时间作为衡量五个步骤复杂性的指标。测量结果表明,第一步和最后一步的计算量远远大于其他步骤。由于每一步都需要图像文件,一旦计算被加载,它应该尽可能长时间地留在服务器端。相应地,卸载策略1将整个拼接过程传送到服务器,而策略2和3在移动终端中本地计算最后一步。为了减小要传输的图像的大小,策略3在将图像发送到服务器之前将其压缩为灰度。使用实验比较了这三种策略的性能,根据我们的指标,我们发现策略1表现最好本文的其余部分组织如下,在下一节中,我们简要介绍了图像拼接的方法,并概括了移动负载的背景。在第3节中,介绍了将两幅图像拼接在一起的步骤,该步骤可以很容易地扩展到拼接两幅以上的图像。然后,在第4节中,提出了三种选择,o加载图像拼接过程的不同部分。在第5节中,显示了实验配置和评估不同方法的指标。在第六节中,对不同加载方法的实验进行了评价,并对结果进行了比较和讨论。最后一节总结了这项工作。Q. Wang等人/理论计算机科学电子笔记327(2016)1251272背景和相关工作2.1图像拼接图像拼接是计算机视觉中的一个老问题,在历史上已经以不同的方式解决,并且经常在文献中描述[6,24,13,21,16]。将不同的图像组合成一个的过程被用于例如组合由卫星拍摄的图像用于导航,从令人印象深刻的风景和巨大的物体生成全景视图[24],显微镜场景的拼接[13]或用于图像稳定[24]。如今,拍照已成为手机最广泛使用的应用之一,因此拼接这些图像也具有相关性。自动图像拼接主要有两类方法:直接拼接和基于特征的拼接。直接的方法是使用所有的图像数据和最小化像素到像素的差异。基于特征的方法从图像中提取特征并尝试匹配这些特征,这使得能够自动检测具有重叠部分的图像的相关性[6,24]。有几个移动设备应用程序能够进行图像拼接,如iOS的AutoStitch[1]或Android的DMD Panorama[2],但它们都没有使用移动或移动加载来提高性能。为了创建使用移动操作加载的图像拼接应用程序的原型,使用了非常基本、简单且非比例不变的基于特征的方法,该方法基本上可以分为五个步骤:特征点检测[11,17,23]、特征点描述[17]、特征匹配[17]、单应性估计[4,12,21]以及扭曲和投影。这些步骤在第3节中简要描述。对于所有这些步骤,已经进行了深入的研究,并且有几种方法可以做到这一点[6,13,24]。Herbon等人[13]还描述了通过添加先决条件来减少用于在移动设备上执行的图像拼接过程的复杂性的方法。 本文中使用的算法的实现未针对移动设备进行优化,不包括图像后处理,如混合或羽化以隐藏图像之间的过渡[16],并且不处理重影效应。2.2移动O型装载为了使移动设备上的应用程序快速和节能,移动应用程序加载的概念已经存在了十多年。已经提出了几种方法(克隆云、MAUI、Cloudlets等)大多数已知的方法都是旨在为程序员提供舒适的开发环境的体系结构,这些程序员希望用O型加载实现他们的移动对移动加载方法的研究可以分为三个主要方向[10]:客户端-服务器通信、虚拟机迁移和移动代理。在这三个类别中,虚拟机迁移是最流行的一个,它128Q. Wang等人/理论计算机科学电子笔记327(2016)125代表了未来的发展趋势。虚拟机的最大优点是移动端和服务器端两个版本应用程序的高度一致性。由于将应用程序从移动终端移动到服务器几乎不需要任何修改,因此减轻了程序员的负担。虽然客户端-服务器通信支持双方之间更健壮的链接移动代理的主要缺点是代理管理和应用程序同步的昂贵成本。为了理解每个类别的详细性质,我们对具体结构进行了深入的由于虚拟机吸引了最多的注意力,我们首先在下面列出属于这一类别的四个示例结构CloneCloud通过将未修改的移动应用程序的正确执行部分加载到在计算云中运行的设备克隆上来提升未修改的移动应用程序[7]。它提出了一个非常有趣的想法:在云中持续同步移动终端内容的副本,以便加载文件搜索或病毒扫描等操作。MAUI通过细粒度的代码或负载实现了最大限度地节省能源的潜力,同时最大限度地减少了应用程序所需的更改[9]。它将托管代码环境应用于根据应用程序的剖析和序列化动态划分程序。基于VM的Cloudlets利用虚拟机(VM)技术在附近的Cloudlets上快速实例化定制服务软件,并通过无线LAN使用该服务。由于小云和移动客户端之间的物理接近性,单跳网络延迟带来了瞬时连接的优势,但代价是高价格的大规模实现。Mobicloud将移动设备视为服务节点,并将其组织在ad-hoc网络中。每个节点都在云中镜像,并用作虚拟组件来提供计算服务[14]。除了提供传统的计算服务外,Mobicloud还通过解决网络中的信任管理、安全路由和风险管理问题来增强这些平台可以被认为是一个通用的和标准的移动应用程序加载结构的原型。我们认为,移动应用程序加载系统仍处于早期发展阶段。随着更智能的移动设备的发明,移动式装载结构也将进一步发展。毫无疑问,还将提出更多新颖的结构。事实上,如果能够制定一些统一的标准,来定义车载工作流程或系统结构的基本要素,将有助于移动车载的发展。3拼接过程图像拼接的任务是将两个或多个给定的图像粘贴在一起,使得两个图像上显示的点彼此重叠[21]。这个问题已经以不同的方式得到解决[6,24]。在这种情况下,使用基于特征的方法,因为该方法根据场景移动更鲁棒,并且其使得能够自动检测具有重叠部分Q. Wang等人/理论计算机科学电子笔记327(2016)125129Fig. 1. Moravec的角点检测思想[24]第10段。我们假设应该拼接在一起的图像是使用相同的相机拍摄的,具有相同的变焦设置,并且相机在拍摄照片时仅围绕其相机的中心旋转。由仅围绕其中心旋转的摄像机拍摄的图像通过称为单应性的非奇异3×3矩阵彼此相关[12]。如果在两个给定图像中存在至少四个对应点,则可以计算将一个图像映射到另一个图像上的单应性。根据该单应性扭曲其中一个图像并将其粘贴到另一个图像上将创建全景图像,因此将解决图像拼接问题[21]。3.1临界点检测图像拼接的第一步是决定使用哪种类型的点来找到两个图像之间的对应关系。一个可能的选择是使用角作为图像的特征点[11]。为了检测图像中的角点,可以使用Harris角点检测算法[11],该算法是旋转不变的并且对照明变化具有鲁棒性,但不是尺度不变的[11,17,23]。Harris角点检测是基于Moracec[19]和它的前身一样,在每个像素周围使用小窗口这些窗户在各个方向上都有轻微的移动。平均图像强度的变化,结果,ING从这些移位是用来使一个声明中的一个角落的存在,位于所考虑的窗口的中心的像素的区域。像素的图像强度可以定义为图像的8位灰度版本中像素的灰度级。如果强度的变化非常小,则像素位于可调区域中。如果沿一个方向的强度变化很小,而沿其他方向变化很大,则该像素是边缘的一部分。如果强度的变化在所有方向上都很大,则像素是孤立点或角落的一部分[11]。这三种可能的情况如图1所示。Chris Harris和Mike Stephens [11]提出了以下角响应函数,可用于确定像素是否在角区域内:R(x,y)=Det(M(x,y))−k·Trace(M(x,y))2130Q. Wang等人/理论计算机科学电子笔记327(2016)125y⎦图二、创建方向直方图和描述符向量[20]。哪里第二章Ix IyM(x,y)=0.Ix Iy I2矩阵M由位置(x,y)处的像素周围的窗口中的所有像素在x方向Ix和y方向Iy上的图像梯度的加权和构建。这些导数可以通过在图像上应用边缘检测器(如Sobel运算器[5])来获得。如果角点响应为负,则该像素是边缘的一部分。 如果响应很小但为正,则像素是可识别区域的一部分,如果响应为正且很大,则像素是孤立点或角落的一部分[11]。为了找到角点,必须为所有图像的每个像素计算R。然后,必须找到每个图像中R的局部最大值,然后将其视为图像的角点,从而视为图像的特征点3.2特征描述3.1节中描述的特征点是单个像素。当只考虑单个像素时,我们可以得到的唯一信息是它的(x,y)位置和颜色。因为要拼接在一起的图像可以不同,所以两个图像上对应点的位置不必相同,并且照明可能已经改变,因此颜色也不相同[23]。因此,仅考虑所发现的特征点来比较并找到对应的特征点是不够的。为了比较它们,必须借助更多关于它们周围区域的信息来统一描述它们[17]。SIFT描述符是尺度不变特征变换方法的一部分XQ. Wang等人/理论计算机科学电子笔记327(2016)125131大卫G。Lowe [17]并使用SIFT关键点周围的梯度方向和幅度的直方图来描述它们并生成SIFT特征。为了提供尺度不变性,SIFT关键点提供了关于检测到关键点的图像尺度的信息[17]。第节中描述的特征点3.1不提供此信息,但由于假设所有图像都具有相同的比例,因此不需要比例不变性。因此,由SIFT描述符创建的特征点的描述将不是尺度不变的,但旋转不变性和部分照明不变性将持续存在,因为SIFT关键点的尺度信息在描述过程中仅使用一次,以将原始图像的缩放版本设置为描述的基础[17]。为了提供描述的旋转不变性,必须为每个特征点分配一个主方向[17]。这是通过在每个特征点周围使用窗口并生成窗口区域中像素的梯度方向的方向直方图来完成的,如图2所示。对于每个像素,其图像梯度的幅度被添加到方向直方图的对应桶。属于直方图中最高峰的方向将被指定为特征点的主要方向[17]。为了生成特征点的描述,在特征点周围取一个较大的窗口,该窗口按主方向旋转并分成较小的窗口。然后,如前所述,为每个小窗口创建方向直方图。这些直方图被收集在一个向量中,这个向量现在是特征点的描述,一个特征[17]。在图2中可以看到创建描述向量的过程,圆圈表示高斯权重函数,可以用于改善结果[17]。3.3特征匹配下一步是匹配不同图像的特征,从而找到对应的点。因为所考虑的特征是如3.2节所述的向量,所以需要一种测量向量相似性的方法测量两个向量相似性的一种方法是计算它们的欧氏距离[17]。如果距离很小,则矢量非常相似。如果距离很大,它们就相差很大。在图像B的特征集中找到图像A的特征fA的最佳匹配的一种非常直观和简单的方法是找到图像B中与fA具有最小欧几里得距离的特征fB[17]。 如果图像B的特征集不为空,则该方法为图像A的每个特征fA找到最佳匹配。由于为特征的距离设置全局阈值以过滤错误匹配并不能很好地执行[17],因此使用特征fA与最近特征fB,best和第二最近特征fB,2ndbest的距离之比的阈值。如果到最佳匹配特征的距离比到第二最佳匹配的距离小得多,则以高确定性找到最佳匹配[17]。132Q. Wang等人/理论计算机科学电子笔记327(2016)1253.4单应性估算利用第3.3节中找到的相应特征,现在可以通过[12,4]中描述的直接线性变换算法(DLT)计算单应性H,使得对于齐次坐标p和pJ中的所有相应特征点,H ·p = pJ。因为四个对应对于计算这样的单应性是足够的,所以映射可能不是不同的。为了找到一个非常好的拟合单应性来将一个图像映射到另一个图像上,可以使用自适应随机样本一致性算法(RanSaC)[18]。3.5翘曲和投影利用如第3.4节中所述找到的单应性H,可以将两个图像彼此粘贴。首先,创建一个新的空曲面,并将其中一幅图像放在空曲面的中心,然后将另一幅图像的像素点在新曲面上的位置通过将原始图像中的像素点坐标乘以H来计算。4图像拼接当在具有有限的硬件资源和可用能量的移动设备上执行复杂应用时,移动操作加载通过根据电池寿命将繁重的计算发送到资源丰富的服务器而没有问题并且之后从它们接收结果来解决提供性能和节省能量的问题[26,27]。这个简单的基本思想如图3所示。图3.第三章。Mobile O的基本思想为了开发不同的加载方法,第一步是确定拼接过程中最昂贵的计算位于何处。为此,我们测量了图像拼接过程中按阶段划分的本地处理时间。图4显示了LGNexus 5智能手机上图像拼接过程的不同步骤的平均执行时间。Q. Wang等人/理论计算机科学电子笔记327(2016)125133图四、两个图像的图像拼接步骤的执行时间可以清楚地看到,步骤一和步骤五,特征点检测以及变形和投影是移动终端迄今为止最繁重的任务。因此,这些任务应该被加载到功能强大的远程服务器。由于特征点描述、特征匹配和单应性估计仅应用于检测到的特征点及其邻近区域,因此这些步骤所需的时间较少。特征点的数量明显小于所有图像的像素总数。另一方面,为了找到另一张图片中像素的角落或位置,必须考虑所有像素。假设服务器上的处理比移动终端上的处理快,一旦算法在服务器上运行,则应在服务器上执行尽可能多的处理步骤,以便最小化本地执行周期。对于图像拼接,将执行返回到移动终端并再次将其发送到服务器是没有意义的。由于移动客户端和服务器之间频繁的数据传输消耗了大量的时间和精力,因此应尽量避免。图5中显示了o加载方法应该具有的基本结构。图五、一种图像拼接的并行加载方法的基本结构现在的问题是何时开始卸载以及何时停止并返回到移动终端的处理。我们研究了三种方法来找到最优解。4.1方法1 -发送图像,接收图像第一种方法是不加载完整的拼接过程,希望最大限度地减少总执行时间,本地执行周期和内存使用。图像将直接发送到服务器,并由服务器返回结果图像。移动终端只需发送图像,接收结果并将其呈现在屏幕上,如图6方法1所示述本地执行134Q. Wang等人/理论计算机科学电子笔记327(2016)125见图6。 三种加载方式Q. Wang等人/理论计算机科学电子笔记327(2016)125135时间将接近于零,因为在移动终端上没有进行图像拼接处理的任何部分。将所有图像发送到服务器以及将所得到的大图像返回到客户端的时间是该方法在时间方面的成本的主要部分,因此发送和接收的传输时间预计很大。这种方法是唯一的解决方案,以避免加载到服务器的扭曲和投影的步骤。要扭曲和投影图像,服务器上需要完整的图像数据。如果拼接过程的其他部分将在卸载之前在移动终端上计算,则必须将该信息和图像发送到服务器。 因此,较晚开始O/O加载并在投影结束时停止将导致增加的传输时间和本地执行周期,并且预期不会有明显的优势。4.2方法2 -发送图像,接收XML第二种方法,如图6所示,是一种分别最小化总执行时间和数据返回时间的方法,因为从服务器发送到客户端的数据量减少了。由于图像数据最初位于移动终端上,因此不必从服务器发送回图像数据。为了将图像拼接在一起,仅需要图像的顺序和将图像映射到彼此上的单应性这些信息可以以XML格式发送。XML数据将比大的全景图像小得多,因此数据传输时间将减少。在解析XML数据之后,移动终端可以根据接收到的顺序和单应性将图像本地缝合在一起。由于图像拼接过程的最后一步将在移动终端上执行,因此本地执行周期将略长,但将结果发送回服务器的时间预计将比第一种方法短得多4.3方法3-发送灰度图像,接收XML第三种方法旨在通过最小化要发送和返回的数据的文件大小来最小化总执行时间和如果图像转换为8位灰度图像,可以减少图像拼接过程中计算图像强度所需的时间。因为不需要颜色信息,所以这些图像比彩色图像需要更少的存储器。因此,将它们发送到服务器所需的时间也将少于发送彩色的。由于服务器没有颜色信息,因此无法发送最后一张照片回来了。出于这个原因,同样只有图像顺序和单应性作为XML数据发送回去。由于图像拼接过程的最后一步和第一步的一部分是在移动终端上执行的,如图6中的方法3所示,因此可以预期本地执行周期是三种方法中最大的。传输时间可能是最短的。136Q. Wang等人/理论计算机科学电子笔记327(2016)1254.4三种重载策略的比较根据所描述的方法,最相关的方面是找到本地执行时间和数据传输时间之间的良好粗略地说,通过减少传输时间,增加了本地执行时间,并且通过增加传输时间,可以减少本地执行时间在不同的网络速度下,当拼接相同的图像时,每种方法的本地执行时间的变化将近似恒定,但传输数据的时间在很大程度上取决于网络速度。如果网络速度较低,则在方法二和方法三中发送的数据大小的减小将导致传输时间的大幅减少,而在快速网络的情况下,预计该减少不太相关。因此,如果移动终端的网络连接快速且稳定,则第一种方法预计是根据总执行时间的最佳方法,因为资源受限的移动终端很少被利用。如果网络连接很慢并且不是很稳定,则第三种策略预计是最好的,因为它从减少的数据传输量中受益匪浅。在这种情况下,第二种方法也可能比第一种方法更好。如果要传输的数据应该最小化,则第三种方法在所有情况下都是最佳的。当使用第一种方法时,移动终端上的存储器使用应当被最小化,并且第二和第三策略也将比算法的完全本地执行使用更少的存储器。一般来说,我们预计所有描述的方法应该比完全本地执行更好,根据他们的总执行时间,本地执行周期和内存使用。5实验配置5.1平台结构我们已经实现了一个标准的本地Java应用程序的图像拼接。除了标准库之外,唯一使用的库是Jama库[3],用于矩阵运算,如矩阵乘法,求逆和奇异值分解的计算。Java应用程序被调整为在移动终端上作为Android应用程序运行。在[26]中引入的o加载方法后来被添加到Android应用程序中。然后将图像拼接应用程序迁移到远程Apache Tomcat服务器。在网站4中添加了一个新网页,以将新应用程序集成到我们现有的Web应用程序中[25]。开发了一个Java servlet,以覆盖Android客户端的所有不同的请求,根据o加载方法。该Android应用在一款搭载Android系统的LG Nexus55.1.1 Lollipop(API 22)作为操作系统。智能手机连接到一个4https://www.mi.fu-berlin.de/o http://Q. Wang等人/理论计算机科学电子笔记327(2016)125137运行Android Studio 1.2.2的计算机来测量内存使用情况。互联网连接由一个热点提供给MacBook Pro,MacBook Pro通过LAN连接到互联网。通过这样做,可以通过使用XCode提供的Network Link Conditioner程序来模拟不同的网络在实验中,我们模拟了两种网络条件,DSL(2 MB/s下载,256 KB/s上传,5 ms延迟)和边缘(240 KB/s下载,200 KB/s上传,400 ms延迟)。实验的基本设置见图7。见图7。 实验配置。该应用程序测试了两个和四个图像。对每种组合重复执行20次。在计算结束时,将用于测量的时间戳自动写入存储在智能手机中的.csv文件。在开发Android应用程序时出现了一些问题。LG Nexus 5相机拍摄的图像具有3200× 2368像素的高分辨率虽然在笔记本电脑上运行的标准本地Java应用程序能够拼接高分辨率图像,但在智能手机上无法将它们拼接在一起。因为Android应用程序的可用堆大小太小,并且抛出了内存不足异常提高Android应用程序的内存效率最终避免了拼接高分辨率图像时的内存不足异常,但与功能更强大的台式PC或笔记本电脑上的标准应用程序相比,计算时间非常长。在更广泛地部署我们的方法之前,需要进一步改进内存管理。在这项工作中,我们使用一个简单的解决方案解决了内存问题。在运行应用程序之前,图像自动缩小到较低的分辨率。这降低了整个过程的内存需求,并用于第6节中列出的所有结果。5.2考虑到由于图像拼接的不同加载方法需要进行比较,因此需要对它们进行评价。总执行时间:第一个指标是使用卸载方法时的总执行时间Toffload。根据性能指标,如果计算整个程序所需的总执行时间138Q. Wang等人/理论计算机科学电子笔记327(2016)125见图8。 总执行时间。移动终端上的程序的执行时间大于使用移动卸载时所需的总执行时间,即T本地> T卸载。本地执行时间:第二个度量是本地执行时间tlocal。这是在移动终端上计算部分图像拼接过程所需的时间。 因为假设服务器上的计算效率更高并且节省移动终端的电池寿命,则应该在服务器上执行最大可能的计算量。因此,本地执行时间应尽可能短远程执行时间远程执行时间tremote也将被测量。这是在服务器上计算图像拼接过程的一部分所需的时间。传输时间:传输时间ttranss包括将所需数据发送到服务器的时间ttoServer和将结果返回到客户端的时间ttoClient。传输时间应该最小化,因为当移动终端用户处于漫游状态时,发送数据对于他们来说可能非常昂贵。此外,在恶劣的网络条件下,传输往往缓慢且不稳定[26]。要发送的数据量:通过查看每月的移动电话计划,移动设备的互联网流量通常有每月数据量限制。因此,发送到服务器dtoServer和返回到客户端dtoClient的数据量也应该Q. Wang等人/理论计算机科学电子笔记327(2016)125139被测量和最小化。内存使用率:本文中使用的最后一个度量是移动终端的内存使用率m。移动设备的内存非常有限,因此应尽量减少使用。如第4.4节所介绍的,为了根据总执行时间T卸载来衡量交易传输时间相对于本地执行时间的收益,可以使用它们的变化b=ΔtlocalΔttranss图第九章本地和远程执行周期tlocal和tremote。当b>1时,tradeo的引入导致Toffload的减小. 如果b= 1,则交易将不影响总的执行时间,但是可能是期望的,例如如果对每月数据量有限制,并且因此传输时间的减少比更少的本地执行时间更好。如果b >1,tradeo将增加总执行时间。6测量在下文中,将根据第5.2节中的指标对三种拟议方法进行衡量。6.1总执行时间所提出的方法的总执行时间Toffload等于本地执行周期tlocal、传输时间ttranss和远程执行周期tremote之和。首先,移动终端通过WiFi连接到互联网。图8显示了累积的总执行时间。可以看出,所有的O型加载方法的执行时间都比完全本地执行短。O4.1节中描述的重载方法一导致最短的执行时间。通过使用该方法,拼接两幅图像所需的时间平均减少了50%。对于拼接四张图像,约73%140Q. Wang等人/理论计算机科学电子笔记327(2016)125Δt所需的时间更少方法一相对于其他方法的优势随着要拼接的图像量的增加而方法二和方法三的最大执行部分是本地执行时间tlocal和传输时间ttrans.远程执行周期非常短,因为远程服务器非常强大。 也可以看出, 如果存在良好的互联网连接,则将传输时间ttranss与本地执行时间tlocal进行交易是没有好处的。扭曲和投影图像所需的本地执行时间大于所节省的传输时间,因此Δ tlocal> 1。反式当拼接两个图像时,方法三给出了比方法二更好的结果,而四个图像的拼接并不受益于移动终端上的图像的预计算。将图像转换为8位灰度图像所需的本地执行时间tlocal的量比通过预计算的传输时间ttranss通过切换到速度较慢的数据网络Edge,所有o加载方法的总执行时间都增加了,如图8所示。在较差的网络条件下,方法二和方法三在拼接两幅图像时比方法一稍快,但方法一在拼接四幅图像时仍然更快。原因是本地执行时间对图像添加的反应比方法二和方法三可以通过减少传输时间ttrans.然而,方法一和方法二和方法三缝合四幅图像的总执行时间的差异在较低的网络速度的情况下减小6.2本地执行时间在图9中显示了方法的本地执行时间。使用方法1将本地执行时间设置为零,因为没有本地计算发生。但是当使用方法二时,由于变形和投影必须在移动终端上完成第三种方法与其它的本地加载方法相比导致了最高的t_local值,因为图像的压缩也必须在移动终端上执行。然而,方法三的本地执行时间低于在本地计算整个拼接过程局部执行时间显然不受网络条件的影响,但方法二和方法三的t局部随着拼接图像的增多而增加。方法一的本地执行时间既不受网络条件的影响,也不受要拼接的图像数量的影响。6.3远程执行时间在图9中,显示了不同加载方法的远程执行时间与本地执行时间一样,它们与网络条件无关,但受要缝合的图像数量的影响。方法一导致最高的远程执行时间,因为所有的计算都被加载到服务器上我们Q. Wang等人/理论计算机科学电子笔记327(2016)125141假设服务器比移动终端中的服务器更快,并且因此纯图像拼接过程平均花费少96%的时间。方法二保留了在移动终端上进行变形和投影的步骤,因此远程执行时间较短。方法三还在移动终端上保持图像到8位灰度图像的转换,这进一步减少了远程执行时间。由于变形和投影的部分比转换的计算量更大,因此方法一和方法二的远程执行时间的差异大于方法二和方法三的远程执行时间之间的差异。图10. 要发送到服务器的数据大小。图十一岁 要发送到客户端的数据大小。6.4传输时间传输时间ttranss取决于发送到服务器和返回到客户端的数据量以及网络条件。随着要发送的数据量的增加,数据传输需要更长的时间,并且随着网络速度的降低,相同数量的数据传输明显变慢142Q. Wang等人/理论计算机科学电子笔记327(2016)125方法一和方法二将压缩成JPEG格式的整个图像数据发送到服务器。第三种方法通过省略颜色信息来压缩图像数据因此,每个像素只需传输一个字节。然而,JPEG是一种压缩图像格式,因此压缩文件的字节大小可能小于图像的像素量。每像素发送一个字节将比发送压缩的JPEG文件花费更长的时间。因此,只有当图像的字节文件大小之和大于它们的像素之和时,才显然,当增加要拼接的图像数量时,发送到服务器的数据也会增加,如图10所示。从服务器返回到客户端的数据也由要缝合的图像数量决定当使用方法1时,最终拼接图像将被发送回。因此,方法一的dto Client等于拼接过程的图像结果的大小。这个大小当然取决于用于生成它的图像的大小,但也取决于不同图像的重叠部分的量。较少的重叠部分导致较大的组合图像。方法2或方法3返回的XML数据比方法1的dtoClient小得多,如图11所示。这是因为XML数据仅包含用于映射图像的单应性信息。在变形过程中,一个图像所需的单应性信息的量近似恒定,因此当添加更多图像时,XML数据的大小线性增加将所有图像发送到服务器并将结果图像返回到客户端所需的传输时间,如方法1所做的那样,是所有方法中最高的虽然方法二也将所有图像数据发送到服务器,但只有XML数据返回到客户端,这会缩短传输时间,如图12所示。如果图像的像素之和小于文件大小之和(以字节为单位),则方法三导致最小的传输时间。见图12。 Transmission Timet trans.Q. Wang等人/理论计算机科学电子笔记327(2016)1251436.5内存使用所有o加载方法的内存使用都小于完全本地执行的内存使用,如图13所示。显然,内存使用与网络条件无关,但当添加更多图像进行拼接时,内存使用会增加。图十三. 内存使用率m.由于所有拼接计算都已迁移到服务器,因此方法一在所有情况下需要的内存量最低。当使用方法一时,两幅图像的内存使用量减少了25%,四幅图像的内存使用量减少了45%。方法三与其它的预加载方法相比具有最高的存储器使用,因为图像压缩和变形以及投影的步骤都在移动终端上执行6.6讨论在我们的实验条件下,如果网络条件至少为Edge,则与完全本地执行相比,所有的o加载方法都减少了总执行时间。 由于Tlocal>Toffload总是令人满意的,因此通常可以说使用卸载方法是有益的。根据网络速度和延迟,拼接两张图像的总执行时间可以减少约50%,拼接四张图像的总执行时间可以减少73%。与4.4节的假设相反,方法1几乎在所有情况下都导致了最小的总执行时间和本地执行时间,这使得该方法显然是最好的。用传输时间换取本地执行时间只对在恶劣的网络条件下拼接两幅图像有意义使用方法一,甚至可以拼接高分辨率的图像。图像作为文件直接发送到服务器,结果直接写入144Q. Wang等人/理论计算机科学电子笔记327(2016)125a file.因此,图像不必加载到应用程序中,也不会发生内存不足的异常。然而,当使用方法1时,传输时间最高。如果要传输的数据大小应最小化,则方法二是优选的。在某些情况下,由于图像的文件大小之和(以字节为单位)大于图像的像素之和,方法三是最佳的,因为它需要最小的数据传输时间。与本地执行的内存使用量相比,任何一种O-装载方法都降低了内存使用量内存使用量最多可减少45%。 使用方法1可以使其最小化。 通常,方法一将是最佳选择,以最小化总执行时间并减轻移动终端的负担,从而改善用户体验。7结论在本文中,我们已经表明,移动应用程序的加载可以提高移动设备上的图像拼接的性能我们已经调查和比较了三种不同的策略来执行o加载。第6节中的测量表明,移动设备上的图像拼接有利于使用移动设备加载。与在移动终端上的完全本地执行相比,所有提出的本地加载方法导致减少的总执行时间、本地执行时间和存储器使用,并且因此改善了用户体验。也许应该使用更优化的应用程序版本和更多样化的图像集重复测量我们的结论是,所有描述的图像拼接的加载方法的目的是找到一个很好的折衷之间的本地执行时间和传输时间。事实证明,就总执行时间而言,将所有计算发送到资源丰富且功能强大的远程服务器是最佳选择,并且它甚至使我们能够拼接高分辨率图像,而无需对移动设备上的执行程序进行任何优化然而,开发的拼接图像的程序还没有优化。不使用等位基因配对,但在缝合过程的许多阶段都是可能的。举个例子,不同的、独立的图像的特征可以被并行地发现。还可以通过添加一些先决条件来降低图像拼接算法的复杂性,如图像的顺序,如Herbon等人所述。[13 ]第10段。拼接过程得到的结果可以通过滤波、羽化或混合等技术进一步改进[16],以隐藏过渡从一个图像到另一个。本文所介绍的三种加载方法都是很好的,但都是基本的。他们只是一个预览的可能性移动或移动加载可以或其他。o加载方法可以以多种方式扩展,并且添加决策,如根据网络速度,图像数量和图像大小动态选择o加载方法,以及[26]中描述的本地重启方法可以导致进一步的改进。
下载后可阅读完整内容,剩余1页未读,立即下载
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![7z](https://img-home.csdnimg.cn/images/20210720083312.png)
![](https://profile-avatar.csdnimg.cn/default.jpg!1)
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
我的内容管理 收起
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
会员权益专享
最新资源
- 利用迪杰斯特拉算法的全国交通咨询系统设计与实现
- 全国交通咨询系统C++实现源码解析
- DFT与FFT应用:信号频谱分析实验
- MATLAB图论算法实现:最小费用最大流
- MATLAB常用命令完全指南
- 共创智慧灯杆数据运营公司——抢占5G市场
- 中山农情统计分析系统项目实施与管理策略
- XX省中小学智慧校园建设实施方案
- 中山农情统计分析系统项目实施方案
- MATLAB函数详解:从Text到Size的实用指南
- 考虑速度与加速度限制的工业机器人轨迹规划与实时补偿算法
- Matlab进行统计回归分析:从单因素到双因素方差分析
- 智慧灯杆数据运营公司策划书:抢占5G市场,打造智慧城市新载体
- Photoshop基础与色彩知识:信息时代的PS认证考试全攻略
- Photoshop技能测试:核心概念与操作
- Photoshop试题与答案详解
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)