发明内容
本发明针对现有的球形显示技术中投影机将接收的平面矩形图像直接经鱼眼镜头投影到球幕上造成明显变形的问题,提供一种投影机球形显示输出图像的处理方法,将计算机中待投影的图像画面在输出给投影机前进行变形处理,使得投影机输出的图像是圆形的,能够解决图像变形的问题,提高在球幕上投影的球形显示效果。
本发明的技术方案如下:
一种投影机球形显示输出图像的处理方法,其特征在于,将待投影的平面矩形图像作为源图像同时将投影机球形显示输出的图像作为目标图像,以笛卡尔坐标为基础分别建立源图像坐标系和目标图像坐标系;根据鱼眼镜头的光路特性进行极坐标变换,所述极坐标变换为先将目标图像的像素坐标转为极坐标系下的坐标,再根据极坐标系下的坐标得到源图像的像素坐标,所述极坐标的角度和半径分别对应源图像坐标系的坐标轴方向的坐标,通过得到的源图像的像素坐标处的像素点颜色进行目标图像相对应的像素坐标处的像素点颜色输出,以将待投影的平面矩形图像进行变形处理输出圆形图像。
所述源图像的像素坐标在源图像坐标系的两坐标轴的坐标范围均是[0,1],所述得到的源图像的像素坐标为归一化坐标,分别根据源图像的像素的宽和高得到源图像的实际像素坐标。
所述源图像坐标系的坐标原点位于源图像的左上角。
所述目标图像的像素坐标在目标图像坐标系的两坐标轴的坐标范围均是[-1,1],所述目标图像的坐标原点位于目标图像的中心。
所述目标图像的像素坐标转为极坐标系下的坐标的角度为中间值,所述中间值的范围为[0,π],所述中间值经过处理后得到极坐标系下的运算角度(θ),所述运算角度的范围为[0,2π),根据目标图像像素点所在的不同的象限由得到θ的值:
再根据极坐标系下的半径和运算角度得到源图像的像素坐标。
以目标图像坐标系为基础增加与目标图像坐标系垂直的第三个坐标轴以建立目标图像的球形坐标系,当目标图像绕所述第三个坐标轴旋转时,对应的源图像沿着对应极坐标角度的坐标轴偏移,所述极坐标的角度与所述旋转的角度之差对应源图像坐标系的一个坐标轴方向的坐标,根据极坐标系下的坐标得到源图像的像素坐标。
本发明的技术效果如下:
本发明涉及的投影机球形显示输出图像的处理方法,能够将计算机中待投影的普通的平面矩形图像(源图像)在输出给投影机前进行变形处理以使得投影机输出圆形图像(目标图像),具体是通过分别建立源图像坐标系和目标图像坐标系,根据鱼眼镜头的光路特性进行极坐标变换:先将目标图像的像素坐标转为极坐标系下的坐标,极坐标的角度和半径分别对应源图像坐标系的坐标轴方向的坐标,再根据极坐标系下的坐标就可以得到源图像的像素坐标,即建立了源图像和目标图像的像素坐标对应关系,再通过得到的源图像的像素坐标处的像素点颜色进行目标图像相对应的像素坐标处的像素点颜色输出,使得投影机输出的图像是圆形的,避免了将平面矩形图像直接经鱼眼镜头投影到球幕上造成明显图像变形的问题,将处理得到的投影机球形显示输出的圆形图像经过鱼眼镜头投影到球幕上,减少图像变形,提高了投影机输出的图像在球幕上投影的球形显示效果。
具体实施方式
下面结合附图对本发明进行说明。
本发明涉及一种投影机球形显示输出图像的处理方法,其流程图如图2所示。先将计算机中待投影的平面矩形图像作为源图像同时将投影机球形显示输出的图像作为目标图像,以笛卡尔坐标为基础分别建立源图像坐标系和目标图像坐标系;然后根据鱼眼镜头的光路特性进行极坐标变换:先将目标图像的像素坐标转为极坐标系下的坐标,再根据极坐标系下的坐标得到源图像的像素坐标,设置极坐标的角度和半径分别对应源图像坐标系的水平和竖直坐标轴方向的坐标,通过上述的极坐标变换能够建立源图像和目标图像的像素坐标对应关系,只要将得到的源图像的像素坐标处的像素点颜色对应到目标图像相对应的像素坐标处的像素点颜色输出,就可以将待投影的平面矩形图像进行变形处理输出圆形图像,完成投影机球形显示输出圆形图像的处理。
本发明所述的投影机球形显示输出图像的处理方法能够将待投影的原始图像(可以是视频或图片)的平面矩形图像的画面在输出前进行变形处理,使得输入到投影机的图像是圆形的,即投影机输出的图像也是圆形的。由球形显示的鱼眼镜头的光路分析可得到球形显示图像变形就是一个极坐标变换关系。该处理方法的具体步骤如下:
步骤A、先将待投影的平面矩形图像作为源图像,同时将投影机球形显示输出的圆形图像作为目标图像,以笛卡尔坐标为基础分别建立如图3所示的源图像坐标系和如图4所示的目标图像坐标系。图3中的计算机中待投影的原始的平面矩形图像转换为投影机显示输出的如图4所示的圆形的目标图像。
为使得坐标归一化,在定义坐标范围时,源图像的像素坐标在源图像坐标系的两坐标轴的坐标范围均是[0,1],即图3所示的源坐标系中的源图像坐标x范围为[0,1],y范围为[0,1],其中y坐标是从上到下,源图像的坐标原点位于源图像的左上角。目标图像的像素坐标在目标图像坐标系的两坐标轴的坐标范围均是[-1,1],即图4所示的目标坐标系中的目标图像坐标x范围为[-1,1],y方向的坐标范围也为[-1,1],目标图像的坐标原点位于目标图像的中心。
步骤B、根据鱼眼镜头的光路特性进行极坐标变换,以建立源图像和目标图像的像素坐标对应关系。假设目标图像的像素点的坐标为(dstX,dstY),其对应的在源图像中的像素位置点坐标为(srcX,srcY),所述极坐标变换的过程也就是建立图像变换映射关系的过程如下:
B1、将目标图像的像素坐标转为极坐标系下的坐标,也就是将(dstX,dstY)由笛卡尔坐标系转为极坐标系下的坐标
其中R为极坐标系下的半径,的范围是[0,π],因为所需的极坐标系下的角度的范围是[0,2π),故认为为中间值,可将该中间值经过处理后得到极坐标系下的运算角度θ,运算角度的范围为[0,2π),根据目标图像像素点所在的不同的象限由得到θ的值:
B2、对于R>1的点在极坐标单位圆以外,在源图像中没有对应点,具体可填充为黑色或者不处理。对于R<=1情况,根据极坐标系下的半径R和运算角度θ得到源图像的像素坐标。源图像的X方向对应极坐标的角度、Y方向对应极坐标的半径,计算公式为:
B3、公式(3)得到的源图像的像素坐标srcX,srcY是归一化的坐标,再分别根据源图像的像素的宽和高得到源图像的实际像素坐标:
其中,srcWidth和srcHeight分别为源图像的像素的宽和高,如源图像的像素是1024*768,则源图像的实际像素x坐标srcX’=srcX*1024,y坐标srcY’=srcY*768。
步骤C、将得到的源图像的像素坐标处的像素点颜色对应到目标图像相对应的像素坐标处的像素点颜色输出。由于得到了目标图像的像素点在源图像所对应的像素点位置,如该位置的像素点为红色,则其目标图像的像素点也输出红色,各像素点均一一对应输出,就可以将计算机中待投影的平面矩形图像进行变形处理输出圆形图像,从而完成投影机球形显示输出圆形图像的处理。也可以根据源图像所对应的像素点及其周围点进行多倍采样作为目标像素点颜色值。
如计算机中待投影的是图1所示的平面矩形图像的画面时,通过本发明所述的投影机球形显示输出图像的处理方法,将图1所示的平面矩形图像的画面在输出前进行变形处理,使得投影机输出如图5所示的圆形图像,该圆形图像经过鱼眼镜头投影到球幕上,能够减少图像变形,提高了投影机输出的图像在球幕上投影的球形显示效果。
更进一步地,本发明所涉及的投影机球形显示输出图像的处理方法还可以增加对投影机球形显示输出的图像旋转的处理,此时上述的以笛卡尔坐标为基础建立的目标图像坐标系需要进一步处理为球形坐标系,即以目标图像坐标系为基础增加与目标图像坐标系垂直的第三个坐标轴Z轴以建立目标图像的球形坐标系,如图6所示,为投影机球形显示输出的圆形图像旋转所建立的球形坐标系,以球的正下方和正上方的连线为Z轴(可理解为是南极和北极的连线),赤道面为目标坐标系的XY平面。归一化后的球的半径为单位1。
根据极坐标变换的特点,当目标图像绕第三个坐标轴(即Z轴)旋转时,在极坐标中,绕z轴旋转其实是对公式(3)中的θ减去一个旋转的角度量,对应的源图像则表现为沿着对应极坐标角度的坐标轴X方向的坐标偏移,假设球形坐标系中的点P(x,y,z)绕Z轴旋转角度为φ,则将公式(3)替换为以下形式即可:
再对srcX>1以及srcX<0的情况分别进行减1以及加1的处理,直至srcX处于[0,1]范围:
公式(5)所述极坐标的角度θ与所述旋转的角度φ之差对应源图像坐标系的坐标轴X方向的坐标,极坐标的半径仍然对应源图像坐标系的坐标轴Y方向的坐标,这样就能够根据极坐标系下的坐标得到源图像的像素坐标。其它步骤不变,如后续的归一化坐标的处理,以及通过得到的源图像的像素坐标处的像素点颜色进行目标图像相对应的像素坐标处的像素点颜色输出,从而将待投影的平面矩形图像进行变形处理以及绕特定Z轴旋转输出圆形图像,达到本发明优选的投影机球形显示输出图像的处理的目的。
应当指出,以上所述具体实施方式可以使本领域的技术人员更全面地理解本发明创造,但不以任何方式限制本发明创造。因此,尽管本说明书参照附图和实施例对本发明创造已进行了详细的说明,但是,本领域技术人员应当理解,仍然可以对本发明创造进行修改或者等同替换,总之,一切不脱离本发明创造的精神和范围的技术方案及其改进,其均应涵盖在本发明创造专利的保护范围当中。