WO2021101162A1 - 딥 화이트-밸런싱 편집을 위한 방법 및 장치 - Google Patents

딥 화이트-밸런싱 편집을 위한 방법 및 장치 Download PDF

Info

Publication number
WO2021101162A1
WO2021101162A1 PCT/KR2020/015799 KR2020015799W WO2021101162A1 WO 2021101162 A1 WO2021101162 A1 WO 2021101162A1 KR 2020015799 W KR2020015799 W KR 2020015799W WO 2021101162 A1 WO2021101162 A1 WO 2021101162A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
white balance
mobile device
processor
module
Prior art date
Application number
PCT/KR2020/015799
Other languages
English (en)
French (fr)
Inventor
나서 모함므드 아피피마흐무드
스콧 브라운마이클
Original Assignee
삼성전자 주식회사
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 삼성전자 주식회사 filed Critical 삼성전자 주식회사
Priority to EP23158058.0A priority Critical patent/EP4207755A1/en
Priority to CN202080091131.9A priority patent/CN114930811A/zh
Priority to EP20889398.2A priority patent/EP4054185A4/en
Publication of WO2021101162A1 publication Critical patent/WO2021101162A1/ko

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/01Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/03Cooperating elements; Interaction or communication between different cooperating elements or between cooperating elements and receivers
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/38Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
    • G01S19/39Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/42Determining position
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04845Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration using two or more images, e.g. averaging or subtraction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B17/00Monitoring; Testing
    • H04B17/30Monitoring; Testing of propagation channels
    • H04B17/309Measuring or estimating channel quality parameters
    • H04B17/318Received signal strength
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N25/00Circuitry of solid-state image sensors [SSIS]; Control thereof
    • H04N25/10Circuitry of solid-state image sensors [SSIS]; Control thereof for transforming different wavelengths into image signals
    • H04N25/11Arrangement of colour filter arrays [CFA]; Filter mosaics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
    • 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/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Definitions

  • a method and apparatus consistent with the embodiments relates to deep white-balancing editing.
  • WB' White Balance
  • WB is low-level computer vision tasks applied to all camera images. WB is performed so that scene objects appear in the same color even when photographed under different lighting conditions.
  • WB is intended to normalize the lighting effect of the captured scene so that all objects appear to be captured under ideal "white light”.
  • WB is the first color manipulation applied to the sensor's unprocessed raw-RGB image by means of the camera's onboard integrated signal processor (hereinafter referred to as'ISP'). It is one of the steps. After WB is performed, additional color rendering steps are applied by the ISP to further process the raw-RGB image with final standard RGB (sRGB) encoding.
  • WB's goal is to normalize the lighting effects of the scene, but ISPs incorporate aesthetic considerations into color rendering, often based on photographic preferences. This preference does not always follow the white light assumption and may vary depending on various factors such as cultural preference and scene content.
  • the ability to edit the WB of an sRGB image is not only useful from a photography point of view, but may also be useful for computer vision applications such as object recognition, scene understanding, and color augmentation. .
  • the WB consists of two steps performed in tandem by the ISP: (1) estimating the response of the camera sensor to scene illumination, in the form of a raw-RGB vector; And (2) dividing each color R/G/B color channel of the raw-RGB image by the corresponding channel response of the raw-RGB vector.
  • the first step of estimating the illumination vector consists of a camera's auto white balance (hereinafter referred to as'AWB') procedure.
  • AWB camera's auto white balance
  • most cameras allow the user to manually select one WB preset from among WB presets whose raw-RGB vectors for each camera have been determined by the camera manufacturer. These presets correspond to typical scene lighting (eg daylight, shade and incandescent lamps).
  • a method and apparatus consistent with the embodiments relates to deep white-balacing editing.
  • Embodiments provide a method and apparatus for deep white balancing editing.
  • a deep white balancing editing apparatus including a memory for storing instructions, and including at least one processor that performs the instructions, and the at least one processor comprises: an image An input image having an original white balance is obtained by signal processing, and an intermediate representation of the obtained input image having an original white balance not corrected by the image signal processing is obtained using a first neural network.
  • the at least one processor is further configured to execute instructions for obtaining a first output image having a first white balance different from the original white balance, using a second neural network, based on the obtained intermediate representation.
  • a deep white balancing editing method comprising: obtaining an input image having an original white balance corrected by processing an image signal, performed by at least one processor; And obtaining an intermediate representation of the input image that has not been corrected by the image signal processing by using the first neural network.
  • the method further includes obtaining, based on the obtained intermediate representation, a first output image having a first white balance different from the original white balance by using a second neural network.
  • a computer recording medium in which at least one processor stores instructions for performing the following operation.
  • the instructions are obtained by obtaining an input image having an original white balance by the at least one processor processing an image signal, and having an original white balance not corrected by the image signal processing using a first neural network.
  • the intermediate representation of the input image is obtained.
  • the instructions also cause at least one processor to obtain a first output image having a first white balance different from the original white balance based on the obtained intermediate representation using the second neural network.
  • FIG. 1 is a block diagram of an apparatus for deep white balancing editing according to embodiments.
  • FIG. 2 is a block diagram of an encoding unit of the deep white balancing editing apparatus of FIG. 1.
  • FIG. 3 is a block diagram of a first WB decoding unit of the deep white balancing editing apparatus of FIG. 1.
  • FIG. 4 is a block diagram of a second WB decoding unit of the deep white balancing editing apparatus of FIG. 1.
  • FIG. 5 is a flowchart of a deep white balancing editing method according to embodiments.
  • FIG. 6 is a flowchart of a training method for deep white balancing editing according to embodiments.
  • FIG. 7 is a diagram of a color mapping procedure in a deep white balancing editing method according to embodiments.
  • FIG. 8 is a flowchart of a deep white balancing editing method according to other embodiments.
  • FIG. 9 is a diagram of a user interface for deep white balancing editing according to embodiments.
  • FIG. 10 is a block diagram of a computer system according to embodiments.
  • FIG. 11 is a block diagram of a mobile device 1100 according to an embodiment.
  • FIG. 12 is a diagram for explaining, according to an exemplary embodiment, identifying whether indoors or outdoors based on various pieces of information acquired by a mobile device, and performing white balancing adjustment based on the identified result.
  • Embodiments of the present disclosure provide a method and apparatus for deep white balancing editing.
  • a deep learning approach that realistically edits the white balance of sRGB images is introduced.
  • the camera captures the sensor image rendered by the ISP in sRGB color space encoding.
  • ISP rendering begins with a white balance procedure used to remove the color cast of the scene lighting.
  • the ISP applies a series of nonlinear color manipulations to improve the visual quality of the final sRGB image.
  • sRGB images rendered with incorrect white balance cannot be easily corrected due to nonlinear rendering of ISPs.
  • This study proposed a KNN solution based on tens of thousands of image pairs.
  • ISPs can erroneously correct the image's WB early in the process, these errors can be propagated throughout the process even in the KNN solution.
  • the above embodiments solve this problem with a DNN architecture trained in an end-to-end manner to learn accurate white balance.
  • the DNN architecture maps the input image to two additional white balance settings corresponding to indoor and outdoor lighting.
  • the above embodiments are not only more accurate than the KNN approach in terms of correcting the wrong white balance setting, but also provide the user with the freedom to edit the white balance of the sRGB image with different lighting settings.
  • the above embodiments provide a deep learning framework that allows realistic post-capture WB editing of sRGB images.
  • the framework includes a single encoder network combined with three decoder networks targeting the following WB settings: (1) "correct" AWB setup; (2) indoor WB setting; And (3) outdoor WB setting
  • the first decoding unit may edit an sRGB image whose white balance is incorrectly adjusted to have a correct WB. This is useful for post-capture WB correction.
  • Additional indoor and outdoor decoders provide the user with a function of creating a wide range of WB appearances by blending the two outputs of the decoders. It supports photo editing to adjust the aesthetic WB properties of the image.
  • the framework generalizes well to images outside the training data, and obtains the latest results for the work discussed above.
  • Each component described later in this specification may additionally perform some or all of the functions performed by other components in addition to its own main function, and some of the major functions of each component may be entirely performed by other components. have.
  • 'image' may mean a still image, a moving picture or video including a plurality of consecutive still images (or frames).
  • the image may be a two-dimensional (2D) image or a three-dimensional (3D) image.
  • a neural network is a representative example of an artificial intelligence model, but the above embodiments are not limited to an artificial intelligence model using an algorithm.
  • 'parameter' or'neural network parameter' is a value used in an operation process of each layer constituting a neural network, and may include, for example, a weight used when an input value is applied to an equation.
  • the parameter may be expressed in a matrix form.
  • the parameter is a value set as a result of training and can be updated through separate training data if necessary.
  • the expression "at least one of a, b, or c" refers to only a, only b, only c, both a and b, both a and c, both b and c, all of a, b and c, or variations thereof. Show.
  • FIG. 1 is a diagram of an apparatus 100 for editing deep white balancing according to embodiments.
  • the apparatus 100 includes an encoder 105, a first WB decoder 110, and a second WB decoder 115.
  • the device 100 may be implemented as an electronic device (eg, a mobile device) and/or a server.
  • the encoder 105 is configured to acquire (receive) an input image (eg, an sRGB image) having an original white balance corrected by image signal processing by a camera ISP.
  • the encoder 105 is further configured to acquire and transmit an intermediate representation of the acquired input image, and the intermediate representation has an original white balance that is not corrected by image signal processing.
  • the encoder 105 includes, for example, a neural network such as a convolutional neural network (CNN) or a DNN to be described in FIG. 2 below.
  • CNN convolutional neural network
  • the first WB decoder 110 is configured to acquire and transmit a first output image having a first white balance different from the original white balance based on the obtained intermediate expression.
  • the first WB decoder 110 includes, for example, a neural network such as CNN or DNN, which will be described in FIG. 3 below.
  • the first white balance may be Auto White Balance (AWB).
  • the second WB decoder 115 is configured to acquire an original white balance and a second output image having a second white balance different from the first white balance based on the obtained intermediate expression.
  • the second WB decoder 115 includes a neural network such as, for example, CNN or DNN, which will be described in FIG. 4 below.
  • the second white balance may be, for example, a shade WB (shade WB) or an incandescent lamp WB (Indecedent WB), which is correlated with 2850K (K) and 7500K color temperatures, respectively.
  • the above operation can be performed correctly.
  • the arbitrary WB setting WB (in) is changed to the target WB setting WB (t) , and then the sRGB image is returned to the original sRGB color space by a software-based ISP. It can be re-rendered and go back. This process can be explained by the following equation.
  • WB(in) is an unknown reconstruction function that returns the camera-rendered sRGB image to its corresponding raw-RGB image D with an arbitrary WB setting WB (in) applied.
  • G:D WB(in) -> I WB(t) is an unknown camera rendering function for editing an arbitrary WB setting WB (in ) and re-rendering the final sRGB image I WB(t).
  • the symbol ⁇ represents a function composition.
  • the goal is to model the function of G ⁇ F to generate the final sRGB image I WB(t).
  • function G accepts an intermediate expression, renders it with sRGB color space encoding to have a target WB setting WB(t)
  • function F converts the input sRGB image I WB(in) into an intermediate expression (i.e. Transform into raw-RGB image D) with WB setting.
  • function G can be thought of as a hybrid function containing a set of sub-functions, each of which renders an intermediate representation with a specific WB setting. Plays a role.
  • the function of G ⁇ F can be modeled with an encoder/decoder scheme. While each of the decoders g 1 , g 2 , ... (ie, the first and second WB decoders 110 and 115) generates final sRGB images with different WB settings, the encoder f (ie, FIG. The encoder 105 of 1 transmits the input sRGB image I WB(in) as a latent representation. Similar to Equation 1, the framework can be formulated as follows:
  • And Z may be an intermediate expression (ie, a potential expression) of the original input sRGB image I WB(in).
  • the goal is to replace the functions f and g t as changing the function g t to a new function g y targeting a different WB setting WB y does not require any modification of the function f, as in the case in Equation 1. It is to make it independent.
  • three different WB settings are targeted:
  • WB (T) Tungsten/incandescent-stands for WB for indoor lighting
  • Incandescent lamp and shade WB are selected according to color properties. This can be understood when considering lighting in terms of correlated color temperature. For example, incandescent and shade WB settings correlate with 2850K and 7500K color temperatures, respectively. This wide range of illumination color temperatures is considered a range of pleasing illuminations. Moreover, the wide color temperature range between the incandescent lamp WB and the shade WB allows an approximation of an image with a color temperature within this range through interpolation. Details of this interpolation process are described in FIG. 9 below. In AWB mode, there is no fixed correlated color temperature because it changes according to the lighting conditions of the input image.
  • the U-Net architecture may be used with the multi-scale skip connection 120 between the encoder 105 and the first and second WB decoders 110 and 115.
  • the framework contains two main units.
  • the first main unit is the encoder 105, which is a 4-level encoder unit that extracts a multi-scale latent representation (intermediate representation) of an input image.
  • the second main unit includes at least two 4-level decoding units (eg, first and second WB decoding units 110 and 115). Each unit has a different bottleneck and upsampling component.
  • each convolution layer has 24 channels. For each subsequent or previous level, the number of channels is doubled. (For example, the third level of the encoder 105 has 192 channels for each convolutional layer)
  • FIG. 2 is a block diagram of the encoder 105 of the apparatus 100 for deep white balancing editing of FIG. 1.
  • the encoder 105 may include a first level 205, a second level 210, and a third level 215.
  • the input image is transmitted through each layer of the first level 205, the second level 210, and the third level 215 to the first WB decoder 110 and/or the second WB decoder 115. It is possible to obtain an intermediate expression that is output.
  • the first level 205 may include 3x3 convolution layers 205a and 205b having 1 stride and 1 padding, and ReLU (rectified linear unit) layers 205c and 205d.
  • the ReLU layer 205c may be positioned between the convolution layers 205a and 205b, and the convolution layer 205b may be positioned between the ReLU layers 205c and 205d.
  • each of the convolutional layers 205a and 205b and the ReLU layers 205c and 205d may have a size of 128x128x24.
  • the second level 210 is a 2x2 max-pooling (max-pooling) layer 210a and 210b with stride 2, a 3x3 convolution layer 210c and 210d with stride 1 and padding 1, and a ReLU layer. (210e and 210f) may be included.
  • the ReLU layer 210e may be positioned between the convolution layers 210c and 210d
  • the convolution layer 210d may be positioned between the ReLU layers 210e and 210f
  • ReLU layers 210e and 210f may be positioned between the maximum pooling layers 210a and 210b.
  • the convolution layers 210c and 210d and the ReLU layers 210e and 210f may each have a size of 64x64x48
  • the maximum pooling layer 210a may have a size of 64x64x24
  • the maximum pooling layer 210b Can have a size of 32x32x48.
  • the third level 215 may include 3x3 convolution layers 215a and 215b with stride 1 and padding 1, ReLU layers 215c and 215d, and a 2x2 maximum pulling layer 215e with stride 2.
  • the ReLU layer 215c may be positioned between the convolution layers 215a and 215b
  • the convolution layer 215b may be positioned between the ReLU layers 215c and 215d
  • the maximum pooling layer 215e is convoluted. It may be disposed behind the lusion layers 215a and 215b and the ReLU layers 215c and 215d.
  • the convolution layers 215a and 215b and the ReLU layers 215c and 215d may each have a size of 16x16x192
  • the maximum pooling layer 215e may have a size of 8x8x192.
  • FIG. 3 is a block diagram of a first WB decoding unit 110 of the deep white balancing editing apparatus 100 of FIG. 1.
  • the first WB decoder 110 includes a first level 305, a second level 310, a third level 315 and a fourth level 320.
  • the intermediate expression may be transmitted through each layer of the first level 305, the second level 310, the third level 315, and the fourth level 320 to obtain a first output image.
  • the first level 305 may include ReLU layers 305a and 305b and 3x3 convolution layers 305c and 305d having 1 stride and 1 padding.
  • the convolutional layer 305c may be positioned between the ReLU layers 305a and 305b, and the ReLU layer 305b may be positioned between the convolutional layers 305c and 305d.
  • the ReLU layers 305a and 305b and the convolution layers 305c and 305d may each have a size of 8x8x384.
  • the second level 310 includes a 2x2 upsampling layer 310a, a 3x3 convolution layer 310b, 310c and 310d having 1 stride and 1 padding, a depth concatenation layer 310e, and a ReLU layer ( 310f and 310g). Layers of the second level 310 are from input to output, an upsampling layer 310a, a convolution layer 310b, a depth connection layer 310e, a ReLU layer 310f, a convolutional layer 310c, and a ReLU layer. (310g) and the convolution layer 310d may be in the order.
  • the upsampling layer 310a, the convolution layers 310b, 310c, and 310d, and the ReLU layers 310f and 310g may each have a size of 16x16x192, and the depth connection layer 310e has a size of 16x16x384. I can have it.
  • the third level 315 includes a 2x2 upsampling layer 315a, a 3x3 convolutional layer 315b, 315c and 315d having 1 stride and 1 padding, a depth connection layer 315e, and a ReLU layer 315f and 315g. can do.
  • Layers of the third level 315 are from input to output, upsampling layer 315a, convolution layer 315b, depth connection layer 315e, ReLU layer 315f, convolution layer 315c, and ReLU.
  • the layer 315g and the convolutional layer 315d may be in an order.
  • the upsampling layer 315a, the convolution layers 315b, 315c, and 315d, and the ReLU layers 315f and 315g may each have a size of 64x64x48, and the depth connection layer 315e has a size of 64x64x96. I can have it.
  • the fourth level 320 includes a 2x2 upsampling layer 320a, a 3x3 convolution layer 320b, 320c and 320d having 1 stride and 1 padding, a depth connection layer 320e, ReLU layers 320f and 320g, and A 1x1 convolution layer 320h having 1 stride and 1 padding may be included.
  • Layers of the fourth level 320 are, from input to output, an upsampling layer 320a, a convolution layer 320b, a depth connection layer 320e, a ReLU layer 320f, a convolution layer 320c, and a ReLU.
  • the layer 320g, the convolutional layer 320d, and the convolutional layer 320h may be in an order.
  • the upsampling layer 320a, the convolution layers 320b, 320c, and 320d, and the ReLU layers 320f and 320g may each have a size of 128x128x24, and the depth connection layer 320e has a size of 128x128x48.
  • the size of the convolution layer 320h is 128x128x3.
  • FIG. 4 is a block diagram of a second WB decoding unit 115 of the deep white balancing editing apparatus 100 of FIG. 1.
  • the second WB decoder 115 includes a first level 405, a second level 410, a third level 415, and a fourth level 420.
  • the intermediate expression may be transmitted through each layer of the first level 405, the second level 410, the third level 415, and the fourth level 420 to obtain a second output image.
  • the first level 405 may include ReLU layers 405a and 405b and 3x3 convolution layers 405c and 405d having stride 1 and padding 1.
  • the convolutional layer 405c may be positioned between the ReLU layers 405a and 405b, and the ReLU layer 405b may be positioned between the convolutional layers 405c and 405d.
  • each of the ReLU layers 405a and 405b and the convolution layers 405c and 405d may have a size of 8x8x384.
  • the second level 410 includes a 2x2 upsampling layer 410a, a 3x3 convolution layer 410b, 410c and 410d having 1 stride and 1 padding, a depth connection layer 410e, and a ReLU layer 410f and 410g. can do.
  • the layer 410g and the convolutional layer 410d may be in an order.
  • the upsampling layer 410a, the convolution layers 410b, 410c, and 410d, and the ReLU layers 410f and 410g may each have a size of 16x16x192, and the depth connection layer 410e has a size of 16x16x384. I can have it.
  • the third level 415 includes a 2x2 upsampling layer 415a, a 3x3 convolutional layer 415b, 415c and 415d having 1 stride and 1 padding, a depth connection layer 415e, and a ReLU layer 415f and 415g. can do.
  • Layers of the third level 415 are from input to output, upsampling layer 415a, convolution layer 415b, depth connection layer 415e, ReLU layer 415f, convolution layer 415c, and ReLU It may be the order of the layer 415g and the convolutional layer 415d.
  • the upsampling layer 415a, the convolution layers 415b, 415c, and 415d, and the ReLU layers 415f and 415g may each have a size of 64x64x48, and the depth connection layer 415e has a size of 64x64x96. I can have it.
  • the fourth level 420 is a 2x2 upsampling layer 420a, a 3x3 convolutional layer 420b, 420c, and 420d having 1 stride and 1 padding, a depth connection layer 420e, a ReLU layer 420f and 420g, and a stride.
  • a 1x1 convolution layer 420h having 1 and 1 padding may be included.
  • Layers of the fourth level 420 are, from input to output, an upsampling layer 420a, a convolution layer 420b, a depth connection layer 420e, a ReLU layer 420f, a convolution layer 420c, and a ReLU.
  • a layer 420g, a convolutional layer 420d, and a convolutional layer 420h may be in the order.
  • the upsampling layer 420a, the convolution layers 420b, 420c, and 420d, and the ReLU layers 420f and 420g may each have a size of 128x128x24, and the depth connection layer 420e has a size of 128x128x48.
  • the size of the convolution layer 420h may be 128x128x3.
  • the skip connection 120a decodes the first level 205 of the encoder 105 into the fourth level 320 of the first WB decoder 110 and/or the second WB decoding. It may be connected to the fourth level 420 of the unit 115.
  • the second level 210 of the encoder 105 is changed to the third level 315 of the first WB decoder 110 and/or the third level of the second WB decoder 115 ( 415).
  • the third level 215 of the encoder 105 is changed to the second level 310 of the first WB decoder 110 and/or the second level of the second WB decoder 115 ( 410).
  • FIG. 5 is a flowchart of a deep white balancing editing method 500 according to embodiments.
  • the method 500 may be performed by at least one processor using the deep white balancing editing apparatus 100 of FIG. 1.
  • the method 500 includes obtaining an input image having an original white balance corrected by image signal processing.
  • the method 500 includes obtaining an intermediate representation of the acquired input image using a first neural network, the intermediate representation having an original white balance that is not corrected by image signal processing. .
  • the method 500 includes obtaining, based on the obtained intermediate representation, a first output image having a first white balance different from the original white balance by using a second neural network.
  • the method 500 includes obtaining a second output image having a second white balance different from the original white balance and the first white balance, using a third neural network, based on the obtained intermediate representation. Includes.
  • the method 500 displays a slider for selecting one of a plurality of white balances, and based on a user input for selecting one of the plurality of white balances, the obtained first output using the displayed slider Image Select one white balance among a plurality of white balances using any one or any combination of the acquired second output image, the acquired first output image, and a blending image of the acquired second output image. It may further include the step of displaying the result image having.
  • At least one processor, the first neural network, and the second neural network may be implemented in a server, and the method 500 includes: receiving an input image whose original white balance is corrected from an image signal processor of an electronic device; And transmitting the obtained first output image to the electronic device by processing the image signal by the image signal processor.
  • FIG. 6 is a flowchart of a training (or training) method 600 for deep white balancing editing according to embodiments.
  • the method 600 may be performed by at least one processor that trains the apparatus 100 for deep white balancing editing of FIG. 1.
  • method 600 includes obtaining a rendered WB data set.
  • the rendered WB data set is used to train and verify the apparatus 100 for deep white balancing editing.
  • This data set can contain ⁇ 65,000 sRGB images rendered with various camera models and various WB settings, including shade and incandescent lamp settings. For each image there is also a corresponding ground-truth image rendered with the correct WB settings (i.e. considered to be the correct AWB result).
  • This dataset contains two subsets: the training set (set 1) and the test set (set 2). Three-fold cross-validation using Set 1 is performed to train and verify the device 100. In particular, 12,000 training images are randomly selected from two folds, and 2,000 validation images are randomly selected from the remaining folds.
  • method 600 includes agmanating the obtained rendered WB data set.
  • an additional 1,029 raw-RGB images of the same scene included in the rendered WB data set are rendered, but the training image is agmanted using an arbitrary color temperature.
  • four 128x128 patches are randomly selected from each training image and a corresponding ground-true image for each decoding unit.
  • Geometric aggregation (rotation and flipping) can be applied to the selected patch as additional data aggregation to avoid overfitting.
  • the method 600 uses the device 100 to obtain a correct WB (correct WB), a shade WB, and a reconstructed image (patch) respectively corresponding to the incandescent lamp WB. And processing the set.
  • method 600 includes obtaining a loss between the ground-true image (patch) and the reconstructed image corresponding to the correct WB, shade WB, and incandescent WB, respectively.
  • the device 100 is trained to minimize the squared L2-norm loss function between the reconstructed patch and the ground-true patch.
  • h and w represent the width and height of the patch
  • p is the index for each pixel of the training patch P and the ground-true camera rendered patch C, respectively.
  • the L1-norm loss function can be used to train the device 100.
  • the method 600 is performed in the apparatus 100 (e.g., the encoder 105, the first WB decoder 110, and the second WB decoder 115) to minimize the acquired loss. And updating the parameters of the neural network. For example, after initializing the weight of the convolutional layer of the device 100, the gradient moving average decay rate And the decay rate of the squared gradient moving average A training process may be performed by repeating 165,000 times by using an adaptive moment estimation optimizer having a. A learning rate of 10 -4 can be used, and can be reduced by 0.5 every 25 epochs. The L2 normalization ratio can be set like 10 -5, and the mini-batch size can be 32 training patches per iteration.
  • FIG. 7 is a diagram of a color mapping procedure in a deep white balancing editing method according to embodiments.
  • the DNN model according to the embodiments is a completely convolutional network, and since a 4-level encoder/decoder with a 2x2 maximum pooling layer and an upsampling layer is used, the input image is originally generated with a limitation that the dimensions must be a multiple of 2 4. It can be processed as a dimension.
  • all input images can be resized to a maximum of 656 pixels to ensure consistent execution times for all sized input images.
  • the DNN model is applied to these scaled images. Then, a color mapping function between the resized input image and the output image is calculated, and the color mapping function is applied to the full-size input image.
  • the color mapping procedure is the resolution of the original input image (i.e. Pixels) It aims to generate.
  • the colors of the generated output image Mapping matrix that maps globally to colors A polynomial function based on can be adopted.
  • the mapping matrix Can be calculated in a closed-form solution as follows:
  • silver from Is a reshape function that builds May be a polynomial kernel function that maps RGB vectors of an image into a higher n-dimensional space.
  • a reshape function that builds May be a polynomial kernel function that maps RGB vectors of an image into a higher n-dimensional space.
  • 11-dimensional polynomial mapping can be used.
  • FIG. 8 is a flowchart of a deep white balancing editing method 800 according to other embodiments.
  • the method 800 may be performed by at least one processor using the apparatus 100 for deep white balancing of FIG. 1.
  • the method 800 includes obtaining an input image having an original white balance corrected by image signal processing.
  • method 800 includes downsampling the acquired input image.
  • the method 800 includes obtaining a downsampled intermediate representation of the downsampled input image using the first neural network, wherein the downsampled intermediate representation is an original uncorrected by image signal processing. It has a white balance.
  • the method 800 includes obtaining, based on the obtained downsampled intermediate representation, a downsampled output image having a first white balance different from the original white balance using a second neural network. do.
  • the method 800 includes applying color mapping to the obtained down-sampled output image to obtain a first output image having a first white balance different from the original white balance.
  • FIG. 9 is a diagram of a user interface 900 for deep white balancing editing according to embodiments.
  • the user interface 900 shows an input image 905 and a slider 910, and the user can select one of the output images based on three available WB settings such as, for example, AWB setting, shade WB setting, and incandescent WB setting. It allows you to choose between creating any video. For example, a first output image 915 having an incandescent lamp WB (2850K) or a second output image 920 having a shade WB (7500K) is generated, and the following parts (a) and (b) of FIG. 9 It may be displayed on each of the user interface 900 of.
  • WB settings such as, for example, AWB setting, shade WB setting, and incandescent WB setting. It allows you to choose between creating any video.
  • a first output image 915 having an incandescent lamp WB (2850K) or a second output image 920 having a shade WB (7500K) is generated, and the following parts (a) and (b) of FIG. 9 It may be displayed on each of the user interface 900
  • the slider 910 may be within the range 925 of Kelvin, for example 2850K to 7500K, and the user may select any Kelvin value within the range 925 by sliding the slider 910 to a selected value. Based on a user input for selecting the value, the user interface 900 may display an output image corresponding to the selected value.
  • the user selects the input image 905 rather than the shade WB or incandescent lamp WB in terms of color temperature, as shown in (c) of FIG. 9. It can be further edited to be a third output image 930 having a specific WB (eg, 3500K).
  • a specific WB eg, 3500K
  • the first and Interpolation between the second output images 915 and 920 may be performed. This operation can be explained by the following equation.
  • Is It may be an interpolation ratio given by.
  • the user interface 900 may be implemented in an electronic device, for example, a user application installed on a mobile device.
  • the user application may be for editing the WB of the image after the image is captured by the camera of the electronic device and processed by the image signal processor of the electronic device.
  • the user application may be part of the gallery editing service.
  • FIG. 10 is a block diagram of a computer system 1000 in accordance with embodiments.
  • the computer system 1000 may include a processor 1010, a memory 1020, an input/output interface 1030, and a display 1040.
  • the computer system 1000 may be implemented as an electronic device (eg, a mobile device) and/or a server.
  • the processor 1010 may perform overall control of the deep white balancing editing apparatus 100 of FIG. 1 and may execute one or more programs stored in the memory 1020.
  • the processor 1010 is implemented in hardware, firmware, or a combination of hardware and software.
  • the processor 1010 includes a central processing unit (CPU), a graphics processing unit (GPU), an accelerated processing unit (APU), a microprocessor, a microcontroller, a digital signal processor (DSP), a field programmable gate array (FPGA), and an ASIC ( application-specific integrated circuit) or other type of processing component.
  • processor 1010 includes one or more processors that can be programmed to perform functions.
  • the processor 1010 operates using the encoder 105, the first WB decoder 110, and the second WB decoder 115 described with reference to FIGS. 1 to 9. Any one or any combination of these may be performed.
  • the memory 1020 includes a hard disk (e.g., magnetic disk, optical disk, magneto-optical disk and/or solid state disk), CD (Compact Disc), DVD (Digital Versatile Disc), floppy disk, cartridge, magnetic disk. Tape and/or other types of non-transitory computer-readable media.
  • the memory 1020 may also include random access memory (RAM), read only memory (ROM), and/or other types of dynamic or static storage devices (e.g., flash memory, magnetic memory, and/or optical memory). have.
  • the memory 1020 may store various data, programs, or applications for driving and controlling the device 100.
  • the program stored in the memory 1020 may include one or more instructions.
  • a program including one or more instructions or applications stored in the memory 1020 may be executed by the processor 1010.
  • the input/output interface 1030 may enable the computer system 1000 to communicate with other devices such as, for example, other electronic devices and other servers, through a wired connection, a wireless connection, or a combination of wired and wireless connections. have.
  • the processor 1010 processes the image signal by the image signal processor from the image signal processor of the electronic device through the input/output interface 1030
  • An input image having an original white balance corrected by may be received.
  • the processor 1010 may further transmit an output image having a white balance different from the original white balance to the electronic device through the input/output interface 1030.
  • the display 1040 may acquire data from, for example, the processor 1010 and display the acquired data.
  • Display 1040 may include, for example, a touch screen, a television, a computer monitor, or any combination thereof.
  • a deep learning framework for WB editing is presented.
  • the framework accurately corrects the WB of an image with an incorrect white balance.
  • the framework allows users to freely edit the WB of sRGB video with different lighting settings.
  • the framework includes a single encoding unit and a multi decoding unit.
  • the multi-decoder model is trained to generate several WB configurations in an end-to-end manner.
  • the framework achieves state-of-the-art results for WB modification and manipulation, and can produce more efficient compilation results compared to previous work on WB modification and manipulation.
  • FIG. 11 is a block diagram of a mobile device 1100 according to an embodiment.
  • the mobile device 1100 includes a camera module 1110 and a processor 1120.
  • the mobile device 1100 is not limited thereto, and the mobile device 1100 includes a display 1130, a user interface module 1140, an illuminance sensing module 1170, a GPS sensing module 1180, a network information acquisition module 1190, and a storage module 1150. It may further include.
  • the camera module 1110 may include a lens module 1112, an image sensing module 1114, and an image signal processor 1116.
  • the lens module 1112 may include at least one lens that collects light reflected from the subject and transmits it to the image sensing module 1114.
  • the camera module 1110 may include a plurality of lens modules.
  • the plurality of lens modules may have the same lens properties (eg, angle of view, focal length, autofocus, f number, or optical zoom).
  • at least one lens module may have at least one lens property different from that of another lens module.
  • the lens module 1112 may include at least one of a wide-angle lens, an ultra-wide-angle lens, and a telephoto lens.
  • the image sensing module 1114 may include at least one image sensor for converting light collected and transmitted through the lens module 1112 into an electrical signal. Also, the image sensing module 1114 may acquire an image corresponding to the subject by using the converted electrical signal. The image acquired through the image sensing module 1114 is described as RAW image data.
  • the at least one image sensor may be a Charged Coupled Device (CCD) sensor, a Complementary Metal-Oxide Semiconductor (CMOS) sensor, and the image sensing module 1114 includes a color filter array composed of a Bayer pattern and Together, it may include a pixel array composed of at least one CCD sensor and a CMOS sensor corresponding thereto.
  • CCD Charged Coupled Device
  • CMOS Complementary Metal-Oxide Semiconductor
  • the present invention is not limited thereto, and the image sensing module 1114 may be implemented in various forms.
  • the image sensing module 1114 may be implemented as a foveon sensor.
  • the RAW image data may mean image data that is not image-processed by the image signal processor 1116 and is directly acquired from the image sensing module 1114, and may be, for example, color filter array data such as RAW Bayer pattern data. I can.
  • the image signal processor 1116 may image-process the RAW image data and output data in a predetermined image format.
  • a predetermined image format is an image having a predetermined color space that can be represented by an output device in order to output an image from an output device (for example, a device such as a display device or a printer device) or to store it in a storage device before output. It can mean format.
  • a predetermined image format includes an RGB-based format, a CMYK-based format, and a YCbCr-based format.
  • An example of the RGB format includes sRGB, Adobe RGB, and Prophoto RGB format
  • an example of a CMYK-based format includes a SWOP CMYK format.
  • the image signal processor 1116 may process RAW image data and output sRGB image data.
  • the image signal processor 1116 may be implemented by hardware. However, the present invention is not limited thereto, and may be implemented by combining with software. In this case, the image signal processor 1116 may be implemented as a SW module in the processor 1120 located outside the camera module 1110. Also, the image signal processor 1116 may be implemented as hardware separate from the camera module 1110 and the processor 1120. In addition, the image signal processor 1116 may perform a RAW image data processing function in conjunction with the processor 1120 located outside the camera module 1110. In another embodiment, the image signal processor 1116 may be implemented as a System on Chip (SoC) in the camera module 1110.
  • SoC System on Chip
  • the image signal processor 1116 or the processor 1120 includes a demosaicing module 1121, a noise reduction module 1122, a white-balancing adjustment module 1123, a color space conversion module 1124, and a color correction module 1125. And an image output module 1126.
  • the demosaicing module 1121 may perform demosaicing on RAW image data.
  • the demosaicing module 1121 may obtain RGB image data by performing RGB demosaicing on RAW image data.
  • Demosaicing may be a kind of color interpolation.
  • the noise reduction module 1122 may obtain RGB image data with reduced noise by performing a noise reduction process on the RGB data.
  • the white-balancing adjustment module 1123 may output second image data whose white balance is adjusted with respect to the input first image data.
  • the first image data may be original RGB data
  • the second image data may be white-balanced RGB data.
  • the first image data may be sRGB image data that has passed through at least one of the demosaicing module 1121 and the noise reduction module 1122.
  • the first image data may be original color filter array data
  • the second image data may be white balance adjusted color filter array data
  • the white-balancing adjustment module 1123 may acquire at least one white balance-adjusted second image data by inputting the first image data to at least one artificial intelligence model among the plurality of artificial intelligence models.
  • the plurality of artificial intelligence models are composed of a neural network, and each artificial intelligence model may include an encoder model and a decoder model.
  • the plurality of artificial intelligence models may include different decoding unit models.
  • the plurality of artificial intelligence models may include one and the same encoding unit model.
  • the white-balancing adjustment module 1123 is the encoding unit 105 (corresponding to the encoder model) of FIG. 1, the first WB decoding unit 110 and the second WB decoding unit 115 (corresponding to the decoder model). ) And the like.
  • the first WB decoding unit 110 and the second WB decoding unit 115 may include a third WB decoding unit, a fourth WB decoding unit, ... have.
  • the first WB decoder and the second WB decoder may be selectively used using a processor or an image signal processor, and process data processed through the encoder as input data.
  • the encoder and the plurality of WB decoders are composed of a neural network, and may be trained using an original sRGB image or an sRGB image having a WB changed as training data.
  • the encoder and the plurality of WB decoders may be trained using an original raw image and a raw image of which WB has been changed as training data.
  • 'original' is used as an expression corresponding to'the WB is changed', and'original' is white balance with respect to the original raw image data acquired through the image sensing module 1114, etc. It is not limited to an image for which adjustment has not been performed, and may refer to an image for which white balance adjustment has been performed by the image signal processor 1116 with respect to the original raw image data.
  • the white-balancing adjustment module 1123 which uses an image for which white balance adjustment has not been performed by the image signal processor 1116, etc., as input data for the original raw image data acquired through the image sensing module 1114, is the original WB
  • the white-balancing adjustment module 1123 which is referred to as an adjustment module, and uses an image whose white balance has been adjusted by an image signal processor 1116 or the like with respect to the original raw image data acquired through the image sensing module 1114 as input data. It can be classified as a post WB adjustment module.
  • the above-described WB adjustment is a description of the post WB adjustment module, but is not limited thereto, and the contents described with reference to the previous drawings of FIG. 11 may also be applied to the original WB adjustment module. Can be understood by those skilled in the art.
  • the meaning of'WB is changed' may mean that the WB is changed to have WB properties (eg, AWB, incandescent WB, and shade WB) expected as an output of a predetermined WB decoder.
  • WB properties eg, AWB, incandescent WB, and shade WB
  • the encoder is configured with a first neural network, may receive sRGB image data as input data, and may output raw image data corresponding to the input sRGB image data as output data.
  • the encoder may receive raw image data as input data, and may output an intermediate representation corresponding to the input raw image data as output data.
  • Each of the plurality of decoders includes a second neural network having a structure different from that of the first neural network, and may receive raw image data output from the encoder as input data.
  • the encoder may receive the original raw image data acquired through the image sensing module 1114 as input data.
  • an artificial intelligence model consisting only of a decoder is mounted on the mobile device 1100 to process the original raw image data acquired through the image sensing module 1114. That is, in the learning stage of the artificial intelligence model, the decoding unit and the encoding unit can be learned through one learning process, but when the learned artificial intelligence model is applied to the mobile device 1100, only the decoding unit is selected and the mobile device 1100 ) Can be stored in the storage module 1150.
  • each of the decoding units may receive an intermediate representation output from the encoding unit as input data.
  • the plurality of decoding units converts and outputs input data to correspond to a predetermined WB attribute.
  • the decoder When the decoder receives raw image data as input data, it converts the raw image data according to the WB attribute corresponding to each decoder to generate and output sRGB image data reflecting the WB attribute.
  • sRGB image data is converted and displayed, and the user's preferred WB setting value is input through the displayed screen, but in order to re-acquire an image to which the user's preferred WB setting value is applied.
  • the white-balancing adjustment module 1123 may first acquire raw image data corresponding to the displayed sRGB image through an encoder, and acquire sRGB image data in which the WB is changed through a decoder corresponding to the user's preferred WB setting.
  • the artificial intelligence model may be an artificial intelligence model composed only of a decoding unit, and the original raw image data obtained through the image sensing module 1114 may be input as input data.
  • the decoder receives an intermediate representation corresponding to the input raw image data as input data
  • raw image data converted according to the WB attribute corresponding to each decoder is generated and output. That is, when the user's interface is not required, the white-balancing adjustment module 1123 obtains an intermediate expression corresponding to the raw image data through the encoder in order to re-acquire an image to which the user's preferred WB setting value is applied, Raw image data in which the WB has been changed may be obtained through a decoder corresponding to the user's preferred WB setting.
  • Weights and biases of the first neural network and at least one second neural network may be pretrained and set.
  • the processor 1120 or the image signal processor 1116 receives weights and biases of the first neural network and at least one second neural network that are pretrained and stored from a separate training device, and the storage module 1150 The first neural network and the second neural network stored in) may be controlled to be set to at least one received weight and bias.
  • the white-balancing adjustment module 1123 determines an artificial intelligence model corresponding to the shooting condition among a plurality of artificial intelligence models stored in the storage module 1150 based on information on the shooting condition acquired through the sensor module 1160. Then, by inputting the first image data to the determined artificial intelligence model, second image data whose white balance is adjusted to correspond to the photographing condition may be obtained.
  • the sensor module 1160 related contents will be described in detail.
  • the color space conversion module 1124 may perform color space conversion on input image data to obtain image data having a converted color space. For example, the color space conversion module 1124 may perform color space conversion on RGB image data to obtain CIE-XYZ image data.
  • the color correction module 1125 may perform color correction on the image data having the converted color space to obtain color corrected image data.
  • Color manipulation may include gamma correction, and may be referred to as photo-finishing.
  • the image output module 1126 may output image data by performing mapping on the color-corrected image data.
  • the output image data may be sRGB image data.
  • the sensor module 1160 may acquire information on a shooting condition.
  • the sensor module 1160 may include an illuminance sensing module 1170, a GPS sensing module 1180, and a network information acquisition module 1190.
  • the illuminance sensing module 1170 may acquire illuminance sensor information.
  • the illuminance sensor information may indicate lux sensed by the illuminance sensor.
  • the GPS sensing module 1180 may acquire GPS sensor information.
  • the GPS sensor information may indicate at least one of latitude/longitude/altitude acquired by the GPS sensor.
  • the GPS sensor information may be acquired and updated periodically or aperiodically according to a request.
  • the network information acquisition module 1190 may acquire network state information.
  • the network state information may include at least one of RSSI (Received Signal Strength Indication) information of at least one AP (Access Point) of the scanned AP (Access Point) and SSID (Service Set Identifier) information of the scanned at least one AP.
  • RSSI Received Signal Strength Indication
  • SSID Service Set Identifier
  • the white-balancing adjustment module 1123 is the shooting condition among a plurality of artificial intelligence models for white balance adjustment stored in the storage module 1150 based on the information on the shooting condition acquired through the sensor module 1160.
  • a white balance adjusted second image data may be obtained by determining an artificial intelligence model corresponding to, and inputting the first image data to the determined artificial intelligence model.
  • the white-balancing adjustment module 1123 may identify whether the mobile device 1100 is located indoors or outdoors, based on at least one of GPS sensor information, illumination sensor information, and network state information.
  • the white-balancing adjustment module 1123 may determine an artificial intelligence model corresponding to the identification result based on the identification result. For example, there may be a tungsten/incandescent white balance setting (or fluorescent white balance setting) representing indoor lighting, and a shade white balance setting representing outdoor lighting, and the like,
  • the white-balancing adjustment module 1123 identifies whether the mobile device 1100 is located indoors or outdoors, and determines an artificial intelligence model corresponding to a white balance setting related to the identification result among various white balance settings based on the identification result. I can.
  • an output image having a more appropriate WB setting may be obtained by using a WB decoder corresponding to the WB setting determined based on information on the shooting condition (indoor/outdoor).
  • the output image of the AWB setting and the output image of the WB setting corresponding to the shooting condition of the indoor WB setting/outdoor WB setting are simultaneously acquired, and the output images are displayed on the display so that the user can select one of them. .
  • the processor 1120 may determine a WB setting corresponding to the acquired information by using information on a shooting condition acquired through the at least one sensor module 1160.
  • the processor 1120 may determine an artificial intelligence model corresponding to the determined WB setting among a plurality of artificial intelligence models stored in the storage module 1150.
  • the processor 1120 may control the image signal processor 1116 to process the CFA image data obtained from the image sensing module 1114 by loading the determined artificial intelligence model into the image signal processor 1116. .
  • the processor 1120 loads data for an artificial intelligence model determined among a plurality of artificial intelligence models stored in the storage module 1150 into a memory (not shown) located in the image signal processor 1116. Can be controlled to do.
  • the image signal processor 1116 may process CFA image data input from the image sensing module 1114 using data for an artificial intelligence model loaded into a memory.
  • the image signal processor 1116 may obtain RGB image data by processing the CFA image data into an artificial intelligence model.
  • a storage module (not shown) in the image signal processor 1116 may store a plurality of artificial intelligence models.
  • the storage module is different from the memory located in the image signal processor 1116. That is, the storage module may be a flash memory or a DRAM, and the memory may be an SRAM.
  • the image signal processor 1116 receives data on WB settings corresponding to the information acquired by using the information acquired through the at least one sensor module 1160 from the processor 1120.
  • the image signal processor 1116 may determine an artificial intelligence model to be processed using the received data on WB settings.
  • the image signal processor 1116 may control to load the determined artificial intelligence model into a memory (not shown) located in the image signal processor 1116.
  • the image signal processor 1116 may process CFA image data input from the image sensing module 1114 using data for an artificial intelligence model loaded into a memory.
  • the image signal processor 1116 may obtain RGB image data by processing the CFA image data into an artificial intelligence model.
  • the white-balancing adjustment module 1123 may identify that the mobile device is located indoors when the GPS sensor information is not updated, and may identify that the mobile device is located outdoors when the GPS sensor information is updated.
  • the white-balancing adjustment module 1123 may identify that the mobile device is located outdoors when a sensor value (eg, a lux value) of the illuminance sensor information is greater than or equal to a predetermined first value. In this case, the white-balancing adjustment module 1123 may identify whether the sun is floating based on the current time information, and set an expected value according to the position of the sun corresponding to the current time to a predetermined first value. . Since only artificial lighting is present at the time when the sun is not expected to rise, it can be identified as not different from that located indoors, regardless of the sensor value of the illuminance sensor information.
  • a sensor value eg, a lux value
  • the white-balancing adjustment module 1123 may identify that the mobile device is located indoors when a sensor value (eg, a lux value) of the GPS illuminance sensor information is less than or equal to a predetermined second value.
  • a sensor value eg, a lux value
  • the white-balancing adjustment module 1123 identifies that the mobile device is located indoors when the average value of the RSSI of the scanned AP is greater than or equal to a predetermined first value, and the average value of the RSSI of the scanned AP is a predetermined second value. If it is less than the value, it can be identified that the mobile device is located outdoors.
  • the white-balancing module 1123 includes the number of APs having an RSSI less than or equal to a predetermined second value among the scanned APs is greater than or equal to a predetermined second number, or greater than the predetermined first value.
  • the number of the same AP is less than the first predetermined number, it may be identified that the mobile device is located outdoors.
  • the white-balancing adjustment module 1123 may identify that the mobile device is located indoors when the number of APs having an RSSI greater than or equal to a predetermined first value among the scanned APs is greater than or equal to the predetermined first number. have.
  • the white-balancing adjustment module 1123 includes the number of APs whose RSSI is less than or equal to a predetermined second value among the scanned APs is greater than or equal to the predetermined second number, or greater than or equal to the predetermined first value. When the number of is smaller than the first predetermined number, it may be identified that the mobile device is located outdoors.
  • APs in which a part of the SSID corresponds to a predetermined character string may be considered when determining whether to satisfy the condition.
  • the present invention is not limited thereto, and whether or not the final condition is satisfied may be determined by excluding a corresponding AP or by distinguishing a group of a corresponding AP and a group of other APs and assigning different weights to a result of whether or not the intermediate condition of each group is satisfied. .
  • the white-balancing adjustment module 1123 identifies whether the mobile device 1100 is located indoors or outdoors based on at least one of GPS sensor information, illuminance sensor information, and network state information, see FIG. 12. It will be described later with reference.
  • the display 1130 may display various image data.
  • the display 1130 is controlled by the processor 1120 to display data of a predetermined image format output through the image signal processor 1116 or the like.
  • the user interface module 1140 may receive various types of user input.
  • the display 1130 and the user interface module 1140 may be implemented in the form of a touch screen including a touch sensor and a display panel (eg, LCD or AMOLED).
  • the processor 1120 may control to drive the camera module 1110 based on a user input received through the user interface module 1140. That is, the processor 1120 may control the display panel to display a user interface (UI) icon for starting image capturing and a UI icon for setting image capturing conditions on the display panel.
  • UI user interface
  • the processor 1120 may control the image sensing module 1114 to convert light collected through the lens module 1112 in the camera module 1110 into an electrical signal.
  • the storage module 1150 may store various image data.
  • the storage module 1150 is controlled by the processor 1120 to store data of a predetermined image format output through the image signal processor 1116 or the like.
  • An image format stored in the storage module 1150 may be different from an image format output to the display 1130.
  • the processor 1120 lossy/losslessly compresses at least one output image obtained from the white-balancing adjustment module 1123 according to a predetermined compression standard (eg, a JPEG standard), and compresses the compressed output image. May be controlled to be stored in the storage module 1150.
  • a predetermined compression standard eg, a JPEG standard
  • the storage module 1150 may store information on an artificial intelligence model used in the white-balancing adjustment module 1123.
  • FIG. 12 is a diagram for explaining, according to an exemplary embodiment, identifying whether indoors or outdoors based on various pieces of information acquired by a mobile device, and performing white balancing adjustment based on the identified result.
  • the mobile device 1200 may acquire illuminance sensor information by sensing light emitted from an indoor lamp (eg, a fluorescent lamp or an incandescent lamp) 1220 using the illuminance sensor 1205.
  • an indoor lamp eg, a fluorescent lamp or an incandescent lamp
  • the mobile device 1200 may identify that the mobile device 1200 is located indoors. In general, this is because the indoor illuminance value is considerably smaller than the outdoor illuminance value.
  • the mobile device 1200 may acquire GPS sensor information from the GPS satellite 1210 using a GPS sensor.
  • the mobile device 1200 may identify that the mobile device 1200 is located indoors. In general, this is because when the mobile device 1200 is located indoors, it is difficult to receive GPS sensor information.
  • the mobile device 1200 may obtain at least one scanned AP list by scanning the neighboring APs 1235.
  • the mobile device 1200 may identify the number of scanned APs based on the number of SSIDs of the scanned AP 1235, and based on the RSSI 1240 of the scanned AP 1235, the AP 1235 The signal strength can be identified.
  • the mobile device 1200 may identify that the mobile device 1200 is located indoors. In general, when the mobile device 1200 is located indoors, the average value of the RSSI 1240 of the AP 1235 is small because the AP 1235 is located close to each other.
  • the mobile device 1200 when the number of APs in which the RSSI 1240 is greater than or equal to a predetermined first value among the scanned APs 1235 is greater than or equal to the predetermined first number, the mobile device 1200 It can be identified as being located indoors. In general, when the mobile device 1200 is located indoors, since many APs are located close to the mobile device 1200, the number of APs having a large RSSI 1240 is greater than that of outdoors.
  • the mobile device 1200 may acquire illuminance sensor information by sensing light emitted from the sun 1230 using the illuminance sensor 1205.
  • the mobile device 1200 may identify that the mobile device 1200 is located outdoors. In general, this is because the outdoor illuminance value is considerably larger than the indoor illuminance value.
  • the mobile device 1200 may acquire GPS sensor information from the GPS satellite 1210 using a GPS sensor. When the GPS sensor information is updated, the mobile device 1200 may identify that the mobile device 1200 is located outdoors. In general, when the mobile device 1200 is located outdoors, it is easier to receive GPS sensor information than indoors, and in most cases, GPS sensor information can be updated upon request.
  • the mobile device 1200 may scan the surrounding AP 1235.
  • the mobile device 1200 may identify the number of scanned APs based on the number of SSIDs of the scanned AP 1235, and based on the RSSI 1240 of the scanned AP 1235, the AP 1235 The signal strength can be identified.
  • the mobile device 1200 may identify that the mobile device 1200 is located outdoors. In general, this is because when the mobile device 1200 is located outdoors, the average value of the RSSI of the AP 1235 is small due to the location of the AP 1235 or various obstacles.
  • the mobile device 1200 when the number of APs in which the RSSI 1240 is less than or equal to the second predetermined value among the scanned APs 1235 is greater than or equal to the second predetermined number, the mobile device 1200 It can be identified as being located outdoors. In general, when the mobile device 1200 is located outdoors, the AP 1235 is located far away or because there are many APs having a small RSSI due to various obstacles compared to indoors.
  • the present invention is not limited thereto, and when the number of APs in which the RSSI 1240 is equal to or greater than the first predetermined value among the scanned APs 1235 is smaller than the first predetermined number, the mobile device 1200 ) Can be identified as being located outdoors. In general, this is because when the mobile device 1200 is located outdoors, there are fewer APs 1235 located close to the mobile device 1200 than indoors.
  • the present invention is not limited thereto, and the mobile device 1200 determines whether the mobile device 1200 is located indoors or outdoors based on at least one of illumination sensor information, GPS sensor information, and network state information according to various techniques. Can be identified.
  • the mobile device 1200 may perform white balancing adjustment based on the identified result. For example, a Tungsten/Incandescent white balance setting (or fluorescent white balance setting) representing indoor lighting, and a Shade white balance setting representing outdoor lighting (or daylight white balance setting). ) May exist, and the mobile device 1200 identifies whether the mobile device 1200 is located indoors or outdoors, and based on the identification result, one of a plurality of artificial intelligence models related to a plurality of white balance settings An artificial intelligence model related to balance setting may be determined, and an output image may be obtained using the determined artificial intelligence model.
  • a Tungsten/Incandescent white balance setting or fluorescent white balance setting
  • a Shade white balance setting representing outdoor lighting (or daylight white balance setting).

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Human Computer Interaction (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Quality & Reliability (AREA)
  • Electromagnetism (AREA)
  • Processing Of Color Television Signals (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)
  • Heating, Cooling, Or Curing Plastics Or The Like In General (AREA)
  • Control Of El Displays (AREA)

Abstract

딥 화이트 밸런싱 편집을 위한 장치는 인스트럭션을 저장하는 메모리와, 영상 신호 처리에 의해 보정된 원본 화이트 밸런스를 갖는 입력 영상을 획득하고, 제1 뉴럴 네트워크를 이용하여 상기 획득된 입력 영상의 중간 표현을 획득하기 위한 상기 인스트럭션들을 실행하도록 구성된 적어도 하나의 프로세서를 포함한다. 이때, 상기 중간 표현은 상기 영상 신호 처리에 의해 보정되지 않은 원본 화이트 밸런스를 가질 수 있다. 적어도 하나의 프로세서는 획득된 중간 표현에 기초하여, 제2 뉴럴 네트워크를 이용하여, 원본 화이트 밸런스와 다른 제1 화이트 밸런스를 갖는 제1 출력 영상을 획득하기 위한 인스트럭션을 실행하도록 추가로 구성된다.

Description

딥 화이트-밸런싱 편집을 위한 방법 및 장치
실시예들과 일치하는 방법 및 장치는 딥 화이트 밸런싱 편집(deep white-balancing editing)과 관련된다.
화이트 밸런스(White Balance, 이하 'WB'라 함)는 모든 카메라 영상에 적용되는 로우-레벨 컴퓨터 비전 작업(low-level computer vision tasks)이다. WB는 다른 조명 조건들에서 촬영된 경우에도, 장면 객체들(scene objects)이 동일한 컬러로 나타나도록 수행된다. 개념적으로, WB는 캡처된 장면의 조명 효과를 정규화(normalize)하여 모든 객체들이 이상적인 "백색광" 아래에서 캡처된 것처럼 보이도록 하기 위한 것이다. WB는 카메라의 온보드(onboard) 통합된 신호 프로세서(Integrated Signal Processor, 이하 'ISP'라 함)에 의해, 센서의 처리되지 않은 raw-RGB 영상(unprocessed raw-RGB image)에 적용되는 최초의 컬러 조작 단계들 중 하나이다. WB가 수행된 후, raw-RGB 영상을 최종 표준 RGB(sRGB) 인코딩으로 더 처리하기 위해 추가적인 컬러 렌더링 단계들이 ISP에 의해 적용된다.
WB의 목표는 장면의 조명 효과를 정규화하기 위한 것이지만 ISP는 종종 사진 선호도(photographic preferences)를 기초로, 컬러 렌더링에 미적 고려 사항(aesthetic considerations)을 통합한다. 이러한 선호도는 항상 백색광 가정을 따르는 것은 아니며 문화적 선호도(cultural preference) 및 장면 콘텐츠(scene content)와 같은 다양한 요인에 따라 달라질 수 있다.
대부분의 디지털 카메라는 영상 캡처링(또는 촬영) 도중에 WB 설정을 조정하는 옵션을 제공한다. 그러나, 일단 WB 설정이 선택되고, 영상이 ISP에 의해 최종 sRGB 인코딩으로 완전히 처리되면, 처리되지 않은 원본 raw-RGB 영상에 접근 없이 WB 편집을 수행하기가 어려워진다. 이러한 문제는 WB 설정이 잘못된 경우 더욱 어려워지고, 결국 최종 sRGB 영상에서 강한 컬러 캐스트(cast)가 발생하게 된다.
sRGB 영상의 WB를 편집하는 기능은 사진 관점에서 유용할 뿐만 아니라, 객체 인식(object recognition), 장면 이해(scene understanding) 및 컬러 어그맨테이션(color augmentation)과 같은 컴퓨터 비전 어플리케이션들에 유용할 수 있다.
최근 연구는 잘못된 WB 설정으로 캡처한 영상은 딥 뉴럴 네트워크(Deep Neural Network, 이하 'DNN'이라 함) 모델들에 대한 대상이 정해지지 않은 적대적 공격(untargeted adversarial attack)과 유사한 효과를 생성함을 보여준다.
sRGB 영상들에서 WB 편집의 어려움를 이해하려면, 카메라가 WB를 수행하는 방법을 검토하는 것이 유용하다. WB는 ISP에 의해 나란히(in tandem) 수행하는 두 단계로 구성된다: (1) raw-RGB 벡터의 형태로, 장면 조명에 대한 카메라 센서의 응답을 추정하는 단계; 및 (2) raw-RGB 영상의 각 컬러 R / G / B 컬러 채널을 raw-RGB 벡터의 대응 채널 응답으로 나누는 단계.
조명 벡터를 추정하는 첫 번째 단계는 카메라의 자동 화이트 밸런스(Auto White Balance, 이하, 'AWB'라 함) 절차로 구성된다. AWB 외에도 대부분의 카메라를 사용하면 카메라 제조업체에 의해 각 카메라에 대한 raw-RGB 벡터가 결정된 WB 사전 설정들(preset) 중에서 사용자가 수동으로 하나의 WB 사전 설정을 선택할 수 있다. 이러한 사전 설정들은 일반적인 장면 조명(예: 일광, 쉐이드(shade) 및 백열등)에 해당한다.
장면의 조명 raw-RGB 벡터가 정의되면, 조명을 정규화하기 위해 각 컬러 채널에 개별적으로 선형 스케일링이 독립적으로 적용된다. 이 스케일링 작업은 3x3 대각 행렬을 이용하여 수행된다. 화이트 밸런스된(또는 화이트 밸런싱된) raw-RGB 영상은 출력 참조 컬러 스페이스, 즉 sRGB 컬러 스페이스에서 최종 영상을 렌더링하기 위해 사실상 많은 비선형적인 카메라 별 ISP 단계들에 의해 추가로 처리된다. 이러한 비선형 작업은 카메라 WB 오류로 인한 강한 컬러 캐스트로 렌더링된 영상을 보정하기 위해, 기존의 대각 보정(traditional diagonal correction)을 이용하기 어렵게 만든다.
정확한 포스트-캡처 WB 편집을 수행하려면, 렌더링된 sRGB 값을 적절하게 반전하여 해당 처리되지 않은 raw-RGB 값을 얻은 다음, 다시 렌더링(재-랜더링)해야 한다. 이는 이러한 컬러 역-렌더링(de-rendering)에 대한 메타 데이터를 계산하는 정확한 방사 측정 보정 방법들(radiometric calibration methods)로 달성될 수 있다. 최근 연구에서는 잘못된 WB 설정으로 캡처한 sRGB 영상을 직접 수정하는 방법이 제안되었다. 이 연구는 잘못된 WB 설정으로, 소프트웨어 카메라 파이프 라인에 의해 렌더링된 60,000 개 이상의 sRGB 영상이 넘는 대규모 데이터 셋을 이용하는 모델-기반 프레임 워크(exemplar-based)를 제안했다. 이러한 각 sRGB 영상들에는 올바른 WB 설정으로 렌더링된 해당 sRGB 영상을 갖는다. 입력 영상이 주어지면, 그들의 접근 방식은 k- 최근접 이웃들(k-nearest neighbors, 이하, 'KNN'이라 함) 전략을 이용하여 데이터 셋에서 유사한 영상들을 검색하고, 대응하는 올바른 WB 영상에 대한 맵핑 함수를 계산했다. 이 연구는 모델(exemplars)로부터 구성된 이 계산된 컬러 맵핑이 입력 영상을 수정하는 것에 효과적이라는 것을 보여주었다. 나중에, 이 연구는 딥 뉴럴 네트워크 훈련을 위한 영상 어그맨테이션을 위해, 올바른 WB 영상을 잘못 보이도록 맵핑하는 것으로 KNN 아이디어를 확장했다.
실시예들과 일치하는 방법 및 장치는 딥 화이트 밸런싱 편집(deep white-balacing editing)과 관련된다.
실시예들은 딥 화이트 밸런싱 편집을 위한 방법 및 장치를 제공한다.
본 개시의 일 측면에 따르면, 딥 화이트 밸런싱 편집 장치가 제공되며, 상기 장치는 인스트럭션들을 저장하는 메모리를 포함하고, 상기 인스트럭션들을 수행하는 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 영상 신호 처리에 의해 원본 화이트 밸런스를 갖는 입력 영상을 획득하고, 제1 뉴럴 네트워크를 이용하여, 상기 영상 신호 처리에 의해 보정되지 않은 원본 화이트 밸런스를 갖는, 상기 획득된 입력 영상의 중간 표현을 획득한다. 상기 적어도 하나의 프로세서는 획득된 중간 표현에 기초하여, 제2 뉴럴 네트워크를 이용하여, 원본 화이트 밸런스와 다른 제1 화이트 밸런스를 갖는 제1 출력 영상을 획득하기 위한 인스트럭션들을 실행하도록 추가로 구성된다.
본 개시의 일 측면에 따르면, 딥 화이트 밸런싱 편집 방법이 제공되는데, 상기 방법은 적어도 하나의 프로세서에 의해 수행되며, 영상 신호 처리에 의해 보정된 원본 화이트 밸런스를 갖는 입력 영상을 획득하는 단계; 및 제1 뉴럴 네트워크를 이용하여, 상기 영상 신호 처리에 의해 보정되지 않은 입력 영상의 중간 표현을 획득하는 단계를 포함한다. 이 방법은 획득된 중간 표현에 기초하여, 제2 뉴럴 네트워크를 이용하여, 원본 화이트 밸런스와 다른 제1 화이트 밸런스를 갖는 제1 출력 영상을 획득하는 단계를 더 포함한다.
본 개시의 일 측면에 따르면, 딥 화이트 밸런싱 편집을 위해 적어도 하나의 프로세서에 의해 실행될 때, 적어도 하나의 프로세서가 다음의 동작을 수행하기 위한 인스트럭션들을 저장하는 컴퓨터 기록 매체가 제공된다. 상기 인스트럭션들은 상기 적어도 하나의 프로세서가 영상 신호 처리에 의해 원본 화이트 밸런스를 갖는 입력 영상을 획득하고, 제1 뉴럴 네트워크를 이용하여, 상기 영상 신호 처리에 의해 보정되지 않은 원본 화이트 밸런스를 갖는, 상기 획득된 입력 영상의 중간 표현을 획득하게 한다. 상기 인스트럭션들은, 또한 적어도 하나의 프로세서가 제2 뉴럴 네트워크를 이용하여, 획득된 중간 표현에 기초하여 원본 화이트 밸런스와 다른 제1 화이트 밸런스를 갖는 제1 출력 영상을 획득하게 한다.
전술한 방법, 장치 및 컴퓨터 기록매체가 개별적으로 설명되었지만, 이러한 설명은 그 사용 범위 또는 기능에 대한 어떠한 제한도 제시하려는 의도가 아니다. 실제로, 이러한 방법, 장치 및 컴퓨터 기록매체는 본 개시의 다른 측면들과 결합될 수 있다.
본 개시의 실시예들의 상기 측면들 및 다른 측면들 및 특징들은 첨부 도면들과 함께 취해진 다음 설명으로부터 더 명백해질 것이다.
도 1은 실시예들에 따른 딥 화이트 밸런싱 편집을 위한 장치의 블록도이다.
도 2는 도 1의 딥 화이트 밸런싱 편집 장치의 부호화부의 블록도이다.
도 3은 도 1의 딥 화이트 밸런싱 편집 장치의 제1 WB 복호화부의 블록도이다.
도 4는 도 1의 딥 화이트 밸런싱 편집 장치의 제2 WB 복호화부의 블록도이다.
도 5는 실시예들에 따른 딥 화이트 밸런싱 편집 방법의 흐름도이다.
도 6은 실시예들에 따른 딥 화이트 밸런싱 편집을 위한 훈련 방법의 흐름도이다.
도 7은 실시예들에 따른 딥 화이트 밸런싱 편집 방법에서 컬러 맵핑 절차의 도면이다.
도 8은 다른 실시예들에 따른 딥 화이트 밸런싱 편집 방법의 흐름도이다.
도 9는 실시예들에 따른 딥 화이트 밸런싱 편집을 위한 사용자 인터페이스의 도면이다.
도 10은 실시예들에 따른 컴퓨터 시스템의 블록도이다.
도 11은 일 실시예에 따른 모바일 장치(1100)의 블록도를 도시한다.
도 12는 일 실시예에 따라, 모바일 장치가 획득한 다양한 정보를 기초로 실내인지 실외인지를 식별하고, 식별된 결과를 기초로 화이트 밸런싱 조정을 수행하는 것을 설명하기 위한 도면이다.
본 개시의 실시예들은 딥 화이트 밸런싱 편집을 위한 방법 및 장치를 제공한다.
구체적으로 sRGB 영상의 화이트 밸런스를 현실적으로 편집하는 딥 러닝 접근 방식이 소개된다. 카메라는 ISP가 sRGB 컬러 스페이스 인코딩으로 렌더링된 센서 영상을 캡처한다. ISP 렌더링은 장면 조명의 컬러 캐스트를 제거하는데 사용되는 화이트 밸런스 절차로 시작된다. 그런 다음, ISP는 일련의 비선형 컬러 조작들을 적용하여 최종 sRGB 영상의 시각적 품질을 향상시킨다. 최근 연구는 잘못된 화이트 밸런스로 렌더링된 sRGB 영상은 ISP의 비선형 렌더링으로 인해 쉽게 수정할 수 없음을 보여준다. 이 연구는 수만 개(tens of thousands)의 영상 쌍(image pairs)을 기반으로 한 KNN 솔루션을 제안했다. 그러나 ISP는 프로세스 초기에 영상의 WB를 잘못 수정할 수 있기 때문에 이러한 오류는 KNN 솔루션에서도 프로세스 전체에 걸쳐서 전파될 수 있다.
상기 실시예들은 정확한 화이트 밸런스를 학습하기 위해 엔드-투-엔드 방식으로 훈련된 DNN 아키텍처로 이 문제를 해결한다. 상기 DNN 아키텍처는 입력 영상을 실내 및 실외 조명에 해당하는 두 개의 추가 화이트 밸런스 설정에 맵핑한다. 상기 실시예들은 잘못된 화이트 밸런스 설정을 수정하는 측면에서 KNN 접근법보다 정확할뿐만 아니라 사용자에게 sRGB 영상의 화이트 밸런스를 다른 조명 설정들로 편집할 수 있는 자유를 제공한다.
상기 실시예들은 sRGB 영상의 사실적인 포스트-캡쳐 WB 편집을 허용하는 딥 러닝 프레임 워크를 제공한다. 프레임 워크에는 다음 WB 설정들을 타겟으로 하는 3 개의 복호화부 네트워크들과 결합된 단일 부호화부 네트워크가 포함된다: (1) "올바른" AWB 설정; (2) 실내 WB 설정; 및 (3) 실외 WB 설정 제1 복호화부는 화이트 밸런스가 잘못 조정된 sRGB 영상을 올바른 WB를 갖도록 편집할 수 있다. 이는 포스트-캡쳐 WB 보정 작업(post-capture WB correction)에 유용하다. 추가적인 실내 및 실외 복호화부들은 복호화부들의 두 출력들을 블랜딩하여 넓은 범위의 WB 형태들(WB appearances)을 생성할 수 있는 기능을 사용자에게 제공한다. 이 것은 영상의 미적 WB 속성(aesthetic WB properties)을 조정하기 위한 사진 편집 작업을 지원한다. 상기 프레임 워크는 훈련 데이터 외부의 영상들에 잘 일반화되고, 위에서 논의한 작업에 대한 최신 결과를 얻는다.
본 개시는 다양한 변경 및 다수의 예제들을 허용하므로, 상기 실시예들은 도면에 예시되고 서면 설명에서 상세하게 설명될 것이다. 그러나 이는 본 개시를 실행 모드들(modes of practice)로 제한하려는 것이 아니며, 본 개시의 정신 및 기술적 범위를 벗어나지 않는 모든 변경, 등가물 및 대체물(all changes, equivalents, and substitutes)이 본 개시에 포함된다는 것을 이해할 것이다.
상기 실시예들을 설명함에 있어서 관련 기술에 대한 상세한 설명은 본 개시의 본질을 불필요하게 흐릴 수 있다고 판단되는 경우 생략한다. 또한, 명세서 설명에 사용되는 숫자 (예를 들어, 제1, 제2 등)는 한 요소를 다른 요소와 구별하기 위한 식별자 코드들이다.
또한, 본 명세서에서 구성 요소들이 서로 "연결"(connected)되거나 "결합"(coupled)될 때, 구성 요소들은 서로 직접 연결되거나 결합될 수 있지만, 대안적으로, 달리 명시되지 않는 한 그 사이의 중간 요소가 그 사이에 존재하여 서로 연결되거나 결합될 수 있음을 당업자는 이해할 것이다.
본 명세서에서 후술하는 각 구성 요소는 자신의 주요 기능 외에 다른 구성 요소가 수행하는 기능의 일부 또는 전부를 추가적으로 수행할 수 있으며, 각 구성 요소의 주요 기능 중 일부는 전적으로 다른 구성 요소에 의해 수행될 수 있다.
본 명세서에서 '영상'은 정지 영상(still image), 연속된 복수의 정지 영상들(또는 프레임들)을 포함하는 동영상 또는 비디오를 의미할 수 있다. 상기 영상은 2차원(2D)영상 또는 3차원(3D)영상일 수 있다.
또한, 본 명세서에서 뉴럴 네트워크(Neural network)는 인공 지능 모델의 대표적인 예이지만, 상기 실시예들은 알고리즘을 이용한 인공 지능 모델에 한정되지 않는다.
또한, 본 명세서에서 '파라메터' 또는 '뉴럴 네트워크 파라메터'는 뉴럴 네트워크를 구성하는 각 레이어의 동작 과정에서 사용되는 값으로, 예를 들어 입력 값이 연산식에 적용될 때 이용되는 가중치를 포함할 수 있다. 여기서, 파라메터는 행렬 형태로 표현될 수 있다. 파라메터는 훈련의 결과로 설정되는 값이며 필요한 경우 별도의 훈련 데이터를 통해 업데이트될 수 있다.
본 명세서에서 "a, b 또는 c 중 적어도 하나"라는 표현은 a 만, b 만, c 만, a와 b 모두, a와 c 모두, b와 c 모두, a, b 및 c 모두 또는 그 변형을 나타낸다.
도 1은 실시예들에 따른 딥 화이트 밸런싱 편집을 위한 장치(100)의 도면이다.
도 1을 참조하면, 장치(100)는 부호화부(105), 제1 WB 복호화부(110) 및 제2 WB 복호화부(115)를 포함한다.
장치(100)는 전자 장치(예를 들어, 모바일 장치) 및/또는 서버로 구현될 수 있다.
부호화부(105)는 카메라 ISP의 영상 신호 처리에 의해 보정된 원본 화이트 밸런스를 갖는 입력 영상(예를 들어, sRGB 영상)을 획득(수신)하도록 구성된다. 부호화부(105)는 또한, 획득된 입력 영상의 중간 표현을 획득하고 전송하도록 구성되며, 중간 표현은 영상 신호 처리에 의해 보정되지 않은 원본 화이트 밸런스를 갖는다. 부호화부(105)는 예를 들어, 아래 도 2에서 설명될 컨볼루션 뉴럴 네트워크(CNN) 또는 DNN과 같은 뉴럴 네트워크를 포함한다.
제1 WB 복호화부(110)는 획득된 중간 표현에 기초하여 원본 화이트 밸런스와 다른 제1 화이트 밸런스를 갖는 제1 출력 영상을 획득하고 전송하도록 구성된다. 제1 WB 복호화부(110)는 예를 들어 CNN 또는 DNN과 같은 뉴럴 네트워크를 포함하는데, 이는 아래 도 3에서 설명될 것이다. 예를 들어, 제1 화이트 밸런스는 AWB(Auto White Balance)일 수 있다.
제2 WB 복호화부(115)는 획득된 중간 표현에 기초하여 원본 화이트 밸런스 및 제1 화이트 밸런스와 다른 제2 화이트 밸런스를 갖는 제2 출력 영상을 획득하도록 구성된다. 제2 WB 복호화부(115)는 예를 들어 CNN 또는 DNN과 같은 뉴럴 네트워크를 포함하는데, 이는 아래 도 4에서 설명될 것이다. 제2 화이트 밸런스는 예를 들어, 각각 2850K (K) 및 7500K 색온도(color temperatures)와 상관 관계가 있는 쉐이드 WB(shade WB) 또는 백열등 WB(Indecedent WB)일 수 있다.
자세하게는, 임의의 WB 설정 WB (in)과 함께 알려지지 않은 카메라 ISP를 통해 렌더링된 입력 sRGB 영상 I WB(in)을 고려하면, 목표는 타겟 WB 설정 WB (t)와 함께 재-렌더링된 것처럼 보이기 위해 입력 sRGB 영상 I WB(in)의 컬러들을 편집하는 것이다.
처리되지 않은 원본 raw-RGB 영상이 이용가능한 경우, 위의 작업을 정확하게 수행할 수 있다. 처리되지 않은 원본 raw-RGB 값들이 복원되면, 임의의 WB 설정 WB (in) 이 타겟 WB 설정 WB (t)으로 변경되고, 그러고 나서 상기 sRGB 영상이 다시 소프트웨어-기반 ISP에 의해 원래 sRGB 컬러 스페이스로 재-랜더링되어 돌아갈 수 있다. 이 프로세스는 다음 수학식에 의해 설명될 수 있다.
Figure PCTKR2020015799-appb-img-000001
F : I WB(in) -> D WB(in) 은 카메라-렌더링된 sRGB 영상을 임의의 WB 설정 WB (in)가 적용된 그것의 대응 raw-RGB 영상 D으로 되돌리는, 알려지지 않은 복원 함수이다.
G : D WB(in) -> I WB(t) 은 임의의 WB 설정 WB (in)를 편집하고, 최종 sRGB 영상 I WB(t) 를 재-랜더링하기 위한 알려지지 않은 카메라 렌더링 함수이다. 심볼 ·는 함수 합성을 나타낸다.
목표는 최종 sRGB 영상 I WB(t)를 생성하기 위해 G·F 의 기능을 모델링하는 것이다. 첫번째로, 어떻게 함수들 G 및 F가 최종 sRGB 영상 I WB(t) 를 생성하기 위해 협력할 수 있는지가 분석된다. 수학식 1로부터, 함수 G가 중간 표현을 받아들이고, 이를 타겟 WB 설정 WB (t)을 갖도록 sRGB 컬러 스페이스 인코딩으로 렌더링하고, 함수 F는 입력 sRGB 영상 I WB(in)을 중간 표현(즉, 캡쳐된 WB 설정을 갖는 raw-RGB 영상 D)으로 변환(transform)한다.
ISP의 렌더링 체인에 의해 적용되는 비선형성으로 인해 함수 G는 일련의 서브 함수(a set of sub-functions)를 포함하는 하이브리드 함수로 생각할 수 있으며, 각 하위 함수는 특정 WB 설정으로 중간 표현을 렌더링하는 역할을 한다.
목표는 원본 raw-RGB 값을 재구성/재-렌더링하는 것이 아니라, 타겟 WB 설정 WB (t)로 최종 sRGB 영상 I WB(t)를 생성하는 것이다. 그러므로, G·F 의 기능은 부호화부/복호화부 스킴으로 모델링될 수 있다. 복호화부 g 1,g 2, ...(즉, 제1 및 제2 WB 복호화부(110 및 115))의 각각이 다른 WB 설정으로 최종 sRGB 영상들을 생성하는 반면, 부호화부 f(즉, 도 1의 부호화부(105))는 입력 sRGB 영상 I WB(in)를 잠재적인 표현(latent representation)으로 전송한다. 수학식 1과 유사하게, 프레임 워크는 다음과 같이 공식화될 수 있다:
Figure PCTKR2020015799-appb-img-000002
Figure PCTKR2020015799-appb-img-000003
이고, Z는 원본 입력 sRGB 영상 I WB(in)의 중간 표현(즉, 잠재적인 표현)일 수 있다.
목표는 수학식 1에서의 케이스처럼, 함수 g t를 다른 WB 설정 WB y를 타겟으로 하는 새로운 함수 g y로 변경하는 것이 함수 f의 어떠한 변경을 요구하지 않는 것과 같이, 함수들 f 및 g t를 독립적으로 만드는 것이다.
실시예들에서, 세 가지 다른 WB 설정이 타겟화된다:
(i) WB (A): AWB - 캡쳐된 영상의 장면의 올바른 조명을 나타냄;
(ii) WB (T): 텅스텐/백열등(Tungsten/incandescent) - 실내 조명을 위한 WB를 나타냄; 및
(iii) WB (S): 쉐이드(shade) - 실외 조명을 위한 WB를 나타냄.
이것은 AWB, 백열등 WB 및 쉐이드 WB에 각각 해당하는 출력 영상들을 생성하는 역할을 하는 세 가지 다른 복호화부 g A, g T 및 g S를 발생시킨다.
백열등 및 쉐이드 WB는 컬러 속성들(color properties)에 따라 선택된다. 이 것은 상관 색온도 측면에서 조명을 고려할 때 이해될 수 있다. 예를 들어, 백열등 및 쉐이드 WB 설정은 각각 2850K 및 7500K 색 온도와 상관 관계가 있다. 이 조명 색온도들의 광범위는 만족스러운 조명(pleasing illuminations)의 범위로 간주된다. 게다가, 백열등 WB와 쉐이드 WB 사이의 넓은 색온도 범위는 보간법을 통해 이 범위 내의 색온도를 가진 영상의 근사치를 허용한다. 이 보간 프로세스의 세부 사항은 아래 도 9에서 설명된다. AWB 모드에는 입력 영상의 조명 조건에 따라 변하기 때문에 고정된 상관 색온도가 없다.
도 1을 다시 참조하면, DNN의 아키텍처에 대한 개요가 도시된다. U-Net 아키텍처는 부호화부(105)와 제1 및 제2 WB 복호화부(110 및 115) 사이의 멀티-스케일 스킵 연결(120)과 함께 이용될 수 있다. 프레임 워크에는 두 개의 메인 유닛이 포함된다. 첫 번째 메인 유닛은 입력 영상의 멀티-스케일 잠재 표현 (중간 표현)을 추출하는 4-레벨 부호화부 유닛인 부호화부(105)이다. 두 번째 메인 유닛은 적어도 2 개의 4-레벨 복호화부(예를 들어, 제1 및 제2 WB 복호화부(110, 115))들을 포함한다. 각 유닛에는 서로 다른 보틀넥(bottleneck) 및 업샘플링 구성요소(component)가 있다. 부호화부(105)의 제1 레벨과 제1 및 제2 WB 복호화부(110, 115)의 각각의 마지막 레벨에서, 각 컨볼루션 레이어는 24 개의 채널을 갖는다. 각각의 후속 또는 이전 레벨에 대해, 채널의 개수가 두 배가 된다. (예를 들어, 부호화부(105)의 제3 레벨은 각 컨볼루션 레이어에 대해 192 개의 채널을 갖는다)
도 2는 도 1의 딥 화이트 밸런싱 편집을 위한 장치(100)의 부호화부(105)의 블록도이다.
도 2를 참조하면, 부호화부(105)는 제1 레벨(205), 제2 레벨(210) 및 제3 레벨(215)을 포함할 수 있다. 입력 영상은 제1 레벨(205), 제2 레벨(210) 및 제3 레벨(215)의 각 레이어를 통해 전송되어 제1 WB 복호화부(110) 및/또는 제2 WB 복호화부(115)로 출력되는 중간 표현을 획득할 수 있다.
제1 레벨(205)은 스트라이드(stride) 1 및 패딩(padding) 1을 갖는 3x3 컨볼루션 레이어들(205a 및 205b), 및 ReLU (rectified linear unit) 레이어(205c 및 205d)를 포함할 수 있다. ReLU 레이어(205c)는 컨볼루션 레이어(205a, 205b) 사이에 위치될 수 있고, 컨볼루션 레이어(205b)는 ReLU 레이어(205c, 205d) 사이에 위치될 수 있다. 예를 들어, 컨볼루션 레이어(205a, 205b) 및 ReLU 레이어(205c, 205d) 각각은 128x128x24의 크기를 가질 수 있다.
제2 레벨(210)은 스트라이드 2를 갖는 2x2 최대 풀링(max-pooling; 맥스-풀링) 레이어(210a 및 210b), 스트라이드 1 및 패딩 1을 갖는 3x3 컨볼 루션 레이어(210c 및 210d), 및 ReLU 레이어(210e 및 210f)를 포함할 수 있다. ReLU 레이어(210e)는 컨볼루션 레이어(210c, 210d) 사이에 위치될 수 있고, 컨볼루션 레이어(210d)은 ReLU 레이어(210e 및 210f) 사이에 위치될 수 있으며, 컨볼루션 레이어(210c 및 210d)와 ReLU 레이어(210e 및 210f)가 최대 풀링 레이어(210a 및 210b) 사이에 위치될 수 있다. 예를 들어, 컨볼루션 레이어(210c, 210d)와 ReLU 레이어(210e, 210f)는 각각 64x64x48의 크기를 가질 수 있고, 최대 풀링 레이어(210a)는 64x64x24의 크기를 가질 수 있으며, 최대 풀링 레이어(210b)는 32x32x48의 크기를 가질 수 있다.
제3 레벨(215)은 스트라이드 1 및 패딩 1을 갖는 3x3 컨볼 루션 레이어(215a 및 215b), ReLU 레이어(215c 및 215d), 및 스트라이드 2를 갖는 2x2 최대 풀링 레이어(215e)를 포함할 수 있다. ReLU 레이어(215c)는 컨볼루션 레이어(215a, 215b) 사이에 위치될 수 있고, 컨볼루션 레이어(215b)는 ReLU 레이어(215c, 215d) 사이에 위치될 수 있으며, 최대 풀링 레이어(215e)는 컨볼루션 레이어(215a, 215b)와 ReLU 레이어(215c 및 215d) 뒤에 배치될 수 있다. 예를 들어, 컨볼 루션 레이어(215a, 215b)와 ReLU 레이어(215c, 215d)는 각각 16x16x192의 크기를 가질 수 있고, 최대 풀링 레이어(215e)는 8x8x192의 크기를 가질 수 있다.
도 3은 도 1의 딥 화이트 밸런싱 편집 장치(100)의 제1 WB 복호화부(110)의 블록도이다.
도 3을 참조하면, 제1 WB 복호화부(110)는 제1 레벨(305), 제2 레벨(310), 제3 레벨(315) 및 제4 레벨(320)을 포함한다. 중간 표현은 제1 레벨(305), 제2 레벨(310), 제3 레벨(315) 및 제4 레벨(320)의 각 레이어를 통해 전달되어 제1 출력 영상을 획득할 수 있다.
제1 레벨(305)은 ReLU 레이어(305a 및 305b) 및 스트라이드 1 및 패딩 1을 갖는 3x3 컨볼루션 레이어(305c 및 305d)를 포함할 수 있다. 컨볼루션 레이어(305c)는 ReLU 레이어(305a, 305b) 사이에 위치될 수 있고, ReLU 레이어(305b)는 컨볼루션 레이어(305c, 305d) 사이에 위치될 수 있다. 예를 들어, ReLU 레이어(305a, 305b)와 컨볼루션 레이어(305c, 305d)는 각각 8x8x384의 크기를 가질 수 있다.
*제2 레벨(310)은 2x2 업샘플링 레이어(310a), 스트라이드 1 및 패딩 1을 갖는 3x3 컨볼루션 레이어(310b, 310c 및 310d), 뎁스 연결 레이어(depth concatenation layer)(310e) 및 ReLU 레이어(310f 및 310g)를 포함할 수 있다. 제2 레벨(310)의 레이어들은 입력에서 출력까지, 업샘플링 레이어(310a), 컨볼루션 레이어(310b), 뎁스 연결 레이어(310e), ReLU 레이어(310f), 컨볼루션 레이어(310c), ReLU 레이어(310g) 및 컨볼루션 레이어(310d)의 순서일 수 있다. 예를 들어, 업샘플링 레이어(310a), 컨볼루션 레이어(310b, 310c, 310d) 및 ReLU 레이어(310f, 310g)는 각각 16x16x192의 크기를 가질 수 있고, 뎁스 연결 레이어(310e)는 16x16x384의 크기를 가질 수 있다.
제3 레벨(315)은 2x2 업샘플링 레이어(315a), 스트라이드 1 및 패딩 1을 갖는 3x3 컨볼루션 레이어(315b, 315c 및 315d), 뎁스 연결 레이어(315e) 및 ReLU 레이어(315f 및 315g)를 포함할 수 있다. 제3 레벨(315)의 레이어는, 입력에서 출력까지, 업샘플링 레이어(315a), 컨볼루션 레이어(315b), 뎁스 연결 레이어(315e), ReLU 레이어(315f), 컨볼루션 레이어(315c), ReLU 레이어(315g) 및 컨볼루션 레이어(315d)의 순서일 수 있다. 예를 들어, 업샘플링 레이어(315a), 컨볼루션 레이어(315b, 315c, 315d) 및 ReLU 레이어(315f, 315g)는 각각 64x64x48의 크기를 가질 수 있고, 뎁스 연결 레이어(315e)는 64x64x96의 크기를 가질 수 있다.
제4 레벨(320)은 2x2 업샘플링 레이어(320a), 스트라이드 1 및 패딩 1을 갖는 3x3 컨볼루션 레이어(320b, 320c 및 320d), 깊이 연결 레이어(320e), ReLU 레이어들(320f 및 320g) 및 스트라이드 1 및 패딩 1을 갖는 1x1 컨볼루션 레이어(320h)를 포함할 수 있다. 제4 레벨(320)의 레이어는, 입력에서 출력까지, 업샘플링 레이어(320a), 컨볼루션 레이어(320b), 뎁스 연결 레이어(320e), ReLU 레이어(320f), 컨볼루션 레이어(320c), ReLU 레이어(320g) 및 컨볼루션 레이어(320d) 및 컨볼루션 레이어(320h)의 순서일 수 있다. 예를 들어, 업샘플링 레이어(320a), 컨볼루션 레이어(320b, 320c, 320d) 및 ReLU 레이어(320f, 320g)는 각각 128x128x24의 크기를 가질 수 있고, 뎁스 연결 레이어(320e)는 128x128x48의 크기를 가질 수 있으며, 컨볼루션 레이어(320h)의 크기는 128x128x3이다.
도 4는 도 1의 딥 화이트 밸런싱 편집 장치(100)의 제2 WB 복호화부(115)의 블록도이다.
도 4를 참조하면, 제2 WB 복호화부(115)는 제1 레벨(405), 제2 레벨(410), 제3 레벨(415) 및 제4 레벨(420)을 포함한다. 중간 표현은 제1 레벨(405), 제2 레벨(410), 제3 레벨(415) 및 제4 레벨(420)의 각 레이어를 통해 전달되어 제2 출력 영상을 얻을 수 있다.
제1 레벨(405)은 ReLU 레이어들(405a 및 405b) 및 스트라이드 1 및 패딩 1을 갖는 3x3 컨볼루션 레이어들(405c 및 405d)를 포함할 수 있다. 컨볼루션 레이어(405c)는 ReLU 레이어(405a, 405b) 사이에 위치될 수 있고, ReLU 레이어(405b)는 컨볼루션 레이어(405c, 405d) 사이에 위치될 수 있다. 예를 들어, ReLU 레이어(405a, 405b) 및 컨볼루션 레이어(405c, 405d) 각각은 8x8x384의 크기를 가질 수 있다.
제2 레벨(410)은 2x2 업샘플링 레이어(410a), 스트라이드 1 및 패딩 1을 갖는 3x3 컨볼루션 레이어(410b, 410c 및 410d), 뎁스 연결 레이어(410e) 및 ReLU 레이어(410f 및 410g)를 포함할 수 있다. 제2 레벨(410)의 레이어는, 입력에서 출력까지, 업샘플링 레이어(410a), 컨볼루션 레이어(410b), 뎁스 연결 레이어(410e), ReLU 레이어(410f), 컨볼루션 레이어(410c), ReLU 레이어(410g) 및 컨볼루션 레이어(410d)의 순서일 수 있다. 예를 들어, 업샘플링 레이어(410a), 컨볼루션 레이어(410b, 410c, 410d) 및 ReLU 레이어(410f, 410g)는 각각 16x16x192의 크기를 가질 수 있고, 뎁스 연결 레이어(410e)는 16x16x384의 크기를 가질 수 있다.
제3 레벨(415)은 2x2 업샘플링 레이어(415a), 스트라이드 1 및 패딩 1을 갖는 3x3 컨볼루션 레이어(415b, 415c 및 415d), 뎁스 연결 레이어(415e) 및 ReLU 레이어(415f 및 415g)를 포함할 수 있다. 제3 레벨(415)의 레이어는, 입력에서 출력까지, 업샘플링 레이어(415a), 컨볼루션 레이어(415b), 뎁스 연결 레이어(415e), ReLU 레이어(415f), 컨볼루션 레이어(415c), ReLU 레이어(415g) 및 컨볼루션 레이어(415d)의 순서일 수 있다. 예를 들어, 업샘플링 레이어(415a), 컨볼루션 레이어(415b, 415c, 415d) 및 ReLU 레이어(415f, 415g)는 각각 64x64x48의 크기를 가질 수 있고, 뎁스 연결 레이어(415e)는 64x64x96의 크기를 가질 수 있다.
제4 레벨(420)은 2x2 업샘플링 레이어(420a), 스트라이드 1 및 패딩 1을 갖는 3x3 컨볼루션 레이어(420b, 420c 및 420d), 뎁스 연결 레이어(420e), ReLU 레이어(420f 및 420g) 및 스트라이드 1 및 패딩 1을 갖는 1x1 컨볼루션 레이어(420h)을 포함할 수 있다. 제4 레벨(420)의 레이어는, 입력에서 출력까지, 업샘플링 레이어(420a), 컨볼루션 레이어(420b), 뎁스 연결 레이어(420e), ReLU 레이어(420f), 컨볼루션 레이어(420c), ReLU 레이어(420g), 컨볼루션 레이어(420d), 컨볼루션 레이어(420h)의 순서일 수 있다. 예를 들어, 업샘플링 레이어(420a), 컨볼루션 레이어(420b, 420c, 420d) 및 ReLU 레이어(420f, 420g)는 각각 128x128x24의 크기를 가질 수 있고, 뎁스 연결 레이어(420e)는 128x128x48의 크기를 가질 수 있으며, 컨볼루션 레이어(420h)의 크기는 128x128x3일 수 있다.
도 2 내지 도 4를 참조하면, 스킵 연결(120a)은 부호화부(105)의 제1 레벨(205)을 제1 WB 복호화부(110)의 제4 레벨(320) 및/또는 제2 WB 복호화부(115)의 제4 레벨(420)과 연결할 수 있다. 스킵 연결(120b)은 부호화부(105)의 제2 레벨(210)을 제1 WB 복호화부(110)의 제3 레벨(315) 및/또는 제2 WB 복호화부(115)의 제3 레벨(415)과 연결할 수 있다. 스킵 연결(120c)은 부호화부(105)의 제3 레벨(215)을 제1 WB 복호화부(110)의 제2 레벨(310) 및/또는 제2 WB 복호화부(115)의 제2 레벨(410)과 연결할 수 있다.
도 5는 실시예들에 따른 딥 화이트 밸런싱 편집 방법(500)의 흐름도이다.
방법(500)은 도 1의 딥 화이트 밸런싱 편집 장치(100)를 이용하는 적어도 하나의 프로세서에 의해 수행될 수 있다.
도 5를 참조하면, 동작(505)에서, 방법(500)은 영상 신호 처리에 의해 보정된 원본 화이트 밸런스를 갖는 입력 영상을 획득하는 단계를 포함한다.
동작 510에서, 방법(500)은 제1 뉴럴 네트워크를 이용하여, 상기 획득된 입력 영상의 중간 표현을 획득하는 단계를 포함하며, 상기 중간 표현은 영상 신호 처리에 의해 보정되지 않은 원본 화이트 밸런스를 갖는다.
동작 515에서, 방법(500)은 상기 획득된 중간 표현에 기초하여, 제2 뉴럴 네트워크를 이용하여, 원본 화이트 밸런스와 다른 제1 화이트 밸런스를 갖는 제1 출력 영상을 획득하는 단계를 포함한다.
동작 520에서, 방법(500)은 상기 획득된 중간 표현에 기초하여, 제3 뉴럴 네트워크를 이용하여, 원본 화이트 밸런스 및 제1 화이트 밸런스와 상이한 제2 화이트 밸런스를 갖는 제2 출력 영상을 획득하는 단계를 포함한다.
상기 방법(500)은 복수의 화이트 밸런스들 중 하나를 선택하기 위한 슬라이더를 표시하고, 복수의 화이트 밸런스들 중 하나를 선택하는 사용자 입력을 기초로, 표시된 슬라이더를 이용하여, 상기 획득된 제1 출력 영상 상기 획득된 제2 출력 영상 및 상기 획득된 제1 출력 영상 및 상기 획득된 제2 출력 영상의 블렌딩 영상 중 임의의 하나 또는 임의의 조합을 이용하여 복수의 화이트 밸런스들 중 선택된 하나의 화이트 밸런스를 갖는 결과 영상을 표시하는 단계를 더 포함할 수 있다.
적어도 하나의 프로세서, 제1 뉴럴 네트워크 및 제2 뉴럴 네트워크는 서버에서 구현될 수 있으며, 상기 방법(500)은 전자 장치의 영상 신호 프로세서로부터 원본 화이트 밸런스가 보정된 입력 영상을 수신하는 단계; 및 영상 신호 프로세서의 영상 신호 처리에 의해, 획득된 제1 출력 영상을 전자 장치로 전송하는 단계를 더 포함할 수 있다.
도 6은 실시예들에 따른 딥 화이트 밸런싱 편집을 위한 훈련(또는 학습)(training) 방법(600)의 흐름도이다.
방법(600)은 도 1의 딥 화이트 밸런싱 편집을 위한 장치(100)를 훈련하는 적어도 하나의 프로세서에 의해 수행될 수 있다.
도 6을 참조하면, 동작 605에서, 방법(600)은 렌더링된 WB 데이터 셋을 획득하는 것을 포함한다. 렌더링된 WB 데이터 셋은 딥 화이트 밸런싱 편집을 위한 장치(100)를 훈련시키고 검증하는데 이용된다. 이 데이터 셋에는 쉐이드 및 백열등 설정을 포함하여, 다양한 카메라 모델과 다양한 WB 설정으로 렌더링된 ~ 65,000개의 sRGB 영상들이 포함될 수 있다. 각 영상에 대해 올바른 WB 설정(즉, 올바른 AWB 결과로 간주된)으로 렌더링된 해당 그라운드-트루쓰 영상(ground-truth image)도 있다. 이 데이터 셋에는 학습 셋(셋 1)와 테스트 셋(셋 2)의 두 가지 서브셋이 포함된다. 장치(100)를 훈련시키고 검증하기 위해 셋 1을 이용한 쓰리-폴드(3-겹) 크로스-검증(Three-fold cross-validation)이 수행된다. 특히, 12,000 개의 훈련 영상이 투 폴드(two folds)로부터 무작위로 선택되고, 나머지 폴드에서 2,000 개의 검증 영상이 무작위로 선택된다. 각 훈련 영상에 대해, (i) 올바른(correct) WB(AWB로 표시), (ii) 쉐이드 WB 및 (iii) 백열등 WB와 함께 세 개의 그라운드-트루쓰 영상이 렌더링된다. 세 가지 모델들은 훈련 및 검증 폴드(겹)들을 변경하며 훈련된다.
동작(610)에서, 방법(600)은 획득된 렌더링된 WB 데이터 셋을 어그맨테이팅하는 단계를 포함한다. 자세하게는, 렌더링된 WB 데이터 셋에 포함된 동일한 장면의 추가 1,029개의 raw-RGB 영상들을 렌더링하지만 임의의 색온도를 사용하여 학습 영상이 어그맨테이팅된다. 각 에포크(epoch)에서 각 복호화부에 대해 각 훈련 영상과 해당 그라운드-트루쓰 영상으로부터 무작위로 4 개의 128x128 패치들이 선택된다. 기하학적 어그맨테이션(로테이션 및 플리핑, rotation and flipping)은 오버피팅(overfitting)을 피하기 위해 추가적인 데이터 어그맨테이션으로서 선택된 패치에 적용될 수 있다.
동작 615에서, 방법(600)은 정확한 WB(correct WB), 쉐이드 WB 및 백열등 WB에 각각 대응하는 재구성된 영상(패치)을 획득하기 위해 장치(100)를 이용하여 어그맨테이션된 렌더링된 WB 데이터 셋을 처리하는 단계를 포함한다.
동작(620)에서, 방법(600)은 정확한 WB, 쉐이드 WB 및 백열등 WB에 각각 대응하는 재구성된 영상과 그라운드-트루쓰 영상(패치) 사이의 손실을 획득하는 단계를 포함한다. 예를 들어, 장치(100)는 재구성된 패치와 그라운드-트루쓰 패치 사이의 스퀘어드 L2-norm 손실 함수를 최소화하도록 훈련된다.
Figure PCTKR2020015799-appb-img-000004
h 및 w는 패치의 너비와 높이를 나타내며, p는 각각 훈련 패치 P 및 그라운드-트루쓰 카메라 렌더링된 패치 C의 각 픽셀에 대한 인덱스이다.
Figure PCTKR2020015799-appb-img-000005
는 세개의 타겟 WB 설정들을 나타낸다. 대안적으로, 장치(100)를 훈련시키기 위해 L1-norm 손실 함수가 이용될 수 있다.
동작 625에서, 방법(600)은 획득된 손실을 최소화하기 위해 장치(100)(예를 들어, 부호화부(105), 제1 WB 복호화부(110) 및 제2 WB 복호화부(115))에서 뉴럴 네트워크의 파라메터를 업데이트하는 단계를 포함한다. 예를 들어, 장치(100)의 컨볼루션 레이어의 가중치를 초기화한 다음, 그래디언트 이동 평균 감쇠율
Figure PCTKR2020015799-appb-img-000006
및 스퀘어드 그래디언트 이동 평균의 감쇠율
Figure PCTKR2020015799-appb-img-000007
을 갖는 적응적 모멘트 추정(Adam) 최적화기(adaptive moment estimation optimizer)를 이용하여 165,000 회 반복하여 훈련 과정이 수행될 수 있다. 학습률 10 -4이 이용될 수 있고, 매 25 에포크마다 0.5만큼 감소될 수 있다. L2 정규화 비율은 10 -5와 같이 설정할 수 있고, 미니 배치 크기는 반복당 32 개의 훈련 패치가 될 수 있다.
도 7은 실시예들에 따른 딥 화이트 밸런싱 편집 방법에서 컬러 맵핑 절차의 도면이다.
실시예들에 따른 DNN 모델은 완전히 컨볼루션 네트워크이며, 2x2 최대 풀링 레이어 및 업샘플링 레이어가 있는 4-레벨 부호화부/복호화부가 이용되기 때문에 차원들이 2 4의 배수여야 한다는 제한과 함께 입력 영상을 원래 차원으로 처리할 수 있다.
그러나 모든 크기의 입력 영상에 대해 일관된 실행 시간을 보장하기 위해 모든 입력 영상의 크기를 최대 656 픽셀로 조정할 수 있다. DNN 모델은 이러한 크기 조정된 영상에 적용된다. 그런 다음, 크기가 조정된 입력 영상과 출력 영상 사이의 컬러 맵핑 함수가 계산되고, 컬러 맵핑 함수가 전체-크기 입력 영상에 적용된다.
도 7을 참조하면, 입력 영상 I WB(in) (
Figure PCTKR2020015799-appb-img-000008
픽셀들) 및 부호화부 705 및 복호화부들 중 하나(즉, 복호화부 710)으로부터 생성된 대응 출력 영상
Figure PCTKR2020015799-appb-img-000009
(
Figure PCTKR2020015799-appb-img-000010
픽셀들, 이때,
Figure PCTKR2020015799-appb-img-000011
Figure PCTKR2020015799-appb-img-000012
)에 대하여, 컬러 맵핑 절차는 원본 입력 영상의 해상도(즉
Figure PCTKR2020015799-appb-img-000013
픽셀들)에서
Figure PCTKR2020015799-appb-img-000014
을 생성하는 것을 목표로 한다. 다운 샘플링된 입력 영상
Figure PCTKR2020015799-appb-img-000015
의 컬러들을 상기 생성된 출력 영상
Figure PCTKR2020015799-appb-img-000016
컬러들로 글로벌하게 맵핑하는 맵핑 행렬
Figure PCTKR2020015799-appb-img-000017
을 기초로 하는 다항식 함수가 채택될 수 있다. 예를 들어, 맵핑 행렬
Figure PCTKR2020015799-appb-img-000018
은 다음과 같이 폐쇄형(closed-form) 솔루션에서 계산될 수 있다.
Figure PCTKR2020015799-appb-img-000019
Figure PCTKR2020015799-appb-img-000020
Figure PCTKR2020015799-appb-img-000021
로부터
Figure PCTKR2020015799-appb-img-000022
를 구축하는 리쉐이프 함수(reshape function)이고
Figure PCTKR2020015799-appb-img-000023
는 영상의 RGB 벡터들을 더 높은 n-차원 공간으로 맵핑하는 다항 커널 함수(polynomial kernel function)일 수 있다. 예를 들어, 11 차원 다항식 맵핑이 이용될 수 있다.
맵핑 행렬
Figure PCTKR2020015799-appb-img-000024
이 계산되면 다음 수학식을 이용하여 동일한 입력 영상 해상도의 최종 결과가 계산될 수 있다.
Figure PCTKR2020015799-appb-img-000025
도 8은 다른 실시예들에 따른 딥 화이트 밸런싱 편집 방법(800)의 흐름도이다.
방법(800)은 도 1의 딥 화이트 밸런싱을 위한 장치(100)를 이용하는 적어도 하나의 프로세서에 의해 수행될 수 있다.
동작 805에서, 방법(800)은 영상 신호 처리에 의해 보정된 원본 화이트 밸런스를 갖는 입력 영상을 획득하는 단계를 포함한다.
동작 810에서, 방법(800)은 획득된 입력 영상을 다운샘플링하는 것을 포함한다.
동작 815에서, 방법(800)은 제1 뉴럴 네트워크를 이용하여 다운샘플링된 입력 영상의 다운 샘플링된 중간 표현을 획득하는 단계를 포함하고, 다운샘플링된 중간 표현은 영상 신호 처리에 의해 보정되지 않은 원본 화이트 밸런스를 갖는다.
동작 820에서, 방법(800)은 획득된 다운샘플링 된 중간 표현에 기초하여, 제2 뉴럴 네트워크를 이용하여, 원본 화이트 밸런스와 상이한 제1 화이트 밸런스를 갖는 다운 샘플링된 출력 영상을 획득하는 단계를 포함한다.
동작 825에서, 방법(800)은 획득된 다운 샘플링된 출력 영상에 컬러 맵핑을 적용하여 원본 화이트 밸런스와 상이한 제1 화이트 밸런스를 갖는 제1 출력 영상을 획득하는 단계를 포함한다.
도 9는 실시예들에 따른 딥 화이트 밸런싱 편집을 위한 사용자 인터페이스(900)의 도면이다.
사용자 인터페이스(900)는 입력 영상(905) 및 슬라이더(910)를 보여주며, 사용자가 예를 들어 AWB 설정, 쉐이드 WB 설정 및 백열등 WB 설정과 같은 세 가지 이용가능한 WB 설정을 기초로 출력 영상들 중 어떠한 영상을 생성하는 것 사이에서 선택할 수 있게 한다. 예를 들어, 백열등 WB(2850K)를 갖는 제1 출력영상(915) 또는 쉐이드 WB(7500K)를 갖는 제2 출력 영상(920)이 생성되어, 다음의 도 9의 (a) 및 (b) 부분의 사용자 인터페이스(900)에 각각 표시될 수 있다. 슬라이더(910)는 켈빈의 범위(925), 예를 들어 2850K 내지 7500K, 내에 있을 수 있고, 사용자는 슬라이더(910)를 선택된 값으로 슬라이딩함으로써 범위(925) 내 임의의 켈빈 값을 선택할 수 있다. 상기 값을 선택하는 사용자 입력에 기초하여, 사용자 인터페이스(900)는 선택된 값에 대응하는 출력 영상을 보여줄 수 있다.
쉐이드 및 백열등 WB 설정과 범위(925)에서 사용자에 의해 선택된 값을 이용하여 사용자는 도 9의 (c) 부분에 도시된 바와 같이, 입력 영상(905)를 색온도 측면에서 쉐이드 WB 또는 백열등 WB가 아닌 특정 WB(예 : 3500K)를 갖는 제3 출력 영상(930)이 되도록 추가 편집할 수 있다. 복호화부들 중 하나(예를 들어, 제1 WB 복호화부(110))에 의해 생성되지 않는 색온도 t로 새로운 타겟 WB 설정의 효과를 생성하기 위해, 각각 백열등 및 쉐이드 WB 설정들로 생성된 제1 및 제2 출력 영상(915 및 920)사이의 보간이 수행될 수 있다. 이 동작은 다음 수학식에 의해 설명될 수 있다.
Figure PCTKR2020015799-appb-img-000026
Figure PCTKR2020015799-appb-img-000027
Figure PCTKR2020015799-appb-img-000028
는 백열등 및 쉐이드 WB 설정들로 각각 생성된 제1 및 제2 출력 영상들(915 및 920)이고,
Figure PCTKR2020015799-appb-img-000029
Figure PCTKR2020015799-appb-img-000030
에 의해 주어진 보간 비율(interpolation ratio)일 수 있다.
사용자 인터페이스(900)는 전자 장치, 예를 들어, 모바일 장치에 설치된 사용자 애플리케이션에서 구현될 수 있다. 사용자 애플리케이션은 영상이 전자 장치의 카메라에 의해 캡처되고 전자 장치의 영상 신호 프로세서에 의해 처리된 후에 영상의 WB를 편집하기 위한 것일 수 있다. 사용자 애플리케이션은 갤러리 편집 서비스의 일부일 수 있다.
도 10은 실시예들에 따른 컴퓨터 시스템(1000)의 블록도이다.
도 10에 도시된 바와 같이, 컴퓨터 시스템(1000)은 프로세서(1010), 메모리(1020), 입출력 인터페이스(1030) 및 디스플레이(1040)를 포함할 수 있다.
컴퓨터 시스템(1000)은 전자 장치(예를 들어, 모바일 장치) 및/또는서버로 구현될 수 있다.
프로세서(1010)는 도 1의 딥 화이트 밸런싱 편집 장치(100)의 전반적인 제어를 수행할 수 있고, 메모리(1020)에 저장된 하나 이상의 프로그램을 실행할 수 있다. 프로세서(1010)는 하드웨어, 펌웨어 또는 하드웨어와 소프트웨어의 조합으로 구현된다. 프로세서(1010)는 중앙 처리 장치(CPU), 그래픽 처리 장치(GPU), 가속 처리 장치(APU), 마이크로 프로세서, 마이크로 컨트롤러, 디지털 신호 프로세서(DSP), 현장 프로그래밍 가능 게이트 어레이(FPGA), ASIC(application-specific integrated circuit) 또는 다른 유형의 처리 구성 요소이다. 일부 구현들에서, 프로세서(1010)는 기능을 수행하도록 프로그래밍 될 수 있는 하나 이상의 프로세서를 포함한다.
본 개시의 실시예들에 따른 프로세서(1010)는 도 1 내지 도 9를 참조하여 설명된 부호화부(105), 제1 WB 복호화부(110) 및 제2 WB 복호화부(115)를 이용하여 동작들 중 임의의 하나 또는 임의의 조합을 수행할 수 있다.
메모리(1020)는 해당 드라이브와 함께 하드 디스크 (예: 자기 디스크, 광 디스크, 광 자기 디스크 및/또는 솔리드 스테이트 디스크), CD (Compact Disc), DVD (Digital Versatile Disc), 플로피 디스크, 카트리지, 자기 테이프 및/또는 다른 유형의 비 일시적 컴퓨터 판독 가능 매체를 포함할 수 있다. 메모리(1020)는 또한 RAM (Random Access Memory), ROM (Read Only Memory) 및/또는 다른 유형의 동적 또는 정적 저장 장치(예를 들어, 플래시 메모리, 자기 메모리 및/또는 광학 메모리)를 포함할 수 있다.
메모리(1020)는 장치(100)의 구동 및 제어를 위한 각종 데이터, 프로그램 또는 어플리케이션을 저장할 수 있다. 메모리(1020)에 저장된 프로그램은 하나 이상의 명령어를 포함할 수 있다. 메모리(1020)에 저장된 하나 이상의 인스트럭션 또는 어플리케이션을 포함하는 프로그램은 프로세서(1010)에 의해 실행될 수 있다.
입 / 출력 인터페이스(1030)는 컴퓨터 시스템(1000)이 유선 연결, 무선 연결 또는 유선 및 무선 연결의 조합을 통해, 예를 들어, 다른 전자 장치 및 다른 서버와 같은 다른 장치와 통신할 수 있도록 할 수 있다. 예를 들어, 장치(100) 및 컴퓨터 시스템(1000)이 서버에 구현된 경우, 프로세서(1010)는 입/출력 인터페이스(1030)를 통해 전자 장치의 영상 신호 프로세서로부터, 영상 신호 프로세서의 영상 신호 처리에 의해 보정된 원본 화이트 밸런스를 갖는 입력 영상을 수신할 수 있다. 프로세서(1010)는 입/출력 인터페이스(1030)를 통해 원래의 화이트 밸런스와 다른 화이트 밸런스를 갖는 출력 영상을 전자 장치로 더 전송할 수 있다.
디스플레이(1040)는, 예를 들면, 프로세서(1010)로부터 데이터를 획득하고, 획득된 데이터를 디스플레이할 수있다. 디스플레이(1040)는 예를 들어, 터치 스크린, 텔레비전, 컴퓨터 모니터 또는 이들의 임의의 조합을 포함할 수 있다.
본 개시의 실시예들에 따르면, WB 편집을 위한 딥 러닝 프레임 워크가 제시된다. 프레임 워크는 화이트 밸런스가 잘못된 영상의 WB를 정확하게 수정한다. 또한 프레임 워크는 사용자에게 sRGB 영상의 WB를 다른 조명 설정으로 자유롭게 편집할 수 있도록 한다. 프레임 워크에는 단일 부호화부와 멀티 복호화부가 포함된다. 멀티 복호화부 모델은 종단 간 방식(end-to-end manner)으로 여러 WB 설정을 생성하도록 훈련된다. 상기 프레임 워크는 WB 수정 및 조작에 대한 최첨단 결과를 달성하고, WB 수정 및 조작에 대한 이전 작업에 비하여 더 효율적인 컴파일 결과를 생성할 수 있다.
도 11은 일 실시예에 따른 모바일 장치(1100)의 블록도를 도시한다.
도 11을 참조하면, 모바일 장치(1100)는 카메라 모듈(1110), 프로세서(1120)를 포함한다. 이에 제한되지 않고, 모바일 장치(1100)는 디스플레이(1130), 사용자 인터페이스 모듈(1140), 조도 센싱 모듈(1170), GPS 센싱 모듈(1180), 네트워크 정보 획득 모듈(1190) 및 저장 모듈(1150)을 더 포함할 수 있다.
카메라 모듈(1110)은 렌즈 모듈(1112), 영상 센싱 모듈(1114) 및 영상 신호 프로세서(1116)을 포함할 수 있다.
렌즈 모듈(1112)은 피사체에 대해 반사되는 빛을 수집하여 영상 센싱 모듈(1114)로 전달하는 적어도 하나의 렌즈를 포함할 수 있다. 일 실시예에 따르면, 카메라 모듈(1110)은 복수의 렌즈 모듈을 포함할 수 있다. 이때, 복수의 렌즈 모듈은 동일한 렌즈 속성(예를 들어, 화각, 초점거리, 자동초점, f넘버 또는 광학 줌)을 가질 수 있다. 또는, 적어도 하나의 렌즈 모듈은 다른 렌즈 모듈의 렌즈 속성과 다른 적어도 하나의 렌즈 속성을 가질 수 있다. 예를 들어, 렌즈 모듈(1112)은 광각 렌즈, 초광각 렌즈 또는 망원 렌즈 중 적어도 하나의 렌즈를 포함할 수 있다.
영상 센싱 모듈(1114)은 렌즈 모듈(1112)을 통해 수집되어 전달되는 빛을 전기적 신호로 변환하기 위한 적어도 하나의 영상 센서를 포함할 수 있다. 또한, 영상 센싱 모듈(1114)는 변환된 전기적 신호를 이용하여 피사체에 대응하는 영상을 획득할 수 있다. 영상 센싱 모듈(1114)을 통해 획득된 영상을 RAW 영상 데이터로 설명한다. 예를 들어, 적어도 하나의 영상 센서는 CCD(Charged Coupled Device) 센서, CMOS(Complementary Metal-Oxide Semiconductor) 센서일 수 있고, 영상 센싱 모듈(1114)은 베이어 패턴(Bayer Pattern)으로 구성된 컬러 필터 어레이와 함께 이에 대응하는 적어도 하나의 CCD 센서, CMOS 센서로 구성된 픽셀 어레이를 포함할 수 있다. 이에 제한되지 않고, 영상 센싱 모듈(1114)은 다양한 형태로 구현될 수 있다. 예를 들어, 영상 센싱 모듈(1114)은 포베온 센서로 구현될 수 있다. RAW 영상 데이터란 영상 신호 프로세서(1116)에 의해 영상 처리되지 않고, 영상 센싱 모듈(1114)로부터 직접 획득된 영상 데이터를 의미할 수 있고, 예를 들어, RAW 베이어 패턴 데이터과 같은, 컬러 필터 어레이 데이터일 수 있다.
영상 신호 프로세서(1116)는 RAW 영상 데이터를 영상 처리하여 소정의 영상 포맷의 데이터를 출력할 수 있다. 소정의 영상 포맷이란, 출력 장치(예를 들어, 디스플레이 장치나, 프린터 장치 등과 같은 장치)에서 영상을 출력하거나 출력 전 저장 장치에 저장하기 위하여, 출력 장치가 나타낼 수 있는 소정의 컬러 스페이스를 갖는 영상 포맷을 의미할 수 있다. 예를 들어, 소정의 영상 포맷은 RGB 기반 포맷, CMYK 기반 포맷, YCbCr 기반 포맷 등이 있다. RGB 포맷의 일 예로, sRGB, Adobe RGB, Prophoto RGB 포맷 등이 있고, CMYK 기반 포맷의 일 예로, SWOP CMYK 포맷 등이 있다.
예를 들어, 영상 신호 프로세서(1116)는 RAW 영상 데이터를 처리하여 sRGB 영상 데이터를 출력할 수 있다.
영상 신호 프로세서(1116)는 하드웨어에 의해 구현될 수 있다. 그러나, 이에 제한되지 않고, 소프트웨어와의 결합에 의해 구현될 수 있다. 이때, 영상 신호 프로세서(1116)는 카메라 모듈(1110) 외부에 위치하는 프로세서(1120) 내에 SW 모듈로 구현될 수 있다. 또한, 영상 신호 프로세서(1116)는 카메라 모듈(1110) 및 프로세서(1120)와 별개의 하드웨어로 구현될 수 있다. 또한 영상 신호 프로세서(1116)는 카메라 모듈(1110) 외부에 위치하는 프로세서(1120)와 연동하여 RAW 영상 데이터 처리 기능을 수행할 수 있다. 다른 실시예에서, 영상 신호 프로세서(1116)는 카메라 모듈(1110) 내에 SoC(System on Chip)로 구현될 수 있다.
영상 신호 프로세서(1116) 또는 프로세서(1120)는 디모자이킹 모듈(1121), 노이즈 리덕션 모듈(1122), 화이트-밸런싱 조정 모듈(1123), 컬러 공간 변환 모듈(1124) 및 컬러 보정 모듈(1125) 및 영상 출력 모듈(1126)을 포함할 수 있다.
디모자이킹 모듈(1121)은, RAW 영상 데이터에 대하여 디모자이킹을 수행할 수 있다. 예를 들어, 디모자이킹 모듈(1121)은, RAW 영상 데이터에 대하여 RGB 디모자이킹을 수행하여 RGB 영상 데이터를 획득할 수 있다. 디모자이킹은 일종의 컬러 인터폴레이션일 수 있다.
노이즈 리덕션 모듈(1122)은 RGB 데이터에 대한 노이즈 리덕션 프로세스를 수행하여 노이즈가 감소된 RGB 영상 데이터를 획득할 수 있다.
화이트-밸런싱 조정 모듈(1123)은 입력되는 제 1 영상 데이터에 대하여 화이트 밸런스가 조정된 제 2 영상 데이터를 출력할 수 있다. 제 1 영상 데이터는 원본 RGB 데이터일 수 있고, 제 2 영상 데이터는 화이트밸런스 조정된 RGB 데이터일 수 있다. 이때, 제 1 영상 데이터는, 디모자이킹 모듈(1121) 및 노이즈 리덕션 모듈(1122) 등 중 적어도 하나를 거친 sRGB 영상 데이터일 수 있다.
또는, 제 1 영상 데이터는 원본 컬러 필터 어레이 데이터이고, 제 2 영상 데이터는 화이트밸런스 조정된 컬러 필터 어레이 데이터일 수 있다.
일 실시예에 의하면, 화이트-밸런싱 조정 모듈(1123)은 복수의 인공지능 모델 중 적어도 하나의 인공지능 모델에 제 1 영상 데이터를 입력하여 적어도 하나의 화이트밸런스 조정된 제 2 영상 데이터를 획득할 수 있다. 이때, 복수의 인공지능 모델은 뉴럴 네트워크로 구성되며, 각각의 인공지능 모델은 부호화부 모델과 복호화부 모델을 포함할 수 있다. 복수의 인공지능 모델은 서로 다른 복호화부 모델을 포함할 수 있다. 복수의 인공지능 모델은 하나의 동일한 부호화부 모델을 포함할 수 있다.
예를 들어, 화이트-밸런싱 조정 모듈(1123)은 도 1의 부호화부(105)(인코더 모델에 대응), 제1 WB 복호화부(110) 및 제2 WB 복호화부(115)(디코더 모델에 대응) 등을 포함할 수 있다. 다만, 제1 WB 복호화부(110) 및 제2 WB 복호화부(115)에 제한되지 않고, 제3 WB 복호화부, 제4 WB 복호화부, ... 등을 포함할 수 있음을 당업자는 이해할 수 있다. 제1 WB 복호화부 및 제2 WB 복호화부는, 프로세서 또는 영상 신호 프로세서를 이용하여 선택적으로 사용될 수 있으며, 부호화부를 통해 처리된 데이터를 입력 데이터로 처리한다.
부호화부 및 복수 개의 WB 복호화부는 뉴럴 네트워크로 구성되며, 원본 sRGB 영상 또는 WB가 변경된 sRGB 영상을 훈련 데이터로 이용하여 훈련될 수 있다.
또한, 부호화부 및 복수 개의 WB 복호화부는 원본 Raw 영상과 WB가 변경된 Raw 영상을 훈련 데이터로 이용하여 훈련될 수도 있다.
여기서, '원본'은 'WB가 변경된'에 대응하는 표현으로 사용하였으며, '원본'은 영상 센싱 모듈(1114)을 통해 획득된 원본 Raw 영상 데이터에 대하여, 영상 신호 프로세서(1116) 등에 의해 화이트밸런스 조정이 수행되지 않은 영상만을 의미하는 것에 제한되지 않고, 원본 Raw 영상 데이터에 대하여, 영상 신호 프로세서(1116)에 의해 화이트밸런스 조정이 수행된 영상을 의미할 수도 있다.
이때, 영상 센싱 모듈(1114)을 통해 획득된 원본 Raw 영상 데이터에 대하여 영상 신호 프로세서(1116) 등에 의해 화이트밸런스 조정이 수행되지 않은 영상을 입력 데이터로 하는 화이트-밸런싱 조정 모듈(1123)은 원본 WB 조정 모듈이라고 하고, 영상 센싱 모듈(1114)을 통해 획득된 원본 Raw 영상 데이터에 대하여 영상 신호 프로세서(1116) 등에 의해 화이트밸런스 조정이 수행된 영상을 입력 데이터로 하는 화이트-밸런싱 조정 모듈(1123)은 포스트 WB 조정 모듈이라고 구분할 수 있다. 도 11 전의 도면들을 참조하여, 전술한 WB 조정에 관한 내용은, 포스트 WB 조정 모듈에 관한 설명이나, 이에 제한되지 않고, 도 11 전 도면들을 참조하여 설명된 내용이 원본 WB 조정 모듈에도 적용될 수 있음을 당업자는 이해할 수 있다.
'WB가 변경된'의 의미는, 소정의 WB 복호화부의 출력으로 기대되는 WB 속성(예를 들어, AWB, 백열등 WB 및 쉐이드 WB)을 갖도록 WB가 변경된 것을 의미할 수 있다.
부호화부는 제1 뉴럴 네트워크로 구성되며, sRGB 영상 데이터를 입력데이터로 입력받을 수 있으며, 입력된 sRGB 영상 데이터에 대응하는 Raw 영상 데이터를 출력데이터로 출력할 수 있다.
일 실시예에서는, 부호화부는, Raw 영상 데이터를 입력데이터로 입력받을 수 있으며, 입력된 Raw 영상 데이터에 대응하는 중간 표현(intermediate representation)을 출력데이터로 출력할 수 있다.
복수의 복호화부 각각은 제1 뉴럴 네트워크와는 상이한 구조를 갖는 제2 뉴럴 네트워크로 구성되며, 부호화부에서 출력된 Raw 영상 데이터를 입력데이터로 입력받을 수 있다. 부호화부는, 영상 센싱 모듈(1114)을 통해 획득된 원본 Raw 영상 데이터를 입력데이터로 입력받을 수 있다. 이 경우, 복호화부로만 구성된 인공지능 모델이 모바일 장치(1100)에 탑재되어, 영상 센싱 모듈(1114)을 통해 획득된 원본 Raw 영상 데이터를 처리할 수 있다. 즉, 인공지능 모델의 학습 단계에서는 복호화부와 부호화부를 하나의 학습 과정을 통해 학습할 수 있으나, 학습된 인공지능 모델을 모바일 장치(1100)에 적용하는 경우에는 복호화부만을 선별하여 모바일 장치(1100)의 저장 모듈(1150)에 저장할 수 있다.
일 실시예에서는, 복호화부 각각은, 부호화부에서 출력된 중간 표현(intermediate representation)을 입력데이터로 입력받을 수 있다. 복수의 복호화부는 미리 지정된 WB 속성에 대응하도록 입력 데이터를 변환하여 출력한다.
복호화부가 Raw 영상 데이터를 입력데이터로 입력받는 경우에는 각 복호화부에 대응하는 WB 속성에 따라 Raw 영상 데이터를 변환하여 WB 속성이 반영된 sRGB 영상 데이터를 생성하여 출력한다.
일 실시예에서는, 사용자와의 인터페이스를 위해, sRGB 영상 데이터로 변환하여 표시하고 표시된 화면을 통해 사용자가 선호하는 WB 셋팅 값을 입력 받지만, 사용자가 선호하는 WB 셋팅 값을 적용한 영상을 재획득하기 위해서 화이트-밸런싱 조정 모듈(1123)은 먼저 표시된 sRGB 영상에 대응하는 Raw 영상 데이터를 부호화부를 통해 획득하고, 사용자 선호 WB 셋팅에 대응하는 복호화부를 통해 WB가 변경된 sRGB 영상 데이터를 획득할 수 있다.
다른 실시예에서는, 별도의 센서 모듈(1160)을 통해 획득한 촬영 조건(shooting condition)에 대한 정보에 기초하여, 복수의 인공지능 모델 중 하나를 선택하고 선택된 인공지능 모델을 통해 촬영 조건에 대응하는 WB 셋팅값이 적용된 영상을 획득할 수 있다. 이 경우, 인공지능 모델은 복호화부로만 구성된 인공지능 모델일 수 있으며, 영상 센싱 모듈(1114)을 통해 획득된 원본 Raw 영상 데이터를 입력데이터로 입력받을 수 있다.
또한, 복호화부가 입력된 Raw 영상 데이터에 대응하는 중간 표현(intermediate representation)을 입력데이터로 입력받는 경우에는 각 복호화부에 대응하는 WB 속성에 따라 변환된 Raw 영상 데이터를 생성하여 출력한다. 즉, 사용자의 인터페이스가 필요하지 않은 경우, 사용자가 선호하는 WB 셋팅 값을 적용한 영상을 재획득하기 위해서 화이트-밸런싱 조정 모듈(1123)은 Raw 영상 데이터에 대응하는 중간 표현을 부호화부를 통해 획득하고, 사용자 선호 WB 셋팅에 대응하는 복호화부를 통해 WB가 변경된 Raw 영상 데이터를 획득할 수 있다.
제 1 뉴럴 네트워크와 적어도 하나의 제 2 뉴럴 네트워크의 가중치 및 바이어스는 미리 훈련되어 설정될 수 있다. 일 실시예에서는, 프로세서(1120) 또는 영상 신호 프로세서(1116)는 별도의 훈련 장치로부터 미리 훈련되어 저장된 제1 뉴럴 네트워크와 적어도 하나의 제 2 뉴럴 네트워크의 가중치 및 바이어스를 수신하고, 저장 모듈(1150)에 저장된 제1 뉴럴 네트워크 및 제2 뉴럴 네트워크가 수신된 적어도 하나의 가중치 및 바이어스로 설정되도록 제어할 수 있다.
화이트-밸런싱 조정 모듈(1123)은 센서 모듈(1160)을 통해 획득된 촬영 조건에 대한 정보에 기초하여, 저장 모듈(1150)에 저장된 복수의 인공지능 모델 중 촬영 조건에 대응하는 인공지능 모델을 결정하고, 결정된 인공지능 모델에 제 1 영상 데이터를 입력하여 촬영 조건에 대응하도록 화이트밸런스 조정된 제2 영상 데이터를 획득할 수 있다. 이와 관련하여, 하기 센서 모듈(1160)을 설명한 후에, 관련 내용을 상술하겠다.
컬러 공간 변환 모듈(1124)은 입력되는 영상 데이터에 대한 컬러 공간 변환을 수행하여 변환된 컬러 공간(color space)을 갖는 영상 데이터를 획득할 수 있다. 예를 들어, 컬러 공간 변환 모듈(1124)은 RGB 영상 데이터에 대하여 컬러 공간 변환을 수행하여 CIE-XYZ 영상 데이터를 획득할 수 있다.
컬러 보정 모듈(1125)는 변환된 컬러 공간을 갖는 영상 데이터에 대하여 컬러 보정을 수행하여 컬러 보정된 영상 데이터를 획득할 수 있다. 컬러 보정(color manipulation)은 감마 보정을 포함할 수 있으며, photo-finishing이라 칭할 수 있다.
영상 출력 모듈(1126)는 컬러 보정된 영상 데이터에 대한 맵핑을 수행하여 영상 데이터를 출력할 수 있다. 예를 들어, 출력되는 영상 데이터는 sRGB 영상 데이터일 수 있다.
센서 모듈(1160)는 촬영 조건(shooting condition)에 대한 정보를 획득할 수 있다. 예를 들어, 센서 모듈(1160)은 조도 센싱 모듈(1170), GPS 센싱 모듈(1180) 및 네트워크 정보 획득 모듈(1190)를 포함할 수 있다.
조도 센싱 모듈(1170)는 조도 센서 정보를 획득할 수 있다. 조도 센서 정보는 조도 센서에 의해 센싱되는 럭스(lux)를 나타낼 수 있다.
GPS 센싱 모듈(1180)는 GPS 센서 정보를 획득할 수 있다. GPS 센서 정보는 GPS 센서에 의해 획득되는 위도/경도/고도 중 적어도 하나를 나타낼 수 있다. GPS 센서 정보는 주기적으로 또는 요청에 따라 비주기적으로 획득되어 업데이트될 수 있다.
네트워크 정보 획득 모듈(1190)는 네트워크 상태 정보를 획득할 수 있다. 네트워크 상태 정보는 스캔된 AP(Access Point)의 적어도 하나의 AP(Access Point)의 RSSI(Received Signal Strength Indication) 정보 및 스캔된 적어도 하나의 AP의 SSID(Service Set Identifier) 정보 중 적어도 하나를 포함할 수 있으나, 이에 제한되지 않는다.
화이트-밸런싱 조정 모듈(1123)은 센서 모듈(1160)을 통해 획득된 상기 촬영 조건에 대한 정보에 기초하여, 저장 모듈(1150)에 저장된 화이트밸런스 조정을 위한 복수의 인공지능 모델 중, 상기 촬영 조건에 대응하는 인공지능 모델을 결정하고, 결정된 인공지능 모델에 제1 영상 데이터를 입력하여, 상기 촬영 조건에 대응하도록 화이트밸런스 조정된 제2 영상 데이터를 획득할 수 있다.
예를 들어, 화이트-밸런싱 조정 모듈(1123)은 GPS 센서 정보, 조도 센서 정보 및 네트워크 상태 정보 중 적어도 하나를 기초로, 모바일 장치(1100)가 실내 또는 실외에 위치하는지를 식별할 수 있다. 화이트-밸런싱 조정 모듈(1123)은 식별 결과를 기초로, 식별 결과에 대응하는 인공지능 모델을 결정할 수 있다. 예를 들어, 실내의 조명(lighting)을 나타내는 텅스텐/백열등(Incandescent) 화이트 밸런스 설정(또는 형광등 화이트 밸런스 설정)을 실외의 조명(lighting)을 나타내는 쉐이드(Shade) 화이트 밸런스 설정 등이 존재할 수 있고, 화이트-밸런싱 조정 모듈(1123)은 모바일 장치(1100)가 실내 또는 실외에 위치하는지를 식별하고, 식별 결과를 기초로, 다양한 화이트 밸런스 설정 중에 식별 결과와 관련된 화이트 밸런스 설정에 대응하는 인공지능 모델을 결정할 수 있다.
도 11 전 도면들을 참조하여, 소정의 WB 설정(예를 들어, AWB 설정, 백열등 WB 설정 및 쉐이드 WB 설정)에 대응하는 WB 복호화부를 각각 이용하여 소정의 WB 설정이 된 출력 영상 데이터를 획득하는 내용을 설명하였으나, 이에 제한되지 않고, 도 11 전 도면들의 실시예에서도 촬영 조건(실내/실외)에 대한 정보에 기초하여, 제1 영상 데이터로부터 촬영 조건에 대응하도록 화이트밸런스 조정된 제2 영상 데이터를 획득할 수 있음을 당업자는 이해할 수 있다.
AWB 설정이 일반적으로 올바른 WB 설정이긴 하나, 촬영 조건(실내/실외)에 대한 정보에 기초하여 결정된 WB 설정에 대응하는 WB복호화부를 이용하여 보다 알맞은 WB 설정을 갖는 출력 영상을 획득할 수 있다. 이에 제한되지 않고, AWB 설정의 출력 영상과 실내 WB 설정/실외 WB 설정 중 촬영 조건에 대응하는 WB 설정의 출력 영상이 동시에 획득되고, 디스플레이에 출력 영상들을 표시하여 사용자가 그 중 하나를 선택할 수 있다.
일 실시예로, 프로세서(1120)은 적어도 하나의 센서 모듈(1160)을 통해 획득된 촬영 조건에 대한 정보를 이용하여 획득된 정보에 대응하는 WB 설정을 결정할 수 있다. 프로세서(1120)는 저장 모듈(1150)에 저장된 복수의 인공지능 모델 중 결정된 WB 설정에 대응하는 인공지능 모델을 결정할 수 있다. 프로세서(1120)은, 결정된 인공지능 모델이 영상 신호 프로세서(1116)에 로딩(loading)되어 영상 센싱 모듈(1114)로부터 획득한 CFA 영상 데이터를 처리하도록, 영상 신호 프로세서(1116)를 제어할 수 있다. 좀 더 상세하게는, 프로세서(1120)은 저장 모듈(1150)에 저장된 복수의 인공지능 모델 중 결정된 인공지능 모델에 대한 데이터를 영상 신호 프로세서(1116) 내에 위치한 메모리(미도시)에 로딩(loading)하도록 제어할 수 있다. 영상 신호 프로세서(1116)는, 영상 센싱 모듈(1114)로부터 입력된 CFA 영상 데이터를 메모리에 로딩된 인공지능 모델에 대한 데이터를 이용하여 처리할 수 있다. 영상 신호 프로세서(1116)는, CFA 영상 데이터를 인공지능 모델로 처리하여 RGB 영상 데이터를 획득할 수 있다.
일 실시예에서, 영상 신호 프로세서(1116) 내에 저장 모듈(미도시)은 복수의 인공지능 모델을 저장할 수 있다. 여기서, 저장 모듈은 영상 신호 프로세서(1116) 내에 위치한 메모리와 상이하다. 즉, 저장 모듈은 플래쉬 메모리, DRAM일 수 있으며, 메모리는 SRAM일 수 있다. 이 경우, 영상 신호 프로세서(1116)은 프로세서(1120)으로부터 적어도 하나의 센서 모듈(1160)을 통해 획득된 정보를 이용하여 획득된 정보에 대응하는 WB 설정에 대한 데이터를 수신한다. 영상 신호 프로세서(1116)은 수신된 WB 설정에 대한 데이터를 이용하여 처리할 인공지능 모델을 결정할 수 있다. 영상 신호 프로세서(1116)은 결정된 인공지능 모델을 영상 신호 프로세서(1116) 내에 위치한 메모리(미도시)에 로딩(loading)하도록 제어할 수 있다. 영상 신호 프로세서(1116)는, 영상 센싱 모듈(1114)로부터 입력된 CFA 영상 데이터를 메모리에 로딩된 인공지능 모델에 대한 데이터를 이용하여 처리할 수 있다. 영상 신호 프로세서(1116)는, CFA 영상 데이터를 인공지능 모델로 처리하여 RGB 영상 데이터를 획득할 수 있다.
화이트-밸런싱 조정 모듈(1123)은 GPS 센서 정보가 업데이트되지 않는 경우, 모바일 장치가 실내에 위치한다고 식별하고, GPS 센서 정보가 업데이트되는 경우, 모바일 장치가 실외에 위치한다고 식별할 수 있다.
화이트-밸런싱 조정 모듈(1123)은 조도 센서 정보의 센서 값(예를 들어, lux 값)이 소정의 제 1 값보다 크거나 같은 경우, 모바일 장치가 실외에 위치한다고 식별할 수 있다. 이때, 화이트-밸런싱 조정 모듈(1123)은 현재 시간 정보를 기초로, 해가 떠있는지를 식별하고, 현재 시간에 대응하는 해의 위치에 따라 예상되는 값이 소정의 제 1 값으로 설정될 수 있다. 해가 떠있지 않을 것으로 예상되는 시간에는 인위적인 조명만이 존재하므로, 조도 센서 정보의 센서 값에 관계없이 실내에 위치하는 것과 다르지 않게 식별될 수 있다.
화이트-밸런싱 조정 모듈(1123)은 GPS 조도 센서 정보의 센서 값(예를 들어, lux 값)이 소정의 제2 값보다 작거나 같은 경우, 모바일 장치가 실내에 위치한다고 식별할 수 있다.
화이트-밸런싱 조정 모듈(1123)은 스캔된 AP의 RSSI의 평균값이 소정의 제1값보다 크거나 같은 경우, 모바일 장치가 실내에 위치한다고 식별하고, 스캔된 AP의 RSSI의 평균값이 소정의 제2값보다 작은 경우, 상기 모바일 장치가 실외에 위치한다고 식별할 수 있다.
또는, 화이트-밸런싱 조정 모듈(1123)은 스캔된 AP 중 RSSI가 소정의 제2값보다 작거나 같은 AP의 개수가 소정의 제2 개수보다 크거나 같거나, 상기 소정의 제1값보다 크거나 같은 AP의 개수가 소정의 제1 개수보다 작은 경우, 모바일 장치가 실외에 위치한다고 식별할 수 있다.
화이트-밸런싱 조정 모듈(1123)은 스캔된 AP중 RSSI가 소정의 제1 값보다 크거나 같은 AP의 개수가 소정의 제1 개수보다 크거나 같은 경우, 상기 모바일 장치가 실내에 위치한다고 식별할 수 있다.
화이트-밸런싱 조정 모듈(1123)은 스캔된 AP 중 RSSI가 소정의 제2값보다 작거나 같은 AP의 개수가 소정의 제2 개수보다 크거나 같거나, 상기 소정의 제1값보다 크거나 같은 AP의 개수가 소정의 제1 개수보다 작은 경우, 모바일 장치가 실외에 위치한다고 식별할 수 있다.
한편, SSID의 일부분이 소정의 문자열에 대응되는 AP만이 상기 조건 만족 여부 결정시에 고려될 수 있다. 이에 제한되지 않고, 해당 AP를 제외하거나, 해당 AP의 그룹 및 그 외 AP의 그룹을 구별하여 각 그룹의 중간 조건 만족 여부에 관한 결과에 서로 다른 가중치를 부여하여 최종 조건의 만족 여부가 결정될 수 있다.
화이트-밸런싱 조정 모듈(1123)이 GPS 센서 정보, 조도 센서 정보 및 네트워크 상태 정보 중 적어도 하나를 기초로, 모바일 장치(1100)가 실내 또는 실외에 위치하는지를 식별하는 구체적인 실시예에 대하여, 도 12을 참조하여 후술하겠다.
디스플레이(1130)는 다양한 영상 데이터를 표시할 수 있다. 특히, 디스플레이(1130)는 영상 신호 프로세서(1116) 등을 통해 출력되는 소정의 영상 포맷의 데이터를 표시하도록 프로세서(1120)에 의해 제어된다.
사용자 인터페이스 모듈(1140)은 다양한 형태의 사용자 입력을 수신할 수 있다. 디스플레이(1130)와 사용자 인터페이스 모듈(1140)은 터치 센서와 디스플레이 패널(예를 들어, LCD 또는 AMOLED)를 포함하는 터치 스크린 형태로 구현될 수 있다. 프로세서(1120)는 사용자 인터페이스 모듈(1140)을 통해 수신한 사용자 입력에 기초하여, 카메라 모듈(1110)을 구동하도록 제어할 수 있다. 즉, 프로세서(1120)은 디스플레이 패널에 이미지 촬영을 개시하는 UI(User Interface) 아이콘 및 이미지 촬영 조건을 설정하기 위한 UI 아이콘이 표시되도록 디스플레이 패널을 제어할 수 있다. 프로세서(1120)은 터치 센서를 통해 입력받은 사용자 입력을 수신하면 카메라 모듈(1110) 내 렌즈 모듈(1112)을 통해 수집된 빛을 영상 센싱 모듈(1114)이 전기적 신호로 변환하도록 제어할 수 있다.
저장 모듈(1150)은 다양한 영상 데이터를 저장할 수 있다. 특히, 저장 모듈(1150)은 영상 신호 프로세서(1116) 등을 통해 출력되는 소정의 영상 포맷의 데이터를 저장하도록 프로세서(1120)에 의해 제어된다. 저장 모듈(1150)에 저장되는 영상 포맷은, 디스플레이(1130)에 출력되는 영상 포맷과 상이할 수 있다. 예를 들어, 프로세서(1120)는 화이트-밸런싱 조정 모듈(1123)로부터 획득된 적어도 하나의 출력 영상을 소정의 압축 표준(예를 들어, JPEG 표준)에 따라 손실/무손실 압축하고, 압축된 출력 영상을 저장 모듈(1150)에 저장하도록 제어할 수 있다.
또한, 저장 모듈(1150)은 화이트-밸런싱 조정 모듈(1123)에서 이용되는 인공지능 모델에 관한 정보를 저장할 수 있다.
도 12는 일 실시예에 따라, 모바일 장치가 획득한 다양한 정보를 기초로 실내인지 실외인지를 식별하고, 식별된 결과를 기초로 화이트 밸런싱 조정을 수행하는 것을 설명하기 위한 도면이다.
도 12를 참조하면, 모바일 장치(1200)는 실내등(예를 들어, 형광등 또는 백열등)(1220)으로부터 나오는 빛을 조도 센서(1205)를 이용하여 센싱함으로써 조도 센서 정보를 획득할 수 있다. 모바일 장치(1200)는 조도 센서 정보의 값이 소정의 제 1 값보다 작거나 같은 경우, 모바일 장치(1200)가 실내에 위치한다고 식별할 수 있다. 일반적으로, 실내에서의 조도 값은 실외에서의 조도 값에 비하여 상당히 작기 때문이다.
한편, 모바일 장치(1200)는 GPS 센서를 이용하여 GPS 위성(1210)으로부터 GPS 센서 정보를 획득할 수 있다. 모바일 장치(1200)는 GPS 센서 정보가 업데이트되지 않는 경우, 모바일 장치(1200)는 실내에 위치한다고 식별할 수 있다. 일반적으로, 모바일 장치(1200)가 실내에 위치하는 경우, GPS 센서 정보를 수신하기 어렵기 때문이다.
모바일 장치(1200)는 주변의 AP(1235)를 스캔하여 적어도 하나의 스캔된 AP 리스트를 획득할 수 있다. 모바일 장치(1200)는 스캔된 AP(1235)의 SSID 개수를 기초로, 스캔된 AP의 개수를 식별할 수 있고, 스캔된 AP(1235)의 RSSI(1240)를 기초로, AP(1235)의 신호 세기를 식별할 수 있다.
모바일 장치(1200)는 스캔된 AP(1235)의 RSSI(1240)의 평균값이 소정의 제1값보다 크거나 같은 경우, 모바일 장치(1200)가 실내에 위치한다고 식별할 수 있다. 일반적으로, 모바일 장치(1200)가 실내에 위치하는 경우, AP(1235)가 가깝게 위치하고 있기 때문에, AP(1235)의 RSSI(1240)의 평균값이 작기 때문이다.
또는, 모바일 장치(1200)는 스캔된 AP(1235)중 RSSI(1240)가 소정의 제1 값보다 크거나 같은 AP의 개수가 소정의 제1 개수보다 크거나 같은 경우, 모바일 장치(1200)가 실내에 위치한다고 식별할 수 있다. 일반적으로, 모바일 장치(1200)가 실내에 위치하는 경우, 많은 AP가 모바일 장치(1200)가 가깝게 위치하고 있기 때문에, RSSI(1240)가 큰 AP가 실외에 비하여 많기 때문이다.
한편, 모바일 장치(1200)는 태양(1230)으로부터 나오는 빛을 조도 센서(1205)를 이용하여 센싱함으로써 조도 센서 정보를 획득할 수 있다. 모바일 장치(1200)는 조도 센서 정보의 값이 소정의 제 2 값보다 크거나 같은 경우, 모바일 장치(1200)가 실외에 위치한다고 식별할 수 있다. 일반적으로, 실외에서의 조도 값은 실내에서의 조도 값에 비하여 상당히 크기 때문이다.
모바일 장치(1200)는 GPS 센서를 이용하여 GPS 위성(1210)으로부터 GPS 센서 정보를 획득할 수 있다. 모바일 장치(1200)는 GPS 센서 정보가 업데이트되는 경우, 모바일 장치(1200)가 실외에 위치한다고 식별할 수 있다. 일반적으로, 모바일 장치(1200)가 실외에 위치하는 경우, 실내에 비하여 GPS 센서 정보를 수신하기 쉽기 때문에 대부분의 경우 요청에 따라 GPS 센서 정보가 업데이트될 수 있기 때문이다.
모바일 장치(1200)는 주변의 AP(1235)를 스캔할 수 있다. 모바일 장치(1200)는 스캔된 AP(1235)의 SSID 개수를 기초로, 스캔된 AP의 개수를 식별할 수 있고, 스캔된 AP(1235)의 RSSI(1240)를 기초로, AP(1235)의 신호 세기를 식별할 수 있다.
모바일 장치(1200)는 스캔된 AP(1235)의 RSSI(1240)의 평균값이 소정의 제2값보다 작은 경우, 모바일 장치(1200)가 실외에 위치한다고 식별할 수 있다. 일반적으로, 모바일 장치(1200)가 실외에 위치하는 경우, AP(1235)가 멀리 위치하거나 다양한 장애물에 의하여 AP(1235)의 RSSI의 평균값이 작기 때문이다.
또는, 모바일 장치(1200)는 스캔된 AP(1235)중 RSSI(1240)가 소정의 제2 값보다 작거나 같은 AP의 개수가 소정의 제2 개수보다 크거나 같은 경우, 모바일 장치(1200)이 실외에 위치한다고 식별할 수 있다. 일반적으로, 모바일 장치(1200)이 실외에 위치하는 경우, AP(1235)가 멀리 위치하거나 다양한 장애물에 의하여 RSSI가 작은 AP가 실내에 비하여 많기 때문이다.
다만 이에 제한되지 않고, 모바일 장치(1200)는 스캔된 AP(1235)중 RSSI(1240)가 소정의 제 1 값보다 크거나 같은 AP의 개수가 소정의 제1 개수보다 작은 경우, 모바일 장치(1200)가 실외에 위치한다고 식별할 수 있다. 일반적으로, 모바일 장치(1200)가 실외에 위치하는 경우, 모바일 장치(1200)와 가까이 위치하는 AP(1235)가 실내에 비하여 적기 때문이다.
다만 이에 제한되지 않고, 모바일 장치(1200)는 다양한 기법에 따라, 조도 센서 정보, GPS 센서 정보 및 네트워크 상태 정보 중 적어도 하나를 기초로, 모바일 장치(1200)가 실내에 위치하는지 또는 실외에 위치하는지를 식별할 수 있다.
모바일 장치(1200)는 식별된 결과를 기초로 화이트 밸런싱 조정을 수행할 수 있다. 예를 들어, 실내의 조명(lighting)을 나타내는 텅스텐/백열등(Incandescent) 화이트 밸런스 설정(또는 형광등 화이트 밸런스 설정)을 실외의 조명(lighting)을 나타내는 쉐이드(Shade) 화이트 밸런스 설정(또는 일광 화이트 밸런스 설정)이 존재할 수 있고, 모바일 장치(1200)는 모바일 장치(1200)가 실내 또는 실외에 위치하는지를 식별하고, 식별 결과를 기초로, 복수의 화이트 밸런스 설정과 관련된 복수의 인공지능 모델들 중 하나의 화이트 밸런스 설정과 관련된 인공지능 모델을 결정하고, 결정된 인공지능 모델을 이용하여 출력 영상을 획득할 수 있다.
본 개시의 실시예가 도면을 참조하여 설명되었지만, 당업자는 다음 청구항에 의해 정의된 사상 및 범위를 벗어나지 않고, 형태 및 세부 사항의 다양한 변경이 이루어질 수 있음을 이해할 것이다.

Claims (15)

  1. 렌즈 모듈 및 상기 렌즈 모듈을 통해 수집된 빛을 이용하여 제1 영상 데이터를 획득하는 영상 센싱 모듈을 포함하는 카메라 모듈;
    촬영 조건(shooting condition)에 대한 정보를 획득하는 센서 모듈;
    화이트밸런스 조정을 위한 복수의 인공지능 모델에 관한 정보를 저장하고 있는 저장 모듈;
    상기 저장된 인공지능 모델 중 적어도 하나를 처리하여 제2 영상 데이터를 획득하는 영상 신호 프로세서; 및
    적어도 하나의 애플리케이션 프로세서를 포함하고,
    상기 적어도 하나의 애플리케이션 프로세서는,
    상기 센서 모듈을 통해 획득된 상기 촬영 조건에 대한 정보에 기초하여, 상기 저장 모듈에 저장된 화이트밸런스 조정을 위한 복수의 인공지능 모델 중, 상기 촬영 조건에 대응하는 인공지능 모델을 결정하고,
    상기 결정된 인공지능 모델이 상기 영상 신호 프로세서에 로딩되도록 제어하며,
    상기 영상 신호 프로세서는,
    상기 결정된 인공지능 모델에 상기 제1 영상 데이터를 입력하여, 상기 촬영 조건에 대응하도록 화이트밸런스 조정된 제2 영상 데이터를 획득하는 것을 특징으로 하는 모바일 장치.
  2. 제 1 항에 있어서,
    상기 제1 영상 데이터는 원본 컬러 필터 어레이(Color Filter Array) 데이터인 것을 특징으로 하는 모바일 장치.
  3. 제 1 항에 있어서,
    상기 제 1 영상 데이터는 원본 RGB 데이터인 것을 특징으로 하는 모바일 장치.
  4. 제 1 항에 있어서,
    상기 복수의 인공지능 모델 각각의 인공지능 모델은 부호화부 모델과 복호화부 모델을 포함하고, 상기 복수의 인공지능 모델은 서로 다른 복호화부 모델을 포함하는 것을 특징으로 하는 모바일 장치.
  5. 제 1 항에 있어서,
    상기 센서 모듈은 GPS 센서 정보를 획득하는 GPS 센싱 모듈;
    조도 센서 정보를 획득하는 조도 센싱 모듈; 및
    네트워크 상태 정보를 획득하는 네트워크 상태 정보 획득 모듈을 포함하고,
    상기 적어도 하나의 프로세서는 GPS 센서 정보, 조도 센서 정보 및 네트워크 상태 정보 중 적어도 하나를 기초로, 상기 모바일 장치가 실내 또는 실외에 위치하는지를 식별하고,
    상기 저장 모듈에 저장된 화이트밸런스 조정을 위한 복수의 인공지능 모델 중, 상기 식별 결과에 대응하는 인공지능 모델을 결정하는 것을 특징으로 하는 모바일 장치.
  6. 제 5항에 있어서,
    상기 적어도 하나의 프로세서는 GPS 센서 정보, 조도 센서 정보 및 네트워크 상태 정보 중 적어도 하나를 기초로, 상기 모바일 장치가 실내 또는 실외에 위치하는지를 식별할 때, 상기GPS 센서 정보가 업데이트되지 않는 경우, 상기 모바일 장치가 실내에 위치한다고 식별하고, 상기 GPS 센서 정보가 업데이트되는 경우, 상기 모바일 장치가 실외에 위치한다고 식별하는 것을 특징으로 하는 모바일 장치.
  7. 제 5 항에 있어서,
    상기 적어도 하나의 프로세서는 GPS 센서 정보, 조도 센서 정보 및 네트워크 상태 정보 중 적어도 하나를 기초로, 상기 모바일 장치가 실내 또는 실외에 위치하는지를 식별할 때, 상기 조도 센서 정보의 센서 값이 소정의 제1 값보다 크거나 같은 경우, 상기 모바일 장치가 실외에 위치한다고 식별하고,
    상기 조도 센서 정보의 센서 값이 소정의 제2 값보다 작거나 같은 경우, 상기 모바일 장치가 실내에 위치한다고 식별하는 것을 특징으로 하는 모바일 장치.
  8. 제 5 항에 있어서,
    상기 네트워크 상태 정보는 스캔된 적어도 하나의 AP(Access Point)의 RSSI(Received Signal Strength Indication) 정보 및 스캔된 적어도 하나의 AP의 SSID(Service Set Identifier) 정보 중 적어도 하나를 포함하고,
    상기 적어도 하나의 프로세서는 GPS 센서 정보, 조도 센서 정보 및 네트워크 상태 정보 중 적어도 하나를 기초로, 상기 모바일 장치가 실내 또는 실외에 위치하는지를 식별할 때,
    상기 스캔된 AP의 RSSI의 평균값이 소정의 제1값보다 크거나 같은 경우, 상기 모바일 장치가 실내에 위치한다고 식별하고, 상기 스캔된 AP의 RSSI의 평균값이 소정의 제2값보다 작은 경우, 상기 모바일 장치가 실외에 위치한다고 식별하거나,
    스캔된 AP중 RSSI가 소정의 제1 값보다 크거나 같은 AP의 개수가 소정의 제1 개수보다 크거나 같은 경우, 상기 모바일 장치가 실내에 위치한다고 식별하고, 스캔된 AP 중 RSSI가 소정의 제2값보다 작거나 같은 AP의 개수가 소정의 제2 개수보다 크거나 같거나, 상기 소정의 제1값보다 크거나 같은 AP의 개수가 소정의 제1 개수보다 작은 경우, 상기 모바일 장치가 실외에 위치한다고 식별하는 것을 특징으로 하는 모바일 장치.
  9. 딥 화이트-밸런싱 편집(deep white-balancing editing)을 위한 장치에 있어서,
    인스트럭션들을 저장하는 메모리; 및
    상기 인스트럭션들을 수행하는 적어도 하나의 프로세서를 포함하고,
    상기 적어도 하나의 프로세서는, 영상 신호 처리(image signal processing)에 의해 보정(correct)된 원본 화이트 밸런스(original white balance)를 갖는 입력 영상을 획득하고,
    제1 뉴럴 네트워크(neural network)를 이용하여, 상기 영상 신호 처리에 의해 보정되지 않은 원본 화이트 밸런스를 갖는, 상기 획득된 입력 영상의 중간 표현(intermediate representation)을 획득하고,
    상기 획득된 중간 표현을 기초로, 제2 뉴럴 네트워크를 이용하여, 상기 원본 화이트 밸런스와 다른 제1 화이트 밸런스를 갖는 제1 출력 영상을 획득하기 위한 상기 인스트럭션들을 수행하는 것을 특징으로 하는 장치.
  10. 제 9 항에 있어서,
    상기 적어도 하나의 프로세서는 상기 획득된 중간 표현을 기초로, 제 3 뉴럴 네트워크를 이용하여, 상기 제1 화이트 밸런스 및 상기 원본 화이트 밸런스와 다른 제2 화이트 밸런스를 갖는 제 2 출력 영상을 획득하기 위한 상기 인스트럭션들을 더 수행하는 것을 특징으로 하는 장치.
  11. 제 10 항에 있어서,
    상기 적어도 하나의 프로세서는 복수의 화이트 밸런스들 중 하나의 화이트 밸런스를 선택하기 위한 슬라이더를 디스플레이하도록 제어하고,
    상기 복수의 화이트 밸런스들 중 상기 하나의 화이트 밸런스를 선택하는 사용자 입력을 기초로, 상기 디스플레이된 슬라이더를 이용하여, 상기 획득된 제1 출력 영상, 상기 획득된 제2 출력 영상 및 상기 제1 출력 영상 및 상기 제2 출력 영상의 블랜딩 영상(blended image) 중 어느 하나 또는 어느 조합을 이용하여, 상기 복수의 화이트 밸런스들 중 상기 하나의 화이트 밸런스를 갖는 결과 영상을 디스플레이하도록 제어하기 위한 상기 인스트럭션들을 더 수행하는 것을 특징으로 하는 장치.
  12. 제 9 항에 있어서,
    상기 적어도 하나의 프로세서는 상기 획득된 입력 영상을 다운샘플링(downsample)하고,
    상기 제1 뉴럴 네트워크를 이용하여, 상기 다운샘플링된 입력 영상의 다운 샘플링된 중간 표현을 획득하고, 상기 다운샘플링된 중간 표현은 상기 영상 신호 처리에 의해 보정되지 않은 상기 원본 화이트 밸런스를 갖는 다운샘플링된 중간 표현이고,
    상기 제2 뉴럴 네트워크를 이용하여, 상기 획득된 다운샘플링된 중간 표현을 기초로, 상기 원본 화이트 밸런스와 다른 상기 제 1 화이트 밸런스를 갖는 다운샘플링된 출력 영상을 획득하고,
    상기 원본 화이트 밸런스와 다른 상기 제1 화이트 밸런스를 갖는 상기 제 1 출력 영상을 획득하기 위해 상기 획득된 다운샘플링된 출력 영상에 컬러 맵핑(color mapping)을 적용하기 위한 상기 인스트럭션들을 더 수행하는 것을 특징으로 하는 장치.
  13. 제 12 항에 있어서,
    상기 컬러 맵핑은 상기 다운샘플링된 입력 영상의 컬러들을 상기 다운샘플링된 출력 영상의 컬러들에 맵핑하는 맵핑 매트릭스를 기초로 하는 다항식 함수인 것을 특징으로 하는 장치.
  14. 제 9 항에 있어서,
    상기 제 1 뉴럴 네트워크는, 하나 이상의 제1 컨볼루션 레이어, 하나 이상의 제1 정류된 선형 단위(rectified linear unit; ReLu) 레이어, 및 적어도 하나의 제1 맥스-풀링(max-pooling) 레이어; 및
    하나 이상의 제2 컨볼루션 레이어, 하나 이상의 제2 정류된 선형 단위 레이어, 및 적어도 하나의 제 2 맥스-풀링 레이어를 포함하고,
    상기 하나 이상의 제2 컨볼루션 레이어, 상기 하나 이상의 제2 정류된 선형 단위 레이어 및 상기 적어도 하나의 제2 맥스-풀링 레이어의 제2 개수의 채널은 상기 하나 이상의 제1 컨볼루션 레이어, 상기 하나 이상의 제1 정류된 선형 단위 레이어 및 상기 적어도 하나의 제1 맥스-풀링 레이어의 제1 개수의 채널의 2배인 것을 특징으로 하는 장치.
  15. 제 9 항에 있어서,
    상기 장치, 상기 제1 뉴럴 네트워크 및 상기 제2 뉴럴 네트워크는 서버에 구현되고,
    전자 장치의 영상 신호 프로세서로부터, 상기 영상 신호 프로세서의 상기 영상 신호 처리에 의해 보정된 상기 원본 화이트 밸런스를 갖는 상기 입력 영상을 수신하고,
    상기 획득된 제1 출력 영상을 상기 전자 장치로 전송하기 위한 상기 인스트럭션들을 더 수행하는 것을 특징으로 하는 장치.
PCT/KR2020/015799 2019-11-22 2020-11-11 딥 화이트-밸런싱 편집을 위한 방법 및 장치 WO2021101162A1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP23158058.0A EP4207755A1 (en) 2019-11-22 2020-11-11 Method and apparatus for deep learning based white-balancing editing
CN202080091131.9A CN114930811A (zh) 2019-11-22 2020-11-11 用于深白平衡编辑的方法和装置
EP20889398.2A EP4054185A4 (en) 2019-11-22 2020-11-11 DEEP LEARNING WHITE BALANCE MODIFICATION METHOD AND APPARATUS

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201962939286P 2019-11-22 2019-11-22
US62/939,286 2019-11-22
US17/077,837 US11849264B2 (en) 2019-11-22 2020-10-22 Apparatus and method for white balance editing
US17/077,837 2020-10-22

Publications (1)

Publication Number Publication Date
WO2021101162A1 true WO2021101162A1 (ko) 2021-05-27

Family

ID=75975219

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2020/015799 WO2021101162A1 (ko) 2019-11-22 2020-11-11 딥 화이트-밸런싱 편집을 위한 방법 및 장치

Country Status (5)

Country Link
US (2) US11849264B2 (ko)
EP (2) EP4207755A1 (ko)
KR (1) KR102445244B1 (ko)
CN (1) CN114930811A (ko)
WO (1) WO2021101162A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114677291A (zh) * 2022-02-25 2022-06-28 荣耀终端有限公司 一种图像处理方法、装置及相关设备

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2588431B (en) * 2019-10-23 2023-02-15 Advanced Risc Mach Ltd Image signal processing
US11606544B2 (en) * 2021-06-08 2023-03-14 Black Sesame Technologies Inc. Neural network based auto-white-balancing

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180116574A (ko) * 2017-04-17 2018-10-25 엘지전자 주식회사 이동 단말기
US20190045163A1 (en) * 2018-10-02 2019-02-07 Intel Corporation Method and system of deep learning-based automatic white balancing
KR20190037842A (ko) * 2017-09-29 2019-04-08 삼성전자주식회사 외부 전자 장치에서 생성된 정보를 이용하여 이미지 데이터를 처리하는 방법 및 전자 장치
US20190132563A1 (en) * 2017-10-30 2019-05-02 Guangdong Oppo Mobile Telecommunications Corp., Ltd. White balance processing method, electronic device and computer readable storage medium
KR20190064958A (ko) * 2017-12-01 2019-06-11 삼성전자주식회사 사진 촬영과 관련된 추천 정보를 제공하는 방법 및 시스템

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001128191A (ja) 1999-08-18 2001-05-11 Fuji Photo Film Co Ltd 画像処理方法および装置並びに記録媒体
JP5013792B2 (ja) 2006-09-13 2012-08-29 ペンタックスリコーイメージング株式会社 撮像装置
JP2009071548A (ja) 2007-09-12 2009-04-02 Canon Inc 色処理装置およびその方法
US9106879B2 (en) 2011-10-04 2015-08-11 Samsung Electronics Co., Ltd. Apparatus and method for automatic white balance with supplementary sensors
US9519839B2 (en) * 2013-02-25 2016-12-13 Texas Instruments Incorporated Illumination estimation using natural scene statistics
US20150310794A1 (en) 2014-04-23 2015-10-29 Qualcomm Incorporated Graphical elements for white-point calibration and adjustment techniques for displays
US9826149B2 (en) 2015-03-27 2017-11-21 Intel Corporation Machine learning of real-time image capture parameters
CN105898260B (zh) * 2016-04-07 2018-01-19 广东欧珀移动通信有限公司 一种调节摄像头白平衡的方法及装置
US10713816B2 (en) * 2017-07-14 2020-07-14 Microsoft Technology Licensing, Llc Fully convolutional color constancy with confidence weighted pooling
CN107911682B (zh) * 2017-11-28 2020-02-18 Oppo广东移动通信有限公司 图像白平衡处理方法、装置、存储介质和电子设备
CN107911683B (zh) * 2017-11-28 2019-07-23 Oppo广东移动通信有限公司 图像白平衡处理方法、装置、存储介质和电子设备
CN109348206A (zh) 2018-11-19 2019-02-15 Oppo广东移动通信有限公司 图像白平衡处理方法、装置、存储介质及移动终端
EP3953897A4 (en) * 2019-04-09 2022-12-14 Michael Brown SYSTEM AND METHOD FOR PROCESSING A CAPTURED IMAGE TO FACILITATE POST-PROCESSING EDITING
US11044450B2 (en) * 2019-06-07 2021-06-22 Adobe Inc. Image white balancing

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180116574A (ko) * 2017-04-17 2018-10-25 엘지전자 주식회사 이동 단말기
KR20190037842A (ko) * 2017-09-29 2019-04-08 삼성전자주식회사 외부 전자 장치에서 생성된 정보를 이용하여 이미지 데이터를 처리하는 방법 및 전자 장치
US20190132563A1 (en) * 2017-10-30 2019-05-02 Guangdong Oppo Mobile Telecommunications Corp., Ltd. White balance processing method, electronic device and computer readable storage medium
KR20190064958A (ko) * 2017-12-01 2019-06-11 삼성전자주식회사 사진 촬영과 관련된 추천 정보를 제공하는 방법 및 시스템
US20190045163A1 (en) * 2018-10-02 2019-02-07 Intel Corporation Method and system of deep learning-based automatic white balancing

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114677291A (zh) * 2022-02-25 2022-06-28 荣耀终端有限公司 一种图像处理方法、装置及相关设备

Also Published As

Publication number Publication date
EP4207755A1 (en) 2023-07-05
EP4054185A4 (en) 2023-04-12
US11849264B2 (en) 2023-12-19
KR20210063231A (ko) 2021-06-01
KR102445244B1 (ko) 2022-09-20
CN114930811A (zh) 2022-08-19
EP4054185A1 (en) 2022-09-07
US20230209029A1 (en) 2023-06-29
US20210160470A1 (en) 2021-05-27

Similar Documents

Publication Publication Date Title
WO2021101162A1 (ko) 딥 화이트-밸런싱 편집을 위한 방법 및 장치
EP0757473B1 (en) Image processing apparatus and method
US7394930B2 (en) Automatic white balancing of colour gain values
KR101154136B1 (ko) 디지털 카메라 디바이스를 위한 화이트 밸런스 보정
US8036487B2 (en) Image processing method, apparatus and program as well as imaging apparatus
KR101352440B1 (ko) 화상처리장치, 화상처리방법, 및 기록매체
WO2016076497A1 (ko) 메타 데이터에 기초하여 영상을 디스플레이하는 방법 및 디바이스, 그에 따른 기록매체
WO2015102203A1 (en) Image processing apparatus, image processing method, and computer-readable recording medium
JP7316768B2 (ja) 画像処理装置、画像処理方法、及びプログラム
WO2018110889A1 (ko) 영상의 화이트 밸런스를 보정하는 방법 및 전자 장치
JP2003299115A (ja) 画像信号処理装置
CN113315956A (zh) 图像处理设备、摄像设备、图像处理方法和机器可读介质
Ejaz et al. Development of a camera system for the acquisition of high-fidelity colors
WO2022092555A1 (ko) 노이즈 저감 처리된 이미지 데이터를 생성하는 방법 및 이를 수행하는 전자 장치
WO2022103121A1 (en) Electronic device for estimating camera illuminant and method of the same
US20040119860A1 (en) Method of colorimetrically calibrating an image capturing device
WO2021261737A1 (ko) 이미지 센서를 포함하는 전자 장치 및 이에 대한 제어 방법
JP4887680B2 (ja) ホワイトバランス調整装置、及びホワイトバランス調整方法
US20180376031A1 (en) Projection apparatus that improves dynamic range of luminance of printed material, control method therefor, and storage medium
JP5458776B2 (ja) 画像処理装置、および画像処理プログラム
WO2024085673A1 (ko) 다중 노출 영상을 획득하는 전자 장치 및 그 동작 방법
WO2023017978A1 (en) Adaptive sub-pixel spatial temporal interpolation for color filter array
WO2021162274A1 (ko) 화질 조정을 지원하는 전자 장치 및 그 방법
US20230394787A1 (en) Imaging apparatus
JP5627252B2 (ja) 撮像装置及びその制御方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20889398

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2020889398

Country of ref document: EP

Effective date: 20220530

NENP Non-entry into the national phase

Ref country code: DE