本发明涉及图像处理技术领域,尤其涉及一种图像处理方法及装置。
背景技术:
随着科技的发展及人类生活水平的提高,人们对图像的要求也越来越高,尤其是,人类越来越希望图像走向立体化,以使人们能够更真实地获取图像所记载的信息,提升用户体验。为了满足人类需求,虚拟现实技术应运而生。虚拟现实技术以全景360度的图像作为内容,利用头戴设备来显示、播放,使人们能够观看全景立体图像。
在现有的摄像技术中,人们获取图像的方式是使用摄像机采集图像,再利用计算机等处理设备进行后期处理和存储,以便供人们观看。现有技术中的摄像机,采集的都是平面图像,且能采集到的画面角度较小,因此,处理及存储得到的也都是小范围的平面图像。人们对立体图像的追求,要求能够利用图像采集设备,得到全景360度的图像,供虚拟现实头戴设备播放。现有的摄像及图像处理技术得到的图像,显然不能作为虚拟现实技术中的头戴设备的播放内容,不能满足人们对图像立体化的追求。
技术实现要素:
基于上述现有技术的缺陷和不足,本发明提出一种图像处理方法及装置,能够利用现有的图像采集设备采集的图像,处理得到全景360度的图像。
一种图像处理方法,包括:
接收多个图像采集设备在同一时刻采集的图像;
对所述多个图像采集设备在同一时刻采集的图像进行校正缝合处理,得到全景图像;
将所述全景图像渲染到空间虚拟球面上,得到全景360度的图像。
优选地,所述对所述多个图像采集设备在同一时刻采集的图像进行校正缝合处理,得到全景图像,包括:
对所述多个图像采集设备在同一时刻采集的图像,分别进行校正处理;
识别校正处理后的,所述多个图像采集设备在同一时刻采集的图像中的,相邻图像之间的相同部分;
将所述相邻图像之间的相同部分进行重合,得到全景图像;
对重合部分的图像进行平滑过渡处理。
优选地,在所述对所述多个图像采集设备在同一时刻采集的图像进行校正缝合处理,得到全景图像之后,在将所述全景图像渲染到空间虚拟球面上,得到全景360度的图像之前,该方法还包括:
调整所述全景图像的亮度,使所述全景图像的整体亮度一致。
优选地,在所述将所述全景图像渲染到空间虚拟球面上,得到全景360度的图像之后,该方法还包括:
在所述全景360度的图像中,添加标识图标。
优选地,在所述全景360度的图像中,添加标识图标之后,该方法还包括:
记录对所述多个图像采集设备在同一时刻采集的图像的所有处理操作。
优选地,在所述将所述全景图像渲染到空间虚拟球面上,得到全景360度的图像之后,该方法还包括:
将所述全景360度的图像进行存储或直播。
优选地,在所述将所述全景360度的图像进行存储之后,该方法还包括:
对存储的所述全景360度的图像进行播放。
一种图像处理装置,包括:
图像接收单元,用于接收多个图像采集设备在同一时刻采集的图像;
图像缝合单元,用于对所述多个图像采集设备在同一时刻采集的图像进行校正缝合处理,得到全景图像;
图像渲染单元,用于将所述全景图像渲染到空间虚拟球面上,得到全景360度的图像。
优选地,所述图像缝合单元,包括:
图像校正单元,用于对所述多个图像采集设备在同一时刻采集的图像,分别进行校正处理;
图像识别单元,用于识别校正处理后的,所述多个图像采集设备在同一时刻采集的图像中的,相邻图像之间的相同部分;
图像拼接单元,用于将所述相邻图像之间的相同部分进行重合,得到全景图像;
平滑过渡单元,用于对重合部分的图像进行平滑过渡处理。
优选地,所述装置还包括:
亮度调整单元,用于在所述图像缝合单元对所述多个图像采集设备在同一时刻采集的图像进行校正缝合处理,得到全景图像之后,在所述图像渲染单元将所述全景图像渲染到空间虚拟球面上,得到全景360度的图像之前,调整所述全景图像的亮度,使所述全景图像的整体亮度一致。
优选地,所述装置还包括:
图标添加单元,用于在所述图像渲染单元将所述全景图像渲染到空间虚拟球面上,得到全景360度的图像之后,在所述全景360度的图像中,添加标识图标。
优选地,所述装置还包括:
操作记录单元,用于在所述图标添加单元在所述全景360度的图像中,添加标识图标之后,记录对所述多个图像采集设备在同一时刻采集的图像的所有处理操作。
优选地,所述装置还包括:
存储及直播单元,用于在所述图像渲染单元将所述全景图像渲染到空间虚拟球面上,得到全景360度的图像之后,将所述全景360度的图像进行存储或直播。
优选地,所述装置还包括:
播放单元,用于在所述存储及直播单元将所述全景360度的图像进行存储之后,对所述存储及直播单元存储的所述全景360度的图像进行播放。
本发明提出的图像处理方法,工作流程为:接收多个图像采集设备在同一时刻采集的图像;然后对所述多个图像采集设备在同一时刻采集的图像进行校正缝合处理,得到全景图像;最后将所述全景图像渲染到空间虚拟球面上,得到全景360度的图像。本发明所述图像处理方法的技术方案,通过多个图像采集设备采集图像,对于多个图像采集设备在同一时刻采集的图像进行校正缝合,并渲染到空间虚拟球面上,得到全景360度的图像,适合虚拟现实设备播放,满足了人们对图像立体化的需求。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1是本发明提供的一种图像处理方法的流程示意图;
图2是本发明提供的另一种图像处理方法的流程示意图;
图3是本发明提供的另一种图像处理方法的流程示意图;
图4是本发明提供的另一种图像处理方法的流程示意图;
图5是本发明提供的另一种图像处理方法的流程示意图;
图6是本发明提供的一种图像处理装置的结构示意图;
图7是本发明提供的另一种图像处理装置的结构示意图;
图8是本发明提供的另一种图像处理装置的结构示意图;
图9是本发明提供的另一种图像处理装置的结构示意图;
图10是本发明提供的另一种图像处理装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例公开了一种图像处理方法,参见图1所示,该方法包括:
S101、接收多个图像采集设备在同一时刻采集的图像;
具体的,图像采集设备的镜头只能采集设定角度的图像,任何图像采集设备,都不能在一个镜头中同时采集到全景360度的图像。因此,要想得到全景360度的图像,需要借助多个图像采集设备来共同采集。多个图像采集设备分别从不同的角度进行图像采集,后期依靠数字图像处理技术,将多个图像采集设备从不同角度采集的图像进行拼接缝合,得到全景图像。
需要说明的是,本发明实施例在对多个图像采集设备采集的图像进行处理的时候,要保证是对多个图像采集设备在同一时刻采集的图像进行处理。因为只有多个图像采集设备在同一时刻采集的图像,才是多个图像采集设备采集的相同的场景内容,不同图像采集设备在不同时刻采集的图像,属于不同的场景,不能进行缝合拼接。
本发明实施例可以利用高清晰度多媒体接口(High Definition Multimedia Interface,HDMI)来接收多个图像采集设备采集的图像,在接收过程中,根据图像采集设备的数量,为每一个图像采集设备分别设置一个数据缓存区域,用于缓存图像采集设备采集的图像。可选的,本发明实施例还可以利用USB接口来接收多个图像采集设备采集的图像。同样的,在接收过程中,根据图像采集设备的数量,为每一个图像采集设备分别设置一个数据缓存区域,用于缓存图像采集设备采集的图像。
事实上,任何能够接收多个图像采集设备采集的图像的方法,都可以被本发明实施例采用,本发明实施例对接收多个图像采集设备采集的图像的方法,不做严格限定,任意可用的方法都在本发明实施例保护范围内。
S102、对所述多个图像采集设备在同一时刻采集的图像进行校正缝合处理,得到全景图像;
具体的,所述多个图像采集设备同处于相同的场景中进行图像采集,每个图像采集设备采集不同角度的图像内容,因此,多个图像采集设备采集的图像,都是独立的。在布置多个图像采集设备时,设置相邻的图像采集设备所能采集到的图像的内容有设定范围的重叠部分,以便于在后期图像处理时,根据相邻图像的相同部分,进行图像拼接。
基于上述基础设置,在某一时刻,将各个图像采集设备采集的图像,使用OpenCL Kernel进行校正缝合,得到多个图像采集设备共同采集的,最大范围的画面内容,即得到全景图像。
S103、将所述全景图像渲染到空间虚拟球面上,得到全景360度的图像。
具体的,本发明实施例通过运行软件开发工具包(Software Development Kit,SDK),调用DirectX 11程序来渲染所述全景图像,将所述全景图像渲染到一个空间虚拟球面上,得到全景360度的图像,便于在虚拟现实设备上播放。
其中,所述SDK是为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件时的开发工具的集合。所述DirectX 11是微软公司发布的图形渲染工具,本发明实施例利用SDK调用所述DirectX 11,将全景图像渲染到空间虚拟球面上。渲染过程概括如下:
首先创建一个空间虚拟球面,将全景图像投射到所述空间虚拟球面内部。
然后,设置合适的顶点位置和纹理点位置。
其中,定点坐标通过球面坐标来计算:
y=r*cos(θ)
式中θ表示定点在球面坐标系中的仰角;φ表示定点在球面坐标系中的方位角;r表示球面上的定点与球面坐标系原点的径向距离。
纹理坐标通过平面均分计算:
y=1-θ/PI
其中,式中θ表示仰角;φ表示方位角。
最后将上述计算得到的数据保存到定点缓冲和序列缓冲,并传输到显卡中进行绘制。
需要说明的是,为了适用不同的虚拟现实设备,本发明实施例还可以利用不同的渲染引擎,将全景图像渲染到其它不同的场景,例如,将全景图像渲染为平铺全景场景、包球全景场景、分母网格场景、头戴式现实设备场景等,以供不同类型的播放设备播放。为了使所述全景360度的图像显示效果更好,还可以进一步地调整所述全景360度的图像的曝光、白平衡、色调、饱和度、亮度、伽玛值、滤镜,以及调整安全距离等。
另外需要说明的是,本发明实施例按时间先后顺序对多个图像采集设备在同一时刻采集的图像进行上述S101~S103操作,或者实时接收多个图像采集设备同时采集到的图像,并进行S101~S103操作,能够相应地得到全景360度的视频。对视频的处理,实际上是对视频每一帧画面的处理,其处理方法与本发明实施例相同,因此,本发明实施例技术方案包含了得到全景360的的视频的方法。
本发明提出的图像处理方法,工作流程为:接收多个图像采集设备在同一时刻采集的图像;然后对所述多个图像采集设备在同一时刻采集的图像进行校正缝合处理,得到全景图像;最后将所述全景图像渲染到空间虚拟球面上,得到全景360度的图像。本发明所述图像处理方法的技术方案,通过多个图像采集设备采集图像,对于多个图像采集设备在同一时刻采集的图像进行校正缝合,并渲染到空间虚拟球面上,得到全景360度的图像,适合虚拟现实设备播放,满足了人们对图像立体化的需求。
可选的,在本发明的另一个实施例中,参见图2所示,所述对所述多个图像采集设备在同一时刻采集的图像进行校正缝合处理,得到全景图像,包括:
S202、对所述多个图像采集设备在同一时刻采集的图像,分别进行校正处理;
具体的,对图像进行校正处理,具体是指对图像进行几何校正处理。图像几何校正的思路是通过一些已知的参考点,即无失真图像的某些像素点和畸变图像相应像素的坐标间对应关系,拟合出映射关系中的未知系数,并作为恢复其它像素的基础。
几何校正的基本方法是:首先建立几何校正的数学模型;其次利用已知条件确定模型参数;最后根据模型对图像进行几何校正。其具体操作为:对图像进行空间坐标变换;首先建立图像像点坐标(行、列号)和参考图像对应点坐标间的映射关系,解求映射关系中的未知参数,然后根据映射关系对图像各个像素坐标进行校正。
S203、识别校正处理后的,所述多个图像采集设备在同一时刻采集的图像中的,相邻图像之间的相同部分;
具体的,对多个图像采集设备在同一时刻采集的图像进行校正之后,分分别将每个图像展开到一个等距离的球面上,在所述等距离的球面上,执行步骤S203的操作。
在布置图像采集设备时,按照设定顺序,结合每个图像采集设备需要采集的画面的角度,将各图像采集设备依次进行布置。相邻的图像采集设备能够采集设定范围的重叠区域的图像。因此,对于接收到的多个图像采集设备在同一时刻采集的图像,每两个相邻的图像采集设备采集的图像,都有一部分重叠的区域。对于每两个相邻的图像之间的重叠部分,进行点对点的匹配,匹配之后确认互相对应的相同的像素点。
S204、将所述相邻图像之间的相同部分进行重合,得到全景图像;
具体的,在步骤S203中,识别并确认了每两个相邻的图像之间的重叠部分。那么在步骤S204中,将所述每两个相邻的图像之间的重叠部分进行重合,这样,所有的图像就衔接到一起,构成一幅全景图像。
S205、对重合部分的图像进行平滑过渡处理。
具体的,将不同的图像拼接在一起后,在拼接位置处,即相邻图像的重叠部分,会有重叠痕迹,而使图像显得不够平滑。本发明实施例在对相邻图像之间的相同部分进行重合,得到全景图像后,对所述全景图像中的重叠部分进行平滑过渡处理,使重叠部分更加平滑。具体的,所述对重叠部分进行平滑过渡处理,包括:进行羽化、锐化、整体边缘通道过渡处理等。
本实施例中的步骤S201、S206,分别对应图1所示的方法的实施例中的步骤S101、S103,其具体内容请参见对应图1所示的方法实施例的内容,此处不再赘述。
可选的,在本发明的另一个实施例中,如图3所示,在执行步骤S302、对所述多个图像采集设备在同一时刻采集的图像进行校正缝合处理,得到全景图像之后,在执行步骤S304、将所述全景图像渲染到空间虚拟球面上,得到全景360度的图像之前,该方法还包括:
S303、调整所述全景图像的亮度,使所述全景图像的整体亮度一致。
具体的,所述全景图像是由多个数据采集设备在同一时刻采集的图像缝合而成的。因此,由于不同的图形采集设备采集的图像亮度可能不同,导致缝合得到的全景图像的不同区域的亮度也可能不同。为了解决上述问题,本发明实施例在由多个图像采集设备在同一时刻采集的图像缝合得到全景图像之后,对所述全景图像进行整体曝光处理,即调整所述全景图像的整体亮度,使所述全景图像的整体亮度一致。
在本发明实施例,计算所述全景图像中所有不同亮度区域的亮度的平均值,并将所有不同亮度区域的亮度,调整为所述平均值大小,达到使所述全景图像整体亮度一致的效果。显而易见的,本发明实施例也可以采用其他根据不同亮度值计算得到统一亮度值的计算方法,计算得到统一亮度值,并将所有不同亮度区域的亮度调整为所述统一亮度值。
需要说明的是,本发明实施例也可以在将多个图像采集设备采集得到的图像进行缝合得到全景图像之前,调整每一个图像的亮度为统一亮度,这样将统一亮度的不同图像进行缝合得到的全景图像,不会出现不同区域亮度不同的问题。
本发明实施例中的步骤S301、S302、S304分别对应图1所示的方法的实施例中的步骤S101、S102、S103,其具体内容请参见对应图1所示的方法实施例的内容,此处不再赘述。
可选的,在本发明的另一个实施例中,参见图4所示,在执行步骤S404、将所述全景图像渲染到空间虚拟球面上,得到全景360度的图像之后,该方法还包括:
S405、在所述全景360度的图像中,添加标识图标。
具体的,本发明实施例所添加的标识图标是一个圆形图片,图片的周围是透明的,通过空间坐标计算,将所述标识图标放置到所述全景360度的图像里面。并且,通过坐标变换,可以对所述标识图标进行移动、修改,调整大小等操作。另外,还可以对标识图标的具体内容,进行更改。
需要说明的是,本发明实施例不对标识图标的具体形状及内容做限定,任意形状和内容的标识图标,都可以被本发明实施例所采用。
本实施例中的步骤S401~S404,对应图3所示的方法的实施例中的步骤S301~S304,其具体内容请参见对应图3所示的方法实施例的内容,此处不再赘述。
可选的,在本发明的另一个实施例中,参见图5所示,在执行步骤S505、在所述全景360度的图像中,添加标识图标之后,该方法还包括:
S506、记录对所述多个图像采集设备在同一时刻采集的图像的所有处理操作。
具体的,本发明实施例所述技术方案,在对图像进行处理的时候,对于每一步处理操作,都会有相应的操作记录。当对所述多个图像采集设备在同一时刻采集的图像的所有处理都结束时,本发明实施例记录对所述多个图像采集设备在同一时刻采集的图像的所有处理操作。其中,所述记录对所述多个图像采集设备在同一时刻采集的图像的所有处理,是指利用函数,将步骤S501~S505的操作生成操作日志,并将所述操作日志进行存储,以供后期查看。
本发明实施例中的步骤S501~S505对应图4所示的方法的实施例中的步骤S401~405,其具体内容请参见对应图4所示的方法实施例的内容,此处不再赘述。
可选的,在本发明的另一个实施例中,在所述将所述全景图像渲染到空间虚拟球面上,得到全景360度的图像之后,该方法还包括:
将所述全景360度的图像进行存储或直播。
具体的,本发明实施例能够将通过处理多个数据采集设备采集的图像而得到的全景360度的图像或全景视频,进行压缩编码,并进行存储。同时,还可以将所述全景360度的图像或全景视频直接进行直播。例如:将所述全景360度的图像或全景视频,配合与所述全景360度的图像或全景视频对应的音频,使用实时消息传输协议(Real Time Messaging Protocol,RTMP)进行封装,变成数据流,在Flash/AIR平台和支持RTMP协议的流媒体/交互服务器之间进行通信,实现全景360度的图像或全景视频的直播。另外,还可以将所述全景360度的图像或全景视频实时地通过数字分量串行接口(Serial DigitalInterface,SDI),发送给视频播放设备进行实时播放。
可选的,在本发明的另一个实施例中,在所述将所述全景360度的图像进行存储之后,该方法还包括:
对存储的所述全景360度的图像进行播放。
具体的,对全景360度的视频进行存储之后,可以随时对存储的所述全景360度的图像进行调取、播放。并且,可以实现在播放过程中的控制,例如,实现上一张图像或下一张图像的选择、视频的快进快退播控操作等。
一种图像处理装置,参见图6所示,该装置包括:
图像接收单元601,用于接收多个图像采集设备在同一时刻采集的图像;
图像缝合单元602,用于对所述多个图像采集设备在同一时刻采集的图像进行校正缝合处理,得到全景图像;
图像渲染单元603,用于将所述全景图像渲染到空间虚拟球面上,得到全景360度的图像。
具体的,本实施例中各个单元的具体工作内容,请参见对应的方法实施例的内容,此处不再赘述。
本发明提出的图像处理装置,工作流程为:图像接收单元601接收多个图像采集设备在同一时刻采集的图像;然后图像缝合单元602对所述多个图像采集设备在同一时刻采集的图像进行校正缝合处理,得到全景图像;最后图像渲染单元603将所述全景图像渲染到空间虚拟球面上,得到全景360度的图像。本发明所述图像处理装置,在进行图像处理时,通过多个图像采集设备采集图像,对于多个图像采集设备在同一时刻采集的图像进行校正缝合,并渲染到空间虚拟球面上,得到全景360度的图像,适合虚拟现实设备播放,满足了人们对图像立体化的需求。
可选的,在本发明的另一个实施例中,参见图7所示,图像缝合单元602,包括:
图像校正单元6021,用于对所述多个图像采集设备在同一时刻采集的图像,分别进行校正处理;
图像识别单元6022,用于识别校正处理后的,所述多个图像采集设备在同一时刻采集的图像中的,相邻图像之间的相同部分;
图像拼接单元6023,用于将所述相邻图像之间的相同部分进行重合,得到全景图像;
平滑过渡单元6024,用于对重合部分的图像进行平滑过渡处理。
具体的,本实施例中各个单元的具体工作内容,请参见对应的方法实施例的内容,此处不再赘述。
可选的,在本发明的另一个实施例中,参见图8所示,所述装置还包括:
亮度调整单元604,用于在所述图像缝合单元602对所述多个图像采集设备在同一时刻采集的图像进行校正缝合处理,得到全景图像之后,在所述图像渲染单元603将所述全景图像渲染到空间虚拟球面上,得到全景360度的图像之前,调整所述全景图像的亮度,使所述全景图像的整体亮度一致。
具体的,本实施例中亮度调整单元604的具体工作内容,请参见对应的方法实施例的内容,此处不再赘述。
可选的,在本发明的另一个实施例中,参见图9所述,所述装置还包括:
图标添加单元605,用于在所述图像渲染单元603将所述全景图像渲染到空间虚拟球面上,得到全景360度的图像之后,在所述全景360度的图像中,添加标识图标。
具体的,本实施例中图标添加单元605的具体工作内容,请参见对应的方法实施例的内容,此处不再赘述。
可选的,在本发明的另一个实施例中,参见图10所示,所述装置还包括:
操作记录单元606,用于在所述图标添加单元605在所述全景360度的图像中,添加标识图标之后,记录对所述多个图像采集设备在同一时刻采集的图像的所有处理操作。
具体的,本实施例中操作记录单元606的具体工作内容,请参见对应的方法实施例的内容,此处不再赘述。
可选的,在本发明的另一个实施例中,所述装置还包括:
存储及直播单元607,用于在所述图像渲染单元603将所述全景图像渲染到空间虚拟球面上,得到全景360度的图像之后,将所述全景360度的图像进行存储或直播。
具体的,本实施例中存储及直播单元607的具体工作内容,请参见对应的方法实施例的内容,此处不再赘述。
可选的,在本发明的另一个实施例中,所述装置还包括:
播放单元608,用于在所述存储及直播单元607将所述全景360度的图像进行存储之后,对所述存储及直播单元存储的所述全景360度的图像进行播放。
具体的,本实施例中播放单元608的具体工作内容,请参见对应的方法实施例的内容,此处不再赘述。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。