EP3721405A1 - Improved high dynamic range video color remapping - Google Patents
Improved high dynamic range video color remappingInfo
- Publication number
- EP3721405A1 EP3721405A1 EP18811314.6A EP18811314A EP3721405A1 EP 3721405 A1 EP3721405 A1 EP 3721405A1 EP 18811314 A EP18811314 A EP 18811314A EP 3721405 A1 EP3721405 A1 EP 3721405A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- luminance
- color
- image
- input
- output
- 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
- 238000013507 mapping Methods 0.000 claims abstract description 81
- 238000004364 calculation method Methods 0.000 claims abstract description 24
- 238000012986 modification Methods 0.000 claims abstract description 6
- 230000004048 modification Effects 0.000 claims abstract description 6
- 235000019557 luminance Nutrition 0.000 claims description 309
- 239000003086 colorant Substances 0.000 claims description 106
- 238000012545 processing Methods 0.000 claims description 59
- 238000000034 method Methods 0.000 claims description 18
- 230000008859 change Effects 0.000 claims description 16
- 238000012937 correction Methods 0.000 claims description 16
- 238000011156 evaluation Methods 0.000 claims description 8
- 230000036961 partial effect Effects 0.000 claims description 7
- 230000006870 function Effects 0.000 description 101
- 241000023320 Luma <angiosperm> Species 0.000 description 44
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 34
- 230000009466 transformation Effects 0.000 description 13
- 230000007246 mechanism Effects 0.000 description 11
- 238000005282 brightening Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 10
- 230000006399 behavior Effects 0.000 description 9
- 238000004422 calculation algorithm Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 8
- 238000009877 rendering Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 7
- 230000009471 action Effects 0.000 description 6
- 230000000694 effects Effects 0.000 description 6
- 238000010191 image analysis Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 5
- 238000005286 illumination Methods 0.000 description 5
- 230000009467 reduction Effects 0.000 description 5
- 230000002441 reversible effect Effects 0.000 description 5
- 238000000844 transformation Methods 0.000 description 5
- 230000006978 adaptation Effects 0.000 description 4
- 239000000654 additive Substances 0.000 description 4
- 230000000996 additive effect Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 230000001419 dependent effect Effects 0.000 description 4
- 230000000670 limiting effect Effects 0.000 description 4
- 229920006395 saturated elastomer Polymers 0.000 description 4
- VYZAMTAEIAYCRO-UHFFFAOYSA-N Chromium Chemical compound [Cr] VYZAMTAEIAYCRO-UHFFFAOYSA-N 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000009826 distribution Methods 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 230000002939 deleterious effect Effects 0.000 description 2
- 230000004438 eyesight Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000003595 mist Substances 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- YBJHBAHKTGYVGT-ZKWXMUAHSA-N (+)-Biotin Chemical compound N1C(=O)N[C@@H]2[C@H](CCCCC(=O)O)SC[C@@H]21 YBJHBAHKTGYVGT-ZKWXMUAHSA-N 0.000 description 1
- 208000019300 CLIPPERS Diseases 0.000 description 1
- 241001050985 Disco Species 0.000 description 1
- 241001061106 Sargocentron rubrum Species 0.000 description 1
- 230000004397 blinking Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 208000021930 chronic lymphocytic inflammation with pontine perivascular enhancement responsive to steroids Diseases 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 230000003467 diminishing effect Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 239000000796 flavoring agent Substances 0.000 description 1
- 235000019634 flavors Nutrition 0.000 description 1
- 238000009472 formulation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000000116 mitigating effect Effects 0.000 description 1
- 238000011369 optimal treatment Methods 0.000 description 1
- 230000001681 protective effect Effects 0.000 description 1
- 238000013441 quality evaluation Methods 0.000 description 1
- 238000013442 quality metrics Methods 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 238000002310 reflectometry Methods 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- FEPMHVLSLDOMQC-UHFFFAOYSA-N virginiamycin-S1 Natural products CC1OC(=O)C(C=2C=CC=CC=2)NC(=O)C2CC(=O)CCN2C(=O)C(CC=2C=CC=CC=2)N(C)C(=O)C2CCCN2C(=O)C(CC)NC(=O)C1NC(=O)C1=NC=CC=C1O FEPMHVLSLDOMQC-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- 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/92—Dynamic range modification of images or parts thereof based on global image properties
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/90—Determination of colour characteristics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
-
- 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/88—Camera processing pipelines; Components thereof for processing colour signals for colour balance, e.g. white-balance circuits or colour temperature control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/64—Circuits for processing colour signals
- H04N9/643—Hue control means, e.g. flesh tone control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/64—Circuits for processing colour signals
- H04N9/68—Circuits for processing colour signals for controlling the amplitude of colour signals, e.g. automatic chroma control circuits
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/77—Circuits 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
-
- 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/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- 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/10—Image acquisition modality
- G06T2207/10024—Color image
-
- 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/20092—Interactive image processing based on input by user
Definitions
- the invention relates to methods and apparatuses for coding high dynamic range images, and in particular the changing of image pixel luminances to convert the image to a different luminance dynamic range.
- SDR Standard Dynamic Range
- LDR low dynamic range video coding
- a first HDR codec was introduced to the market, the HDR10 which is e.g. used to create the new black ribbon HDR blu-rays, which merely changed the OETF to a more logarithmically shaped Perceptual Quantizer function standardized in SMPTE 2084, which allowed defining lumas for luminances between 1/10,000 nit and 10,000 nit, sufficient for practical HDR video production.
- SMPTE 2084 a more logarithmically shaped Perceptual Quantizer function standardized in SMPTE 2084, which allowed defining lumas for luminances between 1/10,000 nit and 10,000 nit, sufficient for practical HDR video production.
- Real world scenes can have considerably high dynamic range.
- a cave with a small opening to the sunlit outside may on a 10,000 nit PB_C reference representation which contains a suitable HDR grading of that scene for home television viewing contain luminances far below 1 nit for the cave pixels, and up to 10,000 nit for the outdoors pixels.
- Such a challenging HDR image is not so trivially converted to considerably lower dynamic range (e.g. at least lOOx when going to SDR), especially if the content creator desires to convey a still reasonably similar HDR look also in the SDR rendering, but as elucidated with Fig. 1, in principle it can be done.
- the first one communicates HDR images to receivers, as did HDR10 so one can e.g. re-use the PQ OETF for encoding those images, but adding metadata prescribing how to luminance downgrade this HDR image to lower dynamic range (e.g. calculate the SDR 100 nit PB C image from the received HDR image).
- the second class (Mode 2) communicates the SDR image of the pair, and the inverse-shaped functions to upgrade to the HDR image, which is useful for serving a large installed base of legacy televisions (this involves further technical constraints for any add-on technology to follow).
- MDR medium dynamic range
- the HDR and SDR image gradings are created by a human color grader (e.g. first the HDR grading, and therefrom an SDR grading), however in some application an automatic system determines the graded images and the color mapping functions (which is e.g. currently preferred in real-time broadcast, in which the re-use of existing systems is not compatible with human grading).
- FIG. 1 shows a couple of archetypical illustrative examples of the many possible HDR scenes a HDR system of the future (e.g. connected to a 1000 nit PB_D display) may need to be able to correctly handle, i.e. by rendering the appropriate luminances for all objects/pixels in the image.
- ImSCNl is a sunny outdoors image from a western movie (which has mostly bright areas, which should ideally be rendered somewhat brighter than on a 100 nit display, to offer more a sunny look than a rainy day look, e.g. with an average luminance of say 500 nit), whereas ImSCN2 is a nighttime image.
- Fig. 1 On the left axis of Fig. 1 are object luminances as one would like to see them in a 5000 nit PB master HDR grading, for a 5000 nit PB_D display (i.e. the grader makes an image assuming the typical high quality HDR TV at home will have 5000 nit PB_D, and he may actually be sitting in a representation of such a home viewing room and grade on such a grading display). If one wants to convey not just an illusion, but a real sense of the cowboy being in a bright sunlit environment, one must specify and render those pixel luminances sufficiently bright (though also not annoyingly too bright, which is a typical pitfall of HDR image creation and handling), around e.g. 500 nit.
- the third example ImSCN3 shows what is now also possible on HDR displays: one can simultaneously render both very bright and very dark pixels. It shows a dark cave, with a small opening through which one can see the sunny outside.
- the functions for optimally re-grading will typically be content-dependent, so they will typically communicated at least per shot of images of a same, similarly looking and of similar luminance distribution scene.
- a single standardized HDR video e.g. 10 bit perceptual quantizer used as luma code defining EOTF for the encoding
- PB_C 1000 nit, under the assumption that every end viewer having a 1000 nit PB_D display
- HDR video communication system I.e., although in such a HDR video communication system one actually communicates only one type of graded images as transmitted pixelated images, typically though not exclusively in this example SDR images (or alternatively the HDR images), because one also adds in metadata one or more functions defining the HDR image pixel colors and in particular luminances from those SDR images, one has at the same time communicated HDR image looks for the scene also (without actually needing to
- HDR images like in dual image communication, or at least a second layer of pixelated HDR image data).
- Fig. 2 shows non-limitedly a typical system of the SDR- communicating type (i.e. mode 2), for the purpose of explaining the basic concepts.
- These functions may be defined by a human color grader, to get a reasonably looking SDR image (Im LDR) corresponding to the HDR master image MAST HDR, whilst at the same time ensuring that by using the inverse functions IF ct the original master HDR (MAST HDR) image can be reconstructed with sufficient accuracy as a reconstructed HDR image
- the IF ct functions can be determined from the forward, HDR-to-SDR mapping F_ct functions as communicated, or, the system may even directly communicate the IF ct function(s).
- the color transformer 202 typically applies the F_ct luminance mapping of the relative luminances of the master HDR image (MAST HDR) pixels, which we will assume to be normalized so that the maximum luminance is 1.0.
- MAST HDR master HDR image
- the receivers Since the receivers must be able to reconstruct the master HDR image from the received corresponding SDR image, or at least a close reconstruction but for some compression-related artefacts, apart from the actual pixelated images also the color mapping functions must enter the video encoder 203.
- the video is compressed with a MPEG HE VC video compressor, and the functions are stored in metadata, e.g. by means of the SEI mechanism or a similar technique.
- the video encoder 203 pretends it gets a normal SDR image as input, and more importantly: outputs what is technically a SDR image (coded image Im COD), following the Rec. 709 standard SDR luma specification.
- the further technology e.g. a transmission formatter 204 applying all the necessary transformations to format the data to go over some transmission medium 205 (e.g. coding to store on a BD disk, or frequency coding for cable transmission, etc.) can just apply all the typical steps it used to perform in the SDR coding paradigm.
- the image data travel over some transmission medium 205, e.g. a satellite or cable or internet transmission, e.g. according to ATSC 3.0, or DVB, or whatever video signal communication principle, to one or more receiving side(s).
- a receiver unformatter 206 which may be incorporated in various physical apparatuses like e.g. a settopbox, television or computer, undoes the channel encoding by applying unformatting and channel decoding.
- a video decoder 207 applies e.g. HEVC decoding, to yield a decoded SDR image Im RLDR, and the color transformation function metadata F_ct.
- a color transformer 208 is arranged to transform the SDR image to an image of any non-SDR dynamic range (i.e. of PB_C higher than 100 nit, and typically at least 6x higher).
- PB_C non-SDR dynamic range
- Im RHDR may be reconstructed by applying the inverse color transformations IF ct of the color transformations F_ct used at the encoding side to make the Im LDR from the
- a display adaptation unit 209 may be comprised which transforms the SDR image Im RLDR to a different dynamic range, e.g. Im3000 nit being optimally graded in case display 210 is a 3000 nit PB display, or a 1500 nit or 1000 nit PB image, etc.
- the video decoder and color transformer to be in a single video redetermination apparatus 220.
- Fig. 3 elucidates in a theoretical color space what a HDR-to-SDR color mapping (comprising in particular a luminance mapping) would look like.
- the color space is of the cylindrical category, and has as its base a chromaticity plane.
- the two dimensional chromaticity represents the“own nature” of a color, e.g. whether one has some saturated orange, or rather an unsaturated red (i.e. a pink), irrespective of the illumination or brightness of that color.
- the luminance which is the third, vertical dimension of the space (actually the relative luminance is used, which is supposed to stop at 1.0 as maximum).
- An SDR color (Col out) is calculated from a HDR color (Col in). The reader should understand that we represent both pixel colors in a normalized color space
- the SDR color should be brighter to still be visible (one can understand this by contemplating the technology wherein the relative luminance L corresponds to an LCD transmission percentage of a backlight which is much brighter for a HDR display than an SDR display, hence to have the same final color seen at the front of the display, the HDR display must transmit less light and vice versa).
- the color transformation behaves quite nicely as desired (in particular orthogonal, meaning that a luminance change doesn’t influence the chromaticity or vice versa), as one can see that the relative brightening indeed involves no change of the chromaticity (Chrom) of the color.
- the space of ah colors will be a cylinder, because one could actually illuminated the selected unsaturated yellow color with the light of a supernova.
- the teaching further prescribes that the gain factor is determined for each possible color based on which one of the three RGB components is the largest, which guarantees that the mapping scales correctly with the local Lmax(chrom), i.e. never giving out of gamut problems.
- the gain factor is determined for each possible color based on which one of the three RGB components is the largest, which guarantees that the mapping scales correctly with the local Lmax(chrom), i.e. never giving out of gamut problems.
- Fig. 4 shows how it looks and what its properties are.
- the new brightness measure however is now the luma.
- any such luma mapping function (whether the simple exemplary power function, or a much more complex and interesting function with several carefully selected local higher or lower slopes corresponding to luminances of objects of particular interest in the scene) in our above- described prior art system corresponds to a luma-dependent gain g(Y) by which the (linear or non-linear in respective possible embodiments) RGB components are multiplied (because one can implement the component multiplication also in power function redefinitions of linear RGB, like e.g. YCbCr).
- the“wrong” luminance is estimated for a color (having the same luminance theoretically as some achromatic grey which needs to be brightened) as a differing luma, such a color may get the“wrong” boost, leading i.a. to a fluorescent look of saturated colors, like a red color.
- the saturation is not changing with increasing Cb, but rather with the angle from the achromatic luma axis.
- This can be understood by taking a blue primary color (ColBlu), i.e. of maximum saturation reproducible in this display-dependent color system, and increasing its luminance towards the brightest possible blue (Blu).
- This being the same kind of saturated blue color, its chromaticity and hence its saturation will not change, but its Cb value increases with luma (or correspondingly with luminance).
- This luminance- dependency is why one calls the Cb and Cr component a Chrom-inance, the first part indicating the fact that it codifies a color aspect (the blueness of a color), but the second part indicating that this varies linearly with the non-linear luma.
- One can change the saturation in such an YCbCr representation by multiplying the chrominances equally with a constant saturation multiplier (Sm) though:
- the luma then does not change because it is not affected by this processing, although the luminance of the color will change because of the non-constant-luminance property of the luma (which in many situations is not perceived problematic by the users of the color processing systems, but in some more critical scenarios it may be). Changing only the luma part however, does not result in a constant color chromaticity behaviour however, because the CbCr components then correspond to the “wrong” luminance, hence a color of different saturation.
- Fig. 5 re-summarizes applicant’s co-developped Technicolor-Philips (a.k.a. SLHDR1 respectively SLHDR2) basic HDR decoder hardware (the encoder being the mirror processing). It can be similarly driven in two flavors: mode 1 in which case PQ-based YCbCr is inputted, i.e. which is calculated based on the non-linear R’G’B’ coordinates being calculated from the linear ones with an OETF which is the SMPTE 2084 Perceptual quantizer function, and the mode 2 version which we elucidate here, in which case normal (i.e. Rec.
- luminance processing part of the total SDR-to-HDR color mapping gets as input the luminance L of the currently processed pixel.
- a color space convertor 502 can handle this, by it being arranged to convert non-constant luminance luma Y to luminance, which can be done in various manners (e.g. the non-linear R’G’B’ -values are converted to their linear ones by applying the appropriate inverse OETF, the so-called EOTF, and then the luminance L is calculated by the appropriate linear definition equation based on RGB -triplet values, as explained above).
- the needed linear multiplicative factor for the three color components, gL is obtained by dividing the normalized output luminance L out, by the normalized input luminance L.
- a domain convertor 51 1 converts the linear luminances into perceptually more uniform perceptual lumas PY (e.g. by applying the PQ OETF, or the function patented by Philips in WO2015007505, the teachings of which are incorporated herein as potential embodiment teachings of the present application).
- Luminance mapper 512 performs the mapping of the SDR perceptual lumas PY to HDR output perceptual lumas PY_0.
- second domain converter 513 re-linearizes the perceptual lumas, i.e. obtains the correct HDR luminances L out.
- this topology is a powerful manner to realize chromaticity-preserving pure luminance changes in various manners as desired (at least that is: as long as the common multiplicative factor does not boost any of the R’G’B’ values above their maximum, which without limitation we will assume to be 1.0, which is the above-gamut clipping explained above).
- the rest of the circuit is an embodiment which is not so critical for understanding the below aspects of our present invention.
- Another Color LUT B(Y) can be loaded from metadata (by chromatic processing derivator 520), giving a B factor for each pixel luma Y to multiply the CbCr values as received by (by multiplier 521), to obtain more appropriate output values
- Y’_HDR gNL* Y’ nrm
- a display conditioner 540 can condition the colors for a generic reference (in case of storage e.g.) or specific connected display.
- the processing may be so simple to convert the gamma l/(2.0)-defmed R’G’B’ values to PQ OETF-defmed lumas R”G”B”_PQ.
- any particular display adaptation algorithm may be applied by display conditioner 540 to obtain instead of the e.g. 5000 nit PB C-defmed R’G’B’ HDR, e.g. 800 nit PB_D optimized R”G”B” values (it should not be misunderstood that in other embodiments this display adaptation may already happen in the processing itself, in particular in the luminance processor 501).
- the display conditioner 540 can condition the colors for a generic reference (in case of storage e.g.) or specific connected display.
- the processing may be so simple to convert the gamma l/(2.0)-defmed R’G’B’ values
- conditioner can yield any signal format desired by the connected display, and may
- this topology has some advantages of several hitherto mutually exclusive color processing visions: it has a YCbCr-structure, in particular that it accepts normal YCbCr input colors, yet it also shows all the nice properties of linear color processing, such as no hue shifts of the normal colors (i.e. in HDR images, most of the colors lie well below the gamut top, since those colors typically codify ultrabright colors like lamp colors, which oftentimes are colorless white, or at least not annoying if they are desaturating).
- the problem of above-gamut color mapping still exists, as that exists with any conical-top color space (whether conical-base or cylindrical-base). It doesn’t seem to occur in color-cube processing like separate channel non-linear RGB mapping, at least in such a representation it is easy to avoid overflow, but as said in such representations color errors can come back due to changed proportionalities of the color components.
- any luminance mapping function e.g. the function shape desired and created by a human grader
- the input luminance L will correspond to the input color components, e.g. the linear R,G,B. Multiplying those with the gL factor which in the example equals 2.0, will yield the correct output color components, which also have the correct desired output luminance.
- WO2017/157977 also teaches aspects of the present applicant’s preferable approach to HDR video luminance re-grading, and in particular some specifics on how to treat ultradeep black colors. But in common with the present discussion, it teaches how one can advantageously define luminance mapping functions, which can then be applied as a common multiplication of a corresponding g-factor by the three color components of a pixel (linear or non-linear), e.g. typically YCbCr.
- the color mapping problem near the color gamut top (of a display typically though not exclusively) is a nasty problem, which may easily introduce e.g. hue errors (e.g. a color becoming more greenish), which is why the present application teaches a new method of such color processing suitable for the newly emerged field of high dynamic range image handling and the corresponding derivation of images of different dynamic range (which may be assumed for simplicity to be determined primarily by the peak brightness PB_C), which in particular comprises a luminance processor (501) arranged to calculate an output luminance of a pixel of an output image (Im LDR; Im3000nit) having a second luminance dynamic range characterized by a second peak brightness (PB LDR; PB MDR) from an input luminance (L) of a spatially collocated pixel of an input image (MAST HDR) having a first luminance dynamic range characterized by a first peak brightness (PB HDR), characterized in that the luminance processor comprises:
- an overflow calculator (602) arranged to calculate an overflow measure (T) indicating how far above an upper gamut boundary at the chromaticity of the input color the intermediate output luminance is, which intermediate output luminance results from applying the multiplication factor (gL) to the input color;
- a gain factor modification unit (603) arranged to determine a lower alternative gain factor (Fl(gL)) in case the overflow measure is larger than a threshold (G), and arranged to keep the original gain factor otherwise, and arranged to output one of those as a final gain factor (gF); and a multiplier (530) to multiply the input color (R’G’B’ nrm) by the final gain factor (gF) to obtain an output color (R’G’B’ HDR) having the output luminance.
- Fl(gL) lower alternative gain factor
- G threshold
- a multiplier 530
- the output image may typically be of a lesser dynamic range (i.e. a lower PB_C value), though not exclusively because there are scenarios were the top of the gamut problem (hence its solution) exists also in dynamic range upgrading, and in any case one can apply the processing (e.g. same IC) to both situations, because as a protective strategy it will not kick in if not needed (the unproblematic colors are just processed as specified by the content-creation side derived color mapping functions F_ct, or in general the color mapping functions as derived in any manner, e.g. by the receiver itself based on image analysis.
- PB_C value a lower dynamic range
- the gain calculation unit determines a multiplicative gain factor (e.g. gL or a factor related to it), because the mechanism typically works by similarly luminance-scaling the three color components (which naturally are the linear red, green and blue color components for additive color reproducing systems like a television; or power functions thereof, like Y’CbCr which can be calculated based on square roots of the linear RGB components, which is a quite good approximation of the legacy Rec. 709 video OETF).
- a multiplicative gain factor e.g. gL or a factor related to it
- overflow measures can be defined to apply the same technical principles of the invention (correct where and to the extent needed), some of which need not use V (like e.g. via a table containing upper gamut luminances for each chromaticity and calculating a distance equation), especially applying the gL to the V value by multiplying the two is an elegant manner to embody the overflow measure.
- V_out F_Lt(V_in)
- the most basic variants may also want to clip some of the brightest colors to a color on the upper gamut boundary, but typically guaranteed with a chromaticity (or at least hue) which is the same as that of the input color.
- what is in the dashed rectangle on the bottom-right of Fig. 6 can be seen as some protection mechanism. Whether it actually is a protection mechanism, in the sense that it produces corrected g-factors from initial g-factors depend on the embodiment type.
- the automaton or human grader at the content creation side relaxedly determines some HDR-to-SDR luminance mapping function (which behaves appropriately for most of the image colors, e.g. it gives a nicely correctly bright appearance of the darker colors of the current scene images, and also for the desaturated colors near the achromatic axis), and relies that the mechanism will sufficiently solve the problems for the (few) problematic colors, e.g. some bright reddish and orangeish sunset sky colors.
- Such mechanism still falls apart into two further sub-categories, namely one in which the encoder determines reasonable values for the content itself (or even has prefixed values, which are well-working in general on most critical color scenarios, in the sense that this reduces the clipping error severity corresponding to doing nothing), and a second subcategory where the content creation side itself determines an optimal strategy.
- So simple embodiments can use a very simple variant, having e.g. a fixed G threshold value, say 0.75, and as an alternative lower gain allocation linearly distribute the luminances between G (below 1 typically) and e.g. 1.5 (e.g.
- the e.g. human grader can specify a couple of more parameters defining the mapping in the upper areas of the color gamut (the desideratum typically being to leave the re-grading in the lower parts of the output gamut alone, i.e. as it was specified by the content creator in the FLM function).
- the G threshold in fact serves as an optimizable or at least reasonable determination of a point in the upper region of the output gamut where the corrective action to the original re-grading should best take place.
- the encoder can also convert all of that into a set of final color processing functions (or even the g-factors corresponding therewith) to apply at the receiving side. This can be done in particular if the content-creation side co-communicates a function to map the colors in the upper gamut areas (typically“differentially” based on the normal uncorrected behavior).
- the gain factor modification unit does the test on whether to apply the“standard” rough luminance mapping, or the more advanced one, exactly as specified by the content creator in his function FADAP (and the reader understands that the receiving side, e.g. a TV, can even do some slight variations of its own on this specification, but for simplicity of teaching we will assume it just follows the re-grading wisdom of the creation side as communicated in the various upper gamut area luminance or in general color mapping parameters).
- the overflow calculator (602) calculates an overflow measure T, which indicates how critical the situation is, i.e. how close to the gamut boundary hence overflow a mapped color (i.e. after applying the luminance mapping as its g-factor) is, or especially interesting: how far above the gamut top the mapped color is, ergo, how seriously a correction is needed (because as said, the correction may consist merely of darkening, but that may not be the best choice for all different types of HDR image, especially if much darkening is needed, and as will be shown below the embodiments can also decide to do the correction in a different more advanced manner, e.g. by determining an optimal amount of color desaturation in addition to some, lesser amount of darkening).
- overflow measures below actual overflow are useful in embodiments which need to make room for overflowed colors by also re-grading some adjacent colors which by themselves are not really overflowing, and that is particularly interesting in scenarios which need invertible color processing, like mode 2 encoding, which encodes the HDR images actually as corresponding re-graded SDR images (ergo, both the images must contain sufficient detail to be mappable to HDR images of sufficient quality, by functions which by themselves must be good too).
- the luminance processor (501) comprises a data reception means (689) arranged to receive the threshold (G) from the creator of the content over a network (690).
- Other embodiments of the luminance processor could by themselves determine a threshold, e.g. in a HDR image receiver, e.g. by analysis of the properties of that image (e.g. by looking what type of HDR effect there is, like how many pixels, the kind of structure in it e.g. with a texture characterizer, etc.).
- the creation side of the content can dictate an optimal value of G, for an entire movie, a shot of N successive images of the same scene, or even per single time moment image. Then not only a more complex image analysis can be employed at the creation side, but also a human grader can specify his own best working G value, e.g. with the UI as shown in Fig.
- the luminance processor (501) comprises a data reception means (689) arranged to receive a function (FADAP) to determine the alternative gain factor from the creator of the content over a network (690).
- FADAP function
- the luminance processor (501) comprises a data reception means (689) arranged to receive a function (FADAP) to determine the alternative gain factor from the creator of the content over a network (690).
- FADAP function
- the re-dermination function could be so shaped that it tries to keep a higher luminance contrast slope at least around the luminances of those text characters.
- the human grader (or even an automaton) can e.g.
- the luminance processor (501) comprises a data reception means (689) arranged to receive from the creator of the content over a network (690) a clipping parameter (Vmx) specifying above which hue-preserving color clipping is allowed, the clipping parameter being defined as a maximum of a red, green and blue color component.
- Vmx a clipping parameter specifying above which hue-preserving color clipping is allowed
- the clipping parameter being defined as a maximum of a red, green and blue color component.
- G the gamut top value
- this can mean that several colors which are different initially in the input image (say typically the HDR image) are mapped to the same color in the output image of lower dynamic range (typically). That can be quite acceptable if the only object which violates the in-gamut condition is e.g. a colorful TL tube, because the differences in luminance are probably not that semantically meaningful for following the movie or video story anyway (in particular if this is just some decor lamp in the background, and the action is happening somewhere else).
- Vmx parameter allows one to specify that there can still be a little bit of clipping also, even when“protecting” most of the cloud structure in the lower dynamic range image.
- a reversible image handling method like a mode 2 coding-based
- the Vmx value should typically be so that only a couple of pixels are clipped loosing differentiation possibility (e.g. the inside of a lamp can be given all the same value 1023 in the SDR image, and this would still allow a HDR reconstruction which, although mathematically not exactly identical with the master HDR image at the creation side, visually gives a close enough approximation).
- the luminance processor (501) as claimed in one of the above claims comprising a partial mapping calculator (903) arranged to determine a first fraction of correction for multiplication by the (gL), and arranged to determine a second fraction of correction for determining a saturation multiplier (S) for driving a color saturation calculation.
- a distance must be covered from the above-gamut original re-graded color as ideally intended, towards the gamut boundary. Looking at fig. 8, the skilled person can learn and understand that one can define a fraction of such distance (e.g. half of it), and that one could design an alternative g-factor which maps to half such distance, i.e.
- the needed attenuation A i.e. the corresponding multiplication factor for gL*V to bring it sufficiently down to be inside the gamut or on its boundary
- Arho power(A; rho)
- Arem power(A; 1- rho) [Eqs. 2].
- Such a specification can be determined based on some worst case color, and the other colors are then treated similarly.
- the luminance processor (501) comprises a data reception means (689) arranged to receive the fraction value (rho) of the above equations from the creator of the content over a network (690), rather than that a receiver has to determine an optimal rho value itself, because often the optimal value of a technical processing on images may be artistic in nature, i.e. it could even be a matter of taste whether for a first beautiful sunset its human creator accepts more clipping than for a second (some graders just want punchy colors for their look, and others want more soft, detailed patterns).
- the technical mirror-claim of what a receiving side luminance processor can or should ultimately do to obtain the lower dynamic range image colors, in case the algorithm parameters are received from the creation side, is a system which much make those parameters, e.g. the G threshold, or the FADAP function, etc. Any or all of such parameters could be set by a human, or by an automaton (e.g. the automaton suggesting a good setting, to be improved by the human if needed, or the human just specifying any value without there being an image analyzing automaton being present, etc.).
- the automaton can identify such properties as coherence of regions (e.g.
- a high dynamic range video encoder to encode typically the needed parameters in metadata to be sent or obtainable together with the images representing the HDR video may comprise:
- an encoder for encoding the input image as an output image and for encoding at least one luminance mapping function (F_Lt); characterized in that the encoder comprises an image evaluation processor (1210) arranged to analyze the color properties of an image of the video, to determine a threshold (G) to be applied by a luminance processor as claimed in claiml , and the encoder being arranged to output as metadata this threshold (G).
- a luminance processor of the above (and below) described types may be comprised e.g. to aid the human in seeing what his choices will look like at the decoder side, but may not necessarily be comprised in automatic encoders (although it often may, because the automatic image analysis may then be run on the one or more images resulting from one or more candidate selections of the parameters, e.g. an optimal G threshold, e.g. by comparing some image quality metric like contrasts, texture metrics, etc. in the input and tested candidate output image).
- a high dynamic range video encoder (1201) may comprise:
- an encoder for encoding the input image as an output image and at least one luminance mapping function (F_Lt); characterized in that the encoder comprises an image evaluation processor (1210) arranged to analyse the color properties of an image of the video, to determine at least one of the parameters being: a) the threshold (G) according to the examples given for the use of an optimal threshold (where to leave the colors as is, and where to best start applying the mitigation algorithm with its corresponding color non-idealities), the function (FADAP), the clipping parameter (Vmx), and the fraction value (rho) indicating the split and the amount of correction to be handled by dimming versus desaturation, and the encoder being arranged to output as metadata such at least one of the parameters, so that any receiver’s luminance processor can apply the corresponding re-grading.
- the encoder comprises an image evaluation processor (1210) arranged to analyse the color properties of an image of the video, to determine at least one of the parameters being: a) the threshold (G) according to the examples given for the use of
- the simpler systems will have an automaton to determine the at least one parameter though, because in some scenarios one does not have the man-power to do this, or at least does not want to bother the production crew with it.
- Such an automaton can do image analysis, e.g. detect whether the area of brightest colors (high L and especially high V check) has significant spatial luminance variation structure, e.g. by employing texture analyzers.
- image analysis e.g. detect whether the area of brightest colors (high L and especially high V check) has significant spatial luminance variation structure, e.g. by employing texture analyzers.
- several pragmatic embodiments can work with an image deterioration quality evaluation.
- this creation side has a high dynamic range video encoding system comprising a high dynamic range video encoder as described, which is connected to a user interface means (1203) which allows a human color grader (1204) to specify at least one of the parameters (G, rho, or the parameters specifying the more complex g-factor re-determination function to us etc.) as output of the image evaluation processor (1210), wherein the high dynamic range video encoder comprises a luminance processor (501) arranged to calculate an output image (Im LDR; Im3000nit) which can be inspected on a connected display (1220).
- a high dynamic range video encoder comprises a luminance processor (501) arranged to calculate an output image (Im LDR; Im3000nit) which can be inspected on a connected display (1220).
- the skilled person understands that this can be embodied in various manners, e.g. in a semi-automatic determination it can be advantageous if the image evaluation processor already comes with a proposal for rho, G, etc., but that the human can fine-tune those, or in some operations he may even want to completely bypass the evaluation and set values on the output channels himself, etc.
- the luminance processor will in these cases be inside the encoder to allow the human to see what the action will actually do, at the receiving side, and correct to other parameters if those work better on the present scene.
- the display 1220 may be a reference display of high PB_D, e.g.
- a high dynamic range video decoder (1300) comprising:
- a luminance processor (501) according to any one of the claims 1 to 7, arranged to calculate an output image, by using the luminance mapping function (FLM) and the threshold (G) to change the luminances of pixels of the input image to produce an output image; and
- a high dynamic range video decoder (1300) comprising a luminance processor (501) according to any of the taught luminance processor embodiments;
- a method of luminance processing to calculate an output luminance of a pixel of an output image (Im LDR; Im3000nit) having a second luminance dynamic range characterized by a second peak brightness (PB LDR; PB MDR) from an input luminance of a spatially collocated pixel of an input image (MAST HDR) having a first luminance dynamic range characterized by a first peak brightness (PB HDR), comprising:
- a multiplication factor being a function of the input luminance and a luminance mapping function (FLM); calculating a strength value (V) which is the maximal one of the three red, green and blue color components of the color of the pixel of the input image, wherein those components are either linear red, green and blue color components or a power of those linear red, green and blue color components;
- a method of luminance processing to calculate an output luminance of a pixel of an output image (Im LDR; Im3000nit) having a second luminance dynamic range characterized by a second peak brightness (PB LDR; PB MDR) from an input luminance of a spatially collocated pixel of an input image (MAST HDR) having a first luminance dynamic range characterized by a first peak brightness (PB HDR), comprising:
- a method of luminance processing comprising receiving from the creator of the content over any connected network at least one of the taught parameters being: a) the threshold (G) above which the re-determination processing starts, and where the re- determined colors must squeeze into the output gamut, b) the parametric codification of the shape of the specific function (FADAP) desired for doing the g-factor determination (or any equivalent thereof, such as a function of the strength value V), c) the clipping parameter (Vmx) which allows still some amount of clipping for the most violating colors, i.e.
- a HDR image signal comprising:
- At least one luminance mapping function defining how to calculate from a luminance of a pixel color an output luminance, and at least one of the parameters being: a) the threshold (G), b) the clipping parameter (Vmx) c) the fraction value (rho);
- a HDR image signal comprising:
- At least one luminance mapping function defining how to calculate from a luminance of a pixel color an output luminance, and further comprising the function
- Dashes can also be used for indicating that elements, which are explained to be essential, but hidden in the interior of an object, or for intangible things such as e.g. selections of objects/regions (and how they may be shown on a display).
- Fig. 1 schematically illustrates a number of typical color transformations which occur when one optimally maps a high dynamic range image to a corresponding optimally color graded and similarly looking (as similar as desired and feasible given the differences in the first and second dynamic ranges DR_l resp. DR_2) lower dynamic range image, e.g. a standard dynamic range image of 100 nit peak brightness, which in case of reversibility (mode 2) would also correspond to a mapping of an SDR image as received which actually encodes the HDR scene, to a reconstructed HDR image of that scene;
- mode 2 a standard dynamic range image of 100 nit peak brightness
- Fig. 2 schematically illustrates an satellite-view example of a technology to encode high dynamic range images, i.e. images capable of having luminances of at least 700 nit (i.e. at least 7x the PB_C of the SDR image) typically or more (typically 1000 nit or more), which applicant recently developed, which can actually communicates the HDR image(s) as an SDR image plus metadata encoding color transformation functions comprising at least an appropriate determined luminance transformation for the pixel colors, to be used by the decoder to convert the received SDR image(s) into HDR images(s) which are a faithful reconstruction of the original master HDR image(s) created at the image creation side;
- high dynamic range images i.e. images capable of having luminances of at least 700 nit (i.e. at least 7x the PB_C of the SDR image) typically or more (typically 1000 nit or more), which applicant recently developed, which can actually communicates the HDR image(s) as an SDR image plus metadata en
- Fig. 3 shows how a mere luminance change (i.e. without unwanted
- chromaticity changes of the dynamic range transformations occurring in such HDR decoding (or encoding) and handling typically occurs, e.g. when determining an image of lower dynamic range than the input image, as shown in a theoretical color space, with a chromaticity plane and orthogonal luminance L axis;
- Fig. 4 schematically elucidates how colors and color processing behaves in another kind of color space (with another geometry), which space is the typical color encoding space of video: YCbCr (where the Y can in principle be the linear luminance L, or the non-linear gamma 2.0 luma Y’, or even some other luma defined with another OETF, like PQ-based luma Y”).
- Fig. 5 shows a more detailed example of how applicant typically likes to perform the color transformation of unit 202 or 208 of Fig. 2;
- Fig. 6 shows a generic top-level elucidation of a primary aspect which the present invention adds to the luminance processing of systems like e.g. the one shown in Figs. 2 and 5;
- Fig. 7 shows part of the behavior of such a system, and in particular what Fig.
- Fig. 8 shows the behavior of an advanced embodiment, which solves the problem of corrective mapping near the top of the color gamut of the output color space partially by means of a desaturation operation
- Fig. 9 generically and schematically shows an example of a luminance processor being part of a color processor also having a saturation processor
- Fig. 10 schematically shows some examples for determining a corrective color mapping strategy for colors in an upper part of the color gamut, and the corresponding functions based on a strength value V being defined as the maximum one of the red, green and blue component of a color, which can according to the present teachings be formulated as a corresponding gain factor gF, in particular which may be a resultant gain factor which is a deviation of an initial gain factor, for colors near the top of the gamut only;
- Fig. 11 shows a user interface which allows a human grader at a content creation side to specify a couple of simple but powerful parameters approximately guiding or exactly specifying the luminance and in general color processing of the bright near gamut top colors by a receiving side luminance processor of any of the variants according to the present invention’s teachings;
- Fig. 12 schematically shows an example of possible automatic, semiautomatic, or manual encoders which yield the parameters needed for the decoding side luminance processor variations according to the taught embodiments.
- Fig. 13 elucidates a mode 2 decoder according to the present invention principles corresponding with the encoder of Fig. 9.
- the luminance processor of a video decoder gets YCbCr input, ergo, the natural derived color components from this are non-linear R’G’B’.
- One way to derive the constant-luminance-luma is to have the color space convertor 502 first calculate the linear RGB components by applying the appropriate EOTF (i.e.
- the components numbered in the 500s are similar as in Fig. 5, i.e. inter alia they do the“normal” color brightening, i.e. as specified in the luminance processing function FLM, and with the upper gamut area handling mechanism of the g-factor determination not on yet.
- the luminance processor of Fig. 6 is in a HDR decoder, which gets 5000 nit PB_C HDR encoded with YCbCr pixel colors as input (if they are encoded PQ based then the converter does the correct mathematics to convert to luminance, and linear RGB in the example), and derives e.g. a 900 nit MDR image and its luminances.
- mapping FLM as determined by the creation side is supposed to be applied to the luminance L of the pixel color (or a color processing of equivalent nature is actually performed like multiplying the linear RGB components with the same luminance-changing g-factor gL), it is interesting to apply it to the strength value V, because then with each color chromaticity one can see whether it will map above the gamut boundary.
- a luminance mapping is supposed to map the colors based on their luminance, irrespective of their chromaticities, hence we can check it for achromatic colors on the luminance axis.
- An average luminance Col in of the HDR input image which becomes brightened to Col out (e.g. to create an SDR or MDR image) because all colors need to brighten, especially the darker ones to still be able to reasonable see what is happening there in the movie in the lower dynamic range renderings, but those brightened colors will push all more luminous colors upwards also, because of the need to keep the luminance relationship in the two gradings, i.e. the output image versus the input image.
- G out, B_out) gL*V_in.
- gain factor modification unit 603 uses this value in a test to modify the initial gain value derived from the grading function FLM as locally determined by the receiver, or received from the content creation side typically together with the actual received images according to some image metadata coding formalism.
- the threshold G equals 1.0 (e.g. hard fixed in the luminance processor).
- a function F 1 (gL) has to be applied which guarantees that the mapped color (and simultaneously its V- value) maps inside the gamut, at least for most colors (except potentially if a Vmx value was determined, those few colors which are still allowed to clip).
- a simple function which can be determined by the decoder may be the following for each possible out of gamut mapping gL(color)*V(color):
- This threshold value can again be determined by the receiving side luminance processor, or, advantageously received and communicated to the gain factor modification unit 603 by data reception means (689) arranged to receive the threshold (G) from the creator of the content over a network (690), which the skilled reader can understand to be any present or future image or data delivery system, e.g. a satellite TV channel, the internet, or for prefixed packaged storage the G values for consecutive video images may even be stored e.g. on a blu-ray disk and accessed via a BD reader, etc.
- a network which the skilled reader can understand to be any present or future image or data delivery system, e.g. a satellite TV channel, the internet, or for prefixed packaged storage the G values for consecutive video images may even be stored e.g. on a blu-ray disk and accessed via a BD reader, etc.
- Fig. 10A we show an example where the threshold G is set to 0.9, and a linear mapping up to Vmx. Actually, there may be a couple of colors (maybe only a fews tens of pixels) that have a gL*V value which becomes higher than Vmx up to the highest in the image, or run of successive images VmaxSCN, but those can be hard clipped to a color on the gamut top boundary with the same chromaticity as the HDR input color.
- T in is the V value of the mapped color with the initial gL factor, and we should have a final mapping with gF which yields T out values up to 1.0, corresponding with the gamut boundary. Below 0.9, the gain factor is unchanged, hence the T out value will also be identical to the T in value (SEGPSS).
- the remapping between G and Vmx can be formulated in many ways, and can be as simple as a linear segment (SEGADPT).
- the attenuation factor A can be easily calculated from a representation in this axis system, e.g. if the color 2.5 has to map to 1.0, we need to divide gL by 2.5, etc.
- Fig.10B shows the situation in which part of the above gamut issue is solved by desaturation.
- the colors initially mapping to Vmx can map to y.x>l .0, e.g. 1.9 (probably not too far above the gamut boundary to not need too much desaturation), because that remainder of overflow is shown in the saturation direction.
- This is shown on the color gamut plot of Fig. 8.
- the total attenuation A would bring a mapped color to the gamut boundary.
- the rho parameter as above one can map to a position in between, and then shift horizontally to ColOut by desaturating.
- the multiplicative parameter needed in the desaturation can be calculated as follows:
- FIG. 9 An example of a processing architecture (and advanced luminance processor embodiment connected to a saturation unit) in an encoder able to implement such a correction strategy is shown in Fig. 9.
- the decoder should invert the order (so if the encoder first does luminance mapping and then desaturation, the reversed decoder will first do the corresponding resaturation and then the luminance mapping). Note that if one knows Vinterm and Y, one knows the S (whether for desaturation or resaturation) if one knows Arem, which is e.g. communicated from the creation side by means of the rho parameter.
- the attenunation A(T) at the decoder side can be calculated as:
- Partial mapping calculator 903 now determines an attenuation factor Arho to multiply by gL in multiplier 902 to obtain the appropriate final gF for partial luminance dimming, performed by multiplier 910 on the RGB trio together with the luminance which must become the intermediate luminance Li for the later desaturation step by desaturator 911.
- Saturation factor determination unit 901 can determine the needed saturation factor S(V,Y,Arem) e.g. according to Eq. 5, for saturation processor 911 to apply it, in a luminance preserving desaturation according to the equations 7:
- Those output color components are then the correct color components for the e.g. SDR color (or MDR color) derived from the HDR input image colors.
- both encoder and decoder will transform colors in the same downgrading direction, so there will be NO reversal of the order of color processing in the decoder (one can imagine the encoder to in this case only do the transformation for checking the later decoder behavior, with selected parameters choices).
- the decoder recreates a close approximation of the master HDR images by upgrading, i.e. in the opposite direction.
- Fig. 11 shows an example of a user interface which can be used for a human grader to create the parameters, which can be as simple as just three values G, rho, and Vmx.
- Rho can e.g. be set by a slider, e.g. the automaton of a semi-automatic method determined that a setting 0.25 was optimal, but the user likes 0.2 or 0.3 better.
- There may also be a view 1110 of the image being processed e.g. a representative image of the HDR scene imaged in a shot of successive video images, on which there may be automatically generated indicators 1111 to quickly grab the grader’s attention.
- the automaton has calculated that in this region (the sunlit clouds) a significant contrast reduction of the texture is happening (maybe even hard clipping), and the user interface can e.g. show a blinking red boundary around that region.
- Fig. 12 shows an example of an encoding system with encoder 1201 (which can both encode HDR images as according to any previously described mode, but also determine an output the present new parameters rho, G, Vmx, or a function to re-determine at a receiving side the g-factors), on which the content creating color grader 1204 can do his grading work, at least the determination of one parameter according to the present invention, e.g. G, or rho. He can check on display 1220 what is happening, because the luminance processor 501 applies the processing (i.e. directly downgrading in mode 1, and typically the whole encoding+decoding chain comprising reversed upgrading in mode 2) to show the result of the grader’s choice of e.g.
- the processing i.e. directly downgrading in mode 1, and typically the whole encoding+decoding chain comprising reversed upgrading in mode 2
- rho via the user interface means 1203, which may typically be a grading panel, and software allocating e.g. the change of rho to a trackball.
- the images come from any image storage 1202, e.g. a hard disk on a server, etc., or in some cases even a real-time streaming.
- Image evaluation processor 1210 may do all kinds of image analysis to come to proposals of rho, G etc., and in automatic embodiments this will be the only unit determining those parameters.
- a high dynamic range video encoder (1201) can use the luminance processor to help the human color grader to determine suitable values for the various parameters controlling any embodiment of his luminance changing algorithm (e.g. when comprised in a decoder receiving those parameters as control parameters in metadata over some data or video connection).
- the HDR video encoder may comprise:
- an encoder for encoding the input image as an output image and at least one luminance mapping function (F_Lt);
- an image evaluation processor (1210) arranged to analyse the color properties of an image of the video, to determine at least one of the parameters being: a) the threshold (G) indicating above which some alternative final gain gF should be used, and below which the original gain corresponding to the luminance mapping function FLM suitable for dynamic range re-grading of the present image given its object or pixel luminance distribution specifics, b) the function (FADAP) usable to determine an alternative gain for the brighter colors of the image to be processed, c) the clipping parameter (Vmx) indicating from which input luminance (after luminance regrading) clipping is allowed, but chromaticity-preserving clipping (in case such effect is desired) and d) the fraction value (rho) determining the split of the interval of correction towards the gamut to be handled by darkening versus desaturation, e.g.
- the human color grader can use the UI to draw a shape of the upper part of the FADAP function to use to determine the gF values for the brightest colors, so that they e.g. don’t darken too much at least some image colors or don’t reduce at least some luminances which some pixels in some parts of the clouds have in manner which deteriorates the visible texture of such cloud too much etc.
- an automaton may judge to apply some clipping, based on calculating e.g.
- a method of luminance processing may comprise receiving from the creator of the content over any connected network (network clearly being usable in the broadest sense) at least one of the parameters being: a) the threshold (G), the function (FADAP), the clipping parameter (Vmx) and the fraction value (rho) separate or in any combination of parameters depending on the needs of the specific luminance changing embodiment, and apply such at least one parameter in its luminance calculation.
- the algorithmic components disclosed in this text may (entirely or in part) be realized in practice as hardware (e.g. parts of an application specific IC) or as software running on a special digital signal processor, or a generic processor, etc.
- the computer program product denotation should be understood to encompass any physical realization of a collection of commands enabling a generic or special purpose processor, after a series of loading steps (which may include intermediate conversion steps, such as translation to an intermediate language, and a final processor language) to enter the commands into the processor, and to execute any of the characteristic functions of an invention.
- the computer program product may be realized as data on a carrier such as e.g. a disk or tape, data present in a memory, data travelling via a network connection -wired or wireless- , or program code on paper.
- characteristic data required for the program may also be embodied as a computer program product.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Processing Of Color Television Signals (AREA)
- Image Processing (AREA)
- Picture Signal Circuits (AREA)
Abstract
Description
Claims
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP17206169.9A EP3496028A1 (en) | 2017-12-08 | 2017-12-08 | Improved high dynamic range video color remapping |
PCT/EP2018/083856 WO2019110752A1 (en) | 2017-12-08 | 2018-12-06 | Improved high dynamic range video color remapping |
Publications (3)
Publication Number | Publication Date |
---|---|
EP3721405A1 true EP3721405A1 (en) | 2020-10-14 |
EP3721405B1 EP3721405B1 (en) | 2024-03-06 |
EP3721405C0 EP3721405C0 (en) | 2024-03-06 |
Family
ID=60629574
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP17206169.9A Withdrawn EP3496028A1 (en) | 2017-12-08 | 2017-12-08 | Improved high dynamic range video color remapping |
EP18811314.6A Active EP3721405B1 (en) | 2017-12-08 | 2018-12-06 | Improved high dynamic range video color remapping |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP17206169.9A Withdrawn EP3496028A1 (en) | 2017-12-08 | 2017-12-08 | Improved high dynamic range video color remapping |
Country Status (8)
Country | Link |
---|---|
US (2) | US11170478B2 (en) |
EP (2) | EP3496028A1 (en) |
JP (1) | JP7381463B2 (en) |
KR (1) | KR102614452B1 (en) |
CN (1) | CN111699507B (en) |
BR (1) | BR112020011172A2 (en) |
MX (1) | MX2020005813A (en) |
WO (1) | WO2019110752A1 (en) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10645358B2 (en) | 2018-02-20 | 2020-05-05 | Gopro, Inc. | Saturation management for luminance gains in image processing |
US10970828B2 (en) * | 2018-12-21 | 2021-04-06 | Ricoh Company, Ltd. | Image processing apparatus, image processing system, image processing method, and recording medium |
US11232607B2 (en) * | 2020-01-24 | 2022-01-25 | Adobe Inc. | Adding color to digital images |
EP3873096A1 (en) | 2020-02-25 | 2021-09-01 | Koninklijke Philips N.V. | Improved hdr color processing for saturated colors |
US11651472B2 (en) | 2020-10-16 | 2023-05-16 | Electronics And Telecommunications Research Institute | Method for processing immersive video and method for producing immersive video |
CN113271449B (en) * | 2021-07-21 | 2021-09-28 | 北京小鸟科技股份有限公司 | Conversion system, method and equipment for multiple HDR videos |
CN116029914B (en) * | 2022-07-27 | 2023-10-20 | 荣耀终端有限公司 | Image processing method and electronic equipment |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1265338C (en) * | 2001-11-21 | 2006-07-19 | 佳能株式会社 | Display device, image signal controller and driving controller thereof |
US7773158B2 (en) * | 2005-10-12 | 2010-08-10 | Panasonic Corporation | Visual processing device, display device, and integrated circuit |
TWI314424B (en) * | 2006-06-23 | 2009-09-01 | Marketech Int Corp | System and method for image signal contrast adjustment and overflow compensation |
US9417479B2 (en) * | 2011-05-13 | 2016-08-16 | Samsung Display Co., Ltd. | Method for reducing simultaneous contrast error |
US8896641B2 (en) * | 2011-06-01 | 2014-11-25 | Lg Display Co., Ltd. | Organic light emitting diode display device and method of driving the same |
JP5966658B2 (en) * | 2012-06-22 | 2016-08-10 | ソニー株式会社 | Display device, image processing device, and display method |
US10075728B2 (en) * | 2012-10-01 | 2018-09-11 | Inria Institut National De Recherche En Informatique Et En Automatique | Method and device for motion information prediction refinement |
BR112014027815B1 (en) | 2012-10-08 | 2022-03-15 | Koninklijke Philips N.V. | Image color processing apparatus, image encoder, image decoder and image color processing method |
EP3022895B1 (en) | 2013-07-18 | 2019-03-13 | Koninklijke Philips N.V. | Methods and apparatuses for creating code mapping functions for encoding an hdr image, and methods and apparatuses for use of such encoded images |
CN108182672A (en) * | 2014-05-28 | 2018-06-19 | 皇家飞利浦有限公司 | Method and apparatus for the method and apparatus encoded to HDR image and for using such coded image |
TR201808347T4 (en) * | 2014-10-10 | 2018-07-23 | Koninklijke Philips Nv | Specification of saturation for dynamic range mappings. |
MX2017007451A (en) * | 2014-12-11 | 2017-08-10 | Koninklijke Philips Nv | Optimizing high dynamic range images for particular displays. |
TWI764870B (en) * | 2015-07-28 | 2022-05-21 | 法商內數位麥德遜專利控股有限公司 | Video signal processing device and method |
MX364488B (en) | 2015-12-17 | 2019-04-29 | Koninklijke Philips Nv | Dynamic range coding for images and video. |
EP3220349A1 (en) * | 2016-03-16 | 2017-09-20 | Thomson Licensing | Methods, apparatus, and systems for extended high dynamic range ("hdr") hdr to hdr tone mapping |
WO2017157977A1 (en) * | 2016-03-18 | 2017-09-21 | Koninklijke Philips N.V. | Encoding and decoding hdr videos |
JP6637396B2 (en) * | 2016-08-31 | 2020-01-29 | 株式会社ジャパンディスプレイ | Display device, electronic device, and method of driving display device |
EP3493150A1 (en) * | 2017-11-30 | 2019-06-05 | InterDigital VC Holdings, Inc. | Tone mapping adaptation for saturation control |
-
2017
- 2017-12-08 EP EP17206169.9A patent/EP3496028A1/en not_active Withdrawn
-
2018
- 2018-12-06 KR KR1020207019674A patent/KR102614452B1/en active IP Right Grant
- 2018-12-06 JP JP2020530505A patent/JP7381463B2/en active Active
- 2018-12-06 US US16/770,133 patent/US11170478B2/en active Active
- 2018-12-06 CN CN201880088920.XA patent/CN111699507B/en active Active
- 2018-12-06 BR BR112020011172-4A patent/BR112020011172A2/en unknown
- 2018-12-06 EP EP18811314.6A patent/EP3721405B1/en active Active
- 2018-12-06 MX MX2020005813A patent/MX2020005813A/en unknown
- 2018-12-06 WO PCT/EP2018/083856 patent/WO2019110752A1/en unknown
-
2021
- 2021-10-27 US US17/511,718 patent/US12125183B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2021506001A (en) | 2021-02-18 |
EP3721405B1 (en) | 2024-03-06 |
CN111699507B (en) | 2024-06-18 |
WO2019110752A1 (en) | 2019-06-13 |
KR102614452B1 (en) | 2023-12-14 |
EP3721405C0 (en) | 2024-03-06 |
US12125183B2 (en) | 2024-10-22 |
CN111699507A (en) | 2020-09-22 |
US11170478B2 (en) | 2021-11-09 |
EP3496028A1 (en) | 2019-06-12 |
BR112020011172A2 (en) | 2020-11-17 |
JP7381463B2 (en) | 2023-11-15 |
RU2020122004A (en) | 2022-01-10 |
US20220124293A1 (en) | 2022-04-21 |
KR20200097307A (en) | 2020-08-18 |
US20200357100A1 (en) | 2020-11-12 |
MX2020005813A (en) | 2020-08-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12125183B2 (en) | High dynamic range video color remapping | |
US11533516B2 (en) | Methods and apparatuses for encoding an HDR images, and methods and apparatuses for use of such encoded images | |
EP3381179B1 (en) | Handling multiple hdr image sources | |
US11451756B2 (en) | Gamut mapping for HDR (de)coding | |
US10504216B2 (en) | Luminance changing image processing with color constancy | |
US11741873B2 (en) | Adjustment of display optimization behaviour for HDR images | |
US20210266509A1 (en) | Hdr color processing for saturated colors | |
RU2782432C2 (en) | Improved repeated video color display with high dynamic range |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: UNKNOWN |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE |
|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
17P | Request for examination filed |
Effective date: 20200708 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
AX | Request for extension of the european patent |
Extension state: BA ME |
|
DAV | Request for validation of the european patent (deleted) | ||
DAX | Request for extension of the european patent (deleted) | ||
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: EXAMINATION IS IN PROGRESS |
|
17Q | First examination report despatched |
Effective date: 20210713 |
|
GRAP | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOSNIGR1 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: GRANT OF PATENT IS INTENDED |
|
INTG | Intention to grant announced |
Effective date: 20231010 |
|
GRAS | Grant fee paid |
Free format text: ORIGINAL CODE: EPIDOSNIGR3 |
|
GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE PATENT HAS BEEN GRANTED |
|
AK | Designated contracting states |
Kind code of ref document: B1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
REG | Reference to a national code |
Ref country code: GB Ref legal event code: FG4D |
|
REG | Reference to a national code |
Ref country code: CH Ref legal event code: EP |
|
REG | Reference to a national code |
Ref country code: IE Ref legal event code: FG4D |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R096 Ref document number: 602018066296 Country of ref document: DE |
|
U01 | Request for unitary effect filed |
Effective date: 20240306 |
|
U07 | Unitary effect registered |
Designated state(s): AT BE BG DE DK EE FI FR IT LT LU LV MT NL PT SE SI Effective date: 20240313 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: GR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20240607 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: HR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20240306 Ref country code: RS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20240606 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: RS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20240606 Ref country code: NO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20240606 Ref country code: HR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20240306 Ref country code: GR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20240607 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: IS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20240706 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SM Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20240306 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: CZ Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20240306 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: PL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20240306 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20240306 |