一种多目成像序列的存储方法及读取方法
技术领域
本发明涉及信息图像处理技术领域,具体而言,涉及一种多目成像序列的存储方法及读取方法。
背景技术
多目成像序列是多个相机从不同角度对目标进行实时拍摄得到的图像帧序列。在存储多目成像序列时需同时存储多个相机的相机阵列参数。多目成像序列的存储技术是立体显示研究开发与推广应用的关键技术之一。
目前,对于多目成像序列的存储主要分为以下两种方式:第一,将相机阵列参数和多目成像序列分开存储;第二,根据相机阵列参数和多目成像序列,合成立体显示图像,然后直接存储该立体显示图像。
但上述第一种存储方式中,分开存储易导致存储混乱及数据丢失,且多目成像序列的存储格式大多不支持第三方提供的图像编解码软件。上述第二种存储方式中存储的图像信息是已合成的立体显示图像,而不是多目成像序列,导致多目成像序列的存储方式不具有较好的兼容性和灵活性。
发明内容
有鉴于此,本发明实施例的目的在于提供一种多目成像序列的存储方法及读取方法,将多目成像序列编码成复合图像,将相机阵列参数插入到复合图像的特定位置中,实现多目成像序列与相机阵列参数的同时存储,存储结构紧凑、存储方便,避免造成相机阵列参数和多目成像序列的混乱及数据丢失。且该存储方法能够兼容BMP、JPEG、GIF、PNG、TIFF等多种图像存储格式,具有很好的兼容性和灵活性。
第一方面,本发明实施例提供了一种多目成像序列的存储方法,所述方法包括:
获取多目成像序列、相机阵列参数及存储格式参数;
根据所述多目成像序列和所述存储格式参数,生成一幅复合图像并进行存储;
根据所述存储格式参数,将所述相机阵列参数插入所述复合图像的特定位置中。
结合第一方面,本发明实施例提供了上述第一方面的第一种可能的实现方式,其中,所述根据所述多目成像序列和所述存储格式参数,生成一幅复合图像并进行存储,包括:
按照拍摄所述多目成像序列的多个子视点的方位顺序,将所述多目成像序列包括的多帧图像拼接为一幅图像;
按照所述存储格式参数对应的图像格式存储拼接的所述一幅图像,得到复合图像。
结合第一方面,本发明实施例提供了上述第一方面的第二种可能的实现方式,其中,所述根据所述存储格式参数,将所述相机阵列参数插入所述复合图像的特定位置中,包括:
根据所述存储格式参数,从所述复合图像中确定出插入所述相机阵列参数的插入字段;
判断所述插入字段对应的存储空间是否大于或等于所述相机阵列参数的数据量;
如果是,则将所述相机阵列参数插入所述插入字段中;
如果否,则通过所述存储格式参数对应的编码器对所述复合图像进行编码,将所述相机阵列参数插入编码后所述复合图像的所述插入字段中。
结合第一方面,本发明实施例提供了上述第一方面的第三种可能的实现方式,其中,所述存储格式参数对应的图像格式为图像文件格式BMP格式;
所述根据所述存储格式参数,将所述相机阵列参数插入所述复合图像的特定位置中,包括:
通过所述BMP格式对应的编码器得到所述BMP格式的复合图像;
从编码后的所述复合图像的文件头中,确定出位图文件头中的预设字节段;
将所述相机阵列参数插入所述预设字节段中。
结合第一方面,本发明实施例提供了上述第一方面的第四种可能的实现方式,其中,所述存储格式参数对应的图像格式为图像压缩标准JPEG格式或图像文件存储格式PNG格式;
所述根据所述存储格式参数,将所述相机阵列参数插入所述复合图像的特定位置中,包括:
从所述复合图像中,确定出注释段中段内容字段;
将所述相机阵列参数插入所述段内容字段中;
通过所述存储格式参数对应的编码器得到插入所述相机阵列参数后的所述存储格式参数对应的复合图像。
结合第一方面,本发明实施例提供了上述第一方面的第五种可能的实现方式,其中,所述存储格式参数对应的图像格式为图像互换格式GIF格式;
所述根据所述存储格式参数,将所述相机阵列参数插入所述复合图像的特定位置中,包括:
从所述复合图像中,确定出注释关键字对应的数据块;
将所述相机阵列参数插入所述注释关键字对应的数据块中;
通过所述GIF格式对应的编码器得到插入所述相机阵列参数后的所述GIF格式的复合图像。
结合第一方面,本发明实施例提供了上述第一方面的第六种可能的实现方式,其中,所述存储格式参数对应的图像格式为标签图像文件格式TIFF格式;
所述根据所述存储格式参数,将所述相机阵列参数插入所述复合图像的特定位置中,包括:
通过所述TIFF格式对应的编码器得到所述TIFF格式的复合图像;
在所述TIFF格式的复合图像的图像文件目录的尾部添加一个新的目录项;
将所述相机阵列参数插入所述新的目录项中。
第二方面,本发明实施例提供了一种多目成像序列的读取方法,所述方法包括:
获取经编码处理的复合图像,所述复合图像包括多目成像序列和相机阵列参数;
通过所述复合图像的图像格式对应的解码器,对所述复合图像进行解码;
从解码后的所述复合图像中提取所述多目成像序列,及从解码后的所述复合图像的特定位置中获取所述相机阵列参数。
结合第二方面,本发明实施例提供了上述第二方面的第一种可能的实现方式,其中,所述从解码后的所述复合图像的特定位置中获取所述相机阵列参数,包括:
根据所述复合图像的图像格式,确定存储所述相机阵列参数的插入字段;
从解码后的所述复合图像中的所述插入字段中,读取所述相机阵列参数。
结合第二方面或第二方面的第一种可能的实现方式,本发明实施例提供了上述第二方面的第二种可能的实现方式,其中,所述从解码后的所述复合图像的特定位置中获取所述相机阵列参数之后,还包括:
判断获取的所述相机阵列参数是否与预设标志位一致;
如果是,则确定完成所述多目成像序列及所述相机阵列参数的读取操作,根据获取的所述多目成像序列和所述相机阵列参数合成立体显示图像;
如果否,则确定所述相机阵列参数读取出错,重新执行所述从解码后的所述复合图像的特定位置中获取所述相机阵列参数。
在本发明实施例中,获取多目成像序列、相机阵列参数及存储格式参数;根据多目成像序列和存储格式参数,生成一幅复合图像并进行存储;根据存储格式参数,将相机阵列参数插入复合图像的特定位置中。在读取存储的多目成像序列时,通过存储格式参数对应的解码器对存储的复合图像进行解码,然后从解码的复合图像中提取多目成像序列,及从解码的复合图像的特定位置中读取相机阵列参数。本发明将多目成像序列组合成复合图像,将相机阵列参数插入到复合图像的特定位置中,实现了多目成像序列与相机阵列参数的同时存储,存储结构紧凑、存储方便,避免造成相机阵列参数和多目成像序列的混乱及数据丢失。且该存储方法能够兼容BMP、JPEG、GIF、PNG、TIFF等多种图像存储格式,具有很好的兼容性和灵活性。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本发明实施例1所提供一种多目成像序列的存储方法流程图;
图2示出了本发明实施例1所提供的一种多目成像序列的示意图;
图3示出了本发明实施例1所提供的一种相机阵列参数的结构示意图;
图4示出了本发明实施例1所提供的一种多目成像序列的纵向拼接示意图;
图5示出了本发明实施例1所提供的一种多目成像序列的横向拼接示意图;
图6示出了本发明实施例1所提供的一种向BMP格式的复合图像中插入相机阵列参数的示意图;
图7示出了本发明实施例1所提供的一种向JPEG格式的复合图像中插入相机阵列参数的示意图;
图8示出了本发明实施例1所提供的一种向PNG格式的复合图像中插入相机阵列参数的示意图;
图9示出了本发明实施例1所提供的一种向GIF格式的复合图像中插入相机阵列参数的示意图;
图10示出了本发明实施例1所提供的一种向TIFF格式的复合图像中插入相机阵列参数的示意图;
图11示出了本发明实施例2所提供的一种多目成像序列的读取方法的流程图;
图12示出了本发明实施例3所提供的一种多目成像序列的存储装置的结构示意图;
图13示出了本发明实施例4所提供的一种多目成像序列的读取装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
考虑到现有存储多目成像序列的方式中,将多目成像序列与相机阵列参数分开存储,易导致存储混乱及数据丢失,且多目成像序列的存储格式大多不支持第三方提供的图像编解码软件。而直接存储已合成的立体显示图像,存储的并不是多目成像序列,且导致多目成像序列的存储方式不具有较好的兼容性和灵活性。基于此,本发明实施例提供了一种多目成像序列的存储方法及读取方法,下面通过实施例进行描述。
实施例1
参见图1,本发明实施例提供了一种多目成像序列的存储方法,该方法具体包括以下步骤:
步骤101:获取多目成像序列、相机阵列参数及存储格式参数。
多目成像序列为多个相机在不同的视点位置对同一场景拍摄的图像帧序列。如图2所示,n个相机分别在视点1、视点2、视点3、……、视点n对同一场景进行拍摄,得到的子视点图像1、子视点图像2、子视点图像3、……、子视点图像n即为多目成像序列。
相机阵列参数为拍摄得到多目成像序列的多个相机对应的参数。如图3所示,相机阵列参数包括标志位、块长度、相机个数及每个相机的光学参数。其中,相机的光学参数包括焦距、光心坐标、畸变系数、旋转矩阵和平移向量。
上述存储格式参数可以为预先设定的存储格式,也可以为在存储多目成像序列时用户临时输入的存储格式。存储格式参数用于指示多目成像序列最终存储的图像格式,该图像格式可以为BMP(Bitmap,图像文件格式)格式、JPEG(Joint Photographic ExpertsGroup,图像压缩标准)格式、GIF(Graphics Interchange Format,图像互换格式)格式、PNG(Portable Network Graphic Format,图像文件存储格式)格式或TIFF(Tag Image FileFormat,标签图像文件格式)格式。
本发明实施例中,从拍摄同一场景的多个相机获取每个相机拍摄的图像。另外,在对同一场景进行拍摄时,这多个相机是按照预先设定的子视点的方位顺序进行布置的,在获取每个相机拍摄的图像的同时,还获取这多个相机的方位顺序,将获取的多幅图像按照多个相机的方位顺序进行排列组成多目成像序列。以及,获取每个相机的光学参数,按照图3所示的相机阵列参数的结构,将获取的每个相机光学参数组合成相机阵列参数。另外,获取预先设置的存储格式参数,或者接收用户提交的存储格式参数。
上述方位顺序可以为预先为多个相机设定的序号。例如,假设共有三个相机1、2和3,为相机1设定的序号为001,为相机2设定的序号为003,为相机3设定的序号为002,则获取到相机1、2和3的图像分别为page1、2和3。按照这三个相机的方位顺序对获取的三幅图像进行排列得到的多目成像序列为page1、page3和page2。
步骤102:根据多目成像序列和存储格式参数,生成一幅复合图像并进行存储。
按照拍摄多目成像序列的多个子视点的方位顺序,将多目成像序列包括的多帧图像拼接为一幅图像;按照存储格式参数对应的图像格式存储拼接的一幅图像,得到复合图像。
上述将多目成像序列包括的多帧图像拼接为一副图像时,可以按照如图4所示的拼接方式,将子视点图像1、2、3、……、n这多帧图像首尾相接纵向拼成一副图像。也可以按照图5所示的拼接方式,将子视点图像1、2、3、……、n这多帧图像左右相接横向拼成一副图像。将多目成像序列按照上述方式拼接好后,将拼接好的图像存储为存储格式参数对应的图像格式,存储后的图像即为得到的复合图像。
步骤103:根据存储格式参数,将相机阵列参数插入复合图像的特定位置中。
对于不同图像格式,相机阵列参数插入复合图像的特定位置不同。因此首先根据存储格式参数,从复合图像中确定出插入相机阵列参数的插入字段,该插入字段即为相机阵列参数插入复合图像的特定位置。然后判断插入字段对应的存储空间是否大于或等于相机阵列参数的数据量。如果是,则将相机阵列参数插入该插入字段中。如果否,则通过存储格式参数对应的编码器对复合图像进行编码,将相机阵列参数插入编码后复合图像的插入字段中。
通过编码器对复合图像进行编码后会扩大复合图像的特定位置对应的字段的空间,所以本发明实施例也可以在确定出插入字段后,直接通过存储格式参数对应的编码器对复合图像进行编码,然后将相机阵列参数插入编码后复合图像的插入字段中。
由于存储格式参数对应的图像格式可以为BMP格式、JPEG格式、GIF格式、PNG格式或TIFF格式,每种格式对应的插入字段都不相同,下面针对各种图像格式进行具体说明。
当存储格式参数对应的图像格式为BMP格式时,插入相机阵列参数的特定位置为BMP格式的图像文件的文件头。通过BMP格式对应的编码器对复合图像进行编码,得到BMP格式的复合图像;从编码后的复合图像的文件头中,确定出位图文件头中的预设字节段;将相机阵列参数插入预设字节段中。
上述BMP格式对应的编码器可以为BMP相关的标准起草委员会等第三方提供的编码器。上述预设字节段为位图文件头中第11至14字节。如图6所示,将相机阵列参数插入BMP格式的复合图像的位图文件头中第11至第14字节。
当存储格式参数对应的图像格式为JPEG格式时,插入相机阵列参数的特定位置为JPEG格式的图像文件的注释段中的段内容字段。从复合图像中,确定出注释段中的段内容字段;将相机阵列参数插入段内容字段中;通过JPEG格式对应的编码器对插入相机阵列参数后的复合图像进行编码,得到插入相机阵列参数后的JPEG格式的复合图像。
上述JPEG格式对应的编码器为JPEG相关的标准起草委员会等第三方提供的编码器。如图7所示,将相机阵列参数插入JPEG格式的复合图像中注释段的段内容的起始位置。
当存储格式参数对应的图像格式为PNG格式时,插入相机阵列参数的特定位置为PNG格式的图像文件的注释段中的段内容字段。从复合图像中,确定出注释段中段内容字段;将相机阵列参数插入段内容字段中;通过PNG格式对应的编码器对插入相机阵列参数后的复合图像进行编码,得到插入相机阵列参数后的PNG格式的复合图像。
上述PNG格式对应的编码器为PNG相关的标准起草委员会等第三方提供的编码器。如图8所示,PNG格式的文件结构中图像数据块中存放复合图像,且将相机阵列参数插入PNG格式的复合图像中注释段的段内容的起始位置。
当存储格式参数对应的图像格式为GIF格式时,插入相机阵列参数的特定位置为GIF格式的图像文件的注释关键字对应的数据块。从复合图像中,确定出注释关键字对应的数据块;将相机阵列参数插入注释关键字对应的数据块中;通过GIF格式对应的编码器对插入相机阵列参数后的复合图像进行编码,得到插入相机阵列参数后的GIF格式的复合图像。
上述GIF格式对应的编码器为GIF相关的标准起草委员会等第三方提供的编码器。如图9所示,将相机阵列参数插入GIF格式的复合图像中注释关键字对应的数据块中。
当存储格式参数对应的图像格式为TIFF格式时,通过TIFF格式对应的编码器对复合图像进行编码,得到TIFF格式的复合图像;在编码后的复合图像的图像文件目录的尾部添加一个新的目录项,该新添加的目录项即为插入相机阵列参数的特定位置;将相机阵列参数插入新的目录项中。
上述TIFF格式对应的编码器为TIFF相关的标准起草委员会等第三方提供的编码器。如图10所示,在TIFF格式的复合图像的图像文件目录的尾部添加一个新的目录项,并按照目录项的数据格式定义存放相机阵列参数的空间,然后将相机阵列参数插入新添加的目录项中。图10中,目录项(n)为添加的新的目录项,根据目录项的数据格式按照图10中右侧所示对该新的目录项进行定义后,将相机阵列参数插入到图10右侧所示的参数块中。
在本发明实施例中,根据复合图像的图像格式,将相机阵列参数插入复合图像的特定位置中前,还需依据存储格式参数修改所有可能受影响的复合图像的参数,如文件头参数或段结构参数等。至此就完成了多目成像序列的存储,实现了多目成像序列与相机阵列参数的同时存储。
本发明实施例提供的存储方式能够兼容多种图像格式,兼容性很好,支持的软件和平台更多,可以支持多视点裸眼立体显示器,更利于立体实时显示技术的推广和普及。本发明实施例中,多目成像序列的存储灵活性很强,当前主流的计算机硬件平台都能够使用本发明实施例提供的存储方式,且可用于合成立体显示图像。
在本发明实施例中,获取多目成像序列、相机阵列参数及存储格式参数;根据多目成像序列和存储格式参数,生成一幅复合图像并进行存储;根据存储格式参数,将相机阵列参数插入复合图像的特定位置中。本发明将多目成像序列编码成复合图像,将相机阵列参数插入到复合图像的特定位置中,实现了多目成像序列与相机阵列参数的同时存储,存储结构紧凑、存储方便,避免造成相机阵列参数和多目成像序列的混乱及数据丢失。且该存储方法能够兼容BMP、JPEG、GIF、PNG、TIFF等多种图像存储格式,具有很好的兼容性和灵活性。
实施例2
参见图11,本发明实施例提供了一种多目成像序列的读取方法,该方法具体包括以下步骤:
步骤201:获取经编码处理的复合图像,该复合图像包括多目成像序列和相机阵列参数。
上述复合图像为实施例1最终存储的图像,该复合图像的特定位置中包含相机阵列参数,该复合图像的图像数据为多目成像序列拼接而成的图像。本发明实施例从内存中取出上述实施例1存储的经编码处理的复合图像。
步骤202:通过复合图像的图像格式对应的解码器,对复合图像进行解码。
获得复合图像后,确定该复合图像的图像格式。获取该图像格式对应的解码器,通过获取的解码器对复合图像进行解码。
该复合图像的图像格式可以为BMP格式、JPEG格式、GIF格式、PNG格式或TIFF格式。当图像格式为BMP格式时,解码器可以为BMP相关的标准起草委员会等第三方提供的解码器。当图像格式为JPEG格式时,解码器可以为JPEG相关的标准起草委员会等第三方提供的解码器。当图像格式为GIF格式时,解码器可以为GIF相关的标准起草委员会等第三方提供的解码器。当图像格式为PNG格式时,解码器可以为PNG相关的标准起草委员会等第三方提供的解码器。当图像格式为TIFF格式时,解码器可以为TIFF相关的标准起草委员会等第三方提供的解码器。
步骤203:从解码后的复合图像中提取多目成像序列,及从解码后的复合图像的特定位置中获取相机阵列参数。
根据复合图像的图像格式,确定存储相机阵列参数的插入字段,该插入字段即为存储有相机阵列参数的插入字段;从解码后的复合图像中的插入字段中,读取相机阵列参数。
复合图像的图像格式不同,相机阵列参数的插入字段也不相同。下面就不同的图像格式分别进行说明。
当复合图像的图像格式为BMP格式时,存储有相机阵列参数的特定位置为复合图像的文件头。确定存储相机阵列参数的插入字段为复合图像的位图文件头中的预设字节段。从复合图像的位图文件头中该预设字节段中读取相机阵列参数。该预设字节段为位图文件头中第11至14字节。
当复合图像的图像格式为JPEG格式时,存储有相机阵列参数的特定位置为注释段的段内容字段。确定存储相机阵列参数的插入字段为复合图像中注释段的段内容字段。从复合图像中注释段的段内容字段中读取相机阵列参数。
当复合图像的图像格式为PNG格式时,存储有相机阵列参数的特定位置为注释段的段内容字段。确定存储相机阵列参数的插入字段也为复合图像中注释段的段内容字段。从复合图像中注释段的段内容字段中读取相机阵列参数。
当复合图像的图像格式为GIF格式时,存储有相机阵列参数的特定位置为注释关键字对应的数据块。确定存储相机阵列参数的插入字段为复合图像中注释关键字对应的数据块。从复合图像中注释关键字对应的数据块中读取相机阵列参数。
当复合图像的图像格式为TIFF格式时,存储有相机阵列参数的特定位置为图像文件目录尾部的目录项。查看复合图像的寻址目录中是否包含相机阵列参数块对应的唯一标识,若包含该唯一标识,则表明该复合图像中包含相机阵列参数,从该复合图像的图像文件目录的最后一个目录项中读取相机阵列参数。若确定复合图像的寻址目录中不包含相机阵列参数块对应的唯一标识,则表明该复合图像中不包含相机阵列参数。
解码后的复合图像为多帧图像拼接而成的一幅图像。通过上述方式,根据复合图像的图像格式读取出相机阵列参数后,将解码后的复合图像拆分为这多帧图像,得到多目成像序列。
在本发明实施例中,读取出相机阵列参数后,还通过如下方式确定相机阵列参数的读取是否出错,具体包括:
判断获取的相机阵列参数是否与预设标志位一致;如果是,则确定完成多目成像序列及相机阵列参数的读取操作,根据获取的多目成像序列和相机阵列参数合成立体显示图像;如果否,则确定相机阵列参数读取出错,重新执行从解码后的复合图像的特定位置中获取相机阵列参数。上述预设标志位为图3所示的相机阵列参数结构中包含的标志位。
在本发明实施例中,在读取存储的多目成像序列时,通过存储格式参数对应的解码器对存储的复合图像进行解码,然后从解码的复合图像中提取多目成像序列,及从解码的复合图像的特定位置中读取相机阵列参数。本发明将多目成像序列组合成复合图像,将相机阵列参数插入到复合图像的特定位置中,实现了多目成像序列与相机阵列参数的同时存储,存储结构紧凑、存储方便,避免造成相机阵列参数和多目成像序列的混乱及数据丢失。且该存储方法能够兼容BMP、JPEG、GIF、PNG、TIFF等多种图像存储格式,具有很好的兼容性和灵活性。
实施例3
参见图12,本发明实施例提供了一种多目成像序列的存储装置,该装置用于执行上述实施例1所提供的的多目成像序列的存储方法,该装置包括:
获取模块30,用于获取多目成像序列、相机阵列参数及存储格式参数;
生成模块31,用于根据多目成像序列和存储格式参数,生成一幅复合图像并进行存储;
插入模块32,用于根据存储格式参数,将相机阵列参数插入复合图像的特定位置中。
上述生成模块31包括:
拼接单元,用于按照拍摄多目成像序列的多个子视点的方位顺序,将多目成像序列包括的多帧图像拼接为一幅图像;
存储单元,用于按照存储格式参数对应的图像格式存储拼接的一幅图像,得到复合图像。
上述插入模块32包括:
确定单元,用于根据存储格式参数,从复合图像中确定出插入相机阵列参数的插入字段;
判断单元,用于判断插入字段对应的存储空间是否大于或等于相机阵列参数的数据量;如果是,则将相机阵列参数插入该插入字段中;如果否,则通过存储格式参数对应的编码器对复合图像进行编码,将相机阵列参数插入编码后复合图像的插入字段中。
当存储格式参数对应的图像格式为BMP格式时,上述插入模块32,用于通过BMP格式对应的编码器对复合图像进行编码,得到BMP格式的复合图像;从编码后的BMP格式的复合图像的文件头中,确定出位图文件头中的预设字节段;将相机阵列参数插入预设字节段中。
当存储格式参数对应的图像格式为JPEG格式或PNG格式时,上述插入模块32,用于从复合图像中,确定出注释段中段内容字段;将相机阵列参数插入段内容字段中;通过存储格式参数对应的编码器对插入相机阵列参数后的复合图像进行编码,得到插入相机阵列参数后的存储格式参数对应的复合图像。
当存储格式参数对应的图像格式为GIF格式时,上述插入模块32,用于从复合图像中,确定出注释关键字对应的数据块;将相机阵列参数插入注释关键字对应的数据块中;通过GIF格式对应的编码器对插入相机阵列参数后的复合图像进行编码,得到插入相机阵列参数后的GIF格式的复合图像。
当存储格式参数对应的图像格式为TIFF格式时,上述插入模块32,用于通过TIFF格式对应的编码器对复合图像进行编码,得到TIFF格式的复合图像;在编码后的TIFF格式的复合图像的图像文件目录的尾部添加一个新的目录项;将相机阵列参数插入新的目录项中。
在本发明实施例中,获取多目成像序列、相机阵列参数及存储格式参数;根据多目成像序列和存储格式参数,生成一幅复合图像并进行存储;根据存储格式参数,将相机阵列参数插入复合图像的特定位置中。本发明将多目成像序列组合成复合图像,将相机阵列参数插入到复合图像的特定位置中,实现了多目成像序列与相机阵列参数的同时存储,存储结构紧凑、存储方便,避免造成相机阵列参数和多目成像序列的混乱及数据丢失。且该存储方法能够兼容BMP、JPEG、GIF、PNG、TIFF等多种图像存储格式,具有很好的兼容性和灵活性。
实施例4
参见图13,本发明实施例提供了一种多目成像序列的读取装置,该装置用于执行上述实施例2所提供的多目成像序列的读取方法,该装置包括:
获取模块40,用于获取经编码处理的复合图像,复合图像包括多目成像序列和相机阵列参数;
解码模块41,用于通过复合图像的图像格式对应的解码器,对复合图像进行解码;
提取模块42,用于从解码后的复合图像中提取多目成像序列,及从解码后的复合图像的特定位置中获取相机阵列参数。
上述提取模块42包括:
确定单元,用于根据复合图像的图像格式,确定存储相机阵列参数的插入字段;
读取单元,用于从解码后的复合图像的特定位置的插入字段中,读取相机阵列参数。
在本发明实施例中,该读取装置还包括:
判断模块,用于判断获取的相机阵列参数是否与预设标志位一致;如果是,则确定完成多目成像序列及相机阵列参数的读取操作,根据获取的多目成像序列和相机阵列参数合成立体显示图像;如果否,则确定相机阵列参数读取出错,重新执行从解码后的复合图像的特定位置中获取相机阵列参数。
在本发明实施例中,在读取存储的多目成像序列时,通过存储格式参数对应的解码器对存储的复合图像进行解码,然后从解码的复合图像中提取多目成像序列,及从解码的复合图像的特定位置中读取相机阵列参数。本发明将多目成像序列组合成复合图像,将相机阵列参数插入到复合图像的特定位置中,实现了多目成像序列与相机阵列参数的同时存储,存储结构紧凑、存储方便,避免造成相机阵列参数和多目成像序列的混乱及数据丢失。且该存储方法能够兼容BMP、JPEG、GIF、PNG、TIFF等多种图像存储格式,具有很好的兼容性和灵活性。
本发明实施例所提供的多目成像序列的存储装置及读取装置可以为设备上的特定硬件或者安装于设备上的软件或固件等。本发明实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,前述描述的系统、装置和单元的具体工作过程,均可以参考上述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围。都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。