视频平滑方法、装置、无人机及存储介质与流程

文档序号:14179358阅读:220来源:国知局
视频平滑方法、装置、无人机及存储介质与流程

本发明涉及无人机技术领域,具体而言,涉及一种视频平滑方法、装置、无人机及存储介质。



背景技术:

无人机搭载摄像头进行航拍时,摄像头固定在云台上,无人机转头运动时,摄像头随着无人机的转头而转动,从而对外界进行拍摄。当无人机转头的时候,通常采用的做法是摄像头拍摄的图像正对着前方,这样在有风吹过无人机的机头、或者因无人机震动导致机头水平方向轻微转动的时候,摄像头拍摄的视频也会在水平方向上出现颤动,会影响摄像头拍摄的视频质量。



技术实现要素:

本发明实施例的目的在于提供一种视频平滑方法、装置、无人机及存储介质,用以改善上述问题。

为了实现上述目的,本发明实施例采用的技术方案如下:

第一方面,本发明实施例提供了一种视频平滑方法,应用于无人机,所述无人机安装有惯性测量单元和鱼眼镜头,所述惯性测量单元和所述鱼眼镜头均与所述无人机的处理器电性连接,所述方法包括:获取所述惯性测量单元采集的所述无人机的运动信息、以及所述鱼眼镜头采集的原始视频;利用所述运动信息对所述原始视频进行视频增稳,得到增稳视频;获取所述无人机的机头对应的稳定角度,其中,所述稳定角度为得到所述增稳视频时所述鱼眼镜头对应的角度;当所述机头的方向发生变化时,根据所述稳定角度计算所述机头的偏差角度;当所述偏差角度大于预设角度时,利用pid控制器对增稳视频进行平滑,以使所述增稳视频的视角方向向所述机头的方向平滑靠近。

第二方面,本发明实施例还提供了一种视频平滑装置,应用于无人机,所述无人机安装有惯性测量单元和鱼眼镜头,所述惯性测量单元和所述鱼眼镜头均与所述无人机的处理器电性连接,所述装置包括数据获取模块、视频增稳模块、稳定角度获取模块、偏差角度计算模块及第一执行模块。其中,数据获取模块用于获取所述惯性测量单元采集的所述无人机的运动信息、以及所述鱼眼镜头采集的原始视频;视频增稳模块用于利用所述运动信息对所述原始视频进行视频增稳,得到增稳视频;稳定角度获取模块用于获取所述无人机的机头对应的稳定角度,其中,所述稳定角度为得到所述增稳视频时所述鱼眼镜头对应的角度;偏差角度计算模块用于当所述机头的方向发生变化时,根据所述稳定角度计算所述机头的偏差角度;第一执行模块用于当所述偏差角度大于预设角度时,利用pid控制器对增稳视频进行平滑,以使所述增稳视频的视角方向向所述机头的方向平滑靠近。

第三方面,本发明实施例还提供了一种无人机,所述无人机安装有惯性测量单元和鱼眼镜头,所述无人机包括:存储器;处理器,所述惯性测量单元和所述鱼眼镜头均与所述无人机的处理器电性连接;以及视频平滑装置,所述视频平滑装置安装于所述存储器中并包括一个或多个由所述处理器执行的软件功能模组。所述装置包括数据获取模块、视频增稳模块、稳定角度获取模块、偏差角度计算模块及第一执行模块。其中,数据获取模块用于获取所述惯性测量单元采集的所述无人机的运动信息、以及所述鱼眼镜头采集的原始视频;视频增稳模块用于利用所述运动信息对所述原始视频进行视频增稳,得到增稳视频;稳定角度获取模块用于获取所述无人机的机头对应的稳定角度,其中,所述稳定角度为得到所述增稳视频时所述鱼眼镜头对应的角度;偏差角度计算模块用于当所述机头的方向发生变化时,根据所述稳定角度计算所述机头的偏差角度;第一执行模块用于当所述偏差角度大于预设角度时,利用pid控制器对增稳视频进行平滑,以使所述增稳视频的视角方向向所述机头的方向平滑靠近。

第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述的鱼眼图像校正方法。

相对现有技术,本发明实施例提供的一种视频平滑方法、装置、无人机及存储介质,首先,获取惯性测量单元采集的无人机的运动信息、以及鱼眼镜头采集的原始视频,并利用运动信息对原始视频进行视频增稳,得到增稳视频;然后,获取无人机的机头对应的稳定角度,当机头的方向发生变化时,根据稳定角度计算机头的偏差角度;最后,当偏差角度大于预设角度时,利用pid控制器对增稳视频进行平滑,以使增稳视频的视角方向向机头的方向平滑靠近。本发明实施例可以在无人机转头时鱼眼镜头连续稳定的转动,以使拍摄的视频平滑、连续、清晰。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1示出了本发明实施例提供的无人机的方框示意图。

图2示出了本发明实施例提供的视频平滑方法流程图。

图3为图2示出的步骤s102的子步骤流程图。

图4为图2示出的步骤s105的子步骤流程图。

图5示出了本发明实施例提供的视频平滑装置的方框示意图。

图标:100-无人机;101-存储器;102-存储控制器;103-处理器;104-外设接口;105-惯性测量单元;106-鱼眼镜头;200-视频平滑装置;201-数据获取模块;202-视频增稳模块;203-稳定角度获取模块;204-偏差角度计算模块;205-第一执行模块;206-第二执行模块。

具体实施方式

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

请参照图1,图1示出了本发明实施例提供的无人机100的方框示意图。无人机100可以是,但不限于固定翼无人机、无人直升机和多旋翼无人机、伞翼无人机、扑翼无人机和无人飞船等等。所述无人机100包括视频平滑装置200、存储器101、存储控制器102、处理器103、外设接口104、惯性测量单元105和鱼眼镜头106。

所述存储器101、存储控制器102、处理器103、外设接口104、惯性测量单元105和鱼眼镜头106各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。所述视频平滑装置200包括至少一个可以软件或固件(firmware)的形式存储于所述存储器101中或固化在所述无人机100的操作系统(operatingsystem,os)中的软件功能模块。所述处理器103用于执行存储器101中存储的可执行模块,例如所述视频平滑装置200包括的软件功能模块或计算机程序。

其中,存储器101可以是,但不限于,随机存取存储器(randomaccessmemory,ram),只读存储器(readonlymemory,rom),可编程只读存储器(programmableread-onlymemory,prom),可擦除只读存储器(erasableprogrammableread-onlymemory,eprom),电可擦除只读存储器(electricerasableprogrammableread-onlymemory,eeprom)等。其中,存储器101用于存储程序,所述处理器103在接收到执行指令后,执行所述程序。

处理器103可以是一种集成电路芯片,具有信号处理能力。上述的处理器103可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)、语音处理器以及视频处理器等;还可以是数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器103也可以是任何常规的处理器等。

所述外设接口104用于将各种输入/输出装置耦合至处理器103以及存储器101。在一些实施例中,外设接口104、处理器103以及存储控制器102可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。

所述惯性测量单元105与处理器103电性连接,且惯性测量单元105用于采集无人机100的运动信息。

所述鱼眼镜头106与处理器103电性连接,且鱼眼镜头106用于采集原始视频,以使视频平滑装置200对原始视频实现视频平滑。

第一实施例

请参照图2,图2示出了本发明实施例提供的视频平滑方法流程图。旋转矩阵计算方法包括以下步骤:

步骤s101,获取惯性测量单元采集的无人机的运动信息、以及鱼眼镜头采集的原始视频。

在本发明实施例中,惯性测量单元105是测量无人机100运动的角速度和加速度的装置。作为一种实施方式,惯性测量单元105包括陀螺仪和加速度计,惯性测量单元105采集的无人机100的运动信息包括陀螺仪采集的角速度数据和加速度计采集的加速度数据。

在本发明实施例中,鱼眼镜头106是一种焦距为16mm或更短的并且视角接近或等于180°的镜头,鱼眼镜头106属于超广角镜头中的一种特殊镜头,它的视角力求达到或超出人眼所能看到的范围,其采集的原始视频与人们眼中的真实世界的景象存在很大的差别,需要对原始视频进行视频增稳。

步骤s102,利用运动信息对原始视频进行视频增稳,得到增稳视频。

在本发明实施例中,惯性测量单元105采集到无人机100的运动信息之后,首先,对运动信息进行姿态融合,得到无人机100的飞行姿态数据,作为一种实施方式,飞行姿态数据包括偏航角、俯仰角和滚转角,分别用yaw、pitch和roll表示,可以使用梯度下降法,对陀螺仪采集的角速度数据(gx,gy,gz)和加速度计采集的加速度数据(ax,ay,az)进行姿态融合,得到的结果就是飞行姿态数据(yaw,pitch,roll)。

然后,利用飞行姿态数据对原始视频进行视频增稳,得到增稳视频,在本发明实施例中,对原始视频进行视频增稳的方法可以包括,但不限于首先,获取鱼眼镜头106的视场角数据,其中,视场角数据包括光线入射角和投影焦距;然后,利用预设的顶点着色器和片段着色器对原始视频进行渲染,得到渲染场景,作为一种实施方式,顶点着色器、片段着色器和场景模型可以预先利用opengles2.0进行创建。创建出顶点着色器、片段着色器和场景模型之后,先利用顶点着色器计算该预设场景模型的顶点坐标,再利用片段着色器计算顶点坐标在原始视频上的纹理坐标,得到渲染场景,也就是说,根据光学原理,用顶点坐标计算入射角,然后由入射角计算焦距,再由焦距计算顶点在原始视频帧上的纹理坐标,从而计算出顶点的颜色,以得到渲染场景;最后,根据飞行姿态数据计算渲染场景的旋转矩阵。作为一种实施方式,首先,获取视角偏移数据,视角偏移数据也就是鱼眼镜头106的视角偏移;然后,将飞行姿态数据和视角偏移数据进行叠加,得到无人机100的视角空间方向数据;再根据视角空间方向数据,计算出渲染场景的旋转矩阵,并利用旋转矩阵对原始视频进行视频增稳,得到增稳视频。

请参照图3,步骤s102可以包括以下子步骤:

子步骤s1021,根据运动信息进行姿态融合,得到无人机的飞行姿态数据。

在本发明实施例中,惯性测量单元105采集到无人机100的运动信息之后,首先,对运动信息进行姿态融合,得到无人机100的飞行姿态数据,作为一种实施方式,飞行姿态数据包括偏航角、俯仰角和滚转角,分别用yaw、pitch和roll表示,可以使用梯度下降法,对陀螺仪采集的角速度数据(gx,gy,gz)和加速度计采集的加速度数据(ax,ay,az)进行姿态融合,得到的结果就是飞行姿态数据(yaw,pitch,roll)

子步骤s1022,利用飞行姿态数据对原始视频进行视频增稳,得到增稳视频。

在本发明实施例中,对原始视频进行视频增稳的方法可以包括,但不限于首先,获取鱼眼镜头106的视场角数据,其中,视场角数据包括光线入射角和投影焦距;

然后,利用预设的顶点着色器和片段着色器对原始视频进行渲染,得到渲染场景,作为一种实施方式,顶点着色器、片段着色器和场景模型可以预先利用opengles2.0进行创建。创建出顶点着色器、片段着色器和场景模型之后,先利用顶点着色器计算该预设场景模型的顶点坐标,再利用片段着色器计算顶点坐标在原始视频上的纹理坐标,得到渲染场景,也就是说,根据光学原理,用顶点坐标计算入射角,然后由入射角计算焦距,再由焦距计算顶点在原始视频帧上的纹理坐标,从而计算出顶点的颜色,以得到渲染场景;

最后,根据飞行姿态数据计算渲染场景的旋转矩阵。作为一种实施方式,首先,获取视角偏移数据,视角偏移数据也就是鱼眼镜头106的视角偏移;然后,将飞行姿态数据和视角偏移数据进行叠加,得到无人机100的视角空间方向数据;再根据视角空间方向数据,计算出渲染场景的旋转矩阵,并利用旋转矩阵对原始视频进行视频增稳,得到增稳视频。

步骤s103,获取无人机的机头对应的稳定角度,其中,稳定角度为得到增稳视频时鱼眼镜头对应的角度。

在本发明实施例中,对原始视频进行视频增稳,得到增稳视频之后,获取鱼眼镜头106当前对应的角度,即为稳定角度。

步骤s104,当机头的方向发生变化时,根据稳定角度计算机头的偏差角度。

在本发明实施例中,当机头的方向发生变化时,获取无人机100的机头当前的角度,并根据机头当前的角度和稳定角度,计算机头的偏差角度,偏差角度为机头当前的角度与稳定角度之差。

在本发明实施例中,计算出偏差角度之后,判断该偏差角度与预设角度(例如,5度)之间的关系,当偏差角度大于预设角度(例如,5度)时,利用pid控制器对增稳视频进行平滑,以使增稳视频的视角方向向机头的方向平滑靠近;当偏差角度小于或等于预设角度(例如,5度)时,利用偏差角度和运动信息对原始视频进行视频增稳得到增稳视频,以锁定增稳视频的水平轴。

步骤s105,当偏差角度大于预设角度时,利用pid控制器对增稳视频进行平滑,以使增稳视频的视角方向向机头的方向平滑靠近。

在本发明实施例中,当偏差角度大于预设角度(例如,5度)时,首先,获取机头的方向以偏差角度发生变化时对应的偏转时间t;然后,将偏转时间t代入pid控制器计算无人机100的步进值,pid控制器为t为偏转时间,kp是比例增益,ki是积分增益,kd是微分增益,e是误差,τ是积分变数,数值从0到t;再将步进值和稳定角度进行叠加,得到偏转角度;最后,根据偏转角度对增稳视频进行平滑,以使增稳视频的视角方向向机头的方向平滑靠近。

请参照图4,步骤s105可以包括以下子步骤:

子步骤s1051,获取机头的方向发生变化时偏差角度对应的偏转时间。

在本发明实施例中,偏转时间t可以是机头的方向以偏差角度发生变化时对应的时间。

子步骤s1052,根据偏转时间,利用pid控制器计算无人机的步进值。

在本发明实施例中,pid控制器为t为偏转时间,kp是比例增益,ki是积分增益,kd是微分增益,e是误差,τ是积分变数,数值从0到t。

子步骤s1053,将步进值和稳定角度进行叠加,得到偏转角度。

子步骤s1054,根据偏转角度对增稳视频进行平滑,以使增稳视频的视角方向向机头的方向平滑靠近。

步骤s106,当偏差角度小于或等于预设角度时,利用偏差角度和运动信息对原始视频进行视频增稳得到增稳视频,以锁定增稳视频的水平轴。

在本发明实施例中,当偏差角度小于或等于预设角度(例如,5度)时,将偏差角度加入到视频增稳过程中,从而锁定鱼眼镜头106拍摄的视频的水平轴,使用户看到的视频在水平轴上是保持不动的。

在本发明实施例中,首先,获取惯性测量单元105采集的无人机100的运动信息、以及鱼眼镜头106采集的原始视频,并利用运动信息对原始视频进行视频增稳,得到增稳视频;然后,获取无人机100的机头对应的稳定角度,计算出偏差角度之后,判断该偏差角度与预设角度(例如,5度)之间的关系,当偏差角度大于预设角度(例如,5度)时,利用pid控制器对增稳视频进行平滑,以使增稳视频的视角方向向机头的方向平滑靠近;当偏差角度小于或等于预设角度(例如,5度)时,利用偏差角度和运动信息对原始视频进行视频增稳得到增稳视频,以锁定增稳视频的水平轴。本发明实施例可以在无人机100转头时鱼眼镜头106连续稳定的转动,以使拍摄的视频平滑、连续、清晰。

第二实施例

请参照图5,图5示出了本发明实施例提供的视频平滑装置200的方框示意图。视频平滑装置200包括数据获取模块201、视频增稳模块202、稳定角度获取模块203、偏差角度计算模块204、第一执行模块205及第二执行模块206。

数据获取模块201,用于获取惯性测量单元采集的无人机的运动信息、以及鱼眼镜头采集的原始视频。

在本发明实施例中,数据获取模块201可以用于执行步骤s101。

视频增稳模块202,用于利用运动信息对原始视频进行视频增稳,得到增稳视频。

在本发明实施例中,视频增稳模块202可以用于执行步骤s102。

在本发明实施例中,视频增稳模块202还可以用于执行步骤s102的子步骤s1021~s1022。

稳定角度获取模块203,用于获取无人机的机头对应的稳定角度,其中,稳定角度为得到增稳视频时鱼眼镜头对应的角度。

在本发明实施例中,稳定角度获取模块203可以用于执行步骤s103。

偏差角度计算模块204,用于当机头的方向发生变化时,根据稳定角度计算机头的偏差角度。

在本发明实施例中,偏差角度计算模块204可以用于执行步骤s104。

第一执行模块205,用于当偏差角度大于预设角度时,利用pid控制器对增稳视频进行平滑,以使增稳视频的视角方向向机头的方向平滑靠近。

在本发明实施例中,第一执行模块205可以用于执行步骤s105。

在本发明实施例中,第一执行模块205还可以用于执行步骤s105的子步骤s1051~s1054。

第二执行模块206,用于当偏差角度小于或等于预设角度时,利用偏差角度和运动信息对原始视频进行视频增稳得到增稳视频,以锁定增稳视频的水平轴。

在本发明实施例中,第二执行模块206可以用于执行步骤s106。

本发明实施例还揭示了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器103执行时实现本发明前述实施例揭示的视频平滑方法。

综上所述,本发明提供的一种视频平滑方法、装置、无人机及存储介质,所述方法包括:获取惯性测量单元采集的无人机的运动信息、以及鱼眼镜头采集的原始视频;利用运动信息对原始视频进行视频增稳,得到增稳视频;获取无人机的机头对应的稳定角度,其中,稳定角度为得到增稳视频时鱼眼镜头对应的角度;当机头的方向发生变化时,根据稳定角度计算机头的偏差角度;当偏差角度大于预设角度时,利用pid控制器对增稳视频进行平滑,以使增稳视频的视角方向向机头的方向平滑靠近。本发明实施例可以在无人机转头时鱼眼镜头连续稳定的转动,以使拍摄的视频平滑、连续、清晰。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1