发明内容
为了解决上述现有技术中存在的问题,本发明实施例提供一种优化的图片拼接方法、装置、计算机设备和存储介质。
本发明解决其技术问题所采用的技术方案是:
本发明实施例的一个方面提供了图片拼接方法,所述方法包括:
分别获取第一拍摄装置拍摄目标物的第一图片和第二拍摄装置拍摄目标物的第二图像;
通过训练后的深度学习识别模型对所述第一图片和所述第二图片进行识别分类,以得到与所述第一图片对应的目标物的第一拓扑结构和所述第二图片对应的目标物的第二拓扑结构;
获取所述第一拓扑结构和所述第二拓扑结构的结构相似性反馈,若所述结构相似性反馈在预设阈值要求内,则获取定位锚点;
根据所述定位锚点获取并处理所述第一图片和所述第二图片中重复识别的目标物,以拼接得到未重复识别的目标物的集合。
根据本发明实施例,所述第一拓扑结构和所述第二拓扑结构的结构相似性反馈的方法包括:
对所述第一拓扑结构内的目标物按预设顺序得到第一目标物集合,对所述第二拓扑结构内的目标物按所述预设顺序得到第二目标物集合;
获取所述第一目标物集合中的第一预设初始目标物和所述第二目标物集合中的第二预设初始目标物;
构建所述第一预设初始目标物和所述第二预设初始目标物的映射关系;
基于预设规则,获取最近邻所述第一预设初始目标物的第一近邻目标物集合和最近邻所述第二预设目标物的第二近邻目标物集合;
根据所述映射关系,将所述第一近邻目标物集合映射到所述第二近邻目标物集合中,若得到映射目标物集合,则:
若所述映射目标物集合内的目标物数量为所述预设数量,则将所述第一预设初始目标物和所述第二预设初始目标物设置为定位锚点。
根据本发明实施例,获得所述映射目标物集合的方法具体为:
计算所述第一目标物集合中除所述第一预设初始目标物外的所有目标物与所述第一目标物之间的第一距离,以及所述第二目标物集合中除所述第二预设初始目标物外的所有目标物与所述第二目标物之间的第二距离,得到第一距离集合和第二距离集合;
基于所述第一距离集合按照预设顺序选取预设数量的目标物,得到最近邻所述第一预设初始目标物的第一近邻目标物集合,基于所述第二距离集合按照同一预设顺序选取同一预设数量的目标物,得到最近邻所述第二预设初始目标物的第二近邻目标物集合;
根据所述映射关系,将所述第一近邻目标物集合映射到所述第二近邻目标物集合中,以获得映射目标物集合。
根据本发明实施例,还包括:若所述映射目标物集合内的目标物数量小于所述预设数量,则遍历映射处理完所述第一近邻目标物集合和所述第二近邻目标物集合内的各目标物,直至所述映射目标物集合内的目标物数量为所述预设数量,获得对应的定位锚点。
根据本发明实施例,所述拼接得到未重复识别的目标物的集合的方法包括:
根据预设搜索区域大小,以定位锚点为中心,分别获取第一图片内的第一带状区域和第二图片内的第二带状区域,对应得到第一高置信搜索目标物集合和第二高置信搜索目标物集合;
获取所述第一高置信搜索目标物集合中的第一预设高置信目标物和所述第二高置信搜索目标物集合中的第二预设高置信目标物;
计算所述第一预设高置信目标物和所述第二预设高置信目标物的拓扑结构相似性,以得到高置信重叠目标物。
本发明实施例的另一个方面提供了图片拼接装置,包括获取处理模块、反馈处理模块和拼接处理模块。获取处理模块用于分别获取第一拍摄装置拍摄目标物的第一图片和第二拍摄装置拍摄目标物的第二图像,以及通过训练后的深度学习识别模型对所述第一图片和所述第二图片进行识别分类,以得到与所述第一图片对应的目标物的第一拓扑结构和所述第二图片对应的目标物的第二拓扑结构。反馈处理模块用于获取所述第一拓扑结构和所述第二拓扑结构的结构相似性反馈若所述结构相似性反馈在预设阈值要求内,则获取定位锚点。拼接处理模块用于根据所述定位锚点获取并处理所述第一图片和所述第二图片中重复识别的目标物,以拼接得到未重复识别的目标物的集合。
本发明实施例的另一个方面提供了一种计算机设备,所述计算机设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述所述的图片拼接方法。
本发明实施例的另一个方面提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述所述的图片拼接方法。
根据本发明实施例,可以至少部分地解决相关技术中密集目标物堆叠的宽幅场景下,多拍摄装置拍摄的图片难以拼接的问题,进一步解决因多拍摄装置拍摄目标物从而导致产生重叠区域、导致目标物重复识别的问题。
本发明实施例的内容以及它的其他发明目的及有益效果将会通过结合附图和对优选实施例的描述而更加明显易懂。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本发明实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本发明实施例。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的计算机设备”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。在使用类似于“A、B或C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B或C中至少一个的计算机设备”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的计算机设备等)。本领域技术人员还应理解,实质上任意表示两个或更多可选项目的转折连词和/或短语,无论是在说明书、权利要求书还是附图中,都应被理解为给出了包括这些项目之一、这些项目任一方、或两个项目的可能性。例如,短语“A或B”应当被理解为包括“A”或“B”、或“A和B”的可能性
说明书一个或多个实施例中使用了流程图用来说明根据本说明书一个或多个实施例的计算机设备所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
在大宽幅场景的图像识别过程中,相关技术中通常采用的是多个拍摄装置在一定距离下拍摄然后对拍摄的图片进行拼接,最终实现目标图像的识别。在上述过程中,现有的拼接技术多数为像素级的拼接,但在需要对密集型的目标物进行识别时,通常需要近距离拍摄,获得的图片之间的视差较大,采用像素级的拼接难以实现准确拼接,从而造成目标物的识别困难。
更为具体地,以在大量钢筋堆叠在一起进行识别的应用场景中为例。
无论在钢筋的生产过程中还是使用过程中,对于钢筋数量的统计都是非常重要的一个环节。例如在工地现场,对于进场的钢筋车,验收人员需要对车上的钢筋进行现场人工点根,确认数量后钢筋车才能完成进场卸货。而目前的现场钢筋盘点有两种方式:一种是人工计数的方式,这种方式也是目前主要采用的方式,现场的计数工人需要使用不同颜色的彩笔对不同型号的钢筋进行标记和计数,这样的计数方式不仅耗时长,消耗人力,计数效率也十分低下,一般一车钢筋一次进场盘点需数个小时,计数的准确率也会随着工作时间拉长导致的工人疲劳而降低,同时,人工计数结果也很难追溯,因此人工计数已经不能适应现代化的自动生产需求。
另外一种是基于机器视觉的智能钢筋计数技术,这种识别技术有着多种实现方案,目前已取得了巨大的进展,国内外针对不同场景设计开发了一系列产品,使得计数的工作量大大减少。但是,这些产品在使用过程中有诸多条件限制,比如只能近距离拍摄独立的捆,对整车或施工场地具有较多钢筋的宽幅场景,要拍摄独立的捆极其困难,为了识别计数,还需要对拍摄的图片进行大量的后期人工处理,无法实现自动计数,人工工作量仍然很大。为解决宽幅场景的钢筋计数识别,一个容易想到的方案是用多个摄像头在一定距离下拍摄然后对拍摄的图片进行拼接,最终实现计数,然而这种方案存在一个技术难点即大视差情况下的图像拼接问题。
现有的拼接技术是一种像素级的拼接,主要应用于一些精度要求不高的场景,比如:风景照片的拼接,建筑图片的拼接,这些都是一些大视觉范围的图片拼接,对拼接的细微结果要求不高,只需要视觉感官是一张整体画面即可,比如说一棵树的某个枝条拼接错误,对视觉效果基本没影响。但钢筋计数是一个密集型目标识别与准确计数问题,需要对实际的钢筋支数进行准确计数,任何一个细微的拼接错误都会导致计数结果产生严重的偏差。对钢筋计数问题,为了拍清楚每一根钢筋,通常需要近距离拍摄,照片的视差较大,采用传统的基于像素级的拼接方法将产生较为严重的拼接错误甚至无法拼接,从而造成识别计数的困难。
本发明实施例提供的图片拼接方法能够至少部分解决诸如上述钢筋堆叠场景等相关技术中密集目标物堆叠的宽幅场景下,多拍摄装置拍摄的图片难以拼接的问题,进一步解决因多拍摄装置拍摄目标物从而导致产生重叠区域、导致目标物重复识别的问题。
在介绍了本发明的基本原理之后,下面具体介绍本发明的各种非限制性实施方式。
如图1所示,在一个实施例中,提供一种图像拼接方法,包括:
步骤S110,分别获取第一拍摄装置拍摄目标物的第一图片和第二拍摄装置拍摄目标物的第二图像;
步骤S120,通过训练后的深度学习识别模型对所述第一图片和所述第二图片进行识别分类,以得到与所述第一图片对应的目标物的第一拓扑结构和所述第二图片对应的目标物的第二拓扑结构;
步骤S130,获取所述第一拓扑结构和所述第二拓扑结构的结构相似性反馈,若所述结构相似性反馈在预设阈值要求内,则获取定位锚点;
其中,所述第一拓扑结构和所述第二拓扑结构的结构相似性反馈的方法包括:
对所述第一拓扑结构内的目标物按预设顺序得到第一目标物集合,对所述第二拓扑结构内的目标物按所述预设顺序得到第二目标物集合;
获取所述第一目标物集合中的第一预设初始目标物和所述第二目标物集合中的第二预设初始目标物;
构建所述第一预设初始目标物和所述第二预设初始目标物的映射关系;
基于预设规则,获取最近邻所述第一预设初始目标物的第一近邻目标物集合和最近邻所述第二预设目标物的第二近邻目标物集合;
根据所述映射关系,将所述第一近邻目标物集合映射到所述第二近邻目标物集合中,若得到映射目标物集合,则:
若所述映射目标物集合内的目标物数量为所述预设数量,则将所述第一预设初始目标物和所述第二预设初始目标物设置为定位锚点。
在上述方法的基础上,更为具体地,获得所述映射目标物集合的方法具体为:
计算所述第一目标物集合中除所述第一预设初始目标物外的所有目标物与所述第一目标物之间的第一距离,以及所述第二目标物集合中除所述第二预设初始目标物外的所有目标物与所述第二目标物之间的第二距离,得到第一距离集合和第二距离集合;
基于所述第一距离集合按照预设顺序选取预设数量的目标物,得到最近邻所述第一预设初始目标物的第一近邻目标物集合,基于所述第二距离集合按照同一预设顺序选取同一预设数量的目标物,得到最近邻所述第二预设初始目标物的第二近邻目标物集合;
根据所述映射关系,将所述第一近邻目标物集合映射到所述第二近邻目标物集合中,以获得映射目标物集合。
在上述方法的基础上,更为具体地,还包括:若所述映射目标物集合内的目标物数量小于所述预设数量,则遍历映射处理完所述第一近邻目标物集合和所述第二近邻目标物集合内的各目标物,直至所述映射目标物集合内的目标物数量为所述预设数量,获得对应的定位锚点
步骤S140,根据所述定位锚点获取并处理所述第一图片和所述第二图片中重复识别的目标物,以拼接得到未重复识别的目标物的集合。
其中,所述拼接得到未重复识别的目标物的集合的方法包括:
根据预设搜索区域大小,以定位锚点为中心,分别获取第一图片内的第一带状区域和第二图片内的第二带状区域,对应得到第一高置信搜索目标物集合和第二高置信搜索目标物集合;
获取所述第一高置信搜索目标物集合中的第一预设高置信目标物和所述第二高置信搜索目标物集合中的第二预设高置信目标物;
计算所述第一预设高置信目标物和所述第二预设高置信目标物的拓扑结构相似性,以得到高置信重叠目标物。
下面结合图2至图5的应用场景,即大量密集型钢筋堆叠的场景,参考图1及上述技术方案来描述根据本发明示例性实施方式的图片拼接方法。需要注意的是,本应用场景仅是为了便于理解本发明的精神和原理而示出,本发明的实施方式在此方面不受任何限制。相反,本发明的实施方式可以应用于适用的任何场景。
结合本应用场景,在深度学习模型基础上,提出了一种能够将多张存在重复拍摄区域的钢筋图片进行逻辑拼接的技术方法(所谓逻辑拼接,即将不同图像中重复识别的钢筋去除,将剩余未重复识别的钢筋统一计数的技术),而多张图像的拼接在原理上是两张图片拼接的拓展,因此本发明将基于同一根钢筋在不同图片中的拓扑关系不变性(即同一根钢筋在不同图片中与周围钢筋的相对位置不变的)的基本思想,以两张图片的拼接为例,阐述一种新的钢筋图片逻辑拼接技术。其具体步骤如下:
步骤1、通过深度学习识别左右两张图片中所有钢筋,获取钢筋圆心坐标R左(x左,y左),R右(x右,y右),钢筋半径r左,r右。其中,本发明提及的所有坐标均为像素坐标,坐标原点为图片左上角点,向右为x轴正向,向下为y轴正向,长度均为像素长度;
步骤2、以图片左上角的第一根钢筋为准,依次按照从左到右、从上到下的顺序(如附图2),分别对图片中的钢筋进行编号排序,左图所有钢筋编号为
右图所有钢筋编号为
为了减少计算量,本发明分别选取两张图片中的一部分钢筋计算其拓扑结构相似性,从而找到初始的锚点,本发明暂取编号前20%(向下取整)作为待计算钢筋组,为简单起见,分别记为
和
步骤3、对左图的每一根钢筋
与右图每一根钢筋
形成一个钢筋对
计算钢筋对的拓扑结构相似性。如果结构相似性满足阈值要求,则确定
为定位锚点,转到步骤4;如果所有钢筋对
的结构相似性都不满足阈值要求,无法找到锚点,拼接失败。具体计算流程如下:
S1:对左图的每一根钢筋
对右图每一根钢筋
执行如下步骤;
S2:右图选出的钢筋
与左图选出的钢筋
形成钢筋对
左图所选取的钢筋
的坐标为
半径为
右图钢筋
的坐标为
半径为
则从左图钢筋到右图钢筋的映射关系为
不同的钢筋对,映射关系不同,但由于左图和右图中的钢筋半径
已知,a
i,j可根据
计算得到;
S3:对左图中除
外剩下的每一根钢筋
计算
与
的距离
按距离从小到大的顺序选取t根钢筋
作为钢筋
的最近邻钢筋组,t根据实际情况人为选取,t越大计算速度越慢,但锚点定位准确性越高,考虑到实际应用条件,本发明采用t=19。采用下式计算:
S4:对右图中除
外剩下的每一根钢筋
计算
与
的距离
按距离从小到大的顺序选取t根钢筋
作为钢筋
的最近邻钢筋组;
S5:根据S2所得到的
与
之间的映射关系a
i,j,将左图的最近邻钢筋组映射到右图中,得到映射钢筋组
映射成功的钢筋组数量为s,初始时s=0:
S5.1对映射钢筋组
中每一根映射钢筋
对右图最近邻钢筋组
中的每一根钢筋
执行如下步骤;
S5.2
与
形成钢筋对
采用下面的公式计算钢筋对
的欧式距离△l
p,q:
S5.3:若△l
p,q≤e则说明
与
之间的拓扑结构和
与
之间的拓扑结构相同,映射成功,其中e为设定值,需要根据实际情况选取,s=s+1;否则若△l
p,q>e则说明二者拓扑结构不相同,映射失败;
S5.4:若映射成功的钢筋数量s等于t,则判定
与
为同一根钢筋,并设定其为锚点,转到步骤4。若映射成功数量s小于t,回到S5.1继续执行,直到右图最近邻钢筋组
处理完成;
S5.6若映射成功的钢筋数量s等于t,则判定
与
为同一根钢筋,并设定其为锚点,转到步骤4。若映射成功数量s小于t,回到S5.1继续执行,直到左图的映射钢筋组
处理完成;
S6:如果通过执行S2-S5没有找到锚点,回到S1继续执行,直到钢筋组
处理完成;
S7:如果通过执行S1-S6如果没有找到锚点,回到S1继续执行,直到钢筋组
处理完成;
S8:如果执行完S1-S7,都未找到锚点,匹配失败,算法终止。寻找锚点流程如附图3;
步骤4、在找到锚点后,记录锚点钢筋在左右两张图片中的圆心位置信息
依托此锚点位置信息,寻找高置信重叠钢筋,重叠的钢筋数量记为Nc,初始时Nc=0。具体算法流程如下:
T1:设定左图片中的矩形带状区域
右图片中的矩形带状区域
为高置信搜索区域,其中d为人为设定值,根据实际情况设定,本发明将d取锚点钢筋半径的2~3倍,
和
分别为左图和右图矩形带状区域的左上角坐标,
和
分别为左图和右图矩形带状区域的右下角坐标,
和
分别为左图和右图钢筋y向坐标值的最大值。左右图片中圆心坐标包含在该区域的高置信搜索钢筋集记为{R
左1,R
左2,……,R
左z},{R
右1,R
右2,……,R
右c};
T2对左图高置信搜索钢筋集{R左1,R左2,……,R左z}中的每一根钢筋R左i(i=1,2,L,z),对右图高置信搜索钢筋集{R右1,R右2,……,R右c}中的每一根钢筋R右j(j=1,2,L,c),执行如下步骤;
T3:对左右图片中的高置信搜索钢筋集中的每一对钢筋(R左i,R右j),采用步骤3的S1到S8判断是否为同一根钢筋。如果为同一根钢筋,Nc=Nc+1,转到T5继续执行,如果不为同一根钢筋,转到T4;
T4:重复T2-T3,直到{R右1,R右2,……,R右c}处理完成;
T5:重复T2-T4,直到{R左1,R左2,……,R左z}处理完成;
计算高置信重叠钢筋流程图如附图4;
步骤5、计算左图中矩形带状区域
中的所有钢筋数量N
l,计算右图中矩形带状区域
中的所有钢筋数量N
r,则全部钢筋的实际数量为:N
total=N
l+N
r-N
c。
本应用场景的整体流程图如附图5。具体大致为:
U1:通过深度学习获取需要拼接的两张图片中所有钢筋圆心坐标R左(x左,y左)、R右(x右,y右),钢筋半径r左、r右。
U2:根据附图2所示,依次按照从左往右,从上往下的顺序分别对左右图中所有钢筋进行编号,并取编号的前20%(向下取整)作为待计算钢筋组
和
U3:按照上述步骤3计算获取左右图片中的锚点钢筋,记录其圆心坐标
U4:按照上述步骤4计算获取全部高置信重叠钢筋数量Nc。
U5:计算左图中矩形带状区域
中的所有钢筋数量N
l,计算右图中矩形带状区域
中的所有钢筋数量N
r,得到全部钢筋的实际数量为:N
total=N
l+N
r-N
c。
本发明实施例示例性的应用场景中,采用深度学习对钢筋图像进行识别,得到所有钢筋的图像位置信息后,利用同一根钢筋在不同图片中与周围钢筋的相对位置不变的特性,寻找高置信重复识别钢筋,并依据重复识别钢筋建立左右图像钢筋重叠分界区域,最终实现相机拍摄钢筋图像的逻辑拼接,实现全自动钢筋计数。
如图6所示,本发明实施例的另一个方面提供了图片拼接装置200,包括获取处理模块210、反馈处理模块220和拼接处理模块230。获取处理模块210用于分别获取第一拍摄装置拍摄目标物的第一图片和第二拍摄装置拍摄目标物的第二图像,以及通过训练后的深度学习识别模型对所述第一图片和所述第二图片进行识别分类,以得到与所述第一图片对应的目标物的第一拓扑结构和所述第二图片对应的目标物的第二拓扑结构。反馈处理模块220用于获取所述第一拓扑结构和所述第二拓扑结构的结构相似性反馈若所述结构相似性反馈在预设阈值要求内,则获取定位锚点。拼接处理模块230用于根据所述定位锚点获取并处理所述第一图片和所述第二图片中重复识别的目标物,以拼接得到未重复识别的目标物的集合。
在介绍了本发明示例性实施方式的方法和装置之后,接下来,参考图7对本发明实施例提供了一种计算机设备进行说明。
如图7所示,该计算机设备包括存储器31、处理器32、输入装置33和输出装置34。计算机设备中的处理器32的数量可以是一个或多个,图3中以一个处理器32为例;计算机设备中的存储器31、处理器32、输入装置33和输出装置34可以通过总线或其它方式连接,图3中以通过总线35连接为例。
存储器31作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的数据操作方法对应的程序指令/模块(例如,图片拼接装置200中的获取处理模块210、反馈处理模块220和拼接处理模块230。获取处理模块210)。处理器32通过运行存储在存储器31中的软件程序、指令以及模块,从而执行计算机设备的各种功能应用以及数据处理,即实现数据操作方法。
存储器31可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据计算机设备的使用所创建的数据等。此外,存储器31可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器31可进一步包括相对于处理器32远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。输入装置33可用于接收输入的数字或字符信息,以及产生与装置的用户设置以及功能控制有关的键信号输入。输出装置34可包括显示屏等显示设备。
最后,本发明实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种图片拼接方法,该方法包括:
分别获取第一拍摄装置拍摄目标物的第一图片和第二拍摄装置拍摄目标物的第二图像;
通过训练后的深度学习识别模型对所述第一图片和所述第二图片进行识别分类,以得到与所述第一图片对应的目标物的第一拓扑结构和所述第二图片对应的目标物的第二拓扑结构;
获取所述第一拓扑结构和所述第二拓扑结构的结构相似性反馈,若所述结构相似性反馈在预设阈值要求内,则获取定位锚点;
根据所述定位锚点获取并处理所述第一图片和所述第二图片中重复识别的目标物,以拼接得到未重复识别的目标物的集合。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的数据操作方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。依据这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。