用于处理三维(3D)图像的方法和装置与流程

文档序号:13519274阅读:244来源:国知局

相关专利申请的交叉引用

本申请要求于2016年7月13日提交到韩国知识产权局的韩国专利申请第10-2016-0088708的优先权,其全部内容通过引用的方式并入于此。

示例性实施例涉及用于处理三维(3d)图像的方法和装置。



背景技术:

正在积极研究三维(3d)图像技术以开发通过使用能够同时控制光的幅度和相位的复杂空间光调制器(slm)来实时实现高分辨全息图的装置。

为了再现全息图运动图像,已经使用计算机生成的全息图(cgh)。图像处理装置执行非常大量的计算,以便计算用于全息图平面上的每个位置的全息图值。特别地,为了在空间中表示点,图像处理装置需要进行傅立叶变换操作一次。为了表示空间的图像,图像处理装置需要执行与图像的对应像素的数量一样多的傅立叶变换操作。

诸如电视(tv)和移动设备的图像处理装置可以处理图像数据以再现全息图像。在这种情况下,图像处理装置可以对图像数据执行傅立叶变换,并且通过使用变换后数据来再现图像。

当图像处理装置执行傅立叶变换时,执行大量的计算,并且消耗了大量的时间。特别地,诸如移动设备的便携式设备具有有限的尺寸和有限的可用电力。因此,需要一种减少图像处理装置进行傅立叶变换时计算次数和计算时间的方法。



技术实现要素:

提供了一种用于处理三维(3d)图像的方法和装置。

其他方面将在下面的描述中部分地阐述,并且部分地将从描述中变得显而易见,或者可以通过实践所提供的示例性实施例来了解。

根据示例性实施例的一方面,一种用于处理三维(3d)图像的方法包括:获取颜色图像的帧和深度图像的帧;以及通过将所获取的所述颜色图像的帧与所获取的所述深度图像的帧进行组合来生成帧,其中,所述生成帧包括:将所获取的所述颜色图像的帧的行与所获取的所述深度图像的帧的对应行进行组合。

根据另一个示例性实施例的一方面,一种用于处理3d图像的装置包括:相机,所述相机被配置为获取颜色图像的帧和深度图像的帧;存储器,所述存储器被配置为存储所获取的所述颜色图像的帧和所获取的所述深度图像的帧;以及处理器,所述处理器被配置为通过将所获取的所述颜色图像的帧与所获取的所述深度图像的帧进行组合来生成帧,其中,所述处理器将所获取的所述颜色图像的帧的行与所获取的所述深度图像的帧的对应行进行组合。

根据另一个示例性实施例的一方面,一种处理3d图像的方法包括:通过将颜色图像的行与深度图像的行进行组合来获取帧;根据深度水平将所述颜色图像的单个行分成多个行;对所述多个行执行初次(primary)傅里叶变换;通过对作为执行所述初次傅里叶变换的结果而获得的变换后行进行相加来生成单个相加行;以及对所述单个相加行执行二次(secondary)傅立叶变换。

根据另一个示例性实施例的一方面,一种用于处理3d图像的装置包括控制器、第一核和第二核。所述控制器通过将颜色图像的行与深度图像的行进行组合来获取帧,并且根据深度水平将所述颜色图像的单个行分成多个行。所述第一核对所述多个行执行初次傅里叶变换。所述控制器通过对作为所执行的初次傅里叶变换的结果而获得的变换后行进行相加来生成单个相加行,并且所述第二核对所述单个相加行执行二次傅立叶变换。

附图说明

从以下结合附图对示例性实施例的描述,这些和/或其他方面将变得清楚并更加容易理解,其中:

图1是示出根据示例性实施例的处理图像数据的过程的示意图;

图2示出了根据示例性实施例的变换数据的过程;

图3示出了根据另一个示例性实施例的变换数据的过程;

图4是根据示例性实施例的三维(3d)图像处理装置的框图;

图5是用于说明包括在3d图像中的帧的示意图;

图6是用于说明根据示例性实施例的3d图像处理方法的示意图;

图7是用于说明根据另一个示例性实施例的3d图像处理方法的示意图;

图8是用于说明根据另一个示例性实施例的3d图像处理方法的示意图;

图9是根据示例性实施例的3d图像处理方法的流程图;

图10是根据另一个示例性实施例的3d图像处理装置的框图;

图11是用于说明图10的3d图像处理装置的操作的示意图;

图12是根据示例性实施例的3d图像处理装置的框图;

图13是用于说明图12的3d图像处理装置根据深度将单个行分成多个行的操作的框图;

图14是用于说明根据示例性实施例的执行深度相加的方法的示意图;

图15是用于说明执行二次傅立叶变换的方法的示意图;

图16是用于说明左眼图像和右眼图像的相加的示意图;并且

图17是根据示例性实施例的3d图像处理方法的流程图。

具体实施方式

现在将参考附图在下文中更全面地描述示例性实施例。

图1是示出根据示例性实施例的处理图像数据的过程的示意图。参考图1,图像处理装置可以接收图像数据并输出在其上执行了图像处理的图像。

在操作110中,图像处理装置接收图像数据。例如,在计算机生成全息图(cgh)中,当将基于层的算法应用于图像数据时,图像数据可以包括颜色数据(或颜色图像)、深度数据(或深度图像)等。颜色数据可以是表示用于每个平面的多种颜色的数据。例如,颜色数据可以包括红色图像、蓝色图像和绿色图像。基于层的算法用于处理多个平面中的每一个平面的数据,其中所述多个平面是基于深度将全息图的再现区域分割成的。图像处理装置可以通过对每个平面的数据执行傅立叶变换或逆傅立叶变换来生成全息图像。

在操作120中,图像处理装置执行图像质量校正和场计算操作。图像处理装置可以校正图像数据,以便提高图像数据的图像质量。

在操作130中,图像处理装置执行傅立叶变换或快速傅立叶变换(fft)。例如,图像处理装置可以对二维(2d)矩阵类型的图像数据执行傅立叶变换。图像处理装置可以进行一维(1d)傅立叶变换两次以完成2d傅立叶变换。图像处理装置可以沿排方向对图像数据进行1d傅立叶变换,并沿列方向对1d傅立叶变换的结果进行1d傅立叶变换。图像处理装置生成全息图像作为执行傅立叶变换的结果。

图像处理装置可以包括多个核。多个核可以在并行处理操作中对图像数据执行傅立叶变换。例如,图像处理装置可以将每个平面的图像数据分配给多个核,并且多个核的每个核可对所分配的图像数据执行各自的傅立叶变换。

下面将参考图2和图3详细描述根据示例性实施例的图像处理装置对图像数据进行傅立叶变换的过程。

在操作140中,图像处理装置执行像素编码操作。图像处理装置生成待输入到屏幕的数据,作为像素编码操作的结果。

在操作150中,图像处理装置将图像输出到图像显示器。

根据示例性实施例的图像处理装置可以通过在操作140中仅对一部分图像数据执行傅立叶变换来减少计算的总数,否则这将需要许多计算。图像处理装置还可以通过在操作140中仅存储图像数据的一部分来减少存储在存储器中的数据量。

图像处理装置可以通过将颜色帧与深度帧进行组合来生成新的帧。图像处理装置可以将颜色帧的行和深度帧的行安排成彼此交替。

图像处理装置可以以行为单位来处理图像数据和深度数据,以便减少存储在外部存储器中的帧的数目。

图2示出了根据示例性实施例的变换数据的过程。参考图2,图像处理装置或傅立叶变换装置通过对图像数据210进行两次1d傅立叶变换(初次傅里叶变换)来生成最终数据230。例如,图像处理装置沿列方向对图像数据210执行1dfft一次以便生成中间数据220,然后沿排方向对中间数据220执行1dfft一次,以便生成最终数据230。还可以通过执行两次1dfft来实现二次傅立叶变换。初次傅里叶变换的次序可以与二次傅立叶变换的次序相反。例如,如果在执行初次傅里叶变换时先沿列方向然后沿排方向执行1dfft,则可以在执行二次傅立叶变换时先沿排方向,然后沿列方向执行1dfft。

在图2中,例如,图示了图像处理装置首先沿列方向进行1dfft的情况。在图3中,例如,图示了图像处理装置首先沿排方向进行1dfft的情况。

图像处理装置沿列方向对图像数据210执行1dfft。中间数据220是通过沿列方向对图像数据210执行1dfft获得的数据。在图像数据210上标记的箭头指示图像处理装置执行1dfft所沿的方向。在中间数据220上标记的直线表示图像数据210沿其被变换的方向。

图像处理装置读取存储的中间数据220并沿排方向对读取的中间数据220执行1dfft。当读出中间数据220时,图像处理装置可以沿排方向读出中间数据220,并将读出的中间数据220输出到每个1dfft处理器。

图像处理装置通过沿排方向对中间数据220执行1dfft来生成最终数据230。最终数据230是沿列方向和行方向的每一个方向分别对图像数据210进行1dfft变换而获得的数据。

图3示出了根据另一个示例性实施例的变换数据的过程。参考图3,图像处理装置或傅立叶变换装置通过对图像数据310进行两次1dfft来生成最终数据330。例如,图像处理装置沿排方向对图像数据310进行1dfft一次,以生成中间数据320,然后沿列方向对中间数据320执行1dfft一次,以便生成最终数据330。在图2和3中,切换列和行的顺序,并且图2中所呈现的描述可以相同地应用于图3的描述。

图4是根据示例性实施例的三维(3d)图像处理装置400的框图。参考图4,3d图像处理装置400可以包括相机410、处理器430和存储器420。3d图像处理装置400可以是电子设备(例如,计算机、移动设备、显示设备、可穿戴设备或数字照相机)、中央处理单元(cpu)、图形处理单元(gpu)等等。

相机410可以被配置为拍摄图像并从拍摄的图像获取颜色图像和深度图像。以帧为单位获取颜色图像和深度图像。颜色图像包括红色图像、绿色图像和蓝色图像。红色图像、绿色图像和蓝色图像中的每一个图像都是单个帧。为每种颜色获取深度图像。特别地,相机410获取红色图像的深度图像,绿色图像的深度图像和蓝色图像的深度图像。红色、绿色和蓝色图像中的每一个图像的相应深度图像也是单个帧。

处理器430通过将颜色图像的帧与深度图像的帧进行组合来生成组合帧。组合帧可以是单个帧。例如,处理器430可以被配置为通过将红色图像与红色图像的深度图像进行组合来生成第一帧,通过将绿色图像与绿色图像的深度图像进行组合来生成第二帧,并且通过将蓝色图像与用于蓝色图像的深度图像进行组合来生成第三帧。

处理器430通过将颜色图像的行与深度图像的对应行进行组合来安排颜色图像的行和深度图像的行。特别地,处理器430可以将颜色图像的行与深度图像的行进行组合,并将该组合的结果安排在新的帧上。可以通过将颜色图像的行和深度图像的行安排成彼此相邻来实现将颜色图像的行与深度图像的行进行组合。

例如,处理器430可以通过将下一排上的深度图像的行安排到其上安排有与深度图像相对应的颜色图像的行的排来生成帧。当颜色图像包括总共1080行并且深度图像包括总共1080行时,所生成的帧包括1080×2=2160行。如果左眼图像、右眼图像、对应于左眼图像的深度图像和对应于右眼图像的深度图像被组合以生成单个帧,则生成的帧包括1080×4=4320行。

例如,处理器430可以通过将深度图像的行和与该深度图像相对应的颜色图像的行安排在同一排上来生成帧。当颜色图像包括总共1080行,并且深度图像包括总共1080行时,所生成的帧包括1080行。然而,生成的帧的每一行是颜色图像的每一行的两倍长。

存储器420存储颜色图像和深度图像。存储器420存储由处理器430生成的帧。

图5是用于说明3d图像中包括的帧的示意图。3d图像可以包括红色图像510、绿色图像520、蓝色图像530和深度图像540。红色图像510包括左眼红色图像511和右眼红色图像512,绿色图像520包括左眼绿色图像521和右眼绿色图像522,并且蓝色图像530包括左眼蓝色图像531和右眼蓝色图像532。深度图像540包括分别对应于每种颜色的左眼图像和右眼图像的图像513、514、523、524、533和534。

图像550是用于描述图上所示的字符和数字的示例。图像550的左侧所示的圆表示图像550是左眼图像。在图像550上显示的字母字符中最靠前的字母字符r(红色)表示红色。数字3表示行。因此,r3表示红色图像的第三行。图像550上最右边的字符l表示图像550是左眼图像。

参考图5,由相机410获取的3d图像可以包括总共12个帧,511到514、521到524以及531到534。

图6是用于说明根据示例性实施例的3d图像处理方法的示意图。图6说明红色图像611和612的图像处理方法。绿色图像和蓝色图像可以根据与红色图像611和612相同的方法与相应深度图像组合。虽然图6、7和8中的图像包括1080行,但图像的行数可以变化。

3d图像处理装置400可以通过将四个帧611、612、613和614彼此进行组合来生成两个帧620和630。3d图像处理装置400通过将红色左眼图像611与深度左眼图像613进行组合来生成帧620,并且通过将红色右眼图像612与深度右眼图像614进行组合来生成帧630。

深度图像613对应于红色图像611,并且深度图像613的像素值指示是否针对每个深度存在红色值。深度图像614对应于红色图像612,并且深度图像614的像素值指示是否针对每个深度存在红色值。

3d图像处理装置400可以通过将下一排上的深度图像的行安排到其上安排有对应于深度图像的颜色图像的行的排来生成帧620和630。关于帧620,3d图像处理装置400将红色图像611的第一行621安排在帧620的第一行上,并且将深度图像613的第一行622安排在帧620的第二行上。3d图像处理装置400将红色图像611的第二行623安排在帧620的第三行上,并且将深度图像613的第二行624安排在帧620的第四行上。3d图像处理装置400将红色图像611的最后一行625和深度图像613的最后一行626安排在帧620的最后两行上。因此,红色图像611的行和深度图像613的行彼此交替,并且以新格式生成包括红色图像611和深度图像613的帧620。通过将红色图像612与深度图像614组合,以与帧620相同的形式生成帧630。

图7是用于说明根据另一个示例性实施例的3d图像处理方法的示意图。图7说明了通过将红色图像711和713与深度图像712和714进行组合来生成单个帧700的方法。

3d图像处理装置400可以通过将红色图像711、深度图像712、红色图像713和深度图像714的各行彼此交替地堆叠来生成帧700。3d图像处理装置400将红色图像711的第一行701安排在帧700的第三行上,并且将深度图像712的第一行702安排在帧700的第二行上。3d图像处理装置400将红色图像713的第一行703安排在帧700的第三行上,并且将深度图像714的第一行704安排在帧700的第四行上。3d图像处理装置400还顺序地安排其他行,从而生成帧700。因此,帧700的行数是红色图像713的行数的四倍,并且帧700的单行的长度等于红色图像713的单行的长度。

尽管在图7中仅示出了红色图像711和713,但是绿色图像和蓝色图像也可以以相同的方式与深度图像进行组合。根据参考图7描述的方法,可以将六个颜色图像和六个深度图像进行组合以生成总共三个帧。

图8是用于说明根据另一个示例性实施例的3d图像处理方法的示意图。图8解释了通过将红色图像811和813与深度图像812和814进行组合来生成单个帧800的方法。帧800包括红色图像811和813以及深度图像812和814的所有行。

3d图像处理装置400通过将深度图像的行和与深度图像相对应的颜色图像的行安排在同一行上来生成帧800。3d图像处理装置400将红色图像811的第一行801和深度图像812的第一行805安排在帧800的第一行上。深度图像812的第一行805可以安排在红色图像811的第一行801的右侧或左侧。

3d图像处理装置400将红色图像813的第一行802和深度图像814的第一行806安排在帧800的第二行上。

3d图像处理装置400将红色图像811的第二行803和深度图像812的第二行807安排在帧800的第三行上。

因此,帧800的行数是红色图像811的行数的两倍,并且帧800的单行的长度是红色图像811的单行的长度的两倍。

图9是根据示例性实施例的3d图像处理方法的流程图。

在操作910中,3d图像处理装置400获取颜色图像的帧和深度图像的帧。特别地,3d图像处理装置400以帧为单位获取颜色图像和深度图像。颜色图像和/或深度图像可以由相机410拍摄。可替代地,可以从3d图像处理装置400的外部接收颜色图像和/或深度图像。

在操作920中,3d图像处理装置400通过将颜色图像与深度图像进行组合来生成帧。3d图像处理装置400可以彼此交替地安排颜色图像的行和深度图像的行。可替代地,3d图像处理装置400可以在水平方向上并排安排颜色图像的行和深度图像的行。

在操作930中,3d图像处理装置400将颜色图像的行与深度图像的对应行进行组合。3d图像处理装置400将颜色图像的行和深度图像的对应行安排成彼此相邻。

图10是根据另一个示例性实施例的3d图像处理装置1000的框图。3d图像处理装置1000可以是移动装置、显示装置、可穿戴装置、cpu、gpu等中的任何一个。

3d图像处理装置1000包括控制器1010、第一核1020、存储器1030和第二核1040。外部存储器1050位于3d图像处理装置1000的外部。外部存储器1050可以是动态随机存取存储器(dram)。虽然3d图像处理装置1000包括两个核,即第一和第二核1020和1040,但是在图10中,3d图像处理装置1000可以包括两个以上的核。

例如,控制器1010控制第一核1020、存储器1030和第二核1040。控制器1010可以指定将由第一和第二核1020和1040执行的操作。例如,控制器1010可以控制第一核1020以沿排方向对数据执行1dfft,并且还可以控制第二核1040以沿列方向对数据执行1dfft。控制器1010可以将在傅立叶变换操作期间生成的中间数据存储在存储器1030中。

第一核1020可以对帧进行傅立叶变换。特别地,第一核1020可以对帧的每一行中包括的数据进行傅立叶变换。例如,第一核1020可以沿排方向对帧执行1dfft,以便生成中间数据。第一核1020沿排方向对帧执行1dfft表示对帧的排(或行)中包括的像素值执行1dfft。

第一核1020可以将中间数据输出到存储器1030。每当生成执行1dfft(即中间数据)的结果值时,第一核1020可以将结果值输出到存储器1030。

第一核1020可以包括多个idfft处理器。1dfft处理器可以对帧的每一行执行1dfft。例如,包括在第一核1020中的1dfft处理器的数量可以是帧的排数的除数(divisor)。例如,当帧的排(行)数为512时,第一核1020可以包括八(8)、十六(16)、三十二(32)或六十四(64)个1dfft处理器。

存储器1030可以存储并输出中间数据。存储器1030可以是同步dram(sdram)。

第二核1040可以对中间数据进行傅立叶变换。第二核1040可以包括多个idfft处理器。1dfft处理器可以对中间数据的每一列执行1dfft。例如,包含在第二核1040中的1dfft处理器的数量可以是该帧的列数的除数。例如,当帧的列数为1024时,第二核1040可以包括八(8)、十六(16)、三十二(32)或六十四(64)个1dfft处理器。

图11是用于描述3d图像处理装置1000的操作的示意图。3d图像处理装置1000经由总线1100连接到外部存储器1050。3d图像处理装置1000可以将帧存储在外部存储器1050中。因为帧包括大容量的数据,所以可能难以将帧存储在3d图像处理装置1000中。然而,由于外部存储器1050经由总线1100连接到3d图像处理装置1000,因此3d图像处理装置1000比向内部存储器(未示出)写入数据或从其读取数据需要更多的时间来向外部存储器1050写入或从其读取数据。此外,当经由总线1100发送大量数据时,总线1100的负载增加并且功耗增加。因此,需要将数据写入外部存储器1050或从外部存储器1050读取数据。

3d图像处理装置1000对帧执行傅立叶变换。3d图像处理装置1000对帧执行第一2dfft,并对中间数据执行关键项操作(focustermoperation)和深度相加。在执行深度相加之后,3d图像处理装置1000执行第二2dfft。可以通过执行1dfft两次来执行2dfft。

由于3d图像处理装置1000以行为单位对帧执行傅立叶变换,所以3d图像处理装置1000不需要在外部存储器1050中存储在执行傅立叶变换过程中生成的中间数据。例如,3d图像处理装置1000根据深度将颜色图像的单行分成多行。3d图像处理装置1000可以对多行执行第一2dfft,然后可以立即相加多个变换行(即深度相加)。以下将参考图13详细描述根据深度将单行分为多行的3d图像处理装置1000。

3d图像处理装置1000对通过深度相加组合成单行的数据执行第二2dfft。

图12是根据示例性实施例的3d图像处理装置1200的框图。参考图12,3d图像处理装置1200包括第一核1210、第一缓冲器1220、存储器1230、解复用器1240、第二缓冲器1250和第二核1260。

在图12中,示出了帧的大小例如为1k×512的情况。特别地,在帧的大小例如为1k×512的情况下,帧的单行为1k,并且帧包括512行。因此,第一核1210中包括的1dfft处理器是1k点fft处理器,并且第二核1260中包括的1dfft处理器是512点fft处理器。每个1k点fft处理器可以对一千零二十四(1024)个像素值执行傅立叶变换,并且每个512点fft处理器可以对五百一十二(512)个像素值执行傅立叶变换。包括在第一核1210和第二核1260中的处理器的数量可以根据输入图像而变化。

第一核1210包括多个1k点fft处理器。1k点fft处理器对帧执行1dfft。术语“1k点”表示处理器对该帧的一千零二十四(1024)个像素值执行1dfft。例如,第一核1210可以包括三十二个(32)个1k点fft处理器。1k点fft处理器0表示第0(即,零)个处理器,1k点fft处理器1表示第1个处理器,1k点fft处理器31表示第31个处理器。1k点fft处理器0可以对帧的第一行(或第一排)进行变换,1k点fft处理器1可以对帧的第二行进行变换,并且1k点fft处理器31可以对帧的第32行进行变换。1k点fft处理器0到1k点fft处理器31可以对各行同时执行傅立叶变换并输出中间值。每个中间值表示通过对该帧执行傅立叶变换而生成的像素值,并且表示中间数据的一部分。

第一缓冲器1220顺序地存储从第一核1210输出的中间值。第一缓冲器1220存储从1k点fft处理器0到1k点fft处理器31输出的中间值。例如,第一缓冲器1220可以存储从1k点fft处理器0到1k点fft处理器31顺序地输出的三十二(32)个中间值,并将三十二(32)个中间值输出到存储器1230。最初存储的三十二(32)个中间值表示中间数据的第一列的像素值。接下来,第一缓冲器1220可以存储从1k点fft处理器0到1k点fft处理器31顺序地输出的三十二(32)个中间值,并且第二存储的第三十二(32)个中间值表示中间数据的第二列的像素值。

图13是用于说明3d图像处理装置1200如何根据深度将单行分为多行的框图。图13示出了深度被分为八(8)级的情况。当深度为n级时,颜色图像的单行被分成n行。

行1310是左眼红色图像的第一行。行1320是左眼深度图像的第一行,是表示红色图像的行1310的深度的数据。当深度具有8个级别时,深度图像的行1320的每个像素值可以包括8位。每个位可以表示是否针对每个深度存在颜色。例如,深度图像的行1320的第一像素值表示红色的深度。当深度图像的行1320的第一像素值为00100000时,在级别3存在红色。

3d图像处理装置1000通过将深度图像的行1320的第一位应用于红色图像的行1310来生成深度为1的红色图像的行1311,并且通过将深度图像的行1320的第二位应用于红色图像的行1310来生成深度为2的红色图像的行1312。3d图像处理装置1000通过分别对对应的深度即深度3到深度8执行相同的操作来生成行1313到1318。

3d图像处理装置1000还可以将右眼红色图像的行1330和右眼深度图像的行1340分成八行1331至1338。

八行1311至1318可以由第一芯1210和第二芯1260进行初次傅里叶变换。初次傅里叶变换是相对于从视网膜到瞳孔的距离执行的傅立叶变换,并且二次傅立叶变换是相对于从眼睛到面板的距离执行的傅立叶变换。八行1311至1318分别被输入到第一核1210的对应处理器。行1311可以被输入到1k点fft处理器0,行1312可以被输入到1k点fft处理器1,行1313可以被输入到1k点fft处理器2。八行1311至1318可以同时被输入到1k点fft处理器0到1k点fft处理器31。经由第一核1210的转换获得的八行1311至1318可以经由第一缓冲器1220、存储器1230、解复用器1240和第二缓冲器1250被输入到第二核1260。八行1311至1318可以由第二芯1260进行傅立叶变换,并可输出到外部存储器1050。

图14是用于说明根据示例性实施例的执行深度相加的方法的示意图。3d图像处理装置1000可以对初次傅里叶变换行执行关键项操作,然后对初次傅里叶变换行执行深度相加。由于3d图像处理装置1000能够对图像的每一行执行深度相加,所以3d图像处理装置1000既不需要存储也不需要从外部存储器1050读入深度图像的帧,以便进行深度相加。3d图像处理装置1000可以通过使所有行1411到1418相加来执行深度相加,并且可以经由相加来生成行1420。在这方面,3d图像处理装置1000通过将八行1411至1418相加在一起来生成单行1420,并通过将八行1431至1438相加在一起来生成信号行1440。

图15是用于说明进行二次傅立叶变换的方法的示意图。3d图像处理装置1000对数据执行零填充,然后对零填充操作的结果执行二次傅立叶变换。通过二次傅立叶变换获得的数据是经过初次傅里叶变换、关键项操作和深度相加的数据。

3d图像处理装置1000可以对行执行深度相加,然后可以对深度增加行执行二次傅立叶变换。二次傅立叶变换可以由第一核1210和第二核1260执行。

行1511至1516具有零填充执行结构。例如,图14中的深度相加行1420通过零填充变成行1511。具体地说,3d图像处理装置1000通过向行1420的左侧和右侧添加多个0(零)来生成行1511,并且通过向行1440的左侧和右侧添加多个0(零)来生成行1512。每个生成的行被输入到第一核1210并经过二次傅立叶变换。

图16是用于说明将左眼图像和右眼图像进行相加的示意图。3d图像处理装置1000通过将二次傅立叶变换行1611至1616进行相加,即,将左行和右行相加来生成最后一行。例如,3d图像处理装置1000通过将左眼行1611与对应的右眼行1612进行相加来生成行1621,通过将左眼行1613与对应的右眼行1614进行相加来生成行1622,并且通过将左眼行1615与对应的右眼行1616进行相加来生成行1623。

图17是根据示例性实施例的3d图像处理方法的流程图。

在操作1710中,3d图像处理装置1000通过将红色图像、绿色图像和蓝色图像与深度图像进行组合来获取帧。3d图像处理装置1000通过将颜色图像的行与深度图像的行进行组合来获取帧。3d图像处理装置1000可以获取颜色图像的行与深度图像的对应行相邻的帧。3d图像处理装置1000可以获取每种颜色的帧。特别地,3d图像处理装置1000可以获取组合有红色图像和对应的深度图像的帧,组合有蓝色图像和对应的深度图像的帧,以及组合有绿色图像和对应的深度图像的帧。

3d图像处理装置1000可以拍摄颜色图像和深度图像,并且可以通过将颜色图像与深度图像进行组合来生成帧。

在操作1720中,3d图像处理装置1000根据深度级别将颜色图像的单行转换为多行。因此,当颜色图像的行数为1080并且深度级数为10时,生成总共1080×10=10800行。

在操作1730中,3d图像处理装置1000对行进行初次傅里叶变换。3d图像处理装置1000分别将多个变换行输入到处理器,并对多个输入的变换行中的每一个变换行进行初次傅里叶变换。可以例如经由并行处理操作的实现来同时处理多个行。

在操作1740中,3d图像处理装置1000通过将变换行相加在一起来生成单个相加行。将多个初次傅里叶变换行相加在一起以返回到单行。

在操作1750中,3d图像处理装置1000对相加行执行二次傅立叶变换。3d图像处理装置1000通过在作为所执行的二次傅立叶变换的结果获得的二次傅立叶变换行中将左眼行和右眼行进行相加来生成最终行。

可以通过将颜色图像与深度图像进行组合来生成帧的新格式。

以行为单位处理帧,从而减少存储在外部存储器中的帧数。

本文描述的装置可以包括:处理器;存储器,用于存储程序数据并执行程序;永久存储单元,诸如磁盘驱动器;通信端口,用于处理与外部设备通信;以及用户接口装置,包括触摸面板、键、按钮等。当涉及软件模块或算法时,这些软件模块可以作为程序指令或由处理器可执行的计算机可读代码存储在暂时的或非暂时的计算机可读记录介质上。计算机可读记录介质的示例包括磁存储介质(例如,只读存储器(rom)、随机存取存储器(ram)、软盘、硬盘等)和光学记录介质(例如,cd-rom或数字通用光盘(dvd))。计算机可读记录介质还可以分布在网络耦合的计算机系统中,使得计算机可读的代码按照分布的方式存储并执行。该介质可由计算机读取,存储在存储器中,并由处理器执行。

可以根据功能块组件和各种处理步骤描述示例性实施例。这样的功能块可以通过被配置为执行指定功能的任何数量的硬件和/或软件组件来实现。例如,示例性实施例可以采用各种集成电路(ic)组件,例如存储器元件、处理元件、逻辑元件、查找表等,其可以在一个或多个微处理器或其他控制装置的控制下执行各种功能。类似地,通过使用软件编程或软件元件实施元件,本文描述的示例性实施例可以用诸如c、c++、java、汇编语言等的任何编程或脚本语言来实现,各种算法通过数据结构、对象、过程、例程或其他编程元件的任意组合来实现。可以在由一个或多个处理器执行的算法中实现功能方面。此外,本文描述的示例性实施例可以采用任何数量的用于电子配置、信号处理和/或控制、数据处理等的常规技术。词语“机构”、“元件”、“装置”和“配置”被广泛使用,并不限于机械或物理示例性实施例,而是包括与处理器等相结合的软件例程。

本文所示并描述的特定实施例是说明性示例,并不意图以其他方式限制本发明构思的范围。为了简洁起见,可能不会详细描述系统的传统电子、控制系统、软件开发和其他功能方面。此外,所呈现的各种附图中所示的连接线或连接器旨在表示各种元件之间的示例性功能关系和/或物理或逻辑耦合。应当注意,在实际的设备中可能存在许多备选或附加的功能关系、物理连接或逻辑连接。

在描述示例性实施例的上下文中(特别是在所附权利要求的上下文中)中使用术语“一个”和“一种”和“所述”以及类似的指称对象应被解释为涵盖单数和复数。此外,除非本文另有说明,本文中列举数值范围仅仅意在用作单独提及落入该范围内的每个单独值的简写方法,并且将每个单独的值并入本说明书中,如同在本文中单独列举一样。另外,本文所述的所有方法的步骤可以以任何合适的顺序进行,除非本文另有说明或上下文明显矛盾。本发明构思不限于所述步骤的描述顺序。本文提供的任何和所有示例或示例性语言(例如,“例如”)的使用仅旨在更好地说明本发明构思,并且不对本发明构思的范围构成限制,除非另有说明。在不脱离示例性实施例的精神和范围的情况下,对本领域普通技术人员来说,许多修改和改编将是显而易见的。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1