CN101669142A - A technique for adjusting the effect of applying a kernel to a signal to achieve the desired effect on the signal - Google Patents
A technique for adjusting the effect of applying a kernel to a signal to achieve the desired effect on the signal Download PDFInfo
- Publication number
- CN101669142A CN101669142A CN200880013422A CN200880013422A CN101669142A CN 101669142 A CN101669142 A CN 101669142A CN 200880013422 A CN200880013422 A CN 200880013422A CN 200880013422 A CN200880013422 A CN 200880013422A CN 101669142 A CN101669142 A CN 101669142A
- Authority
- CN
- China
- Prior art keywords
- signal
- matrix
- kernel
- image
- effect
- 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.)
- Granted
Links
- 230000000694 effects Effects 0.000 title claims abstract description 124
- 238000000034 method Methods 0.000 title claims abstract description 91
- 239000011159 matrix material Substances 0.000 claims abstract description 149
- 238000012545 processing Methods 0.000 claims abstract description 80
- 230000003287 optical effect Effects 0.000 claims abstract description 23
- 230000033001 locomotion Effects 0.000 claims description 84
- 230000006870 function Effects 0.000 claims description 30
- 230000008569 process Effects 0.000 claims description 26
- 238000004364 calculation method Methods 0.000 claims description 22
- 238000003708 edge detection Methods 0.000 claims description 15
- 230000004075 alteration Effects 0.000 claims description 14
- 238000013519 translation Methods 0.000 claims description 8
- 238000005315 distribution function Methods 0.000 claims description 3
- 230000003631 expected effect Effects 0.000 claims description 3
- 238000004891 communication Methods 0.000 description 22
- 239000013598 vector Substances 0.000 description 21
- 238000010586 diagram Methods 0.000 description 15
- 238000012937 correction Methods 0.000 description 12
- 230000004044 response Effects 0.000 description 10
- 238000004422 calculation algorithm Methods 0.000 description 9
- 239000003086 colorant Substances 0.000 description 7
- 238000013459 approach Methods 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 5
- 238000011144 upstream manufacturing Methods 0.000 description 5
- 230000002902 bimodal effect Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 4
- 230000001419 dependent effect Effects 0.000 description 4
- 230000002708 enhancing effect Effects 0.000 description 4
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 3
- 230000003321 amplification Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000003384 imaging method Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000003199 nucleic acid amplification method Methods 0.000 description 3
- 229910052710 silicon Inorganic materials 0.000 description 3
- 239000010703 silicon Substances 0.000 description 3
- 230000005236 sound signal Effects 0.000 description 3
- 125000003580 L-valyl group Chemical group [H]N([H])[C@]([H])(C(=O)[*])C(C([H])([H])[H])(C([H])([H])[H])[H] 0.000 description 2
- 238000003705 background correction Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000005286 illumination Methods 0.000 description 2
- 238000004091 panning Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000007619 statistical method Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000010516 chain-walking reaction Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000005670 electromagnetic radiation Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000003707 image sharpening Methods 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/20—Image enhancement or restoration using local operators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/73—Deblurring; Sharpening
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/90—Dynamic range modification of images or parts thereof
- G06T5/94—Dynamic range modification of images or parts thereof based on local image properties, e.g. for local contrast enhancement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/50—Constructional details
- H04N23/54—Mounting of pick-up tubes, electronic image sensors, deviation or focusing coils
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/68—Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
- H04N23/681—Motion detection
- H04N23/6811—Motion detection based on the image signal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/68—Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
- H04N23/682—Vibration or motion blur correction
- H04N23/683—Vibration or motion blur correction performed by a processor, e.g. controlling the readout of an image memory
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/80—Camera processing pipelines; Components thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/80—Camera processing pipelines; Components thereof
- H04N23/84—Camera processing pipelines; Components thereof for processing colour signals
- H04N23/843—Demosaicing, e.g. interpolating colour pixel values
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N25/00—Circuitry of solid-state image sensors [SSIS]; Control thereof
- H04N25/10—Circuitry of solid-state image sensors [SSIS]; Control thereof for transforming different wavelengths into image signals
- H04N25/11—Arrangement of colour filter arrays [CFA]; Filter mosaics
- H04N25/13—Arrangement of colour filter arrays [CFA]; Filter mosaics characterised by the spectral characteristics of the filter elements
- H04N25/134—Arrangement of colour filter arrays [CFA]; Filter mosaics characterised by the spectral characteristics of the filter elements based on three different wavelength filter elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N25/00—Circuitry of solid-state image sensors [SSIS]; Control thereof
- H04N25/60—Noise processing, e.g. detecting, correcting, reducing or removing noise
- H04N25/61—Noise processing, e.g. detecting, correcting, reducing or removing noise the noise originating only from the lens unit, e.g. flare, shading, vignetting or "cos4"
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20172—Image enhancement details
- G06T2207/20192—Edge enhancement; Edge preservation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20172—Image enhancement details
- G06T2207/20201—Motion blur correction
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Processing (AREA)
- Television Receiver Circuits (AREA)
Abstract
Description
技术领域 technical field
本发明涉及数字信号处理。特别是,本发明的实施方式涉及修改当应用核心矩阵来处理信号数据时取得的效果,以便取得预期效果。The present invention relates to digital signal processing. In particular, embodiments of the invention relate to modifying the effect achieved when applying a kernel matrix to process signal data in order to achieve a desired effect.
背景技术 Background technique
在数字成像中,通过校正诸如光学模糊、光学畸变、色差、场曲等之类的光学象差,去卷积有时用来创建更优质的图像,所述光学像差发生在诸如数字照相机之类的成像仪器中。定义去卷积的数学运算是与卷积中执行的数学运算相同的数学运算-称其为去卷积的理由是其用于校正或补偿由卷积施加在图像上的效果的上下文中。换句话说,使用去卷积-以这种方式-是基于下列事实的:当图像信号通过成像仪器时,可将输出信号描述为图像信号与称作点扩展函数(PSF)的2D函数之间的卷积。举光学模糊为例,PSF根据电磁辐射的点源穿过仪器的轨迹来描述光学模糊,即单个光点如何通过光学系统成像。PSF卷积的结果是所采集的图像信号比对象本身更模糊(并且还可能失真,和/或包含色差)。为了补偿这种模糊,可执行去卷积过程,其中图像信号与2D函数卷积,所述2D函数的目标是产生不模糊的图像。该2D函数经常是所述PSF的倒数(或者PSF的倒数的变体),在某种程度上其抵消了PSF所引入的模糊。In digital imaging, deconvolution is sometimes used to create better quality images by correcting optical aberrations such as optical blur, optical distortion, chromatic aberration, curvature of field, etc. in imaging instruments. The mathematical operation that defines deconvolution is the same mathematical operation that is performed in convolution - the reason it is called deconvolution is in the context of correcting or compensating for the effects imposed on an image by convolution. In other words, using deconvolution - in this way - is based on the fact that when an image signal passes through an imaging instrument, the output signal can be described as the difference between the image signal and a 2D function called the point spread function (PSF). the convolution. Taking optical blur as an example, PSF describes optical blur, that is, how a single point of light is imaged by an optical system, in terms of the trajectory of a point source of electromagnetic radiation through an instrument. The result of PSF convolution is that the acquired image signal is blurrier (and may also be distorted, and/or contain chromatic aberration) than the object itself. To compensate for this blurring, a deconvolution process can be performed, in which the image signal is convolved with a 2D function whose goal is to produce an unblurred image. This 2D function is often the inverse of the PSF (or a variant of the inverse of the PSF), to the extent that it counteracts the blur introduced by the PSF.
2D去卷积可用软件(SW)或硬件(HW)在图像的数字表示上在数字域中执行。核心矩阵通常用作2D去卷积滤波器,其特征在于所希望的频率响应。为了补偿PSF模糊并增强图像对比度,该核心矩阵与信号矩阵(所述2D图像)卷积。为了该滤波器增强对比度,它应拥有带通滤波器(BPF)或高通滤波器(HPF)的频率响应,从而使其以将要求频率中的对比度增强到指定水平的方式匹配所述PSF。2D deconvolution can be performed in the digital domain with software (SW) or hardware (HW) on the digital representation of the image. Kernel matrices are often used as 2D deconvolution filters, characterized by a desired frequency response. To compensate for PSF blur and enhance image contrast, this kernel matrix is convolved with the signal matrix (the 2D image). For the filter to enhance contrast, it should have a bandpass filter (BPF) or highpass filter (HPF) frequency response such that it matches the PSF in a way that enhances contrast in the desired frequencies to a specified level.
除了增强图像中的对比度之外,通过将具有低通频率响应(LPF)的核心应用于所述图像,相同的卷积运算可用来降低图像中的噪声,平均所述噪声。当执行这样的去噪运算时,应注意不要损害信号的对比度。In addition to enhancing contrast in an image, the same convolution operation can be used to reduce noise in an image by applying a kernel with a low-pass frequency response (LPF) to the image, averaging the noise. When performing such denoising operations, care should be taken not to compromise the contrast of the signal.
通常,增强图像的去卷积过程是数码相机中(用SW或HW)运行的图像信号处理(ISP)链的一部分。图像上这一系列的数学运算将其从CMOS/CCD传感器(用例如“BAYER”格式)输出的“RAW”格式图像(有时称为“NEF”图像)转换成浏览及保存的最终图像(例如,JPEG图像、TIFF图像等)。在所述ISP链之内,在执行去马赛克(颜色插值)之后、或在去马赛克之前,可将所述去卷积滤波器应用于所述图像。前一种方法使滤波器影响图像中的最大可能频率(逐像素);然而,为了覆盖大的空间支持,所述2D核心应具有许多系数。后一种方法暗示在图像仍处于BAYER格式时(在颜色插值之前),应用滤波器。后一种方法具有用较少的系数覆盖较大的空间支持的优势,但滤波器仅可影响较低的频率。由于对于大多数光学设计来说,为了去卷积有效,核心的尺寸应与PSF的尺寸大致相同(按像素),因此补偿大PSF要求足够大的空间支持用于去卷积核心,并因而需要许多系数(这意味着更多的存储器和数学计算)。由于如果将太小的核心应用于被大PSF模糊的图像,则在处理后可能保留了不在预期内的伪像,因此这可能是在去马赛克过程之前将所述去卷积核心应用于BAYER图像的主要原因。Typically, the deconvolution process to enhance an image is part of the image signal processing (ISP) chain running in a digital camera (with SW or HW). This series of mathematical operations on the image converts it from a "RAW" format image (sometimes called a "NEF" image) output by a CMOS/CCD sensor (in e.g. "BAYER" format) to a final image that is viewed and saved (e.g., JPEG images, TIFF images, etc.). Within the ISP chain, the deconvolution filter may be applied to the image after performing demosaicing (color interpolation), or before demosaicing. The former approach makes the filter affect the maximum possible frequency in the image (pixel by pixel); however, in order to cover a large spatial support, the 2D kernel should have many coefficients. The latter method implies that the filter is applied while the image is still in BAYER format (before color interpolation). The latter approach has the advantage of covering a larger spatial support with fewer coefficients, but the filter affects only lower frequencies. Since for most optical designs, for deconvolution to be effective, the size of the kernel should be roughly the same size (in pixels) as the PSF, compensating for a large PSF requires a large enough space to support the deconvolution kernel, and thus requires Many coefficients (which means more memory and math calculations). Since if too small a kernel is applied to an image blurred by a large PSF, undesired artifacts may remain after processing, this may be the result of applying said deconvolution kernel to the BAYER image before the demosaicing process the main reason.
当将具有HPF/BPF频率响应的去卷积滤波器应用于图像可能导致对比度增大时,亦可能不适宜地放大噪声。当信噪比(S/N)好时,很少注意到这种噪声放大,在可造成低S/N的恶劣光照条件下,要极其注意这种噪声放大。不幸地,在不考虑图像中已有噪声数量的情况下应用所述去卷积核心,可能导致噪声更大的图像。Noise may also be undesirably amplified when applying a deconvolution filter with a HPF/BPF frequency response to an image may result in an increase in contrast. This noise amplification is seldom noticed when the signal-to-noise ratio (S/N) is good, and is extremely noticeable under harsh lighting conditions that can result in low S/N. Unfortunately, applying the deconvolution kernel without considering the amount of noise already in the image may result in a noisier image.
可采用去噪算法来降低由于应用去卷积核心而导致的不想要的噪声放大。然而,在去卷积过程已经放大了图像中的噪声之后应用去噪算法,可能需要执行强去噪(strong de-noising),这可能导致图像中具有精细细节的区域中不想要的数据损失。此外,应用强去噪仍不会移除全部噪声。Denoising algorithms may be employed to reduce unwanted noise amplification due to application of deconvolution kernels. However, applying a denoising algorithm after the deconvolution process has amplified the noise in the image may require performing strong de-noising, which may lead to unwanted data loss in areas of the image with fine details. Also, applying strong denoising still does not remove all the noise.
本节所描述的方法是可推行的方法,但不一定是早先已构思或推行的方法。因此,除非另有说明,否则不应仅凭借他们包含在本节就假设本节所描述的方法是现有技术。The approaches described in this section are ones that could be pursued, but not necessarily ones that have been previously conceived or pursued. Therefore, unless otherwise indicated, it should not be assumed that the approaches described in this section are prior art solely by virtue of their inclusion in this section.
附图说明 Description of drawings
在附图的图形中,通过举例来说明本发明,而不是通过限制来说明,其中相同的附图标记指代类似的元件,并且其中:The invention is illustrated by way of example and not by way of limitation in the figures of the accompanying drawings, in which like reference numerals refer to similar elements, and in which:
图1a描绘了没有数字自动聚焦方框的ISP链;Figure 1a depicts the ISP chain without the digital autofocus box;
图1b描绘了根据实施方式具有用于数字自动聚焦方框的可能位置的ISP链;Figure 1b depicts an ISP chain with possible locations for digital autofocus blocks according to an embodiment;
图1c描绘了根据实施方式具有用于数字自动聚焦方框的另一可能位置的ISP链;Figure 1c depicts an ISP chain with another possible location for a digital autofocus block according to an embodiment;
图2描绘了一幅根据实施方式说明一种用于更新核心矩阵以及用所述更新核心矩阵处理图像数据的示例性系统的方框图;2 depicts a block diagram illustrating an exemplary system for updating a kernel matrix and processing image data with the updated kernel matrix, according to an embodiment;
图3示出了一种根据实施方式用于更新核心的示例性等式;Figure 3 shows an exemplary equation for updating a core according to an embodiment;
图4描绘了一幅系统方框图,其中“阴影指示符”用于修改卷积核心;Figure 4 depicts a system block diagram in which "shading indicators" are used to modify convolution cores;
图5描绘了一副示例性镜头阴影轮廓的图;Figure 5 depicts a diagram of an exemplary lens shadow profile;
图6描绘了一个根据实施方式用于基于阴影参数更新核心的等式;FIG. 6 depicts an equation for updating cores based on shadow parameters, according to an embodiment;
图7描绘了一副根据实施方式的系统方框图,其中卷积方框中的核心更新逻辑使用了“度量(metric)”来修改核心;Figure 7 depicts a system block diagram in which the core update logic in the convolution block uses a "metric" to modify the core, according to an embodiment;
图8示出了一副示例性bayer图像,其具有红色(R)、蓝色(B)和绿色(G)像素;Figure 8 shows an exemplary bayer image with red (R), blue (B) and green (G) pixels;
图9a说明了用于图像窗口的数据;Figure 9a illustrates data for an image window;
图9B说明了图9A中数据的直方图;Figure 9B illustrates a histogram of the data in Figure 9A;
图10A说明了单峰直方图;Figure 10A illustrates a single peak histogram;
图10B说明了双峰直方图;Figure 10B illustrates a bimodal histogram;
图11描绘了一个根据实施方式用于基于度量更新核心的等式;Figure 11 depicts an equation for updating a core based on a metric, according to an embodiment;
图12是一副根据实施方式说明了用于调整核心效果的大小的过程的流程图;Figure 12 is a flowchart illustrating a process for resizing a core effect, according to an embodiment;
图13是一副示例性移动设备图,在该移动设备上可实施本发明的实施方式;Figure 13 is a diagram of an exemplary mobile device on which embodiments of the present invention may be implemented;
图14是一副示例性计算机系统图,在该计算机系统设备上可实施本发明的实施方式;Figure 14 is a diagram of an exemplary computer system on which embodiments of the present invention may be implemented;
图15是一副根据实施方式的图,其描绘了一个用于确定参数来基于图像特征修改核心的曲线;15 is a graph depicting a graph for determining parameters to modify a kernel based on image features, according to an embodiment;
图16是一副根据实施方式用于处理信号的系统的方框图;Figure 16 is a block diagram of a system for processing signals according to an embodiment;
图17描绘了根据实施方式校正运动模糊;Figure 17 depicts correcting motion blur according to an embodiment;
图18描绘了根据实施方式校正运动平移;Figure 18 depicts correcting motion translation according to an embodiment;
图19是一副根据实施方式的方框图,该图描绘了一种用于至少基于阴影参数调整核心处理的强度的系统;19 is a block diagram depicting a system for adjusting the intensity of core processing based at least on shading parameters, according to an embodiment;
图20是一副根据实施方式的方框图,该图描绘了一种用于至少基于邻域像素的特征调整核心处理的强度的系统;20 is a block diagram illustrating a system for adjusting the intensity of core processing based at least on characteristics of neighboring pixels, according to an embodiment;
图21描绘了一种根据实施方式的技术,在该技术中根据一个或多个参数更新核心;Figure 21 depicts a technique in which a core is updated according to one or more parameters, according to an embodiment;
图22描绘了一种根据实施方式的技术,在该技术中将“缩放”应用于未经修改的核心的卷积结果;Figure 22 depicts a technique, in accordance with an embodiment, in which "scaling" is applied to the convolution result of an unmodified kernel;
图23描绘了一种根据实施方式用于基于距离计算信息度量的技术;和Figure 23 depicts a technique for computing information metrics based on distance, according to an embodiment; and
图24描绘了根据实施方式的分离增益函数。Figure 24 depicts a separation gain function according to an embodiment.
具体实施方式 Detailed ways
在下列描述中,出于解释的目的,为了全面理解本发明,阐述了众多具体细节。然而,很明显,在没有这些具体细节的情况下也可以实施本发明。在其它实例中,为了避免不必要地模糊本发明,在方框图表格中示出了熟知的结构和设备。In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the invention. It is apparent, however, that the invention may be practiced without these specific details. In other instances, well-known structures and devices are shown in block diagram form in order to avoid unnecessarily obscuring the present invention.
本文根据下列概要来描述实施方式:Embodiments are described herein according to the following outline:
1.0 综述1.0 Overview
2.0 图像信号处理链实施例2.0 Embodiment of image signal processing chain
3.0 卷积综述3.0 Overview of Convolution
4.0 基于预期效果的大小来调整核心效果的综述4.0 Overview of Adjusting Core Effects Based on Expected Effect Size
4.1 过程综述4.1 Process overview
4.2 通过更新核心来调整核心效果的综述4.2 Overview of adjusting core effects by updating the core
4.3 通过修改卷积结果来调整核心效果的综述4.3 Overview of adjusting core effects by modifying convolution results
5.0 基于多种因素调整核心效果5.0 Adjust core effects based on multiple factors
5.1 基于S/N图形调整核心效果5.1 Adjust core effects based on S/N graphics
5.2 根据空间位置调整核心效果5.2 Adjust the core effect according to the spatial position
5.3 根据局部图像特征调整核心效果5.3 Adjust the core effect according to the local image characteristics
6.0 根据实施方式调整核心效果以处理运动模糊6.0 Adjust Core Effects to handle motion blur depending on implementation
6.1 校正运动模糊综述6.1 Overview of Correcting Motion Blur
6.2 模糊点分布函数实施方式6.2 Implementation of fuzzy point distribution function
6.3 运动移位矢量实施方式6.3 Motion shift vector implementation
6.4 组合锐化及运动模糊核心6.4 Combining sharpening and motion blur cores
8.0 硬件综述8.0 Hardware Overview
8.1 移动设备实施例8.1 Mobile Device Embodiment
8.2 计算机系统实施例8.2 Computer System Embodiment
1.0 综述1.0 Overview
本文公开了用于处理信号数据的技术。所述信号数据可由多种不同的信号矩阵表示,每个矩阵表示所述信号的不同部分。例如,每个信号矩阵可包括对应于图像传感器中的一组像素的元。然而,所述信号可以是例如音频数据或其它信号数据,而不是图像数据。至少根据一个核心矩阵来处理给定信号矩阵,从而取得某种预期效果。更特别地,为了取得所述大小的预期效果,调整预期效果的大小,所述预期效果是由于根据核心矩阵处理所述信号矩阵而取得的。Techniques for processing signal data are disclosed herein. The signal data may be represented by a number of different signal matrices, each matrix representing a different portion of the signal. For example, each signal matrix may include elements corresponding to a group of pixels in the image sensor. However, the signal may be eg audio data or other signal data instead of image data. A given signal matrix is processed according to at least one core matrix to achieve some desired effect. More particularly, the size of the desired effect is adjusted in order to obtain the desired effect of said size, said desired effect being obtained due to processing said signal matrix according to the kernel matrix.
在一种实施方式中,在将经修改的核心矩阵应用于信号数据之前,所述应用于信号数据的核心矩阵根据将在后续章节中列出的一个或多个参数进行了一次或多次的修改。根据所述一个或多个参数来修改所述核心矩阵允许取得所述大小的预期效果。在另一种实施方式中,利用未修改的核心和一些其他值(一个或多个),包括但不限于输入图像中的初始像素值,某一像素的最终处理结果可能是去卷积结果的加权和。每个被求和的值的权可根据将在后续章节列出的若干参数进行修改。所述修改可基于这些因素,这些因素包括但不限于信号数据的信噪比、用于采集信号数据的设备的属性(例如,镜头)、空间相关信息(例如,像素位置)、或者根据信号数据分析获得的度量(例如,当前正处理的像素的邻域中的像素)。In one embodiment, before applying the modified kernel matrix to the signal data, the kernel matrix applied to the signal data is modified one or more times according to one or more parameters that will be listed in subsequent sections. Revise. Modifying the kernel matrix according to the one or more parameters allows to achieve the desired effect of the size. In another embodiment, the final processed result of a certain pixel may be the result of the deconvolution using the unmodified kernel and some other value(s), including but not limited to the original pixel value in the input image. weighted sum. The weight of each summed value can be modified according to several parameters that will be listed in subsequent sections. The modification may be based on factors including, but not limited to, the signal-to-noise ratio of the signal data, properties of the equipment used to acquire the signal data (e.g., lens), spatially related information (e.g., pixel location), or based on the signal data The obtained metrics (eg, pixels in the neighborhood of the pixel currently being processed) are analyzed.
根据本发明“锐化”实施方式处理图像数据目标在于恢复已损失的对比度。对比度可能例如由于用来采集图像数据的光学器件(optics)属性而损失。然而,该锐化实施方式不要求使用任何特定的镜头。所述锐化实施方式的目的是恢复一些由于镜头的光学器件属性而损失的图像对比度,以便对于远距离对像的图像和近距离对像的图像来说,最终图像都具有好的对比度,虽然付出了合理的S/N代价。所述锐化实施方式可以利用硬件、软件或硬件和软件的某种组合实施为一种图像信号处理(ISP)模块。Processing image data according to the "sharpening" embodiment of the present invention aims at restoring lost contrast. Contrast may be lost, for example, due to the properties of the optics used to acquire the image data. However, this sharpening implementation does not require the use of any particular lens. The purpose of the sharpening implementation described is to restore some of the image contrast lost due to the optics properties of the lens, so that the final image has good contrast for both the image of a distant object and the image of a near object, although Paid a reasonable S/N price. The sharpening implementation may be implemented as an image signal processing (ISP) module using hardware, software, or some combination of hardware and software.
在一种实施方式中,所使用的核心具有高通或带通频率响应,这通过增强图像中的差异来允许所述核心锐化图像。所述差异的实施例包括暗/亮区域之间的边缘、形状、轮廓等。然而,在图像中相对均一的表面(例如,诸如灰墙或蓝天之类)上应用这些核心,可导致放大存在于这些像素之间的小差异。像素之间的这些小差异可能由噪声(随机噪声或固定模式噪声)造成。因此,应用这些核心可能在图像的“平的”、均一的、无信息的区域中导致非期望的噪声放大。这种不在预期内的噪声在低光照条件下可能特别严重。本文公开了若干种避免放大在图像的“平的”区域中的噪声的技术,而保留了期望区域中的对比度。In one embodiment, the core used has a high-pass or band-pass frequency response, which allows the core to sharpen the image by enhancing differences in the image. Examples of such differences include edges, shapes, contours, etc. between dark/light areas. However, applying these kernels on relatively uniform surfaces in an image (eg, such as a gray wall or blue sky) can result in amplifying small differences that exist between these pixels. These small differences between pixels can be caused by noise (random noise or fixed pattern noise). Therefore, applying these kernels may lead to undesired noise amplification in "flat", uniform, non-informative regions of the image. This unexpected noise can be especially severe in low light conditions. Several techniques are disclosed herein that avoid amplifying noise in "flat" areas of the image, while preserving contrast in desired areas.
在一种实施方式中,根据S/N图形调整每个核心的增益(例如,他们提供的锐化的量)。因而,当处理具有很差S/N的图像或其一部分时,可降低核心的增益。作为一个特定实施例,当处理在极低光照下采集的图像时,可降低所述核心的增益。在一种实施方式中,通过根据S/N参数修改所述核心,并接着将该经修改的核心应用于图像,来调整所述核心的增益。在另一种实施方式中,在将未经修改的核心应用于图像之后,根据S/N参数执行缩放(scaling)。In one embodiment, each core's gain (eg, the amount of sharpening they provide) is adjusted according to the S/N graph. Thus, when processing an image or a portion thereof with a poor S/N, the gain of the core may be reduced. As a specific example, the gain of the core may be reduced when processing images acquired in very low light. In one embodiment, the gain of the kernel is adjusted by modifying the kernel according to the S/N parameter and then applying the modified kernel to the image. In another embodiment, scaling is performed according to the S/N parameter after applying the unmodified kernel to the image.
在一种实施方式中,根据正处理的图像的当前部分的空间位置,来调整核心的增益。在一种实施方式中,空间位置相关调整补偿了用来采集图像数据的镜头的属性。自动聚焦和标准镜头可能遭受到径向降低照明轮廓。也就是说,穿过镜头的光的数量在镜头的高区域远低于镜头的中间。因此,与中心相比,S/N可能在图像边界处更低。在一些设计中,边界处的照明是中间区域的值的大约50-55%。然而,边界处的照明可能大于或小于50-55%。在一种实施方式中,通过根据阴影参数修改所述核心,并接着将该经修改的核心应用于图像,来调整所述核心的增益。在另一种实施方式中,在将未经修改的核心应用于图像之后,根据阴影参数执行缩放。因此,根据本发明的实施方式,在图像边界获得更好的S/N,且获取更好看的图像。In one embodiment, the gain of the kernel is adjusted according to the spatial location of the current portion of the image being processed. In one embodiment, the spatial position dependent adjustment compensates for properties of the lens used to capture the image data. Autofocus and standard lenses may suffer from radially reduced illumination profiles. That is, the amount of light passing through the lens is much lower in the high regions of the lens than in the middle of the lens. Therefore, S/N may be lower at the image borders compared to the center. In some designs, the lighting at the border is about 50-55% of the value in the middle area. However, the illumination at the border may be greater or less than 50-55%. In one embodiment, the gain of the kernel is adjusted by modifying the kernel according to shading parameters, and then applying the modified kernel to the image. In another implementation, the scaling is performed according to the shadowing parameters after applying the unmodified kernel to the image. Therefore, according to the embodiment of the present invention, a better S/N is obtained at the image boundary, and a better-looking image is obtained.
在一种实施方式中,根据描述当前正处理像素的邻域中的图像的某种特征的度量,来修改应用所述核心的效果。在一种实施方式中,所述度量是基于当前像素的邻域中的像素的统计分析的。例如,所述统计分析可以基于图像数据矩阵中的元之间的标准偏差、图像矩阵中元的直方图、或者图像矩阵中元中的熵。然而,所述度量亦可基于当前像素的邻域中特定像素之间的梯度计算。在一种实施方式中,根据所述度量修改核心。所述经修改的核心接着应用于图像数据。在另一种实施方式中,在将未经修改的核心应用于图像之后,根据所述度量执行缩放。In one embodiment, the effect of applying the kernel is modified according to a metric describing some characteristic of the image in the neighborhood of the pixel currently being processed. In one embodiment, the metric is based on a statistical analysis of pixels in the neighborhood of the current pixel. For example, the statistical analysis may be based on the standard deviation between the elements in the image data matrix, the histogram of the elements in the image matrix, or the entropy among the elements in the image matrix. However, the metric can also be calculated based on gradients between specific pixels in the neighborhood of the current pixel. In one embodiment, the core is modified according to the metric. The modified kernel is then applied to the image data. In another embodiment, scaling is performed according to the metric after applying the unmodified kernel to the image.
在一些应用中,核心可能往往用来抵消PSF。也就是说,核心可能是表示采集信号的设备中的诸如模糊之类的光学像差的PSF的倒数。然而,并不是必需核心为PSF的倒数。此外,本文有一些实施例,在这些实施例中,核心用来增强图像对比度。然而,本文所描述的方法被应用于核心以增强图像对比度并不是必需的。此外,本文有一些实施例,在这些实施例中,核心用于图像处理。然而,更一般地说,本文所描述的技术可应用于用于任意数字信号处理应用的核心。In some applications, the core may often be used to offset the PSF. That is, the kernel may be the inverse of PSF representing optical aberrations such as blurring in the device that acquired the signal. However, it is not necessary that the core be the inverse of PSF. Additionally, there are embodiments herein where the core is used to enhance image contrast. However, it is not required that the methods described herein be applied to the core to enhance image contrast. Additionally, there are embodiments herein where the cores are used for image processing. More generally, however, the techniques described herein can be applied to a core for any digital signal processing application.
在一种实施方式中,用于锐化图像(对比度增强)的相同机制亦用来减少或消除图像中运动模糊或晃动的效果。使用相同机制进行运动模糊校正和对比度增强,可根据硅尺寸、处理器周期、复杂度及成本产生更好的解决方案。In one embodiment, the same mechanism used to sharpen the image (contrast enhancement) is also used to reduce or eliminate the effect of motion blur or shake in the image. Using the same mechanism for motion blur correction and contrast enhancement results in a better solution based on silicon size, processor cycles, complexity and cost.
2.0图像信号处理链实施例2.0 Image Signal Processing Chain Embodiment
在数字静止照相机模块中,处理原始图像、并输出保存在非易失性存储器中的最终图像(例如,JPEG图像、TIFFany图像等等)的该组算法称作图像信号处理链,或者称作ISP链。图1a描绘了ISP链100中出现的典型阶段。ISP链可拥有其它阶段,且不必拥有图1a中所描述的所有阶段。各阶段可处于不同的顺序。In a digital still camera module, the set of algorithms that process the raw image and output the final image (e.g., JPEG image, TIFFany image, etc.) stored in non-volatile memory is called the image signal processing chain, or ISP chain. FIG. 1 a depicts typical stages that occur in an
在一种实施方式中,数字自动聚焦实施为一独立方框,充当ISP链的一部分。所述实施例ISP链100示出了一种典型的没有数字自动聚焦方框的ISP链。所述实施例ISP链100包括下列阶段。模拟增益101应用A/D转换之前的增益来补偿暗图像(例如,在采用低曝光时间的同时)。黑级校正(black level correction)102从图像中移除最低值(即,从传感器输出的“暗电流”)。坏像素校正106定位图像中的产生错误的极低或极高值的“烧伤”的像素,以及用该环境的“精确(smart)”平均值替换这些像素。在具有BAYER模式的CMOS传感器中,Gr/Gb补偿107补偿了可能出现在与蓝色像素共行的绿色像素值和与红色像素共行的绿色像素值之间的差异。图像传感器使用BAYER格式并不是必需的。为了平衡颜色及补偿光照条件和光级(light level),白平衡和数字增益108将增益应用于每种颜色(绿-红、红、绿-蓝、蓝),同时保持了动态范围。In one embodiment, digital autofocus is implemented as a stand-alone block that acts as part of the ISP chain. The
通过增强远离中心的像素的亮度,镜头阴影校正109补偿了镜头阴影轮廓。噪声移除110从图像中移除了随机噪声和固定模式噪声。颜色插值法(去马赛克)112将BAYER图像内插到全RGB图像中,在所述全RGB图像中每个像素具有三个颜色通道值。Lens shading correction 109 compensates for the lens shading profile by enhancing the brightness of pixels far from the center. Noise removal 110 removes random noise and fixed pattern noise from the image. Color interpolation (demosaicing) 112 interpolates the BAYER image into a full RGB image where each pixel has three color channel values.
锐化114增强了图像中的对比度。如随后将进行的更详细的描述,数字自动聚焦方框不同于锐化方框,在锐化方框中,数字自动聚焦补偿了PSF。Sharpening 114 enhances the contrast in the image. As will be described in more detail later, the digital autofocus box is distinct from the sharpening box, where the digital autofocus compensates for the PSF.
颜色校正矩阵115负责图像的颜色精确度和颜色饱和度。伽马校正116将伽马(γ)曲线应用于图像。JPEG压缩118将来自完全BMP图像的图像压缩成JPEG图像,该JPEG图像接着可保存到非易失性存储器(诸如闪存)中。可采用除了JPEG之外的压缩。The color correction matrix 115 is responsible for the color accuracy and color saturation of the image. Gamma correction 116 applies a gamma (γ) curve to the image. JPEG compression 118 compresses the image from the full BMP image into a JPEG image, which can then be saved to non-volatile memory such as flash memory. Compression other than JPEG may be employed.
在ISP链中,数字自动聚焦方框可位于多个可能位置。图1b描绘了根据实施方式的ISP链100a,该ISP链合并了数字自动聚焦方框111。在ISP链100a中,例如,数字自动聚焦方框111就位于去马赛克方框112之前,即,它被应用于BAYER图像上。图1c描绘了根据实施方式的ISP链100b,该ISP链亦合并了数字自动聚焦方框111。在ISP链100b中,数字自动聚焦方框111位于去马赛克方框112之后,即,它被应用于RGB图像上。在ISP100a和ISP 100b这两种情况中,并不是数字自动聚焦方框必需恰好位于所描绘位置-它也可位于ISP中的任何地方。在一种实施方式中,数字自动聚焦方框111出现在坏像素校正106之后,因为数字自动聚焦111可增强坏像素效果。在另一种实施方式中,推荐数字自动聚焦方框出现在bayer去噪方框110、镜头阴影校正109方框、白平衡方框108、Gr/Gb补偿方框107、坏像素校正方框106和黑级校正方框102之后,因为这些方框对传感器及部分镜头故障做了校正。请注意,将数字自动聚焦方框合并到ISP中,可造成锐化方框114变成不必要的。There are several possible positions for the digital autofocus box to be located in the ISP chain. Figure 1b depicts an
ISP链100整体上可以提供用于低分辨率屏幕的优质图像,甚至不必应用数字自动聚焦111阶段。因而,在预览模式下(这时,在采集图像之前,图像显示在手机的预览屏幕上)激活数字自动聚焦111并不是必需的。The
在该算法的一种实施方式中,采集图像的照相机模块系统包括一微距/正常(macro/normal)特征,使用户选择是采集近距离图像(例如20-40cm)还是采集远距离图像(例如,40cm-无限远)。在一种实施方式中,将模式选择输入到数字自动聚焦111中,且可用来改变所述处理。例如,可使用不同的去卷积核心,或者可根据拍摄模式,来改变所述核心。来自ISP链100的其它阶段的其它参数亦可输入到数字自动聚焦阶段111中。作为一种实施例,另一阶段提供了具有图像的S/N图形的数字自动聚焦阶段111。所述数字自动聚焦阶段111根据S/N图形调整锐化的量。在一种实施方式中,锐化的量是基于像素位置的,其可由ISP链100中的另一阶段提供。然而,将用正常/微距模式来在不同核心之间进行选择并不是必需的-单组核心可同时支持远、近距离。In one embodiment of the algorithm, the camera module system that captures the image includes a macro/normal feature that allows the user to choose whether to capture a close-up image (e.g., 20-40 cm) or a long-distance image (e.g., , 40cm-infinity). In one embodiment, a mode selection is input into the digital autofocus 111 and can be used to alter the process. For example, different deconvolution kernels may be used, or the kernel may be changed according to the shooting mode. Other parameters from other stages of the
3.0去卷积综述3.0 Deconvolution Overview
在一种实施方式中,核心用来执行bayer去卷积。然而,去卷积仅仅是可如何使用核心的一种实施例。bayer图像可塑造为像素值的2D矩阵,从而使得根据每个单元值所表示的传感器像素上的滤色器,每个单元值具有其特有的颜色-红、绿或蓝。图8示出了一幅示例性bayer图像800,其具有红(R)、蓝(B)和绿(G)色像素。像素的位置表示图像数据中与该颜色的核心卷积的像素位置。每种颜色均有中心像素801g、801r、801b,其标识了图像信号中的所述像素,其像素值通过将适当的颜色核心矩阵与图像信号中的对应像素进行卷积来修改。In one embodiment, the core is used to perform bayer deconvolution. However, deconvolution is only one example of how a core may be used. A bayer image can be shaped as a 2D matrix of pixel values such that each cell value has its own color—red, green, or blue—according to the color filter on the sensor pixel that each cell value represents. FIG. 8 shows an
根据一种实施方式,bayer卷积使用三个2D核心-每个像素颜色一个核心-来定义参加卷积的像素以及与每个像素相乘的系数值。核心尺寸可根据支持来定义,该支持指将所述核心置于图像上时核心将“覆盖”信号图像中的像素的数目。参考图8,核心支持尺寸是9x9。核心可支持许多其它的尺寸。在另一种实施方式中,绿色像素被分成与蓝色像素(Gb)共列的绿色像素和与红色像素(Gr)共列的绿色像素。在这样的实施方式中,有两个绿色核心,一个用于Gb,另一个用于Gr,这两个绿色核心与所述红色或蓝色像素核心具有类似的构造。According to one embodiment, bayer convolution uses three 2D kernels - one for each pixel color - to define the pixels involved in the convolution and the coefficient values to multiply each pixel with. Kernel size may be defined in terms of support, which refers to the number of pixels in the signal image that the kernel will "cover" when the kernel is placed on the image. Referring to Figure 8, the core supported size is 9x9. The core can support many other sizes. In another embodiment, the green pixels are divided into green pixels collocated with blue pixels (G b ) and green pixels collocated with red pixels (G r ). In such an embodiment, there are two green cores, one for Gb and one for Gr , which are of similar construction to the red or blue pixel cores.
请注意,在一些实施方式中,所述卷积不会混合不同的颜色。也就是说,在一些实施方式中,每个中心像素均与各相同颜色的环绕像素(surrounding pixels)进行卷积。然而,在其它实施方式中,卷积确实混合颜色。例如,当处理红色中心像素时,来自蓝和/或绿色像素的信息可用于去卷积中。因而,给定颜色的核心矩阵可在对应于不同颜色像素的位置处具有非零系数。Note that in some implementations, the convolution does not mix different colors. That is, in some embodiments, each central pixel is convolved with surrounding pixels of the same color. However, in other implementations, the convolution does mix colors. For example, when processing a red center pixel, information from blue and/or green pixels can be used in deconvolution. Thus, the kernel matrix for a given color may have non-zero coefficients at locations corresponding to pixels of a different color.
核心的系数与采集图像中的对应像素相乘,他们全部求和,并且将所述结果写入输出图像中的适宜位置中。图像中的那些对应像素在本文被称为“当前图像窗口”。例如,图8中的核心支持9x9像素环境。在图8中,红色像素和蓝色像素都形成5x5矩阵。当处理中心红色像素801r时,采集图像中围绕中心红色像素801r的红色像素是当前图像窗口。因而,在该实施例中,当前图像窗口仅包括单一颜色的像素。然而,对于某些类型的处理,当前图像窗口可具有不止一种颜色的像素-例如,如果核心混合颜色-即包含与不同于执行所述处理的中心像素的颜色像素相乘的系数-那么他们操作的图像窗口也必须包括这些像素。请注意,对于像素总数为41来说绿色像素有5x5模式和4x4模式。每个模式的中心像素是其值通过卷积更新的像素。在该实施例中,使用bayer卷积,其中对于每种颜色,仅使用了相同颜色的像素。因而,红色模式用于根据红色中心像素和该模式中的邻近红色像素来更新红色中心像素801r。The coefficients of the kernel are multiplied by the corresponding pixels in the acquired image, they are all summed, and the result is written in the appropriate location in the output image. Those corresponding pixels in the image are referred to herein as the "current image window." For example, the core in Figure 8 supports a 9x9 pixel environment. In Figure 8, both red and blue pixels form a 5x5 matrix. When processing the central red pixel 801r, the red pixels surrounding the central red pixel 801r in the captured image are the current image window. Thus, in this embodiment, the current image window only includes pixels of a single color. However, for some types of processing, the current image window may have pixels of more than one color - for example, if the core mixes colors - i.e. contains coefficients multiplied with pixels of a different color than the central pixel on which the processing is performed - then they The image window for the operation must also include these pixels. Note that there are 5x5 patterns and 4x4 patterns for green pixels for a total of 41 pixels. The central pixel of each pattern is the pixel whose value is updated by convolution. In this embodiment, a bayer convolution is used, where for each color only pixels of the same color are used. Thus, the red pattern is used to update the red center pixel 801r from the red center pixel and the neighboring red pixels in the pattern.
表I描绘了用于卷积绿色像素的3x3支持核心的示例性bayer滤波器的系数。当该核心的中心系数落在绿色像素上时,仅绿色像素进行卷积。请注意,实际上对具有0值的核心系数执行乘法并不是必需的。Table I depicts the coefficients of an exemplary bayer filter for convolving green pixels with a 3x3 support core. When the center coefficient of this kernel falls on a green pixel, only the green pixel is convolved. Note that it is not necessary to actually perform multiplication on kernel coefficients with a value of 0.
表ITable I
举例来说,如果上述bayer滤波器将被应用于图8的适当部分时,那么绿色中心像素801g和四个最近的绿色像素参加卷积。卷积可充当高通滤波器,或者带通滤波器。然而,卷积亦可充当低通滤波器,或者另一种功能。For example, if the above-described bayer filter were to be applied to the appropriate portion of Figure 8, then the green center pixel 801g and the four nearest green pixels participate in the convolution. Convolution can act as a high-pass filter, or a band-pass filter. However, convolution can also act as a low-pass filter, or another function.
注意,表I中的核心系数之和等于1。如果所述系数求和为除了1之外的值,那么核心将影响图像的“DC”值(例如,当所有参加的像素是相同值时),该DC值可影响颜色或强度。当应用核心到颜色均一的表面上时,保存该颜色(或强度)可能是所期望的。Note that the sum of the core coefficients in Table I is equal to 1. If the coefficients sum to a value other than 1, the kernel will affect the "DC" value of the image (eg, when all participating pixels are the same value), which can affect color or intensity. When applying a core to a surface of uniform color, it may be desirable to preserve the color (or intensity).
当使用RGB去卷积(即,在去马赛克处理之后执行去卷积)时,所有像素都具有3个值(R,G,B),并且因而每种颜色的核心可写为一2D矩阵,每个矩阵单元具有有效的系数-因为图像中每种颜色的信息是空间连续的且存在于每种像素中。将RGB图像视为3个2D矩阵的组合是方便的-一个矩阵用于红色、一个矩阵用于绿色以及最后一个矩阵用于蓝色。在执行无颜色混合的情况下,每个核心被应用于包含适合该核心的颜色的2D矩阵上。然而,在一种实施方式中,核心可混合颜色,并且因而核心可具有与所有3个R、G和B图像矩阵中的像素相乘的值。When RGB deconvolution is used (i.e. deconvolution is performed after demosaicing), all pixels have 3 values (R, G, B), and thus the kernel for each color can be written as a 2D matrix, Each matrix cell has valid coefficients - because the information for each color in the image is spatially continuous and exists in each pixel. It is convenient to think of an RGB image as a composition of 3 2D matrices - one for red, one for green and a last matrix for blue. In cases where no color blending is performed, each kernel is applied to the 2D matrix containing the colors appropriate for that kernel. However, in one embodiment, the kernel can mix colors, and thus the kernel can have values multiplied with pixels in all 3 R, G and B image matrices.
在一种实施方式中,进行检查以确保不存在关于输出图像的位分辨率的溢出或下溢。如果存在,那么可使用饱和度和剪辑(clipping)。在一种实施方式中,输出图像的位分辨率与输入图像的相同。然而,这不是必需的。在另一种实施方式中,输出图像分辨率可相对于输入图像分辨率而改变。处理所述像素的顺序不局限于任何特定顺序。所述顺序可取决于锐化阶段114的输入接口。In one embodiment, a check is made to ensure that there is no overflow or underflow with respect to the bit resolution of the output image. If present, saturation and clipping may be used. In one embodiment, the bit resolution of the output image is the same as that of the input image. However, this is not required. In another embodiment, the output image resolution may be changed relative to the input image resolution. The order in which the pixels are processed is not limited to any particular order. The order may depend on the input interface of the sharpening
4.0基于预期效果的大小来调整核心效果的综述4.0 A review of adjusting core effects based on the size of the expected effect
4.1过程综述4.1 Process overview
图12是一幅根据实施方式说明用于调整核心效果的过程1200的流程图。在步骤1202,访问初始核心矩阵。在步骤1204,调整所述核心矩阵对信号矩阵进行处理的效果。该调整目的是修改所述核心在信号上产生的效果的大小。图21和图22描绘了两种用于调整所述核心矩阵对信号矩阵进行处理而具有的效果的技术。FIG. 12 is a flowchart illustrating a
预期效果可能是增强图像对比度,尽管其可能是另一种效果。所述对效果大小的调整可以是基于信号的S/N图形的。所述对效果大小的调整可以是基于像素的位置的。所述对效果大小的调整可以是基于用于采集信号的镜头的属性的(例如,镜头阴影)。所述对效果大小的调整可以是基于正处理数据的邻域中的数据的特征的。举例来说,所述特征可能实质上是统计上的,诸如数据的标准偏差。所述核心效果可通过这些因素中任意多的因素,或者通过其它因素来调整。The intended effect might be to enhance image contrast, although it might be another effect. The adjustment of the magnitude of the effect may be based on the S/N pattern of the signal. The adjustment of the size of the effect may be based on the position of the pixel. The adjustment of the size of the effect may be based on properties of the lens used to acquire the signal (eg, lens shading). The adjustment to effect size may be based on characteristics of the data in the neighborhood of the data being processed. For example, the characteristic may be statistical in nature, such as the standard deviation of the data. The core effect can be adjusted by any number of these factors, or by other factors.
4.2通过更新核心来调整核心效果的综述4.2 Overview of adjusting core effects by updating cores
图21描绘了一种根据实施方式的技术,在该技术中根据一个或多个参数更新核心。接着,该经更新核心用于卷积。在图21中,输入接口2202接收来自ISP链中另一阶段的图像信号,并将图像像素传递到更新核心方框2106中。在这种实施方式中,输入接口2206提供来自ISP链的某种数据给更新核心方框2106。该数据的实施例包括但不限于,S/N图形、图像直方图、曝光时间、数模增益、去噪信息、白平衡信息和像素位置。FIG. 21 depicts a technique in which a core is updated according to one or more parameters, according to an embodiment. Then, this updated kernel is used for convolution. In FIG. 21 ,
所述更新核心方框216更新核心215,所述核心215用于由所选择的图像像素形成的信号矩阵的卷积。本文中,讨论了多个实施例参数,这些参数是基于诸如S/N(“α”)、空间位置(“β”)、局部特征(“γ”)之类的因素的。所述核心可根据这些参数中的一个或多个参数、或者其它参数来更新。因而,所述核心更新不限于这些参数。卷积方框2206将信号矩阵(基于图像像素)与经更新的核心和最终结果进行卷积。The
用于利用计算出的度量(例如,“α”、“β”、“γ”,......)修改核心的方法如下-一旦计算出度量,该度量在0到1的动态范围内(如果不在,可将其转换到这样的动态范围内),则利用下列更新公式可降低所述核心的效果(例如,一3x3核心):The method used to modify the core with a computed metric (e.g. 'α', 'β', 'γ', ...) is as follows - once the metric is computed, it is in the dynamic range of 0 to 1 (If not, it can be converted to such a dynamic range), the effect of the core (eg, a 3x3 core) can be reduced using the following update formula:
该公式创建了下列期望效果:如果所述度量接近于0,则降低所述核心的效果,以及如果所述度量接近于1,则保留初始核心。最终核心是2个核心-初始核心和kronecker-δ核心-的线性组合。该kronecker-δ核心与图像进行卷积保持了原样,没做修改。因而,将其与初始核心组合,当与所述核心相乘的系数累加到1时,依赖所述度量,确保了所述初始核心效果在强度上降低,同时确保了不对图像的DC频率分量进行任何改变(由于最终核心中的所有系数之和保持为1)。This formula creates the following desired effect: if the metric is close to 0, reduce the effect of the core, and if the metric is close to 1, keep the original core. The final core is a linear combination of 2 cores - the initial core and the kronecker-delta core. The convolution of the kronecker-delta kernel with the image remains the same without modification. Thus, combining it with an initial kernel, relying on the metric when the coefficients multiplied by the kernel add up to 1, ensures that the effect of the initial kernel is reduced in strength while ensuring that the DC frequency components of the image are not Any change (since the sum of all coefficients in the final core remains 1).
在另一种实施方式中,kronecker-δ核心由另一核心代替,例如具有比初始核心效果更强的核心,并因而依赖于所述度量,可实现增加所述处理的效力的效果。In another embodiment, the kronecker-delta core is replaced by another core, for example a core with a stronger effect than the original core, and thus, depending on said measure, an effect of increasing the potency of said treatment may be achieved.
4.3通过修改卷积结果来调整核心效果的综述4.3 Overview of Adjusting Core Effects by Modifying Convolution Results
图22描绘了一种根据实施方式的技术,在该技术中将“缩放”应用到不必进行修改的核心的卷积结果上。该缩放实现了与如图21所描绘的更新核心相同的结果。在图22中,输入接口2202接收来自ISP链的另一阶段的图像信号,并将图像像素传递到卷积方框2206中。卷积方框2206将信号矩阵(基于图像像素)与未经修改的核心215进行卷积并输出卷积结果。卷积方框2206将正处理的当前像素与初始核心进行卷积,并输出所述结果到方框2212中。Figure 22 depicts a technique, according to an embodiment, in which "scaling" is applied to the convolution result of the kernel without modification. This scaling achieves the same result as updating the core as depicted in FIG. 21 . In FIG. 22 ,
平均器方框2212从方框2212接收卷积结果,卷积之前的当前像素值,以及来自ISP的其它数据。该数据的实施例包括但不限于,S/N图形、图像直方图、曝光时间、数模增益、去噪信息、白平衡信息、和像素位置,并计算所需的更新度量(替换地,基于该信息的更新度量在先前计算得出且仅将他们输入到平均器中)。The averager block 2212 receives the convolution result from block 2212, the current pixel value before convolution, and other data from the ISP. Examples of this data include, but are not limited to, S/N graphs, image histograms, exposure times, digital-to-analog gains, denoising information, white balance information, and pixel locations, and calculate the required update metrics (alternatively, based on The updated metrics for this information were previously calculated and they were only fed into the averager).
接着平均器2212在卷积结果与卷积之前的像素值之间取平均,并利用一种实施方式中的下列公式输出该最终结果(FinalRsult)。Then the averager 2212 takes an average between the convolution result and the pixel value before convolution, and outputs the final result (FinalRsult) using the following formula in one embodiment.
等式1:FinalRsult=ConvRs·metric+(1-metric)·InputPixelEquation 1: FinalRsult = ConvRs·metric+(1-metric)·InputPixel
在等式1中,ConvRs是卷积结果,InputPixel是正处理的当前像素的初始值。在一种实施方式中,由于InputPixel是kronecker-δ核心和信号矩阵的卷积结果,因此使用InputPixel。在期望效果是增大初始核心的效果的情况下,以用比用于创建ConvRs的核心的效果更强的核心进行卷积而得到的结果来替换InputPixel。所述度量(metric)可以是具有0到1之间的动态范围的任意更新度量,并且构建该更新度量从而使得当其接近于0时,期望效果是降低等式中第一加数的效果而增强第二加数的效果,以及如果其接近于1,则相反(在最终结果中,增强等式中第一加数的效果而降低第二加数的效果)。多个度量可用于创建最终输出,并且只要相乘系数加到1,等式中亦可使用不止两个加数。本文中,讨论了度量的多个实施例,所述度量是基于诸如S/N(“α”)、空间位置(“β”)、局部特征(“γ”)之类的因素的。该最终结果可取决于这些因素中的一个或多个因素、或其它因素。In
5.0基于多种因素调整核心效果5.0 adjusts core effects based on multiple factors
5.1基于S/N图形调整核心效果5.1 Adjust core effects based on S/N graphics
更新核心的系统实施例System embodiment for updating the core
图2描绘了一种说明一种示例性系统200的方框图,所述系统200用于处理信号矩阵以基于核心矩阵实现预期数量的处理。图2描绘了根据实施方式更新核心矩阵以及用所述经更新的核心矩阵处理图像数据。如本文任意其它处所描述,为了调整应用所述核心的效果来修改核心本身并不是必要的。在一种实施方式中,为了根据所述核心调整所述处理效果,在用未经修改的核心处理所述图像之后执行缩放。因而,要理解,为了方便说明起见描绘图2中的各个方框,以及对核心进行更新不需要如图2所描绘的用α与核心相乘。FIG. 2 depicts a block diagram illustrating an
一般来说,所述更新核心方框202根据噪声级估计器来更新被选择的核心矩阵。卷积方框206将经更新的核心应用于图像数据,其输出到输出接口209中。在一种实施方式中,更新核心方框202和卷积方框206形成图1b或1c的自动聚焦方框111的一部分。在一种实施方式中,ISP链204a的上游部分给输入接口208提供下列参数:In general, the
i.拍摄模式。i. Shooting mode.
ii.噪声级估计器。ii. Noise level estimator.
iii.输入图像。iii. Input image.
在一种实施方式中,拍摄模式用于确定要使用哪一组核心215a、215b。图2的示例性系统描绘了用于微距模式和正常模式的核心。然而,可有用于诸如夜晚、风景等之类的其它模式的核心。拍摄模式可以是任意类型的要求对核心进行特殊处理的景色。在一种实施方式中,拍摄模式是基于用户选择的。例如,用户可以在微距模式和正常模式之间选择。在另一种实施方式中,拍摄模式是自动确定的。在这种实施方式中,基于拍摄模式,要么微距核心215a要么正常核心215b被提供作为更新初始核心方框202的输入。在一种实施方式中,核心的系数保存在内存中。举例来说,16位带符号分辨率可用来表示系数。In one embodiment, capture mode is used to determine which set of
例如,正常模式核心215b可用于在40cm-无限远处之间采集的图像。微距模式核心215a可用于拍摄近距离元素。举例来说,近距离元素可以在20cm-40cm的范围内,或者在更近的10cm-40cm范围内。在一种实施方式中,有两组三色核心(红、绿、蓝):一组用于正常模式,一组用于微距模式。可使用不同数量的颜色核心。也可能有不同的核心尺寸。此外,采用的支持尺寸可基于像素尺寸。例如,如果像素尺寸是1.75um,则核心支持尺寸可能是13x13。对于2.2um像素尺寸来说,核心支持尺寸可能是9x9。然而,对较小的像素尺寸采用较大的支持尺寸并不是必需的。For example, the
噪声级估计器是所采集图像中噪声级的估计器。噪声级估计器可用任意格式表示。举例来说,噪声级估计器可以是0-7之内的整数值,其中0指示低噪声(好S/N),7指示大量的噪声(坏S/N)。坏S/N可能与差的光照条件相关联。Noise Level Estimator is an estimator of the noise level in the acquired image. Noise level estimators can be represented in arbitrary formats. For example, the noise level estimator may be an integer value in the range 0-7, where 0 indicates low noise (good S/N) and 7 indicates a lot of noise (bad S/N). Bad S/N may be associated with poor lighting conditions.
在一种实施方式中,在提供图像像素数据作为输入之前,ISP链204a的上游部分将坏像素校正(BPC)应用于图像数据。在一种实施方式中,在所述图像数据已由卷积方框206处理之后,ISP链204b的下游部分将去马赛克应用于图像数据。In one embodiment, the upstream portion of the
更新核心方框202拥有α计算逻辑212,从而从噪声级估计器计算本文称为“α”的值。在一种实施方式中,其中噪声级估计器是0到最大噪声值(Max_noise_val)之间的数字,利用等式2计算α的值。The
等式2:α=(Max_noise_val-noise_val)/Max_noise_valEquation 2: α=(Max_noise_val-noise_val)/Max_noise_val
等式2指示图像噪声越大(噪声值(noise_val)越大),α的值越低(反之亦然)。因此,如果图像中几乎没有噪声,则α的值接近1。在等式2中,α与noise_val之间的关系是线性的。然而,线性关系并不是必需的。根据noise_val与图像中的真实噪声量之间的关系,α可能以更复杂的形式依赖于noise_val,诸如二次方相关,或者其它相关-如果noise_val是线性的,则α可以是noise_val的线性函数。更新核心方框202拥有核心更新逻辑214,其根据α的值,产生初始核心的更新形式。
图3示出了一种根据实施方式用于更新核心的示例性等式。图3指示α-更新核心矩阵是两个核心的线性组合:1)初始核心矩阵,其乘以α;以及2)δ核心矩阵,其乘以1-α。δ核心亦可称作kronecker-δ核心。注意,这导致α-更新核心系数之和保持为1,从而保存图像的“DC”值。注意,实现图3中的等式并不要求去卷积核心乘以α。相反地,如下面所讨论的,在将图像矩阵与未经修改的去卷积矩阵卷积之后,可进行α“缩放”以产生相同的结果。FIG. 3 illustrates an exemplary equation for updating a core, according to an embodiment. Figure 3 indicates that the α-updated kernel matrix is a linear combination of two kernels: 1) the initial kernel matrix, which is multiplied by α; and 2) the delta kernel matrix, which is multiplied by 1-α. Delta cores may also be referred to as kronecker-delta cores. Note that this causes the sum of the α-update kernel coefficients to remain at 1, thus preserving the "DC" value of the image. Note that implementing the equation in Figure 3 does not require the deconvolution kernel to be multiplied by α. Conversely, as discussed below, after convolving the image matrix with the unmodified deconvolution matrix, alpha "scaling" can be performed to produce the same result.
如果α相对接近1,则α-更新核心极其近似于初始核心。然而,如果α的值相比较1更接近于0,则α-更新核心将更近似于kronecker-δ核心。例如,如果α=0.2,则α-更新核心将包括80%的kronecker-δ核心而仅包括20%的初始核心。在一种实施方式中,初始核心实质上是高通或带通滤波器。因而,如果α低,则α-更新核心将对图像产生的锐化量远低于初始核心的锐化量。If α is relatively close to 1, the α-updated kernel closely approximates the original kernel. However, if the value of α is closer to 0 than to 1, the α-update kernel will be more similar to the kronecker-delta kernel. For example, if α = 0.2, the α-update cores will include 80% of the kronecker-delta cores and only 20% of the original cores. In one embodiment, the initial core is essentially a high-pass or band-pass filter. Thus, if α is low, the α-update kernel will produce a much lower amount of sharpening to the image than the original kernel.
注意,如果核心是高通或带通滤波器,则它可能放大噪声;因此,与用初始核心处理图像相比,在不对其进行更新的情况下,当图像具有低S/N时削弱这样的核心可改善最终经处理的图像中的S/N。这种技术可削弱初始核心的增益。通过用具有比初始核心更强的高通/带通频率响应的核心来替换kronecker-δ核心,可使用相同的技术来加强初始核心。卷积方框206中的卷积逻辑216用α-更新核心对输入图像的当前部分进行卷积,并向输出接口209输出值。有一种实施方式中,输出图像具有与输入图像相同的分辨率。Note that if the core is a high-pass or band-pass filter, it may amplify noise; therefore, attenuate such a core when the image has a low S/N without updating it, compared to processing the image with the original core The S/N in the final processed image can be improved. This technique reduces the gain of the initial core. The same technique can be used to strengthen the original core by replacing the kronecker-delta core with a core with a stronger high-pass/band-pass frequency response than the original core.
使用后卷积缩放的示例性系统Exemplary system using post-convolution scaling
如早先所讨论的,核心乘以α以实现α更新并不是必需的。图16描绘了一种实施方式,其中将“缩放”应用到未经修改的核心的卷积结果上;这种缩放实现了与如图2所描绘的用α更新核心相同的结果。在图16中,图像接口208从图像传感器1372接收图像信号,并将信号矩阵传递到卷积方框206中。来自图像接口208的模式选择信号用于选择一种或多种核心215,所述核心提供至卷积方框206。前面已经讨论了不同模式的实施例。卷积方框206将信号矩阵与未经修改的核心进行卷积并输出卷积结果。各卷积结果包括当前正处理的信号矩阵的元之一的值。As discussed earlier, it is not necessary for the core to multiply by α to achieve an α update. Figure 16 depicts an embodiment where "scaling" is applied to the convolution result of an unmodified kernel; this scaling achieves the same result as updating the kernel with α as depicted in Figure 2 . In FIG. 16 ,
在这种实施方式中,图像接口208提供噪声级估计器信号给缩放1602,其利用α计算逻辑212计算“α”。α计算可按照与图2所描绘的实施方式相同的方式执行。α缩放1612输入卷积结果、α、以及当前正处理像素的初始值,并输出当前像素的最终结果。在一种实施方式中,当前像素是信号矩阵的中心像素。在一种实施方式中,α缩放1612执行如下:In such an embodiment, the
等式3:FinalRsult=ConvRs·α+(1-α)·InputPixelEquation 3: FinalRsult = ConvRs·α+(1-α)·InputPixel
在等式3中,ConvRs是卷积结果,InputPixel是正处理的当前像素的初始值。因而,利用未经修改的核心以及一个或多个其它值,当前像素的最终处理结果是卷积结果的加权和。那些其它值包括但不限于输入图像中的初始像素值。在这种实施方式中,α参数用作加权(或缩放)参数。In
5.2根据空间位置调整核心效果5.2 Adjust the core effect according to the spatial position
示例性系统exemplary system
在一种实施方式中,根据空间位置修改将去卷积核心应用于图像的效果。在一种实施方式中,空间位置是基于用来采集图像数据的镜头的阴影轮廓的。图4描绘了一种系统400的方框图,其中在α-更新卷积核心已由更新核心方框202修改之后,卷积方框203中的β-更新逻辑304使用“阴影指示符”来修改α-更新卷积核心。阴影指示符定义镜头-阴影的数量,并可相对于图像数据中的中心来描述。如果需要,可在对核心进行α更新之前或不进行α-更新,对核心执行β-更新。如本文任意其它处所描述,为了调整应用所述核心的效果来修改核心本身并不是必要的。在一种实施方式中,为了根据所述核心调整所述处理效果,在用未经修改的核心处理所述图像之后执行缩放。本文中,基于阴影指示符的调整被称为“β-调整”。In one embodiment, the effect of applying the deconvolution kernel to the image is modified according to the spatial location. In one embodiment, the spatial location is based on the shadow profile of the lens used to capture the image data. 4 depicts a block diagram of a
图6描绘了一个根据实施方式用于基于阴影参数更新核心的等式。注意,图6中的等式描述了对经α-更新的核心进行β更新。初始核心系数用标签来标记,以指示初始核心用α更新过。如早先所讨论,可在α更新之前,对核心执行β更新。此外,在一种实施方式中,在不执行α-更新的情况下可执行β-更新。如果对核心执行β-更新,则卷积是非线性卷积(即,其中核心依赖不止一个条件而对每个像素改变的卷积)。注意,实施图6中的等式并不要求经α更新的去卷积核心与β相乘。相反地,如下面所讨论,α及β“缩放”可发生在将未经修改的去卷积矩阵与图像矩阵进行卷积之后。FIG. 6 depicts an equation for updating kernels based on shadow parameters, according to an embodiment. Note that the equations in Figure 6 describe a β update on an α-updated core. The initial core coefficients are marked with a label to indicate that the initial core was updated with α. As discussed earlier, a beta update may be performed on the core prior to an alpha update. Additionally, in one embodiment, a β-update may be performed without performing an α-update. If a β-update is performed on the kernel, the convolution is a non-linear convolution (ie, a convolution in which the kernel changes for each pixel depending on more than one condition). Note that implementing the equations in Figure 6 does not require the alpha-updated deconvolution kernel to be multiplied by β. Conversely, as discussed below, alpha and beta "scaling" may occur after convolving the unmodified deconvolution matrix with the image matrix.
在对相关颜色核心执行β更新之后,卷积逻辑216将相关颜色核心与表示成图像矩阵的图像数据相卷积。基于图像矩阵中的中心像素的颜色来确定相关颜色核心,所述中心像素是正处理的当前像素。卷积包括以图像矩阵中的匹配像素来乘以β-更新的核心系数。所述结果写入输出图像中的适当位置,从而更新当前像素的值。然后,处理图像数据中的下一像素。例如,如果正执行bayer处理,则处理bayer图像中的下一像素。对核心进行β-更新可提供更好的S/N;然而,在图像边界可能有较少的图像锐化。After performing a beta update on the associated color kernel,
β及阴影轮廓的实施例Examples of beta and shaded contours
在一种实施方式中,为了补偿图像边界处由镜头-阴影轮廓导致的S/N代价,β-更新削弱作为离图像中心的距离的函数的核心。图5描绘了一幅示例性镜头阴影轮廓的图500。y-轴是阴影参数β的值。x-轴是离镜头中心的距离(“R”)。在这种实施例中,较大的R导致较小的β。因而,在这种实施例中,在镜头中心附近β接近于1,而靠近镜头外缘(例如,周边)β接近于0。注意,在该实施例中,R与β之间的关系是非线性的。曲线的形状可以根据等式4模拟。In one embodiment, the β-update attenuates the kernel as a function of distance from the image center in order to compensate for the S/N penalty at image boundaries caused by lens-shadow contours. FIG. 5 depicts a
等式4:β=1-a·(R/(b·max(R)))2 Equation 4: β=1−a·(R/(b·max(R))) 2
等式4中,β具有0-1之间的值。每个像素因而根据其离图像的镜头中心的距离(R)来处理。该距离或平方距离可根据下列等式计算:In
等式5:
等式6:R2=x_index2+y_index2 Equation 6: R 2 =x_index 2 +y_index 2
在这些等式中,x_index和y_index是图像中像素的索引(x是列,y是行),而图像中的中心像素索引为[0,0]。“a”和“b”的值是影响阴影数量的常量。In these equations, x_index and y_index are the indices of the pixels in the image (x is the column and y is the row), and the center pixel in the image has index [0, 0]. The values of "a" and "b" are constants affecting the amount of shadowing.
“a”和“b”的值可改变,且可由上游ISP链204a提供。因而,在一种实施方式中,由上游ISP链204a提供的阴影指示符定义了常量a和b。在另一种实施方式中,基于图像统计来计算阴影指示符。例如,基于像素数据的坐标以及与图像数据相关联的S/N,阴影指示符可由卷积方框206来计算。S/N可由上游ISP链204a提供。在另一种实施方式中,根据镜头阴影轮廓来设置a和b,从而使其满足镜头阴影轮廓特征,并且固定,无需要阴影指示符。The values of "a" and "b" may vary and may be provided by the
卷积方框206中的R计算逻辑302确定用于至少一些像素的R。根据R的值,β-更新逻辑304访问(或确定)β的值。也就是说,β可从表中存取,或运行时计算得出。典型地,至少部分基于当前正处理像素的R值,β从表中存取,以节约处理时间。然而,β可在空闲时计算得出。
由于R值仅略微不同于一个其邻居的像素,因此为每个像素计算新的R值并不是必要的。因而,为每个像素对核心执行β-更新并不是必要的。因此,每几个像素或者甚至更多像素可执行β-更新,仍能取得期望效果。Since the R value is only slightly different from one of its neighbors, it is not necessary to calculate a new R value for each pixel. Thus, it is not necessary to perform a β-update on the core for each pixel. Therefore, beta-updates can be performed every few pixels or even more pixels and still achieve the desired effect.
可在同一镜头的不同阴影轮廓之间选择;然而,针对具体的镜头设计,可选择恒定轮廓。在一种实施方式中,阴影指示符是0-8之间的整数值,其中0指示边界处没有阴影,8指示边界处存在严重的阴影。然而,可使用这个范围之外的值。It is possible to choose between different shadow profiles for the same lens; however, for a specific lens design, a constant profile can be selected. In one embodiment, the shading indicator is an integer value between 0-8, where 0 indicates no shading at the boundary and 8 indicates severe shading at the boundary. However, values outside this range may be used.
用于确定β系数的替换实施方式Alternative Implementations for Determining Beta Coefficients
本节描述了一种替代的技术,以基于“R”值来确定β,R描述了像素数据关于镜头的相对位置。在这种实施方式中,首先,R2的值可转入到较小的动态范围内。等式7是一种实现这种转入的实施例。This section describes an alternative technique to determine β based on the "R" value, which describes the relative position of the pixel data with respect to the lens. In this embodiment, first, the value of R2 can be shifted into a smaller dynamic range.
等式7:f(R):R2[0...max(R2)]→[0...15]Equation 7: f(R): R 2 [0...max(R 2 )] → [0...15]
在将R值转入到较小的动态范围内之后,可使用等式8来计算β:After shifting the R value into a smaller dynamic range, β can be calculated using Equation 8:
等式8:β=15-p·f(R)/qEquation 8: β=15-p·f(R)/q
常量“p”和“q”影响阴影的数量,并因而调整核心的强度。这些常量因而出于与前面确定β的技术中所讨论的常量“a”和“b”类似的目的,但不是相同的常量。“p”和“q”值可由ISP链204a提供(例如,阴影指示符可定义这些常量)。替换地,适当的p和q值可由卷积方框206确定。举例来说,p和q可基于图像统计来确定。然而,p和q亦可通过镜头阴影轮廓来确定并保持固定。注意,在该等式中,β的最终值可在0-15之间(即,这里用4位来表示β)。然而,根据该实施,β可具有任意期望动态范围。The constants "p" and "q" affect the amount of shadows and thus adjust the strength of the core. These constants thus serve a similar purpose to the constants "a" and "b" discussed in the previous technique for determining β, but are not the same constants. The "p" and "q" values may be provided by the
图像边界处核心的削弱量可基于“p”和“q”来调整。例如,如果p=0且q=1,则图像边界处将无核心削弱。如果p=1且q=1,则在图像边界处,核心将变成kronecker-β函数。因而,核心将被削弱。The amount of attenuation of cores at image boundaries can be adjusted based on 'p' and 'q'. For example, if p = 0 and q = 1, there will be no core attenuation at image boundaries. If p = 1 and q = 1, then at image boundaries the kernel will become a kronecker-β function. Thus, the core will be weakened.
可根据其来更新核心增益的阴影轮廓可以是除了R^2之外的函数。例如,其可能是R的函数,或者是非旋转对称函数。在这些其它情况下,计算β的公式将有些不同。例如,多项式可用于这种如在下列等式中所说明的函数:The shadow profile from which the core gain may be updated may be a function other than R^2. For example, it may be a function of R, or a non-rotationally symmetric function. In these other cases, the formula for calculating β will be somewhat different. For example, polynomials can be used for this function as illustrated in the following equation:
等式9:β(R)=a0+a1(R/max(R))+a1(R/max(R))2+...+an(R/max(R))n Equation 9: β(R)=a 0 +a 1 (R/max(R))+a 1 (R/max(R)) 2 +...+a n (R/max(R)) n
在等式9中,β可具有0-1之间的最终值。In Equation 9, β may have a final value between 0-1.
同样,基于镜头阴影轮廓的调整可用来加强图像边界中的核心,而不是削弱他们。在这种实施方式中,用具有更富侵略性的高通/带通频率响应的核心来替换kronecker-δ核心,并且因此调整初始核心系数。想增强核心的理由是:一般来说,对于给定镜头,PSF通常在视场(FOV)的边界处比在其中心处更大。Likewise, adjustments based on the lens shading profile can be used to strengthen nuclei in image boundaries, rather than weaken them. In this embodiment, the kronecker-delta core is replaced with a core with a more aggressive highpass/bandpass frequency response, and the initial core coefficients are adjusted accordingly. The rationale for wanting to enhance the core is that, in general, for a given lens, the PSF is usually larger at the borders of the field of view (FOV) than at its center.
空间相关处理Spatial Correlation Processing
该基于镜头阴影轮廓调整核心效果的实施例是一种用于根据空间(或像素)位置调整核心效果的技术。然而,这不是唯一的用于基于空间位置调整核心效果的技术。在一种实施方式中,在图像处理期间保存或取得不同核心,从而有差别地处理图像传感器的不同区域,以说明位置相关光学像差。该位置相关处理可以是与单一像素区域一样的细粒度,但不同区域可具有不止一个单个像素。This embodiment of adjusting core effects based on lens shading profile is a technique for adjusting core effects according to spatial (or pixel) position. However, this is not the only technique used to adjust core effects based on spatial location. In one embodiment, different kernels are saved or retrieved during image processing to process different regions of the image sensor differently to account for position-dependent optical aberrations. This location dependent processing can be as fine grained as a single pixel region, but different regions can have more than one single pixel.
例如,可对图像传感器的不同区域计算光学象差。每个区域的尺寸可以小如一个单一像素,但可包括不止一个单一像素。在一种实施方式中,为每个区域建立去卷积核心(“区域核心”),从而抵消该区域中像素的光学象差。不同的区域核心可针对每个区域而存储。替换地,单个区域核心可针对多个区域而存储,对该核心进行调整,从而实现对不同区域的不同处理。For example, optical aberrations can be calculated for different regions of the image sensor. Each region can be as small as a single pixel in size, but can include more than one single pixel. In one embodiment, a deconvolution kernel ("region kernel") is established for each region to cancel out the optical aberrations of the pixels in that region. Different regional cores may be stored for each region. Alternatively, a single region core can be stored for multiple regions, the core being tuned to allow different processing for different regions.
用后去卷积缩放来调整核心效果Adjusting Core Effects with Post-Deconvolution Scaling
如早先所讨论的,如图4所描绘,为了获得用α和β来更新核心的结果,所述核心乘以α和β并不是必需的。图19描绘了一种实施方式,其中将α和β“缩放”应用于基于未经修改的核心的去卷积结果。在这种实施方式中,图像接口208提供噪声级估计器信号和阴影指示符给缩放1602,所述缩放1602利用α计算逻辑212来计算“α”。α计算可以与图2所描绘的实施方式类似的方式来执行。在本实施方式中,图像接口208提供阴影指示符信号和像素索引给缩放1602,所述缩放1602利用β计算逻辑302来计算“β”。β计算可以与如图4所描绘的实施方式类似的方式来执行。在一种实施方式中,所述阴影指示符不用于确定β。相反地,β是基于像素索引来确定的,而不必使用阴影指示符。As discussed earlier, as depicted in FIG. 4 , it is not necessary that the kernel be multiplied by α and β in order to obtain the result of updating the kernel with α and β. Figure 19 depicts an implementation where alpha and beta "scaling" is applied to the unmodified kernel based deconvolution result. In such an embodiment, the
α/β缩放1912输入卷积结果、α、β和正处理的当前像素的初始值,并输出当前像素的最终结果。在一种实施方式中,当前像素是信号矩阵的中心像素。在一种实施方式中,所述α缩放1612执行如下:Alpha/
等式10:FinalRsult=ConvRs·α·β+(1-α·β)·InputPixelEquation 10: FinalRsult = ConvRs·α·β+(1-α·β)·InputPixel
在等式10中,ConvRs是卷积结果,InputPixel是正处理的当前像素的初始值。因而,利用未经修改的核心以及一个或多个其它值,当前像素的最终处理结果是卷积结果的加权和。那些其它值包括但不限于输入图像中的初始像素值。在这种实施方式中,所述α和β参数用作加权(或缩放)参数。如果需要,可使用β参数而不使用α参数。In Equation 10, ConvRs is the convolution result, and InputPixel is the initial value of the current pixel being processed. Thus, with the unmodified kernel and one or more other values, the final processed result for the current pixel is a weighted sum of the convolution results. Those other values include, but are not limited to, the original pixel values in the input image. In such an embodiment, the alpha and beta parameters are used as weighting (or scaling) parameters. The beta parameter can be used instead of the alpha parameter if desired.
5.3根据局部图像特征调整核心效果5.3 Adjust the core effect according to local image features
在一种实施方式中,核心效果根据局部图像特征调整。所述图像特征可以是正处理的当前像素的局部特征。根据图像特征调整核心效果可与先前讨论的α调整和/或β调整一起执行。然而,在一种实施方式中,核心效果根据图像特征来调整,而没有任何α或β调整。此外,除了α-或β-调整之外的对核心的调整可用本节的技术来执行。In one embodiment, the core effect is adjusted according to local image characteristics. The image features may be local features of the current pixel being processed. Adjusting core effects based on image characteristics can be performed in conjunction with the previously discussed alpha adjustments and/or beta adjustments. However, in one embodiment, the core effects are adjusted according to image characteristics without any alpha or beta adjustments. Furthermore, tuning of the core other than alpha- or beta-tuning can be performed using the techniques of this section.
根据图像特征调整核心效果的一个方面,是根据中心像素值本身(或者,可替换地,根据绕所述中心像素的几个像素的加权平均值)来调整处理级别(即,核心强度或效果大小)。因而,例如,当该中心像素(或平均值)具有一高值时,效果大小将较大,当该中心像素具有一低值时,效果大小将较小。也可以相反使用-中心像素的值(或者绕中心像素的几个像素的平均值)越低,核心效果越强,值高则效果越弱-取决于需要。一种根据像素值改变效果的大小的实施例在下列等式11中给出:One aspect of adjusting the kernel effect according to image characteristics is to adjust the processing level (i.e., kernel strength or effect size) according to the center pixel value itself (or, alternatively, according to a weighted average of several pixels around ). Thus, for example, when the center pixel (or average) has a high value, the effect size will be larger, and when the center pixel has a low value, the effect size will be smaller. The opposite can also be used - the lower the value of the center pixel (or the average of several pixels around the center pixel) the stronger the core effect, the higher the value the weaker the effect - depends on the need. One embodiment of varying the magnitude of the effect based on the pixel value is given in Equation 11 below:
等式11:FinalRsult=pixel_val/Max_pixel_val·ConvRs+Equation 11: FinalRsult=pixel_val/Max_pixel_val·ConvRs+
(1-pixel_val/Max_pixel_val)·InputPixel(1-pixel_val/Max_pixel_val) InputPixel
在上述等式11中,在卷积之前,当pixel_val为高时,最终结果将近似于卷积结果,当pixel_val为低时,最终结果将近似于初始像素值。In Equation 11 above, before convolution, when pixel_val is high, the final result will approximate the convolution result, and when pixel_val is low, the final result will approximate the initial pixel value.
根据图像特征调整核心效果的另一个方面,是要识别图像中的区域,其中所述核心应该以更大或更小的强度来应用。因而,确定关于核心矩阵要对信号矩阵产生的效果的大小。期望效果可以是图像对比度,在这种情况下,为了最大效果,核心可应用于期望图像对比度最大的图像区域中。替换地,在期望几乎没有图像对比度的区域中,根本不可应用核心,或者可修改应用所述核心的效果,从而导致更小的图像对比度。在一种实施方式中,修改应用核心的效果,从而实现最小效果和最大效果之间的平滑瞬态。在一种实施方式中,有当期望对效果无调整时所应用的缺省核心。所述调整可增强所述缺省核心的效果的大小,或者可降低所述缺省核心的效果的大小。在另一种实施方式中,所使用的核心是用于去噪目的的低通滤波器,其中使用相同度量来确定在何处应用核心以及用何种强度应用核心。Another aspect of adjusting the kernel effect based on image characteristics is to identify areas in the image where the kernel should be applied with greater or lesser intensity. Thus, the magnitude of the effect to be produced on the signal matrix with respect to the core matrix is determined. The desired effect may be image contrast, in which case, for maximum effect, the kernel may be applied in the image area where the desired image contrast is greatest. Alternatively, in areas where little image contrast is desired, the kernel may not be applied at all, or the effect of applying the kernel may be modified, resulting in less image contrast. In one embodiment, the effects of the application core are modified such that a smooth transition between minimum and maximum effects is achieved. In one embodiment, there is a default kernel that is applied when no adjustment to the effect is desired. The adjustment may enhance the magnitude of the effect of the default kernel, or may decrease the magnitude of the effect of the default kernel. In another embodiment, the kernel used is a low pass filter for denoising purposes, where the same metric is used to determine where to apply the kernel and with what strength.
根据局部图像特征调整核心效果的结构综述Structural Survey of Adjusting Core Effects Based on Local Image Features
图7描绘了一幅系统700的方框图,其中基于根据当前正处理像素的位置中的图像特征计算得出的度量,卷积方框206中的核心更新逻辑704修改所述核心。可修改所述度量本身,从而得到本文称为“γ”的值。在系统700中,在进行γ更新之前,核心首先基于α-和β更新来更新。然而,和γ更新一起使用α-或β更新并不是必需的。此外,在这种实施方式中,γ更新在α-和β更新之后。然而,可以改变核心更新的顺序。如本文任意其它处所描述,为了调整应用所述核心的效果来修改核心本身并不是必要的。在一种实施方式中,为了根据所述核心调整所述处理效果,在用未经修改的核心处理所述图像之后执行缩放。7 depicts a block diagram of a
基于正处理的当前像素及其邻近像素的分析,卷积方框206中的度量计算逻辑702计算所述度量。所述度量计算逻辑702检查每个像素的当前图像窗口(乘以卷积核心的图像段),确定所述当前像素的期望处理的数量的度量。接着,基于所述度量,卷积核心由所述核心更新逻辑704更新。最后,将经更新的核心应用于图像数据。
一旦γ由所述度量定义,逻辑上所述用于更新核心的方法可类似于用于对核心进行α-或β-更新的方法。例如,从合乎逻辑的观点来看,如果希望降低处理的大小,则所述经更新的核心可从初始核心与δ核心的线性组合中产生,或者如果希望提高处理的大小,则用更富侵略性的核心产生。再次参考图3,可用γ替代α来更新所述核心。因而,γ影响核心的线性组合的核心系数。注意,如果用利用γ和α和/或β更新的核心来执行卷积,则得到非线性卷积结果。也就是说,执行卷积,其中所述核心依赖于不止一个条件针对每个像素而改变。注意,如本文所描述的后去卷积缩放可用来获得利用经更新的核心的去卷积结果。Once γ is defined by the metric, logically the method for updating a core can be similar to the method for α- or β-updating a core. For example, from a logical point of view, if one wishes to reduce the size of the process, the updated core can be generated from a linear combination of the initial core and the delta core, or if one wishes to increase the size of the process, with a more aggressive The core of sex arises. Referring again to FIG. 3, the core may be updated with gamma instead of a. Thus, γ affects the kernel coefficient of the linear combination of kernels. Note that if the convolution is performed with a kernel updated with gamma and alpha and/or beta, a non-linear convolution result is obtained. That is, a convolution is performed where the kernel changes for each pixel depending on more than one condition. Note that post-deconvolution scaling as described herein can be used to obtain deconvolution results with updated kernels.
根据局部图像特征调整核心效果的功能综述Functional overview of adjusting core effects based on local image features
如早先所讨论的,在该实施方式中,基于绕当前正处理的像素的局部特征来调整处理的强度。首先,检查绕当前像素的区域,来确定诸如是否存在边缘、绕所述像素的区域是否相对平面-即均一,在该区域内的信息没有任何变化(诸如空白灰墙之类的)-等之类的信息。等式11描述了一种计算所述度量的方法。As discussed earlier, in this embodiment the intensity of processing is adjusted based on local features surrounding the pixel currently being processed. First, check the area around the current pixel to determine things like if there is an edge, if the area around the pixel is relatively planar - i.e. uniform, there is no change in the information in the area (such as a blank gray wall) - etc. class information. Equation 11 describes a method for computing the metric.
等式12:
在等式12中,Pj和N是窗口之内的像素,P是N个像素的平均值。In Equation 12, P j and N are pixels within the window, and P is the average value of N pixels.
确定所述度量的实施例Example of Determining the Metric
下面是几种用于计算所述度量的示例性方法。可利用绕计算出输出值的中心像素的当前图像窗口来计算所述度量。然而,使用在整个当前图像窗口中的所有像素(正处理颜色的)并不是必需的。此外,所述度量可能是基于当前图像窗口之外的像素的。此外,仅基于相同颜色的像素确定所述度量并不是必需的。也就是说,对于一些类型的处理,在所述度量计算中包括不同颜色的像素可能是适当的。Below are several exemplary methods for computing the metric. The metric may be calculated using a current image window around the center pixel from which the output value is calculated. However, it is not necessary to use all pixels in the entire current image window (those that are being colored). Furthermore, the metric may be based on pixels outside the current image window. Furthermore, it is not necessary to determine the measure based only on pixels of the same color. That is, for some types of processing it may be appropriate to include pixels of different colors in the metric calculation.
方差/标准偏差实施例Variance/Standard Deviation Example
在一种实施方式中,当前图像窗口中的像素的方差或者标准偏差(win_std)用作在绕所述中心像素的当前图像窗口中差异的存在以及差异的量的指标。如果使用标准偏差,则可使用公式13A或13B中的公式:In one embodiment, the variance or standard deviation (win_std) of the pixels in the current image window is used as an indicator of the presence and amount of differences in the current image window around the center pixel. If standard deviation is used, the formula in Equation 13A or 13B can be used:
等式13A:
等式13B:
在等式13A和13B中,xi是当前图像窗口中的像素,“n”是当前图像窗口中的像素的数量,x是平均值。如先前所讨论的,在一种实施方式中,当前图像窗口中的像素全都是相同颜色的。平均值可如等式14所指出的来确定。In Equations 13A and 13B, xi is the pixel in the current image window, "n" is the number of pixels in the current image window, and x is the average value. As previously discussed, in one embodiment, the pixels in the current image window are all the same color. The average value can be determined as indicated in Equation 14.
等式14:
然而,在一种实施方式中,所有像素均参加平均值计算并不是必要的。此外,在一种实施方式中,使用加权平均值,而不是简单平均值,其中参加平均值计算的像素根据相对于中心像素的空间位置,或者根据另一种加权方案来加权。所述权值归一化为1,以便均一区域的平均值保持相同。在下列等式中示例所述加权平均(其中Wi是权值):However, in one embodiment, it is not essential that all pixels participate in the average calculation. Furthermore, in one embodiment, rather than a simple average, a weighted average is used, where the pixels participating in the average are weighted according to their spatial position relative to the central pixel, or according to another weighting scheme. The weights are normalized to 1 so that the mean value of the homogeneous region remains the same. The weighted average (where Wi is the weight) is exemplified in the following equation:
等式15:
如果xi被认为是随机变量,则这些是用于标准偏差的未偏移和已偏移的估计器。接着,在一种实施方式中,计算两个值-当前图像窗口中的win_std的最大值(Max_std_val),以及当前图像窗口中的win_std的最小值(Min_std_val)。根据等式16a和16b计算这些值。If xi is considered to be a random variable, these are the unshifted and shifted estimators for the standard deviation. Next, in one embodiment, two values are calculated - the maximum value of win_std in the current image window (Max_std_val), and the minimum value of win_std in the current image window (Min_std_val). These values are calculated according to Equations 16a and 16b.
等式16a:
等式16b:
在等式16a和16b中,x是平均值,“n”是当前图像窗口中的像素的数量。这些最小及最大值从上到下确定了标准偏差的范围。因而,当前图像窗口的标准偏差的动态范围(dyn_range)可按照等式16定义。In Equations 16a and 16b, x is the average value and "n" is the number of pixels in the current image window. These minimum and maximum values define the range of standard deviations from top to bottom. Thus, the dynamic range (dyn_range) of the standard deviation of the current image window can be defined according to Equation 16.
等式16:dyn_range=Max_std_val-Min_std_valEquation 16: dyn_range = Max_std_val - Min_std_val
核心可根据图11所描绘的等式来更新。注意,如图11所描述的核心更新可通过如本文所描述的由后去卷积由γ缩放实施。也就是说,信号矩阵用未经修改的核心矩阵来卷积,接着根据γ来缩放所述卷积结果与初始像素值之和。The core can be updated according to the equation depicted in FIG. 11 . Note that kernel updates as described in FIG. 11 may be implemented by gamma scaling by post-deconvolution as described herein. That is, the signal matrix is convolved with the unmodified kernel matrix, and then the sum of the convolution result and the original pixel values is scaled according to γ.
进一步注意,如果dyn_range=0,则中心像素的邻域中的所有像素都是相同的。因此,无论中心像素具有与当前图像窗口中剩余像素相同的值(即,win_std=0),还是中心像素具有与剩余像素不同的值,将δ核心应用于中心像素。注意,在上述情况中任何一种情况下,可不预期任何处理。第一种情况可指示当前图像窗口是“平面”区域(例如,墙、蓝天等),其中不预期增强图像对比度。第二种情况可能是由于未检测到任何模式而由噪声引起;因此可不预期增强图像对比度。进一步地,注意在图11的等式中,input_kernel和delta_kernel所乘的两个系数之和为1。Note further that if dyn_range=0, all pixels in the neighborhood of the center pixel are the same. Thus, whether the central pixel has the same value as the remaining pixels in the current image window (ie, win_std=0), or whether the central pixel has a different value than the remaining pixels, the delta kernel is applied to the central pixel. Note that no processing may be expected in any of the above cases. The first case may indicate that the current image window is a "flat" area (eg, wall, blue sky, etc.) where no enhancement of image contrast is expected. The second case may be caused by noise since no pattern is detected; thus enhancing image contrast may not be expected. Further, note that in the equation of FIG. 11 , the sum of the two coefficients multiplied by input_kernel and delta_kernel is 1.
如果当前图像窗口是“平面的”或近乎“平面的”,或者甚至如果其是噪声区域,但具有相对低的噪声标准偏差,则所述标准偏差为低值。因此,图11中input_kernel所乘的系数接近于0,delta_kernel所乘的系数接近于1。因此,根据需要,对于其中几乎没有细节的图像区域,几乎没有处理发生。If the current image window is "planar" or nearly "planar", or even if it is a noisy region, but has a relatively low noise standard deviation, then the standard deviation is a low value. Therefore, the coefficient multiplied by input_kernel in Figure 11 is close to 0, and the coefficient multiplied by delta_kernel is close to 1. So, for areas of the image where there is little detail, little processing happens, as desired.
然而,如果当前图像窗口包括介于明暗区域之间的边缘,则标准偏差值为大(例如,接近于最大可能值)。因而,图11中input_kernel所乘的系数将达到接近于1的值,delta_kernel所乘的系数将得到接近于0的值,这意味着final_kernel将锐化图像并恢复所损失的对比度。由于为每个像素设置了标准偏差的动态范围,因此不依赖于固定阈值,所述固定阈值随现场场景而改变。However, if the current image window includes an edge between light and dark regions, then the standard deviation value is large (eg, close to the maximum possible value). Therefore, the coefficient multiplied by input_kernel in Figure 11 will reach a value close to 1, and the coefficient multiplied by delta_kernel will get a value close to 0, which means that final_kernel will sharpen the image and restore the lost contrast. Since a dynamic range of standard deviations is set for each pixel, it does not rely on a fixed threshold, which varies with the scene scene.
然而,计算窗口中的最小及最大值以及采用局部动态范围并不是必需的。在一种实施方式中,固定的动态范围用于将标准偏差归一化为动态范围[01]。例如,对于0到1023的像素值(每像素10位),标准偏差可接收0到512的值,因而可将所述动态范围固定到所述范围中。However, it is not necessary to calculate the minimum and maximum values in the window and to use the local dynamic range. In one embodiment, a fixed dynamic range is used to normalize the standard deviation to the dynamic range [01]. For example, for pixel values from 0 to 1023 (10 bits per pixel), the standard deviation may receive a value from 0 to 512, thus fixing the dynamic range into that range.
替换地,为了以更精密复杂的方式来改变核心,可将更复杂的函数应用于标准偏差。举例来说,标准偏差的动态范围可划分成几部分,在每一部分,以这些部分之间的过渡是连续的并取得期望效果的方式应用不同的函数。举例来说,图15中描绘的图表1500说明了一种根据实施方式的相对于所述度量的γ曲线。参考图15,定义两个阈值(“低阈值(low_th)”和“高阈值(high_th)”)。如果所述度量为低(例如,低于“low_th”),则在当前图像窗口中没有边缘信息(或微乎其微的边缘信息)。因此,γ值保持为低。如果所述度量位于“low_th”和“high_th”之间,则分配给γ较高的值。所述范围证明存在边缘,但注意,该范围具有上限“high_th”。在图15的实施例中,γ值在大于“low_th”以上增大,直到在“low_th”与“high_th”之间的某一值处γ达到1。然而,如果所述度量为高(例如,在“high_th”之上),则所述γ值逐渐从γ在“high_th”处得到的1值减小。γ的这种减小降低了已经足够锐化的过度锐化边缘的可能性。根据各度量值,计算γ参数,其中γ在0到1之间。该函数在所述度量的整个范围内是连续的。所述γ值乘以核心,而以类似于执行α-和β-更新的方式,(1-γ)乘以kronecker-δ核心(或者,可替换地,更富侵略性的核心-根据预期效果)。Alternatively, more complex functions can be applied to the standard deviation in order to vary the core in a more sophisticated manner. For example, the dynamic range of the standard deviation can be divided into parts, and in each part, a different function is applied in such a way that the transition between these parts is continuous and achieves the desired effect. For example, the
作为使用标准偏差作为用于梯度-存在识别的度量替代,可根据下列公式使用方差(variance):Instead of using standard deviation as a measure for gradient-presence identification, variance can be used according to the following formula:
等式17:
在等式17中,注释与标准方差公式中相同。在这种替换方式中,为了创建适宜的动态范围(或者,可使用固定动态范围,如前面所列出的),应因而确定最大和最小值。还是在这里,图11中的公式可用于更新核心,或者可如上所述使用更复杂的函数。In Equation 17, the notes are the same as in the standard deviation formula. In this alternative, the maximum and minimum values should be determined accordingly in order to create a suitable dynamic range (alternatively, a fixed dynamic range could be used, as listed previously). Also here, the formula in Figure 11 can be used to update the core, or more complex functions can be used as described above.
作为使用标准偏差作为用于梯度-存在识别的度量的另一种替代,可根据等式18使用绝对差值(absolute value of differences):As another alternative to using standard deviation as a measure for gradient-presence identification, absolute value of differences can be used according to Equation 18:
等式18:
其中注释与标准偏差公式中相同。在这种替代方式中,为了创建适宜的动态范围,最大和最小值应因而确定。还是在这里,图11中的公式可用于更新核心,或者可如上所述使用更复杂的函数。where the notes are the same as in the standard deviation formula. In this alternative, the maximum and minimum values should be determined accordingly in order to create a suitable dynamic range. Also here, the formula in Figure 11 can be used to update the core, or more complex functions can be used as described above.
直方图实施例Histogram Example
一种类似于标准偏差方法的方法是要计算当前图像窗口的直方图,并基于所述直方图确定核心的大小。当前图像窗口(image window)的局部直方图可通过首先定义某数量的区格(bin)来计算。这可例如根据等式19来进行。An approach similar to the standard deviation method is to compute a histogram of the current image window and determine the size of the kernel based on the histogram. The local histogram of the current image window can be calculated by first defining a certain number of bins. This can be done eg according to Equation 19.
等式19:#bins=max(xi)-min(xi)+1,i=1..n,xi∈image_windowEquation 19: #bins=max(x i )-min(x i )+1, i=1..n, x i ∈ image_window
替换地,bin的数量可以是预定的固定数量。举例来说,1024个bin可用于对应于一10-位图像的强度级数目。接着,所述bin本身例如通过用#bins划分所述图像窗口的动态范围来定义,如等式20所描述。Alternatively, the number of bins may be a predetermined fixed number. For example, 1024 bins are available for the number of intensity levels corresponding to a 10-bit image. Then, the bins themselves are defined, for example, by dividing the dynamic range of the image window by #bins, as described in Equation 20.
等式20:dyn_range=max(xi)-min(xi)+1,i=1..n,xi∈image_windowEquation 20: dyn_range=max( xi )-min( xi )+1, i=1..n, xi ∈ image_window
在这种实施例中,将有#bins个bin,每个都是1像素宽。可将动态范围划分成更宽的bin,每个bin都是若干个像素值宽。一旦定义了所述bin,每个bin均用图像窗口中落入该bin范围的像素值的数量来填充。图9A说明了用于图像窗口的数据,图9B说明了用于所述数据的直方图。In such an embodiment, there would be #bins bins, each 1 pixel wide. The dynamic range can be divided into wider bins, each bin being several pixel values wide. Once the bins are defined, each bin is filled with the number of pixel values in the image window that fall within that bin range. Figure 9A illustrates data for an image window, and Figure 9B illustrates a histogram for the data.
在一种实施方式中,一旦已知当前图像窗口的直方图,则进行确定所述直方图多么接近于单峰直方图以及所述直方图多么接近于多峰直方图。单峰直方图亦可称为均一直方图。在一种实施方式中,多峰直方图包括双峰直方图和高阶直方图。In one embodiment, once the histogram of the current image window is known, a determination is made of how close the histogram is to a unimodal histogram and how close the histogram is to a multimodal histogram. A unimodal histogram may also be called a uniform histogram. In one embodiment, the multimodal histogram includes a bimodal histogram and a higher order histogram.
直方图的形状越接近于多峰直方图,对于当前图像窗口中存在边缘的指示越强。可期望增强应用于具有边缘的窗口的去卷积核心的效果。例如,可期望增强图像的对比度。替换地,如果核心具有低通频率响应,则其可能希望降低他们的效果大小,以便他们不会模糊图像中的边缘。The closer the shape of the histogram to a multimodal histogram, the stronger the indication that edges are present in the current image window. It may be desirable to enhance the effect of deconvolution kernels applied to windows with edges. For example, it may be desirable to enhance the contrast of an image. Alternatively, if the core has a low pass frequency response, it may be desirable to reduce their effect size so that they do not blur edges in the image.
所述直方图越接近于单峰直方图,则图像窗口越“平面”(即,越均一)。因此,可能期望修改所述去卷积核心,从而最小化他们的效果。例如,在这种情况下,可能期望不增强图像对比度。噪声图像窗口可产生均一的或单峰直方图。图10A说明了单峰直方图,图10B说明了不同的绿色图像窗口的双峰直方图。利用1024个bin(10-位bayer图像的强度级的#),以及分布的41个值(用于9x9绿色核心的绿色图像窗口中的值的#),产生这些直方图。The closer the histogram is to a unimodal histogram, the more "flat" (ie, more uniform) the image window will be. Therefore, it may be desirable to modify the deconvolution kernels so as to minimize their effects. For example, in this case it may be desirable not to enhance image contrast. Noise image windows can produce uniform or unimodal histograms. Figure 1OA illustrates a unimodal histogram and Figure 1OB illustrates a bimodal histogram for different green image windows. These histograms were generated with 1024 bins (# of intensity levels of the 10-bit bayer image), and 41 values of the distribution (# of values in the green image window for the 9x9 green kernel).
因而,在一种实施方式中,分析所述直方图来确定所述分布是单峰的还是多峰的。一种区别单峰直方图和多峰直方图的技术是采用聚类算法(例如,k-means),其可用于检测存在两簇还是多簇。此外,所述度量可基于所述多个簇的中心之间的距离的。为了获得用于更新核心的增益的度量,所述距离通过其动态范围来归一化。Thus, in one embodiment, the histogram is analyzed to determine whether the distribution is unimodal or multimodal. One technique to distinguish unimodal from multimodal histograms is to employ a clustering algorithm (eg, k-means), which can be used to detect the presence of two or more clusters. Additionally, the metric may be based on distances between centers of the plurality of clusters. To obtain a measure of the gain for updating a core, the distance is normalized by its dynamic range.
另一种用于区分双峰和单峰直方图的技术是基于平滑所述直方图的,并接着在其中查找局部最大值。如果仅有单个局部最大值,则直方图是单峰的。然而,如果找到两个局部最大值,则所述两个局部最大点之间的范围用于导出所述度量。举例来说,如果所述范围小,则所述核心可调整为具有低增益。然而,如果所述范围大,则所述核心可调整为具有高增益。这些调整可期望使核心在所述范围大时具有最多的图像对比度增强。如果找到三个或三个以上的局部最大值,则所述度量亦可基于所述局部最大值之间的范围。Another technique for distinguishing bimodal from unimodal histograms is based on smoothing the histogram and then finding local maxima therein. A histogram is unimodal if there is only a single local maximum. However, if two local maxima are found, the range between the two local maximum points is used to derive the metric. For example, if the range is small, the core may be tuned to have low gain. However, if the range is large, the core can be tuned to have high gain. These adjustments can be expected to cause the kernel to have the most image contrast enhancement when the range is large. If three or more local maxima are found, the measure may also be based on the range between the local maxima.
在先前讨论的标准偏差技术与直方图的形状之间可能存在关系。具有其值拥有高标准偏差的像素的当前窗口矩阵可具有带有两个或两个以上波峰的直方图形状,其中像素值远离所述平均值。另一方面,具有其值拥有低标准偏差的像素的当前窗口矩阵可具有带有单波峰的直方图,其中大部分像素值接近所述平均值。There may be a relationship between the standard deviation technique discussed previously and the shape of the histogram. A current window matrix with pixels whose values have a high standard deviation may have a histogram shape with two or more peaks, where pixel values are far from the mean. On the other hand, a current window matrix with pixels whose values have a low standard deviation may have a histogram with a single peak where most of the pixel values are close to the mean.
边缘检测实施例Example of edge detection
在一种实施方式中,确定度量是基于检测图像中的边缘的。例如,卷积掩膜可用于找到当前图像窗口中的边缘。可能采用的卷积掩膜的实施例包括但不限于,Sobel、Laplacian、Prewitt和Roberts。在一种实施方式中,将边缘检测掩膜应用于当前图像窗口上,从而检测边缘。将诸如窗口中像素的标准偏差之类的统计度量值应用于所述结果。接着所述度量是基于所述标准偏差结果的。在另一种实施方式中,将边缘检测掩膜应用于当前图像窗口上,从而检测边缘。在所述边缘检测实施方式中,基于是否找到边缘,来应用所述核心。In one embodiment, determining the metric is based on detecting edges in the image. For example, convolution masks can be used to find edges in the current image window. Examples of convolution masks that may be employed include, but are not limited to, Sobel, Laplacian, Prewitt, and Roberts. In one embodiment, an edge detection mask is applied to the current image window to detect edges. A statistical measure such as the standard deviation of the pixels in the window is applied to the result. The metric is then based on the standard deviation result. In another embodiment, an edge detection mask is applied to the current image window to detect edges. In the edge detection implementation, the kernel is applied based on whether an edge is found.
距离实施例distance example
所述信息度量亦可基于“距离”方法来构造。图23示出了一种用于构造所述信息度量的方法2300。该方法始于步骤2304,其中对像素之间的绝对差值求和。近距离由当前图像窗口中绕中间像素的像素而计算得出。远距离由空间上远离所述同一图像中中间像素的像素而计算得出。所述信息度量2312仅由近距离计算得出,而所述度量2316同时由近距离和远距离而计算得出。在步骤2320,该方法2300计算具有根据这两种信息度量值而确定的权值的两种信息度量的加权平均值,其导致最终的信息度量,尽管未进行缩放。在步骤2324,所述最终信息度量根据当前图像内的空间位置来缩放,以及所述经缩放的信息度量接着提供给过程2400,其在图24中进行更详细地描述。The information measure can also be constructed based on the "distance" method. Figure 23 illustrates a
在一种实施方式中,以下列方式计算各种距离度量:将图像窗口划分成像素簇,以及对于每一簇,利用在该簇中的像素与在中间簇(直接围绕于所述中间像素)中的匹配像素之间的差值的绝对值的加权和,为该每一簇计算距离度量。等式21示出了用于示例性单个3x3簇例子的距离度量的计算:In one embodiment, the various distance metrics are computed by dividing the image window into clusters of pixels, and for each cluster, using A distance metric is computed for each cluster as the weighted sum of the absolute values of the differences between matching pixels in . Equation 21 shows the computation of the distance metric for an exemplary single 3x3 cluster example:
等式21:
其中W[i,j]是可配置的加权矩阵,Ck[i,j]是3x3Ck簇中像素[i,j]的值,Cmid[i,j]是中间簇中[i,j]像素的值。where W[i, j] is a configurable weighting matrix, C k [i, j] is the value of pixel [i, j] in the 3x3C k cluster, C mid [i, j] is the value of [i, j] in the middle cluster ] pixel value.
边缘增强实施方式Edge Enhancement Implementation
由于边缘检测掩膜中系数之和为0,则如果在初始图像窗口中存在边缘,则合成的图像窗口将包含强正和负值。因此,包含边缘的图像窗口将拥有高的标准偏差值,因此具有高的处理度量(processing-metric,p metric)。另一方面,如果所述窗口具有用于图像中“平面”、均一的区域的数据,甚至用于具有相对低噪声标准偏差的噪声区域的数据,则所述边缘过滤图像将具有彼此接近的像素值(典型地接近于0)。因此,所述边缘过滤图像(edge-filtered image)将具有低的标准偏差值和低的处理度量。在一种实施方式中,固定的预定阈值用于归一化所述标准偏差,从而使得最终处理度量是0到1之间的值。所述度量计算可按照等式22中所指示的来确定:Since the coefficients in the edge detection mask sum to 0, the synthesized image window will contain strong positive and negative values if there is an edge in the initial image window. Therefore, image windows containing edges will have high standard deviation values and thus high processing-metric (p metric). On the other hand, if the window has data for "flat", uniform regions in the image, or even for noisy regions with relatively low noise standard deviations, then the edge-filtered image will have pixels close to each other value (typically close to 0). Therefore, the edge-filtered image will have low standard deviation values and low processing metrics. In one embodiment, a fixed predetermined threshold is used to normalize the standard deviation such that the final processing metric is a value between 0 and 1 . The metric calculation can be determined as indicated in Equation 22:
等式22:if(p_metric>1)Equation 22: if (p_metric > 1)
p_metric=1p_metric=1
所述核心可按照类似于如图3所描绘的方式来更新。然而,p_metric替换α。The core can be updated in a manner similar to that depicted in FIG. 3 . However, p_metric replaces α.
归一化标准偏差导致所述处理度量的平滑梯度变化,从低值到高值,并因而创建了连续且平滑的处理,且消除了输出图像中的伪像。Normalizing the standard deviation results in a smooth gradient of the process metric, from low to high values, and thus creates a continuous and smooth process and removes artifacts in the output image.
表II提供了一种对进行绿色bayer处理的bayer图像的边缘检测的示例性值。如果所述绿色像素划分成Gr(红色行中的绿色)和Gb(蓝色行中的绿色),则可对所有像素(Gr,R,B和Gb)使用表III。表III提供了用于红色或蓝色bayer处理的边缘检测掩膜的示例性值。Table II provides an exemplary value for edge detection on a bayer image processed with green bayer. If the green pixels are divided into Gr (green in red row) and Gb (green in blue row), then Table III can be used for all pixels (Gr, R, B and Gb). Table III provides exemplary values for edge detection masks for red or blue bayer processing.
表IITable II
表IIITable III
举非限制性例子来说,用于在去马赛克之后图像上所执行的处理的边缘检测掩膜可能是公知的Sobel、Prewitt、Roberts和Laplacian掩膜。By way of non-limiting example, the edge detection mask used for the processing performed on the image after demosaicing may be the well known Sobel, Prewitt, Roberts and Laplacian masks.
边缘检测实施方式Edge detection implementation
在一种边缘检测实施方式中,将边缘检测掩膜(如果在bayer图像上进行所述处理,则适用于bayer模式)应用于图像窗口上,从而发现边缘。阈值可用来确定是否存在边缘,考虑一种a-优先(a-priory)的假设:有一种边缘如何出现在自然图像中的模式。例如,与有效图像数据相反,不同于其它像素的单个像素可能是随机噪声。所述阈值可根据为邻近像素而获得结果来更新,以便与检测到边缘相反,降低错误地检测噪声的可能性。该方法的可能实现可以按照如下。In one edge detection implementation, an edge detection mask (for bayer mode if the processing is performed on a bayer image) is applied to the image window to find edges. Thresholding can be used to determine whether edges are present, considering an a-priority assumption: there is a pattern of how edges appear in natural images. For example, individual pixels that differ from other pixels may be random noise, as opposed to valid image data. The threshold may be updated based on results obtained for neighboring pixels in order to reduce the likelihood of falsely detecting noise as opposed to detecting edges. A possible implementation of this method can be as follows.
首先,将边缘检测掩膜应用于当前图像窗口上。如果在上述当前阈值之上存在绝对值,则检查他们是否形成一条线或其它图案。指示一条线或其它图案可能是,几个邻近像素具有高绝对值。如果找到一条线或其它图案,则宣布当前图像窗口包括边缘。如果没有像素具有超过所述阈值的绝对值,或者如果所述具有高绝对值的像素没有形成一条线或其它图案,则所述当前图像窗口被认为是包含“平面”(可能是噪声的)区域。First, an edge detection mask is applied to the current image window. If there are absolute values above the current threshold above, it is checked whether they form a line or other pattern. Indicating that a line or other pattern may be, several neighboring pixels have high absolute values. If a line or other pattern is found, the current image window is declared to include edges. If no pixels have an absolute value above the threshold, or if the pixels with a high absolute value do not form a line or other pattern, the current image window is considered to contain a "flat" (possibly noisy) region .
接着,根据是否发现边缘,将去卷积核心应用于当前图像窗口。例如,如果发现边缘,则可应用强去卷积核心。否则,可将弱去卷积核心应用于所述窗口。此外,设置去卷积核心增益可根据边缘的“强度”来进行。例如,在发现边缘这种情况下,图像窗口中的像素的标准偏差在应用边缘掩膜之后计算得出。所述核心的增益接着是以类似于上述标准偏差方法的方式基于所述标准偏差度量的。Next, depending on whether an edge is found, a deconvolution kernel is applied to the current image window. For example, if edges are found, a strong deconvolution kernel can be applied. Otherwise, a weak deconvolution kernel may be applied to the window. Additionally, setting the deconvolution kernel gain can be done in terms of the "strength" of the edges. For example, in the case of finding edges, the standard deviation of the pixels in the image window is calculated after applying the edge mask. The core's gain is then measured based on the standard deviation in a manner similar to the standard deviation method described above.
亦可采用其它边缘检测方法。例如,包括但不限于Roberts、Prewitt、Sobel或Canny的其它边缘检测掩膜可用来确定窗口中是否存在边缘。Other edge detection methods may also be used. For example, other edge detection masks including, but not limited to, Roberts, Prewitt, Sobel, or Canny can be used to determine whether an edge exists in a window.
基于熵的实施例Entropy-based embodiment
在一种实施方式中,要应用于所述图像窗口的核心的大小(例如,去卷积核心的高增益或低增益)是基于当前图像窗口中的熵的。较高的熵可能表明在当前图像窗口中有大量信息,因而可能期望将更强的核心应用于该窗口。一“平面”图像窗口可能具有低的熵;因此,可能期望将更弱的核心应用于所述窗口处理度量。可如等式23所描述的来确定所述熵(Entropy)计算。In one embodiment, the size of the kernel to be applied to the image window (eg high gain or low gain of the deconvolution kernel) is based on the entropy in the current image window. Higher entropy may indicate that there is a lot of information in the current image window, and thus it may be desirable to apply a stronger core to that window. A "flat" image window may have low entropy; therefore, it may be desirable to apply weaker cores to the window processing metrics. The Entropy calculation may be determined as described in Equation 23.
等式23:
在等式23中,pi是当前图像窗口中像素值i的经验概率。如果,例如,所述图像窗口是“平面”的,则熵为0,如果其包括边缘(具有不同强度值的像素),则所述熵将接收一高值。通过对来自等式23的熵值归一化,可确定实际处理度量。In Equation 23, pi is the empirical probability of pixel value i in the current image window. If, for example, the image window is "flat" the entropy is 0, if it includes edges (pixels with different intensity values) the entropy will receive a high value. By normalizing the entropy value from Equation 23, the actual processing metric can be determined.
然而,由于所述熵不考虑像素之间差的量,因此高熵值可由随机噪声引起。因此,在一种实施方式中,图像的S/N用来确定是否采用熵技术。However, since the entropy does not take into account the amount of difference between pixels, high entropy values may be caused by random noise. Therefore, in one embodiment, the S/N of the image is used to determine whether to employ entropy techniques.
基于梯度的实施例Gradient-based embodiment
在一种实施方式中,通过计算在当前正处理的窗口中绕中心像素的几个局部梯度,来确定边缘的存在。接着根据梯度幅度来计算一度量,例如根据梯度幅度的加权平均。可根据下列实施例获得梯度:In one embodiment, the presence of edges is determined by computing several local gradients around the center pixel in the window currently being processed. A metric is then calculated from the gradient magnitudes, for example from a weighted average of the gradient magnitudes. Gradients can be obtained according to the following examples:
表IVTable IV
从表IV来看,可能的梯度是:|1-13|,|2-12|,|3-11|,|6-8|,|4-10|,|5-9|。From Table IV, the possible gradients are: |1-13|, |2-12|, |3-11|, |6-8|, |4-10|, |5-9|.
表VTable V
从表V来看,可能的梯度是:|1-9|,|2-8|,|3-7|,|6-4|。From Table V, the possible gradients are: |1-9|, |2-8|, |3-7|, |6-4|.
表IV示出了用于bayer图像中绿色的5x5支持的像素位置,表V示出了用于bayer图像中红色和蓝色的5x5支持的像素位置。当计算所述梯度的加权平均时,权值可由参加某一梯度的像素之间的空间距离来确定。Table IV shows the pixel locations for the 5x5 support for green in the bayer image, and Table V shows the pixel locations for the 5x5 support for red and blue in the bayer image. When calculating the weighted average of the gradients, the weights may be determined by the spatial distance between pixels participating in a certain gradient.
一旦计算出所述度量,所述核心更新机制可如前面所提出的进行。也就是说,可根据可能的动态范围来归一化所述度量,从而确定“γ”。在一种实施方式中,类似于图15所描述的,可利用增益函数来进行所述归一化。接着,本文所公开的影响如α及β更新中所使用的去卷积核心的技术,可用于γ更新。Once the metrics are calculated, the core update mechanism can proceed as set forth above. That is, the metric may be normalized according to the possible dynamic range, thereby determining "γ". In one embodiment, similar to that described in FIG. 15 , the normalization may be performed using a gain function. Then, techniques disclosed herein that affect deconvolution kernels as used in alpha and beta updates can be used for gamma updates.
在一种实施方式中,所述用于创建所述度量的方法由上述方法中的一些方法的加权组合组成。例如,所述最终度量是基于所述标准偏差度量和所述梯度度量的加权平均的,或者采用2种或2种以上度量的任意其它组合来创建所述最终度量。In one embodiment, the method for creating the metric consists of a weighted combination of some of the methods described above. For example, the final metric is based on a weighted average of the standard deviation metric and the gradient metric, or any other combination of 2 or more metrics is used to create the final metric.
可用光(available light)实施例available light embodiment
亦可拥有两种或两种以上单独的增益函数,所述增益函数取决于当前图像窗口中光的量(级别)的局部估计来使用,而不是总是使用相同的增益函数来从所述信息度量中确定“γ”。在一种实施方式中,这种估计可能是中间像素本身或者几个近距离像素的加权平均的值。图24中示出了一种示例性方法2400,其中正好使用了两种增益函数,尽管可使用不止两种的增益函数,图24仅为举例。在步骤2404,将经缩放的信息度量(结合图23讨论)传递给两个增益函数Fg1和Fg2。在这个实施例中,增益函数Fg1可适用于高光级,而增益函数Fg2可适用于低光级。与此同时,在步骤2408,测量当前正处理的像素的光级。在步骤2412和2416,将第一及第二增益函数Fg1和Fg2应用于所述经缩放的信息度量。在步骤2420,根据所述像素的光级,对所述两种增益函数的输出进行加权,按照规定,所述光级在步骤2408测量,并求和产生一统一的度量。It is also possible to have two or more separate gain functions that are used depending on a local estimate of the amount (level) of light in the current image window, instead of always using the same gain function to derive from the information "γ" is determined in the metric. In one embodiment, this estimate may be the value of the intermediate pixel itself or a weighted average of several nearby pixels. An exemplary method 2400 is shown in FIG. 24, where exactly two gain functions are used, although more than two gain functions may be used, FIG. 24 is only an example. At step 2404, the scaled information measure (discussed in connection with FIG. 23) is passed to two gain functions Fg1 and Fg2. In this embodiment, the gain function Fg1 can be applied to high light levels, and the gain function Fg2 can be applied to low light levels. At the same time, at step 2408, the light level of the pixel currently being processed is measured. In steps 2412 and 2416, first and second gain functions Fg1 and Fg2 are applied to the scaled information metric. In step 2420, the outputs of the two gain functions are weighted according to the light level of the pixel measured in step 2408, as specified, and summed to produce a unified metric.
用后去卷积缩放调整核心效果Adjust Core Effects with Post Deconvolution Scaling
基于α、β和γ的图像处理包括将所述核心乘以γ并不是必需的。图20描绘了一种实施方式,其中将α、β和γ“缩放”应用于未经修改的核心的去卷积结果。在这种实施方式中,所述图像接口208提供一噪声级估计器信号以及一阴影指示符给缩放1602,其利用α计算逻辑212计算“α”。所述α计算可以类似于图2所描绘的实施方式的方式执行。在这种实施方式中,图像接口208提供了一阴影指示符信号和一像素索引给缩放1602,其利用β计算逻辑302计算“β”。所述β计算可以类似于图4所描绘的实施方式的方式执行。在这种实施方式中,所述图像接口208提供当前像素的值及其邻居给缩放1602,其利用γ计算逻辑702计算“γ”。所述γ计算可根据本文所公开的任意技术执行。It is not essential that image processing based on α, β and γ includes multiplying the kernel by γ. Figure 20 depicts an embodiment in which alpha, beta and gamma "scaling" is applied to the deconvolution result of the unmodified kernel. In this embodiment, the
所述α/β/γ缩放2012输入卷积结果、α、β、γ和正处理的当前像素的初始值,并输出当前像素的最终结果。在一种实施方式中,当前像素是信号矩阵的中心像素。在一种实施方式中,所述α缩放1612执行如下:The α/β/γ scaling 2012 inputs the convolution result, α, β, γ and the initial value of the current pixel being processed, and outputs the final result of the current pixel. In one embodiment, the current pixel is the center pixel of the signal matrix. In one embodiment, the alpha scaling 1612 is performed as follows:
等式24:FinalRsult=ConvRs·α·β·χ+(1-α·β·χ)·InputPixelEquation 24: FinalRsult = ConvRs·α·β·χ+(1−α·β·χ)·InputPixel
在等式24中,ConvRs是卷积结果,InputPixel是正处理的当前像素的初始值。因而,利用未经修改的核心以及一个或多个其它值,当前像素的最终处理结果是卷积结果的加权和。那些其它值包括但不限于输入图像中的初始像素值。在这种实施方式中,所述α、β和γ参数用作加权(或缩放)参数。可使用α、β和γ参数的任意组合。In Equation 24, ConvRs is the convolution result and InputPixel is the initial value of the current pixel being processed. Thus, with the unmodified kernel and one or more other values, the final processed result for the current pixel is a weighted sum of the convolution results. Those other values include, but are not limited to, the original pixel values in the input image. In such an embodiment, the alpha, beta and gamma parameters are used as weighting (or scaling) parameters. Any combination of alpha, beta and gamma parameters can be used.
6.0根据实施方式调整核心效果以处理运动模糊6.0 Adjusts Core Effects to handle motion blur depending on implementation
6.1校正运动模糊综述6.1 Overview of Correcting Motion Blur
运动模糊是在图像采集期间由于照相机运动而导致的图像模糊。当用长的曝光时间采集图像(例如在低光照条件下)时,经常出现运动模糊。通常,运动模糊的特征在于具有方向性的PSF。例如,水平线意味着由于摄像机的水平运动而导致的模糊。Motion blur is the blurring of an image due to camera movement during image acquisition. Motion blur often occurs when images are acquired with long exposure times, such as in low light conditions. Typically, motion blur is characterized by a PSF that is directional. Horizontal lines, for example, imply blur due to the horizontal motion of the camera.
补偿运动模糊通常包括确定运动模糊和校正所述经确定的运动模糊。确定运动模糊包括确定运动的方向、数量和特征,其可用运动矢量来指定。运动矢量可由陀螺仪测量,由图像本身推断出,从一组图像推断出,或通过其它方式提取。可将去卷积核心应用于所述图像,从而校正所述经确定的运动模糊。Compensating for motion blur generally includes determining motion blur and correcting the determined motion blur. Determining motion blur includes determining the direction, amount and character of motion, which can be specified with motion vectors. Motion vectors may be measured by gyroscopes, inferred from the images themselves, inferred from a set of images, or extracted by other means. A deconvolution kernel may be applied to the image, correcting the determined motion blur.
本文描述了各种图像处理算法,其中应用某些空间图像处理核心的效果可根据诸如S/N、镜头阴影轮廓、取决于像素位置的光学象差、以及当前正处理的像素的位置中图像特征之类的各种因素来调整。在一种实施方式中,运动模糊亦可在相同IP方框中校正,其中应用了前面提到的空间图像处理核心。本文中,空间图像处理核心可称为用于校正“镜头PSF”的核心。因而,运动模糊和镜头PSF模糊可同时校正。由于运动模糊和镜头PSF模糊可塑造为与图像卷积的PSF,因此所述组合的模糊可通过同时卷积运动模糊PSF和镜头PSF来塑造。因而,在一种实施方式中,可调整所述去卷积核心来匹配所述组合的运动模糊PSF和镜头PSF。This paper describes various image processing algorithms in which the effect of applying certain spatial image processing kernels can be determined according to features such as S/N, lens shading profile, optical aberrations depending on pixel position, and the position of the pixel currently being processed. and so on to adjust for various factors. In one embodiment, motion blur can also be corrected in the same IP block, where the aforementioned spatial image processing core is applied. Herein, the spatial image processing core may be referred to as a core for correcting the "lens PSF". Thus, motion blur and lens PSF blur can be corrected simultaneously. Since motion blur and lens PSF blur can be shaped as a PSF convolved with an image, the combined blur can be shaped by simultaneously convolving the motion blur PSF and the lens PSF. Thus, in one embodiment, the deconvolution kernel may be tuned to match the combined motion blur PSF and shot PSF.
如果使用,运动矢量可或者从单帧图像中提取,或者从帧序列中提取。举非限制性的实施例来说,陀螺仪可用于帮助定义运动矢量。在一种实施方式中,根据运动方向(或几个方向),运动模糊PSF可从所述运动矢量中推断出。在一种实施方式中,去卷积反向核心从运动模糊PSF中计算得出。If used, motion vectors can be extracted from either a single frame image, or a sequence of frames. By way of non-limiting example, a gyroscope can be used to help define motion vectors. In one embodiment, depending on the motion direction (or directions), a motion blur PSF can be deduced from said motion vectors. In one embodiment, the deconvolution inverse kernel is computed from the motion blur PSF.
然而,并不要求从所述运动矢量中推断出运动模糊PSF。相反地,来自运动矢量本身的信息可足以校正运动模糊,而不用推断出运动模糊PSF。替换地,所述运动模糊信息可能已经通过(运动模糊)PSF的形式给出,其中运动矢量对推断出所述运动模糊PSF并不是必需的。However, it is not required to deduce the motion blur PSF from the motion vectors. Conversely, information from the motion vectors themselves may be sufficient to correct motion blur without inferring a motion blur PSF. Alternatively, the motion blur information may already be given in the form of a (motion blur) PSF, wherein motion vectors are not necessary for deriving the motion blur PSF.
在一种实施方式中,从运动模糊PSF或运动矢量中确定去卷积反向核心。所述去卷积反向核心匹配所述模糊方向和形状,且要锐化所述图像。在一种实施方式中,所述去卷积核心可从一组匹配所述运动模糊PSF的可能方向的核心中来选择。这些去卷积核心保存在存储器中,并包括大量运动模糊可能性。在一种实施方式中,所选择的核心匹配一PSF,所述PSF是镜头PSF和沿运动矢量方向的运动模糊PSF的卷积。可利用匹配算法选择核心。In one embodiment, the deconvolution inverse kernel is determined from the motion blur PSF or motion vectors. The deconvolution inverse kernel matches the blur direction and shape, and the image is to be sharpened. In one embodiment, the deconvolution kernel may be selected from a set of kernels that match the possible orientations of the motion blur PSF. These deconvolution cores are kept in memory and include a large number of motion blur possibilities. In one embodiment, the selected kernel matches a PSF that is the convolution of the shot PSF and the motion blur PSF along the direction of the motion vector. The cores may be selected using a matching algorithm.
一旦通过计算或选择确定了所述去卷积核心,可通过将所述图像与所述去卷积核心卷积来处理所述图像,同时考虑根据如上述章节中提到的S/N、像素位置、镜头阴影轮廓和图像特征来调整所述去卷积核心。Once the deconvolution kernel is determined by calculation or selection, the image can be processed by convolving the image with the deconvolution kernel, taking into account the S/N, pixel position, lens shading profile, and image features to adjust the deconvolution kernel.
注意,去卷积核心可处理除了模糊之外的其它光学象差,所述核心可具有任意期望频率响应。在一种实施方式中,运动模糊校正可集成到本文所描述的锐化方框114中,而不用增加硅尺寸。例如,用于实施锐化算法的硬件被用于进行运动模糊校正。因而,与在两个不同的ISP方框中分别地处理运动模糊和PSF模糊相比,本文公开的技术按照资源(例如,硅尺寸/门数、处理器周期、功耗、复杂性)来说是相对划算的。Note that the deconvolution kernel can handle other optical aberrations besides blur, which kernel can have any desired frequency response. In one embodiment, motion blur correction can be integrated into the sharpening
6.2模糊点分布函数实施方式6.2 Implementation of fuzzy point distribution function
一种实施运动模糊校正的方式是,在预览模式期间,估计运动模糊的特征并创建匹配的去卷积核心(“运动模糊核心”)。这种方法在图17所描绘的实施方式中说明。这种方法通过在预览模式期间比较帧来识别运动模糊。接着,一进入采集模式(capture mode),就将运动模糊核心和其它核心应用于图像。其它核心可用于锐化。在各种实施方式中,所述α、β、和/或γ参数用于修改用其它核心进行处理的效果的强度,如本文所述。One way to implement motion blur correction is to estimate the characteristics of the motion blur and create a matching deconvolution kernel ("motion blur kernel") during preview mode. This approach is illustrated in the embodiment depicted in FIG. 17 . This method identifies motion blur by comparing frames during preview mode. Then, upon entering capture mode, the motion blur kernel and other kernels are applied to the image. Other cores can be used for sharpening. In various implementations, the alpha, beta, and/or gamma parameters are used to modify the strength of the effect of processing with other cores, as described herein.
现在参考预览模式ISP 1710,在方框1725中,基于运动模糊图像1722来估计模糊PSF 1721。可通过利用本领域技术人员知道的技术分析所述被采集的图像1722,来估计所述模糊PSF 1721。一种用于通过分析采集图像1722来估计模糊PSF 1721的技术包括,使用陀螺仪来供给运动矢量给照相机。另一种方法包括利用相关性来找到模糊的方向,比较多个相邻帧,以及基于所述比较提取运动方向。在方框1728中,基于模糊PSF1721,创建运动模糊去卷积核心。Referring now to the
现在参考采集模式ISP链1720,将所述运动模糊核心提供给对图像执行其它核心处理的逻辑。在一种实施方式中,所述其它逻辑是数字自动聚焦方框111。由于所述卷积运算是相结合的(即,a*(b*图像)=(a*b)*图像),因此所述来自锐化的卷积核心和运动模糊核心可组合成将应用于所述图像的一个核心。如果所述锐化未启动,但所述数字自动聚焦方框111在IP链1720中实施,则所述数字自动聚焦方框111可单独用作运动模糊去卷积。Referring now to the acquisition
6.3运动平移矢量实施方式6.3 Motion translation vector implementation
IP链中的所述数字自动聚焦方框111可用于解决在预览模式或视频信息流期间摇晃图像的问题。在预览模式或视频信息流中,在相邻帧之间可能出现空间偏移,这在显示屏上造成“摇晃的”图像。一种解决该问题的方式是,沿与从上一帧估计的运动矢量相反的方向将图像平移预定数量。一旦估计出所述运动矢量,可通过将所述图像与导致沿预期方向的空间平移的核心卷积,在所述数字自动聚焦方框111中实施该平移。The digital autofocus block 111 in the IP chain can be used to solve the problem of shaky images during preview mode or video streaming. In preview mode or video streaming, a spatial offset may occur between adjacent frames, which results in a "shaky" image on the display screen. One way to solve this problem is to translate the image by a predetermined amount in the opposite direction to the motion vector estimated from the previous frame. Once the motion vectors are estimated, this translation can be implemented in the digital autofocus block 111 by convolving the image with a kernel that results in a spatial translation in the desired direction.
图18描绘了根据实施方式校正运动平移。图像1802a-c中的每幅图像中的帧1801包括“被浏览”的图像。注意,所述帧正相对于所述三幅图像1802a-c中描绘的房子移动。所述运动矢量估计逻辑1810在方框1820中根据当前帧(n)和来自前一帧(n-1)的参数估计运动矢量。例如,从每个帧中的多个位置中提取特征。接着,当前帧中的特征位置与一个或多个先前帧中的特征位置相比较,从而计算运动矢量。所述特征的实施例包括但不限于,边缘或者可在帧和帧之间连续的景色中的其它唯一标记。Figure 18 depicts correcting for motion translation, according to an embodiment.
基于所述估计运动矢量,在方框1830中计算平移核心。一种用于从所述运动矢量中计算平移核心的技术包括采用kronecker-δ核心,所述核心根据早期计算得到的运动矢量而平移。在预览/视频模式ISP 1850中,将平移核心提供给所述数字自动聚焦方框111,其中基于所述平移核心和其它核心来处理帧(n)。其它核心可用于锐化。在各种实施方式中,所述α、β、和/或γ参数用来修改利用其它核心进行处理的效果的强度,如本文所述。Based on the estimated motion vectors, in block 1830 a translation kernel is computed. One technique for computing a translation kernel from the motion vectors includes employing a kronecker-delta kernel that translates from earlier computed motion vectors. In preview/
6.4组合锐化及运动模糊核心6.4 Combining sharpening and motion blur kernels
如本文所提到的,所述锐化算法可使用其可实施相关的(implementation-dependent)核心的某一支持尺寸。例如,所述核心可提供一9x9像素支持。然而,与所述锐化方法一起使用所述反运动模糊(anti-motion-blur)不必增大所述核心尺寸。通常,当卷积两个核心时-如果一个是MxM尺寸,另一个是NxN尺寸,则他们的卷积是(M+N-1)x(M+N-1)。为了保持核心尺寸,可改变所述锐化核心的形状,以更接近地类似及补充所述运动模糊核心。同时,注意,所述去模糊核心可具有不对称的形状。例如,所述去模糊核心可包括矩形、对角线、以及甚至圆形支持,且不必是正方形支持。该不对称不仅对“简单的”摇晃-路径(诸如线之类的),而且对复杂的摇晃-路径(诸如十字形、T、或圆周路径之类的)提供补偿。As mentioned herein, the sharpening algorithm may use a certain support size for which an implementation-dependent kernel may be used. For example, the core may provide a 9x9 pixel support. However, using the anti-motion-blur together with the sharpening method does not necessarily increase the kernel size. Usually, when convolving two cores - if one is MxM size and the other is NxN size, then their convolution is (M+N-1)x(M+N-1). In order to maintain kernel size, the shape of the sharpen kernel can be changed to more closely resemble and complement the motion blur kernel. Also, note that the deblurring kernel may have an asymmetric shape. For example, the deblurring kernel may include rectangular, diagonal, and even circular supports, and not necessarily square supports. This asymmetry provides compensation not only for "simple" jolt-paths (such as lines), but also for complex jolt-paths (such as cross-shaped, T, or circular paths).
8.0硬件综述8.0 Hardware Overview
8.1移动设备实施例8.1 Mobile Device Embodiment
图13说明了一种示例性移动设备1300的方框图,其中可实施本发明的实施方式。移动设备1300包括照相机装置1302、照相机及图形接口1380、以及通信电路1390。照相机装置1370包括照相机镜头1336、图像传感器1372以及图像处理器1374。包括单一镜头或多个镜头的照相机镜头1336,采集并聚焦光到图像传感器1372之上。图像传感器1372采集由通过照相机镜头1336采集并聚焦的光形成的图像。图像传感器1372可能是任意传统的图像传感器1372,诸如电荷耦合设备(CCD)或互补金属氧化物半导体(CMOS)图像传感器之类。图像处理器1374处理由图像传感器1372采集的未处理图像数据,随后保存在存储器1396中,输出到显示屏1326上,和/或通过通信电路1390传输。所述图像处理器1374可以是传统的数字信号处理器,其编程来处理图像数据,这在现有技术中是熟知的。Figure 13 illustrates a block diagram of an exemplary
图像处理器1374经由照相机及图形接口1380与通信电路1390接口。通信电路1390包括天线1392、收发机1394、存储器1396、微处理器1392、输入/输出电路1394、音频处理电路1396、和用户接口1397。收发机1394耦合至接收及传输信号的天线1392。收发机1392是完全功能性的蜂窝式无线电收发机,其可根据任意已知标准进行操作,包括一般作为全球数字移动电话系统(GSM)、TIA/EIA-136、cdmaOne、cdma2000、UMTS和宽带CDMA而被知晓的标准。
所述图像处理器1374可利用本文所描述的一种或多种实施方式,处理由传感器1372获取的图像。所述图像处理器1374可用硬件、软件、或软件与硬件的某种组合来实施。例如,所述图像处理器1374可作为专用集成电路(ASIC)的一部分来实施。举另一个例子来说,为了实施本发明的一种或多种实施方式,所述图像处理器1374可存取保存在计算机可读介质上的指令,并在处理器上执行那些指令。The
微处理器1392根据保存在存储器1396中的程序,控制移动设备1300的操作,包括收发机1394。微处理器1392可进一步执行本文所公开的图像处理实施方式的部分或全部。处理功能可实施于单个微处理器中,或者实施在多个微处理器中。适当的微处理器可包括,例如,通用及专用微处理器和数字信号处理器。存储器1396表示移动通信设备中的全部存储器层次,并可包括随机存取存储器(RAM)和只读存储器(ROM)。计算机程序指令和操作所需数据保存在非易失性存储器中,诸如EPROM、EEPROM、和/或闪存之类,这些可实施为离散设备、堆设备,或者可与微处理器1392集成在一起。
输入/输出电路1394经由照相机及图形接口1380将微处理器1392与照相机设备1370的图像处理器1374相接口。根据现有技术中已知的任意方法,照相机及图形接口1380亦可将图像处理器1374与用户接口1397相接口。另外,输入/输出电路1394与微处理器1392、收发机1394、音频处理电路1396、及通信电路1390的用户接口1397相接口。用户接口1397包括显示屏1326、扬声器1328、麦克风1338以及键区1340。布置在显示区域背面的显示屏1326允许操作者能看见拨号数字、图像、呼叫状态、菜单选项以及其他业务信息。键区1340包括一字母数字小键盘,并可选地包括一导航控制,诸如现有技术中所熟知的操纵杆控制(未示出)之类的。进一步地,键区1340可包括诸如掌机或只能电话上所使用的那些之类的完全QWERTY键盘。键区1340允许操作者拨号、输入命令以及选择选项。Input/
麦克风1338将用户声音转换成电子音频信号。音频处理电路1396从麦克风1338中接受模拟音频输入,处理这些信号,以及经由输入/输出1394提供这些经处理的信号给收发机1394。收发机1394接收的音频信号由音频处理电路1396来处理。将由音频处理电路1396处理产生的基本模拟输入信号提供给扬声器1328。扬声器1328接着讲所述模拟音频信号转换成可被用户听到的声音信号。The
本领域技术人员赞同可组合图13中示出的一个或多个元件。例如,当所述照相机及图形接口1380被作为图13中的分离组件示出时,要理解照相机机及图形接口1380可与输入/输出电路1394合并。进一步地,微处理器1392、输入/输出电路1394、音频处理电路1396、图像处理器1374、和/或存储器1396可合并成一特别设计的特定用途集成电路(ASIC)1391。Those skilled in the art will appreciate that one or more of the elements shown in FIG. 13 may be combined. For example, while the camera and graphics interface 1380 are shown as separate components in FIG. 13 , it is understood that the camera and graphics interface 1380 may be combined with the input/
8.2计算机系统实施例8.2 Computer System Embodiment
图14是一幅说明了其上可实施本发明的一种或多种实施方式的计算机系统1400的方框图。计算机系统1400包括用于通讯信息的总线1402或其它通信机制,以及与总线1402耦合以处理信息的处理器1404。计算机系统1400亦包括诸如随机存取存储器(RAM)或其它动态存储器设备之类的主存1406,其耦合至总线1402以保存信息和要由处理器1404执行的指令。主存1406亦可用于在执行要由处理器1404执行的指令期间保存临时变量或其它中间信息。计算机系统1400进一步包括只读存储器(ROM)1408或耦合至总线1402的其它静态存储器设备,以保存静态信息和用于处理器1404的指令。诸如磁盘或光盘之类的存储设备1410被提供及耦合至总线1402,以保存信息和指令。Figure 14 is a block diagram illustrating a
计算机系统1400可经由总线1402耦合至诸如阴极射线管(CRT)之类的显示屏1412,以显示信息给计算机用户。输入设备1414,包括字母数字及其它键,耦合至总线1402,以将信息和命令选择传达给处理器1404。另一种类型的用户输入设备是光标控制1416,诸如鼠标、追踪球或光标方向键之类,以将方向信息和命令选择传达给处理器1404,以及在显示屏1412上控制光标移动。该输入设备典型地在两个轴上具有自由度,第一轴(例如,X)和第二轴(例如,Y),允许该设备在平面上指定位置。计算机系统1400可进一步包括诸如麦克风或照相机之类的音频/视频输入设备1415,以供给可听见的声音、静态图像或动态视频,其中任意一种都可利用上述实施方式来处理。
可实施本文公开的各种处理技术,从而在计算机系统1400上处理数据。根据本发明的一种实施方式,响应于处理器1404执行包括在主存1406中的一条或多条指令的一个或多个序列,那些技术由计算机系统1400执行。这些指令可从诸如存储设备1410之类的另一机器可读介质中读入主存1406中。执行包括在主存1406中的指令序列使处理器1404执行本文所描述的过程步骤。在可替代的实施方式中,硬布线电路可用于替换或结合软件指令来实施本发明。因而,本发明的实施方式不限于硬件电路和软件的任意特定组合。Various processing techniques disclosed herein may be implemented to process data on
这里使用的术语“机器可读介质”指任意参与提供使机器按特定方式操作的数据的介质。在利用计算机系统1400实施的实施方式中,例如包括各种机器可读介质,以提供指令给处理器1401执行。这样的介质可采用许多形式,包括但不限于存储介质和传输介质。存储介质包括非易失性介质和易失性介质。非易失性介质包括例如诸如存储设备1410之类的光盘或磁盘。易失性介质包括诸如主存1406之类的动态存储器。传输介质包括同轴电缆、铜线和光纤,包括包含总线1402的线。传输介质亦可采用声波或光波的形式,诸如在无线电波和红外数据通信器件产生的那些之类的声波或光波。所有这样的介质必须是有形的,使所述由介质携带的指令能被一种将指令读入机器的物理机制所检测。The term "machine-readable medium" is used herein to refer to any medium that participates in providing data that causes a machine to operate in a specific fashion. In an embodiment implemented by the
机器可读介质的通常形式包括,例如,软盘、软磁盘、硬盘、磁带、或任意其它磁介质、CD-ROM、任意其它光介质、穿孔卡、纸带、任意其它具有孔的图案的物理介质、RAM、PROM、EPROM、FLASH-EPROM、任意其它存储器片或盒式磁带、之后描述的载波、或任意其它计算机可读取的介质。Common forms of machine-readable media include, for example, floppy disks, floppy disks, hard disks, magnetic tape, or any other magnetic media, CD-ROMs, any other optical media, punched cards, paper tape, any other physical media having a pattern of holes, RAM, PROM, EPROM, FLASH-EPROM, any other memory chips or cartridges, carrier waves described later, or any other computer-readable medium.
各种形式的机器可读介质可涉及携带一条或多条指令的一个或多个序列到处理器1404中执行。例如,所述指令可初始地携带在远程计算机的磁盘上。所述远程计算机可将所述指令载入其动态存储器中,并利用调制解调器在电话线上发送所述指令。计算机系统1400本地的调制解调器可在电话线上接收数据,并使用红外发射机将所述数据转换成红外信号。红外检测器可接收红外线信号所携带的数据,适当的电路可将所述数据置于总线1402上。总线1402将数据携带到主存1406中,处理器1404可从中查找及执行指令。在处理器1404执行之前或执行之后,所述由主存1406接收的指令可选地保存在存储设备1410上。Various forms of machine-readable media may be involved in carrying one or more sequences of one or more instructions to
计算机系统1400亦包括耦合至总线1402的通信接口1418。通信接口1418提供一耦合至网络链路1420的两路数据通信,所述网络链路1420连接至局域网1422。例如,通信接口1418可能是一综合服务数字网(ISDN)卡或一调制解调器,以提供数据通信连接给对应类型的电话线。举另一个例子来说,通信接口1418可能是一局域网(LAN)卡,以提供数据通信连接给兼容的LAN。亦可实施无线链路。在任意这样的实施中,通信接口1418发送及接收携带表示各种类型的信息的数字数据流的电子、电磁或光信号。
网络链路1420典型地通过一个或多个网络提供数据通信给其它数据设备。例如,网络链路1420可通过局域网1422提供链接给主机1424或由因特网服务提供商(ISP)1426操作的数据设备。ISP 1426依次通过万维分组数据通信网络提供数据通信业务,所述万维分组数据通信网络现在一般称为“Internet”1428。局域网1422和Internet 1428均使用携带数字数据流的电子、电磁或光信号。通过各种网络的信号和网络链路1420上及通过通信接口1418的信号,是载波传输信息的示例性形式,所述信号携带数字数据往返于计算机系统1400。
计算机系统1400可通过网络、网络链路1420和通信接口1418发送消息和接收数据,包括程序代码。在Internet实施例中,服务器1430可通过Internet 1428、ISP 1426、局域网1422和通信接口1418,传送应用程序的请求码。
当所接收的代码被接收、和/或保存在存储装置1410、或其它非易失性存储以进行后续执行时,其可由处理器1404执行。按照这种方式,计算机系统1400可获得载波形式的应用程序代码。The received code may be executed by
由本文所述的程序代码的实施方式处理的数据,可从各种来源获得,包括但不限于A/V输入设备1415、存储装置1410和通信接口1418。Data processed by embodiments of the program code described herein may be obtained from a variety of sources including, but not limited to, A/
Claims (39)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310331810.0A CN103561206B (en) | 2007-04-24 | 2008-04-24 | Image processing method and device |
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US92610907P | 2007-04-24 | 2007-04-24 | |
US60/926,109 | 2007-04-24 | ||
US93317707P | 2007-06-04 | 2007-06-04 | |
US60/933,177 | 2007-06-04 | ||
US11/970,427 | 2008-01-01 | ||
US11/970,427 US8306348B2 (en) | 2007-04-24 | 2008-01-07 | Techniques for adjusting the effect of applying kernels to signals to achieve desired effect on signal |
PCT/EP2008/003278 WO2008128772A2 (en) | 2007-04-24 | 2008-04-24 | Techniques for adjusting the effect of applying kernels to signals to achieve desired effect on signals |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310331810.0A Division CN103561206B (en) | 2007-04-24 | 2008-04-24 | Image processing method and device |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101669142A true CN101669142A (en) | 2010-03-10 |
CN101669142B CN101669142B (en) | 2013-10-16 |
Family
ID=39876007
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310331810.0A Active CN103561206B (en) | 2007-04-24 | 2008-04-24 | Image processing method and device |
CN2008800134225A Active CN101669142B (en) | 2007-04-24 | 2008-04-24 | Techniques for adjusting the effect of applying kernels to signals to achieve desired effect on signals |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310331810.0A Active CN103561206B (en) | 2007-04-24 | 2008-04-24 | Image processing method and device |
Country Status (6)
Country | Link |
---|---|
US (1) | US8306348B2 (en) |
EP (1) | EP2147406A2 (en) |
JP (1) | JP5374700B2 (en) |
KR (1) | KR101313911B1 (en) |
CN (2) | CN103561206B (en) |
WO (1) | WO2008128772A2 (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102907083A (en) * | 2010-05-21 | 2013-01-30 | 松下电器产业株式会社 | Camera device, image processing device, image processing method, and image processing program |
CN103460682A (en) * | 2011-03-24 | 2013-12-18 | 三菱电机株式会社 | Image processing device and method |
CN106560883A (en) * | 2015-10-02 | 2017-04-12 | 乐金显示有限公司 | Organic Light-emitting Display And Method For Driving The Same |
WO2018068250A1 (en) * | 2016-10-13 | 2018-04-19 | 深圳市大疆创新科技有限公司 | Method and device for data processing, chip and camera |
CN108513043A (en) * | 2017-02-27 | 2018-09-07 | 中兴通讯股份有限公司 | A kind of image denoising method and terminal |
CN110536063A (en) * | 2018-05-25 | 2019-12-03 | 神讯电脑(昆山)有限公司 | Automobile-used image-taking device and image acquisition method |
Families Citing this family (82)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8131012B2 (en) | 2007-02-08 | 2012-03-06 | Behavioral Recognition Systems, Inc. | Behavioral recognition system |
JP4922091B2 (en) | 2007-07-23 | 2012-04-25 | ルネサスエレクトロニクス株式会社 | Video signal processing device, video signal processing method, and display device |
US8300924B2 (en) * | 2007-09-27 | 2012-10-30 | Behavioral Recognition Systems, Inc. | Tracker component for behavioral recognition system |
US8094943B2 (en) * | 2007-09-27 | 2012-01-10 | Behavioral Recognition Systems, Inc. | Background-foreground module for video analysis system |
US8200011B2 (en) | 2007-09-27 | 2012-06-12 | Behavioral Recognition Systems, Inc. | Context processor for video analysis system |
US8310587B2 (en) | 2007-12-04 | 2012-11-13 | DigitalOptics Corporation International | Compact camera optics |
JP5191224B2 (en) * | 2007-12-07 | 2013-05-08 | イーストマン コダック カンパニー | Image processing device |
US20090179913A1 (en) * | 2008-01-10 | 2009-07-16 | Ali Corporation | Apparatus for image reduction and method thereof |
WO2009136923A2 (en) * | 2008-05-07 | 2009-11-12 | Tessera, Inc. | Efficient implementations of kernel computation |
US8471921B1 (en) * | 2008-06-23 | 2013-06-25 | Marvell International Ltd. | Reducing optical crosstalk and radial fall-off in imaging sensors |
US8537233B1 (en) | 2008-10-14 | 2013-09-17 | Marvell International Ltd. | Preventing color artifacts in overexposed regions and preserving maximum signals in near-overexposed regions of digital images |
JP2012515970A (en) * | 2009-01-22 | 2012-07-12 | ヒューレット−パッカード デベロップメント カンパニー エル.ピー. | Estimating image blurring using specular highlights |
WO2010114449A1 (en) * | 2009-03-30 | 2010-10-07 | Telefonaktiebolaget Lm Ericsson (Publ) | Barcode processing |
TW201044856A (en) * | 2009-06-09 | 2010-12-16 | Ind Tech Res Inst | Image restoration method and apparatus |
US8482622B2 (en) * | 2009-08-27 | 2013-07-09 | Sony Corporation | Method, system and computer program product for reducing motion blur |
EP2454876B1 (en) * | 2009-10-21 | 2013-12-04 | Ron Banner | Real-time video deblurring |
CN102098520A (en) * | 2009-12-15 | 2011-06-15 | 佳能企业股份有限公司 | Color interpolation system and method |
TW201121305A (en) * | 2009-12-15 | 2011-06-16 | Ability Entpr Co Ltd | System and method of color interpolation |
WO2011091079A1 (en) * | 2010-01-19 | 2011-07-28 | Pixar | Selective diffusion of filtered edges in images |
US8319861B2 (en) | 2010-06-04 | 2012-11-27 | Apple Inc. | Compensation for black level changes |
US8228406B2 (en) | 2010-06-04 | 2012-07-24 | Apple Inc. | Adaptive lens shading correction |
US8325248B2 (en) | 2010-06-04 | 2012-12-04 | Apple Inc. | Dual processing of raw image data |
KR101681776B1 (en) * | 2010-06-10 | 2016-12-01 | 엘지디스플레이 주식회사 | Method of controlling picture quality and display device using the same |
WO2012015628A2 (en) * | 2010-07-30 | 2012-02-02 | Ge Healthcare Bio-Sciences Corp. | Method for reducing image artifacts produced by a cmos camera |
US20120033888A1 (en) * | 2010-08-09 | 2012-02-09 | Tetsuya Takamori | Image processing system, image processing method, and computer readable medium |
US9208570B2 (en) * | 2012-03-28 | 2015-12-08 | Sony Corporation | System and method for performing depth estimation by utilizing an adaptive kernel |
US8781187B2 (en) * | 2011-07-13 | 2014-07-15 | Mckesson Financial Holdings | Methods, apparatuses, and computer program products for identifying a region of interest within a mammogram image |
SE536669C2 (en) * | 2012-02-21 | 2014-05-13 | Flir Systems Ab | Image processing method with detail-enhancing filter with adaptive filter core |
JP6306811B2 (en) | 2012-06-22 | 2018-04-04 | 富士通株式会社 | Image processing apparatus, information processing method, and program |
US9830172B2 (en) * | 2012-06-30 | 2017-11-28 | Microsoft Technology Licensing, Llc | Implementing functional kernels using compiled code modules |
CN104620282B (en) * | 2012-07-16 | 2018-01-12 | 菲力尔系统公司 | For suppressing the method and system of the noise in image |
US9811884B2 (en) | 2012-07-16 | 2017-11-07 | Flir Systems, Inc. | Methods and systems for suppressing atmospheric turbulence in images |
JP5983373B2 (en) | 2012-12-07 | 2016-08-31 | 富士通株式会社 | Image processing apparatus, information processing method, and program |
KR102087986B1 (en) * | 2013-10-04 | 2020-03-11 | 삼성전자주식회사 | Method and apparatus for processing image data and medium record of |
CN105659582B (en) * | 2013-10-31 | 2020-03-27 | 富士胶片株式会社 | Signal processing device, imaging device, parameter generation method, and signal processing method |
US9626476B2 (en) | 2014-03-27 | 2017-04-18 | Change Healthcare Llc | Apparatus, method and computer-readable storage medium for transforming digital images |
US9785860B2 (en) * | 2014-07-16 | 2017-10-10 | The Cleveland Clinic Foundation | Real-time image enhancement for X-ray imagers |
CN104202583B (en) * | 2014-08-07 | 2017-01-11 | 华为技术有限公司 | Image processing device and method |
US9781405B2 (en) * | 2014-12-23 | 2017-10-03 | Mems Drive, Inc. | Three dimensional imaging with a single camera |
CN104574277A (en) * | 2015-01-30 | 2015-04-29 | 京东方科技集团股份有限公司 | Image interpolation method and image interpolation device |
US9503291B1 (en) * | 2015-11-04 | 2016-11-22 | Global Unichip Corporation | Method and apparatus for discrete multitone transmission |
US11100622B2 (en) * | 2016-04-21 | 2021-08-24 | Kripton Co., Ltd. | Image processing device, image processing program and image processing method, and image transmission/reception system and image transmission/reception method |
US10230912B2 (en) * | 2016-06-28 | 2019-03-12 | Seek Thermal, Inc. | Fixed pattern noise mitigation for a thermal imaging system |
US10867371B2 (en) | 2016-06-28 | 2020-12-15 | Seek Thermal, Inc. | Fixed pattern noise mitigation for a thermal imaging system |
US11113791B2 (en) | 2017-01-03 | 2021-09-07 | Flir Systems, Inc. | Image noise reduction using spectral transforms |
KR101956250B1 (en) * | 2017-02-20 | 2019-03-08 | 한국해양과학기술원 | Coastline monitoring apparatus and method using ocean color image |
US10467056B2 (en) * | 2017-05-12 | 2019-11-05 | Google Llc | Configuration of application software on multi-core image processor |
US10580149B1 (en) * | 2017-06-26 | 2020-03-03 | Amazon Technologies, Inc. | Camera-level image processing |
US10510153B1 (en) * | 2017-06-26 | 2019-12-17 | Amazon Technologies, Inc. | Camera-level image processing |
CN109587466B (en) * | 2017-09-29 | 2020-02-21 | 华为技术有限公司 | Method and apparatus for color shading correction |
US10694112B2 (en) * | 2018-01-03 | 2020-06-23 | Getac Technology Corporation | Vehicular image pickup device and image capturing method |
US20190297326A1 (en) * | 2018-03-21 | 2019-09-26 | Nvidia Corporation | Video prediction using spatially displaced convolution |
US10546044B2 (en) | 2018-05-15 | 2020-01-28 | Apple Inc. | Low precision convolution operations |
KR102800723B1 (en) * | 2018-05-30 | 2025-04-30 | 삼성전자주식회사 | Electronic apparatus and control method thereof |
CN109065001B (en) * | 2018-06-20 | 2021-06-25 | 腾讯科技(深圳)有限公司 | Image down-sampling method and device, terminal equipment and medium |
US11227435B2 (en) | 2018-08-13 | 2022-01-18 | Magic Leap, Inc. | Cross reality system |
EP3861387B1 (en) | 2018-10-05 | 2025-05-21 | Magic Leap, Inc. | Rendering location specific virtual content in any location |
KR102575126B1 (en) * | 2018-12-26 | 2023-09-05 | 주식회사 엘엑스세미콘 | Image precessing device and method thereof |
US11170475B2 (en) | 2019-01-10 | 2021-11-09 | Kla Corporation | Image noise reduction using stacked denoising auto-encoder |
WO2021060894A1 (en) * | 2019-09-24 | 2021-04-01 | Samsung Electronics Co., Ltd. | Method for generating diagrammatic representation of area and electronic device thereof |
WO2021076757A1 (en) * | 2019-10-15 | 2021-04-22 | Magic Leap, Inc. | Cross reality system supporting multiple device types |
US11632679B2 (en) | 2019-10-15 | 2023-04-18 | Magic Leap, Inc. | Cross reality system with wireless fingerprints |
EP4046139A4 (en) | 2019-10-15 | 2023-11-22 | Magic Leap, Inc. | Cross reality system with localization service |
US11640645B2 (en) | 2019-10-25 | 2023-05-02 | Samsung Electronics Co., Ltd. | Apparatus and method of acquiring image by employing color separation lens array |
WO2021087065A1 (en) | 2019-10-31 | 2021-05-06 | Magic Leap, Inc. | Cross reality system with quality information about persistent coordinate frames |
CN114762008A (en) | 2019-12-09 | 2022-07-15 | 奇跃公司 | Simplified virtual content programmed cross reality system |
KR20210099516A (en) * | 2020-02-03 | 2021-08-12 | 아이엠에스 나노패브릭케이션 게엠베하 | Correction of blur variation in a multi―beam writer |
CN115398314B (en) | 2020-02-13 | 2025-05-30 | 奇跃公司 | A cross-reality system for mapping using multi-resolution frame descriptors |
WO2021173779A1 (en) | 2020-02-26 | 2021-09-02 | Magic Leap, Inc. | Cross reality system with fast localization |
US11727540B2 (en) * | 2020-12-31 | 2023-08-15 | Samsung Electronics Co., Ltd. | Image sharpening |
US11922609B2 (en) * | 2021-03-17 | 2024-03-05 | Huawei Technologies Co., Ltd. | End to end differentiable machine vision systems, methods, and media |
CN113191976B (en) * | 2021-04-30 | 2024-03-22 | Oppo广东移动通信有限公司 | Image capturing method, device, terminal and storage medium |
EP4095882A1 (en) | 2021-05-25 | 2022-11-30 | IMS Nanofabrication GmbH | Pattern data processing for programmable direct-write apparatus |
EP4109060A1 (en) * | 2021-06-22 | 2022-12-28 | Melexis Technologies NV | Method of digitally processing a plurality of pixels and temperature measurement apparatus |
US12154756B2 (en) | 2021-08-12 | 2024-11-26 | Ims Nanofabrication Gmbh | Beam pattern device having beam absorber structure |
KR20230036409A (en) * | 2021-09-07 | 2023-03-14 | 삼성전자주식회사 | Electronic device for sharpening an image and operating method for the same |
US12229918B2 (en) | 2021-09-07 | 2025-02-18 | Samsung Electronics Co., Ltd. | Electronic device for sharpening image and operation method thereof |
KR102785795B1 (en) * | 2021-09-13 | 2025-03-26 | 삼성전자주식회사 | Method for adjusting contrast and apparatus using the same |
CN114511469B (en) * | 2022-04-06 | 2022-06-21 | 江苏游隼微电子有限公司 | Intelligent image noise reduction prior detection method |
KR102725347B1 (en) * | 2024-03-05 | 2024-11-04 | 주식회사 포스로직 | Method for generating kernel for restoring motion blur image and apparatus for performing the method |
KR102725346B1 (en) * | 2024-03-05 | 2024-11-04 | 주식회사 포스로직 | Method for restoring motion blur image and apparatus for performing the method |
CN118631622B (en) * | 2024-05-27 | 2025-01-24 | 中山大学 | A windowed iterative random phase modulation method and device for signal enhancement |
Family Cites Families (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5764307A (en) * | 1995-07-24 | 1998-06-09 | Motorola, Inc. | Method and apparatus for spatially adaptive filtering for video encoding |
JPH11122626A (en) | 1997-10-17 | 1999-04-30 | Nikon Corp | Image processing method, system and record medium recording image processing program |
JP2000057337A (en) | 1998-08-06 | 2000-02-25 | Mitsubishi Electric Corp | Image processor |
US6625325B2 (en) * | 1998-12-16 | 2003-09-23 | Eastman Kodak Company | Noise cleaning and interpolating sparsely populated color digital image using a variable noise cleaning kernel |
AUPQ377899A0 (en) * | 1999-10-29 | 1999-11-25 | Canon Kabushiki Kaisha | Phase three kernel selection |
JP2001319228A (en) | 2000-02-28 | 2001-11-16 | Sharp Corp | Image processor and image processing method |
US6674486B2 (en) * | 2000-05-31 | 2004-01-06 | Sony Corporation | Signal processor and signal processing method |
JP2001352464A (en) | 2000-06-08 | 2001-12-21 | Sony Corp | Video signal processing unit and video signal processing method |
US6823086B1 (en) * | 2000-08-29 | 2004-11-23 | Analogic Corporation | Adaptive spatial filter |
WO2002059835A1 (en) * | 2001-01-26 | 2002-08-01 | Koninklijke Philips Electronics N.V. | Spatio-temporal filter unit and image display apparatus comprising such a spatio-temporal filter unit |
JP4468598B2 (en) | 2001-02-14 | 2010-05-26 | オリンパス株式会社 | Image processing apparatus and recording medium storing image processing program |
US7072525B1 (en) * | 2001-02-16 | 2006-07-04 | Yesvideo, Inc. | Adaptive filtering of visual image using auxiliary image information |
JP4632568B2 (en) | 2001-04-25 | 2011-02-16 | パナソニック株式会社 | Imaging device |
JP2003150955A (en) | 2001-11-15 | 2003-05-23 | Denso Corp | Image processor, navigation device and program |
CN1208740C (en) * | 2002-05-29 | 2005-06-29 | 北京中星微电子有限公司 | Method for purifying noise and sharpening digital image |
JP4186640B2 (en) | 2003-02-04 | 2008-11-26 | セイコーエプソン株式会社 | Image processing apparatus and method |
US7305145B2 (en) * | 2003-05-23 | 2007-12-04 | Lockheed Martin Corporation | Method and apparatus for filtering an image |
US7430334B2 (en) * | 2003-07-31 | 2008-09-30 | Hewlett Packard Development Company, L.P. | Digital imaging systems, articles of manufacture, and digital image processing methods |
JP4366634B2 (en) | 2003-08-08 | 2009-11-18 | ノーリツ鋼機株式会社 | Noise pixel map creation method, apparatus and program for implementing the method, and photo print apparatus |
JP2005074080A (en) | 2003-09-02 | 2005-03-24 | Fuji Photo Film Co Ltd | Method and apparatus for detecting abnormal shadow candidate, and program therefor |
JP2005142891A (en) | 2003-11-07 | 2005-06-02 | Fujitsu Ltd | Image processing method and image processing apparatus |
US20050114418A1 (en) * | 2003-11-24 | 2005-05-26 | John E. Rosenstengel | Efficient convolution method with radially-symmetric kernels |
JP4479257B2 (en) | 2004-01-30 | 2010-06-09 | ノーリツ鋼機株式会社 | Soft effect filter and its processing program |
KR100541961B1 (en) | 2004-06-08 | 2006-01-12 | 삼성전자주식회사 | Image signal processing device and method capable of improving clarity and noise |
JP5007228B2 (en) * | 2004-06-14 | 2012-08-22 | プレコード,インコーポレイテッド | Image cleanup and precoding |
JP4354359B2 (en) | 2004-07-21 | 2009-10-28 | オリンパス株式会社 | Imaging apparatus and image correction method |
WO2006040960A1 (en) * | 2004-10-08 | 2006-04-20 | Matsushita Electric Industrial Co., Ltd. | Image processing apparatus and image processing program |
US20060093234A1 (en) * | 2004-11-04 | 2006-05-04 | Silverstein D A | Reduction of blur in multi-channel images |
JP2006166108A (en) | 2004-12-08 | 2006-06-22 | Canon Inc | Imaging apparatus and imaging control method |
TWI274258B (en) * | 2004-12-24 | 2007-02-21 | Sony Taiwan Ltd | Image processing system |
JP2005103325A (en) | 2004-12-28 | 2005-04-21 | Olympus Corp | Electronic endoscope device |
JP4406711B2 (en) | 2005-02-16 | 2010-02-03 | ソニー株式会社 | Image data processing method and image data processing apparatus |
US7847863B2 (en) * | 2005-06-10 | 2010-12-07 | Intel Corporation | Enhancing sharpness in video images |
US7881549B2 (en) * | 2005-10-12 | 2011-02-01 | Panasonic Corporaiton | Visual processing device, display device, visual processing method, program, and integrated circuit |
US7826676B2 (en) | 2007-03-08 | 2010-11-02 | Mitsubishi Electric Research Laboraties, Inc. | Method for filtering data with arbitrary kernel filters |
US20090077359A1 (en) * | 2007-09-18 | 2009-03-19 | Hari Chakravarthula | Architecture re-utilizing computational blocks for processing of heterogeneous data streams |
-
2008
- 2008-01-07 US US11/970,427 patent/US8306348B2/en not_active Expired - Fee Related
- 2008-04-24 CN CN201310331810.0A patent/CN103561206B/en active Active
- 2008-04-24 CN CN2008800134225A patent/CN101669142B/en active Active
- 2008-04-24 JP JP2010504532A patent/JP5374700B2/en active Active
- 2008-04-24 KR KR1020097023185A patent/KR101313911B1/en not_active Expired - Fee Related
- 2008-04-24 EP EP08735375A patent/EP2147406A2/en not_active Ceased
- 2008-04-24 WO PCT/EP2008/003278 patent/WO2008128772A2/en active Application Filing
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102907083A (en) * | 2010-05-21 | 2013-01-30 | 松下电器产业株式会社 | Camera device, image processing device, image processing method, and image processing program |
CN102907083B (en) * | 2010-05-21 | 2016-09-28 | 松下电器(美国)知识产权公司 | Camera head, image processing apparatus and image processing method |
CN103460682A (en) * | 2011-03-24 | 2013-12-18 | 三菱电机株式会社 | Image processing device and method |
CN103460682B (en) * | 2011-03-24 | 2016-08-17 | 三菱电机株式会社 | Image processing apparatus and method |
CN106560883A (en) * | 2015-10-02 | 2017-04-12 | 乐金显示有限公司 | Organic Light-emitting Display And Method For Driving The Same |
CN106560883B (en) * | 2015-10-02 | 2019-01-01 | 乐金显示有限公司 | Organic light emitting display and its driving method |
WO2018068250A1 (en) * | 2016-10-13 | 2018-04-19 | 深圳市大疆创新科技有限公司 | Method and device for data processing, chip and camera |
US10855917B2 (en) | 2016-10-13 | 2020-12-01 | SZ DJI Technology Co., Ltd. | Data processing method and device, chip, and camera |
CN108513043A (en) * | 2017-02-27 | 2018-09-07 | 中兴通讯股份有限公司 | A kind of image denoising method and terminal |
CN110536063A (en) * | 2018-05-25 | 2019-12-03 | 神讯电脑(昆山)有限公司 | Automobile-used image-taking device and image acquisition method |
CN110536063B (en) * | 2018-05-25 | 2021-06-15 | 神讯电脑(昆山)有限公司 | Image capturing device for vehicle and image capturing method |
Also Published As
Publication number | Publication date |
---|---|
CN103561206A (en) | 2014-02-05 |
CN101669142B (en) | 2013-10-16 |
EP2147406A2 (en) | 2010-01-27 |
KR101313911B1 (en) | 2013-10-01 |
WO2008128772A8 (en) | 2010-04-29 |
US8306348B2 (en) | 2012-11-06 |
JP5374700B2 (en) | 2013-12-25 |
KR20100016278A (en) | 2010-02-12 |
WO2008128772A3 (en) | 2009-10-01 |
CN103561206B (en) | 2017-05-31 |
JP2010525470A (en) | 2010-07-22 |
US20080266413A1 (en) | 2008-10-30 |
WO2008128772A2 (en) | 2008-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101669142B (en) | Techniques for adjusting the effect of applying kernels to signals to achieve desired effect on signals | |
RU2543974C2 (en) | Auto-focus control using image statistics data based on coarse and fine auto-focus scores | |
RU2537038C2 (en) | Automatic white balance processing with flexible colour space selection | |
US11010873B2 (en) | Per-pixel photometric contrast enhancement with noise control | |
US9979942B2 (en) | Per pixel color correction filtering | |
JP5597717B2 (en) | System and method for detection and correction of defective pixels in an image sensor | |
US9626745B2 (en) | Temporal multi-band noise reduction | |
JP5688090B2 (en) | System and method for demosaic processing of image data using weighted gradient | |
EP2368226B1 (en) | High dynamic range image combining | |
US10262401B2 (en) | Noise reduction using sequential use of multiple noise models | |
US20090190853A1 (en) | Image noise reduction apparatus and method, recorded medium recorded the program performing it | |
KR101225056B1 (en) | Apparatus and method for reducing noise from image sensor | |
US10769474B2 (en) | Keypoint detection circuit for processing image pyramid in recursive manner | |
JP2013508853A (en) | Temporal filtering technology for image signal processing | |
US20220254050A1 (en) | Noise reduction circuit for dual-mode image fusion architecture | |
US10991083B2 (en) | Directional bilateral filtering with improved noise reduction along edges | |
US20220044371A1 (en) | Image Fusion Architecture | |
US11620738B2 (en) | Hue preservation post processing with early exit for highlight recovery | |
CN110136073B (en) | Image sharpening processing method and system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CI01 | Publication of corrected invention patent application |
Correction item: Priority day Correct: 20080107 False: 20080101 Number: 10 Volume: 26 |
|
CI02 | Correction of invention patent application |
Correction item: Priority day Correct: 20080107 False: 20080101 Number: 10 Page: The title page Volume: 26 |
|
ERR | Gazette correction |
Free format text: CORRECT: DATE OF PRIORITY; FROM: 2008.01.01 TO: 2008.01.07 |
|
ASS | Succession or assignment of patent right |
Owner name: TESSERA TECHNOLOGY IRELAND CO., LTD. Free format text: FORMER OWNER: TESSERA TECHNOLOGIES HUNGARY K. Effective date: 20110210 |
|
C41 | Transfer of patent application or patent right or utility model | ||
COR | Change of bibliographic data |
Free format text: CORRECT: ADDRESS; FROM: BUDAPEST, HUNGARY TO: GALWAY, IRELAND |
|
TA01 | Transfer of patent application right |
Effective date of registration: 20110210 Address after: Ireland Galway Applicant after: Tessera Technologies Ireland L. Address before: Budapest Applicant before: Tessera Technologies Hungary K. |
|
C53 | Correction of patent of invention or patent application | ||
CB02 | Change of applicant information |
Address after: Ireland Galway Applicant after: Dili OSS (Europe) Digital Optical Technology Co., Ltd. Address before: Ireland Galway Applicant before: Tessera Technologies Ireland L. |
|
COR | Change of bibliographic data |
Free format text: CORRECT: APPLICANT; FROM: TESSERA TECHNOLOGY IRELAND CO., LTD. TO: DIGITALOPTICS (EUROPE) CORPORATION |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C56 | Change in the name or address of the patentee |
Owner name: FOTONATION LTD. Free format text: FORMER NAME: DIGITALOPTICS (EUROPE) CORPORATION |
|
CP01 | Change in the name or title of a patent holder |
Address after: Ireland Galway Patentee after: Fotonation Ltd Address before: Ireland Galway Patentee before: Dili OSS (Europe) Digital Optical Technology Co., Ltd. |