基于用户界面的图像搜索方法技术

技术编号:4097782 阅读:223 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供了一种基于用户界面的图像搜索方法,其特征在于,包括:S1:将基准图像和目标区域图像分别转换为像素矩阵;S2:根据第一预置规则读取所述目标区域图像的像素矩阵,以及根据第二预置规则识别其中与所述基准图像的像素矩阵相匹配的子像素矩阵;S3:将所述子像素矩阵对应的子图像标记为目标图像,计算其相对于所述目标区域的坐标,同时计数器加一;S4:判断所述目标区域图像的像素矩阵是否已读取完毕;若是,则导出S3中记录的所有坐标和计数器累加值;若否,则返回S2。该方法可以兼容不同操作系统和硬件设备;可以支持实现在目标区域内查找静态或动态子图像,计算其坐标并统计其数量。

【技术实现步骤摘要】

本专利技术涉及计算机图像及软件测试
,尤其涉及一种基于用户界面的图像 搜索方法。
技术介绍
作为软件测试自动化技术之一,图形图像识别是比较重要的一项内容,其是图形 用户界面自动化测试过程中不可缺少的环节。在一些特殊情况下,准确的图像识别甚至可 以作为自动化测试的支撑技术之一。因此实现准确的、可靠的、兼容性强的图像识别是一项 必要且重要的工作。一些自动化测试工具自带有图像验证的功能,根据其向导截取目标对象相对区域 的图像,在测试回放过程中自动验证运行时对象指定区域图像与预期截取的图像是否一 致。然而,通过这种方法不能获得目标图像的坐标和当前相同图像的数量;不能同时良好支 持多类型操作系统和不同的硬件设备差异;不能调整误差值;且不能识别动态图片。
技术实现思路
(一 )要解决的技术问题本专利技术要解决的技术问题是如何在支持多类型操作系统和克服不同的硬件设备 的差异的前提下,在计算机屏幕指定的区域内查找静态/动态目标图片的数量和位置。( 二 )技术方案为解决上述技术问题,本专利技术的技术方案提供了一种基于用户界面的图像搜索方 法,包括Sl 将基准图像和目标区域图像分别转换为像素矩阵;S2 根据第一预置规则读取所述目标区域图像的像素矩阵,以及根据第二预置规 则识别其中与所述基准图像的像素矩阵相匹配的子像素矩阵;S3 将所述子像素矩阵对应的子图像标记为目标图像,计算其相对于所述目标区 域的坐标,同时计数器加一;S4 判断所述目标区域图像的像素矩阵是否已读取完毕;若是,则导出S3中记录 的所有坐标和计数器累加值;若否,则返回S2。进步一地,所述步骤Sl还包括将不同操作系统或硬件设备对同一图像的唯一截 图作为基准图像预存于磁盘,通过调用与所述磁盘的路径向对应的XML标签获取所述基准 图像。其中,所述步骤Sl中,使用java的JDK所提供的PixelGrabber类,将所述基准图 像和目标区域图像分别转换为以RGB整型颜色值作为元素的像素矩阵。进一步地,当所述基准图像为动态图像时,所述方法在步骤Sl之前还包括S0 将 所述基准图像解析为若干帧静态图像;且所述方法在步骤S4之后还包括S5 针对所述若 干帧的静态图像逐帧依次执行所述步骤S2-S4。其中,步骤S2中,所述第一预置规则为以像素为单位,自上向下、自左向右、逐 行读取所述目标区域图像的像素矩阵,直至待读取像素无法作为左上角元素构成一个子矩 阵。其中,步骤S2中,所述第二预置规则为若以当前读取像素作为左上角元素的子 像素矩阵与所述基准图像的像素矩阵的对应位置的元素RGB值的误差值M在一个预置的阈 值范围内,则识别所述子像素矩阵与所述基准图像的像素矩阵相匹配。其中,所述预置的阈值范围为M彡150。进一步地,所述第二预置规则还包括若所述基准图像为不完全透明,则从其像素 矩阵中依次提取不透明的像素值,与目标区域图像中待比对的子矩阵中的对应元素进行匹 配。(三)有益效果根据本专利技术的,可以在目标区域内查找静态或动态 子图像,计算其坐标并统计其数量;根据本专利技术的方法可以兼容不同操作系统和硬件设备。附图说明图1是根据本专利技术的的流程图;图2是根据本专利技术的的一个实施例的像素矩阵转 换及图像匹配示意图。具体实施例方式本专利技术提出的,结合附图和实施例说明如下。如图1所示,本实施例的包括以下步骤Sl 将基准图像和目标区域图像均转换为像素矩阵;根据本专利技术的实施例,目标区域是指用户界面,例如,计算机屏幕上的指定区域; 目标区域图像是指被测软件生成的图像在该指定区域内的截屏(屏幕截图,下文用Pic表 示);基准图像是被测软件在当前测试例下预期生成的图像,包括静态图像和动态图像,可 以从已运行的被测软件中截取符合业务逻辑的图片作为基准图像,也可以将产品设计人员 或界面设计人员等提供的设计图片作为基准图像,以实际需求为准。具体来说,默认情况下 使用设计图片;当设计图片与特定计算机不能匹配一致,且通过人眼识别的判断差异在产 品设计的允许范围内,则使用截图。根据本专利技术的实施例,将基准图像和目标区域内的图像转换为RGB值表示的像素 矩阵。具体来说,使用java的JDK所提供的PixelGrabber类,把目标区域图像和基准图像 分别转换为以RGB整型颜色值表示的像素矩阵,每个像素都有自己的颜色值。如图2所示, 本实施例中,将基准图像转换为3 X 3元素矩阵B,将目标区域图像转换为5 X 5元素矩阵B, 其中,矩阵B和矩阵S中的每一元素均对应一 RGB整型值。关于像素矩阵的转换和RGB整 型值均为已知技术,在此不做赘述。优选地,对于动态测试需求,即当基准图像为动态图像时,该步骤Sl之前还应包 括对动态图像进行解析的步骤,将被测软件预期生成的动态图像解析为若干帧静态图像, 解析帧数以实际需求为准,一般情况下按该动态图像的实际全部帧数进行解析,解析结果作为静态基准图像集合进行遍历使用;如需要减小解析出的静态图像基数以提高遍历效 率,则可在不影响可靠性的前提下减少解析出的静态图片数量。具体来说,基准图像一般作为磁盘文件预先保存。由于存在不同操作系统或硬 件设备(例如,WindowsXP 与 WindowsVista ;GeForce8400MG 显卡芯片计算机与 Intel (R) GMA3000显卡芯片计算机),被测软件生成的图像有可能会有细微的差异,这样的差异会导 致本专利技术的图像搜索方法不能兼容多个设备,并且此类问题不能通过设置误差值的方法统 一解决。在这种情况下,可以使用图片管理类,通过XML方式映射对应的磁盘路径,该路径 下只存放各设备对于同一图像的唯一截图,即用户只需要传入定义好的基准图像XML标 签,并在需要的情况下截取基准图片保存到标签指明的真实磁盘路径(如果该路径下已经 有基准图像且符合要求,则不再需要截图)即可;这里,各设备对同一图像的唯一截图是 指在两台或更多不同的计算机上截取相同应用程序同一界面同一区域(相对程序界面的 坐标相同)的Pic。当然,也可以根据具体情况,在软件产品需求设计允许的误差范围内截 取不同尺寸的图片,例如在一台计算机中以某一点为起始截取40X40像素的图片,在另一 台计算机相同起始点截取39X39像素的图片,这两幅图片如果可以唯一表示同一业务逻 辑,则可视为相同的图片。S2 根据第一预置规则读取所述目标区域图像的像素矩阵,以及根据第二预置规 则识别其中与所述基准图像的像素矩阵相匹配的子像素矩阵;在本实施例中,第一预置规则是指以像素为单位,自上向下、自左向右读取所述 目标区域图像的像素矩阵,直至待读取像素无法作为左上角元素构成一个子矩阵;第二预 置规则是指若该目标区域图像的像素矩阵中的某个子矩阵(以某一像素点作为左上角元 素的子像素矩阵)与所述基准图像的像素矩阵的对应位置的元素RGB值的误差值(本实施 例中,误差值是指两个元素的差值的绝对值)在一个预置的阈值范围内(优选为150),则识 别所述像素矩阵所对应的子图像为目标图像。具体来说,仍以图2为例详细描述步骤S2中的矩阵匹配过程。如图2所示,由于 基准图像被转换为3X3元素矩阵B,则,在目标区域图像像素矩阵S中,从第一行第一列的 元素Sll开始直到元素S33为止,以先横向再纵向的顺序,依次读取每一元素,将以当前读 取本文档来自技高网...

【技术保护点】
一种基于用户界面的图像搜索方法,其特征在于,包括:S1:将基准图像和目标区域图像分别转换为像素矩阵;S2:根据第一预置规则读取所述目标区域图像的像素矩阵,以及根据第二预置规则识别其中与所述基准图像的像素矩阵相匹配的子像素矩阵;S3:将所述子像素矩阵对应的子图像标记为目标图像,计算其相对于所述目标区域的坐标,同时计数器加一;S4:判断所述目标区域图像的像素矩阵是否已读取完毕;若是,则导出S3中记录的所有坐标和计数器累加值;若否,则返回S2。

【技术特征摘要】
一种基于用户界面的图像搜索方法,其特征在于,包括S1将基准图像和目标区域图像分别转换为像素矩阵;S2根据第一预置规则读取所述目标区域图像的像素矩阵,以及根据第二预置规则识别其中与所述基准图像的像素矩阵相匹配的子像素矩阵;S3将所述子像素矩阵对应的子图像标记为目标图像,计算其相对于所述目标区域的坐标,同时计数器加一;S4判断所述目标区域图像的像素矩阵是否已读取完毕;若是,则导出S3中记录的所有坐标和计数器累加值;若否,则返回S2。2.如权利要求1所述的基于用户界面的图像搜索方法,其特征在于,所述步骤Sl还包 括将不同操作系统或硬件设备对同一图像的唯一截图作为基准图像预存于磁盘,通过调 用与所述磁盘的路径向对应的XML标签获取所述基准图像。3.如权利要求1所述的基于用户界面的图像搜索方法,其特征在于,所述步骤Sl中,使 用java的JDK所提供的PixelGrabber类,将所述基准图像和目标区域图像分别转换为以 RGB整型颜色值作为元素的像素矩阵。4.如权利要求1所述的基于用户界面的图像搜索方法,其特征在于,当所述基准图像 为动态图像时,所述...

【专利技术属性】
技术研发人员:姚维刘显健郑立瑾刘剑杨轩
申请(专利权)人:北京神州泰岳软件股份有限公司
类型:发明
国别省市:11[中国|北京]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1