一种视频图像旋转方法

文档序号:7798097阅读:228来源:国知局
一种视频图像旋转方法
【专利摘要】本发明公开了一种视频图像旋转方法,针对目前现有技术中单独采用正向旋转映射或反向旋转映射视频图像旋转方法的缺点进行改进,对原始视频图像每次缓存两行后,首先进行正向旋转映射,得到显示器上的两条映射线段,获取两条映射线段之间的像素点坐标,然后对获取的显示屏上两条映射线段之间的像素点坐标进行反向旋转映射,并计算反向旋转映射后每个坐标的像素值,将得到的像素值赋值到对应的显示屏上的像素点坐标进行显示。该方法对旋转角度在正负45度之间的视频图像进行旋转,有效避免了单独采用正向旋转产生的空点,并节约了缓存空间,提高了视频显示的实时性。
【专利说明】一种视频图像旋转方法
【技术领域】
[0001]本发明属于机载视频显示【技术领域】,具体涉及一种视频图像旋转方法。
【背景技术】
[0002]在机载视频显示领域,通过前视红外线、毫米波雷达、光放大或夜视系统等技术采集实时视频图像,进行视频旋转、缩放、平移等一系列视频处理后,显示在座舱的显示器上。为了确保飞机运行安全,必须确保视频处理的各个模块(包括视频旋转)都有较高的实时性。
[0003]视频旋转包括两个基本操作:空间坐标变换和灰度级插值。
[0004]空间坐标变换分为正向旋转映射和反向旋转映射。设旋转前图像坐标为(X,y),绕屏幕中心(?, y0)沿逆时针旋转Θ角度后,得到(X’,y’)。正向旋转映射是对旋转前每行每个像素的坐标进行遍历得到旋转后图像坐标。反向旋转映射法则对旋转后每行每个像素的坐标进行遍历得到旋转前图像坐标。正向旋转映射法的优点是,只需要知道当前像素值及其坐标就能够映射到旋转后的坐标,实时性非常高;缺点是,由于旋转后得到浮点坐标,而图像坐标是整点,会造成多个旋转前坐标对应同一个旋转后坐标,同时一些旋转后坐标没有对应的旋转前坐标,使得旋转图像存在“空洞”现象。反向旋转映射法的优点是,旋转后坐标反向旋转后得到的坐标,除了超出屏幕范围的,在旋转前坐标中都能对应到浮点坐标,并可以用该坐标邻域的像素点来唯一确定该坐标的像素值,不会出现“空洞”等现象;缺点是,对于一行旋转后坐标数据,需要缓存很多行旋转前坐标像素值,需要大量的缓存区,且延迟较大。
[0005]灰度级插值算法多种多样,缩放后的图像质量相对较高,但由于处理速度较慢,并不适用于实时性要求较高的机载视频图像处理系统。为了满足插值的实时性和易于硬件实现,常用的是最邻近插值法、双线性插值和双三次插值。综合考虑时间开销、旋转质量和逻辑资源使用,最终采用双线性插值(参加文献[Gribbon K T, A Novel Approach toReal-time Bilinear Interpo`lation])的方法实现视频旋转。

【发明内容】

[0006]本发明所要解决的技术问题是:提供一种视频图像旋转方法,对原始视频图像每次缓存两行后,首先进行正向旋转映射,得到两条平行的映射线段,获取显示器上两条映射线段之间的所有像素点坐标,然后对获取的像素点坐标进行反向旋转映射,并计算反向旋转映射后每个坐标的像素值,将得到的像素值赋值到对应的显示屏上的像素点坐标,并进行显示,该方法解决了现有技术中图像旋转产生空点及缓存数据大的问题。
[0007]本发明为解决上述技术问题,采用如下技术方案:
[0008]一种视频图像旋转方法,包括如下步骤:
[0009]步骤1、按照如下方法获取原始视频图像的第j行/列及第j+Ι行/列旋转后在显示器上对应的像素点坐标:[0010]对原始视频图像的第j行/列的首、末像素点坐标进行Θ角度的正向旋转映射,得到原始视频图像第j行/列的首、末像素点的映射坐标;根据该首、末端点的映射坐标确定第j行/列及第j+ι行/列正向旋转映射后的两条平行的线段,判断第j行/列的映射线段的首、末端点是否超出显示器边缘,并重新确定第j行/列的映射线段的首、末端点的坐标;若第j行/列的映射线段的首、末端点超出显示器边缘,则将第j行/列的映射线段与显示器边缘的交点作为该映射线段重新确定的首、末端点,否则,第j行/列映射线段的首、末端点不变;获取显示器上夹在该两条平行线段之间的列/行上的所有像素点坐标,其中,-45≤Θ≤45,j为自然数;
[0011]步骤2、按照如下方法获取步骤I得到的显示器上的像素点的像素值:
[0012]将步骤I中得到的显示器上夹在所述两条平行线段之间的列/行上的所有像素点坐标进行反向旋转映射,得到在原始视频图像中对应的第一映射坐标点,计算原始视频图像中第一映射坐标点的像素值,并将计算得到的像素值赋值到显示器上的对应像素点。
[0013]所述步骤I中判断第j行/列的映射线段的首、末端点是否超出显示器边缘采用如下方法:
[0014]令第j行/列的映射线段首端点坐标为(xs,ys)、末端点坐标为(xe,ye),若xs〈l,则该行/列的首端点超出显示器左侧;若ys>rows或Ye^rows,则该行/列的首端点或末端点超出显示器的下侧,其中,rows为显示器的最大行/列数;若Xe>C0ls,则该行/列的末端点超出显示器的右侧,其中,cols为显示器的最大列/行数;若ys〈l或ye〈l,则该行/列的首端点或末端点超出显示器的上侧。
[0015]重新确定第j行/列的映射线段的首、末端点的坐标采用如下方法:
[0016]令重新确定的第j行/列的首端点的坐标为(xs’,ys’)、末端点的坐标为(xe,,ye,),若 xs〈l,令 xs,=1、ys,=ys+(xs-l)*tan Θ ;若 ys>rows,令 xs,=xs+(ys_rows)/tan Θ、yj =rows ;若 ye>rows,令 xe,=xe+ (ye-rows)/tan Θ、ye,=rows ;若 xe>cols,令Xe' =cols、ye,=ye+(Xe-Cols)氺tan Θ ;若 ys<l,令 xs,=xs+(ys_l)/tan Θ、ys,=1 ;若 ye<l,令Xe' =xe+ (ye_!) /tan Θ , ye,=10
[0017]所述步骤I中获取显示器上夹在所述两条平行线段之间的列/行上的所有像素点坐标的具体方法如下:
[0018]当第j行/列及第j+Ι行/列的映射线段同时与显示屏上同一列/行相交时,首先,按照下式获取第j行/列及第j+ι行/列的映射线段分别与显示屏上同一列/行相交的第一个交点 ApB1 对应 X 的坐标(X(A1), Y(A1) )、Cx(B1), Y(B1)):
[0019]1 L s J ^ s 1 s,其中,,,表示向下取整;
[0020]其次,获取在第j行/列及第j+Ι行/列的映射线段之间且在第一列/行上的所有像素点Qlk对应y轴的值yk(Qlk),令yk(Qlk)等于b1⑷」、b⑷」+1、L><4)」+2中落在Y(A1)~Y(B1)之间的值,其中k=l, 2 ;
[0021]然后,获取第j行/列及第j+Ι行/列的映射线段分别与显示屏上所有列/行相交的交点,位于同一列/行上的交点Ai+1、Bi+1的坐标为(x(Ai+1),y(Ai+1) )、(x(Bi+1),y(Bi+1)),按照下式获取第j行/列及第j+Ι行/列的映射线段与显示屏上所有列/行相交的交点坐标:
【权利要求】
1.一种视频图像旋转方法,其特征在于,包括如下步骤: 步骤1、按照如下方法获取原始视频图像的第j行/列及第j+ι行/列旋转后在显示器上对应的像素点坐标: 对原始视频图像的第j行/列的首、末像素点坐标进行Θ角度的正向旋转映射,得到原始视频图像第j行/列的首、末像素点的映射坐标;根据该首、末端点的映射坐标确定第j行/列及第j+ι行/列正向旋转映射后的两条平行的线段,判断第j行/列的映射线段的首、末端点是否超出显示器边缘,并重新确定第j行/列的映射线段的首、末端点的坐标;若第j行/列的映射线段的首、末端点超出显示器边缘,则将第j行/列的映射线段与显示器边缘的交点作为该映射线段重新确定的首、末端点,否则,第j行/列映射线段的首、末端点不变;获取显示器上夹在该两条平行线段之间的列/行上的所有像素点坐标,其中,-45≤Θ≤45,j为自然数; 步骤2、按照如下方法获取步骤I得到的显示器上的像素点的像素值: 将步骤I中得到的显示器上夹在所述两条平行线段之间的列/行上的所有像素点坐标进行反向旋转映射,得到在原始视频图像中对应的第一映射坐标点,计算原始视频图像中第一映射坐标点的像素值,并将计算得到的像素值赋值到显示器上的对应像素点。
2.根据权利要求1所述的视频图像旋转方法,其特征在于:所述步骤I中判断第j行/列的映射线段的首、末端点是否超出显示器边缘采用如下方法: 令第j行/列的映射线段首端点坐标为(xs,ys)、末端点坐标为(\,y),若xs〈l,则该行/列的首端点超出显示器左侧;若ys>rows或ye>rows,则该行/列的首端点或末端点超出显示器的下侧,其中,rows为显示器的最大行/列数;若Xe>C0ls,则该行/列的末端点超出显示器的右侧,其中,cols为显示器的最大列/行数;若ys〈l或ye〈l,则该行/列的首端点或末端点超出显示器的上侧。
3.根据权利要求2所述的视频图像旋转方法,其特征在于:重新确定第j行/列的映射线段的首、末端点的坐标采用如下方法: 令重新确定的第j行/列的首端点的坐标为(xs’,ys’)、末端点的坐标为(xj,1:),若 xs〈l, 令 xs,=1、ys,=ys+(xs-l) *tan Θ ;若 ys>rows, 令 xs,=xs+(ys_rows)/tan θ、ys,=rows ;若 ye>rows,令 xe,=xe+ (ye-rows)/tan Θ、ye,=rows ;若 xe>cols,令 xe,=cols、ye,=ye+(Xe-Cols) *tan Θ=xs+(ys-l)/tan Θ、ys,=1 ;gye〈l,令xe,=xe+(ye_l)/tan Θ、ye,=1。
4.根据权利要求1所述的视频图像旋转方法,其特征在于:所述步骤I中获取显示器上夹在所述两条平行线段之间的列/行上的所有像素点坐标的具体方法如下: 当第j行/列及第j+Ι行/列的映射线段同时与显示屏上同一列/行相交时,首先,按照下式获取第j行/列及第j+Ι行/列的映射线段分别与显示屏上同一列/行相交的第一个交点 A^B1 对应 X 的坐标(X(A1), Y(A1) )、Cx(B1), Y(B1)):
5.根据权利要求1~4中任一项所述视频图像旋转方法,其特征在于,所述步骤2中计算原始视频图像中第一映射坐标点的像素值采用双线性插值法。
【文档编号】H04N5/262GK103826068SQ201410075697
【公开日】2014年5月28日 申请日期:2014年3月3日 优先权日:2014年3月3日
【发明者】夏伟杰, 吴连慧, 陈雅雯, 周建江, 汪飞, 全颖, 袁春辉, 沈梦杰 申请人:南京航空航天大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1