CN107783933B - 图像处理方法和设备 - Google Patents

图像处理方法和设备 Download PDF

Info

Publication number
CN107783933B
CN107783933B CN201710645705.2A CN201710645705A CN107783933B CN 107783933 B CN107783933 B CN 107783933B CN 201710645705 A CN201710645705 A CN 201710645705A CN 107783933 B CN107783933 B CN 107783933B
Authority
CN
China
Prior art keywords
fft
core
data
image data
depth
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710645705.2A
Other languages
English (en)
Other versions
CN107783933A (zh
Inventor
金镐正
金容奎
李泓锡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN107783933A publication Critical patent/CN107783933A/zh
Application granted granted Critical
Publication of CN107783933B publication Critical patent/CN107783933B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03HHOLOGRAPHIC PROCESSES OR APPARATUS
    • G03H1/00Holographic processes or apparatus using light, infrared or ultraviolet waves for obtaining holograms or for obtaining an image from them; Details peculiar thereto
    • G03H1/04Processes or apparatus for producing holograms
    • G03H1/08Synthesising holograms, i.e. holograms synthesized from objects or objects from holograms
    • G03H1/0808Methods of numerical synthesis, e.g. coherent ray tracing [CRT], diffraction specific
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03HHOLOGRAPHIC PROCESSES OR APPARATUS
    • G03H1/00Holographic processes or apparatus using light, infrared or ultraviolet waves for obtaining holograms or for obtaining an image from them; Details peculiar thereto
    • G03H1/04Processes or apparatus for producing holograms
    • G03H1/08Synthesising holograms, i.e. holograms synthesized from objects or objects from holograms
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03HHOLOGRAPHIC PROCESSES OR APPARATUS
    • G03H1/00Holographic processes or apparatus using light, infrared or ultraviolet waves for obtaining holograms or for obtaining an image from them; Details peculiar thereto
    • G03H1/04Processes or apparatus for producing holograms
    • G03H1/16Processes or apparatus for producing holograms using Fourier transform
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/141Discrete Fourier transforms
    • G06F17/142Fast Fourier transforms, e.g. using a Cooley-Tukey type algorithm
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/10Image enhancement or restoration using non-spatial domain filtering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/28Indexing scheme for image data processing or generation, in general involving image processing hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20048Transform domain processing
    • G06T2207/20056Discrete and fast Fourier transform, [DFT, FFT]

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Discrete Mathematics (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Computer Hardware Design (AREA)
  • Multimedia (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Abstract

一种用于执行关于图像数据的二维(2D)快速傅里叶变换(FFT)的图像处理设备,包括:第一核和第二核,第一核和第二核中每一个包括配置为执行一维(1D)FFT的多个处理器;存储器,配置为储存从第一核和第二核输出的数据;控制器,配置为控制第一核和第二核以执行关于图像数据的初级2D FFT和次级2D FFT。

Description

图像处理方法和设备
相关申请的交叉引用
本申请要求于2016年8月31日向韩国知识产权局提交的第10-2016-0111683号韩国专利申请的权益,该公开的全部内容通过引用并入本文。
技术领域
本公开涉及一种图像处理方法和设备。
背景技术
近来,对于三维(3D)图像相关技术已经进行了很多研究。而且,已积极研究了通过使用能够同时控制光的振幅和相位的复杂空间调制器(complex spatial modulator,SLM)实时实施高质量全息图的装置。
计算机生成的全息图(computer-generated holograms,CGH)用于复制全息的移动图像,图像处理设备计算对应于全息图平面上的位置的全息图值,这需要巨大的计算量。也就是说,图像处理设备需要执行一次傅里叶变换以表达空间中的一个点,并且必须执行与像素数量同样多次的傅里叶变换来表达空间中的图像。
诸如电视(TV)、移动装置等的图像处理设备可处理图像数据以复制全息图像。在此情况下,图像处理设备执行关于图像数据的傅里叶变换并基于变换的数据复制图像。
当图像处理设备执行傅里叶变换时,计算量相当大并需要很多时间。特别地,因为诸如移动装置的便携式装置具有有限的尺寸和功率,这就需要用于为执行傅里叶变换减少计算量和时间的方法。
发明内容
提供了用于执行关于图像数据的傅里叶变换的方法和设备。
其他方面的一部分将在下文中陈述,一部分可从描述中显而易见,或可通过当前实施方式的实践学习得出。
根据实施方式的一方面,一种执行关于图像数据的二维(2D)快速傅里叶变换(FFT)的图像处理设备,包括:第一核和第二核,第一核和第二核中每一个包括配置为执行一维(1D)FFT的多个处理器;存储器,配置为储存从第一核和第二核输出的数据;以及控制器,配置为控制第一核和第二核执行关于图像数据的初级2D FFT和次级2D FFT。
根据另一实施方式的一方面,一种执行关于图像数据的2D FFT的图像处理方法,包括:由第一核和第二核执行关于图像数据的初级2D FFT;执行关于初级2D FFT数据的聚焦项操作和深度求和操作;以及由第一核和第二核执行关于深度求和数据的次级2D FFT。
附图说明
通过参照附图进行的实施方式的下文描述,这些方面和/或其它方面将变得显而易见且更易领会,其中:
图1是示出根据示例实施方式的处理图像数据的过程的流程图;
图2是示出根据示例实施方式的变换数据的过程的流程图;
图3是示出根据另一示例实施方式的变换数据的过程的流程图;
图4是根据示例实施方式的图像处理设备的框图;
图5是根据另一示例实施方式的图像处理设备的框图;
图6是根据示例实施方式的图像处理设备的框图;
图7是用于描述根据示例实施方式的数据处理顺序的视图;
图8是用于描述根据另一示例实施方式的数据处理顺序的视图;
图9是根据示例实施方式的输入至第一核的数据的时序示例;
图10是根据示例实施方式的输入至第二核的数据的时序示例;
图11是示出根据示例实施方式的图像处理方法的流程图。
具体实施方式
现在将详细参考附图中示出其示例的实施方式,其中遍及全文的相同参考标记指的是相同元件。就此而言,呈现的示例实施方式可具有不同形式并且不应被理解为限于本文所阐明的描述。因此,下面仅通过参照附图来描述示例实施方式以解释各个方面。
在下文中,将根据附图详细描述本发明的示例实施方式。
图1是示出根据示例实施方式的处理图像数据的过程的流程图。参照图1,图像处理设备可接收图像数据并输出图像。
在操作110中,图像处理设备可接收图像数据。在示例实施方式中,当基于层的算法在计算机生成的全息图(CGH)计算中应用于图像数据时,图像数据可包括颜色数据(或颜色图像)、深度数据(或深度图像)等等。颜色数据可指示用于每个平面的多个颜色。在示例实施方式中,颜色数据可包括红色图像、蓝色图像和绿色图像。基于层的算法用于根据通过划分获得的每个平面的深度和过程数据来划分全息图的复制区域。图像处理设备可执行关于通过划分获得的每个平面的数据的傅里叶变换或傅里叶逆变换并可生成全息图像。
在操作120中,图像处理设备可执行图像质量校正和场计算。图像处理设备可校正图像数据以改善图像数据的质量。
在操作130中,图像处理设备可执行傅里叶变换或快速傅立叶变换(fast Fouriertransform,FFT)。在示例实施方式中,图像处理设备可执行关于二维(2D)矩阵形式中图像数据的傅里叶变换。图像处理设备可执行两次一维(1D)傅里叶变换用于2D傅里叶变换。图像处理设备可以行方向执行关于图像数据的1D傅里叶变换并可以列方向执行关于变换图像数据的1D傅里叶变换。图像处理设备可通过傅里叶变换生成全息图像。
图像处理设备可包括并行执行关于图像数据的傅里叶变换的多个核。例如,图像处理设备可分配每个平面的图像数据至可执行关于所分配的图像数据的傅里叶变换的多个核。
将参照根据示例实施方式的图2和图3对通过图像处理设备执行关于图像数据的傅里叶变换的过程进行详细描述。
在操作140中,图像处理设备可执行像素编码。图像处理设备可通过像素编码生成待输入至屏幕的数据。
在操作150中,图像处理设备可输出图像至图像显示设备。
图像处理设备可执行关于操作140中需要若干计算的部分数据的傅里叶变换,从而减少计算量。图像处理设备可储存操作140中的部分数据,从而减少存储器中储存的数据量。
图像处理设备可通过组合色帧和深度帧生成一个新的帧。图像处理设备可交替处置色帧的排和深度帧的排。
图像处理设备可逐排地(line-by-line)处理图像数据和深度数据以减少外部存储器中储存的帧的数量。
图2是示出根据示例实施方式的变换数据的过程的流程图。参照图2,图像处理设备或傅里叶变换设备可执行两次关于图像数据210的1D FFT并可生成最终数据230(初级2DFFT)。在示例实施方式中,图像处理设备可以列方向执行一次关于图像数据210的1D FFT以生成中间数据220,并可以行方向执行关于中间数据220的1D FFT以生成最终数据230。也可通过执行两次1D FFT来执行次级2D FFT。初级2D FFT可为从瞳孔(pupil)到视网膜(retina)的FFT,次级2D FFT可为从面板(panel)到瞳孔的FFT。
初级2D FFT和次级2D FFT可具有彼此相反的执行1D FFT的顺序。例如,如果当执行初级2D FFT时两次执行1D FFT是先以列方向执行后再以行方向执行,则当执行次级2DFFT时两次执行1D FFT可为先以行方向执行后再以列方向执行。
在图2中,已描述了图像处理设备首先以列方向执行1D FFT的示例。另一方面,在图3中,将描述图像处理设备首先以行方向执行1D FFT的示例。
图2和图3仅阐示了执行初级2D FFT的情况,次级2D FFT也可与初级2D FFT相同地执行或以与初级2D FFT相反的行方向和列方向的顺序执行。
图像处理设备以列方向执行关于图像数据210的1D FFT。中间数据220指示以列方向执行关于图像数据210的1D FFT的结果。图像数据210中所示的箭头指示图像处理设备执行1D FFT的方向。中间数据220中所示的直线指示变换图像数据210的方向。
图像处理设备从存储器读取储存的中间数据220并以行方向执行关于中间数据220的1D FFT。图像处理设备可从存储器读取行方向的中间数据220并输出读取的中间数据220至每一个1D FFT处理器。
图像处理设备以行方向执行关于中间数据220的1D FFT并生成最终数据230。最终数据230是在列方向和行方向上执行关于图像数据210的1D FFT的结果。
图3是示出根据另一示例实施方式的变换数据的过程的流程图。参照图3,图像处理设备或傅里叶变换设备执行两次关于图像数据310的1D FFT并生成最终数据330。例如,图像处理设备可以行方向执行一次关于图像数据310的1D FFT以生成中间数据320,并可以列方向执行关于中间数据320的1D FFT以生成最终数据330。在图2和图3中,行和列的顺序是相反的,图2中应用的事项可同样适用于图3。
图4是根据示例实施方式的图像处理设备的框图。参照图4,图像处理设备400可包括相机410、处理器430和存储器420。图像处理设备400可为诸如计算机、移动装置、显示装置、可穿戴装置、数码相机等或中央处理单元(CPU)、图像处理单元(GPU)等等的电子装置。
相机410捕捉图像并获得彩色图像和深度图像。彩色图像和深度图像以帧为单位获得。彩色图像可包括红色图像、绿色图像和蓝色图像。红色图像、绿色图像和蓝色图像的每一个都为一帧。可获得用于每一个颜色的深度图像。就是说,相机410获得用于红色图像的深度图像、用于绿色图像的深度图像和用于蓝色图像的深度图像。用于每个颜色的深度图像也为一帧。
处理器430生成彩色图像的帧和深度图像的帧组合而成的帧。所组合的帧可为一帧。例如,处理器430可通过组合红色图像与用于红色图像的深度图像生成第一帧,通过组合绿色图像与用于绿色图像的深度图像生成第二帧,通过组合蓝色图像与用于蓝色图像的深度图像生成第三帧。
存储器420储存彩色图像和深度图像。存储器420储存通过处理器430生成的帧。
图5是根据另一示例实施方式的图像处理设备的框图。图像处理设备500可为移动装置、显示装置、可穿戴装置、CPU、GPU等等。
图像处理设备500可包括控制器510、第一核520、存储器530和第二核540。存储器530可为动态随机存取存储器(DRAM)或同步随机存取存储器(SRAM)。
控制器510控制第一核520、存储器530、第二核540等等。控制器510确定输入至第一核520和第二核540的数据。控制器510指定待由第一核520和第二核540执行的操作。例如,控制器510可控制第一核520以行方向执行1D FFT,控制第二核540以列方向执行1DFFT。控制器510在存储器530中储存在傅里叶变换期间生成的数据。
控制器510控制第一核520和第二核540执行关于图像数据的初级2D FFT和次级2DFFT。初级2D FFT包括执行两次1D FFT,次级2D FFT包括执行两次1D FFT。控制器510可控制输入至第一核520和第二核540的数据以执行两次2D FFT(即执行初级2D FFT和次级2DFFT)。控制器510控制数据流,以使得第一核520和第二核540在执行初级2D FFT后执行次级2D FFT。因此,图像处理设备500可通过使用两个核520和540执行初级2D FFT和次级2D FFT(总共执行四次1D FFT)。例如,控制器510可输入初级2D FFT变换数据至第一核520,并输入从第一核520输出的数据至第二核540用于次级2D FFT。控制器510可输入初级2D FFT变换数据至第二核,并输入从第二核540输出的数据至第一核520用于次级2D FFT。一旦初级2DFFT变换数据输入至第二核540,可省略在存储器530中储存初级2D FFT变换数据和从存储器530读取初级2D FFT变换数据的过程。
第一核520执行关于包括在帧的每排中的数据的傅里叶变换。例如,第一核520可以行方向执行关于帧的1D FFT。一行或一列可称为一排。当第一核520以行方向执行关于帧的1D FFT时,意味着第一核520执行关于包括在帧的每行中的像素值的1D FFT。
第一核520输出数据至存储器530。每次当生成结果时,第一核520输出执行1D FFT的结果至存储器530。
第一核520可包括多个1D FFT处理器。多个1D FFT处理器可执行关于帧的每排的1D FFT。例如,第一核520中包括的1D FFT处理器的数量可为帧的总行数的除数。如果帧的行(排)数为512,第一核520可包括8、16、32或64个1D FFT处理器。如果第一核520包括8个1DFFT处理器,第一核520可同时执行关于8排的1D FFT。
存储器530可储存并输出数据。存储器530可为DRAM或SRAM。
第二核540可执行关于数据的1D FFT。第二核540可包括多个1D FFT处理器。多个1D FFT处理器可执行关于帧的每列的1D FFT。例如,第二核540中包括的1D FFT处理器的数量可为帧的总列数的除数。如果帧的列数为1024,第二核540可包括8、16、32或64个1D FFT处理器。如果第二核540包括8个1D FFT处理器,第二核540可同时执行关于8列的1D FFT。
图6是根据示例实施方式的图像处理设备的框图。参照图6,图像处理设备600可包括第一核610、第一缓冲器620、存储器630、多路分用器640、第二缓冲器650和第二核660。
参照图6,将帧大小为1K×512的情况作为示例进行描述。换言之,当帧的大小为1K×512时,帧的一排包括1K个像素值,帧包括总共512行。也就是说,帧包括1K个列和512行。因而,第一核610中包括的1D FFT处理器为1K点FFT处理器,第二核660中包括的1D FFT处理器为512点FFT处理器。1K点FFT处理器执行关于1024个像素值的傅里叶变换,512点FFT处理器执行关于512个像素值的傅里叶变换。第一核610和第二核660的每一个中包括的处理器的数量都可随输入帧而变化。
第一核610可包括多个1K点FFT处理器。多个1K点FFT处理器可执行关于帧的每排的1D FFT。例如,第一核610可包括32个1K点FFT处理器。1K点FFT处理器0指示第0个处理器,1K点FFT处理器1指示第1个处理器,1K点FFT处理器31指示第31个处理器。1K点FFT处理器0执行关于帧的第一排(或第一行)的傅里叶变换,1K点FFT处理器1执行关于帧的第二排的傅里叶变换,1K点FFT处理器31执行关于帧的第31排的傅里叶变换。
1K点FFT处理器0至1K点FFT处理器31可同时执行关于各排的傅里叶变换并输出中间值。中间值指示通过执行关于帧的傅里叶变换而生成的像素值。
第一缓冲器620顺序储存从第一核610输出的中间值。第一缓冲器620储存从1K点FFT处理器0到1K点FFT处理器31输出的中间值。例如,第一缓冲器620可储存从1K点FFT处理器0到1K点FFT处理器31顺序输出的32个中间值并输出32个中间值至存储器630。首先储存的32个中间值指示中间数据的第一列的像素值。然后,第一缓冲器620可储存从1K点FFT处理器0到1K点FFT处理器31顺序输出的32个中间值,其次储存的32个中间值指示中间值的第二列的像素值。
存储器630可储存中间数据。存储器630顺序储存从第一缓冲器620输出的中间值。虽然已描述了存储器630储存从图6中的第一缓冲器620接收的数据,存储器630可储存从第二核660输出的数据。
多路分用器640从存储器630读取数据并输出读取的数据至第二缓冲器650。多路分用器640以第二核660执行1D FFT的方向读取数据。例如,当第二核660以列方向执行1DFFT时,多路分用器640可以列方向读取存储器630中储存的数据。多路分用器640输出读取的数据至第二缓冲器650。
第二缓冲器650可包括多个缓冲器。每个缓冲器输出数据至第二核660的每个512点FFT处理器。多个缓冲器可储存一排。当第二核660以列方向执行1D FFT时,一个缓冲器可储存一列中包括的数据。因而第二缓冲器650可储存32排。
第二核660可包括多个512点FFT处理器。多个512点FFT处理器可执行关于帧的每排的1D FFT。“512点”指示执行关于帧的512个像素值的1D FFT的处理器。例如,第二核660可包括32个512点FFT处理器。512点FFT处理器0指示第0个处理器,512点FFT处理器1指示第1个处理器,512点FFT处理器31指示第31个处理器。512点FFT处理器0执行关于帧的第一排(或第一行)的傅里叶变换,512点FFT处理器1执行关于帧的第二排的傅里叶变换,512点FFT处理器31执行关于帧的第32排的傅里叶变换。512点FFT处理器0到512点FFT处理器31可同时执行关于各个排的傅里叶变换并输出中间值。中间值指示通过执行关于帧的傅里叶变换生成的像素值,并指示一部分中间数据。
尽管在图6中未示出,图像处理设备600还可包括多个操作器(operator)。多个操作器可执行焦点项操作(focus term operation)和深度求和操作。多个操作器可与第二核660中包括的512点处理器连接,如同第二缓冲器650。一个操作器根据深度计算多个数据的总和。例如,如果深度层级为8,操作器顺序求和所输出的8排以生成一排,从而执行深度求和。
图7是用于描述根据实施方式的数据处理顺序的视图。参照图7,图像处理设备600通过使用两个核610和660执行两次2D FFT,并将深度求和的数据输入至第二核660而不是输入至存储器630,以减少数据储存在存储器630中的次数。
参考图7,将描述一实施例,其中第一核610以行方向执行1D FFT而第二核660以列方向执行1D FFT。
首先,数据输入至第一核610。第一核610以行方向执行关于数据的1D FFT。
其次,第一核610通过第一缓冲器620将1D FFT变换数据输出至存储器630。
第三,第二核660通过多路分用器640和第二缓冲器650以列方向从存储器630读取数据。第二核660执行关于数据的1D FFT。第二核660以列方向执行1D FFT。
第四,第二核660输出数据至操作器670。
第五,操作器670执行聚焦项操作和深度求和操作。
第六,操作器670输出深度求和数据至第二核660。
在图7的实施方式中,当执行初级2D FFT时,第一核610在第二核660之前执行1DFFT。当执行次级2D FFT时,第二核660在第一核610之前执行1D FFT。从操作器670输出的数据为以列方向读取的数据,因此,当数据输出至第二核660时,数据在输出前不需要储存在存储器630中。为了将从操作器670输出的数据输出至第一核610,数据需要以行方向读取,从而使得从操作器670输出的数据在储存在存储器630中之后以行方向读取。因此,通过将从第二核660输出的初级FFT变换数据输入至第二核660,可省略在存储器630中储存初级FFT变换数据的过程。
第七,第二核660以列方向将1D FFT变换数据输出至存储器630。1D FFT变换数据为在次级2D FFT过程中生成的数据。
第八,第一核610从存储器630读取由第二核660经过1D FFT变换的数据。第一核610执行关于读取数据的1D FFT。第一核610以行方向执行1D FFT。
第九,第一核610输出2DFFT变换数据。
图8是用于描述根据另一实施方式的数据处理顺序的视图。参照图8,图像处理设备600通过使用两个核610和660执行两次2D FFT,并且与图7不同,将深度求和数据储存在存储器630中。
参考图8,将描述一实施例,其中第一核610以行方向执行1D FFT而第二核660以列方向执行1D FFT。
首先,数据输入至第一核610。第一核610以行方向执行关于数据的1D FFT。
其次,第一核610将1D FFT变换数据输出至存储器630。
第三,第二核660以列方向从存储器630读取数据。第二核660执行关于读取数据的1D FFT。第二核660以列方向执行1D FFT。
第四,第二核660输出数据至操作器670。
第五,操作器670执行聚焦项操作和深度求和操作。
第六,操作器670输出深度求和数据至存储器630。
第七,第一核610以行方向从存储器630读取数据。第一核610执行关于读取数据的1D FFT。
第八,第一核610输出变换数据至存储器630。
第九,第二核660从存储器630读取由第一核610经过1D FFT变换的数据。第二核660执行关于读取数据的1D FFT。第一核610以列方向执行1D FFT。
第十,第二核660输出2D FFT变换数据。
图9是根据实施方式的输入至第一核的数据的时序示例。第一核610如图9所示地处理数据以减少延迟时间。参考图9,将描述其中第一核610包括8个1D FFT处理器的示例。
参考标记910指示数据序列,参考标记920指示序列910中的具体数据结构。第一FFT可为从瞳孔(pupil)至视网膜(retina)的FFT,第二FFT可为从面板(panel)至瞳孔(pupil)的FFT。F[n]指示第n帧,F[n-1]指示第(n-1)帧。L[0]指示第0排。因此,F[n]L[0]指示第n帧的第0排。当第一核610以行方向执行1D FFT时,L[0]指示第0行。L[0:7]指示从第0排至第7排的排。参考标记911、912和913分别指示在一个时间周期内处理的数据。第n排可包括根据深度级别(depth level)的多个排。例如,如果深度级别为10,L[0]可包括根据深度的10排。
第一核610通过执行时间划分来处理当前帧和先前帧。也就是说,第一核610交替执行关于当前帧的初级FFT和关于先前帧的次级FFT。例如,第一核610可在第一时间周期至第八时间周期内执行关于第n帧的1D FFT,并在第九时间周期内执行关于第(n-1)帧的1DFFT。关于第n帧的1D FFT为初级1D FFT,关于第(n-1)帧的1D FFT为次级1D FFT。
在第一时间周期至第八时间周期(总共八个时间周期)内,第一核610执行第n帧的关于第0排911至第7排912的初级1D FFT。如果第一核610包括8个1D FFT处理器,则第一核610在第一时间周期内执行关于第0深度的第0排921至第7深度的第0排924的初级1D FFT。第一核610在第一时间周期内执行关于一排的8个深度的1D FFT。第一核610在第二时间周期内执行关于第0深度的第1排至第7深度的第1排的初级1D FFT。第一核610在第八时间周期内执行关于第0深度的第7排922至第7深度的第7排925的初级1D FFT。
第一核610在第九时间周期内执行关于第(n-1)帧的第0排923至第7排926的初级1D FFT。第0排923至第7排926为深度求和排。例如,排923可通过关于第0排对第0深度至第7深度数据求和而生成。D[0:7]指示深度求和数据。
如图9所示,第一核610通过时间划分处理关于两个帧的数据以减少完成关于第(n-1)帧的傅里叶变换与完成关于第n帧的傅里叶变换之间的时间。
图10为根据实施方式的输入至第二核的数据的时序示例。第二核660如图10所示地处理数据以减少将数据储存在存储器630中和从存储器630读取数据所需的时间。第二核660交替执行关于当前帧的初级FFT和关于当前帧的次级FFT。参考图10,将描述其中第二核660包括8个1D FFT处理器的示例。
参考标记1010指示数据序列,参考标记1020指示序列1010中具体数据的结构。与第一核610不同,第二核660可执行关于当前帧的1D FFT。
在第一时间周期内,第二核660处理排1021至1022总共8个深度。如果第二核660包括16个1D FFT处理器,则第二核660可在第一时间周期内同时处理共16排。
第二核660在第一时间周期内执行关于第n帧的第0排1011的初级1D FFT。排1011包括排1021至1022总共8个深度。因此,在第一时间周期内,第二核660同时执行关于8排1021至1022的初级1D FFT。
第二核660在第二时间周期内执行关于第n帧的第0排1012的次级1D FFT。第0排1012为深度求和数据并包括一排1023。因此,排1023通过1D FFT处理器处理,其他1D FFT处理器处于空闲状态。
在第一时间周期内对变换数据进行深度求和之后,在第二时间周期内将深度求和的数据输入至第二核660,由此省略数据储存至存储器630和从存储器630读取数据的处理。如果第一核610以行方向执行1D FFT而第二核660以列方向执行1D FFT,由第二核660变换的数据需要在储存在存储器630中之后以行方向读取,以便输入至第一核610,但是由第二核660变换的数据位于相同的列中并因此可输入至第二核660而不储存在存储器630中。
图11是示出根据示例性实施方式的图像处理方法的流程图。参照图11,图像处理设备600可通过第一核610和第二核660执行初级2D FFT和次级2D FFT。第一核610可以行方向执行1D FFT,第二核660可以列方向执行1D FFT。在另一示例性实施方式中,第一核610可以列方向执行1D FFT,第二核660可以行方向执行1D FFT。
在操作1110中,第一核610和第二核660可执行关于图像数据的初级2D FFT和次级2D FFT。第一核610可执行关于图像数据的初级1D FFT,第二核660可执行关于由第一核610变换的数据的初级1D FFT。
第一核610可以行方向读取图像数据并执行关于以行方向读取的各排的1D FFT。由第一核610变换的数据可储存在存储器630中并可由控制器510以列方向读取。控制器510可输入读取数据至第二核660。第二核660可执行关于以列方向读取的各排的1D FFT。
在操作1120中,图像处理设备600可执行关于初级2D FFT变换数据的聚焦项操作和深度求和操作。初级2D FFT变换数据为帧的列方向中的数据并可从第二核660输出。
在操作1130中,第一核610和第二核660可执行关于深度求和数据的次级2D FFT。第二核660可执行关于深度求和数据的1D FFT。从第二核660输出的数据可储存在存储器630中。控制器510可读取从第二核660输出的储存在存储器630中的数据。控制器510可在第一核610中输入读取数据。第一核610可执行关于输入数据的1D FFT。
根据本公开,可通过使用少数核执行傅里叶变换。
数据处理顺序可受控制以防止傅里叶变换之后的数据处理过程被延迟。
根据本公开的设备可为处理器、用于储存并执行程序数据的存储器、永久存储体例如磁盘驱动器、用于与外部装置通信的通信端口、以及用户接口装置如触摸板、键盘、按键等。通过软件模块或算法实现的方法可储存为计算机可读存储介质上的计算机可读编码或可在处理器上执行的程序指令。计算机可读存储介质的示例可包括磁性存储介质(例如只读存储器(ROM)、随机存取存储器(RAM)、软盘、硬盘等)和光学介质(例如压缩盘-ROM(CD-ROM)多媒体光盘(DVD)等)等。计算机可读存储介质可分布在耦合计算机系统的网络中,以使得计算机可读编码以分布的方式储存并执行。介质可由计算机读取、储存在存储器中并由处理器执行。
本公开可通过块部件和多个处理操作呈现。上述功能块可通过执行具体功能的多个硬件和/或软件部件实现。例如,本公开可采用多个集成电路部件例如存储元件、处理元件、逻辑元件、查找表等,其可在一个或多个微处理器或其他控制装置的控制下实现多种功能。类似地,其中本公开的元件通过使用软件程序或软件元件实现的,本公开可通过任何编程或脚本语言例如C、C++、Java、汇编程序等实现,可通过以数据结构、对象、过程、例程或其他程序元素的任何组合实现的多种算法实现。功能方面可实现为在一个或多个处理器中执行的算法。此外,本公开可采用任意数量的常规技术用于电子配置、信号处理和/或控制、数据处理等。概括地使用术语“机制”、“元件”、“装置”或“部件”并且其不限于机械或物理实施方式。术语可包括一系列软件程序连同处理器等。
当前实施方式中描述的特定执行仅为示例,并且不用任何方法限制技术范围。为简洁起见,常规电子器件、控制系统、软件开发和系统的其他功能方面可不进行详细描述。此外,在呈现的多个附图中示出的连接线或连接器旨在表示多个元件之间的示例性功能关系和/或物理或逻辑耦合。
在本公开中(特别地,在权利要求中),“the”和其他类似指示词的使用可相当于单数和复数形式。此外,如果本公开中描述了一个范围,则该范围必须被视为包括采取范围内任何单个元件的发明(除非有相反描述),并且,其必须被视为将包括在范围内的各个单个元件写入本公开的详细描述。操作可以合适的顺序执行,除非已明确提出或描述了方法的操作顺序。操作顺序不限于提出的操作顺序。所有示例或示例性术语的使用(例如“等(etc.)”、“等(and(or)the like)”和“等(and so forth)”)仅旨在详细描述技术精神,但其范围不必须由示例或示例性术语限制,除非在权利要求中明确限定。此外,本领域技术人员可理解,本公开可根据设计条件和因素通过多种修改、组合和更改配置,而不背离本公开及其等同物的精神和技术范围。
可以理解,本文描述的示例性实施方式应视为仅为描述意义上的而不用于限制目的。各个示例性实施方式中的特征或方面描述通常应被视为可用于其他实施方式中的其他类似特征或方面。
虽然参照附图描述了一个或多个示例性实施方式,但本领域技术人员可理解,可在其中进行形式和细节的多个改变而不背离由所附权利要求限定的精神和范围。

Claims (13)

1.一种图像处理设备,配置为执行关于图像数据的二维2D快速傅里叶变换FFT,所述图像处理设备包括:
第一核和第二核,所述第一核和所述第二核中每一个包括配置为执行一维1D FFT的多个处理器;
存储器,配置为储存从所述第一核和所述第二核输出的数据;
控制器,配置为控制所述第一核和所述第二核通过重复执行所述1D FFT执行关于图像数据的初级2D FFT和次级2D FFT,其中所述图像处理设备还包括:
多个操作器,所述多个操作器配置为通过对由所述第一核和所述第二核生成的初级2DFFT变换的图像数据执行聚焦项操作、以及将经过执行聚焦项操作的数据布置为具有预定的深度级别的多个排并且对所述多个排的子集顺序求和,来生成深度求和图像数据,其中所述子集中包括的排的数量等于预定的深度级别,
其中所述控制器配置为将所述深度求和图像数据储存在所述存储器中,从所述存储器读取所述深度求和图像数据,以及将所读取的数据输入至所述第一核,或者其中所述控制器配置为将所述深度求和图像数据输入至所述第二核,从而在所述深度求和图像数据输入至所述第二核时,省略将所述深度求和图像数据储存在所述存储器中和从所述存储器读取所述深度求和图像数据的过程。
2.如权利要求1所述的图像处理设备,其中所述第一核配置为交替执行关于所述图像数据的当前帧的初级2D FFT和关于所述当前帧的次级2DFFT。
3.如权利要求1所述的图像处理设备,其中所述第二核配置为交替执行关于所述图像数据的当前帧的初级2D FFT和关于所述当前帧的次级2DFFT。
4.如权利要求1所述的图像处理设备,其中所述第一核配置为沿行方向执行所述1DFFT,所述第二核配置为沿列方向执行所述1D FFT。
5.如权利要求1所述的图像处理设备,其中所述第一核配置为以列方向执行所述1DFFT,所述第二核配置为以行方向执行所述1D FFT。
6.一种执行关于图像数据的二维2D快速傅里叶变换FFT的图像处理方法,包括:
由第一核和第二核通过重复执行一维1D FFT,来执行关于所述图像数据的初级2DFFT,以生成初级2D FFT变换的数据,所述第一核和所述第二核每个包括配置为执行1D FFT的多个处理器;
存储从所述第一核输出的数据;
存储从所述第二核输出的数据;以及
由所述第一核和所述第二核通过重复执行一维1D FFT,来执行关于所述图像数据的次级2D FFT,以生成次级2D FFT变换的数据,其中所述方法还包括:
使用多个操作器,通过对由所述第一核和所述第二核生成的初级2DFFT变换的图像数据执行聚焦项操作、以及将经过执行聚焦项操作的数据布置为具有预定的深度级别的多个排并且对所述多个排的子集顺序求和,来生成深度求和图像数据,其中所述子集中包括的排的数量等于预定的深度级别,
其中,对于所述第一核,所述深度求和图像数据储存在存储器中、从所述存储器中读取、和输入至所述第一核,或者,对于所述第二核,所述深度求和图像数据输入至所述第二核,从而在所述深度求和图像数据输入至所述第二核时,省略将所述深度求和图像数据储存在所述存储器中和从所述存储器读取所述深度求和图像数据的过程。
7.如权利要求6所述的图像处理方法,其中执行所述2D FFT包括:
通过对由所述第一核和所述第二核生成的初级2D FFT变换的图像数据执行聚焦项操作、以及将经过执行聚焦项操作的数据布置为具有预定的深度级别的多个排并且对所述多个排的子集顺序求和,来生成深度求和图像数据,其中所述子集中包括的排的数量等于预定的深度级别;
输入所述深度求和图像数据至所述第二核,并且由所述第二核执行关于所述深度求和图像数据的一维1DFFT以生成1D FFT变换数据;
在存储器中储存由所述第二核生成的所述1D FFT变换的数据;以及
从所述存储器读取所储存的数据,输入所读取的数据至所述第一核,并且由所述第一核执行关于所输入的数据的1D FFT。
8.如权利要求6所述的图像处理方法,其中执行所述2D FFT包括:
通过对由所述第一核和所述第二核生成的初级2D FFT变换的图像数据执行聚焦项操作、以及将经过执行聚焦项操作的数据布置为具有预定的深度级别的多个排并且对所述多个排的子集顺序求和,来生成深度求和图像数据,其中所述子集中包括的排的数量等于预定的深度级别;
在存储器中储存所述深度求和图像数据;
从所述存储器读取所述深度求和图像数据,输入所读取的数据至所述第一核,并且由所述第一核执行关于所输入的数据的1D FFT以生成1D FFT变换的数据;
在存储器中储存由所述第一核生成的所述1D FFT变换的数据;以及
从所述存储器读取所储存的数据,输入所读取的数据至所述第二核,并且由所述第二核执行关于所输入的数据的1D FFT。
9.如权利要求6所述的图像处理方法,还包括:由所述第一核交替执行关于所述图像数据的当前帧的初级2D FFT和关于所述当前帧的次级2DFFT。
10.如权利要求6所述的图像处理方法,还包括:由所述第二核交替执行关于所述图像数据的当前帧的初级2D FFT和关于所述当前帧的次级2DFFT。
11.如权利要求6所述的图像处理方法,其中所述第一核沿行方向执行所述一维1DFFT,所述第二核沿列方向执行所述1D FFT。
12.如权利要求6所述的图像处理方法,其中所述第一核沿列方向执行所述一维1DFFT,所述第二核沿行方向执行所述1D FFT。
13.一种非暂时性计算机可读记录介质,其上记录有运行时使图像处理设备执行如权利要求6-12中的任一所述的图像处理方法的程序。
CN201710645705.2A 2016-08-31 2017-08-01 图像处理方法和设备 Active CN107783933B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020160111683A KR102654862B1 (ko) 2016-08-31 2016-08-31 영상 처리 방법 및 장치
KR10-2016-0111683 2016-08-31

Publications (2)

Publication Number Publication Date
CN107783933A CN107783933A (zh) 2018-03-09
CN107783933B true CN107783933B (zh) 2024-01-09

Family

ID=59702512

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710645705.2A Active CN107783933B (zh) 2016-08-31 2017-08-01 图像处理方法和设备

Country Status (4)

Country Link
US (1) US10275849B2 (zh)
EP (1) EP3296886A1 (zh)
KR (1) KR102654862B1 (zh)
CN (1) CN107783933B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102452945B1 (ko) * 2015-08-27 2022-10-11 삼성전자주식회사 푸리에 변환을 수행하는 방법 및 장치
US20210227173A1 (en) * 2019-01-04 2021-07-22 Beijing Boe Optoelectronics Technology Co., Ltd. Image data processing method, data transmission apparatus, image display method and storage medium
US11747767B2 (en) * 2019-03-19 2023-09-05 Samsung Electronics Co., Ltd. Method and apparatus for processing three-dimensional holographic image
GB2598310B (en) * 2020-08-24 2022-10-12 Dualitas Ltd Data processing

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5089982A (en) * 1990-05-24 1992-02-18 Grumman Aerospace Corporation Two dimensional fast Fourier transform converter
CN101174258A (zh) * 2006-11-01 2008-05-07 冲电气工业株式会社 二维快速傅里叶变换运算方法和运算装置
CN101310225A (zh) * 2005-09-16 2008-11-19 蓝光光学有限公司 使用全息图显示图像的方法及设备
CN101763338A (zh) * 2010-01-08 2010-06-30 浙江大学 一种点数可变的混合基fft/ifft实现装置及其方法
JP2013054068A (ja) * 2011-08-31 2013-03-21 National Institute Of Information & Communication Technology ホログラム生成装置およびホログラム生成方法
CN105488753A (zh) * 2015-11-27 2016-04-13 武汉精测电子技术股份有限公司 一种对图像进行二维傅立叶变换或反变换的方法及装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1110155A1 (en) * 1998-09-03 2001-06-27 Conexant Systems, Inc. A method of frequency domain filtering employing a real to analytic transform
JP2004206254A (ja) 2002-12-24 2004-07-22 Mega Chips Corp フーリエ変換装置、フーリエ変換方法、計算機ホログラム生成装置及び計算機ホログラム生成方法、並びに回折光学素子の製造装置
JP5488781B2 (ja) 2009-01-23 2014-05-14 大日本印刷株式会社 計算機合成ホログラムの再生シミュレーション方法、計算機合成ホログラム作製方法及び計算機合成ホログラム
US8539201B2 (en) * 2009-11-04 2013-09-17 International Business Machines Corporation Transposing array data on SIMD multi-core processor architectures
JP2012018545A (ja) 2010-07-07 2012-01-26 Mitsubishi Electric Corp 演算割当装置、演算割当方法及び演算割当プログラム
JP2012247891A (ja) * 2011-05-26 2012-12-13 Sony Corp 画像処理装置、画像処理方法、およびプログラム
ITTO20120417A1 (it) * 2012-05-09 2013-11-10 St Microelectronics Srl Procedimento e dispositivi per elaborare segnali radar, ad esempio per sistemi di sicurezza stradale, relativo prodotto informatico
KR101366116B1 (ko) * 2012-10-31 2014-02-24 전자부품연구원 Fft 병렬 처리 방법, 이를 적용한 데이터 처리 방법 및 홀로그램 복원 장치
KR20140125608A (ko) 2013-04-19 2014-10-29 엘지전자 주식회사 홀로그램 디스플레이 장치 및 방법
KR20150009369A (ko) * 2013-07-16 2015-01-26 삼성디스플레이 주식회사 영상 처리 장치 및 영상 처리 방법
KR102224718B1 (ko) 2014-08-06 2021-03-08 삼성전자주식회사 홀로그램 생성 방법 및 장치
KR102464363B1 (ko) 2015-09-30 2022-11-07 삼성전자주식회사 푸리에 변환을 수행하는 방법 및 장치

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5089982A (en) * 1990-05-24 1992-02-18 Grumman Aerospace Corporation Two dimensional fast Fourier transform converter
CN101310225A (zh) * 2005-09-16 2008-11-19 蓝光光学有限公司 使用全息图显示图像的方法及设备
CN101174258A (zh) * 2006-11-01 2008-05-07 冲电气工业株式会社 二维快速傅里叶变换运算方法和运算装置
CN101763338A (zh) * 2010-01-08 2010-06-30 浙江大学 一种点数可变的混合基fft/ifft实现装置及其方法
JP2013054068A (ja) * 2011-08-31 2013-03-21 National Institute Of Information & Communication Technology ホログラム生成装置およびホログラム生成方法
CN105488753A (zh) * 2015-11-27 2016-04-13 武汉精测电子技术股份有限公司 一种对图像进行二维傅立叶变换或反变换的方法及装置

Also Published As

Publication number Publication date
KR102654862B1 (ko) 2024-04-05
CN107783933A (zh) 2018-03-09
KR20180024805A (ko) 2018-03-08
EP3296886A1 (en) 2018-03-21
US10275849B2 (en) 2019-04-30
US20180060997A1 (en) 2018-03-01

Similar Documents

Publication Publication Date Title
CN107783933B (zh) 图像处理方法和设备
US10321159B2 (en) Apparatus and method of performing fourier transform
EP3196773A2 (en) Directional backlight unit, three-dimensional (3d) image display apparatus, and 3d image displaying method
US11727659B2 (en) Method and apparatus for processing three-dimensional (3D) image
US10223763B2 (en) Apparatus and method for performing fourier transform
US10901367B2 (en) Image data processing method and apparatus
US10545328B2 (en) Method and apparatus for processing image
CN109873999B (zh) 图像数据处理方法和装置
US10996627B2 (en) Image data processing method and apparatus
CN111800621A (zh) 用于处理全息图图像数据的方法和设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant