CN105049745A - 用于处理数据以显示的方法和设备 - Google Patents

用于处理数据以显示的方法和设备 Download PDF

Info

Publication number
CN105049745A
CN105049745A CN201510184709.6A CN201510184709A CN105049745A CN 105049745 A CN105049745 A CN 105049745A CN 201510184709 A CN201510184709 A CN 201510184709A CN 105049745 A CN105049745 A CN 105049745A
Authority
CN
China
Prior art keywords
frame
display update
generated
data
described display
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
Application number
CN201510184709.6A
Other languages
English (en)
Other versions
CN105049745B (zh
Inventor
D·克罗克斯福德
S·埃利斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ARM Ltd
Original Assignee
Advanced Risc Machines Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Advanced Risc Machines Ltd filed Critical Advanced Risc Machines Ltd
Publication of CN105049745A publication Critical patent/CN105049745A/zh
Application granted granted Critical
Publication of CN105049745B publication Critical patent/CN105049745B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/10Intensity circuits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/44Receiver circuitry for the reception of television signals according to analogue transmission standards
    • H04N5/57Control of contrast or brightness
    • H04N5/58Control of contrast or brightness in dependence upon ambient light
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G3/00Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes
    • G09G3/20Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes for presentation of an assembly of a number of characters, e.g. a page, by composing the assembly by combination of individual elements arranged in a matrix no fixed position being assigned to or needed to be assigned to the individual characters or partial characters
    • G09G3/34Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes for presentation of an assembly of a number of characters, e.g. a page, by composing the assembly by combination of individual elements arranged in a matrix no fixed position being assigned to or needed to be assigned to the individual characters or partial characters by control of light from an independent source
    • G09G3/3406Control of illumination source
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/77Circuits for processing the brightness signal and the chrominance signal relative to each other, e.g. adjusting the phase of the brightness signal relative to the colour signal, correcting differential gain or differential phase
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2320/00Control of display operating conditions
    • G09G2320/06Adjustment of display parameters
    • G09G2320/0626Adjustment of display parameters for control of overall brightness
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/02Handling of images in compressed format, e.g. JPEG, MPEG
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2350/00Solving problems of bandwidth in display systems
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/14Detecting light within display terminals, e.g. using a single or a plurality of photosensors
    • G09G2360/144Detecting light within display terminals, e.g. using a single or a plurality of photosensors the light being ambient light
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/16Calculation or use of calculated indices related to luminance levels in display data
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G3/00Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes
    • G09G3/20Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes for presentation of an assembly of a number of characters, e.g. a page, by composing the assembly by combination of individual elements arranged in a matrix no fixed position being assigned to or needed to be assigned to the individual characters or partial characters
    • G09G3/34Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes for presentation of an assembly of a number of characters, e.g. a page, by composing the assembly by combination of individual elements arranged in a matrix no fixed position being assigned to or needed to be assigned to the individual characters or partial characters by control of light from an independent source
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/393Arrangements for updating the contents of the bit-mapped memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Graphics (AREA)
  • Control Of Indicators Other Than Cathode Ray Tubes (AREA)

Abstract

用于处理数据以显示的方法和设备。一种数据处理***30包括全部能访问片外存储器314的CPU33、GPU34、视频处理引擎(视频引擎)35、显示控制器36(或图像处理引擎)和存储器控制器313。待显示的帧通过例如由GPU34或视频引擎35适当地渲染而生成。然后,显示控制器36(或图像处理引擎)对帧执行诸如亮度补偿的显示修改以提供用于显示的输出帧。显示控制器36(或图像处理引擎)还将显示修改信息(诸如所确定的亮度补偿参数)提供给GPU33和视频引擎34。然后,使用该显示修改信息来修改针对待显示的帧生成的数据。

Description

用于处理数据以显示的方法和设备
技术领域
本发明涉及一种处理帧以提供在电子显示器上的方法和设备。
背景技术
对于诸如移动电话的电子装置和一般的数据处理***而言,包括某种形式的电子显示屏(例如,LCD面板)是常见的。为了在显示器上显示图像,显示器的像素(画面元素)或子像素必须被设定为适当的颜色值。这通常通过生成待显示的数据的帧并将其存储在存储器中来完成,所述数据的帧为各个像素或子像素指示待显示的颜色值。
例如,诸如LCD面板的许多电子显示屏使用背光来对屏幕进行照明以便于观看。然而,已经知道,使用背光对于电子装置的总功耗而言是显著负担。为了减小显示屏的背光的功耗,减小背光的强度(绝对明度(brightness)),因为已知背光的强度与其功耗成比例。
降低背光强度的问题在于,与图像期望显示的亮度(luminance)相比,降低背光强度也减小了所显示的图像的亮度(明度)。
因此,已开发出各种方法以在对背光进行调光时优化显示。一种此类方法称为“亮度和背光缩放”,它涉及缩放(修改)图像本身的亮度以对背光的调光进行补偿。
背光和亮度缩放操作通常涉及分析帧缓冲数据(例如,利用直方图)以确定最佳背光调光因子和亮度缩放参数。
亮度和背光缩放包括被称为“亮度补偿”的方法,该方法涉及通过相对于高阈值增加图像的亮度来至少恢复在对背光进行调光时损失的一些图像亮度。
亮度补偿的其它术语包括明度补偿和图像补偿。为了方便起见,本文将使用术语亮度补偿,但是将理解,这旨在包括并涵盖所有等同的术语和技术。
图1a和图1b示出了亮度补偿操作的一般原理。
图1a示出了显示在显示器上的图像11以及示出显示器子像素的所有可能亮度值的密度分布13的直方图12。在此示例中,背光被设定为100%强度,并且没有使用亮度补偿。(从图1a中可以看出,针对各个子像素,使用8比特值(对应于亮度的256个明暗度(shade))。)
图1b示出与图1a相同的图像11和对应的直方图15,不同的是,在图1b的示例中,背光强度减小至70%。可从图1b中看出,为了补偿在对背光进行调光时损失的图像亮度,子像素的亮度值被提升(例如,通过对原始帧缓冲数据应用适当的变换函数)。图1b对此进行了反映,图1b示出了显示器子像素的密度分布14集中在较高的亮度值处。
亮度和背光缩放还可包括被称为“图像增强”的方法,该方法涉及在对背光进行调光时修改帧缓冲数据以增加图像的对比度。图像增强通常涉及对原始帧缓冲数据应用变换函数以相对于高阈值和低阈值重新映射像素或子像素的亮度。
用于图像增强的其它术语包括对比度增强、直方图均等化和直方图拉伸。为了方便起见,本文将使用术语图像增强,但是将理解,这旨在包括并涵盖所有等同术语和技术。
图2示出了具有亮度和背光缩放操作的示例性数据处理***。
如图2所示,数据处理***包括在芯片上***(SoC:SystemonChip)结构21中经由互连线212通信的中央处理单元(CPU)23、图形处理单元(GPU)24、视频引擎25、显示控制器27和图像处理引擎(例如,亮度和背光缩放引擎26)。CPU、GPU、视频引擎、显示控制器以及亮度和背光缩放引擎也经由存储器控制器210访问片外存储器211以便于存储(除了别的以外)帧。
该***还包括显示结构22,显示结构22包括背光28和显示器29。亮度和背光缩放引擎26设定背光28的明度,显示控制器27向显示器29提供输出帧以显示。
当将要显示帧时,GPU24和/或视频引擎25例如将生成用于显示的帧,然后将经由存储器控制器210将所述帧存储在片外存储器211中的帧缓冲器中。
然后,当要显示该帧时,亮度和背光缩放引擎26将从帧缓冲器读取所述帧并分析帧缓冲数据(例如,利用直方图)以确定最佳背光调光因子和动态亮度缩放参数。
在该确定之后,亮度和背光缩放引擎26将修改帧缓冲数据以生成经过修改的、亮度缩放的输出帧以用于显示。然后,亮度和背光缩放引擎26将背光水平设定在确定的强度,并且显示控制器27将经过修改的、亮度缩放的输出帧提供给显示器29以用于显示。
发明内容
申请人相信处理帧以提供在显示器上的方法和设备仍存在改进空间。
根据本发明的第一方面,提供一种处理帧以提供在电子显示器上的方法,该方法包括以下步骤:
生成待显示的帧;
对生成的帧执行显示修改以提供用于显示的输出帧;
该方法还包括以下步骤:
利用关于将应用于所生成的待显示的帧以提供用于显示的输出帧的所述显示修改的信息,控制待显示的帧的所述生成。
根据本发明的第二方面,提供一种处理帧以提供在电子显示器上的***,该***包括:
帧生成级,用于生成待显示的帧;以及
显示修改级,用于对生成的帧执行显示修改以提供用于显示的输出帧,并且其中,
所述帧生成级被配置为利用关于将应用于所生成的待显示的帧以提供用于显示的输出帧的所述显示修改的信息,控制待显示的帧的所述生成。
本发明涉及这样的结构,其中待显示的帧例如通过由诸如图形处理***(图形处理器)、视频处理***(视频处理器)、合成***(合成器)等的帧生成器适当地渲染并被存储到缓冲器中来生成,但是在显示所生成的帧之前,所述帧首先经受显示修改(例如,背光调光补偿)以提供实际提供给显示器以进行显示的输出帧。
然而,在本发明中,指示显示修改的信息也被提供(例如,并且优选地,实时地提供)给帧生成处理(例如,与帧生成有关和/或帧生成中所涉及的***元件)并用于控制帧生成的一个或多个方面。
如下面将进一步讨论的,申请人已认识到,关于在显示生成的帧之前应用于所生成的帧的显示修改(例如,背光调光补偿)的信息(knowledge)也可有利地在帧生成级处使用,从而使得整个帧生成和显示处理更有效(从而例如降低功耗和带宽)。例如,并且如下面将进一步讨论的,关于在显示生成的帧之前应用于所生成的帧的显示修改的信息可(例如)用于方便更有效地压缩所生成的帧,然后显示生成的帧(在生成的帧被压缩以便于存储在帧缓冲器中,然后从该帧缓冲器读取所述帧以进行显示的***中)。
待显示的帧可根据需要由总的数据处理***的任何适当的组件来生成。在优选实施方式中,待显示的帧是由图形处理器生成的帧、由视频处理器(视频引擎)生成的帧或者由合成引擎(合成器)提供的帧。
因此,帧生成级优选包括图形处理器、视频处理器(视频引擎)或合成引擎(合成器)。如果需要,可存在超过一个帧生成器,所述帧生成器中的一个或超过一个(或者全部)可按照本发明的方式操作。如果需要,帧生成级还可包括诸如压缩级(压缩引擎)的其它组件(并且在优选实施方式中,是这种情况)。
生成的待显示的帧优选地存储在适当帧缓冲器中,然后可从该帧缓冲器读取生成的帧以用于对生成的帧执行显示修改以提供用于显示的输出帧的目的。
对生成的帧执行以生成提供给显示器的输出帧的显示修改操作可以是任何期望且合适的修改,例如本领域中已知并执行的。
在优选实施方式中,显示修改操作包括亮度补偿操作(例如并且优选地,用于背光调光补偿)。另外或作为替代,显示修改操作可包括基于(检测到的)环境光水平(并且针对该环境光水平进行调节)的操作。
对生成的帧执行以生成提供给显示器的输出帧的显示修改可按照任何期望且合适的方式(例如,按照这些修改已知的方式)来执行。
在优选实施方式中,对生成的待显示的帧执行的显示修改包括分析生成的帧(例如,利用直方图)以确定数据值调节参数(例如并且优选地,背光调光因子和亮度缩放参数)。
类似地,在优选实施方式中,对生成的待显示的帧执行的显示修改包括调节帧中的数据值,例如并且优选地,修改帧以使得帧的各个像素或子像素的亮度增加(例如,通过对存储的表示帧的亮度值的数据应用适当的变换函数)。
对生成的帧执行以生成提供给显示器的输出帧的显示修改可在总的数据处理***的任何合适且期望的级或组件中实现和执行。
在优选实施方式中,对生成的待显示的帧执行的显示修改(例如,亮度补偿操作)由亮度和背光缩放引擎进行。如果需要,亮度和背光缩放引擎可(例如)作为数据处理***的单独的级来提供。在优选实施方式中,亮度和背光缩放引擎被提供为显示控制器的一部分(因此,***包括包含亮度和背光缩放引擎的显示控制器(并且显示控制器本身能够操作以执行亮度和背光缩放处理))。
用于控制帧生成处理的显示修改信息可以是与将对所生成的帧执行的显示修改处理有关和/或指示该显示修改处理的任何合适且期望的信息。
在优选实施方式中,显示修改信息基于输出帧(即,从显示修改得到的帧的内容)的内容或从其推导得出。显示修改信息可包括(并且优选地)例如可被认为代表所生成的帧将如何被修改以便于显示的任何合适的(例如,推导出的)信息集合。
在特别优选的实施方式中,显示修改信息包括指示和/或可用于确定所生成的待显示的帧中的数据位置的数据值将如何由所述显示修改操作改变的信息,所述显示修改操作将被用于从所生成的帧生成为显示而提供给显示器的输出帧。如下面将进一步讨论的,然后这有利于在帧生成级处修改所生成的帧内的数据位置的值,这可得到若干优点。
在优选实施方式中,显示修改信息包括一个或更多个亮度缩放参数,所述一个或更多个亮度缩放参数将在所生成的帧经受显示修改操作时用于所述帧。显示修改信息因此可包括正用于所述帧的任一个或更多个亮度补偿参数,所述亮度补偿参数诸如是并且优选地是指示将用于所述帧的变换函数、失真率、增益因子、阈值亮度值和/或饱和值中的一个或更多个或全部的信息。
显示修改信息可由***的任何合适且期望的元件或组件提供给帧生成处理。在优选实施方式中,显示修改信息从执行显示修改操作的元件或级通过反馈来提供。
因此,在优选实施方式中,显示修改信息由亮度和背光缩放引擎或者包含亮度和背光缩放引擎的显示控制器提供。
显示修改信息可被提供给***中的与帧生成有关或者涉及帧生成的任何元件或级。在优选实施方式中,***包括若干帧生成器,诸如图形处理***(GPU)、视频处理***(视频引擎)和/或合成***(合成引擎),并且显示修改信息优选地被提供给***的至少一个帧生成器,优选地提供给各个帧生成器。
显示修改信息还可被提供给***的其它元件并用于这些元件中,***的所述其它元件与帧生成有关或者涉及帧生成,诸如在所生成的帧被存储在存储器中之前操作以压缩所述帧的压缩引擎或压缩级(然后,所述帧被从所述存储器读取以进行显示修改操作)。
通常,除非另外指出,将显示修改信息提供给帧生成级并且使用显示修改信息来控制帧生成处理旨在包括帧生成处理的所有级和元件,直到所生成的帧被存储在帧缓冲器中为止(然后,所生成的帧将被从所述帧缓冲器读取以进行显示修改操作)。
关于将应用于所生成的、待显示的帧的显示修改的信息可用于按照任何期望且合适的方式控制待显示的帧的生成的一个或多个方面,并且相应地,可用于控制待显示的帧的生成的任一个或多个期望且合适的方面。
在特别优选的实施方式中,使用显示修改信息来修改所生成的帧内的数据位置的数据值。因此,在特别优选的实施方式中,基于显示修改信息(即,基于将对所生成的帧执行的显示修改操作)设定所生成的帧中的数据位置的值。
就这点而言,申请人已认识到,当执行亮度补偿时,例如,所生成的帧中的一些像素或子像素的亮度值将由于亮度补偿操作而被重新设定为相同的、公共(例如,最大)值,即使它们在生成时(即,在应用亮度补偿之前)在帧中具有不同的值(即,帧中的像素和/或子像素的值在特定饱和值(例如***所支持的最大像素或子像素值)以上将被截断)。
(为了方便起见,本文将假设在亮度补偿操作期间,例如,存储在帧缓冲器中的像素或子像素的亮度值将增加(例如,通过应用合适的变换函数),因此在对背光进行调光时,一些像素或子像素将饱和至最大值。然而,将理解,本公开旨在包括并涵盖所有等同技术。例如,同样可存在通过减小存储在帧缓冲器中的像素或子像素的亮度值来执行亮度补偿操作的结构。在这种结构中,响应于对背光的调光,将相对于较低的饱和值来截断亮度值。对于使用较高的亮度值来表示较暗的颜色明暗度,而将使用较低的亮度值来表示同一颜色的较明亮的明暗度的结构就是如此。)
就这点而言,申请人还认识到,例如,对于将在为显示器提供的输出帧中饱和的那些数据位置,亮度值实际上可在帧生成级处被相应地设定为相同的、公共的数据值(例如,饱和值)(或者仅更有限数量的数据值)而不影响将实际显示的帧(因为在任何情况下,在最终输出帧中所述数据值将饱和),此外,通过在帧生成处理处将最终输出帧中的将饱和的数据位置的数据值设定为公共的值,可实现若干优点。
具体地,这将得到包含更大数量的数据位置的生成的帧,这些数据位置将各自具有相同的数据值(与在不执行此操作的情况下生成的帧的数据值相比)。因此,然后对所生成的数据帧执行的任何压缩应该更有效(因为数据帧内将存在更多的各自具有相同值的数据位置)。
同样,即使在不使用压缩的情况下,所生成的帧中具有相同值的数据位置的数量将增加的事实应该意味着(例如)在***中发送数据值(例如,以将它们存储在存储器中)将更有效,因为(例如)可存在较少的总线切换(例如,对于最高有效位(MSB)),从而降低***的功耗。
另外,将所生成的帧中的数据值设定为公共的数据值可导致表示帧数据所需的数据值的范围减小,使得如果需要,对于各个数据值,可使用较少数量的比特来表示如此修改的帧的数据值,从而同样可能节省带宽和存储器。例如,可以能够消除数据值的最高或最低有效位。这可有助于(例如)减少写入的数据量,相应地减小遍及***传送数据所需的带宽和功率。
因此,在特别优选的实施方式中,显示修改信息被用于设定或修改生成的帧中的数据位置的数据值(然后其将经受显示修改操作)。
在特别优选的此类实施方式中,关于正在应用的显示修改操作的信息被用于标识帧内的将由于显示修改操作而被设定(例如,饱和)为公共值的数据位置。然后,优选地在所生成的数据帧中将那些数据位置设定为相同的公共值(例如,饱和的、最大值)(优选在其经受任何进一步的处理之前)。可存在用于此目的的单个公共值,或者可存在可用于所述数据位置的多个公共值(例如,一组定义的公共值)。在优选实施方式中,公共(例如,亮度)值等于饱和值或阈值(例如,亮度值)。
此操作可根据需要来执行。例如,可首先生成待生成的帧并将其存储在存储器中,然后分析所述帧以标识所涉及的数据位置,然后相应地修改那些数据位置的数据值。
在另一实施方式中,在生成待显示的帧时,标识将由于显示修改操作而被设定为公共值的数据位置,并且相应地修改(设定)所述数据位置的数据值。这可通过(例如)在帧生成的(例如,光栅化以及)渲染阶段期间分析所生成的帧的数据位置值来进行。
帧内的将被设定为公共值(例如,饱和)的数据位置可根据需要(例如)依据所使用的显示修改信息的本质来标识。例如,可基于显示修改信息来确定帧内的哪些数据位置具有高于阈值(例如,高于阈值亮度值)的值,和/或可使用数据位置的数据值和将在显示修改操作中使用的增益因子来确定在执行显示修改操作之后将被设定为公共值的那些数据位置。
如上所述,在特别优选的实施方式中,所涉及的数据值是数据位置的亮度值,并且所标识的数据位置的亮度值被设定为公共的(例如,饱和的)亮度值。然而,帧的数据值可以是另一格式(例如,RGB),并且在该情形下也可同样使用本发明。
在这些结构中,可仅考虑(例如)最大公共值,使得在显示修改操作之后将具有该单一最大公共值的数据位置被标识,并且相应地设定其值。
然而,如果需要,还可使用本发明的***来“量子化”正在生成的帧内的数据值,使得正在生成的帧然后包括量子化的数据值的缩减集。在这种情况下,正在生成的帧的数据值的范围可被(例如,并且优选地)分成两个或更多个数据值范围,然后基于显示修改信息确定在显示修改操作之后给定的(并且各个给定的)数据位置值将落在哪一数据值范围内,然后将该数据位置的值设定为代表所涉及的范围的单一值。
在这种情况下,代表给定数据值范围的值应该是为该范围选择的(优选为预先确定的)数据值(并且优选地为该范围内的数据值),例如,范围的最高、最低或中点值。那么这将具有将正在生成的帧中的数据值量子化为可用数据值的缩减集的效果,从而进一步方便(例如)帧的存储和压缩。
在这些结构中,例如,可这样将帧内的所有数据值(数据位置)量子化为值的缩减集,或者另选地,可仅这样量子化数据值的选定集合。例如,可使用阈值来选择将要量子化的数据值,例如,以这种方式,仅将高于(或低于)特定(优选为选择的)例如阈值的那些数据值(例如,仅那些高于饱和值的像素值)量子化为离散范围。
以这种方式量子化(减少)帧的离散数据值的数量实际上将降低帧的分辨率。
申请人还认识到,可能可取的是使用显示修改信息来指示可能愿意降低待显示的帧的分辨率(例如,亮度方面)的某些状况。例如,在一些状况下,人眼将很难在相似的亮度值之间区分,因此在亮度分辨率降低的情况下将不会感觉到图像质量的巨大变化。
因此,在实施方式中,基于显示修改信息确定是否修改待显示的帧以使得它的分辨率(例如,亮度方面)减小。
例如,正在生成的帧中的相关数据位置的标识以及那些数据位置的数据值的修改或设定可按照任何期望且合适方式来执行,并且可在帧生成级(处理)的任何期望且合适元件中实现。例如,可在涉及生成待显示的帧的元件(例如,GPU、视频引擎和/或组合引擎)中进行。还可在帧生成级的另一元件中进行,诸如操作以压缩由对应帧生成器生成的帧的压缩引擎(在优选实施方式中就是这样进行)。在这种情况下,例如,在压缩帧以便于输出之前,压缩引擎(压缩级)可分析由帧生成器生成的帧以标识将受显示修改操作影响的那些数据位置,然后相应地修改或设定那些数据位置的数据值。
正在生成的待显示的帧可来自单一源(例如,GPU或视频引擎),或者可以是合成的帧(例如,通过将来自多个源的若干帧合成来生成待显示的帧)。
在待显示的帧从两个或更多个源的帧合成的情况下,可(优选地)根据本文所述的任一个或更多个实施方式来修改所述两个或更多个源的帧,以提供待合成(即,混合)的两个或更多个修改的(例如,亮度缩放的)帧,和/或可以(优选地)是根据本文所述的任一个或更多个实施方式来修改以提供修改的合成帧。
就这点而言,申请人还认识到,对于诸如α混合的一些混合模式,在将源帧混合在一起(合成)之前基于显示修改信息(根据本文所述的实施方式)修改源帧可能在合成的帧中引入额外的噪声或伪影。
因此,在优选实施方式中,使用将被用于合成帧的混合模式(操作)来确定基于显示修改信息对帧数据进行修改是针对各个源帧(在合成处理之前)还是针对(并且仅针对)合成的帧本身(即,从合成处理得到的帧)。
例如,如果合成引擎被设定为在α混合模式下操作,则优选地禁止对源帧的修改,以使得源帧首先被合成,然后基于显示修改信息来修改合成的帧的数据。
如上所述,利用显示修改信息影响帧生成的一个或多个方面被认为尤其(但非排他地)适用于并有益于支持并使用数据压缩的结构。
因此,在优选实施方式中,待显示的新帧将以压缩形式存储在存储器中,并且在帧被压缩之前基于显示修改操作修改待显示的帧。就这点而言,可使用任何合适且期望的压缩形式。
申请人还认识到,使用显示修改信息来影响用于压缩所生成的待显示的帧的数据压缩方案将是可行且有利的。对于使用显示修改信息来影响帧生成的另一个或多个方面而言,这可以是另外的或另选的。
因此,在实施方式中,用于压缩表示待显示的帧的数据的压缩方案可以(优选)基于显示修改信息来选择。在优选实施方式中,用于压缩表示待显示的帧的数据的压缩方案基于显示修改信息在有损和无损压缩模式之间切换。
在一些实施方式中,本发明涉及通过(例如)分析帧(例如,利用直方图)以确定最佳背光调光因子和亮度缩放参数来对所生成的待显示的帧执行显示修改的结构。然而,对所生成的待显示的帧执行的显示修改还可包括(并且基于)(除了别的以外)分析在位于显示器的光传感器处检测到的环境光的水平。(例如,常常期望针对在显示器处检测到的各种水平的环境光来调节背光(并且相应地缩放像素或子像素的亮度)。)
因此,在优选实施方式中,显示修改信息包括指示例如在位于显示器的光传感器处检测到的环境光的水平(或强度)(环境光条件)的信息,并且显示修改操作包括基于检测到的环境光水平或条件来修改待显示的帧。
这种显示修改信息可按照本文所述的任何实施方式的方式来使用。在优选的此类实施方式中,使用指示在位于显示器的光传感器处检测到的环境光的水平(或强度)的信息来控制(选择)用于压缩表示待显示的帧的数据的压缩方案。
例如,可将帧作为整体来按照本发明的方式操作并且(例如)修改所生成的帧(在一个优选实施方式中就是这样做的)。这适合于(例如)在利用在整个帧上应用的单一调光因子在整个显示屏上控制背光的情况。
然而,本发明的结构也可(例如)逐个帧区域地仅应用于选择的帧区域。这尤其适合于(例如)显示器支持局部背光调光以使得显示器的不同区域可经受不同水平的背光调光的情况。
因此,在优选实施方式中,对帧的相应区域(所述区域形成帧的部分而非全部)应用本发明的方式的操作。在这种情况下,可仅针对帧的一些而非所有区域执行所述操作,但是在优选实施方式中,对帧的各个相应区域应用所述操作。
另外,本领域技术人员将理解,在这些结构中,(例如)根据对所涉及的区域执行的显示修改操作,可(通常将)对帧内的不同区域应用不同的帧修改信息、帧数据值修改等。例如,每帧可生成多个数据值(例如,亮度值)直方图,例如帧所分成的每个区域生成一个直方图。然后,每个单独的区域将经受其自己的显示修改操作。
在这些结构中,帧为此而分成的区域可以是任何合适且期望的此类区域,例如与可进行单独(独立)的背光控制的区域相对应。例如,根据构成待显示的帧的一个或更多个处理贴片(tile)的集合所涉及的对应背光区域,所述区域可对应于所述一个或更多个处理贴片。
利用显示修改操作信息控制待显示的帧的生成的方面可基于从任何期望的生成的待显示的一个或多个帧推导出的和/或用于所述帧的显示修改信息。因此,将应用于待显示的帧的显示修改操作和对应显示修改信息可基于任何期望的待显示的一个或多个帧的分析并从其推导。
在一个实施方式中,所使用的显示修改信息从或针对将用于控制其生成的帧推导出。在这种情况下,将在帧生成级处使用指示在显示修改级处将应用于当前帧的显示修改的信息来控制同一当前帧的生成的一个或多个方面。在这种情况下,可生成待生成的帧并且推导显示修改信息,然后(例如)在进行压缩以便于传输或存储之前,相应地修改生成的帧的值。
在优选实施方式中,用于控制待显示的帧的生成的显示修改操作和对应的显示修改信息基于正在显示的帧序列中的不同的一个或多个帧(例如,并且优选地,先前的一个或多个帧)的分析以及针对所述不同帧推导的显示修改信息。因此,例如,使用关于应用于先前的一个或多个帧以提供先前的一个或多个输出帧的显示修改操作的信息来控制待显示的后续的一个或多个帧的生成的一个或多个方面。
因此,在优选实施方式中,本发明包括将从或者针对先前的一个或多个帧(即,一个或多个输出帧)推导出的显示修改信息提供给帧生成处理或级,然后使用所述显示修改信息来控制后续的待显示的一个或多个帧的生成的一个或多个方面。因此,在帧生成级处,将使用当前帧或当前输出帧的显示修改信息来控制(并且例如修改)后续的一个或多个帧的生成。
就这点而言,如果需要,在正在显示的帧的序列中按照本发明的方式修改所生成的帧的操作可被周期性地禁止,以(例如)允许从未修改的生成的帧推导新的显示修改信息(例如,参数),然后将其用于后续待生成的帧。
另外,申请人认识到从帧到帧,帧常常将基本上没有改变(因此,对帧执行的显示修改将基本上没有改变),并且背光可能无法被快速地更新(更改)(例如,每当新帧被生成并处理以用于显示时)。
因此,对所生成的待显示的帧执行显示修改的操作可被设定为使得对于显示的帧序列,对帧中的数据值的调节(例如,在亮度补偿操作期间)是相同的。因此,为所生成的帧确定的显示修改信息(例如,一组数据值调节参数,优选地,诸如亮度缩放参数)可用于对后续的帧序列中的各个帧执行显示修改(例如,调节数据值)。
因此,将理解,在这些结构中,显示修改操作并非必须包括分析后续的帧序列中的各个生成的帧(例如,利用直方图)以为所述帧确定新的显示修改信息(参数)。
因此,在一些情况下,可在帧序列中禁止分析生成的帧(例如,利用直方图)以确定显示修改信息(参数)的操作。
在一个实施方式中,对若干个连续帧的显示修改信息进行分析,如果给定数量(优选为选定的数量,优选为预先确定的数量)的连续帧的显示修改信息被确定为基本上没有改变(例如,根据一些预定义的标准),则对于后续帧,可以禁止分析所生成的帧(例如,利用直方图)以确定显示修改信息(参数)的操作。
另选地,对若干个连续帧的内容(例如,亮度方面)进行分析,如果给定数量(优选为选定的数量,优选为预先确定的数量)的连续帧的内容被确定为基本上没有改变变(例如,根据一些预定义的标准),则对于后续帧,可以禁止分析所生成的帧(例如,利用直方图)以确定所述帧的显示修改信息(参数)的操作。
在其它实施方式中,对所生成的帧(例如,利用直方图)进行分析以确定所述帧的显示修改信息(参数)的操作可被周期性地重复。这样,将被用于控制待显示的后续帧的生成的一个或多个方面的显示修改信息将被周期性地更新。例如,对所生成的帧(例如,利用直方图)进行分析以确定显示修改信息(参数)的操作可被设定为在给定数量(优选为选定的数量,优选为预先确定的数量)的帧被处理并显示之后重复,或者可按照背光的强度可被更改的频度来设定。
对较少数量个生成的帧进行分析以确定新的显示修改信息(参数)的优点在于将减少***所消耗的处理功率的量(与***被设定为分析每个生成的待显示的帧的情况下将消耗的功率的量相比)。
将理解,对所生成的帧执行显示修改的操作以及因此基于关于将应用于所述帧的显示修改的信息来控制帧的生成的一个或多个方面的操作可仅针对选择的帧(而非针对待生成并处理以用于显示的所有帧)来执行。
在一些实施方式中,执行显示修改的操作和基于显示修改信息来控制帧生成的一个或多个方面的操作可被周期性地禁止(并且相应地重新允许)。
在优选实施方式中,当所生成的帧满足特定标准时,可以禁止执行显示修改的操作和基于显示修改信息来控制帧生成的一个或多个方面的操作。例如,如果通过分析(例如,利用直方图)确定所生成的帧特别亮(例如,使得几乎没有机会进行亮度缩放),则对于后续的一个或多个帧,优选地禁止对所生成的帧执行显示修改以提供用于显示的输出帧的操作以及因此使用关于将应用于所生成的待显示的帧的显示修改的信息来控制待显示的帧的生成的方面的操作。
可针对给定数量(优选为选定的数量,优选为预先确定的数量)的后续帧禁止所述操作,或者可无限地禁止所述操作。在后一种情况下,如果需要,***可周期性地分析所生成的帧(例如,利用直方图)以确定是否重新允许显示修改操作以及因此基于显示修改信息控制帧生成的一个或多个方面的操作。
一旦依据本发明的操作适当地(例如)修改了所生成的帧,则优选地将所述帧存储在存储器中,然后可从该存储器读取所述帧并处理以用于显示(例如,通过在显示级使其经受相关的显示修改操作)。如上所述,如果需要,所生成的帧在被写入存储器之前也可被压缩。
然后,可针对待显示的下一帧重复这一处理,依此类推。(本领域技术人员将理解,本发明通常将被(优选被)实现用于待显示的帧序列(优选用于待显示的帧序列中的每个帧),可能周期性地禁止所述操作以推导新的显示修改参数。)
本发明可被实现于能够操作以生成帧以显示在电子显示器上的任何期望且合适的数据处理***中。所述***优选包括显示器(优选为LCD或OLED显示器的形式)。
在优选实施方式中,本发明被实现于这样的数据处理***中,该数据处理***是在显示器上显示窗口(例如,图形用户界面)的***,优选为组合窗口***。
本发明所实现于的数据处理***可包含任何期望且适当且合适的元件和组件。因此,它可包含(优选地包含)CPU、GPU、视频处理器、显示控制器、显示器以及用于存储各种帧和所需的其它数据的适当的存储器中的一个或更多个,优选为全部。
生成的待显示的帧和用于显示的输出帧(以及任何其它源面(帧))可按照任何合适且期望的形式存储在存储器中。它们优选被存储在适当的缓冲器中。例如,输出帧优选地被存储在输出帧缓冲器中。
输出帧缓冲器可以是片上缓冲器,或者可以是外部缓冲器(实际上,更可能是外部缓冲器(存储器),如下面将讨论的)。类似地,输出帧缓冲器可以是用于此目的的专用存储器,或者可以是也用于其它数据的存储器的部分。在一些实施方式中,输出帧缓冲器是用于生成帧的图形处理***和/或用于将显示帧的显示器的帧缓冲器。
类似地,生成的帧在被生成(渲染)时首先被写入的缓冲器包括任何合适的此类缓冲器,并且可按照任何合适且期望的方式配置在存储器中。例如,它们可以是一个或多个片上缓冲器,或者可以是一个或多个外部缓冲器。类似地,它们可以是用于此目的的专用存储器,或者可以是也用于其它数据的存储器的部分。输入帧缓冲器可以是(例如)应用所需的任何格式,并且可被(例如)存储在***存储器中(例如,同一内存架构中)或者图形存储器中(例如,非同一内存架构中)。
本文所述的技术可被实现于任何合适的***中,例如适当配置的基于微处理器的***。在一些实施方式中,本文所述的技术被实现于基于计算机和/或微处理器的***中。
本文所述的技术的各种功能可按照任何期望且合适的方式来实现。例如,根据需要,本文所述的技术的功能可被实现于硬件或软件中。因此,例如,本文所述的技术的各种功能元件和“装置”可包括能够操作以执行各种功能等的合适的一个或多个处理器、一个或多个控制器、功能单元、电路、处理逻辑、微处理器结构等,例如适当的专用硬件元件(处理电路)和/或可被编程以按照期望的方式操作的可编程硬件元件(处理电路)。类似地,将要显示窗口的显示器可以是任何合适的此类显示器,诸如电子装置的显示屏、计算机的监视器等。
这里还应该注意的是,本领域技术人员将理解,本文所述的技术的各种功能等可被复制和/或在给定处理器上并行执行。同样,如果需要,各种处理级可共享处理电路等。
本发明优选被实现于便携式装置中,并且优选地实现在诸如移动电话或平板中。
本文所述的技术适用于任何合适形式或配置的图形处理器和渲染器,例如具有“流水线”渲染结构的处理器(在这种情况下,渲染器将为渲染流水线的形式)。它尤其适用于基于贴片的图形处理器、图形处理***、合成引擎和合成显示控制器。
本领域技术人员还将理解,本文所述的技术的所有描述的实施方式可酌情包括本文所述的任一个或更多个或全部优选和可选特征。
依据本文所述的技术的方法可至少部分地利用软件(例如,计算机程序)来实现。因此将看出,当从进一步的实施方式看时,本文所述的技术提供在安装在数据处理装置上时具体适于执行本文所述的方法的计算机软件、包括在程序元件在数据处理装置上运行时执行本文所述的方法的计算机软件代码部分的计算机程序元件、以及包括在程序在数据处理***上运行时适于执行本文所述的方法的所有步骤的代码装置的计算机程序。数据处理***可以是微处理器、可编程FPGA(现场可编程门阵列)等。
本文所述的技术还扩展至包括这种软件的计算机软件载体,其在用于操作图形处理器、渲染器或包括数据处理装置的其它***时,与所述数据处理装置结合以使得所述处理器、渲染器或***执行本文所述的技术的方法的步骤。这种计算机软件载体可以是诸如ROM芯片、CD-ROM、RAM、闪存或盘的物理存储介质,或者可以是诸如电线上的电信号、光学信号或者例如卫星的无线电信号等的信号。
还将理解,并非本文所述的技术的方法的所有步骤均需要通过计算机软件来执行,因此从更广泛的实施方式讲,本文所述的技术提供计算机软件,这种软件安装在计算机软件载体上以用于执行本文所阐述的方法的至少一个步骤。
本文所述的技术因此可被适当地具体实现为用于计算机***的计算机程序产品。这种实现方式可包括固定于诸如计算机可读介质(例如,磁盘、CDROM、ROM、RAM、闪存或硬盘)的有形的永久介质上的一系列计算机可读指令。它还可包括可通过有形介质(包括但不限于光学或模拟通信线路)或无形地利用无线技术(包括但不限于微波、红外或其它传输技术)经由调制解调器或其它接口装置传输至计算机***的一系列计算机可读指令。这一系列计算机可读指令具体实现本文先前所述的所有或部分功能。
本领域技术人员将理解,这些计算机可读指令可以用许多计算机架构或操作***所使用的若干编程语言来编写。另外,这些指令可利用目前或未来的任何存储器技术(包括但不限于半导体、磁或光学)来存储,或者利用目前或未来的任何通信技术(包括但不限于光学、红外或微波)来传输。可以想到,这种计算机程序产品可作为可移除介质随所附的印刷或电子文档一起分发(例如,紧缩套装软件),用计算机***预先加载到(例如)***ROM或固定盘上,或者经由网络(例如,互联网或万维网)从服务器或电子公告牌分发。
附图说明
现在将仅以示例的方式参照附图描述本发明的优选实施方式,附图中:
图1a和图1b示意性地示出了亮度补偿操作背后的一般原理;
图2示意性地示出了执行动态亮度和背光缩放操作的示例性数据处理***;
图3示意性地示出可依据所描述的本发明的实施方式操作的示例性数据处理***;
图4是示出根据本发明的实施方式的显示控制器的操作的流程图;
图5和图6是示出本发明的实施方式中的帧生成器(视频引擎和GPU)的操作的流程图;
图7是示意性示出本发明的实施方式中的GPU与显示控制器之间的数据流和控制流等的框图;
图8是示意性示出本发明的实施方式中的GPU与亮度和背光缩放引擎中的数据流和控制流的框图;以及
图9示意性地示出可依据所描述的本发明的实施方式操作的示例性数据处理***。
在适当的情况下,在附图中始终将相同的标号用于相同的特征。
具体实施方式
现在将描述本发明的若干实施方式。
如上所述,本发明涉及一种***,其中使用正在被显示的帧的显示修改信息可以在提供待显示的帧时影响帧生成的一个方面或多个方面。
图3示意性地示出可执行本发明的基本操作的示例性数据处理***30。这类似于上面参照图2描述的***,但是有若干重要区别。
如图3所示,数据处理***30可包括芯片上***(SoC)31,SoC包括CPU33、GPU34、视频处理引擎(视频引擎)35、显示控制器36和存储器控制器313,所有这些均访问片外存储器314。在此实施方式中,显示控制器36是本身能够执行亮度和背光缩放操作并且操作以执行亮度和背光缩放操作的显示控制器。(当然,例如单独的亮度和背光缩放引擎与显示控制器分离地执行亮度和背光缩放操作的其它结构同样也是可能的。)
显示器32本身与SoC和片外存储器分离,显示器32包括背光37和显示面板38(例如,LCD面板)。
在图3所示的实施方式中,GPU34和视频引擎35包括压缩器(压缩引擎)(以及对应的解压缩器)39和310,压缩器39和310分别用于对将要以压缩形式存储在存储器中的数据(例如,帧)进行编码(压缩)。因此,显示控制器36包括用于对数据(例如,待显示的帧)进行解压缩的解压缩器311。
(所生成的帧的压缩和解压缩可根据需要以其它方式提供。例如,代替包括压缩引擎的GPU34和视频引擎35等,可在***中设置单独的压缩和解压缩引擎,所述单独的压缩和解压缩引擎从帧生成器接收帧并且在将所述帧写入存储器之前将所述帧压缩,并且相应地从存储器读取所述帧并且在将所述帧提供给例如显示控制器之前将所述帧解压缩。)
依据本发明实施方式,待显示的帧根据需要例如通过由GPU34或视频引擎35适当地渲染来生成。然后,所生成的帧被存储(例如,以压缩形式)在片外存储器314内的帧缓冲器中。
为了显示,首先由显示控制器36从片外存储器314取回所生成的帧,如果适当的话,由显示控制器36的解压缩器311解压缩。然后,显示控制器36将对(例如,解压缩的)帧执行显示修改以提供用于显示的输出帧。根据本发明的优选实施方式,对所生成的待显示的帧执行的显示修改包括分析所生成的帧(例如,利用直方图)以确定所述帧的最佳背光调光因子和亮度补偿参数。
然后,使用亮度补偿参数来修改待显示的帧以提供经亮度补偿的、用于显示的输出帧。然后,使用用于显示的输出帧来推导出显示面板38的驱动电压(以显示正确的颜色),同时使用所确定的背光调光因子将背光37设定为适当的明度水平。
在完成显示修改之后,显示控制器36(例如,实时地)将显示修改信息(例如,确定的亮度补偿参数)提供给GPU33和视频引擎34。在图3中通过虚线箭头来示出从显示控制器36向帧生成器的这种显示修改信息的“反馈”。
在GPU34或视频引擎35处,使用显示修改信息来影响帧生成处理的一个方面或多个方面。例如,GPU34或视频引擎35被配置为基于输出帧的显示修改信息来修改针对待显示的帧生成的帧缓冲数据(以提供待显示的新帧)。
然后,将针对后续的待显示的帧重复这一过程(因此,然后将由显示控制器36取回待显示的新的帧,并且将对所述待显示的新的帧执行显示修改以提供用于显示的新输出帧,依此类推)。
本发明的实施方式可在提供用于显示的帧的任何期望形式的数据处理***中实现。因此,它们可(例如)用在其中使用集中式压缩器和/或解压缩器(并且充当SoC31的组件与片外存储器314之间的中介)的***中。这与各个帧生成器包括单独的压缩器和/或解压缩器(39、310和311)的结构形成对比。当然,不支持压缩和/或解压缩的结构同样是可以的(在一些情况下是优选的)。
另外,将理解,尽管图3的结构仅示出了两个帧生成器(GPU34和视频引擎35),但是本发明的数据处理***可酌情包括任意数量(和类型)的帧生成器。
另外,将理解,显示修改信息可(并且优选地将)被提供给(并且用在)帧生成处理的任何阶段。
图4更详细地示出了当被设定为按照根据本发明的优选实施方式的方式操作时图3的显示控制器的操作。这里假设需要待显示的新的帧,例如刷新显示器。还假设显示控制器被设定为如上所述地执行亮度补偿修改。
如图4所示,显示控制器的操作开始于步骤41:显示控制器操作以取回(从例如帧缓冲器)先前生成的待显示的(数据的)帧。
如上所述,待显示的帧可以以压缩形式存储在帧缓冲器中。在这些情况下,待显示的(压缩的)帧由显示控制器(具体地,显示控制器内的解压缩器)在步骤42解压缩。
在步骤43,显示控制器操作以生成待显示的帧的直方图(或者至少表示直方图的数据阵列),以允许确定显示器像素或子像素的可能的亮度值的密度分布。
然后,在步骤44对帧的直方图(数据)进行分析以针对给定失真率(可由用户设定)确定最佳背光调光因子和最佳亮度补偿参数。例如,直方图分析将允许针对待显示的帧确定可接受的失真率所需的阈值亮度值(因此,增益因子)。
在该确定之后,显示控制器将相应地修改帧缓冲数据以生成输出帧(被输出以用于显示)(步骤45)。例如,这通过提升帧的亮度值以提供经亮度补偿的输出帧来实现,所述输出帧然后被输出到显示器以用于显示。
在步骤46,使用所确定的最佳背光调光因子将背光设定为适当的强度水平。
在步骤47,然后,(例如,实时地)将显示修改信息(具体地,所确定的最佳亮度补偿参数)提供给帧生成器(例如,GPU或视频引擎)以如上所述地用于影响后续帧的生成和/或操纵。
只要***被设定为执行亮度补偿操作,每当需要待显示的新的帧(例如,刷新显示器)时,重复步骤41、42和45。步骤43、44、46和47可根据需要来执行。例如,步骤43、44、46和47可被设定为每当需要待显示的新的帧时重复,或者在已处理并显示了预定数量的帧之后重复,或者每当背光可被更新时重复。
图5和图6更详细地示出当被设定为基于由图3的显示控制器提供的显示修改信息提供待显示的新帧时图3的帧生成器(视频引擎和GPU)的操作。同样假设显示控制器被设定为执行如上所述的亮度补偿修改。
如图5所示,帧生成器将首先生成待显示的新的(数据的)帧(步骤51)。待显示的新的帧根据需要通过(例如)适当地渲染并存储(例如,以压缩形式)在(例如,片外存储器内的)帧缓冲器中生成。
在步骤52,帧生成器将从例如显示控制器得到帧的显示修改信息,具体地,所确定的最佳亮度补偿参数(如上面参照图4所述)。
在步骤53,帧生成器将基于显示修改信息修改待显示的帧。在此具体示例中,帧生成器将操作以标识待显示的新的帧的可能由于显示修改而饱和的像素或子像素,然后使待显示的新的帧的那些像素或子像素“饱和”(通过将标识的像素或子像素设定为公共(例如,最大)亮度值)。
然后,可根据需要压缩“饱和的”帧。
然后,在显示之前,显示控制器取会所述饱和的(且压缩的)帧将以进行显示修改。
图6示出图5的替代结构,其中在生成待显示的新的帧时使待显示的帧“饱和”。
在步骤61,帧生成器将首先从显示控制器接收帧的确定的最佳亮度补偿参数(如上面参照图4所述)。
在步骤62,帧生成器将基于所提供的亮度补偿参数生成“饱和的”待显示的(数据的)帧并将所述帧存储在帧缓冲器中。这可在帧生成的(例如,光栅化以及)渲染阶段期间通过例如分析待显示的新的帧的像素或子像素所取的采样位置值以标识待显示的新的帧的将由于显示修改操作而饱和的像素或子像素来完成。然后,帧生成器将待显示的新的帧的那些标识的像素或子像素的“饱和的”亮度值存储在存储器中。
然后在步骤63,可将饱和的帧缓冲数据压缩并存储在帧缓冲器中。
同样,在显示之前,由显示控制器取回饱和且压缩的帧以进行显示修改。
图7示意性地示出可按照本发明的实施方式的方式操作的GPU34与显示控制器36之间的数据流。
GPU34根据需要在帧生成块71中生成待显示的(新的)帧。然后,在GPU34的帧饱和块72中,基于提供给帧饱和块72的亮度补偿参数使所生成的帧“饱和”。尽管未示出,亮度补偿参数可由显示控制器36提供。
然后,GPU34的压缩器73压缩饱和的帧,然后经由例如总线接口(未示出)存储在存储器***74中。
为了显示,将压缩的帧发送给显示控制器36(或者由显示控制器36取回),然后在该处解压缩。在显示控制器36中,(将经受亮度补偿操作的)帧的区域存储在缓冲器77中,同时直方图生成器75生成该帧区域的直方图(或者至少表示直方图的数据阵列)。然后,针对显示修改分析该帧区域的直方图。具体地,在块76处确定最佳背光调光因子和亮度补偿参数。
在该确定之后,使用亮度补偿参数来修改存储在缓冲器77中的帧区域以提供用于显示的输出帧(即,经亮度补偿的帧)。如本领域技术人员将理解的,输出帧可包括经修改的帧区域和/或没有经受亮度补偿操作的帧区域。然后,使用所确定的背光调光因子将背光(未示出)设定为适当水平的明度。
此外,在被输出给显示器(例如,经由接口)以进行显示之前,(经亮度补偿的)输出帧在块78处被格式化。
尽管未示出,将理解,在大多数情况下,输出帧的显示修改信息将被(例如,实时地)返回提供给GPU34以影响后续帧生成和/或操纵的一个方面或多个方面。
图8示出类似于图7的结构,不同的是,在此示例中,示出GPU34与执行显示修改操作的亮度和背光缩放引擎87之间的数据流。
如图8所示,在状态机82的控制下的亮度和背光缩放引擎87包括总线接口81,总线接口81可操作为从帧缓冲存储器(未示出)取回待显示的压缩帧,并且将恰当地解压缩该数据(例如,通过使用解压缩引擎(未示出))。
类似于图7的显示控制器,亮度和背光缩放引擎87将(将经受亮度补偿操作的)(解压缩的)帧的区域存储在缓冲器85中,同时直方图生成器83生成该帧区域的直方图(或者至少表示直方图的数据阵列)。然后,在块84处,分析该帧区域的直方图以确定该帧区域的最佳背光调光因子和亮度补偿参数。
使用亮度补偿参数来修改存储在缓冲器85中的帧区域,以提供用于显示的输出帧(即,经亮度补偿的帧),并且使用所确定的背光调光因子来设定背光(未示出)的明度。同样,本领域技术人员将理解,输出帧可包括经过修改的帧区域和/或未经受亮度补偿操作的帧区域。
为了在提供待显示的帧时影响帧生成和/或操纵的一个方面或多个方面,亮度和背光缩放引擎87将亮度补偿参数提供给GPU34(具体地,位于GPU34的压缩器39中的帧饱和块72)。
在GPU帧生成块71中生成了待显示的新的帧之后,帧饱和块72基于提供给帧饱和块72的亮度补偿参数来修改新的帧数据以生成饱和的帧。然后,在经由另一总线接口88存储在帧缓冲器(未示出)中之前,GPU34的压缩器73压缩饱和的帧。
尽管图7和图8的结构示出了显示控制器36或亮度和背光缩放引擎87生成并分析待显示的当前帧区域的直方图(例如,以确定将用于该帧区域的最佳背光调光因子和亮度补偿参数),将理解,作为替代,显示控制器36或亮度和背光缩放引擎87可使用针对先前帧的对应帧区域确定的亮度补偿参数。在这种情况下,使用先前帧的对应帧区域的显示修改信息(例如,亮度补偿参数)来修改存储在缓冲器77或85中的帧区域,以提供用于显示的输出帧(即,经亮度补偿的帧)。
另外,尽管图7和图8示出了GPU34以及亮度和背光缩放引擎87或显示控制器36中的数据流和控制流等,将理解,GPU34可由任何其它类型的帧生成器(例如,视频引擎)代替。
此外,尽管具体参照压缩器的使用描述了上述实施方式,将理解,压缩器的使用对于本发明实施方式而言不是必不可少的,并且并非意在限制本申请的范围。例如,申请人认识到,(在没有压缩的情况下)基于显示的当前帧(或帧区域)的显示修改信息(例如,亮度补偿水平)使新生成的帧饱和可能仍是有利的。
图9示意性地示出了包括图3的GPU34和视频引擎35以及合成引擎91的数据处理***,合成引擎91生成合成的帧并将所述帧提供给显示控制器36以便于显示。显示控制器36对应于图3的显示控制器,并且如参照图4所述。
合成引擎91操作以从GPU34和视频引擎35读取源帧并且生成待显示的合成的帧。这可根据需要例如通过混合或者以其它方式合并源帧来完成。如果需要,该处理还可涉及对源帧应用变换(扭曲、旋转、缩放等)。
如图9所示,显示控制器36操作以向GPU34、视频引擎35和合成引擎91提供显示修改信息,具体地,亮度补偿参数。然后,依据上述实施方式,使用亮度补偿参数来影响帧生成和/或操纵的一方面。
例如,在一种结构中,在合成引擎91中合成源帧之前,在GPU34和视频引擎35处(基于亮度补偿参数)使源帧“饱和”。
在另一示例中,更改GPU34和视频引擎35的操作,使得GPU34和视频引擎35中的源帧的饱和被禁止,并且更改合成引擎91的操作以使得源帧首先在合成引擎91中合成,然后基于显示修改信息使合成的帧本身饱和(即,允许合成的帧的饱和)。
例如,可基于合成引擎91所使用的混合模式来判定在合成引擎91中是在合成之前对源帧执行饱和还是对合成的帧(即,在合成之后)执行饱和。
可从上文看出,本发明(至少在其优选实施方式中)提供了一种在处理帧以提供在电子显示器上时在允许显示器的背光所消耗的功率降低的同时执行更智能和/或复杂的操作的方式。
至少在本发明的优选实施方式中,这通过在对待显示的帧执行显示修改操作(诸如,亮度和背光缩放)以提供用于显示的输出帧时,将输出帧的显示修改信息提供给与帧生成有关的一个或多个硬件元件以影响待显示的帧的生成和/或操纵的一个或多个方面来实现。
另外,本发明通过基于显示修改信息适当地修改待显示的帧(同时在帧生成和/或操纵阶段)允许遍及数据处理***传送的数据量减少。

Claims (29)

1.一种处理帧以提供在电子显示器上的方法,该方法包括以下步骤:
生成待显示的帧;以及
对所生成的帧执行显示修改操作,以提供用于显示的输出帧;
该方法还包括以下步骤:
利用关于将应用于所生成的待显示的帧以提供用于显示的输出帧的所述显示修改操作的信息来控制待显示的帧的生成的方面。
2.根据权利要求1所述的方法,其中,所述待显示的帧是由图形处理器生成的帧、由视频处理器生成的帧或者由合成引擎生成的帧。
3.根据权利要求1或2所述的方法,其中,所述显示修改操作包括亮度补偿操作和/或基于环境光水平的显示修改操作。
4.根据前述权利要求中任一项所述的方法,其中,所述显示修改信息包括指示和/或可用于确定所述显示修改操作将如何改变所生成的待显示的帧中的数据位置的数据值的信息,所述显示修改操作将用于从所生成的帧生成为显示而提供的输出帧。
5.根据前述权利要求中任一项所述的方法,其中,所述显示修改信息包括将在所生成的帧经受所述显示修改操作时用于所生成的帧的一个或更多个亮度缩放参数。
6.根据前述权利要求中任一项所述的方法,其中,利用关于将应用于所生成的待显示的帧以提供用于显示的输出帧的所述显示修改操作的信息来控制待显示的帧的生成的方面的步骤包括:
利用关于应用于先前的一个或多个帧以提供先前的一个或多个输出帧的所述显示修改操作的信息,控制后续的待显示的一个或多个帧的生成的一个或多个方面。
7.根据前述权利要求中任一项所述的方法,该方法包括:将所述显示修改信息提供给图形处理***、视频处理***、帧合成***以及压缩级中的一个或更多个,所述压缩级操作以在所生成的帧被存储在存储器中之前压缩所生成的帧,然后从所述存储器读取所生成的帧以用于所述显示修改操作。
8.根据前述权利要求中任一项所述的方法,其中,使用关于将应用于所生成的待显示的帧的所述显示修改操作的所述信息来设定或修改正在生成的所述帧中的数据位置的数据值。
9.根据前述权利要求中任一项所述的方法,该方法包括:
利用关于正在应用的所述显示修改操作的所述信息来标识所述帧内的将由于所述显示修改操作而被设定为公共值的数据位置;以及
在所生成的数据帧中,将标识的数据位置设定为相同的公共值。
10.根据前述权利要求中任一项所述的方法,该方法包括:
利用关于正在应用的所述显示修改操作的所述信息来量子化正在生成的帧内的所述数据值。
11.根据前述权利要求中任一项所述的方法,该方法还包括:在已基于将要执行的所述显示修改操作设定或修改了帧的所述数据值之后,将所生成的帧压缩。
12.根据前述权利要求中任一项所述的方法,该方法包括:
从两个或更多个源帧合成待显示的帧;以及
基于将用于合成所述帧的混合模式:
在所述合成处理之前基于所述显示修改信息修改所述源帧的帧数据,或者不基于所述显示修改信息修改所述源帧的帧数据,而是基于所述显示修改信息修改合成的帧的帧数据。
13.根据前述权利要求中任一项所述的方法,该方法包括:
基于所述显示修改信息来选择将用于压缩表示所生成的帧的数据的压缩方案。
14.一种处理帧以提供在电子显示器上的***,该***包括:
帧生成级,其用于生成待显示的帧;以及
显示修改级,其用于对所生成的帧执行显示修改以提供用于显示的输出帧,并且
其中,所述帧生成级被配置为利用关于将应用于所生成的待显示的帧以提供用于显示的输出帧的所述显示修改的信息来控制待显示的帧的生成的方面。
15.根据权利要求14所述的***,其中,所述待显示的帧是由图形处理器生成的帧、由视频处理器生成的帧或者由合成引擎生成的帧。
16.根据权利要求14或15所述的***,其中,所述显示修改操作包括亮度补偿操作和/或基于环境光水平的显示修改操作。
17.根据权利要求14至16中任一项所述的***,其中,所述显示修改信息包括指示和/或可用于确定所述显示修改操作将如何改变所生成的待显示的帧中的数据位置的数据值的信息,所述显示修改操作将用于从所生成的帧生成为显示而提供的输出帧。
18.根据权利要求14至17中任一项所述的***,其中,所述显示修改信息包括将在所生成的帧经受所述显示修改操作时用于所生成的帧的一个或更多个亮度缩放参数。
19.根据权利要求14至18中任一项所述的***,其中,所述帧生成级被配置为:
利用关于应用于先前的一个或多个帧以提供先前的一个或多个输出帧的所述显示修改操作的信息,控制后续的待显示的一个或多个帧的生成的一个或多个方面。
20.根据权利要求14至19中任一项所述的***,其中,将显示修改信息提供给图形处理***、视频处理***、帧合成***以及压缩级中的一个或更多个,所述压缩级操作以在所生成的帧被存储在存储器中之前压缩所生成的帧,然后从所述存储器读取所生成的帧以用于所述显示修改操作。
21.根据权利要求14至20中任一项所述的***,其中,利用关于将应用于所生成的待显示的帧的所述显示修改操作的所述信息来设定或修改正在生成的帧中的数据位置的数据值。
22.根据权利要求14至21中任一项所述的***,其中,所述帧生成级被配置为:
利用关于正在应用的所述显示修改操作的所述信息来标识所述帧内将由于所述显示修改操作而被设定为公共值的数据位置;以及
在所生成的数据帧中将标识的数据位置设定为相同的公共值。
23.根据权利要求14至22中任一项所述的***,其中,所述帧生成级被配置为:
利用关于正在应用的所述显示修改操作的所述信息来量子化正在生成的帧内的数据值。
24.根据权利要求14至23中任一项所述的***,该***还包括压缩级,该压缩级在已基于将要执行的所述显示修改操作设定或修改了帧的数据值之后将所生成的帧压缩。
25.根据权利要求14至24中任一项所述的***,该***还包括:
压缩级,其从两个或更多个源帧合成待显示的帧,并且
其中,所述帧生成级被配置为:
基于将用于合成所述帧的混合模式,在合成处理之前基于所述显示修改信息修改所述源帧的帧数据,或者不基于所述显示修改信息修改所述源帧的帧数据,
而是基于所述显示修改信息修改合成的帧的帧数据。
26.根据权利要求14至25中任一项所述的***,其中,所述帧生成级包括压缩级并且所述压缩级被配置为:
基于所述显示修改信息来选择将用于压缩表示所生成的帧的数据的压缩方案。
27.一种包括软件代码的计算机程序,该计算机程序在数据处理***上运行时适于执行根据权利要求1至13中任一项的方法。
28.一种基本上如本文中参照任一附图所述的处理帧以提供在电子显示器上的方法。
29.一种基本上如本文中参照任一附图所述的处理帧以提供在电子显示器上的***。
CN201510184709.6A 2014-04-17 2015-04-17 处理帧以提供在电子显示器上的方法和*** Active CN105049745B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB1406976.9 2014-04-17
GB1406976.9A GB2525388B (en) 2014-04-17 2014-04-17 Method of and apparatus for processing data for a display

Publications (2)

Publication Number Publication Date
CN105049745A true CN105049745A (zh) 2015-11-11
CN105049745B CN105049745B (zh) 2020-05-22

Family

ID=50928945

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510184709.6A Active CN105049745B (zh) 2014-04-17 2015-04-17 处理帧以提供在电子显示器上的方法和***

Country Status (4)

Country Link
US (1) US9837048B2 (zh)
KR (1) KR102314937B1 (zh)
CN (1) CN105049745B (zh)
GB (1) GB2525388B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107018286A (zh) * 2016-01-20 2017-08-04 联发科技股份有限公司 图像帧更新方法及相关装置
CN107154246A (zh) * 2016-03-02 2017-09-12 Arm有限公司 数据处理***
CN108961178A (zh) * 2018-06-20 2018-12-07 陕西师范大学 基于局部直方图压缩的sar单景图像亮度补偿方法

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101980826B1 (ko) 2016-10-14 2019-05-21 부경대학교 산학협력단 투과형 lcd를 위한 저전력 대조비 개선 장치 및 방법
TWI601122B (zh) * 2016-11-15 2017-10-01 晨星半導體股份有限公司 應用於顯示器的影像補償方法與相關的控制電路
US10890966B2 (en) 2017-07-27 2021-01-12 Arm Limited Graphics processing systems
US10706812B2 (en) * 2018-05-30 2020-07-07 Ati Technologies Ulc Source-side tone mapping based on native color gamut and brightness of display
WO2021081954A1 (zh) * 2019-10-31 2021-05-06 北京集创北方科技股份有限公司 子像素渲染方法、驱动芯片和显示装置
KR20210148468A (ko) * 2020-05-28 2021-12-08 삼성디스플레이 주식회사 표시장치 및 계조값 조정방법
EP4162699A4 (en) * 2020-06-05 2024-02-14 QUALCOMM Incorporated VIDEO DATA PROCESSING BASED ON SAMPLING RATE
TWI798964B (zh) * 2021-11-29 2023-04-11 瑞昱半導體股份有限公司 顯示裝置與相關的系統晶片

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020145611A1 (en) * 2000-02-01 2002-10-10 Dye Thomas A. Video controller system with object display lists
US20080218467A1 (en) * 2007-03-05 2008-09-11 Himax Technologies Limited Backlight controller and scaling factor using full range search and local range search method
JP2011175243A (ja) * 2010-01-07 2011-09-08 Sharp Corp 電力制御イベントに応答する表示装置のための方法およびシステム
CN103310765A (zh) * 2013-06-14 2013-09-18 青岛海信信芯科技有限公司 背光亮度补偿方法及显示装置
CN103578435A (zh) * 2012-07-26 2014-02-12 国基电子(上海)有限公司 背光调整方法及具有该背光调整功能的电子装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8736674B2 (en) * 2010-09-23 2014-05-27 Dolby Laboratories Licensing Corporation Method and system for 3D display calibration with feedback determined by a camera device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020145611A1 (en) * 2000-02-01 2002-10-10 Dye Thomas A. Video controller system with object display lists
US20080218467A1 (en) * 2007-03-05 2008-09-11 Himax Technologies Limited Backlight controller and scaling factor using full range search and local range search method
JP2011175243A (ja) * 2010-01-07 2011-09-08 Sharp Corp 電力制御イベントに応答する表示装置のための方法およびシステム
CN103578435A (zh) * 2012-07-26 2014-02-12 国基电子(上海)有限公司 背光调整方法及具有该背光调整功能的电子装置
CN103310765A (zh) * 2013-06-14 2013-09-18 青岛海信信芯科技有限公司 背光亮度补偿方法及显示装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107018286A (zh) * 2016-01-20 2017-08-04 联发科技股份有限公司 图像帧更新方法及相关装置
CN107154246A (zh) * 2016-03-02 2017-09-12 Arm有限公司 数据处理***
CN108961178A (zh) * 2018-06-20 2018-12-07 陕西师范大学 基于局部直方图压缩的sar单景图像亮度补偿方法

Also Published As

Publication number Publication date
GB2525388B (en) 2021-01-13
KR102314937B1 (ko) 2021-10-20
US20150310791A1 (en) 2015-10-29
CN105049745B (zh) 2020-05-22
GB201406976D0 (en) 2014-06-04
GB2525388A (en) 2015-10-28
KR20150120293A (ko) 2015-10-27
US9837048B2 (en) 2017-12-05

Similar Documents

Publication Publication Date Title
CN105049745A (zh) 用于处理数据以显示的方法和设备
CN111527748B (zh) 图像处理装置、图像处理方法和多屏幕显示器
JP6358718B2 (ja) Hdr画像をエンコードするための方法及び装置、並びに、斯様なエンコードされた画像の使用のための方法及び装置
RU2670782C9 (ru) Способы и устройства для создания функций отображения кода для кодирования изображения hdr и способы и устройства для использования таких кодированных изображений
RU2607981C2 (ru) Устройства и способы для анализа градуировок изображения
US7554557B2 (en) Device and method for image compression and decompression
US8599214B1 (en) Image compression method using dynamic color index
CN113299245B (zh) 显示设备局部背光调节方法、装置、显示设备及存储介质
CN108281125B (zh) 根据人眼特性进行背光亮度调节的方法、装置和设备
US20090066715A1 (en) Method and apparatus for processing digital image to be displayed on display device with backlight module
CN105379260A (zh) 创建用于针对hdr图像的通用代码映射的eotf函数的方法和装置以及使用这些图像的方法和过程
US10832636B2 (en) Image processing apparatus, image processing method, and program
CN107209928A (zh) 用于将hdr画面映射为sdr画面的方法和设备以及相应的sdr到hdr的映射方法和设备
KR20220138866A (ko) 변하는 레벨들의 메타데이터을 포함하는 컬러 관리를 제어하기 위한 스케일러블 시스템들
WO2007108475A1 (ja) 表示装置、画像データ供給装置、表示システム、制御方法、制御プログラムおよびそれを記録したコンピュータ読み取り可能な記録媒体
US20180068637A1 (en) Dynamic Power Management for an HDR Display
US10798321B2 (en) Bit-depth efficient image processing
CN112419354B (zh) 一种图像亮度处理方法及装置、电子设备
KR20210020387A (ko) 전자 장치 및 그 제어 방법
CN108495054B (zh) 高动态范围信号的处理方法、装置及计算机存储介质
JP2009302684A (ja) 表示制御装置および表示制御方法
JP6723969B2 (ja) 画像処理装置、表示装置、および画像処理方法
WO2019036522A1 (en) EFFICIENT IMAGE PROCESSING IN BIT DEPTH
CN115223509A (zh) 背光控制方法、装置、显示设备及计算机可读存储介质
CN112367557B (zh) Led电视墙的显示方法、电视和计算机可读存储介质

Legal Events

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