CN113298707A - 图像帧拼接方法、视频巡检方法、装置、设备及存储介质 - Google Patents
图像帧拼接方法、视频巡检方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN113298707A CN113298707A CN202110112317.4A CN202110112317A CN113298707A CN 113298707 A CN113298707 A CN 113298707A CN 202110112317 A CN202110112317 A CN 202110112317A CN 113298707 A CN113298707 A CN 113298707A
- Authority
- CN
- China
- Prior art keywords
- frame
- image
- key
- image frame
- key frame
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000007689 inspection Methods 0.000 title claims abstract description 179
- 238000000034 method Methods 0.000 title claims abstract description 88
- 230000003287 optical effect Effects 0.000 claims abstract description 30
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 claims description 87
- 230000009466 transformation Effects 0.000 claims description 35
- 238000001514 detection method Methods 0.000 claims description 33
- 238000010586 diagram Methods 0.000 claims description 14
- 230000000875 corresponding effect Effects 0.000 description 35
- 238000012545 processing Methods 0.000 description 25
- 230000008569 process Effects 0.000 description 15
- 239000011159 matrix material Substances 0.000 description 10
- 230000000694 effects Effects 0.000 description 9
- 238000012549 training Methods 0.000 description 8
- 238000003062 neural network model Methods 0.000 description 7
- 230000003068 static effect Effects 0.000 description 7
- 230000009471 action Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000002159 abnormal effect Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000006116 polymerization reaction Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 241000023320 Luma <angiosperm> Species 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4038—Image mosaicing, e.g. composing plane images from plane sub-images
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C1/00—Registering, indicating or recording the time of events or elapsed time, e.g. time-recorders for work people
- G07C1/20—Checking timed patrols, e.g. of watchman
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Analysis (AREA)
Abstract
本公开实施例涉及一种图像帧拼接方法、视频巡检方法、装置、设备及存储介质。图像帧拼接方法包括:获取图像帧;判断图像帧是否为关键帧;若为关键帧,则对图像帧进行第一存储;将第一存储的所有关键帧进行增量拼接;其中,第一存储的任意相邻两个关键帧之间的增量基于相邻两个关键帧提取的光流特征进行确定。本公开的至少一个实施例中,通过判断图像帧是否为关键帧,实现对图像质量较好的关键帧的选取,进而只对关键帧进行拼接,而非对每一帧均进行拼接,在提高拼接质量的同时提高了拼接效率,另外,在拼接关键帧时,对关键帧进行增量拼接,而非全量拼接,进一步提高了拼接效率。
Description
技术领域
本公开实施例涉及计算机技术领域,具体涉及一种图像帧拼接方法、视频巡检方法、装置、设备及存储介质。
背景技术
传统的线下商场和超市每年因缺货、陈列异常等问题承担着高额客损,因此,巡检机器人应运而生,通过机器人巡检货架(例如,机器人自动行进到货架附近,采集货架排面的图像),并将数据回流到线上,便于相关人员(例如采购员、货架管理员)通过线上及时发现并解决缺货、陈列异常等问题。
目前的巡检机器人具有水平视场和垂直视场,因此,机器人在巡检过程中需要对采集的水平视场的图像和垂直视场的图像进行实时拼接,然而目前的拼接方案是对每一帧图像均进行拼接,且是将相邻两帧图像直接拼接,这种拼接方式由于机器人在运动过程中即相机的姿态计算(单应矩阵的计算)存在累积误差的问题,因此在图像的左右边界和上下边界位置会形成明显的拼接缝隙(也即矩形错位),且消耗大量的软硬件资源,随着图像分辨率的上升,消耗的软硬件资源也越多,拼接帧率不满足巡检需求;另外,没有对图像质量进行检测,拼接效果不满足巡检需求。
另外,目前的机器人巡检方案中,通常设置多个固定位置,每个固定位置对应一个或多个货架,机器人需要行进到这些固定位置进行图像采集,图像拼接后将数据回流到线上。对于大型的商场和超市,货架数量较多,机器人巡检的耗时较长,例如5000平米的商场,机器人巡检需要5至6小时,导致巡检效率降低;并且机器人回流数据的耗时较长,例如机器人回流一节货架的数据平均消耗15分钟,导致巡检效率降低;并且回流数据量较大,也消耗了云端服务器大量的存储资源和计算资源。
上述对问题的发现过程的描述,仅用于辅助理解本公开的技术方案,并不代表承认上述内容是现有技术。
发明内容
为了解决现有技术存在的至少一个问题,本公开的至少一个实施例提供了一种图像帧拼接方法、视频巡检方法、装置、设备及存储介质。
第一方面,本公开实施例提出一种图像帧拼接方法,包括:
获取图像帧;
判断所述图像帧是否为关键帧;
若为关键帧,则对所述图像帧进行第一存储;
将所述第一存储的所有关键帧进行增量拼接;
其中,所述第一存储的任意相邻两个关键帧之间的增量基于所述相邻两个关键帧提取的光流特征进行确定。
在一些实施例中,所述判断所述图像帧是否为关键帧包括:
若所述图像帧为起始帧或结束帧,则确定所述图像帧为关键帧;
若所述图像帧非起始帧且非结束帧,则基于所述图像帧的前一个关键帧,判断所述图像帧是否为关键帧。
在一些实施例中,所述基于所述图像帧的前一个关键帧,判断所述图像帧是否为关键帧包括:
确定所述图像帧与所述前一个关键帧的重合度;
判断所述重合度是否小于预设阈值;
若所述重合度小于预设阈值,则检测所述图像帧的质量;
基于质量检测结果判断所述图像帧是否模糊;
若所述图像帧不模糊,则确定所述图像帧为关键帧。
在一些实施例中,所述确定所述图像帧与所述前一个关键帧的重合度包括:
新建一个用于确定重合度的像素区域;
确定所述前一个关键帧在所述像素区域中的第一拷贝区域;
对所述图像帧进行仿射变换,得到仿射图像;
确定所述仿射图像在所述像素区域中的第二拷贝区域;
基于所述第一拷贝区域和所述第二拷贝区域,确定所述重合度。
在一些实施例中,所述图像帧为YUV图像;所述仿射图像是对所述图像帧中所有Y分量进行仿射变换得到的图像;所述第一拷贝区域为所述前一个关键帧中所有Y分量在所述像素区域中的拷贝区域。
在一些实施例中,所述重合度通过下式确定:
所述重合度=重合区域/所述第一拷贝区域;
其中,所述重合区域为所述第一拷贝区域与所述第二拷贝区域相重合的区域。
在一些实施例中,所述检测所述图像帧的质量包括:
将所述图像帧输入模糊检测模型,通过所述模糊检测模型检测所述图像帧,输出用于描述所述图像帧是否模糊的二分类信息;
相应地,所述质量检测结果为所述二分类信息。
在一些实施例中,所述获取图像帧后,所述方法还包括:
对所述图像帧进行第二存储,所述第二存储的帧数上限为预设帧数;
若所述重合度小于预设阈值且所述图像帧模糊,则从所述第二存储的所有图像帧中选择一个图像帧作为关键帧。
在一些实施例中,所述从所述第二存储的所有图像帧中选择一个图像帧作为关键帧包括:
针对所述第二存储的每个图像帧:
判断该图像帧是否模糊;
若该图像帧不模糊,则确定该图像帧与所述前一个关键帧的重合度;
选择不模糊且重合度最小的图像帧作为关键帧。
在一些实施例中,所述将所述第一存储的所有关键帧进行增量拼接包括:
新建一个用于增量拼接的像素区域;
确定所述起始帧在所述像素区域中的拷贝区域;
确定非起始帧的每个关键帧的增量及所述增量在所述像素区域中的增量拷贝区域;
将所述起始帧拷贝到所述拷贝区域,并将非起始帧的每个关键帧的增量拷贝到对应的增量拷贝区域。
在一些实施例中,所述像素区域的面积基于所述第一存储的关键帧的面积和数量计算得到。
在一些实施例中,所述确定非起始帧的每个关键帧的增量及所述增量在所述像素区域中的增量拷贝区域包括:
针对非起始帧的每个关键帧:
对该关键帧进行仿射变换,得到该关键帧的仿射图像;
确定该关键帧的仿射图像在所述像素区域中感兴趣区域;
基于该关键帧的感兴趣区域和该关键帧的前一个关键帧的感兴趣区域,确定该关键帧的仿射图像的增量及该增量在所述像素区域中的增量拷贝区域。
在一些实施例中,所述关键帧为YUV图像;所述该关键帧的仿射图像是对该关键帧中所有Y分量进行仿射变换得到的图像;所述拷贝区域为所述起始帧中所有Y分量在所述像素区域中的拷贝区域;所述增量为该关键帧的感兴趣区域与该关键帧的前一个关键帧的感兴趣区域的非重合区域;
所述将所述起始帧拷贝到所述拷贝区域包括:将所述起始帧中所有Y分量拷贝到所述拷贝区域。
在一些实施例中,所述将所述起始帧中所有Y分量拷贝到所述拷贝区域后,所述将所述第一存储的所有关键帧进行增量拼接还包括:
确定所述起始帧中每个UV分量在所述像素区域中的位置;
将所述起始帧中每个UV分量拷贝到所述像素区域中对应的位置。
在一些实施例中,所述将非起始帧的每个关键帧的仿射图像拷贝到对应的增量拷贝区域后,所述将所述第一存储的所有关键帧进行增量拼接还包括:
针对非起始帧的每个关键帧:
确定该关键帧中每个UV分量在所述像素区域中的位置;
将该关键帧中每个UV分量拷贝到所述像素区域中对应的位置。
第二方面,本公开实施例还提出一种视频巡检方法,包括:
获取拍摄的巡检视频的图像帧;
判断所述图像帧是否为关键帧;
若为关键帧,则对所述图像帧进行第一存储;
将所述第一存储的所有关键帧进行增量拼接,得到所述巡检视频对应的巡检拼接图;
其中,所述第一存储的任意相邻两个关键帧之间的增量基于所述相邻两个关键帧提取的光流特征进行确定。
第三方面,本公开实施例还提出一种货架巡检方法,包括:
获取拍摄的货架巡检视频的图像帧;
判断所述图像帧是否为关键帧;
若为关键帧,则对所述图像帧进行第一存储;
将所述第一存储的所有关键帧进行增量拼接,得到所述货架巡检视频对应的货架巡检拼接图;
其中,所述第一存储的任意相邻两个关键帧之间的增量基于所述相邻两个关键帧提取的光流特征进行确定。
第四方面,本公开实施例还提出一种图像帧拼接装置,包括:
获取单元,用于获取图像帧;
关键帧选取单元,用于判断所述图像帧是否为关键帧;
存储单元,用于若所述图像帧为关键帧,则对所述图像帧进行第一存储;
增量拼接单元,用于将所述第一存储的所有关键帧进行增量拼接;其中,所述第一存储的任意相邻两个关键帧之间的增量基于所述相邻两个关键帧提取的光流特征进行确定。
第五方面,本公开实施例还提出一种视频巡检装置,包括:
获取单元,用于获取拍摄的巡检视频的图像帧;
关键帧选取单元,用于判断所述图像帧是否为关键帧;
存储单元,用于若所述图像帧为关键帧,则对所述图像帧进行第一存储;
增量拼接单元,用于将所述第一存储的所有关键帧进行增量拼接,得到所述巡检视频对应的巡检拼接图;其中,所述第一存储的任意相邻两个关键帧之间的增量基于所述相邻两个关键帧提取的光流特征进行确定。
第六方面,本公开实施例还提出一种货架巡检装置,包括:
获取单元,用于获取拍摄的货架巡检视频的图像帧;
关键帧选取单元,用于判断所述图像帧是否为关键帧;
存储单元,用于若所述图像帧为关键帧,则对所述图像帧进行第一存储;
增量拼接单元,用于将所述第一存储的所有关键帧进行增量拼接,得到所述货架巡检视频对应的货架巡检拼接图;其中,所述第一存储的任意相邻两个关键帧之间的增量基于所述相邻两个关键帧提取的光流特征进行确定。
第七方面,本公开实施例还提出一种电子设备,包括:处理器和存储器;所述处理器通过调用所述存储器存储的程序或指令,用于执行如第一方面至第三方面任一实施例所述方法的步骤。
第八方面,本公开实施例还提出一种非暂态计算机可读存储介质,用于存储程序或指令,所述程序或指令使计算机执行如第一方面至第三方面任一实施例所述方法的步骤。
可见,本公开的至少一个实施例中,通过判断图像帧是否为关键帧,实现对图像质量较好的关键帧的选取,进而只对关键帧进行拼接,而非对每一帧均进行拼接,在提高拼接质量的同时提高了拼接帧率和拼接效率,减少软硬件资源的消耗,另外,在拼接关键帧时,对关键帧进行增量拼接,而非全量拼接,进一步提高了拼接效率。拼接效果、拼接帧率和拼接效率均满足巡检需求。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1是一种示例性应用场景图;
图2是本公开实施例提供的一种视频巡检装置的示例性框图;
图3是本公开实施例提供的一种电子设备的示例性框图;
图4是本公开实施例提供的一种视频巡检方法的示例性流程图;
图5是本公开实施例提供的一种关键帧选取的示例性流程图;
图6是本公开实施例提供的一种增量拼接的示例性流程图;
图7是本公开实施例提供的一种图像帧拼接方法的流程图;
图8是本公开实施例提供的一种图像帧拼接装置的框图;
图9是本公开实施例提供的一种货架巡检方法的示例性流程图;
图10是本公开实施例提供的一种货架巡检装置的示例性框图。
具体实施方式
为了能够更清楚地理解本公开的上述目的、特征和优点,下面结合附图和实施例对本公开作进一步的详细说明。可以理解的是,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。此处所描述的具体实施例仅仅用于解释本公开,而非对本公开的限定。基于所描述的本公开的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本公开保护的范围。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
为了解决目前存在的至少一个问题,本公开实施例提供了一种一种视频巡检方案,通过判断图像帧是否为关键帧,实现对巡检视频中图像质量较好的关键帧的选取,进而只对巡检视频中的关键帧进行拼接,而非对每一帧均进行拼接,在提高拼接质量的同时提高了拼接效率,减少软硬件资源的消耗,另外,在拼接关键帧时,对关键帧进行增量拼接,而非全量拼接,进一步提高了拼接效率,经验证,相比传统的图像直接拼接,本公开实施例将拼接效率提高了10倍以上。
图1为本公开实施例提供的示例性应用场景图。在图1中,服务端设备101、网络102和巡检机器人103构成了线下门店(例如商场、超市、商店等线下门店)的管理系统,通过巡检机器人103巡检货架(例如,巡检机器人103自动行进到货架附近,采集货架排面的图像),并将数据通过网络102回流到服务端设备101,便于相关人员(例如采购员、货架管理员)通过客户端设备104访问服务端设备101,及时发现并解决缺货、陈列异常等问题。
而服务端设备101可以通过网络102向巡检机器人103发送各种指令,例如巡检指令、充电指令等,便于相关人员通过客户端设备104访问服务端设备101,进而通过服务端设备101远程控制巡检机器人103。当巡检机器人103接收到指令后,可解析指令并执行相应地动作,例如解析巡检指令,巡检机器人103则从当前位置自动行进到预先设置的巡检起始点开始巡检,并按照预先设置的巡检路径进行移动,对巡检路径周围的货架进行拍摄。又例如解析充电指令,巡检机器人则从当前位置自动行进到预先设置的充电桩所在的位置,通过充电桩进行充电。
在一些实施例中,服务端设备101可以是一个服务器,也可以是一个服务器群组。服务器群组可以是集中式的,也可以是分布式的。巡检机器人103可以有多个,例如,一个商场可以有多个巡检机器人103,商场的每层可以配置一个或多个巡检机器人103,便于对商场中货架的分层巡检,提高巡检效率。客户端设备104可以有多个,位于不同地理位置的相关人员,可以使用各自的客户端设备104通过网络102访问服务端设备101。
在一些实施例中,线下门店的管理系统中最核心的管理功能可以实现为软件系统、硬件系统或者软硬件相结合的系统,其中,软件系统运行在操作系统上,而服务端设备101是支持操作系统运行的硬件系统。
结合图1,视频巡检的整体交互流程如下步骤(1)至(3):
(1)相关人员使用客户端设备104通过网络102访问服务端设备101,例如相关人员使用客户端设备104打开管理系统的网页,输入账号和密码登录管理系统,实现对服务端设备101的访问。
(2)登录管理系统后,管理系统的网页中会显示可以管理的多个线下门店,相关人员选择一个线下门店,并选择该门店内某一层的巡检机器人103,给该巡检机器人103下发巡检指令。
(3)巡检机器人103解析巡检指令,从当前位置(例如充电桩的位置)自动行进到预先设置的巡检起始点开始巡检,并按照预先设置的巡检路径进行移动,对巡检路径周围的货架进行拍摄,用视频方式不断地记录整个货架的排面。例如,每个货架会预先设置拍摄位置,巡检机器人103行进到预先设置的拍摄位置后,可以停止移动进行拍摄,也可以减速进行拍摄,还可以边移动边拍摄。
(4)关键帧选取由巡检机器人103执行,增量拼接由服务端设备101执行。具体地,巡检机器人103会将拍摄的巡检视频中图像质量较好的关键帧选取出来,并把关键帧通过网络102上传到服务端设备101。服务端设备101将接收到的所有关键帧进行增量拼接,得到包括整个货架排面的拼接图,货架排面会给出缺货情况、陈列错误等信息。
在一些实施例中,关键帧选取和增量拼接均由巡检机器人103执行。具体地,巡检机器人103会将拍摄的巡检视频中图像质量较好的关键帧选取出来,并将所有关键帧进行增量拼接,得到包括整个货架排面的拼接图,进而将拼接图通过网络102上传到服务端设备101。
在一些实施例中,关键帧选取和增量拼接均由服务端设备101执行。具体地,巡检机器人103会将拍摄的巡检视频中每一个图像帧通过网络102上传到服务端设备101。服务端设备101会将拍摄的巡检视频中图像质量较好的关键帧选取出来,并将所有关键帧进行增量拼接,得到包括整个货架排面的拼接图。
在实际应用中,可根据需要,灵活选择关键帧选取和增量拼接的执行主体。
可见,上述视频巡检的整体交互流程中,通过将拍摄的巡检视频中图像质量较好的关键帧选取出来,只对巡检视频中的关键帧进行拼接,而非对每一帧均进行拼接,在提高拼接质量的同时提高了拼接效率,另外,在拼接关键帧时,对关键帧进行增量拼接,而非全量拼接,进一步提高了拼接效率。
图2为本公开实施例提供的一种视频巡检装置200的示例性框图。在一些实施例中,视频巡检装置200可以实现为图1中的服务端设备101的一部分或者客户端设备104的一部分。在一些实施例中,视频巡检装置200中的一些单元可以实现在服务端设备101上,另一些单元可以实现在客户端设备104上,例如,关键帧选取单元202实现在客户端设备104上,而增量拼接单元204实现在服务端设备101上。
如图2所示,视频巡检装置200可划分为多个单元,例如可包括:获取单元201、关键帧选取单元202、存储单元203、增量拼接单元204以及其他辅助视频巡检的单元,例如供电单元等。
获取单元
获取单元201,用于获取拍摄的巡检视频的图像帧。其中,巡检视频由巡检机器人上安装的相机进行拍摄,且以预先设置的帧率(例如帧率≥15fps)进行拍摄,相机每拍摄一帧,获取单元201就获取一帧。在一些实施例中,巡检机器人上安装的相机可以有多个,例如,在巡检机器人的头部安装一个相机,在躯干部安装一个相机,这两个相机可以各自进行拍摄,拍摄帧率可以相同,也可以不同。这两个相机也可以采用相同拍摄帧率同步进行拍摄。后续可以分别针对这两个相机拍摄的图像帧进行处理(处理例如包括关键帧选取、增量拼接等),得到这两个相机各自的处理结果,然后再将这两个相机各自的处理结果进行融合。
关键帧选取单元
关键帧选取单元202,用于判断图像帧是否为关键帧。在一些实施例中,巡检机器人在巡检起始点处于静止状态并拍摄第一帧图像,也即巡检视频的起始帧,相比移动中拍摄,静止拍摄的图像质量较高,因此,关键帧选取单元202判断确定图像帧为巡检视频的起始帧后,确定图像帧为关键帧。类似地,巡检机器人在巡检结束点(巡检结束点也可预先设置)处于静止状态并拍摄最后一帧图像,也即巡检视频的结束帧,关键帧选取单元202判断确定图像帧为巡检视频的结束帧后,确定图像帧为关键帧。
在一些实施例中,关键帧选取单元202判断图像帧非起始帧且非结束帧后,可基于图像帧的前一个关键帧,辅助判断图像帧是否为关键帧。在一些实施例中,关键帧选取单元202可确定图像帧与前一个关键帧的重合度。其中,重合度可以为拷贝区域的重合度,例如,关键帧选取单元202可新建一个用于确定重合度的像素区域;进而直接确定前一个关键帧在像素区域中的第一拷贝区域;并且为了确定图像帧与前一个关键帧的重合度,需要将图像帧投影到拍摄前一个关键帧时相机的物理像平面上,这个投影可采用仿射变换(wrap)来实现。因此,关键帧选取单元202对图像帧进行仿射变换,得到仿射图像;进而确定仿射图像在像素区域中的第二拷贝区域,这样,第二拷贝区域与第一拷贝区域就具有了可比性,从而可基于第一拷贝区域和第二拷贝区域,确定重合度。在一些实施例中,重合度通过下式确定:
重合度=重合区域/第一拷贝区域;
其中,重合区域为第一拷贝区域与第二拷贝区域相重合的区域,也即第一拷贝区域与第二拷贝区域的交集,可以理解为相同像素的集合,其中,相同像素可以理解为位置相同且像素值相同。
在一些实施例中,图像帧为YUV图像,其中,YUV是一种颜色编码方式,“Y”表示明亮度(Luminance或Luma),也就是灰阶值,“U”和“V”表示的则是色度(Chrominance或Chroma),作用是描述影像色彩及饱和度,用于指定像素的颜色。相应地,仿射图像是对图像帧中所有Y分量进行仿射变换得到的图像;第一拷贝区域为前一个关键帧中所有Y分量在像素区域中的拷贝区域。
在一些实施例中,关键帧选取单元202可判断重合度是否小于预设阈值。其中,预设阈值例如为20%,本领域技术人员可根据实际需要设置预设阈值。若重合度小于预设阈值,可以理解为图像帧满足关键帧选取的重合度条件,但是仍不确定图像帧的质量是否满足关键帧选取的质量条件,因此,关键帧选取单元202判断确定重合度小于预设阈值后,进一步检测图像帧的质量。
在一些实施例中,关键帧选取单元202可将图像帧输入模糊检测模型,通过模糊检测模型检测图像帧,输出用于描述图像帧是否模糊的二分类信息,二分类信息例如为“1”或“0”,“1”表示模糊,“0”表示不模糊,在实际应用中,二分类信息的具体表现形式可以有多种,在此不一一列举。其中,模糊检测模型通过预先训练神经网络模型得到,神经网络模型例如为深度卷积网络。训练过程例如为:首先准备样本图像集,样本图像集中包括正样本图像和负样本图像,其中,正样本图像为清晰图像,负样本图像为模糊图像;然后将样本图像输入神经网络模型,通过计算神经网络的损失函数值,基于损失函数值调整神经网络模型本身的参数,这样通过样本图像集中大量样本图像的训练,可使神经网络模型能够准确输出任意训练样本图像的二分类信息,即完成训练,得到模糊检测模型。在一些实施例中,模糊检测模型可通过Hi3559A中的深度学习模块(NINE模块)来实现,其中,Hi3559A是专业的8K超高清IP摄像机系统级芯片。
在一些实施例中,关键帧选取单元202可基于质量检测结果判断图像帧是否模糊;其中,质量检测结果为模糊检测模型输出的用于描述图像帧是否模糊的二分类信息。关键帧选取单元202判断确定图像帧不模糊后,也即图像帧满足关键帧选取的质量条件,则确定图像帧为关键帧。
在一些实施例中,关键帧选取单元202判断确定重合度小于预设阈值且图像帧模糊后,不应将图像帧确定为关键帧,可以理解:图像帧本应确定为关键帧参与后续的增量拼接,只是因为质量较差(即模糊)而不确定为关键帧,为了避免缺失关键帧导致增量拼接的效果不佳,应当在图像帧附近找到质量更好的图像帧作为关键帧。为此,关键帧选取单元202判断确定重合度小于预设阈值且图像帧模糊后,回溯图像帧之前的多个图像帧,例如回溯图像帧之前的10个图像帧,选取一个图像帧作为关键帧。
在一些实施例中,关键帧选取单元202针对回溯的每个图像帧:首先判断该图像帧是否模糊,便于挑选出比图像帧质量更好的图像帧;然后确定每个不模糊的图像帧与前一个关键帧的重合度,其中,前一个关键帧是相对于图像帧而言;最后选择不模糊且重合度最小的图像帧作为关键帧。需要说明的是,选择的关键帧与前一个关键帧的重合度可能大于预设阈值。
存储单元
存储单元203,用于对关键帧进行第一存储,也即,关键帧选取单元202每判断确定一个关键帧,存储单元203就存储该关键帧。本实施例中,存储单元203在关键帧选取单元202判断确定图像帧为关键帧后,对图像帧进行第一存储。存储单元203将关键帧存储到关键帧存储队列中,也可以理解为:存储的多个关键帧构成关键帧存储队列。
在一些实施例中,存储单元203还可以对拍摄的每一个图像帧进行第二存储,便于后续的处理。也即,存储单元203在获取单元201获取拍摄的巡检视频的图像帧后,对图像帧进行第二存储。存储单元203将图像帧存储到图像帧存储队列中。在一些实施例中,考虑到存储内存有限,第二存储的帧数上限为预设帧数,预设帧数例如为10帧。相应地,关键帧选取单元202判断确定重合度小于预设阈值且图像帧模糊后,从第二存储的所有图像帧(不包括图像帧)中选择一个图像帧作为关键帧,也即,回溯图像帧之前的9个图像帧,选取一个图像帧作为关键帧。
增量拼接单元
增量拼接单元204,用于对所有关键帧进行增量拼接,得到巡检视频对应的巡检拼接图。在一些实施例中,增量拼接单元204将存储单元203第一存储的所有关键帧进行增量拼接。其中,第一存储的任意相邻两个关键帧之间的增量基于相邻两个关键帧提取的光流特征进行确定。
光流(optical flow)是目标、场景或者相机在连续两帧间运动造成的目标运动。它是图像在平移过程中的二维矢量场,是通过二维图像来表示物体点三维运动的速度场,反映了微小时间间隔内由于运动形成的图像变化,以确定图像点上的运动方向和运动速率。
光流跟踪的三个假设:
1.[亮度恒定]图像中目标的像素强度在连续帧之间不会发生变化
2.[时间规律]相邻帧之间的时间足够短,以至于在考虑运行变化时可以忽略它们之间的差异。
3.[空间一致性]相邻像素具有相似运动。
基于前两个假设,得到图像的约束方程:
I(x,y,t)=I(x+dx,y+dy,t+dt)
其中,I(x,y,t)是t时刻图像在(x,y)位置的亮度。
利用泰勒级数对I(x+dx,y+dy,t+dt)在(x,y,t)处展开,得到:
其中高阶项可以认为是0。即R(x,y,t)=0。
将上述两个公式联立可得:
即,
Ixu+Iyv+It=0
此时由于u,v的值未知,因此假设在图像为M×M(预先设置)像素区间内光流值恒定,可得:
写成矩阵形式为:
最终uv为光流跟踪后的一个点。
由此处可计算得到光流特征点(uv)在i帧的位置与其对应在i+1帧的位置,即为:P(i),P(i+1)。
光流跟踪算法完毕后可以得到若干配准点P(i),P(i+1)。由此可引入多视图几何中单应矩阵的计算。
单应矩阵成为Homography,简称H矩阵,H矩阵可用于实现如下效果:
通过透视变换实现图像从一种视图变换到另外一种视图。
在拥有多个配准点P(i),P(i+1)后,即可求解H矩阵。其中求解的方法较多,在此不再列举。
在一些实施例中,增量拼接单元204新建一个用于增量拼接的像素区域;进而确定起始帧在像素区域中的拷贝区域;并确定非起始帧的每个关键帧的增量及增量在像素区域中的增量拷贝区域;从而将起始帧拷贝到拷贝区域,并将非起始帧的每个关键帧的增量拷贝到对应的增量拷贝区域,实现增量拼接。在一些实施例中,用于增量拼接的像素区域的面积基于第一存储的关键帧的面积和数量计算得到,例如,第一存储的关键帧有3个,每个关键帧的面积是S,那么用于增量拼接的像素区域的面积为3S。
在一些实施例中,增量拼接单元204针对非起始帧的每个关键帧:对该关键帧进行仿射变换,仿射变换利用H矩阵,得到该关键帧的仿射图像;确定该关键帧的仿射图像在用于增量拼接的像素区域中的感兴趣区域(Region of Interest,RoI)。增量拼接单元204基于该关键帧的感兴趣区域和该关键帧的前一个关键帧的感兴趣区域,确定该关键帧的仿射图像的增量及该增量在像素区域中的增量拷贝区域。可见,增量拼接单元204首先基于提取相邻两个关键帧提取的光流特征,然后基于光流特征确定H矩阵,进而基于H矩阵进行增量拼接。
在一些实施例中,关键帧为YUV图像。该关键帧的仿射图像是对该关键帧中所有Y分量进行仿射变换得到的图像。起始帧在像素区域中的拷贝区域为起始帧中所有Y分量在所述像素区域中的拷贝区域,增量拼接单元204将起始帧中所有Y分量拷贝到拷贝区域。增量为该关键帧的感兴趣区域与该关键帧的前一个关键帧的感兴趣区域的非重合区域。在一些实施例中,关键帧为YUV图像且为NV12格式,图像分辨率为7680×3840。
在一些实施例中,考虑到仿射变换需要对图像进行逐像素级别的变换,同时拷贝操作需要建立仿射图像与原图之间的映射关系,为提高处理效率,本实施例中利用Hi3559A提供的异构计算单元的并行计算能力提高放射变换的效率,其中,异构计算单元例如图形处理单元(Graphic Process Unit,GPU)。依据Y分量的分辨率,在异构计算单元上进行算力划分,例如Y分量的分辨率是64×64,GPU具有256个处理单元,对图像的像素进行拷贝,让第0号的处理单元去拷贝第00号像素,第1号的处理单元去拷贝01号像素,相当于GPU的每个处理单元处理16×16的Y分量像素块,但是存在的问题是:GPU中的处理单元做并行处理的时候,内部总线带宽是有限的,可能不允许这么多的处理单元同时访问总线,这样划分算力反而较低效率,因此,需要基于内部总线带宽和CPU中处理单元的数量进行算力划分。保证在高并发场景,且带宽并发最小的情况下,处理性能最强。本实施例中,异构计算单元(例如Mali G71)计算每个像素点在仿射图像与原图的位置映射关系。
在一些实施例中,增量拼接单元204将起始帧中所有Y分量拷贝到拷贝区域后,进一步确定起始帧中每个UV分量在像素区域中的位置;从而将起始帧中每个UV分量拷贝到像素区域中对应的位置。
在一些实施例中,增量拼接单元204将非起始帧的每个关键帧的仿射图像拷贝到对应的增量拷贝区域后,进一步针对非起始帧的每个关键帧:确定该关键帧中每个UV分量在像素区域中的位置;进而将该关键帧中每个UV分量拷贝到像素区域中对应的位置。本实施例中,并非将仿射图像中UV分量拷贝到像素区域中对应的位置,可避免由于仿射变换导致的一些UV分量的值变黑而使拼接图存在拼接缝隙的问题。
在一些实施例中,利用Hi3559A提供的同构计算单元并行完成数据拷贝(包括Y分量的拷贝和UV分量的拷贝),其中,同构计算单元为中央处理器(Central ProcessingUnit,CPU),CPU例如为A71和A53。A71和A53协同完成数据并行拷贝,在拷贝的时候没有使用GPU,而是由CPU并行来做,相当于GPU和CPU之间是异构的,而CPU之间,例如A71和A53都是ARM芯片,属于同构。
增量拼接单元204得到的巡检视频对应的巡检拼接图在垂直方向可以覆盖完整货架,例如可以覆盖高度为1.8米,侧方距离(即货架与巡检机器人之间的距离)为70公分的货架排面。增量拼接单元204可以完成8K图像垂直水平方向的同时拼接。
基于以上关于视频巡检装置200的描述,结合图5,对关键帧选取的流程说明如下:
在获取图像帧后,首先将图像帧放入图像帧存储队列,然后判断图像帧是否为起始帧或结束帧,若判断确定图像帧是起始帧或结束帧,则将图像帧放入关键帧存储队列,结束针对图像帧的关键帧选取流程。
若判断确定图像帧非起始帧且非结束帧,则确定图像帧与前一个关键帧的重合度。进而判断重合度是否小于预设阈值;若判断确定重合度大于或等于预设阈值,说明图像帧不是关键帧,结束针对图像帧的关键帧选取流程。
若判断确定重合度小于预设阈值,则进行图像质量检测;进而基于质量检测结果判断图像帧是否模糊,若判断确定图像帧不模糊,则确定图像帧为关键帧,并将图像帧放入关键帧存储队列,结束针对图像帧的关键帧选取流程。
若判断确定重合度小于预设阈值且图像帧模糊,则从图像帧存储队列中选择一个图像帧作为关键帧,并将图像帧放入关键帧存储队列,结束针对图像帧的关键帧选取流程。
基于以上关于视频巡检装置200的描述,结合图6,以关键帧为YUV图像且为NV12格式为例,对增量拼接的流程说明如下:
新建一个用于增量拼接的像素区域601。
确定巡检视频的起始帧中所有Y分量602在像素区域601中的拷贝区域603,拷贝区域603可以理解为起始帧中所有Y分量602在像素区域601中的感兴趣区域。
对非起始帧的关键帧中所有Y分量604进行仿射变换,得到仿射图像605。确定仿射图像605在像素区域601中的感兴趣区域606,那么感兴趣区域606与拷贝区域603的重合区域为607。
基于感兴趣区域606和拷贝区域603,确定仿射图像605的增量在像素区域601中的增量拷贝区域为608,即感兴趣区域606减去重合区域607后剩余的区域。
将起始帧中所有Y分量602拷贝到拷贝区域603,并将仿射图像605的增量拷贝到对应的增量拷贝区域608。
确定起始帧中每个UV分量在像素区域601中的位置;将起始帧中每个UV分量拷贝到像素区域601中对应的位置,这些位置位于像素区域601中的区域609。
确定非起始帧的关键帧的中每个UV分量在像素区域601中的位置;将该关键帧中每个UV分量拷贝到像素区域601中对应的位置,这些位置位于像素区域601中的区域609。
至此完成增量拼接。
在一些实施例中,视频巡检装置200中各单元的划分仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如获取单元201、关键帧选取单元202、存储单元203和增量拼接单元204中的至少两个单元可以实现为一个单元;获取单元201、关键帧选取单元202、存储单元203或增量拼接单元204也可以划分为多个子单元。可以理解的是,各个单元或子单元能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能。
图3是本公开实施例提供的一种电子设备的结构示意图。如图3所示,电子设备包括:至少一个处理器301、至少一个存储器302和至少一个通信接口303。电子设备中的各个组件通过总线系统304耦合在一起。通信接口303,用于与外部设备之间的信息传输。可理解地,总线系统304用于实现这些组件之间的连接通信。总线系统304除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但为了清楚说明起见,在图3中将各种总线都标为总线系统304。
可以理解,本实施例中的存储器302可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。
在一些实施方式中,存储器302存储了如下的元素,可执行单元或者数据结构,或者他们的子集,或者他们的扩展集:操作系统和应用程序。
其中,操作系统,包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础任务以及处理基于硬件的任务。应用程序,包含各种应用程序,例如媒体播放器(MediaPlayer)、浏览器(Browser)等,用于实现各种应用任务。实现本公开实施例提供的图像帧拼接方法、视频巡检方法和/或货架巡检方法的程序可以包含在应用程序中。
在本公开实施例中,处理器301通过调用存储器302存储的程序或指令,具体的,可以是应用程序中存储的程序或指令,处理器301用于执行本公开实施例提供的图像帧拼接方法、视频巡检方法和/或货架巡检方法各实施例的步骤。
本公开实施例提供的图像帧拼接方法、视频巡检方法和/或货架巡检方法可以应用于处理器301中,或者由处理器301实现。处理器301可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器301中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器301可以是通用处理器、数字信号处理器(DigitalSignalProcessor,DSP)、专用集成电路(ApplicationSpecificIntegratedCircuit,ASIC)、现成可编程门阵列(FieldProgrammableGateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本公开实施例提供的图像帧拼接方法、视频巡检方法和/或货架巡检方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件单元组合执行完成。软件单元可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器302,处理器301读取存储器302中的信息,结合其硬件完成方法的步骤。
图4为本公开实施例提供的一种视频巡检方法的示例性流程图。该方法的执行主体为电子设备。
如图4所示,在步骤401中,获取拍摄的巡检视频的图像帧。其中,巡检视频由巡检机器人上安装的相机进行拍摄,且以预先设置的帧率(例如帧率≥14fps)进行拍摄,相机每拍摄一帧,获取单元201就获取一帧。在一些实施例中,巡检机器人上安装的相机可以有多个,例如,在巡检机器人的头部安装一个相机,在躯干部安装一个相机,这两个相机可以各自进行拍摄,拍摄帧率可以相同,也可以不同。这两个相机也可以采用相同拍摄帧率同步进行拍摄。后续可以分别针对这两个相机拍摄的图像帧进行处理(处理例如包括关键帧选取、增量拼接等),得到这两个相机各自的处理结果,然后再将这两个相机各自的处理结果进行融合。
在步骤402中,判断图像帧是否为关键帧。在一些实施例中,若图像帧为巡检视频的起始帧或结束帧,则确定图像帧为关键帧;若图像帧非起始帧且非结束帧,则基于图像帧的前一个关键帧,判断图像帧是否为关键帧。
在一些实施例中,巡检机器人在巡检起始点处于静止状态并拍摄第一帧图像,也即巡检视频的起始帧,相比移动中拍摄,静止拍摄的图像质量较高,因此,若图像帧为巡检视频的起始帧,则确定图像帧为关键帧。类似地,巡检机器人在巡检结束点(巡检结束点也可预先设置)处于静止状态并拍摄最后一帧图像,也即巡检视频的结束帧,若图像帧为巡检视频的结束帧,则确定图像帧为关键帧。
在一些实施例中,基于图像帧的前一个关键帧,判断图像帧是否为关键帧包括:确定图像帧与前一个关键帧的重合度;判断重合度是否小于预设阈值;若重合度小于预设阈值,则检测图像帧的质量;基于质量检测结果判断图像帧是否模糊;若图像帧不模糊,则确定图像帧为关键帧。
本实施例中,预设阈值例如为20%,本领域技术人员可根据实际需要设置预设阈值。若重合度小于预设阈值,可以理解为图像帧满足关键帧选取的重合度条件,但是仍不确定图像帧的质量是否满足关键帧选取的质量条件,因此,若重合度小于预设阈值后,则检测图像帧的质量。
在一些实施例中,确定图像帧与前一个关键帧的重合度包括:新建一个用于确定重合度的像素区域;确定前一个关键帧在像素区域中的第一拷贝区域;对图像帧进行仿射变换,得到仿射图像;确定仿射图像在像素区域中的第二拷贝区域;基于第一拷贝区域和第二拷贝区域,确定重合度。本实施例中,为了确定图像帧与前一个关键帧的重合度,需要将图像帧投影到拍摄前一个关键帧时相机的物理像平面上,这个投影可采用仿射变换(wrap)来实现。
在一些实施例中,重合度通过下式确定:
重合度=重合区域/第一拷贝区域;
其中,重合区域为第一拷贝区域与第二拷贝区域相重合的区域,也即第一拷贝区域与第二拷贝区域的交集,可以理解为相同像素的集合,其中,相同像素可以理解为位置相同且像素值相同。
在一些实施例中,图像帧为YUV图像;仿射图像是对图像帧中所有Y分量进行仿射变换得到的图像;第一拷贝区域为前一个关键帧中所有Y分量在像素区域中的拷贝区域。
在一些实施例中,检测图像帧的质量包括:将图像帧输入模糊检测模型,通过模糊检测模型检测图像帧,输出用于描述图像帧是否模糊的二分类信息;相应地,质量检测结果为二分类信息。本实施例中,二分类信息例如为“1”或“0”,“1”表示模糊,“0”表示不模糊,在实际应用中,二分类信息的具体表现形式可以有多种,在此不一一列举。其中,模糊检测模型通过预先训练神经网络模型得到,神经网络模型例如为深度卷积网络。
在步骤403中,若判断图像帧为关键帧,则对图像帧进行第一存储。
在一些实施例中,获取拍摄的巡检视频的图像帧后,方法还包括:对图像帧进行第二存储,第二存储的帧数上限为预设帧数;若重合度小于预设阈值且图像帧模糊,则从第二存储的所有图像帧中选择一个图像帧作为关键帧。
本实施例中,若重合度小于预设阈值且图像帧模糊,不应将图像帧确定为关键帧,可以理解:图像帧本应确定为关键帧参与后续的增量拼接,只是因为质量较差(即模糊)而不确定为关键帧,为了避免缺失关键帧导致增量拼接的效果不佳,应当在图像帧附近找到质量更好的图像帧作为关键帧。为此,若重合度小于预设阈值且图像帧模糊,则回溯图像帧之前的多个图像帧,例如回溯图像帧之前的10个图像帧,选取一个图像帧作为关键帧。
在一些实施例中,从第二存储的所有图像帧中选择一个图像帧作为关键帧包括:
针对第二存储的每个图像帧:
判断该图像帧是否模糊;
若该图像帧不模糊,则确定该图像帧与前一个关键帧的重
合度;
选择不模糊且重合度最小的图像帧作为关键帧。选择的关键帧与前一个关键帧的重合度可能大于预设阈值。
在步骤404中,将第一存储的所有关键帧进行增量拼接,得到巡检视频对应的巡检拼接图;其中,第一存储的任意相邻两个关键帧之间的增量基于相邻两个关键帧提取的光流特征进行确定。
在一些实施例中,将第一存储的所有关键帧进行增量拼接包括:新建一个用于增量拼接的像素区域;确定起始帧在像素区域中的拷贝区域;确定非起始帧的每个关键帧的增量及增量在像素区域中的增量拷贝区域;将起始帧拷贝到拷贝区域,并将非起始帧的每个关键帧的增量拷贝到对应的增量拷贝区域。
在一些实施例中,用于增量拼接的像素区域的面积基于第一存储的关键帧的面积和数量计算得到,例如,第一存储的关键帧有3个,每个关键帧的面积是S,那么用于增量拼接的像素区域的面积为3S。
在一些实施例中,确定非起始帧的每个关键帧的增量及增量在像素区域中的增量拷贝区域包括:
针对非起始帧的每个关键帧:
对该关键帧进行仿射变换,得到该关键帧的仿射图像;
确定该关键帧的仿射图像在像素区域中感兴趣区域;
基于该关键帧的感兴趣区域和该关键帧的前一个关键帧的感兴趣区域,确定该关键帧的仿射图像的增量及该增量在像素区域中的增量拷贝区域。
在一些实施例中,关键帧为YUV图像;该关键帧的仿射图像是对该关键帧中所有Y分量进行仿射变换得到的图像;拷贝区域为起始帧中所有Y分量在像素区域中的拷贝区域;增量为该关键帧的感兴趣区域与该关键帧的前一个关键帧的感兴趣区域的非重合区域。将起始帧拷贝到拷贝区域包括:将起始帧中所有Y分量拷贝到拷贝区域。
在一些实施例中,将起始帧中所有Y分量拷贝到拷贝区域后,将第一存储的所有关键帧进行增量拼接还包括:确定起始帧中每个UV分量在像素区域中的位置;将起始帧中每个UV分量拷贝到像素区域中对应的位置。
在一些实施例中,将非起始帧的每个关键帧的仿射图像拷贝到对应的增量拷贝区域后,将第一存储的所有关键帧进行增量拼接还包括:
针对非起始帧的每个关键帧:
确定该关键帧中每个UV分量在像素区域中的位置;
将该关键帧中每个UV分量拷贝到像素区域中对应的位置。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员能够理解,本公开实施例并不受所描述的动作顺序的限制,因为依据本公开实施例,某些步骤可以采用其他顺序或者同时进行,例如,将光流跟踪算法从拼接流程中剥离,使得拼接和光流跟踪两个流程可以异步处理。另外,本领域技术人员能够理解,说明书中所描述的实施例均属于可选实施例。
图7是本公开实施例提供的一种图像帧拼接方法的流程图,适用于图像帧拼接的任意场景,包括但不限于视频巡检场景、货架巡检场景等。图像帧拼接方法的执行主体为电子设备。
如图7所示,在步骤701中,获取图像帧。在一些实施例中,可以基于预设的帧率(例如帧率≥14fps)获取图像帧。
在步骤702中,判断图像帧是否为关键帧。在一些实施例中,若图像帧为起始帧或结束帧,则确定图像帧为关键帧;若图像帧非起始帧且非结束帧,则基于图像帧的前一个关键帧,判断图像帧是否为关键帧。
在一些实施例中,基于图像帧的前一个关键帧,判断图像帧是否为关键帧包括:确定图像帧与前一个关键帧的重合度;判断重合度是否小于预设阈值;若重合度小于预设阈值,则检测图像帧的质量;基于质量检测结果判断图像帧是否模糊;若图像帧不模糊,则确定图像帧为关键帧。
本实施例中,预设阈值例如为20%,本领域技术人员可根据实际需要设置预设阈值。若重合度小于预设阈值,可以理解为图像帧满足关键帧选取的重合度条件,但是仍不确定图像帧的质量是否满足关键帧选取的质量条件,因此,若重合度小于预设阈值后,则检测图像帧的质量。
在一些实施例中,确定图像帧与前一个关键帧的重合度包括:新建一个用于确定重合度的像素区域;确定前一个关键帧在像素区域中的第一拷贝区域;对图像帧进行仿射变换,得到仿射图像;确定仿射图像在像素区域中的第二拷贝区域;基于第一拷贝区域和第二拷贝区域,确定重合度。本实施例中,为了确定图像帧与前一个关键帧的重合度,需要将图像帧投影到拍摄前一个关键帧时相机的物理像平面上,这个投影可采用仿射变换(wrap)来实现。
在一些实施例中,重合度通过下式确定:
重合度=重合区域/第一拷贝区域;
其中,重合区域为第一拷贝区域与第二拷贝区域相重合的区域,也即第一拷贝区域与第二拷贝区域的交集,可以理解为相同像素的集合,其中,相同像素可以理解为位置相同且像素值相同。
在一些实施例中,图像帧为YUV图像;仿射图像是对图像帧中所有Y分量进行仿射变换得到的图像;第一拷贝区域为前一个关键帧中所有Y分量在像素区域中的拷贝区域。
在一些实施例中,检测图像帧的质量包括:将图像帧输入模糊检测模型,通过模糊检测模型检测图像帧,输出用于描述图像帧是否模糊的二分类信息;相应地,质量检测结果为二分类信息。本实施例中,二分类信息例如为“1”或“0”,“1”表示模糊,“0”表示不模糊,在实际应用中,二分类信息的具体表现形式可以有多种,在此不一一列举。其中,模糊检测模型通过预先训练神经网络模型得到,神经网络模型例如为深度卷积网络。
在步骤703中,若判断图像帧为关键帧,则对图像帧进行第一存储。
在一些实施例中,获取图像帧后,方法还包括:对图像帧进行第二存储,第二存储的帧数上限为预设帧数;若重合度小于预设阈值且图像帧模糊,则从第二存储的所有图像帧中选择一个图像帧作为关键帧。
本实施例中,若重合度小于预设阈值且图像帧模糊,不应将图像帧确定为关键帧,可以理解:图像帧本应确定为关键帧参与后续的增量拼接,只是因为质量较差(即模糊)而不确定为关键帧,为了避免缺失关键帧导致增量拼接的效果不佳,应当在图像帧附近找到质量更好的图像帧作为关键帧。为此,若重合度小于预设阈值且图像帧模糊,则回溯图像帧之前的多个图像帧,例如回溯图像帧之前的10个图像帧,选取一个图像帧作为关键帧。
在一些实施例中,从第二存储的所有图像帧中选择一个图像帧作为关键帧包括:
针对第二存储的每个图像帧:
判断该图像帧是否模糊;
若该图像帧不模糊,则确定该图像帧与前一个关键帧的重
合度;
选择不模糊且重合度最小的图像帧作为关键帧。选择的关键帧与前一个关键帧的重合度可能大于预设阈值。
在步骤704中,将第一存储的所有关键帧进行增量拼接,可得到拼接图;其中,第一存储的任意相邻两个关键帧之间的增量基于相邻两个关键帧提取的光流特征进行确定。
在一些实施例中,将第一存储的所有关键帧进行增量拼接包括:新建一个用于增量拼接的像素区域;确定起始帧在像素区域中的拷贝区域;确定非起始帧的每个关键帧的增量及增量在像素区域中的增量拷贝区域;将起始帧拷贝到拷贝区域,并将非起始帧的每个关键帧的增量拷贝到对应的增量拷贝区域。
在一些实施例中,用于增量拼接的像素区域的面积基于第一存储的关键帧的面积和数量计算得到,例如,第一存储的关键帧有3个,每个关键帧的面积是S,那么用于增量拼接的像素区域的面积为3S。
在一些实施例中,确定非起始帧的每个关键帧的增量及增量在像素区域中的增量拷贝区域包括:
针对非起始帧的每个关键帧:
对该关键帧进行仿射变换,得到该关键帧的仿射图像;
确定该关键帧的仿射图像在像素区域中感兴趣区域;
基于该关键帧的感兴趣区域和该关键帧的前一个关键帧的感兴趣区域,确定该关键帧的仿射图像的增量及该增量在像素区域中的增量拷贝区域。
在一些实施例中,关键帧为YUV图像;该关键帧的仿射图像是对该关键帧中所有Y分量进行仿射变换得到的图像;拷贝区域为起始帧中所有Y分量在像素区域中的拷贝区域;增量为该关键帧的感兴趣区域与该关键帧的前一个关键帧的感兴趣区域的非重合区域。将起始帧拷贝到拷贝区域包括:将起始帧中所有Y分量拷贝到拷贝区域。
在一些实施例中,将起始帧中所有Y分量拷贝到拷贝区域后,将第一存储的所有关键帧进行增量拼接还包括:确定起始帧中每个UV分量在像素区域中的位置;将起始帧中每个UV分量拷贝到像素区域中对应的位置。
在一些实施例中,将非起始帧的每个关键帧的仿射图像拷贝到对应的增量拷贝区域后,将第一存储的所有关键帧进行增量拼接还包括:
针对非起始帧的每个关键帧:
确定该关键帧中每个UV分量在像素区域中的位置;
将该关键帧中每个UV分量拷贝到像素区域中对应的位置。
本公开的至少一个实施例中,通过判断图像帧是否为关键帧,实现对图像质量较好的关键帧的选取,进而只对关键帧进行拼接,而非对每一帧均进行拼接,在提高拼接质量的同时提高了拼接帧率和拼接效率,减少软硬件资源的消耗,另外,在拼接关键帧时,对关键帧进行增量拼接,而非全量拼接,进一步提高了拼接效率。拼接效果、拼接帧率和拼接效率均满足巡检需求。
图8本公开实施例提供的一种图像帧拼接装置的框图。如图8所示,图像帧拼接装置包括但不限于:获取单元801、关键帧选取单元802、存储单元803和增量拼接单元804。
获取单元801,用于获取图像帧。
关键帧选取单元802,用于判断图像帧是否为关键帧。
存储单元803,用于若图像帧为关键帧,则对图像帧进行第一存储。
增量拼接单元804,用于将第一存储的所有关键帧进行增量拼接;其中,第一存储的任意相邻两个关键帧之间的增量基于相邻两个关键帧提取的光流特征进行确定。
图8所示的图像帧拼接装置各单元的功能描述可参考图7所示的图像帧拼接方法中各步骤的描述,为避免重复,不再赘述。
图9是本公开实施例提供的一种货架巡检方法的示例性流程图。货架巡检方法的执行主体为电子设备。
如图9所示,在步骤901中,获取拍摄的货架巡检视频的图像帧。其中,货架巡检视频由巡检机器人上安装的相机进行拍摄,且以预先设置的帧率(例如帧率≥14fps)进行拍摄,相机每拍摄一帧,获取单元901就获取一帧。在一些实施例中,巡检机器人上安装的相机可以有多个,例如,在巡检机器人的头部安装一个相机,在躯干部安装一个相机,这两个相机可以各自进行拍摄,拍摄帧率可以相同,也可以不同。这两个相机也可以采用相同拍摄帧率同步进行拍摄。后续可以分别针对这两个相机拍摄的图像帧进行处理(处理例如包括关键帧选取、增量拼接等),得到这两个相机各自的处理结果,然后再将这两个相机各自的处理结果进行融合。
在步骤902中,判断图像帧是否为关键帧。在一些实施例中,若图像帧为货架巡检视频的起始帧或结束帧,则确定图像帧为关键帧;若图像帧非起始帧且非结束帧,则基于图像帧的前一个关键帧,判断图像帧是否为关键帧。
在一些实施例中,巡检机器人在巡检起始点处于静止状态并拍摄第一帧图像,也即货架巡检视频的起始帧,相比移动中拍摄,静止拍摄的图像质量较高,因此,若图像帧为货架巡检视频的起始帧,则确定图像帧为关键帧。类似地,巡检机器人在巡检结束点(巡检结束点也可预先设置)处于静止状态并拍摄最后一帧图像,也即货架巡检视频的结束帧,若图像帧为货架巡检视频的结束帧,则确定图像帧为关键帧。
在一些实施例中,基于图像帧的前一个关键帧,判断图像帧是否为关键帧包括:确定图像帧与前一个关键帧的重合度;判断重合度是否小于预设阈值;若重合度小于预设阈值,则检测图像帧的质量;基于质量检测结果判断图像帧是否模糊;若图像帧不模糊,则确定图像帧为关键帧。
本实施例中,预设阈值例如为20%,本领域技术人员可根据实际需要设置预设阈值。若重合度小于预设阈值,可以理解为图像帧满足关键帧选取的重合度条件,但是仍不确定图像帧的质量是否满足关键帧选取的质量条件,因此,若重合度小于预设阈值后,则检测图像帧的质量。
在一些实施例中,确定图像帧与前一个关键帧的重合度包括:新建一个用于确定重合度的像素区域;确定前一个关键帧在像素区域中的第一拷贝区域;对图像帧进行仿射变换,得到仿射图像;确定仿射图像在像素区域中的第二拷贝区域;基于第一拷贝区域和第二拷贝区域,确定重合度。本实施例中,为了确定图像帧与前一个关键帧的重合度,需要将图像帧投影到拍摄前一个关键帧时相机的物理像平面上,这个投影可采用仿射变换(wrap)来实现。
在一些实施例中,重合度通过下式确定:
重合度=重合区域/第一拷贝区域;
其中,重合区域为第一拷贝区域与第二拷贝区域相重合的区域,也即第一拷贝区域与第二拷贝区域的交集,可以理解为相同像素的集合,其中,相同像素可以理解为位置相同且像素值相同。
在一些实施例中,图像帧为YUV图像;仿射图像是对图像帧中所有Y分量进行仿射变换得到的图像;第一拷贝区域为前一个关键帧中所有Y分量在像素区域中的拷贝区域。
在一些实施例中,检测图像帧的质量包括:将图像帧输入模糊检测模型,通过模糊检测模型检测图像帧,输出用于描述图像帧是否模糊的二分类信息;相应地,质量检测结果为二分类信息。本实施例中,二分类信息例如为“1”或“0”,“1”表示模糊,“0”表示不模糊,在实际应用中,二分类信息的具体表现形式可以有多种,在此不一一列举。其中,模糊检测模型通过预先训练神经网络模型得到,神经网络模型例如为深度卷积网络。
在步骤903中,若判断图像帧为关键帧,则对图像帧进行第一存储。
在一些实施例中,获取拍摄的货架巡检视频的图像帧后,方法还包括:对图像帧进行第二存储,第二存储的帧数上限为预设帧数;若重合度小于预设阈值且图像帧模糊,则从第二存储的所有图像帧中选择一个图像帧作为关键帧。
本实施例中,若重合度小于预设阈值且图像帧模糊,不应将图像帧确定为关键帧,可以理解:图像帧本应确定为关键帧参与后续的增量拼接,只是因为质量较差(即模糊)而不确定为关键帧,为了避免缺失关键帧导致增量拼接的效果不佳,应当在图像帧附近找到质量更好的图像帧作为关键帧。为此,若重合度小于预设阈值且图像帧模糊,则回溯图像帧之前的多个图像帧,例如回溯图像帧之前的10个图像帧,选取一个图像帧作为关键帧。
在一些实施例中,从第二存储的所有图像帧中选择一个图像帧作为关键帧包括:
针对第二存储的每个图像帧:
判断该图像帧是否模糊;
若该图像帧不模糊,则确定该图像帧与前一个关键帧的重
合度;
选择不模糊且重合度最小的图像帧作为关键帧。选择的关键帧与前一个关键帧的重合度可能大于预设阈值。
在步骤904中,将第一存储的所有关键帧进行增量拼接,得到货架巡检视频对应的巡检拼接图;其中,第一存储的任意相邻两个关键帧之间的增量基于相邻两个关键帧提取的光流特征进行确定。
在一些实施例中,将第一存储的所有关键帧进行增量拼接包括:新建一个用于增量拼接的像素区域;确定起始帧在像素区域中的拷贝区域;确定非起始帧的每个关键帧的增量及增量在像素区域中的增量拷贝区域;将起始帧拷贝到拷贝区域,并将非起始帧的每个关键帧的增量拷贝到对应的增量拷贝区域。
在一些实施例中,用于增量拼接的像素区域的面积基于第一存储的关键帧的面积和数量计算得到,例如,第一存储的关键帧有3个,每个关键帧的面积是S,那么用于增量拼接的像素区域的面积为3S。
在一些实施例中,确定非起始帧的每个关键帧的增量及增量在像素区域中的增量拷贝区域包括:
针对非起始帧的每个关键帧:
对该关键帧进行仿射变换,得到该关键帧的仿射图像;
确定该关键帧的仿射图像在像素区域中感兴趣区域;
基于该关键帧的感兴趣区域和该关键帧的前一个关键帧的感兴趣区域,确定该关键帧的仿射图像的增量及该增量在像素区域中的增量拷贝区域。
在一些实施例中,关键帧为YUV图像;该关键帧的仿射图像是对该关键帧中所有Y分量进行仿射变换得到的图像;拷贝区域为起始帧中所有Y分量在像素区域中的拷贝区域;增量为该关键帧的感兴趣区域与该关键帧的前一个关键帧的感兴趣区域的非重合区域。将起始帧拷贝到拷贝区域包括:将起始帧中所有Y分量拷贝到拷贝区域。
在一些实施例中,将起始帧中所有Y分量拷贝到拷贝区域后,将第一存储的所有关键帧进行增量拼接还包括:确定起始帧中每个UV分量在像素区域中的位置;将起始帧中每个UV分量拷贝到像素区域中对应的位置。
在一些实施例中,将非起始帧的每个关键帧的仿射图像拷贝到对应的增量拷贝区域后,将第一存储的所有关键帧进行增量拼接还包括:
针对非起始帧的每个关键帧:
确定该关键帧中每个UV分量在像素区域中的位置;
将该关键帧中每个UV分量拷贝到像素区域中对应的位置。
本公开的至少一个实施例中,通过判断图像帧是否为关键帧,实现对货架巡检视频中图像质量较好的关键帧的选取,进而只对货架巡检视频中的关键帧进行拼接,而非对每一帧均进行拼接,在提高拼接质量的同时提高了拼接帧率和拼接效率,减少软硬件资源的消耗,另外,在拼接关键帧时,对关键帧进行增量拼接,而非全量拼接,进一步提高了拼接效率。拼接效果、拼接帧率和拼接效率均满足巡检需求。
图10是本公开实施例提供的一种货架巡检装置的示例性框图。如图10所示,货架巡检装置包括但不限于:获取单元1001、关键帧选取单元1002、存储单元1003和增量拼接单元1004。
获取单元1001,用于获取拍摄的货架巡检视频的图像帧。
关键帧选取单元1002,用于判断图像帧是否为关键帧。
存储单元1003,用于若图像帧为关键帧,则对图像帧进行第一存储。
增量拼接单元1004,用于将第一存储的所有关键帧进行增量拼接,得到货架巡检视频对应的货架巡检拼接图;其中,第一存储的任意相邻两个关键帧之间的增量基于相邻两个关键帧提取的光流特征进行确定。
图10所示的货架巡检装置各单元的功能描述可参考图9所示的货架巡检方法中各步骤的描述,为避免重复,不再赘述。
本公开实施例还提出一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储程序或指令,所述程序或指令使计算机执行如图像帧拼接方法、视频巡检方法和/或货架巡检方法各实施例的步骤,为避免重复描述,在此不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本公开的范围之内并且形成不同的实施例。
本领域的技术人员能够理解,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
虽然结合附图描述了本公开的实施方式,但是本领域技术人员可以在不脱离本公开的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
Claims (22)
1.一种图像帧拼接方法,包括:
获取图像帧;
判断所述图像帧是否为关键帧;
若为关键帧,则对所述图像帧进行第一存储;
将所述第一存储的所有关键帧进行增量拼接;
其中,所述第一存储的任意相邻两个关键帧之间的增量基于所述相邻两个关键帧提取的光流特征进行确定。
2.根据权利要求1所述的方法,其中,所述判断所述图像帧是否为关键帧包括:
若所述图像帧为起始帧或结束帧,则确定所述图像帧为关键帧;
若所述图像帧非起始帧且非结束帧,则基于所述图像帧的前一个关键帧,判断所述图像帧是否为关键帧。
3.根据权利要求2所述的方法,其中,所述基于所述图像帧的前一个关键帧,判断所述图像帧是否为关键帧包括:
确定所述图像帧与所述前一个关键帧的重合度;
判断所述重合度是否小于预设阈值;
若所述重合度小于预设阈值,则检测所述图像帧的质量;
基于质量检测结果判断所述图像帧是否模糊;
若所述图像帧不模糊,则确定所述图像帧为关键帧。
4.根据权利要求3所述的方法,其中,所述确定所述图像帧与所述前一个关键帧的重合度包括:
新建一个用于确定重合度的像素区域;
确定所述前一个关键帧在所述像素区域中的第一拷贝区域;
对所述图像帧进行仿射变换,得到仿射图像;
确定所述仿射图像在所述像素区域中的第二拷贝区域;
基于所述第一拷贝区域和所述第二拷贝区域,确定所述重合度。
5.根据权利要求4所述的方法,其中,所述图像帧为YUV图像;所述仿射图像是对所述图像帧中所有Y分量进行仿射变换得到的图像;所述第一拷贝区域为所述前一个关键帧中所有Y分量在所述像素区域中的拷贝区域。
6.根据权利要求4或5所述的方法,其中,所述重合度通过下式确定:
所述重合度=重合区域/所述第一拷贝区域;
其中,所述重合区域为所述第一拷贝区域与所述第二拷贝区域相重合的区域。
7.根据权利要求3所述的方法,其中,所述检测所述图像帧的质量包括:
将所述图像帧输入模糊检测模型,通过所述模糊检测模型检测所述图像帧,输出用于描述所述图像帧是否模糊的二分类信息;
相应地,所述质量检测结果为所述二分类信息。
8.根据权利要求3所述的方法,其中,所述获取图像帧后,所述方法还包括:
对所述图像帧进行第二存储,所述第二存储的帧数上限为预设帧数;
若所述重合度小于预设阈值且所述图像帧模糊,则从所述第二存储的所有图像帧中选择一个图像帧作为关键帧。
9.根据权利要求8所述的方法,其中,所述从所述第二存储的所有图像帧中选择一个图像帧作为关键帧包括:
针对所述第二存储的每个图像帧:
判断该图像帧是否模糊;
若该图像帧不模糊,则确定该图像帧与所述前一个关键帧的重合度;
选择不模糊且重合度最小的图像帧作为关键帧。
10.根据权利要求2所述的方法,其中,所述将所述第一存储的所有关键帧进行增量拼接包括:
新建一个用于增量拼接的像素区域;
确定所述起始帧在所述像素区域中的拷贝区域;
确定非起始帧的每个关键帧的增量及所述增量在所述像素区域中的增量拷贝区域;
将所述起始帧拷贝到所述拷贝区域,并将非起始帧的每个关键帧的增量拷贝到对应的增量拷贝区域。
11.根据权利要求10所述的方法,其中,所述像素区域的面积基于所述第一存储的关键帧的面积和数量计算得到。
12.根据权利要求10所述的方法,其中,所述确定非起始帧的每个关键帧的增量及所述增量在所述像素区域中的增量拷贝区域包括:
针对非起始帧的每个关键帧:
对该关键帧进行仿射变换,得到该关键帧的仿射图像;
确定该关键帧的仿射图像在所述像素区域中感兴趣区域;
基于该关键帧的感兴趣区域和该关键帧的前一个关键帧的感兴趣区域,确定该关键帧的仿射图像的增量及该增量在所述像素区域中的增量拷贝区域。
13.根据权利要求12所述的方法,其中,所述关键帧为YUV图像;所述该关键帧的仿射图像是对该关键帧中所有Y分量进行仿射变换得到的图像;所述拷贝区域为所述起始帧中所有Y分量在所述像素区域中的拷贝区域;所述增量为该关键帧的感兴趣区域与该关键帧的前一个关键帧的感兴趣区域的非重合区域;
所述将所述起始帧拷贝到所述拷贝区域包括:将所述起始帧中所有Y分量拷贝到所述拷贝区域。
14.根据权利要求13所述的方法,其中,所述将所述起始帧中所有Y分量拷贝到所述拷贝区域后,所述将所述第一存储的所有关键帧进行增量拼接还包括:
确定所述起始帧中每个UV分量在所述像素区域中的位置;
将所述起始帧中每个UV分量拷贝到所述像素区域中对应的位置。
15.根据权利要求13所述的方法,其中,所述将非起始帧的每个关键帧的仿射图像拷贝到对应的增量拷贝区域后,所述将所述第一存储的所有关键帧进行增量拼接还包括:
针对非起始帧的每个关键帧:
确定该关键帧中每个UV分量在所述像素区域中的位置;
将该关键帧中每个UV分量拷贝到所述像素区域中对应的位置。
16.一种视频巡检方法,包括:
获取拍摄的巡检视频的图像帧;
判断所述图像帧是否为关键帧;
若为关键帧,则对所述图像帧进行第一存储;
将所述第一存储的所有关键帧进行增量拼接,得到所述巡检视频对应的巡检拼接图;
其中,所述第一存储的任意相邻两个关键帧之间的增量基于所述相邻两个关键帧提取的光流特征进行确定。
17.一种货架巡检方法,包括:
获取拍摄的货架巡检视频的图像帧;
判断所述图像帧是否为关键帧;
若为关键帧,则对所述图像帧进行第一存储;
将所述第一存储的所有关键帧进行增量拼接,得到所述货架巡检视频对应的货架巡检拼接图;
其中,所述第一存储的任意相邻两个关键帧之间的增量基于所述相邻两个关键帧提取的光流特征进行确定。
18.一种图像帧拼接装置,包括:
获取单元,用于获取图像帧;
关键帧选取单元,用于判断所述图像帧是否为关键帧;
存储单元,用于若所述图像帧为关键帧,则对所述图像帧进行第一存储;
增量拼接单元,用于将所述第一存储的所有关键帧进行增量拼接;其中,所述第一存储的任意相邻两个关键帧之间的增量基于所述相邻两个关键帧提取的光流特征进行确定。
19.一种视频巡检装置,包括:
获取单元,用于获取拍摄的巡检视频的图像帧;
关键帧选取单元,用于判断所述图像帧是否为关键帧;
存储单元,用于若所述图像帧为关键帧,则对所述图像帧进行第一存储;
增量拼接单元,用于将所述第一存储的所有关键帧进行增量拼接,得到所述巡检视频对应的巡检拼接图;其中,所述第一存储的任意相邻两个关键帧之间的增量基于所述相邻两个关键帧提取的光流特征进行确定。
20.一种货架巡检装置,包括:
获取单元,用于获取拍摄的货架巡检视频的图像帧;
关键帧选取单元,用于判断所述图像帧是否为关键帧;
存储单元,用于若所述图像帧为关键帧,则对所述图像帧进行第一存储;
增量拼接单元,用于将所述第一存储的所有关键帧进行增量拼接,得到所述货架巡检视频对应的货架巡检拼接图;其中,所述第一存储的任意相邻两个关键帧之间的增量基于所述相邻两个关键帧提取的光流特征进行确定。
21.一种电子设备,包括:处理器和存储器;
所述处理器通过调用所述存储器存储的程序或指令,用于执行如权利要求1至17任一项所述方法的步骤。
22.一种非暂态计算机可读存储介质,其中,所述非暂态计算机可读存储介质存储程序或指令,所述程序或指令使计算机执行如权利要求1至17任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110112317.4A CN113298707B (zh) | 2021-01-27 | 2021-01-27 | 图像帧拼接方法、视频巡检方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110112317.4A CN113298707B (zh) | 2021-01-27 | 2021-01-27 | 图像帧拼接方法、视频巡检方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113298707A true CN113298707A (zh) | 2021-08-24 |
CN113298707B CN113298707B (zh) | 2024-05-10 |
Family
ID=77318878
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110112317.4A Active CN113298707B (zh) | 2021-01-27 | 2021-01-27 | 图像帧拼接方法、视频巡检方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113298707B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114040096A (zh) * | 2021-10-27 | 2022-02-11 | 上海小零网络科技有限公司 | 针对货架图像的辅助拍摄方法、装置、设备及介质 |
CN114723607A (zh) * | 2022-03-21 | 2022-07-08 | 北京卓视智通科技有限责任公司 | 一种图像拼接方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102201115A (zh) * | 2011-04-07 | 2011-09-28 | 湖南天幕智能科技有限公司 | 无人机航拍视频实时全景图拼接方法 |
CN103986912A (zh) * | 2014-05-21 | 2014-08-13 | 南京大学 | 基于民用ipc的双向实时车辆底盘图像合成方法 |
CN106447608A (zh) * | 2016-08-25 | 2017-02-22 | 中国科学院长春光学精密机械与物理研究所 | 一种视频图像拼接方法及装置 |
CN111723713A (zh) * | 2020-06-09 | 2020-09-29 | 上海合合信息科技股份有限公司 | 一种基于光流法的视频关键帧提取方法及系统 |
-
2021
- 2021-01-27 CN CN202110112317.4A patent/CN113298707B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102201115A (zh) * | 2011-04-07 | 2011-09-28 | 湖南天幕智能科技有限公司 | 无人机航拍视频实时全景图拼接方法 |
CN103986912A (zh) * | 2014-05-21 | 2014-08-13 | 南京大学 | 基于民用ipc的双向实时车辆底盘图像合成方法 |
CN106447608A (zh) * | 2016-08-25 | 2017-02-22 | 中国科学院长春光学精密机械与物理研究所 | 一种视频图像拼接方法及装置 |
CN111723713A (zh) * | 2020-06-09 | 2020-09-29 | 上海合合信息科技股份有限公司 | 一种基于光流法的视频关键帧提取方法及系统 |
Non-Patent Citations (1)
Title |
---|
马跃龙;赵勇;曹雪峰;: "一种基于单目SLAM的无人机序列图像拼接方法", 系统仿真学报, no. 10, pages 65 - 71 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114040096A (zh) * | 2021-10-27 | 2022-02-11 | 上海小零网络科技有限公司 | 针对货架图像的辅助拍摄方法、装置、设备及介质 |
CN114723607A (zh) * | 2022-03-21 | 2022-07-08 | 北京卓视智通科技有限责任公司 | 一种图像拼接方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN113298707B (zh) | 2024-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Hu et al. | Depth-attentional features for single-image rain removal | |
TWI750498B (zh) | 視訊流的處理方法和裝置 | |
CN113286194A (zh) | 视频处理方法、装置、电子设备及可读存储介质 | |
US20180005039A1 (en) | Method and apparatus for generating an initial superpixel label map for an image | |
US11900676B2 (en) | Method and apparatus for detecting target in video, computing device, and storage medium | |
Bešić et al. | Dynamic object removal and spatio-temporal RGB-D inpainting via geometry-aware adversarial learning | |
CN106845338B (zh) | 视频流中行人检测方法与系统 | |
CN111383204A (zh) | 视频图像融合方法、融合装置、全景监控系统及存储介质 | |
CN113298707B (zh) | 图像帧拼接方法、视频巡检方法、装置、设备及存储介质 | |
CN111539991A (zh) | 目标跟踪方法及装置、存储介质 | |
Xiong et al. | Self-supervised monocular depth and visual odometry learning with scale-consistent geometric constraints | |
CN111753782A (zh) | 一种基于双流网络的假脸检测方法、装置及电子设备 | |
CN115115522A (zh) | 一种货架商品图像拼接方法及系统 | |
CN114463237B (zh) | 基于全局运动补偿和帧间时域关联性的实时视频去雨方法 | |
Wan et al. | Boosting image-based localization via randomly geometric data augmentation | |
Xia et al. | Unsupervised optical flow estimation with dynamic timing representation for spike camera | |
US9648211B2 (en) | Automatic video synchronization via analysis in the spatiotemporal domain | |
Zhang et al. | Video object detection base on rgb and optical flow analysis | |
Halperin et al. | Clear Skies Ahead: Towards Real‐Time Automatic Sky Replacement in Video | |
US11270442B2 (en) | Motion image integration method and motion image integration system capable of merging motion object images | |
Wong et al. | Development of a refined illumination and reflectance approach for optimal construction site interior image enhancement | |
CN113191301A (zh) | 融合时序和空间信息的视频密集人群计数方法及系统 | |
JP2001307104A (ja) | 動画像のオブジェクト抽出装置 | |
Pesavento et al. | Super-resolution appearance transfer for 4D human performances | |
CN110991365B (zh) | 一种视频运动信息获取方法、系统及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |