USRE47960E1 - Methods and devices of illuminant estimation referencing facial color features for automatic white balance - Google Patents

Methods and devices of illuminant estimation referencing facial color features for automatic white balance Download PDF

Info

Publication number
USRE47960E1
USRE47960E1 US15/466,867 US201715466867A USRE47960E US RE47960 E1 USRE47960 E1 US RE47960E1 US 201715466867 A US201715466867 A US 201715466867A US RE47960 E USRE47960 E US RE47960E
Authority
US
United States
Prior art keywords
color
user
facial
face
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active, expires
Application number
US15/466,867
Inventor
Xiaoning Huai
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.)
Real Imaging Technology Co Ltd
Original Assignee
Real Imaging Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Real Imaging Technology Co Ltd filed Critical Real Imaging Technology Co Ltd
Priority to US15/466,867 priority Critical patent/USRE47960E1/en
Assigned to REAL IMAGING TECHNOLOGY CO. LTD reassignment REAL IMAGING TECHNOLOGY CO. LTD ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: HUAI, XIAONING
Application granted granted Critical
Publication of USRE47960E1 publication Critical patent/USRE47960E1/en
Active legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/26Special purpose or proprietary protocols or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/90Dynamic range modification of images or parts thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/50Connection management for emergency connections
    • G06K9/00234
    • G06K9/4609
    • G06K9/4652
    • G06T5/002
    • G06T5/007
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/56Extraction of image or video features relating to colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • G06V40/162Detection; Localisation; Normalisation using pixel segmentation or colour matching
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B13/00Burglar, theft or intruder alarms
    • G08B13/18Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength
    • G08B13/189Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems
    • G08B13/194Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems using image scanning and comparing systems
    • G08B13/196Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems using image scanning and comparing systems using television cameras
    • G08B13/19617Surveillance camera constructional details
    • G08B13/19621Portable camera
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B25/00Alarm systems in which the location of the alarm condition is signalled to a central station, e.g. fire or police telegraphic systems
    • G08B25/006Alarm destination chosen according to type of event, e.g. in case of fire phone the fire service, in case of medical emergency phone the ambulance
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B25/00Alarm systems in which the location of the alarm condition is signalled to a central station, e.g. fire or police telegraphic systems
    • G08B25/01Alarm systems in which the location of the alarm condition is signalled to a central station, e.g. fire or police telegraphic systems characterised by the transmission medium
    • G08B25/016Personal emergency signalling and security systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • H04L67/125Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/10Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from different wavelengths
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/61Control of cameras or camera modules based on recognised objects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/61Control of cameras or camera modules based on recognised objects
    • H04N23/611Control of cameras or camera modules based on recognised objects where the recognised objects include parts of the human body
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/70Circuitry for compensating brightness variation in the scene
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/70Circuitry for compensating brightness variation in the scene
    • H04N23/71Circuitry for evaluating the brightness variation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/70Circuitry for compensating brightness variation in the scene
    • H04N23/74Circuitry for compensating brightness variation in the scene by influencing the scene brightness using illuminating means
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/80Camera processing pipelines; Components thereof
    • H04N23/84Camera processing pipelines; Components thereof for processing colour signals
    • H04N23/88Camera processing pipelines; Components thereof for processing colour signals for colour balance, e.g. white-balance circuits or colour temperature control
    • H04N5/232
    • H04N5/23219
    • H04N5/235
    • H04N5/2351
    • H04N5/2354
    • H04N9/045
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • H04N9/643Hue control means, e.g. flesh tone control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • H04N9/646Circuits for processing colour signals for image enhancement, e.g. vertical detail restoration, cross-colour elimination, contour correction, chrominance trapping filters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • H04N9/73Colour balance circuits, e.g. white balance circuits or colour temperature control
    • H04N9/735
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/90Services for handling of emergency or hazardous situations, e.g. earthquake and tsunami warning systems [ETWS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • G06T2207/30201Face
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B13/00Burglar, theft or intruder alarms
    • G08B13/18Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength
    • G08B13/189Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems
    • G08B13/194Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems using image scanning and comparing systems
    • G08B13/196Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems using image scanning and comparing systems using television cameras
    • G08B13/19654Details concerning communication with a camera
    • G08B13/19656Network used to communicate with a camera, e.g. WAN, LAN, Internet
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B15/00Identifying, scaring or incapacitating burglars, thieves or intruders, e.g. by explosives

Definitions

  • This invention involves color processing and control methods, systems, and devices of image and video media in electronic media devices.
  • Automatic white balance usually comprises steps of illuminant estimation and color gain adjustment followed by related color correction or enhancement.
  • illuminant estimation it is a well-known classical phenomenon in automatic white balance that what comes into the camera lens is a mixed emission from surfaces with unknown reflectance spectrum properties illuminated by unknown ambient light sources. It would be much easier for automatic white balance if there is a reference color surface in the scene with known color properties such as a gray chart used for on-site white balance by professional photographers. However, that approach is cumbersome and not applicable to ordinary users for daily usage.
  • the first intent of this disclosure is to provide an automatic white balance method for automatic white balance control in an electronic media device, comprising acquiring The Facial Color Features Set of a user or users and conducting automatic white balance illuminant estimation, gain adjustment and color enhancement based on the illuminant estimation results and the above acquired Facial Color Features Set of the user or users.
  • the second intent of this disclosure is to provide an electronic media device that incorporates the above method, with detailed description of its system architecture, components, and operations.
  • the third part of this disclosure is to provide a firmware or software based apparatus to realize the above said method.
  • FIG. 1 is an illustration of the front camera platforms
  • FIG. 2 is a block diagram of an example of image processing pipeline including the automatic white balance and related color processing units;
  • FIG. 3 is a block diagram of another example of image processing pipeline including the automatic white balance and related color processing units
  • FIG. 4 is a block diagram for post processing method
  • FIG. 5 is a block diagram for the Facial Color Features Acquisition Mode
  • FIG. 6 is a block diagram for the Automatic White Balance Adjustment Mode
  • FIG. 7 is a block diagram for Automatic White Balance with Machine Learning Mode
  • FIG. 8 is a segmentation of face into three parts: face skin, eye ball white, and teeth;
  • FIG. 9 is an illustration of the white surface locus and skin tone locus within a chromaticity coordinate system, the dotted line indicates possible expanding of the skin tone;
  • FIG. 10 is an illustration of a method to for illuminant estimation process, using C 3 to perform automatic white balance using one set of gain offsets unanimously to the entire image;
  • FIG. 11 illustrates a method using C 3 to perform distinctive automatic white balance gain adjustment s of facial parts and other background image to each respective standard reference target;
  • FIG. 12 illustrates a method using C 3 to perform distinctive automatic white balance gain adjustment s of facial parts and other background image taking user inputs as reference targets;
  • FIG. 13 illustrates a method to detect and process other naked skin area than face
  • FIG. 14 is an illustration of user-platform interactive process
  • FIG. 15 is an illustration of feedback learning automatic white balance improvement
  • FIG. 16 is an illustration of Facial Color Features used as complimentary vectors for face recognition.
  • C 1 , C 2 , C 3 Images are segmented to be comprised of facial parts (i.e. face area and its components) and background part (i.e. the image part that excludes the face area), and C 1 , C 2 , C 3 denote the color profiles of the illuminant estimation results with regard to background part, facial parts and the entire image respectively.
  • the color profile of an estimated illuminant is represented by the coordinates in a color space or chromaticity coordinate system of a white point or a specific color surface.
  • the algorithms used for illuminant estimation could be A, B, C methods described in the Background Section or other methods.
  • Facial Color Features denote the acquired results of color profiles of three components of a segmented human face: the facial skin tone area, the eyeball white and the teeth.
  • Facial Color Features Set comprise the Intrinsic Values set and Target Values set of above mentioned three major components under illumination by illuminants of a range of color profiles of one or more users.
  • the color profile comprises coordinates in a color space or chromaticity coordinate system.
  • Front-Side Camera Platform Refers to camera devices and other electronic media devices that have at least one camera configured such that its field of view usually comprises the image of a user or users of the electronic media device as a front-side operational mode, as in FIG. 1, 100 a smartphone, 120 a notebook, 160 and 180 a built-in Front-side camera.
  • OWNEROwner The actual owner or the administrator of the electronic media device or devices defined in this application, who has the privilege to use and grant others the privilege of the USER STATUS to use the invented methods in this disclosure. If the face of a person detected is not recognized to have the USER STATUS, it will not appreciate the benefit of this application.
  • USER STATUS A person who has USER STATUS.
  • the USER STATUS can also be granted to a person automatically by the service routines of the electronic media device or devices defined in this application, and the size of user group could be dynamically expanded up to the system resources and efficacy limits.
  • ISP An image and signal processing system in an electronic imaging device such as a camera, usually comprising interfaces to image sensor and host controller, an electronic circuitry pipeline and other computational logic circuitry hardware engines for pixel level processing, memory modules, a programmable controller and firmware for image processing and system control processes.
  • An electronic media device of a Front-Side Camera Platform comprises one or more cameras, with at least one camera is configured such that its field of view usually comprises the image of a user or users of the electronic media device as a front-side operational mode; one or more processors with one working as the System Controller controlling system operation of the device; non-transitory storage media containing instructions readable by System Controller and the one or more processors; memory storage media module accessible by the camera or the cameras to store captured and processed images and other data, and by the one or more processors to execute the controlling instructions; an apparatus with mechanisms to receive and send images, videos and other data; a display device being able to display images, videos and graphics content; a user controllable interactive interface to the electronic media device that displays image or graphics content on the display device and takes in the user control input by touching, keying, voice, or other remote sensing mechanisms and interprets the user input so that the System Controller understands the user's intention and properly process it.
  • the camera in front-side operational mode comprises a lens, an image sensor, an ISP system, an interface logic circuitry between the sensor and the ISP system, a programmable camera controller, which could be a dedicated camera processor or shared by the host processor or one of the host processors, a display device or shared host display device, a native storage memory or shared storage memory with the host device for ISP operations, and an image and video output modules orchestrated by the host device.
  • the camera has power off, power on, standby, preview, and video or still capture mode among others, controlled by the System Controller or a dedicated camera controller upon a host request of the System Controller in response to the user input.
  • image frames from an image sensor are acquired via an interface circuitry and pre-processed in the ISP pipeline and stored in a memory storage after demosaic stage, where face detection, segmentation and recognition and Facial Color Features based automatic white balance is carried out by one or more programmable computing devices and logic circuitry engines coupled to the memory storage and ISP pipeline.
  • the processed image is sent to the coupled ISP downstream pipeline for further processing to generate formatted outputs respective to an application specific standard, to be displayed on a display device of the host media device, stored in a local nonvolatile storage media or sent out by a networking media after encoding and other further processing.
  • FIG. 2 and FIG. 3 Simplified examples of schematics for an ISP of a camera are illustrated in FIG. 2 and FIG. 3 .
  • Automatic white balance control apparatus as part of the camera ISP comprises illuminant estimation and gain adjustment of the image color so that image will appear like under an ambient illumination by an illuminant with a standard color profile such as D50 for example, or the image color is adjusted to a popularly favored color target more pleasing to human perception, or to the preferred target condition defined by an individual user of the device. Additional color correction and enhancement are carried out after or together with the automatic white balance gain adjustment.
  • the automatic white balance control apparatus could be implemented real time inside the ISP block as illustrated in FIG. 2 and FIG. 3 , or in a different location of ISP pipeline such as in Bayer domain or as a post processing apparatus on the same device platform as illustrated in FIG. 4 , or as an off-line application in a different device.
  • FIG. 2 schematics is illustrated in FIG. 2 .
  • Image or frames of video streams are acquired, pre-processed and stored in a storage memory 260 .
  • the computational resources 230 read data from and write back to buffer 260 to conduct face detection, recognition, Facial Color Features extraction, illuminant estimation, white balance gain adjustment, color correction and enhancement. Sufficient memory size and parallel processing are preferred for continuous operation with good image quality and reduced latency in video streaming and image capture.
  • the automatic white balance control apparatus described herein has three operational modes: The Facial Color Features Acquisition Mode as illustrated in FIG. 5 ; The Automatic White Balance Adjustment Mode as illustrated in FIG. 6 ; and The Automatic White Balance with Machine Learning Mode as illustrated in FIG. 7 .
  • Module 53 conducts face detection, segmentation and recognition of a pre-processed captured image in an image storage buffer 51 ;
  • Module 52 acquires Intrinsic Values of the Facial Color Features for each recognized user by methods detailed later, and acquires Target Values of the Facial Color Features as user favored rendition based on user inputs via an Interactive Interface module 55 and stored the results in module 54
  • the Facial Color Features Set In the Facial Color Features Set.
  • Module 63 conducts face detection, segmentation and recognition of a pre-processed captured image in an image storage buffer 61 .
  • Module 64 takes the result of module 63 and the stored Facial Color Features data from 62 The Facial Color Features Set to conduct illuminant estimation to get C 1 , C 2 and C 3 , and then conducts white balance and color enhancement based on C 1 , C 2 , C 3 and the user data in The Facial Color Features Set in 62 .
  • automatic white balance control initially is based on C 1 and the Facial Color Features Acquisition by Machine Learning is carried out at the background, as the camera operates in normal conditions. Once the learning converges and Facial Color Features data are acquired, a similar operation to the Automatic White Balance Adjustment Mode described above is carried out.
  • Face detection and recognition have been running on smartphones and other electronic media devices in real time.
  • the computational complexity for face recognition could be even more reduced to the level of user identification in the context of applications concerned in this disclosure, due to the availability of a variety of identity info in the electronic media devices such as password, finger prints and other sensing data or secured device access protocols, the availability of Facial Color Features as a complementary or independent identity feature set to be obtained by methods detailed later in this disclosure, and limited size of user group on the Front-Side Camera Platform, which in an extreme yet quite common case is just the OWNER alone for devices like mobile phones or personal computers. Therefore, general methods for implementation of face detection, segmentation and recognition are considered to be a prior art without the need for elaborations herein. An example results of detected, segmented and recognized face is illustrated in FIG. 8 .
  • the facial color feature Calibration Service Routine conducts face detection and segmentation, resulting in 800 hair, 820 mouth, 830 eyes, 860 nose, and 880 face skin, which comprises the face area excluding the above named other parts.
  • face detection and segmentation resulting in 800 hair, 820 mouth, 830 eyes, 860 nose, and 880 face skin, which comprises the face area excluding the above named other parts.
  • face skin which comprises the face area excluding the above named other parts.
  • the skin color is the most important item, while the eye ball white and teeth are also helpful, though may not be visible from time to time.
  • some pre-processing is needed to filter away noise components in the face such as hairs, nostrils and mustaches, and the pixels in skin area 880 and nose area 860 are converted from RGB to YCbCr space with a data structure to index back each pixel to its values in original RGB space.
  • a first filter using luminance value Y as the threshold is run such that the dark pixels below a threshold are discarded, and qualified pixels form candidate pixel group one, of which a 2D histogram distribution in CbCr coordinate system is populated, and a second filter is run such that 70% pixels closest to the peak are selected as the qualified pixels and indexed back to their values in RGB space, where a simple average of qualified pixels in each of the R, G, B channels is computed to get what is defined herein the Intrinsic Values (r 110 , g 110 , b 110 ) of the face skin of the user, and input them to the relative position of the user entry in The Facial Color Features Set.
  • the Facial Color Feature Calibration Routine proceeds to acquire the Target Value through an Interface Service Routine, which comprises displaying one or more enhanced color rendition of the facial parts (typically skin tone) of the captured image of the user or provide a color adjustment mechanism through a user-machine interface and gets the input from the user of the favored choice or adjustment.
  • the adjustment of the face skin tone could be carried out by a transform in a color space with some statistically or empirically favored effects such as whitening, tanning, warming, and cooling etc.
  • the user can use manual input, voice or other interactive methods freely control the hue, saturation and luminance of rendered image moving in a reasonable zone of a selective color space, and the corresponding rendered face picture is displayed as illustrated in FIG. 14 .
  • the corresponding target is accepted and the facial color profiles are extracted and converted to the Target Values as a set of coordinates in RGB space and input into the Target Values position of the user entry in The Facial Color Features Set.
  • the transform functions corresponding to the user input as an operation to convert the captured image represented by the Intrinsic Values to the enhanced images represented by the Target Values is also recorded in the Target Value data structure in The Facial Color Features Set, so that the same or parameter adjusted transform could be used in the process of Automatic White Balance Adjustment Mode.
  • Facial Color Features Measurement Mode is by the user taking snapshots of the front view of the face of the user together with a piece of standard grey chart or white surface material as a reference surface under a variety of common indoor and outdoor conditions, such as ‘home incandescent light’, ‘office florescent light’, ‘sunny’, ‘cloudy’, ‘cloudy with sunshine’, ‘sunny with blue sky’, ‘sunrise’, ‘sunset’ and etc.
  • the Measurement Service Routine detects color profiles of current illumination and the rest of the process to extract Facial Color Features is similar to what described under the Lab Calibration Mode.
  • the Facial Color Features acquired could go through a curve fitting procedure to generate continuous color temperature curves by a piecewise linear or nonlinear interpolation or extrapolation methods to cover sufficient color temperature range for real time illuminant estimation and automatic white balance adjustments.
  • the skin tone as an example, by measuring related patches on Macbeth or other standard color charts representing skin tones or utilizing open source statistics, the skin tone distribution zone under a wide range of color temperature covered by a dotted envelop curve in (B/G, R/G) color coordinate system is illustrated in FIG. 9 , wherein each user could find a trajectory of his or her skin tone Intrinsic Values, as well as that of Target Values, if the user did not intentionally give inputs to the Facial Color Features acquisition process as a special make up.
  • An Extrapolation Method to acquire the Intrinsic Values of the Facial Color Features is to get one point by previously described Lab Calibration Mode or Facial Color Features Measurement Mode procedures and do extrapolation to extend bi-directionally in line with the population trajectory of human skin and respective to the white point curve calibrated of the camera module of the device to cover the full color temperature range, as illustrated in FIG. 9 , starting from a certain point P.
  • Facial Color Features acquisition processes could be initiated whenever a new user is added to the user group or at a user's free will. For example, when the user's facial condition changes due to sickness, aging, and cosmetic make up, or when a different flavor of rendition has strong appeal to activate the desire.
  • C _ 1 ⁇ ⁇ [ ⁇ ( ⁇ 1 T 1 ⁇ ⁇ ⁇ ib * ⁇ ( r ib g ib ) / ⁇ ( ( ⁇ 1 T 1 ⁇ ⁇ ⁇ ib ) * T 1 ) ) ; ⁇ ⁇ ( ⁇ 1 T 1 ⁇ ⁇ ib * ⁇ ( b ib g ib ) / ⁇ ( ( ⁇ 1 T 1 ⁇ ⁇ ⁇ ib ) * T 1 ) ) ] ⁇ [ 1 ]
  • ⁇ ib is a weighting coefficient, depending upon the luminance and the coordinates of i b .
  • the method to calculate C 2 is quite similar to that for C 1 .
  • the estimated averaged coordinate corresponding to skin part is
  • each user has a set of Intrinsic Values of the face skin stored in an entry in The Facial Color Features Set, projecting C 2 f1 to the nearest reference point in reference skin color line, or a segment formed by nearest two reference points in skin color line, selecting whichever junction point is closer to be C 2 f1 ;
  • C 2 f1 , C 2 f2 and C 2 f3 are mapped to C 2 f1 ′, C 2 f2 ′ and C 2 f3 ′ respectively by a look-up table operation followed by a linear interpolation between neighboring reference points, and the overall estimation of the color temperature C 2 , computed from the three facial parts is expressed as a weighted average sum of C 2 f1 ′, C 2 f2 ′ and C 2 f3 ′:
  • C 3 (C 1 *k 1 +C 2 *k 2 )/(k 1 +k 2 ) [4] where, k 1 , k 2 are weighting factors.
  • C 1 C 1 , which means no projection toward the white point locus is needed, and the same method applies to C 2 calculation.
  • illuminant estimation there are a variety of options how to render automatic white balance and color enhancement, particularly over the facial parts. There are trade-offs among color fidelity, effects of color enhancement, potential artifacts, user satisfaction and computational complexity.
  • One simpler embodiment is to apply the same gain offset calculated with C 3 as the preferred illuminant estimation and a pre-defined color profile such as D50 or D55 as the standard target condition, using an image processing pipeline scheme as illustrated in FIG. 3 , and the automatic white balance gain calculation is as follows:
  • FIG. 11 Another example embodiment of automatic white balance gain and color enhancement is illustrated in FIG. 11 , where instead of a unified gain adjustment toward a standard target D50 on white point locus, each of the facial parts is adjusted from mapped C 3 position to D50 position on its own color temperature curve as fitted from the Intrinsic Values of the Facial Color Features in The Facial Color Features Set. Accordingly, a similar gain calculation to the unified method is carried out and applied respectively to pixel areas of face skin, eye ball white, teeth, and other background areas of the image. This approach has better color rendition for facial parts and computational complexity is also higher.
  • FIG. 12 A third embodiment of automatic white balance adjustments is illustrated in FIG. 12 , wherein the facial parts are adjusted from their current position in their own color temperature curve corresponding to C 3 to a user preferred target position defined as Target Values in The Facial Color Features Set.
  • each set of Intrinsic Values data are mapped to a set of Target Values data by a transform function corresponding to a choice or adjustment from the user input.
  • the Target Values take as default Target Values a standard reference Intrinsic Values position from the user entry in The Facial Color Features Set or experimentally and popularly favored reference color profiles.
  • a preferred embodiment for automatic white balance adjustments is by adjusting the facial parts and other detected skin area of a user from under current illuminant estimation C 2 to the user preferred target position defined as the Target Values in the user entry of The Facial Color Features Set, and color of the rest of the image from under current illuminant estimation C 1 to under a standard reference illumination position.
  • This method is particularly applicable where the illuminations of the face and the background are from illuminants with quite different color profiles.
  • One solution is to use the original transform function during the process of facial color features acquisition with optimized parameters tuning gearing to the illuminant estimation results, wherein an interpolation is needed between two or more characterized intrinsic values in The Facial Color Features Set to determine the proper parameters for transform function to get to the proper Target Values.
  • G ref and G current are bigger than a threshold, to avoid luminance level fluctuation artifacts in the facial boundaries, convert the pixels in the face skin area to HSL color space, wherein adjust the color saturation and hue of the pixels to the desired Target Values, without changing L, by a procedure detailed below:
  • the image pixels inside the contour are converted from RGB color space to YCbCr space, wherein take the current estimated face color coordinates f as the center, populate a 2D histogram in CbCr chromaticity coordinate system, and use a rectangle or circle with adjustable dimension as a first stage filter.
  • further filtering is carried out to determine a skin pixel by a second classifier using features such as morphological measurements, the coherence and connectivity of neighboring pixels or pixel clusters and luminance values.
  • Skin pixels are processed using the same way as those for the face skin, and other facial parts such as eye ball white and teeth, depending upon the confidence level in estimation of their positions, clarity and colors, could be adjusted from their current Intrinsic Values to the Target Values, using similar calculation scheme as above for skin tone, or are treated the same way as the background. Since the skin tone and other facial areas are processed differently from the other parts of the image, boundary smoothing is carried out after color adjustments.
  • the Automatic White Balance with Machine Learning Mode could be turned on by a user anytime or by the Learning Service Routine of the system automatically.
  • the Learning Service Routine starts to run in background when the camera operates normally in preview, capture or playback mode wherein the camera acquires a digital image and store the image in an image buffer accessible by one or more processors.
  • the Learning Service Routine running on the one or more processors start illuminant estimation by C 1 in an unsupervised learning mode, and if a certain illuminant estimation C 10 has a confidence level w 1 higher than a threshold w t , the one or more processors conduct face detection, segmentation recognition of the buffered image, and in case of a face of a user being identified matching a user entry in
  • the Facial Color Features Set locate the contours of the face skin, the eyeball white and the teeth areas, extract the Intrinsic Values data of the facial color features of the face skin, the eyeball white and the teeth by averaging qualified pixels after filtering using a first luminance threshold filter and a second histogram based color filter and store the Intrinsic Values data in a candidate buffer.
  • the illuminant estimation C 10 If for the illuminant estimation C 10 , the differences between the Intrinsic Values data stored in the candidate buffer are smaller than a threshold with a repetitive appearance probability P 1 bigger than a threshold P 1t , the illuminant estimation C 10 is considered accurate, and an average of the Intrinsic Values data within the difference threshold stored in the candidate buffer is computed and added into the related Intrinsic Values position of the user entry in The Facial Color Features Set.
  • the one or more processors proceed to display on a display device an image after automatic white balance adjustments adjusting the image color under current illumination estimated by C 10 to under a standard reference illumination or a popularly perceptually favored illumination condition followed by a color correction, and use a user-machine interactive interface to prompt for and acquire user's opinion about the color rendition. If the user confirms the color is satisfactory, the Intrinsic Values of the user under the estimated illumination C 10 is extracted using the same procedure described in the unsupervised learning mode and added to the related Intrinsic Values position of the user entry in The Facial Color Features Set.
  • the Target Values data are acquired in the supervised learning mode by displaying enhanced images over or provide a mechanism to adjust the captured image under the illumination estimated by C 10 , or a combination thereof, and prompting for and acquiring the input from the user.
  • the Target Values of the facial color features are extracted based on the input by the user using the same procedure described in the unsupervised learning mode, and added together with the transform functions corresponding to operations on captured image based on user input to the related position of the user entry in The Facial Color Features Set.
  • the short term learning process is complete after the acquired data in the user entry of The Facial Color Features Set cover sufficient range of color profiles as needed for automatic white balance, and illuminant estimation and automatic white balance adjustments could be carried out using the acquired data in The Facial Color Features Set.
  • Machine learning could continue even after it meets short term convergence criteria, and the user can turn it on and off through an interactive interface to the device. This is useful when the facial color profiles change due to aging, sickness, emotions or cosmetic make ups, or to satisfy the desire of a user for an intentional special color effect as the Target Values.
  • the user feedback mechanism as described hereby could also be used to affect the weighting schemes, the threshold parameters in the micro-architecture of automatic white balance control apparatus, and for example, the parameters in the transform function to convert the Intrinsic Values to the Target Values.
  • a simple flow chart is illustrated in FIG. 15 .
  • the automatic white balance methods and apparatus described herein are applicable to other type of electronic media devices as well.
  • the back side camera of a mobile phones or a digital camera has a Set Timer Mode for taking shots of self-portrait.
  • the back-side camera or a digital camera can use a user's face as a reference for automatic white balance if the user's face is in the view and the facial color profile of the user has been acquired in an accessible The Facial Color Features Set.
  • the device accommodates an integrated and a distributed implementation schemes, wherein the integrated implementation scheme accomplishes the method in one single device of a Front Side Camera Platform, while the distributed implementation scheme accomplishes the method by more than one devices with at least one device having at least a camera having a front-side operational mode, wherein for example, the image or images captured by a first front-side camera device could be sent to a second separate or deferent type of device to be processed to extract The Facial Color Features Set, and the acquired Facial Color Features Set could be used by the second device or sent back to the first device or a third separate or deferent type of device to conduct illuminant estimation and white balance adjustments.
  • the integrated implementation scheme accomplishes the method in one single device of a Front Side Camera Platform
  • the distributed implementation scheme accomplishes the method by more than one devices with at least one device having at least a camera having a front-side operational mode
  • the image or images captured by a first front-side camera device could be sent to a second separate or deferent type of device to be
  • the automatic white balance method in this disclosure could also be accomplished by software in one or mode devices receiving images not in real time using the methods described above. Except for image capture requiring a camera, other devices may or may not have a camera, including for example TV set, display devices, game devices, computers, image or video compression or encoding devices and network transmission devices.
  • the frame buffer memory storage and related automatic white balance processing is carried out by computational resources in RGB space, it could also be implemented in Bayer domain or in a distributed scheme within the ISP, or as a post-processing block as illustrated in FIG. 4 , or offline in a different image media device.
  • the automatic white balance control apparatus comprise electronic digital circuitry based pixel computation (i.e. hardware) for pixel color statistics collection engine, gain offset, CCM multipliers and more in the ISP pipeline, while programmable processor or DSP device based (i.e. firmware) computation are responsible for illuminant estimation, gain offset calculation, other computational services and overall process control.
  • pixel computation i.e. hardware
  • DSP device based i.e. firmware
  • To accomplish the tasks of face detection, segmentation and recognition and the automatic white balance methods described in this disclosure requires proper arrangement of the resources.
  • the more dedicated computing resources, and the faster processors or DSPs the faster processing speed, better image quality and less latency, but the cost and power consumption are also higher.
  • the computational complexity could increase significantly if there are more than one users in the view as in a Multiple User Mode.
  • one option is to prioritize the user entries in The Facial Color Features Set and add a Priority Index Field in the data structure of The Facial Color Features Set, and conduct automatic white balance with higher priority in favor of the user entries with higher priority ranks.
  • the OWNER or the user could also select a Multiple User Mode or Single User Mode to avoid the conflict.
  • the OWNER usually is the only user and naturally would like that he or she to be best expressed in the image so as to his or her own satisfaction by selecting a Single User Mode. On occasion such as taking a shot of family gathering, it would please all if each member is satisfied, and Multiple User Mode could be selected with the same priority rank allover, which would lead to a multiple user concurrent processing. Obviously, it would take more resources, power and time to finish the automatic white balance than for a single user. So there is a trade-off between performance and cost, as it could be seen from the flow chart in FIG. 2 and FIG. 3 .
  • the illuminant estimation by the front-side camera could be useful to automatic white balance for the back-side camera, when it works in a slave mode.
  • the back-end camera can issue a system request to the System Controller for the front-side camera to assist its illuminant estimation.
  • the System Controller endorses if there is no conflict in system resource and the front-side camera and back-side work concurrently.
  • This operational mode will benefit situations where the confidence level for the illumination of the back-side camera is low, and the illumination of both cameras are the same or correlated, including the following conditions for example: The fields of view of both cameras are both indoor or outdoor; The distance of fields of view of both cameras is close; The color profile of light source detected by the front-side camera is the same or close to the illuminant estimation by the back-side camera, and The illuminant estimation of both cameras are the same or close.
  • the back-side camera and front-side could work concurrently as a normal operation mode or intermittently on a per need basis. When the user is not operating the front-side camera, the front-side camera does not have to conduct automatic white balance gain adjustment and other downstream ISP processing to reduce power consumption.
  • the Intrinsic Values of The Facial Color Features Set acquired could serve as a complementary or an independent feature Set for face recognition and be fed back into the face recognition module of the platform as illustrated in FIG. 16 , and it is also usable in other face recognition related applications, such as video surveillance and Internet image and video searching.

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Business, Economics & Management (AREA)
  • Emergency Management (AREA)
  • Public Health (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computing Systems (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Human Computer Interaction (AREA)
  • Medical Informatics (AREA)
  • Image Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephonic Communication Services (AREA)
  • Processing Of Color Television Signals (AREA)

Abstract

An automatic white balance method and an electronic media device incorporating the method deploy characterized individual human facial color features set of a user or users of the device as reference color surfaces in automatic white balance illuminant estimation and color adjustments, which could improve illuminant estimation accuracy, provide flexible color adjustment options and render the image color to each user's own satisfaction taking into account user preferred rendition as target values through a human-machine interactive interface.

Description

TECHNICAL FIELD
This invention involves color processing and control methods, systems, and devices of image and video media in electronic media devices.
BACKGROUND
Skin color surfaces are usually difficult in automatic white balance illuminant estimation. Firstly, skin tone could vary significantly from individuals to races; and secondly, it could be very close to and sometimes mingle with the white point locus under certain illuminations, which tends to illuminant estimation errors for some common illuminant estimation algorithms, such as A. The Grey World, B. Perfect Reflector and C. Color by Correlation Models. It is often found that even in top of the line professional or smartphone cameras automatic white balance errors and unpleasant skin tone rendition would occur, for example, by approaching the camera head to near skins. Therefore, in US patent application US2008037975 (A1), it is proposed to remove the detected face area as a noise from automatic white balance illuminant estimation.
Automatic white balance usually comprises steps of illuminant estimation and color gain adjustment followed by related color correction or enhancement. For illuminant estimation, it is a well-known classical phenomenon in automatic white balance that what comes into the camera lens is a mixed emission from surfaces with unknown reflectance spectrum properties illuminated by unknown ambient light sources. It would be much easier for automatic white balance if there is a reference color surface in the scene with known color properties such as a gray chart used for on-site white balance by professional photographers. However, that approach is cumbersome and not applicable to ordinary users for daily usage. Now it is observed that the face of a user of a Front-Side camera is often within the view field of the camera and comprises a considerable portion of the pictures taken, while back-side cameras and other consumer or surveillance digital cameras also take shots of human portraits more often than not. These findings and growing popularity of smartphones and other devices with Front-Side cameras make it a practical application for automatic white balance and related color rendition to use a reference surface within the image target itself, the properly characterized facial color features of the device user.
SUMMARY OF THE INVENTION
The first intent of this disclosure is to provide an automatic white balance method for automatic white balance control in an electronic media device, comprising acquiring The Facial Color Features Set of a user or users and conducting automatic white balance illuminant estimation, gain adjustment and color enhancement based on the illuminant estimation results and the above acquired Facial Color Features Set of the user or users.
The second intent of this disclosure is to provide an electronic media device that incorporates the above method, with detailed description of its system architecture, components, and operations.
The third part of this disclosure is to provide a firmware or software based apparatus to realize the above said method.
Moreover, examples of preferred embodiments are described in detail to help the implementation.
BRIEF DISCUSSION OF DRAWINGS
FIG. 1 is an illustration of the front camera platforms;
FIG. 2 is a block diagram of an example of image processing pipeline including the automatic white balance and related color processing units;
FIG. 3 is a block diagram of another example of image processing pipeline including the automatic white balance and related color processing units;
FIG. 4 is a block diagram for post processing method;
FIG. 5 is a block diagram for the Facial Color Features Acquisition Mode;
FIG. 6 is a block diagram for the Automatic White Balance Adjustment Mode;
FIG. 7 is a block diagram for Automatic White Balance with Machine Learning Mode;
FIG. 8 is a segmentation of face into three parts: face skin, eye ball white, and teeth;
FIG. 9 is an illustration of the white surface locus and skin tone locus within a chromaticity coordinate system, the dotted line indicates possible expanding of the skin tone;
FIG. 10 is an illustration of a method to for illuminant estimation process, using C3 to perform automatic white balance using one set of gain offsets unanimously to the entire image;
FIG. 11 illustrates a method using C3 to perform distinctive automatic white balance gain adjustment s of facial parts and other background image to each respective standard reference target;
FIG. 12 illustrates a method using C3 to perform distinctive automatic white balance gain adjustment s of facial parts and other background image taking user inputs as reference targets;
FIG. 13 illustrates a method to detect and process other naked skin area than face;
FIG. 14 is an illustration of user-platform interactive process;
FIG. 15 is an illustration of feedback learning automatic white balance improvement;
FIG. 16 is an illustration of Facial Color Features used as complimentary vectors for face recognition.
DETAILED DESCRIPTION Nomenclature
C1, C2, C3: Images are segmented to be comprised of facial parts (i.e. face area and its components) and background part (i.e. the image part that excludes the face area), and C1, C2, C3 denote the color profiles of the illuminant estimation results with regard to background part, facial parts and the entire image respectively. The color profile of an estimated illuminant is represented by the coordinates in a color space or chromaticity coordinate system of a white point or a specific color surface. The algorithms used for illuminant estimation could be A, B, C methods described in the Background Section or other methods.
Facial Color Features Set: For automatic white balance and color adjustments methods and apparatus disclosed hereby, Facial Color Features denote the acquired results of color profiles of three components of a segmented human face: the facial skin tone area, the eyeball white and the teeth. Facial Color Features Set comprise the Intrinsic Values set and Target Values set of above mentioned three major components under illumination by illuminants of a range of color profiles of one or more users. The color profile comprises coordinates in a color space or chromaticity coordinate system.
Front-Side Camera Platform: Refers to camera devices and other electronic media devices that have at least one camera configured such that its field of view usually comprises the image of a user or users of the electronic media device as a front-side operational mode, as in FIG. 1, 100 a smartphone, 120 a notebook, 160 and 180 a built-in Front-side camera.
OWNEROwner: The actual owner or the administrator of the electronic media device or devices defined in this application, who has the privilege to use and grant others the privilege of the USER STATUS to use the invented methods in this disclosure. If the face of a person detected is not recognized to have the USER STATUS, it will not appreciate the benefit of this application.
User: A person who has USER STATUS. The USER STATUS can also be granted to a person automatically by the service routines of the electronic media device or devices defined in this application, and the size of user group could be dynamically expanded up to the system resources and efficacy limits.
ISP: An image and signal processing system in an electronic imaging device such as a camera, usually comprising interfaces to image sensor and host controller, an electronic circuitry pipeline and other computational logic circuitry hardware engines for pixel level processing, memory modules, a programmable controller and firmware for image processing and system control processes.
An electronic media device of a Front-Side Camera Platform comprises one or more cameras, with at least one camera is configured such that its field of view usually comprises the image of a user or users of the electronic media device as a front-side operational mode; one or more processors with one working as the System Controller controlling system operation of the device; non-transitory storage media containing instructions readable by System Controller and the one or more processors; memory storage media module accessible by the camera or the cameras to store captured and processed images and other data, and by the one or more processors to execute the controlling instructions; an apparatus with mechanisms to receive and send images, videos and other data; a display device being able to display images, videos and graphics content; a user controllable interactive interface to the electronic media device that displays image or graphics content on the display device and takes in the user control input by touching, keying, voice, or other remote sensing mechanisms and interprets the user input so that the System Controller understands the user's intention and properly process it.
The camera in front-side operational mode comprises a lens, an image sensor, an ISP system, an interface logic circuitry between the sensor and the ISP system, a programmable camera controller, which could be a dedicated camera processor or shared by the host processor or one of the host processors, a display device or shared host display device, a native storage memory or shared storage memory with the host device for ISP operations, and an image and video output modules orchestrated by the host device. The camera has power off, power on, standby, preview, and video or still capture mode among others, controlled by the System Controller or a dedicated camera controller upon a host request of the System Controller in response to the user input. In preview or capture mode, image frames from an image sensor are acquired via an interface circuitry and pre-processed in the ISP pipeline and stored in a memory storage after demosaic stage, where face detection, segmentation and recognition and Facial Color Features based automatic white balance is carried out by one or more programmable computing devices and logic circuitry engines coupled to the memory storage and ISP pipeline. The processed image is sent to the coupled ISP downstream pipeline for further processing to generate formatted outputs respective to an application specific standard, to be displayed on a display device of the host media device, stored in a local nonvolatile storage media or sent out by a networking media after encoding and other further processing. Simplified examples of schematics for an ISP of a camera are illustrated in FIG. 2 and FIG. 3.
Automatic white balance control apparatus as part of the camera ISP comprises illuminant estimation and gain adjustment of the image color so that image will appear like under an ambient illumination by an illuminant with a standard color profile such as D50 for example, or the image color is adjusted to a popularly favored color target more pleasing to human perception, or to the preferred target condition defined by an individual user of the device. Additional color correction and enhancement are carried out after or together with the automatic white balance gain adjustment. The automatic white balance control apparatus could be implemented real time inside the ISP block as illustrated in FIG. 2 and FIG. 3, or in a different location of ISP pipeline such as in Bayer domain or as a post processing apparatus on the same device platform as illustrated in FIG. 4, or as an off-line application in a different device. As in an example embodiment schematics is illustrated in FIG. 2. Image or frames of video streams are acquired, pre-processed and stored in a storage memory 260. The computational resources 230 read data from and write back to buffer 260 to conduct face detection, recognition, Facial Color Features extraction, illuminant estimation, white balance gain adjustment, color correction and enhancement. Sufficient memory size and parallel processing are preferred for continuous operation with good image quality and reduced latency in video streaming and image capture.
The automatic white balance control apparatus described herein has three operational modes: The Facial Color Features Acquisition Mode as illustrated in FIG. 5; The Automatic White Balance Adjustment Mode as illustrated in FIG. 6; and The Automatic White Balance with Machine Learning Mode as illustrated in FIG. 7.
In the Facial Color Features Acquisition Mode, Module 53 conducts face detection, segmentation and recognition of a pre-processed captured image in an image storage buffer 51; Module 52 acquires Intrinsic Values of the Facial Color Features for each recognized user by methods detailed later, and acquires Target Values of the Facial Color Features as user favored rendition based on user inputs via an Interactive Interface module 55 and stored the results in module 54 The Facial Color Features Set.
In the Automatic White Balance Adjustment Mode, Module 63 conducts face detection, segmentation and recognition of a pre-processed captured image in an image storage buffer 61. Module 64 takes the result of module 63 and the stored Facial Color Features data from 62 The Facial Color Features Set to conduct illuminant estimation to get C1, C2 and C3, and then conducts white balance and color enhancement based on C1, C2, C3 and the user data in The Facial Color Features Set in 62.
In Automatic White Balance with Machine Learning Mode, automatic white balance control initially is based on C1 and the Facial Color Features Acquisition by Machine Learning is carried out at the background, as the camera operates in normal conditions. Once the learning converges and Facial Color Features data are acquired, a similar operation to the Automatic White Balance Adjustment Mode described above is carried out.
The Facial Color Features Acquisition Mode
Below is a detailed description of The Facial Color Features Acquisition Mode as illustrated in FIG. 5.
Face detection and recognition have been running on smartphones and other electronic media devices in real time. The computational complexity for face recognition could be even more reduced to the level of user identification in the context of applications concerned in this disclosure, due to the availability of a variety of identity info in the electronic media devices such as password, finger prints and other sensing data or secured device access protocols, the availability of Facial Color Features as a complementary or independent identity feature set to be obtained by methods detailed later in this disclosure, and limited size of user group on the Front-Side Camera Platform, which in an extreme yet quite common case is just the OWNER alone for devices like mobile phones or personal computers. Therefore, general methods for implementation of face detection, segmentation and recognition are considered to be a prior art without the need for elaborations herein. An example results of detected, segmented and recognized face is illustrated in FIG. 8.
Set the camera of the Front-Side Camera Platform to the facial color feature Lab Calibration Mode, and use an ambient light source with a standard reference color profile such as D50 or D55 to illuminate a standard grey chart within the proper depth of field; adjust exposure by automatic exposure of manually; adjust white balance by automatic white balance or manually, so that the ratio of average R, G, and B values of a region of 60×60 pixels in the image center is 1:1:1 in the sRGB color space. Now turn off the automatic white balance function, and take a snapshot of the face of the user and make sure the image is clear and size of the face is large enough, such that the exposure of the face is proper and eye ball white and front teeth are clear and measurable as illustrated in FIG. 8. Then the facial color feature Calibration Service Routine conducts face detection and segmentation, resulting in 800 hair, 820 mouth, 830 eyes, 860 nose, and 880 face skin, which comprises the face area excluding the above named other parts. For automatic white balance and color enhancement, the skin color and is the most important item, while the eye ball white and teeth are also helpful, though may not be visible from time to time.
To extract skin color profiles, some pre-processing is needed to filter away noise components in the face such as hairs, nostrils and mustaches, and the pixels in skin area 880 and nose area 860 are converted from RGB to YCbCr space with a data structure to index back each pixel to its values in original RGB space. A first filter using luminance value Y as the threshold is run such that the dark pixels below a threshold are discarded, and qualified pixels form candidate pixel group one, of which a 2D histogram distribution in CbCr coordinate system is populated, and a second filter is run such that 70% pixels closest to the peak are selected as the qualified pixels and indexed back to their values in RGB space, where a simple average of qualified pixels in each of the R, G, B channels is computed to get what is defined herein the Intrinsic Values (r110, g110, b110) of the face skin of the user, and input them to the relative position of the user entry in The Facial Color Features Set.
The processes to extract Intrinsic Values of eye ball white and teeth are similar, and the eye area 830 is further segmented to get the contours of the eye ball white region, while mouth area 820 is further segmented to get the contours of the teeth. Only pixels inside the contours are concerned further on. Then a similar filtering and calculation to the steps described in the previous paragraph are used to get Intrinsic Values of the eye ball white and the teeth as user entry data in The Facial Color Features Set.
Now that one set of Intrinsic Values of the Facial Color Features are acquired, the Facial Color Feature Calibration Routine proceeds to acquire the Target Value through an Interface Service Routine, which comprises displaying one or more enhanced color rendition of the facial parts (typically skin tone) of the captured image of the user or provide a color adjustment mechanism through a user-machine interface and gets the input from the user of the favored choice or adjustment. The adjustment of the face skin tone could be carried out by a transform in a color space with some statistically or empirically favored effects such as whitening, tanning, warming, and cooling etc. It also could be designed such that the user can use manual input, voice or other interactive methods freely control the hue, saturation and luminance of rendered image moving in a reasonable zone of a selective color space, and the corresponding rendered face picture is displayed as illustrated in FIG. 14. Based on the user input as a choice or adjustment or a combination thereof, the corresponding target is accepted and the facial color profiles are extracted and converted to the Target Values as a set of coordinates in RGB space and input into the Target Values position of the user entry in The Facial Color Features Set. Besides the coordinate representation of the Target Values, the transform functions corresponding to the user input as an operation to convert the captured image represented by the Intrinsic Values to the enhanced images represented by the Target Values is also recorded in the Target Value data structure in The Facial Color Features Set, so that the same or parameter adjusted transform could be used in the process of Automatic White Balance Adjustment Mode.
By changing the color profiles of the ambient illumination to cover sufficient range for automatic white balance applications and using similar procedures described above, a user entry in The Facial Color Features Set is complete and available to automatic white balance.
Due to the cost of lab condition set up and tedious procedures just described, an alternative acquisition process under Facial Color Features Measurement Mode is by the user taking snapshots of the front view of the face of the user together with a piece of standard grey chart or white surface material as a reference surface under a variety of common indoor and outdoor conditions, such as ‘home incandescent light’, ‘office florescent light’, ‘sunny’, ‘cloudy’, ‘cloudy with sunshine’, ‘sunny with blue sky’, ‘sunrise’, ‘sunset’ and etc. By measuring the a reference surface, the Measurement Service Routine detects color profiles of current illumination and the rest of the process to extract Facial Color Features is similar to what described under the Lab Calibration Mode.
An interpolation is usually needed during illuminant estimation when estimated illumination is in between calibrated data in The Facial Color Features Set. In one embodiment, The Facial Color Features acquired could go through a curve fitting procedure to generate continuous color temperature curves by a piecewise linear or nonlinear interpolation or extrapolation methods to cover sufficient color temperature range for real time illuminant estimation and automatic white balance adjustments. Take the skin tone as an example, by measuring related patches on Macbeth or other standard color charts representing skin tones or utilizing open source statistics, the skin tone distribution zone under a wide range of color temperature covered by a dotted envelop curve in (B/G, R/G) color coordinate system is illustrated in FIG. 9, wherein each user could find a trajectory of his or her skin tone Intrinsic Values, as well as that of Target Values, if the user did not intentionally give inputs to the Facial Color Features acquisition process as a special make up.
An Extrapolation Method to acquire the Intrinsic Values of the Facial Color Features is to get one point by previously described Lab Calibration Mode or Facial Color Features Measurement Mode procedures and do extrapolation to extend bi-directionally in line with the population trajectory of human skin and respective to the white point curve calibrated of the camera module of the device to cover the full color temperature range, as illustrated in FIG. 9, starting from a certain point P.
The above described Facial Color Features acquisition processes could be initiated whenever a new user is added to the user group or at a user's free will. For example, when the user's facial condition changes due to sickness, aging, and cosmetic make up, or when a different flavor of rendition has strong appeal to activate the desire.
The Automatic White Balance Adjustment Mode
Below is an example embodiment of how to use Facial Color Features in automatic white balance illuminant estimation in Automatic White Balance Adjustment Mode, based on a modified perfect reflector model in a (B/G, R/G) chromaticity coordinate system.
Refer to FIG. 10, for background illuminant estimation C1, assume ib is a pixel in the image background part, and its R, G and B components are denoted by rib, gib, bib, the total number of pixels of image background portion is T1, then an estimated averaged coordinates
C _ 1 = [ ( 1 T 1 α ib * ( r ib g ib ) / ( ( 1 T 1 α ib ) * T 1 ) ) ; ( 1 T 1 α ib * ( b ib g ib ) / ( ( 1 T 1 α ib ) * T 1 ) ) ] [ 1 ]
Where αib is a weighting coefficient, depending upon the luminance and the coordinates of ib.
Project C 1 to the nearest reference point in white point line, or a segment formed by the nearest two reference points in white point line, and find whichever junction point is closer to be C1, as in FIG. 10.
The method to calculate C2 is quite similar to that for C1. Each facial part is regarded as an independent surface, assume ifj is a pixel on facial part and index j=1 for skin part, j=2 for eyeball white, and j=3 for teeth as the row number in the user entry in The Facial Color Features Set. The estimated averaged coordinate corresponding to skin part is
C _ 2 f 1 = ( ( i = 1 T 2 f 1 ( b i f 1 g i f 1 ) * β i f 1 ) / ( i = 1 T 2 f 1 β i f 1 * T 2 f 1 ) , ( i = 1 T 2 f 1 ( r i f 1 g i f 1 ) * β i f 1 ) / ( i = 1 T 2 f 1 β i f 1 * T 2 f 1 ) ) , [ 2 ]
where coefficient βi f1 is a weighting coefficient, depending upon the luma and the coordinates of ifj, T2 f1 is the total number of pixels of skin part.
Since each user has a set of Intrinsic Values of the face skin stored in an entry in The Facial Color Features Set, projecting C 2 f1 to the nearest reference point in reference skin color line, or a segment formed by nearest two reference points in skin color line, selecting whichever junction point is closer to be C2 f1 ;
The calculation for the rest of the facial part C2 f2 and C2 f3 is similar to that for C2 f1 .
As each point on its respective color temperature curve corresponding to an estimated color temperature of the canonical illuminant on the white point locus, C2 f1 , C2 f2 and C2 f3 are mapped to C2 f1 ′, C2 f2 ′ and C2 f3 ′ respectively by a look-up table operation followed by a linear interpolation between neighboring reference points, and the overall estimation of the color temperature C2, computed from the three facial parts is expressed as a weighted average sum of C2 f1 ′, C2 f2 ′ and C2 f3 ′:
C 2 = ( j = 1 3 C 2 fj * θ j ) / j = 1 3 θ j , [ 3 ]
wherewherein θj is a confidence related weighted level weighting factor.
Taking C1, C2 as a vector, the overall estimate for entire image is expressed as
C3=(C1*k1+C2*k2)/(k1+k2)  [4]
where, k1, k2 are weighting factors.
For some artificial light sources that differ from the black body radiance locus, and require color profile adjustment in addition to color temperature adjustment, C1=C 1, which means no projection toward the white point locus is needed, and the same method applies to C2 calculation.
With illuminant estimation done, there are a variety of options how to render automatic white balance and color enhancement, particularly over the facial parts. There are trade-offs among color fidelity, effects of color enhancement, potential artifacts, user satisfaction and computational complexity. One simpler embodiment is to apply the same gain offset calculated with C3 as the preferred illuminant estimation and a pre-defined color profile such as D50 or D55 as the standard target condition, using an image processing pipeline scheme as illustrated in FIG. 3, and the automatic white balance gain calculation is as follows:
It is assumed at the standard target illuminant condition,
R G = 1 , B G = 1
for a white surface. This is usually achieved in image pipeline calibration stage, a pre-set of gains are applied to match the color characteristics of a specific sensor and lens module, and front end image processing pipeline logic designs. Now that the estimated illuminant is C3 with coordinates
( B 1 G , R 1 G ) in ( B / G , R / G )
chromaticity coordinate system, the gain offsets applied to R and B color channels of each pixel of the image are just their reciprocals G/R1 and G/B1 respectively, while G gain is not changed to avoid deviations in luminance level.
After automatic white balance gain adjustment, color correction is carried out by a 3*3 CCM matrix with constant coefficients, expressed as
[R′,G′,B′]=A*[R,G,B]T.  [5]
Another example embodiment of automatic white balance gain and color enhancement is illustrated in FIG. 11, where instead of a unified gain adjustment toward a standard target D50 on white point locus, each of the facial parts is adjusted from mapped C3 position to D50 position on its own color temperature curve as fitted from the Intrinsic Values of the Facial Color Features in The Facial Color Features Set. Accordingly, a similar gain calculation to the unified method is carried out and applied respectively to pixel areas of face skin, eye ball white, teeth, and other background areas of the image. This approach has better color rendition for facial parts and computational complexity is also higher.
A third embodiment of automatic white balance adjustments is illustrated in FIG. 12, wherein the facial parts are adjusted from their current position in their own color temperature curve corresponding to C3 to a user preferred target position defined as Target Values in The Facial Color Features Set. As in the process to acquire The Facial Color Features Set, each set of Intrinsic Values data are mapped to a set of Target Values data by a transform function corresponding to a choice or adjustment from the user input. In case of missing the input choice from a user, the Target Values take as default Target Values a standard reference Intrinsic Values position from the user entry in The Facial Color Features Set or experimentally and popularly favored reference color profiles.
A preferred embodiment for automatic white balance adjustments is by adjusting the facial parts and other detected skin area of a user from under current illuminant estimation C2 to the user preferred target position defined as the Target Values in the user entry of The Facial Color Features Set, and color of the rest of the image from under current illuminant estimation C1 to under a standard reference illumination position. This method is particularly applicable where the illuminations of the face and the background are from illuminants with quite different color profiles. One solution is to use the original transform function during the process of facial color features acquisition with optimized parameters tuning gearing to the illuminant estimation results, wherein an interpolation is needed between two or more characterized intrinsic values in The Facial Color Features Set to determine the proper parameters for transform function to get to the proper Target Values.
An alternative solution is described below, considering the face skin tone first:
Assuming Bcurrent and Gcurrent to be the estimated skin tone under current illuminant estimation C2, and Rref, Bref and Gref to be current Target Values for face skin corresponding to C2, calculate
R_gain = R_ref R current ; B_gain = B ref B current ; G_gain = G ref G current , [ 6 ]
and multiply the R, G, and B components of each pixels of the facial skin by R_gain, B_gain and G_gain respectively. In case the difference between Gref and Gcurrent is bigger than a threshold, to avoid luminance level fluctuation artifacts in the facial boundaries, convert the pixels in the face skin area to HSL color space, wherein adjust the color saturation and hue of the pixels to the desired Target Values, without changing L, by a procedure detailed below:
Assuming current illuminant estimation and the Target Value in HSL color space to be (Hcurrent, Scurrent, Lcurrent) and (Href, Sref, Lref) respectively, calculate the ΔH=Href−Hcurrent; ΔS=Sref−Scurrent, and for each pixel (hcurrent0, Scurrent0, lcurrent0), the adjustment is by the below formulas;
hcurrent=hcurrent0+γ*ΔH;  [7]
scurrent1=scurrent0+θ*ΔS;  [8]
where, γ and θ are luminance and color dependent factors, and each adjusted pixel (hcurrent1, scurrent1, lcurrent0) is converted back to RGB color space.
To render a consistent skin tone for face and other naked skin parts of the user, it is necessary to estimate where and how large are the naked skin areas other than the face. Naturally, neck is connected to head and face. Based on the geometry measure of the size proportion and orientation of the detected face in the image, a projection is made of a rectangle image area that might contain the whole body and limbs of the user as illustrated in FIG. 13. Then further detection and segmentation procedure leads to identifying the contour of the body and limbs. Then the image pixels inside the contour are converted from RGB color space to YCbCr space, wherein take the current estimated face color coordinates f as the center, populate a 2D histogram in CbCr chromaticity coordinate system, and use a rectangle or circle with adjustable dimension as a first stage filter. For pixels inside the area, further filtering is carried out to determine a skin pixel by a second classifier using features such as morphological measurements, the coherence and connectivity of neighboring pixels or pixel clusters and luminance values. Skin pixels are processed using the same way as those for the face skin, and other facial parts such as eye ball white and teeth, depending upon the confidence level in estimation of their positions, clarity and colors, could be adjusted from their current Intrinsic Values to the Target Values, using similar calculation scheme as above for skin tone, or are treated the same way as the background. Since the skin tone and other facial areas are processed differently from the other parts of the image, boundary smoothing is carried out after color adjustments.
There are more implementation methods for color adjustments based on a variety of combinations of C1, C2 and C3 that could be tailored to different favors, wherein the enumeration of the implementations for each combination is not necessary since it is not difficult to infer the steps to carry them out by ordinary individuals of the skill in this field, within the framework of methods described above in this disclosure.
Automatic White Balance with Machine Learning Mode
The Automatic White Balance with Machine Learning Mode could be turned on by a user anytime or by the Learning Service Routine of the system automatically. The Learning Service Routine starts to run in background when the camera operates normally in preview, capture or playback mode wherein the camera acquires a digital image and store the image in an image buffer accessible by one or more processors. The Learning Service Routine running on the one or more processors start illuminant estimation by C1 in an unsupervised learning mode, and if a certain illuminant estimation C10 has a confidence level w1 higher than a threshold wt, the one or more processors conduct face detection, segmentation recognition of the buffered image, and in case of a face of a user being identified matching a user entry in The Facial Color Features Set locate the contours of the face skin, the eyeball white and the teeth areas, extract the Intrinsic Values data of the facial color features of the face skin, the eyeball white and the teeth by averaging qualified pixels after filtering using a first luminance threshold filter and a second histogram based color filter and store the Intrinsic Values data in a candidate buffer. If for the illuminant estimation C10, the differences between the Intrinsic Values data stored in the candidate buffer are smaller than a threshold with a repetitive appearance probability P1 bigger than a threshold P1t, the illuminant estimation C10 is considered accurate, and an average of the Intrinsic Values data within the difference threshold stored in the candidate buffer is computed and added into the related Intrinsic Values position of the user entry in The Facial Color Features Set.
In a supervised learning mode, the one or more processors proceed to display on a display device an image after automatic white balance adjustments adjusting the image color under current illumination estimated by C10 to under a standard reference illumination or a popularly perceptually favored illumination condition followed by a color correction, and use a user-machine interactive interface to prompt for and acquire user's opinion about the color rendition. If the user confirms the color is satisfactory, the Intrinsic Values of the user under the estimated illumination C10 is extracted using the same procedure described in the unsupervised learning mode and added to the related Intrinsic Values position of the user entry in The Facial Color Features Set.
In a combinational mode, after the accuracy of an illuminant estimation C10 passing through the statistical criteria in the unsupervised learning mode, a further evaluation using the same procedure described in the supervised learning mode is carried out before the illuminant estimation C10 is confirmed and related Intrinsic Values data are added to The Facial Color Features Set.
The Target Values data are acquired in the supervised learning mode by displaying enhanced images over or provide a mechanism to adjust the captured image under the illumination estimated by C10, or a combination thereof, and prompting for and acquiring the input from the user. The Target Values of the facial color features are extracted based on the input by the user using the same procedure described in the unsupervised learning mode, and added together with the transform functions corresponding to operations on captured image based on user input to the related position of the user entry in The Facial Color Features Set.
The short term learning process is complete after the acquired data in the user entry of The Facial Color Features Set cover sufficient range of color profiles as needed for automatic white balance, and illuminant estimation and automatic white balance adjustments could be carried out using the acquired data in The Facial Color Features Set.
Machine learning could continue even after it meets short term convergence criteria, and the user can turn it on and off through an interactive interface to the device. This is useful when the facial color profiles change due to aging, sickness, emotions or cosmetic make ups, or to satisfy the desire of a user for an intentional special color effect as the Target Values. The user feedback mechanism as described hereby could also be used to affect the weighting schemes, the threshold parameters in the micro-architecture of automatic white balance control apparatus, and for example, the parameters in the transform function to convert the Intrinsic Values to the Target Values. A simple flow chart is illustrated in FIG. 15.
Although the above described preferred embodiments are focused on automatic white balance for the Front-Side Camera Platform, the automatic white balance methods and apparatus described herein are applicable to other type of electronic media devices as well. For example, it is common the back side camera of a mobile phones or a digital camera has a Set Timer Mode for taking shots of self-portrait. Another example is the back-side camera or a digital camera can use a user's face as a reference for automatic white balance if the user's face is in the view and the facial color profile of the user has been acquired in an accessible The Facial Color Features Set. Moreover, the device accommodates an integrated and a distributed implementation schemes, wherein the integrated implementation scheme accomplishes the method in one single device of a Front Side Camera Platform, while the distributed implementation scheme accomplishes the method by more than one devices with at least one device having at least a camera having a front-side operational mode, wherein for example, the image or images captured by a first front-side camera device could be sent to a second separate or deferent type of device to be processed to extract The Facial Color Features Set, and the acquired Facial Color Features Set could be used by the second device or sent back to the first device or a third separate or deferent type of device to conduct illuminant estimation and white balance adjustments. The automatic white balance method in this disclosure could also be accomplished by software in one or mode devices receiving images not in real time using the methods described above. Except for image capture requiring a camera, other devices may or may not have a camera, including for example TV set, display devices, game devices, computers, image or video compression or encoding devices and network transmission devices.
While in a preferred embodiment described in FIG. 2, the frame buffer memory storage and related automatic white balance processing is carried out by computational resources in RGB space, it could also be implemented in Bayer domain or in a distributed scheme within the ISP, or as a post-processing block as illustrated in FIG. 4, or offline in a different image media device.
In most of the generic ISP of camera devices, the automatic white balance control apparatus comprise electronic digital circuitry based pixel computation (i.e. hardware) for pixel color statistics collection engine, gain offset, CCM multipliers and more in the ISP pipeline, while programmable processor or DSP device based (i.e. firmware) computation are responsible for illuminant estimation, gain offset calculation, other computational services and overall process control. To accomplish the tasks of face detection, segmentation and recognition and the automatic white balance methods described in this disclosure requires proper arrangement of the resources. The more dedicated computing resources, and the faster processors or DSPs, the faster processing speed, better image quality and less latency, but the cost and power consumption are also higher. The computational complexity could increase significantly if there are more than one users in the view as in a Multiple User Mode. In that case, one option is to prioritize the user entries in The Facial Color Features Set and add a Priority Index Field in the data structure of The Facial Color Features Set, and conduct automatic white balance with higher priority in favor of the user entries with higher priority ranks. The OWNER or the user could also select a Multiple User Mode or Single User Mode to avoid the conflict. Taking a mobile phone device for example, the OWNER usually is the only user and naturally would like that he or she to be best expressed in the image so as to his or her own satisfaction by selecting a Single User Mode. On occasion such as taking a shot of family gathering, it would please all if each member is satisfied, and Multiple User Mode could be selected with the same priority rank allover, which would lead to a multiple user concurrent processing. Obviously, it would take more resources, power and time to finish the automatic white balance than for a single user. So there is a trade-off between performance and cost, as it could be seen from the flow chart in FIG. 2 and FIG. 3.
However, as it is indicated earlier, both face detection and recognition have been running on imaging devices such as cameras of some mobile phones, accomplishing the increased computational load as a result of the automatic white balance methods described in this disclosure should be feasible, and particularly for the example embodiment using C3 to apply unified gain offset to the entire image. As an expedite implementation, firmware based realization of automatic white balance methods disclosed herein for still image capture is doable only at the cost of some additional latencies.
The illuminant estimation by the front-side camera could be useful to automatic white balance for the back-side camera, when it works in a slave mode. The back-end camera can issue a system request to the System Controller for the front-side camera to assist its illuminant estimation. The System Controller endorses if there is no conflict in system resource and the front-side camera and back-side work concurrently. This operational mode will benefit situations where the confidence level for the illumination of the back-side camera is low, and the illumination of both cameras are the same or correlated, including the following conditions for example: The fields of view of both cameras are both indoor or outdoor; The distance of fields of view of both cameras is close; The color profile of light source detected by the front-side camera is the same or close to the illuminant estimation by the back-side camera, and The illuminant estimation of both cameras are the same or close. The back-side camera and front-side could work concurrently as a normal operation mode or intermittently on a per need basis. When the user is not operating the front-side camera, the front-side camera does not have to conduct automatic white balance gain adjustment and other downstream ISP processing to reduce power consumption.
The Intrinsic Values of The Facial Color Features Set acquired could serve as a complementary or an independent feature Set for face recognition and be fed back into the face recognition module of the platform as illustrated in FIG. 16, and it is also usable in other face recognition related applications, such as video surveillance and Internet image and video searching.
While ordinary professional of the skill in this field should be able to come up with a variety of practical implementation schemes tailored to the different embodiments of the automatic white balance methods and framework disclosed hereby, it is the intention of the applicant that the following claims include all modifications and alterations that they come within the scope of the following claims or the equivalents thereof.

Claims (35)

What is claimed is:
1. A method of automatic white balance illuminant estimation referencing facial color features for a color processing of image and and/or video media in an one or more electronic media device, devices comprising the steps of:
acquiring one or a plurality of digital images of scenes including a face of a user or users of the device, including: capturing a digital image or images of a user or users using a lens and image sensor, receiving a digital image or images of a user or users after capturing using a lens and image sensor, or a combination of the capturing and receiving steps;
acquiring a facial color features set of the user or users including intrinsic values and target values of the color profiles of a skin tone portion, eye ball white and teeth by a color profile extraction process;
acquiring a digital image;
conducting face detection, segmentation and recognition on the digital image, wherein if a recognized face is the face of a user matching a user entry in the facial color features set; conducting illuminant estimation based on segmented facial features and the acquired facial color features set resulting in C2, based on parts of the image other than the segmented facial parts features, resulting in C1, and determining a final estimation, C3, based on C1 and C2; and
conducting automatic white balance gain adjustment and color enhancement based on C1, C2, C3, and the acquired facial color features set of the user or users
acquiring a facial color features set of one or more users;
acquiring a digital image;
identifying successfully a face in the digital image matching the face of a user, wherein data of facial color features of the user have been acquired in the facial color features set;
acquiring data of facial color profile of at least one facial part of facial skin tone area, eye ball white and teeth from the face of the user in the digital image;
conducting an illuminant estimation of the face of the user in the digital image based on the acquired data of facial color profile of the at least one facial part of the facial skin tone area, eye ball white and teeth from the face of the user in the digital image referencing data of facial color features of the user in the facial color features set.
2. The method of claim 1, further comprising an integrated implementation scheme and distributed implementation schemes, wherein:
the integrated implementation scheme accomplishes the method of claim 1 in a single device having at least a camera in a front-side operational mode, including a mobile phone, a digital camera a camcorder, a laptop computer, a desktop computer, a desk or mobile computing or communication device, and a color imaging device, and
the distributed implementation scheme accomplishes the method of claim 1 by more than one devices with at least one device having at least a camera in an front-side operational mode, wherein the step of capturing a digital image or images is carried out in a first device, acquiring the facial color features set is carried out in a second device, and conducting the illuminant estimation, the automatic white balance gain adjustment, and the color enhancement is carried out in a third device, or another combination of devices.
3. The method of claim 1, wherein the step of acquiring a facial color features set comprises:
capturing an image including a face of a user under a set of standard reference illuminations of known color profiles or capturing an image including a face of a user and using a standard reference gray chart in a variety of common shooting conditions and determining illumination profiles of the shooting conditions by analyzing the gray chart;
conducting face detection, segmentation, and contour location of face skin, the eyeball white and the teeth;
extracting the intrinsic values of the facial color features set of the face skin, the eyeball white and the teeth by averaging pixels in each segment after filtering the pixels using a luminance threshold filter and a histogram-based color filter;
extracting the target values of the facial color features by applying the capturing step, conducting step, and intrinsic value extracting step to images enhanced by user choice, user adjustment, or a combination of user choice and user adjustment, using a user-device interface and transform functions corresponding to the user-choice and/or user-adjustment operations performed on the captured image.
4. The method of claim 1, wherein the step of acquiring a facial color features set comprises a machine learning mode, wherein the machine learning mode is activated or re-activated by a user or a system service routine, and one or more processors:
start illuminant estimation of C1 in an unsupervised learning mode;
if a certain illuminant estimation, C10, has a confidence level, w1, higher than a threshold, wt, conduct face detection, segmentation recognition of a buffered image, and if a face of a user matches a user entry in the facial color features set, locate the contours of the face skin, the eyeball white and the teeth, extract the intrinsic values of the facial color features of the face skin, the eyeball white and the teeth by averaging pixels after filtering using a first luminance threshold filter and a second histogram-based color filter, and store the intrinsic values data in a candidate buffer;
if for the illuminant estimation C10, the differences between the intrinsic values stored in the candidate buffer are smaller than a threshold with a repetitive appearance probability, P1, which is bigger than a threshold Pit, the illuminant estimation C10 is considered accurate, and an average of the intrinsic values within the difference threshold stored in the candidate buffer is computed and added into a related intrinsic values position of the user entry in the facial color features set;
in a supervised learning mode, display, on a display device, an image after automatic white balance adjustments adjusting the image color under the illumination estimated by C10 to under a standard reference illumination or a user-favored illumination condition followed by color correction, and use a user-machine interactive interface to prompt for and acquire user's opinion about a color rendition of the image;
if the user confirms that the color rendition is satisfactory, extract intrinsic values of the user under the estimated illumination, C10, using the same procedure described in the unsupervised learning mode and add the intrinsic values to the related intrinsic values position of the user entry in the facial color features set;
in a mode combining the supervised and unsupervised learning procedures, after assessing the accuracy of the illuminant estimation, C10, in the unsupervised learning mode, conduct a further evaluation using the same procedure described in the supervised learning mode to confirm the accuracy of illuminant estimation, C10, before related intrinsic values data are added to the facial color features set;
acquire the target values data in the supervised learning mode by displaying enhanced images or provide a mechanism for the user to adjust the captured image under the illumination estimated by C10, or a combination thereof, and prompt for and acquire input from the user;
extract the target values of the facial color features based on user input using the same procedure described in the unsupervised learning mode, and add the target values together with transform functions corresponding to operations on captured image based on user input to the related position of the user entry in the facial color features set; and
complete the learning process after the acquired data in the user entry of the facial color features set cover a sufficient range of color profiles as needed for automatic white balance, and illuminant estimation and automatic white balance adjustments could be carried out using the acquired data in the facial color features set.
5. The method of claim 1, wherein the step of illuminant estimation comprises a specific implementation method comprising the steps of:
using a (B/G, R/G) chromaticity coordinate system for illuminants with a black body radiation color profile;
calculating illuminant estimation, C1;
ib denoting a pixel in an image background and in an RGB color space, with its R, G, and B components represented by rib, gib, bib respectively, the total number of pixels of the image background portion denoted by T1, calculating illuminant estimation for the background, {tilde over (C)}1, given by coordinates;
C _ 1 = ( 1 T 1 α ib * ( r ib g ib ) ( ( 1 T 1 α ib ) * T 1 ) , 1 T 1 α ib * ( b ib g ib ) ( ( 1 T 1 α ib ) * T 1 ) ) ,
wherein αib is a weighting coefficient, depending upon the luminance and the coordinates of ib;
projecting {tilde over (C)}1 to a nearest reference point in a white point line, or a segment formed by the nearest two reference points in the white point line, selecting whichever junction is nearest, wherein the junction is C1;
calculating C2 by considering each facial segment as an independent surface, assuming ifj to be a pixel on the facial segment and index, j, denoting a row number of a facial segment in the user entry in the facial color features set, wherein j=1 for a skin segment, j=2 for eyeball white, and j=3 for teeth, and calculating estimated averaged coordinates corresponding to the skin segment by,
C _ 2 f 1 = ( i = 1 T 2 f 1 ( b i f 1 g i f 1 ) * β i f 1 i = 1 T 2 f 1 β i f 1 * T 2 f 1 , i = 1 T 2 f 1 ( r i f 1 g i f 1 ) * β i f 1 i = 1 T 2 f 1 β i f 1 * T 2 f 1 ) ,
wherein coefficient, βf1, is a weighting coefficient, depending upon a luminance, and the coordinates of ifj, T2 f1 , is the total number of pixels of the skin segment;
projecting {tilde over (C)}2 f1 to a nearest reference point in a reference skin color fine, or a segment formed by the nearest two reference points in the skin color line, selecting whichever junction is nearest, wherein the junction is C2 f1 ;
calculating the rest of the facial segments, C2 f2 and C2 f3 using the same method as that for C2 f1 ;
as each point on its respective color temperature curve corresponding to an estimated color temperature of a canonical illuminant on the white point line, C2 f1 , C2 f2 and C2 f3 are mapped to C′2 f1 , C′2 f2 and C′2 f3 respectively by a look-up table operation followed by a linear interpolation between neighboring reference points, and the overall illuminant estimation, C2, computed from the three facial segments is given by
C 2 = j = 1 3 C 2 fj * θ j j = 1 3 θ j ,
wherein θj is a confidence related weighted factor;
computing the overall illuminant estimation by

C3=(C1*k1+C2*k2)/(k1+k2),
wherein k1 and k2 are weighting factors; and
for some artificial light sources with color profiles different from that of the black body radiation, requiring color profile adjustment in addition to color temperature adjustment, letting C1={tilde over (C)}1, with no projection toward the white point line, the same applying for the C2 calculation.
6. The method in claim 1, wherein the step of automatic white balance gain adjustment and color enhancement comprises:
applying a same gain offset for the entire image and using C3 as a user-preferred illuminant estimation and a pre-defined standard reference color profile;
assuming C3 being represented by a coordinate set (R1, G, B1) in RGB space, multiplying the R and B color component of each pixel of the image by a factor G/R1 and G/B1 respectively; and
applying color correction after automatic white balance gain adjustment by a 3*3 color correction matrix with constant coefficients, expressed as [R′, G′, B′]=A*[R,G,B]T.
7. The method of claim 1, wherein the step of automatic white balance gain adjustment and color enhancement comprises:
adjusting the facial segments and a naked skin tone area under illuminant estimation, C2, to a user-preferred target position defined as the target values in the user entry of the facial color features set; and color of the rest of the image illuminant estimation, C1, to under a standard reference illumination position, by a first procedure comprising the steps of:
looking up for in the facial color features set and applying to the facial area and the naked skin tone area the same transform function as in the process transforming the original captured image to the enhanced image, with adjusted parameters in the function for a rendered image to match the target values corresponding to illuminant estimation, C2;
adjusting color of the rest of the image under illuminant estimation, C1, to under a standard reference illumination position;
smoothing boundaries where heterogeneous adjustments occur;
or by a second procedure comprising the steps of:
assuming Rcurrent, Bcurrent and Gcurrent as the estimated skin tone under current illuminant estimation by C2 and Rref, Bref and Gref to be current target values for face skin corresponding to C2, calculating
R_gain = R ref R current , B_gain = B ref B current , and G_gain = G ref G current ;
multiplying the R, G, and B components of each pixel of the facial skin by R_gain, B_gain and G_gain respectively;
in case to avoid luminance level fluctuation artifacts in the facial boundaries, converting the pixels in the face skin area to HSL color space, wherein adjusting the color saturation and hue of the pixels to those of the desired target values, without changing L, by the following procedure:
assuming under current illuminant estimation, a luminance and color weighted average of all pixels of the image and the target value in HSL color space being represented as (Hcurrent, Scurrent, Lcurrent) and (Href, Sref, Lref), respectively, calculating

ΔH=Href−Hcurrent;

ΔS=Sref−Scurrent;
adjusting the color of each pixel (hcurrent0, Scurrent0, lcurrent0) by

hcurrent1=hcurrent0+(γ*ΔH);

Scurrent1=Scurrent0+(θ*ΔS);
wherein γ and θ are luminance and color dependent factors and hcurrent1 and scurrent1 are adjusted color values for each pixel;
detecting naked skin of the user and rendering the color of the detected naked skin using the same way as for facial skin tone;
using the same way as for the facial skin tone; converting the adjusted pixels back to RGB space;
locating the contours of the eyeball white and the teeth;
adjusting the color of the eyeball white and the teeth to the target values of eyeball white and the teeth respectively corresponding to C2 using the same way as in the second procedure for the skin tone; and
smoothing the boundaries between areas of heterogeneous color adjustments.
8. An electronic media device comprises: one or more cameras with at least one camera working in a front-side operational mode; one or more processors with one working as a system controller controlling system operation of the electronic media device; non-transitory memory storage media containing instructions readable by the one or more processors; memory storage media module accessible by the one or more processors to store data and execute the controlling instructions; an apparatus with mechanisms to receive, store or output images, videos and other data; a display device being able to display images, videos and graphics content; a user controllable interactive interface to the electronic media device that takes in the user control input so that the system controller understands and properly responds to the user intention; an automatic white balance control apparatus in the camera working in the front-side operational mode incorporating an automatic white balance method comprising the steps of:
acquiring one or a plurality of digital images of scenes including a face of a user or users of the device, including: capturing a digital image or images of a user or users using a lens and image sensor, receiving a digital image or images of a user or users after capturing using a lens and image sensor, or a combination of the capturing and receiving steps;
acquiring a facial color features set of the user or users including intrinsic values and target values of the color profiles of a skin tone portion, eye ball white and teeth by a color profile extraction process;
acquiring a digital image;
conducting face detection, segmentation and recognition on the digital image, wherein if a recognized face is the face of a user matching a user entry in the facial color features set, conducting illuminant estimation based on segmented facial features and the acquired facial color features set resulting in C2, based on parts of the image other than the segmented facial parts features, resulting in C1, and determining a final estimation, C3, based on C1 and C2; and
conducting automatic white balance gain adjustment and color enhancement based on C1, C2, C3, and the acquired facial color features set of the user or users.
9. The electronic media device of claim 8, wherein the automatic white balance method further comprises an integrated implementation scheme and distributed implementation schemes, wherein:
the integrated implementation scheme accomplishes the method of claim 8 in a single device having at least a camera in a front-side operational mode, including a mobile phones, a digital camera, a camcorder, a laptop computer, and a desktop computer, a desk or mobile computing or communication device, and a color imaging device, and
the distributed implementation scheme accomplishes the method of claim 1 by more than one devices with at least one device having at least a camera in an front-side operational mode, wherein the step of capturing a digital image or images is carried out in a first device, acquiring the facial color features set is carried out in a second device, and conducting the illuminant estimation, the automatic white balance gain adjustment, and the color enhancement is carried out in a third device, or another combination of devices.
10. The electronic media device of claim 8, wherein the steps of acquiring a facial color features set comprises:
capturing an image including a face of a user under a set of standard reference illuminations of known color profiles or capturing an image including a face of a user and using a standard reference gray chart in a variety of common shooting conditions and determining illumination profiles of the shooting conditions by analyzing the gray chart;
conducting face detection, segmentation, and contour location of face skin, the eyeball white and the teeth;
extracting the intrinsic values of the facial color features set of the face skin, the eyeball white and the teeth by averaging pixels in each segment after filtering the pixels using a luminance threshold filter and a histogram-based color filter;
extracting the target values of the facial color features by applying the capturing step, conducting step, and intrinsic value extracting step to images enhanced by user choice, user adjustment, or a combination of user choice and user adjustment, using a user-device interface and transform functions corresponding to the user-choice and/or user-adjustment operations performed on the captured image.
11. The electronic media device of claim 8, wherein the step of acquiring a facial color features set comprises a machine learning mode, wherein the machine learning mode is activated or re-activated by a user or a system service routine, and one or more processors:
start illuminant estimation of C1 in an unsupervised learning mode;
if a certain illuminant estimation, C10, has a confidence level, w1, higher than a threshold, w1, conduct face detection, segmentation recognition of a buffered image, and if a face of a user matches a user entry in the facial color features sets locate the contours of the face skin, the eyeball white and the teeth, extract the intrinsic values of the facial color features of the face skin, the eyeball white and the teeth by averaging pixels after filtering using a first luminance threshold filter and a second histogram-based color filter, and store the intrinsic values data in a candidate buffer;
if for the illuminant estimation C10, the differences between the intrinsic values stored in the candidate buffer are smaller than a threshold with a repetitive appearance probability, P1, which is bigger than a threshold P1t, the illuminant estimation C10 is considered accurate, and an average of the intrinsic values within the difference threshold stored in the candidate buffer is computed and added into a related intrinsic values position of the user entry in the facial color features set;
in a supervised learning mode, display, on a display device, an image after automatic white balance adjustments adjusting the image color under the illumination estimated by C10 to under a standard reference illumination or a user-favored illumination condition followed by color correction, and use a user-machine interactive interface to prompt for and acquire user's opinion about a color rendition of the image;
if the user confirms that the color rendition is satisfactory, extract intrinsic values of the user under the estimated illumination, C10, using the same procedure described in the unsupervised learning mode and add the intrinsic values to the related intrinsic values position of the user entry in the facial color features set;
in a mode combining the supervised and unsupervised learning procedures, after assessing the accuracy of the illuminant estimation, C10, in the unsupervised learning mode, conduct a further evaluation using the same procedure described in the supervised learning mode to confirm the accuracy of illuminant estimation, C10, before related intrinsic values data are added to the facial color features set;
acquire the target values data in the supervised learning mode by displaying enhanced images or provide a mechanism for the user to adjust the captured image under the illumination estimated by C10, or a combination thereof, and prompt for and acquire input from the user;
extract the target values of the facial color features based on user input using the same procedure described in the unsupervised learning mode, and add the target values together with transform functions corresponding to operations on captured image based on user input to the related position of the user entry in the facial color features set; and
complete the learning process after the acquired data in the user entry of the facial color features set cover a sufficient range of color profiles as needed for automatic white balance, and illuminant estimation and automatic white balance adjustments could be carried out using the acquired data in the facial color features set.
12. The electronic media device of claim 8, wherein the step of illuminant estimation comprises a specific implementation method comprising the steps of:
using a (B/G, R/G) chromaticity coordinate system for illuminants with a black body radiation color profile;
calculating illuminant estimation, C1;
ib denoting a pixel in an image background and in an RGB color space, with its R, G, and B components represented by rib, gib, bib respectively, the total number of pixels of the image background portion denoted by T1, calculating illuminant estimation for the background, {tilde over (C)}1, given by coordinates,
C _ 1 = ( 1 T 1 α ib * ( r ib g ib ) ( ( 1 T 1 α ib ) * T 1 ) , 1 T 1 α ib * ( b ib g ib ) ( ( 1 T 1 α ib ) * T 1 ) ) ,
wherein αib is a weighting coefficient, depending upon the luminance and the coordinates of ib;
projecting {tilde over (C)}1 to a nearest reference point in a white point line, or a segment formed by the nearest two reference points in the white point line, selecting whichever junction is nearest, wherein the junction is C1;
calculating C2 by considering each facial segment as an independent surface, assuming ifj to be a pixel on the facial segment and index, j, denoting a row number of a facial segment in the user entry in the facial color features set, wherein j=1 for a skin segment, j=2 for eyeball white, and j=3 for teeth, and calculating estimated averaged coordinates corresponding to the skin segment by,
C _ 2 f 1 = ( i = 1 T 2 f 1 ( b i f 1 g i f 1 ) * β i f 1 i = 1 T 2 f 1 β i f 1 * T 2 f 1 , i = 1 T 2 f 1 ( r i f 1 g i f 1 ) * β i f 1 i = 1 T 2 f 1 β i f 1 * T 2 f 1 ) ,
wherein coefficient, βf1, is a weighting coefficient, depending upon a luminance, and the coordinates of ifj, T2 f1 is the total number of pixels of the skin segment;
projecting {tilde over (C)}2 f1 to a nearest reference point in a reference skin color line, or a segment formed by the nearest two reference points in the skin color line, selecting whichever junction is nearest, wherein the junction is C2 f1 ;
calculating the rest of the facial segments, C2 f2 and C2 f3 using the same method as that for C2 f1 ;
as each point on its respective color temperature curve corresponding to an estimated color temperature of a canonical illuminant on the white point line, C2 f1 , C2 f2 and C2 f3 are mapped to C′2 f1 , C′2 f2 and C′2 f3 respectively by a look-up table operation followed by a linear interpolation between neighboring reference points, and the overall illuminant estimation, C2, computed from the three facial segments is given by
C 2 = j = 1 3 C 2 fj * θ j j = 1 3 θ j ,
wherein θj is a confidence related weighted factor;
computing the overall illuminant estimation by

C3=(C1*k1+C2*k2)/(k1+k2),
wherein k1 and k2 are weighting factors; and
for some artificial light sources with color profiles different from that of the black body radiation, requiring color profile adjustment in addition to color temperature adjustment, letting C1={tilde over (C)}1, with no projection toward the white point line, the same applying for the C2 calculation.
13. The electronic media device of claim 8, wherein the step of automatic white balance gain adjustment and color enhancement comprises:
applying same gain offset for the entire image and using C3 as a user-preferred illuminant estimation and a pre-defined standard reference color profile;
assuming C3 being represented by a coordinate set (R1, G, B1) in RGB space, multiplying the R and B color component of each pixel of the image by a factor G/R1 and G/B1 respectively; and
applying color correction after automatic white balance gain adjustment by a 3*3 color correction matrix with constant coefficients, expressed as [R′, G′, B′]=A*[R,G,B]T.
14. The electronic media device in claim 8, wherein the step of automatic white balance gain adjustment and color enhancement comprises:
adjusting the facial segments and a naked skin tone area under illuminant estimation, C2, to a user-preferred target position defined as the target values in the user entry of the facial color features set; and color of the rest of the image illuminant estimation, C1, to under a standard reference illumination position, by a first procedure comprising the steps of:
looking up for in the facial color features set and applying to the facial area and the naked skin tone area the same transform function as in the process transforming the original captured image to the enhanced image, with adjusted parameters in the function for a rendered image to match the target values corresponding to illuminant estimation, C2;
adjusting color of the rest of the image under illuminant estimations, C1, to under a standard reference illumination position;
smoothing boundaries where heterogeneous adjustments occur;
or by a second procedure comprising the steps of:
assuming Rcurrent, Bcurrent and Gcurrent as the estimated skin tone under current illuminant estimation by C2 and Rref, Bref and Gref to be current target values for face skin corresponding to C2, calculating
R_gain = R ref R current , B_gain = B ref B current , and G_gain = G ref G current ;
multiplying the R, G, and B components of each pixels of the facial skin by R_gain, B_gain and G_gain respectively;
in case to avoid luminance level fluctuation artifacts in the facial boundaries, converting the pixels in the face skin area to HSL color space, wherein adjusting the color saturation and hue of the pixels to those of the desired target values, without changing L, by the following procedure:
assuming under current illuminant estimation, a luminance and color weighted average of all pixels of the image and the target value in HSL color space being represented as (Hcurrent, Scurrent, Lcurrent) and (Href, Sref, Lref), respectively, calculating

ΔH=Href−Hcurrent;

ΔS=Sref−Scurrent;
adjusting the color of each pixel (hcurrent0, Scurrent0, lcurrent0) by

hcurrent1=hcurrent0+(γ*ΔH);

Scurrent1=Scurrent0+(θ*ΔS);
wherein γ and θ are luminance and color dependent factors and hcurrent1 and scurrent1 are adjusted color values for each pixel;
detecting naked skin of the user and rendering the color of the detected naked skin using the same way as for facial skin tone;
using the same way as for the facial skin tone; converting the adjusted pixels back to RGB space;
locating the contours of the eyeball white and the teeth;
adjusting the color of the eyeball white and the teeth to the target values of eyeball white and the teeth respectively corresponding to C2 using the same way as in the second procedure for the skin tone; and
smoothing the boundaries between areas of heterogeneous color adjustments.
15. The electronic media device in claim 8, wherein the automatic white balance method comprises a prioritized multiple user operational mode, wherein: an owner or an administrator or a service routine of the device sets a priority rank number associated with each user entry in the facial color features set, so that the automatic white balance adjustment and color enhancement is biased to render image quality in an order favoring users with higher priority rank numbers when multiple faces of users are recognized in an image.
16. The electronic media device in claim 8, wherein the automatic white balance of the front-side camera comprising an operational mode to work concurrently with and support the automatic white balance illuminant estimation of the back-side camera, wherein:
the back-side camera requires the assistance of the illuminant estimation by the front-side camera through a service request to the system controller, and the system controller endorses the request when no resource or application conflict is found, and if the front-side camera is not in use by the user, launches the front-side camera, and the front-side camera conducts illuminant estimation and outputs the illuminant estimation results to the back-side camera; the back-side camera uses the illuminant estimation results by the front-side camera as a reference for illuminant estimation by the back-side camera in situations comprising:
the fields of view of both cameras are both indoor or outdoor;
the distances of fields of view of both cameras are close to the device;
the color profile of light source detected by the front-side camera is the same or close to the illuminant estimation by the back-side camera;
the confidence level for illuminant estimation by the back-side camera is too low; the illuminant estimation of both cameras are the same or close, or a combination thereof.
17. One or more non-transitory program storage devices, containing instructions readable by one or more processors for causing the one or more processors to perform a method of automatic white balance, comprising the steps of:
acquiring one or a plurality of digital images of scenes including a face of a user or users of the device, including: capturing a digital image or images of a user or users using a lens and image sensor, receiving a digital image or images of a user or users after capturing using a lens and image sensor, or a combination of the capturing and receiving steps;
acquiring a facial color features set of the user or users including intrinsic values and target values of the color profiles of a skin tone portion, eye ball white and teeth by a color profile extraction process;
acquiring a digital image;
conducting face detection, segmentation and recognition on the digital image, wherein if a recognized face is the face of a user matching a user entry in the facial color features set, conducting illuminant estimation based on segmented facial features and the acquired facial color features set resulting in C2, based on parts of the image other than the segmented facial parts features, resulting in C1, and determining a final estimation, C3, based on C1 and C2; and
conducting automatic white balance gain adjustment and color enhancement based on C1, C2, C3, and the acquired facial color features set of the user or users.
18. The one or more non-transitory program storage devices of claim 17, wherein the method further comprises an integrated implementation scheme and a distributed implementation scheme, wherein:
the integrated implementation scheme accomplishes the method of claim 1 in a single device having at least a camera in a front-side operational mode, including a mobile phone, a digital camera, a camcorder, a laptop computer, a desktop computer, a desk or mobile computing or communication device, and a color imaging devices, and
the distributed implementation scheme accomplishes the method of claim 17 by more than one devices with at least one device having at least a camera in an front-side operational mode, wherein the step of capturing a digital image or images is carried out in a first device; acquiring the facial color features set is carried out in a second device, and conducting the illuminant estimation, the automatic white balance gain adjustment, and the color enhancement is carried out in a third device, or a combination of the first device, second device, and third device.
19. The one or more non-transitory program storage devices of claim 17, wherein step of acquiring a facial color features set comprises:
capturing an image including a face of a user under a set of standard reference illuminations of known color profiles or capturing an image including a face of a user and using a standard reference gray chart in a variety of common shooting conditions and determining illumination profiles of the shooting conditions by analyzing the gray chart;
conducting face detection, segmentation, and contour location of face skin, the eyeball white and the teeth;
extracting the intrinsic values of the facial color features set of the face skin, the eyeball white and the teeth by averaging pixels in each segment after filtering the pixels using a luminance threshold filter and a histogram-based color filter;
extracting the target values of the facial color features by applying the capturing step, conducting step, and intrinsic value extracting step to images enhanced by user choice, user adjustment, or a combination of user choice and user adjustment, using a user-device interface and transform functions corresponding to the user-choice and/or user-adjustment operations performed on the captured image.
20. The one or more non-transitory program storage devices of claim 17, wherein the step of acquiring a facial color features set comprises:
capturing an image including a face of a user under a set of standard reference illuminations of known color profiles or capturing an image including a face of a user and using a standard reference gray chart in a variety of common shooting conditions and determining illumination profiles of the shooting conditions by analyzing the gray chart;
conducting face detection, segmentation, and contour location of face skin, the eyeball white and the teeth;
extracting the intrinsic values of the facial color features set of the face skin, the eyeball white and the teeth by averaging pixels in each segment after filtering the pixels using a luminance threshold filter and a histogram-based color filter;
extracting the target values of the facial color features by applying the capturing step, conducting step, and intrinsic value extracting step to images enhanced by user choice, user adjustment, or a combination of user choice and user adjustment, using a user-device interface and transform functions corresponding to the user-choice and/or user-adjustment operations performed on the captured image.
21. The one or more non-transitory program storage devices of claim 17, wherein the step of illuminant estimation comprises a specific implementation method comprising the steps of:
using a (B/G, R/G) chromaticity coordinate system for illuminants with a black body radiation color profiles;
calculating illuminant estimation, C1;
ib denoting a pixel in an image background and in an RGB color space, with its R, G, and B components represented by rib, gib, bib respectively, the total number of pixels of the image background portion denoted by T1, calculating illuminant estimation for the background, {tilde over (C)}1, given by coordinates;
C _ 1 = ( 1 T 1 α ib * ( T 1 g ib ) ( ( 1 T 1 α ib ) * T 1 ) , 1 T 1 α ib * ( b ib g ib ) ( ( 1 T 1 α ib ) * T 1 ) ) ,
wherein αib is a weighting coefficient, depending upon the luminance and the coordinates of ib;
projecting {tilde over (C)}1 to a nearest reference point in a white point line, or a segment formed by the nearest two reference points in the white point line, selecting whichever junction is nearest, wherein the junction is C1;
calculating C2 by considering each facial segment as an independent surface, assuming ifj to be a pixel on the facial segment and index, j, denoting a row number of a facial segment in the user entry in the facial color features set, wherein j=1 for a skin segment, j=2 for eyeball white, and j=3 for teeth, and calculating estimated average coordinates corresponding to the skin segment by,
C _ 2 fi = ( i = 1 T 2 f 1 ( b i f 1 g i f 1 ) * β i f 1 i = 1 T 2 f 1 β i f 1 * T 2 f 1 , i = 1 T 2 f 1 ( r i f 1 g i f 1 ) * β i f 1 i = 1 T 2 f 1 β i f 1 * T 2 f 1 ) ,
wherein coefficient, βf1, is a weighting coefficient, depending upon a luminance and the coordinates of ifj, T2 f1 is the total number of pixels of the skin segment;
projecting {tilde over (C)}2 f1 to a nearest reference point in a reference skin color line, or a segment formed by the nearest two reference points in the skin color line, selecting whichever junction is nearest, wherein the junction is C2 f1 ;
calculating the rest of the facial segments, C2 f2 and C2 f3 using the same method as that for C2 f1 ;
as each point on its respective color temperature curve corresponding to an estimated color temperature of a canonical illuminant on the white point line, C2 f1 , C2 f2 and C2 f3 are mapped to C′2 f1 , C′2 f2 and C′2 f3 respectively by a look-up table operation followed by a linear interpolation between neighboring reference points, and the overall illuminant estimation, C2, computed from the three facial segments is given by
C 2 = j = 1 3 C 2 fj * θ j j = 1 3 θ j .
wherein θj is a confidence related weighted factor;
computing the overall illuminant estimation by

C3=(C1*k1+C2*k2)/(k1+k2),
wherein k1 and k2 are weighting factors; and
for some artificial light sources with color profiles different from that of the black body radiation, requiring color profile adjustment in addition to color temperature adjustment, letting C1={tilde over (C)}1, with no projection toward the white point line, the same applying for the C2 calculation.
22. The one or more non-transitory program storage devices of claim 17, wherein the step of automatic white balance gain adjustment and color enhancement comprises:
applying a same gain offset for the entire image; and using C3 as a user-preferred illuminant estimation and a pre-defined standard reference color profile;
assuming C3 being represented by a coordinate set (R1, G, B1) in RGB space, multiplying the R and B color component of each pixel of the image by a factor G/R1 and G/B1 respectively; and
applying color correction after automatic white balance gain adjustment by a 3*3 color correction matrix with constant coefficients, expressed as [R′, G′, B′]=A*[R,G,B]T.
23. The one or more non-transitory program storage devices of claim 16, wherein the step of automatic white balance gain adjustment and color enhancement comprises:
adjusting the facial segments and a naked skin tone area under illuminant estimation, C2, to a user-preferred target position defined as the target values in the user entry of the facial color features set; and color of the rest of the image illuminant estimation, C1, to under a standard reference illumination position, by a first procedure comprising the steps of:
looking up for in the facial color features set and applying to the facial area and the naked skin tone area the same transform function as in the process transforming the original captured image to the enhanced image, with adjusted parameters in the function for a rendered image to match the target values corresponding to illuminant estimation, C2;
adjusting color of the rest of the image under illuminant estimation, C1, to under a standard reference illumination position;
smoothing boundaries where heterogeneous adjustments occur;
or by a second procedure comprising the steps of:
assuming Rcurrent, Bcurrent and Gcurrent as the estimated skin tone under current illuminant estimation by C2 and Rref, Bref and Gref to be current target values for face skin corresponding to C2, calculating
R_gain = R ref R current , B_gain = B ref B current , and G_gain = G ref G current ;
multiplying the R, G, and B components of each pixels of the facial skin by R_gain, B_gain and G_gain respectively;
in case to avoid luminance level fluctuation artifacts in the facial boundaries, converting the pixels in the face skin area to HSL color space, wherein adjusting the color saturation and hue of the pixels to those of the desired target values, without changing L, by the following procedure:
assuming under current illuminant estimation, a luminance and color weighted average of all pixels of the image and the target value in HSL color space being represented as (Hcurrent, Scurrent, Lcurrent) and (Href, Sref, Lref), respectively, calculating

ΔH=Href−Hcurrent;

ΔS=Sref−Scurrent;
adjusting the color of each pixel (hcurrent0, scurrent0, lcurrent0) by

hcurrent1=hcurrent0+(γ*ΔH);

Scurrent1=Scurrent0+(θ*ΔS);
wherein γ and θ are luminance and color dependent factors and hcurrent1 and scurrent1 are adjusted color values for each pixel;
detecting naked skin of the user and rendering the color of the detected naked skin using the same way as for facial skin tone;
using the same way as for the facial skin tone; converting the adjusted pixels back to RGB space;
locating the contours of the eyeball white and the teeth;
adjusting the color of the eyeball white and the teeth to the target values of eyeball white and the teeth respectively corresponding to C2 using the same way as in the second procedure for the skin tone; and
smoothing the boundaries between areas of heterogeneous color adjustments.
24. The method of claim 1, wherein the color processing further comprises the steps of:
conducting an illuminant estimation of other parts than the face of the user in the digital image;
conducting an illuminant estimation of the entire digital image based on the illuminant estimation of the face of the user and the illuminant estimation of the other parts than the face of the user in the digital image;
conducting an automatic white balance gain adjustment and/or a color correction and/or a color enhancement of the digital image based on the illuminant estimations.
25. The method of claim 1 or claim 24, comprising an integrated implementation scheme or a distributed implementation scheme, wherein
the integrated implementation scheme accomplishes all the steps in a single electronic media device having at least a camera in a frontside operational mode, and
the distributed implementation scheme accomplishes all the steps in a plurality of electronic media devices.
26. The method of claim 1, wherein the acquiring a facial color features set comprises being initiated and re-initiable by a user and/or a service routine, comprising one or more of the following Procedures:
Procedure 1:
acquiring an image including a face of a user under each of a set of standard reference illuminations of known color profiles;
conducting face detection and segmentation of facial skin tone area eyeball white and teeth of the face of the user;
extracting data of color profiles including coordinates in a color space of the facial skin tone area, eyeball white and teeth from the face of the user;
Procedure 2:
acquiring an image including a face of a user and a reference gray chart in a variety of common shooting conditions and determining a color profile of an illumination in each of the shooting conditions by analyzing the reference gray chart;
corresponding to the determined color profile of the illumination in each of the shooting conditions,
conducting a face detection and segmentation of facial skin tone area, eyeball white and teeth of the face of the user;
extracting data of color profiles including coordinates in a color space of the facial skin tone area, eyeball white and teeth from the face of the user;
Procedure 3:
acquiring at least one set of data of color profile including coordinates in a color space of facial skin tone area of a user through Procedure 1 or Procedure 2, wherein the face of the user is illuminated by an illumination of a known or determined color profile;
conducting an extrapolation within human facial skin tone statistical distribution trajectory in a color space to obtain more data of the color profile of the facial skin tone area of the user;
Procedure 4:
acquiring the facial color features set of one or more users a machine learning including from acquired images comprising a face or faces of the one or more users.
27. The method of claim 1 or 24, further comprising a user and/or a service routine on the one electronic media device or one of the electronic media devices setting a priority rank number associated with an entry of a user in the facial color features set, wherein the automatic white balance and/or the color correction and/or the color enhancement are biased in an order favoring the users with highest priority rank numbers when multiple faces of users are identified in an acquired digital image.
28. An electronic media device comprising one or more cameras including at least a front side operational camera, a device controller, one or more processors and/or programmable and/or configurable hardware computational circuitries, control logic circuitries, user-device interfaces, communication modules for receiving or sending digital data, memory storage modules having instructions and data recorded and/or received and/or processed thereon causing the electronic media device to perform a color processing of acquired images and/or videos by the electronic media device comprising the steps of:
acquiring a facial color features set of one or more users;
acquiring a digital image;
identifying successfully a face in the digital image matching the face of a user, wherein data of facial color features of the user have been acquired in the facial color features set;
acquiring data of facial color profile of at least one facial part of facial skin tone area, eye ball white and teeth from the face of the user in the digital image;
conducting an illuminant estimation of the face of the user in the digital image based on the acquired data of facial color profile of the at least one facial part of the facial skin tone area, eye ball white and teeth from the face of the user in the digital image referencing data of facial color features of the user in the facial color features set;
conducting an illuminant estimation of other parts than the face of the user in the digital image;
conducting an illuminant estimation of the entire digital image based on the illuminant estimation of the face of the user and the illuminant estimation of the other parts than the face of the user in the digital image;
conducting an automatic white balance gain adjustment and/or a color correction and/or a color enhancement of the digital image based on the illuminant estimations.
29. The electronic media device of claim 28, wherein the step of acquiring a facial color features set comprises being initiated and re-initiable by a user and/or a service routine of the electronic media device, comprising one or more of the following Procedures:
Procedure 1:
acquiring an image including a face of a user under each of a set of standard reference illuminations of known color profiles;
conducting face detection and segmentation of facial skin tone area, eyeball white and teeth of the face of the user;
extracting data of color profiles including coordinates in a color space of the facial skin tone area, eyeball white and teeth from the face of the user;
Procedure 2:
acquiring an image including a face of a user and a reference gray chart in a variety of common shooting conditions and determining a color profile of an illumination in each of the shooting conditions analyzing the reference gray chart;
corresponding to the determined color profile of the illumination in each of the shooting conditions,
conducting a face detection and segmentation of facial skin tone area, eyeball white and teeth of the face of the user;
extracting data of color profiles including coordinates in a color space of the facial skin tone area, eyeball white and teeth from the face of the user;
Procedure 3:
acquiring at least one set of data of color profile including coordinates in a color space of facial skin tone area of a user through Procedure 1 or Procedure 2, wherein the face of the user is illuminated by an illumination of a known or determined color profile;
conducting an extrapolation within human facial skin tone statistical distribution trajectory in a color space to obtain more data of the color profile of the facial skin tone area of the user;
acquiring the facial color features set of one or more users by a machine learning including from acquired images comprising a face or faces of the one or more users.
30. The electronic media device of claim 28, further comprising a user and/or a service routine on the electronic media device setting a priority rank number associated with an entry of a user in the facial color features set, wherein the automatic white balance and/or the color correction and/or the color enhancement are biased in an order favoring the users with highest priority rank numbers when multiple faces of users are identified in an acquired digital image.
31. A method of illuminant estimation referencing color profile of facial skin tone area for a color processing of image and/or video media in one or more electronic media devices comprising the steps of:
acquiring a collection of data of color profile of facial skin tone area of one or more users;
acquiring a digital image;
identifying successfully a face in the digital image matching the face of a user, wherein data of color profile of facial skin tone area of the user have been acquired in the collection of data of color profile of facial skin tone area of at least a user;
acquiring data of color profile of facial skin tone area from the face of the user in the digital image;
conducting illuminant estimation of the face of the user in the digital image based on the acquired data of color profile of the facial skin tone area of the user in the digital image referencing the data of color profile of facial skin tone area of the user in the collection of data of color profile of facial skin tone area of one or more users.
32. The method of claim 31, further comprising the steps of:
conducting an illuminant estimation of other parts than the face of the user in the digital image;
conducting an illuminant estimation of the entire digital image based on the illuminant estimation of the face of the user and the illuminant estimation of the other parts than the face of the user in the digital image;
conducting an automatic white balance pain adjustment and/or a color correction and/or a color enhancement of the digital image based on the illuminant estimations.
33. The method of claim 31 or claim 32, comprises an integrated implementation scheme or a distributed implementation scheme, wherein
the integrated implementation scheme accomplishes all the steps in a single electronic media device having at least a camera in a frontside operational mode, and
the distributed implementation scheme accomplishes all the steps in a plurality of electronic media devices.
34. The method of claim 31, wherein the step of acquiring a collection of data of color profile of facial skin tone area of one or more users comprises being initiated and re-initiable by a user and/or a service routine, comprising one or more of the following Procedures:
Procedure 1:
acquiring an image including a face of a user under each of a set of standard reference illuminations of known color profiles;
conducting face detection and segmentation of facial skin tone area, eyeball white and teeth of the face of the user;
extracting data of color profiles including coordinates in a color space of the facial skin tone area, eyeball white and teeth from the face of the user;
Procedure 2:
acquiring an image including a face of a user and a reference gray chart in a variety of common shooting conditions and determining a color profile of an illumination in each of the shooting conditions by analyzing the reference gray chart;
corresponding to the determined color profile of the illumination in each of the shooting conditions,
conducting a face detection and segmentation of facial skin tone area, eyeball white and teeth of the face of the user;
extracting data of color profiles including coordinates in a color space of the facial skin tone area, eyeball white and teeth from the face of the user;
Procedure 3:
acquiring at least one set of data of color profile including coordinates in a color space of facial skin tone area of a user through Procedure 1 or Procedure 2, wherein the face of the user is illuminated by an illumination of a known or determined color profile;
conducting an extrapolation within human facial skin tone statistical distribution trajectory in a color space to obtain more data of the color profile of the facial skin tone area of the user;
Procedure 4:
acquiring the facial color features set of one or more users a machine learning including from acquired images comprising a face or faces of the one or more users.
35. The method of claim 31 or 32, further comprising a user and/or a service routine on the one electronic media device or one of the electronic media devices setting a priority rank number associated with an entry of a user in the facial color features set, wherein the automatic white balance and/or the color correction and/or the color enhancement are biased in an order favoring the users with highest priority rank numbers when multiple faces of users are identified in an acquired digital image.
US15/466,867 2014-12-10 2017-03-23 Methods and devices of illuminant estimation referencing facial color features for automatic white balance Active 2035-07-14 USRE47960E1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/466,867 USRE47960E1 (en) 2014-12-10 2017-03-23 Methods and devices of illuminant estimation referencing facial color features for automatic white balance

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201410756912.1A CN104468578B (en) 2014-12-10 2014-12-10 The priority traffic system and the means of communication of a kind of wireless telecommunications
US14/691,804 US9565410B2 (en) 2014-12-10 2015-04-21 Automatic white balance with facial color features as reference color surfaces
US15/466,867 USRE47960E1 (en) 2014-12-10 2017-03-23 Methods and devices of illuminant estimation referencing facial color features for automatic white balance

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US14/691,804 Reissue US9565410B2 (en) 2014-11-11 2015-04-21 Automatic white balance with facial color features as reference color surfaces

Publications (1)

Publication Number Publication Date
USRE47960E1 true USRE47960E1 (en) 2020-04-21

Family

ID=52913950

Family Applications (3)

Application Number Title Priority Date Filing Date
US14/691,804 Ceased US9565410B2 (en) 2014-11-11 2015-04-21 Automatic white balance with facial color features as reference color surfaces
US15/466,867 Active 2035-07-14 USRE47960E1 (en) 2014-12-10 2017-03-23 Methods and devices of illuminant estimation referencing facial color features for automatic white balance
US15/469,607 Expired - Fee Related US9999076B2 (en) 2014-06-02 2017-03-27 Mobile surveillance system using a prioritized wireless network communication method

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US14/691,804 Ceased US9565410B2 (en) 2014-11-11 2015-04-21 Automatic white balance with facial color features as reference color surfaces

Family Applications After (1)

Application Number Title Priority Date Filing Date
US15/469,607 Expired - Fee Related US9999076B2 (en) 2014-06-02 2017-03-27 Mobile surveillance system using a prioritized wireless network communication method

Country Status (2)

Country Link
US (3) US9565410B2 (en)
CN (1) CN104468578B (en)

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI566205B (en) * 2012-11-02 2017-01-11 輝達公司 Method for approximating motion blur in rendered frame from within graphic driver
US9525811B2 (en) 2013-07-01 2016-12-20 Qualcomm Incorporated Display device configured as an illumination source
CN105407799B (en) * 2013-07-31 2017-12-26 松下电器(美国)知识产权公司 Skin analysis method, skin analysis device, the control method and recording medium of skin analysis device
CN103489107B (en) * 2013-08-16 2015-11-25 北京京东尚科信息技术有限公司 A kind of method and apparatus making virtual fitting model image
JP6269816B2 (en) * 2014-03-27 2018-01-31 日本電気株式会社 POS terminal, information processing apparatus, white balance adjustment method and program
JP6472336B2 (en) * 2014-06-18 2019-02-20 キヤノン株式会社 Image processing apparatus, image processing method, and program
US11609427B2 (en) 2015-10-16 2023-03-21 Ostendo Technologies, Inc. Dual-mode augmented/virtual reality (AR/VR) near-eye wearable displays
US11106273B2 (en) * 2015-10-30 2021-08-31 Ostendo Technologies, Inc. System and methods for on-body gestural interfaces and projection displays
US10345594B2 (en) 2015-12-18 2019-07-09 Ostendo Technologies, Inc. Systems and methods for augmented near-eye wearable displays
US10578882B2 (en) 2015-12-28 2020-03-03 Ostendo Technologies, Inc. Non-telecentric emissive micro-pixel array light modulators and methods of fabrication thereof
US10353203B2 (en) 2016-04-05 2019-07-16 Ostendo Technologies, Inc. Augmented/virtual reality near-eye displays with edge imaging lens comprising a plurality of display devices
US10453431B2 (en) 2016-04-28 2019-10-22 Ostendo Technologies, Inc. Integrated near-far light field display systems
US10522106B2 (en) 2016-05-05 2019-12-31 Ostendo Technologies, Inc. Methods and apparatus for active transparency modulation
CN105915875B (en) * 2016-06-01 2017-10-13 广东欧珀移动通信有限公司 White balance calibration method and apparatus and its calibration parameter preparation method and device
TWI601091B (en) * 2016-07-13 2017-10-01 國立中興大學 Multiple light sources color balance algorithm
CN106341670B (en) 2016-11-29 2017-09-22 广东欧珀移动通信有限公司 Control method, control device and electronic installation
CN106504218B (en) * 2016-11-29 2019-03-12 Oppo广东移动通信有限公司 Control method, control device and electronic device
CN106454054B (en) 2016-11-29 2019-03-19 Oppo广东移动通信有限公司 Control method, control device and electronic device
JP6825432B2 (en) * 2017-03-13 2021-02-03 富士通株式会社 Analysis program, analysis method and analysis equipment
US10264231B2 (en) 2017-03-31 2019-04-16 The Directv Group, Inc. Dynamically scaling the color temperature and luminance of a display output
JP6677222B2 (en) 2017-06-21 2020-04-08 カシオ計算機株式会社 Detection device, image processing device, detection method, and image processing method
CN107343189B (en) * 2017-07-10 2019-06-21 Oppo广东移动通信有限公司 White balancing treatment method and device
CN107633485B (en) * 2017-08-07 2022-03-25 百度在线网络技术(北京)有限公司 Face brightness adjusting method, device, equipment and storage medium
US11263782B2 (en) 2017-10-11 2022-03-01 Qualcomm Incorporated Image signal processor for processing images
CN108257097A (en) * 2017-12-29 2018-07-06 努比亚技术有限公司 U.S. face effect method of adjustment, terminal and computer readable storage medium
EP3759646A4 (en) 2018-03-02 2021-03-17 Visa International Service Association Dynamic lighting for image-based verification processing
JP6973275B2 (en) * 2018-04-27 2021-11-24 京セラドキュメントソリューションズ株式会社 Image forming device and display device
US10719729B2 (en) * 2018-06-06 2020-07-21 Perfect Corp. Systems and methods for generating skin tone profiles
US10753734B2 (en) 2018-06-08 2020-08-25 Dentsply Sirona Inc. Device, method and system for generating dynamic projection patterns in a confocal camera
GB201809768D0 (en) * 2018-06-14 2018-08-01 Fuel 3D Tech Limited Deformity edge detection
US20200036888A1 (en) * 2018-07-26 2020-01-30 Qualcomm Incorporated Calibration of Automatic White Balancing using Facial Images
CN109005234B (en) * 2018-08-13 2021-03-30 广州大学 Safety probability cache strategy and generation method thereof
CN109685876B (en) 2018-12-21 2020-11-03 北京达佳互联信息技术有限公司 Hair rendering method and device, electronic equipment and storage medium
US11589021B1 (en) * 2018-12-31 2023-02-21 Meta Platforms, Inc. Color correction for video communications using display content color information
JP7253129B2 (en) * 2019-01-07 2023-04-06 ソニー・オリンパスメディカルソリューションズ株式会社 Image processing device and observation system
JP2022529230A (en) * 2019-04-09 2022-06-20 株式会社 資生堂 Systems and methods for creating topical agents with improved image capture
CN110113524A (en) * 2019-04-11 2019-08-09 深圳传音通讯有限公司 User's smart machine and its camera parameter intelligent configuration method based on geographical location
US11496617B2 (en) 2019-07-22 2022-11-08 Jeremy Davis Car surveillance system
US11455535B2 (en) * 2019-08-22 2022-09-27 Mahmoud Afifi Systems and methods for sensor-independent illuminant determination
US10936853B1 (en) 2019-10-04 2021-03-02 Adobe Inc. Skin tone assisted digital image color matching
CN110809120B (en) * 2019-11-01 2021-04-27 深圳创维-Rgb电子有限公司 Light supplementing method for shot picture, smart television and computer readable storage medium
US20230037953A1 (en) * 2020-02-19 2023-02-09 Sony Group Corporation Image processing method and sensor device
JP2021182672A (en) * 2020-05-18 2021-11-25 キヤノン株式会社 Image processing device, image processing method, and program
EP3972243B1 (en) * 2020-09-18 2024-05-08 Beijing Xiaomi Mobile Software Co., Ltd. A computer implemented method for temporally stabilizing white point information in an auto white balance process, a data processing apparatus, a computer program product, and a computer-readable storage medium
US11205268B2 (en) * 2021-05-12 2021-12-21 Shenzhen Jifu Medical Technology Co., Ltd Endoscopic image enhancement system and method
US20230017498A1 (en) * 2021-07-07 2023-01-19 Qualcomm Incorporated Flexible region of interest color processing for cameras
WO2023063979A1 (en) * 2021-10-15 2023-04-20 Zeku, Inc. Apparatus and method of automatic white balancing
WO2023214927A1 (en) * 2022-05-04 2023-11-09 Pd Group Ab Improved user appearance in workstation applications

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030223622A1 (en) * 2002-05-31 2003-12-04 Eastman Kodak Company Method and system for enhancing portrait images
US20070201725A1 (en) * 2006-02-24 2007-08-30 Eran Steinberg Digital Image Acquisition Control and Correction Method and Apparatus
US20080231726A1 (en) * 2007-03-23 2008-09-25 Motorola, Inc. Apparatus and method for image color correction in a portable device
US20090002519A1 (en) * 2007-06-29 2009-01-01 Tomokazu Nakamura Image processing method, apparatus and computer program product, and imaging apparatus, method and computer program product
US20090092297A1 (en) * 2005-07-19 2009-04-09 Konica Minolta Holdings, Inc. Image processing apparatus, image processing system and image processing program
US20090167892A1 (en) * 2007-12-27 2009-07-02 Canon Kabushiki Kaisha White balance control device and white balance control method
US20090225226A1 (en) * 2008-03-04 2009-09-10 Canon Kabushiki Kaisha White balance control apparatus, control method therefor, and image sensing apparatus
US20100189358A1 (en) * 2007-06-18 2010-07-29 Canon Kabushiki Kaisha Facial expression recognition apparatus and method, and image capturing apparatus
US20120188399A1 (en) * 2011-01-21 2012-07-26 Buyue Zhang Methods and Systems for Automatic White Balance
US20130128073A1 (en) * 2011-11-22 2013-05-23 Samsung Electronics Co. Ltd. Apparatus and method for adjusting white balance
US20130182143A1 (en) * 2012-01-18 2013-07-18 Kabushiki Kaisha Toshiba Apparatus and a method for processing a moving image, and a non-transitory computer readable medium thereof
US20150054980A1 (en) * 2013-08-26 2015-02-26 Jarno Nikkanen Awb using face detection

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6690923B1 (en) * 1994-03-02 2004-02-10 Telular Corp. Self-diagnostic system for cellular-transceiver systems with remote-reporting capabilities
US20030130893A1 (en) * 2000-08-11 2003-07-10 Telanon, Inc. Systems, methods, and computer program products for privacy protection
CN1516350A (en) * 2003-01-08 2004-07-28 西北工业大学 Remote safety monitoring system based on power line carrier communication
CN100479374C (en) * 2005-04-25 2009-04-15 华为技术有限公司 Method for processing urgent business in network communication
CN1867189A (en) * 2006-01-21 2006-11-22 华为技术有限公司 Method and system for realizing urgent call in group-calling process
US8180029B2 (en) * 2007-06-28 2012-05-15 Voxer Ip Llc Telecommunication and multimedia management method and apparatus
CN101448144B (en) * 2008-12-23 2013-08-07 北京中星微电子有限公司 Method for realizing alarm in video monitoring system and video monitor alarm system
CN201845418U (en) * 2009-09-14 2011-05-25 深圳市华夏龙腾电子有限公司 Field independent communication computer room/base station safety and protection monitoring system
CN103544093B (en) * 2012-07-13 2016-04-27 深圳市快播科技有限公司 Monitoring alarm control method and system thereof
CN102967864A (en) * 2012-11-01 2013-03-13 Tcl集团股份有限公司 Alarming navigation method and system
CN103437813A (en) * 2013-07-01 2013-12-11 广东惠利普路桥信息工程有限公司 Tunnel construction survey and intelligent analysis system
US20150201001A1 (en) * 2014-01-13 2015-07-16 Facebook, Inc. Systems and methods for priority-based digital content downloading
US10200427B2 (en) * 2014-01-13 2019-02-05 Facebook, Inc. Systems and methods for streaming digital content using an intermediate server
CN103945354A (en) * 2014-05-13 2014-07-23 上海斐讯数据通信技术有限公司 Intelligent emergency call method, intelligent emergency call system and electronic device
CN104135584A (en) * 2014-06-09 2014-11-05 张乙乙 Mobile phone alarm system and mobile phone alarm method
CN203931094U (en) * 2014-06-11 2014-11-05 广东安居宝数码科技股份有限公司 Warning system

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030223622A1 (en) * 2002-05-31 2003-12-04 Eastman Kodak Company Method and system for enhancing portrait images
US20090092297A1 (en) * 2005-07-19 2009-04-09 Konica Minolta Holdings, Inc. Image processing apparatus, image processing system and image processing program
US20070201725A1 (en) * 2006-02-24 2007-08-30 Eran Steinberg Digital Image Acquisition Control and Correction Method and Apparatus
US20080231726A1 (en) * 2007-03-23 2008-09-25 Motorola, Inc. Apparatus and method for image color correction in a portable device
US20100189358A1 (en) * 2007-06-18 2010-07-29 Canon Kabushiki Kaisha Facial expression recognition apparatus and method, and image capturing apparatus
US20090002519A1 (en) * 2007-06-29 2009-01-01 Tomokazu Nakamura Image processing method, apparatus and computer program product, and imaging apparatus, method and computer program product
US20090167892A1 (en) * 2007-12-27 2009-07-02 Canon Kabushiki Kaisha White balance control device and white balance control method
US20090225226A1 (en) * 2008-03-04 2009-09-10 Canon Kabushiki Kaisha White balance control apparatus, control method therefor, and image sensing apparatus
US20120188399A1 (en) * 2011-01-21 2012-07-26 Buyue Zhang Methods and Systems for Automatic White Balance
US20130128073A1 (en) * 2011-11-22 2013-05-23 Samsung Electronics Co. Ltd. Apparatus and method for adjusting white balance
US20130182143A1 (en) * 2012-01-18 2013-07-18 Kabushiki Kaisha Toshiba Apparatus and a method for processing a moving image, and a non-transitory computer readable medium thereof
US20150054980A1 (en) * 2013-08-26 2015-02-26 Jarno Nikkanen Awb using face detection

Also Published As

Publication number Publication date
US9565410B2 (en) 2017-02-07
US9999076B2 (en) 2018-06-12
US20170311357A1 (en) 2017-10-26
CN104468578B (en) 2017-12-26
US20150326842A1 (en) 2015-11-12
CN104468578A (en) 2015-03-25

Similar Documents

Publication Publication Date Title
US11265523B2 (en) Illuminant estimation referencing facial color features
USRE47960E1 (en) Methods and devices of illuminant estimation referencing facial color features for automatic white balance
US10965924B2 (en) Correlating illuminant estimation by a plurality of cameras
US9712743B2 (en) Digital image processing using face detection and skin tone information
US10304166B2 (en) Eye beautification under inaccurate localization
US8520089B2 (en) Eye beautification
US9007480B2 (en) Automatic face and skin beautification using face detection
US8175382B2 (en) Learning image enhancement
CN112887582A (en) Image color processing method and device and related equipment
WO2019011148A1 (en) White balance processing method and apparatus
CN106791451B (en) Photographing method of intelligent terminal
WO2023010796A1 (en) Image processing method and related apparatus
US20210314541A1 (en) Face recognition based on illuminant estimation
WO2022111269A1 (en) Method and device for enhancing video details, mobile terminal, and storage medium
JP6740109B2 (en) Image processing apparatus, image processing method, and program
CN110248104B (en) Image processing method and device and electronic equipment
WO2019090591A1 (en) Photography method and photography system based on smart terminal
CN112949392B (en) Image processing method and device, storage medium and terminal
CN117793541A (en) Ambient light adjusting method, device, electronic equipment and readable storage medium
Tsukada et al. Image quality enhancement method based on scene category classification and its evaluation

Legal Events

Date Code Title Description
FEPP Fee payment procedure

Free format text: ENTITY STATUS SET TO MICRO (ORIGINAL EVENT CODE: MICR); ENTITY STATUS OF PATENT OWNER: MICROENTITY

Free format text: ENTITY STATUS SET TO SMALL (ORIGINAL EVENT CODE: SMAL); ENTITY STATUS OF PATENT OWNER: MICROENTITY

FEPP Fee payment procedure

Free format text: ENTITY STATUS SET TO SMALL (ORIGINAL EVENT CODE: SMAL); ENTITY STATUS OF PATENT OWNER: MICROENTITY

FEPP Fee payment procedure

Free format text: ENTITY STATUS SET TO MICRO (ORIGINAL EVENT CODE: MICR); ENTITY STATUS OF PATENT OWNER: MICROENTITY

FEPP Fee payment procedure

Free format text: ENTITY STATUS SET TO SMALL (ORIGINAL EVENT CODE: SMAL); ENTITY STATUS OF PATENT OWNER: MICROENTITY

FEPP Fee payment procedure

Free format text: ENTITY STATUS SET TO MICRO (ORIGINAL EVENT CODE: MICR); ENTITY STATUS OF PATENT OWNER: MICROENTITY

AS Assignment

Owner name: REAL IMAGING TECHNOLOGY CO. LTD, CHINA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HUAI, XIAONING;REEL/FRAME:052158/0942

Effective date: 20200318