主权项 |
一种基于自适应关键帧采样的视频拼接方法,其特征在于,包括以下步骤:(1)、首先读取视频流,将视频流分解为单个的视频帧,得到视频帧序列{F<sub>0</sub>,F<sub>1</sub>,…,F<sub>n‑1</sub>},其总长度为n;(2)、设置初始条件初始化采样步长d,d为最小为1的整数,初始化ROI(Region Of Interest,兴趣区域)为整个视频帧图像区域;(3)、读取视频帧序列中的首帧F<sub>0</sub>,进行图像预处理,然后作为第一幅关键帧存储,同时作为已拼接图像保存到拼接后图像容器中,更新关键帧序列m=0;(4)、如果m+d大于等于n‑1,则将ROI设置为整个视频帧图像区域,读取视频帧序列中的末帧F<sub>n‑1</sub>,并进行图像预处理,然后与已拼接图像在ROI上进行基于ORB(Oriented FAST and Rotated BRIEF)特征的图像配准,如果匹配正确,则计算重合率R,并判断是否低于50%,如果不低于,则已拼接图像进行图像融合,融合后的图像加入拼接后图像容器中,并用其更新已拼接图像,结束拼接;如果匹配不正确且d不等于1,则调整采样步长d为当前采样步长的1/2,同时,设置ROI为整个视频帧图像区域,然后将视频帧F<sub>m+d</sub>与已拼接图像在ROI上进行基于ORB特征的图像配准,转到步骤(5),如果匹配不正确且d等于1,则结束拼接;如果匹配正确单但重叠率R低于50%且d不等于1,则按照步骤(6)的方式调整采样步长和估计一个新的ROI,然后将视频帧F<sub>m+d</sub>与已拼接图像在ROI上进行基于ORB特征的图像配准,转到步骤(5),如果匹配正确单但重合率R低于50%且d等于1,则结束拼接;结束拼接后,根据需要选择将已拼接图像容器中的图像保存为视频或者将已拼接图像作为总的拼接图像予以保存;如果m+d小于n‑1,则读取视频帧序列中,间隔为采样步长d的视频帧F<sub>m+d</sub>,并进行图像预处理,然后与已拼接图像在ROI上进行基于ORB特征的图像配准;(5)、判断匹配是否正确,如果不正确且d不等于1,则调整采样步长d为当前采样步长的1/2,同时,设置ROI为整个视频帧图像区域,返回步骤(4),重新进行采样;如果正确或d等于1,则保存配准信息,进行步骤(6);(6)、计算重合区域的重合率,如果重合率R不在设定的范围50%~75%之间,则调整采样步长d为当前采样步长的40/(100‑p),如果当前采样步长的40/(100‑p)小于1,则调整采样步长d为1,其中,p为重合率R的百分比,同时,根据配准过程中得到的视频帧的运动速度,估计出一个新的ROI,返回步骤(4);如果重合率R在设定的范围50%~75%之间,则将视频帧F<sub>m+d</sub>作为关键帧存储,同时保存配准信息,并根据当前场景重合域位置速度预估下一次配准的ROI,更新ROI设置,然后进行步骤(7);(7)、根据配准信息,将视频帧F<sub>m+d</sub>与已拼接图像进行图像融合,完成视频拼接,融合后的图像加入拼接后图像容器,并用其更新已拼接图像,同时,更新关键帧序列m=m+d,返回步骤(4)。 |