US12340446B2 - Combining preset and auto settings in image editing - Google Patents
Combining preset and auto settings in image editing Download PDFInfo
- Publication number
- US12340446B2 US12340446B2 US18/045,358 US202218045358A US12340446B2 US 12340446 B2 US12340446 B2 US 12340446B2 US 202218045358 A US202218045358 A US 202218045358A US 12340446 B2 US12340446 B2 US 12340446B2
- Authority
- US
- United States
- Prior art keywords
- values
- settings
- parameters
- image
- electronic device
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active, expires
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
Definitions
- the described embodiments relate to processing of images. Notably, the described embodiments relate to combining preset (or settings associated with a style or user preferences) and auto settings in image editing.
- Image-editing software is widely used to modify digital images after acquisition.
- image-editing software may be used to perform image editing on a digital image based on one or more parameters or settings.
- image-editing software may be used to filter, on a pixel-basis, a digital image based on the one or more parameters or settings.
- This image editing may modify one or more attributes of the digital image, such as: the brightness, the exposure, color, white balance, etc.
- image-editing software typically include automatic settings (which are sometimes referred to as ‘auto settings’), which use predefined values of the one or more parameters or settings during the image editing.
- image-editing software allows a user to manually adjust or modify the values of the one or more parameters or settings.
- a style (which is sometimes referred to as a ‘preset’), such as one associated with an individual, e.g., a professional photographer, may be used.
- a style may include a set of values for the one or more parameters or settings. This capability allows the user to mimic the style of the professional photographer.
- auto settings typically override prior values of the one or more parameters or settings. For example, when a user imports a preset and then selects auto settings, the set of values for the one or more parameters or settings are usually overwritten. This constrains the ability of users to customize or tailor the values for the one or more parameters or settings, which is frustrating for users of image-editing software.
- An electronic device that performs image editing includes: an interface circuit that communicates with a computer system; a computation device; and a memory that stores program instructions.
- the electronic device provides, addressed to the computer system, an image.
- the electronic device receives, associated with the computer system, values of a set of parameters or settings, where the values of the set of parameters or settings correspond to auto-setting values of the set of parameters or settings and second values of the set of parameters or settings associated with a preset.
- the electronic device performs, using image-editing software, the image editing on the image based at least in part on the values of the set of parameters or settings.
- the electronic device may include an image sensor, and the electronic device may acquire the image using the image sensor.
- the preset may be associated with a user of the electronic device or another individual than the user.
- the other individual may be a professional photographer.
- the values of the set of parameters or settings may include the combination of the auto-setting values and the second values associated with the preset.
- the values of the set of parameters or settings may include differences between the auto-setting values and the second values associated with the preset.
- the values of the set of parameters or settings may be the differences from the average or median second values associated with the preset.
- the electronic device may combine the differences with the second values of the set of parameters or settings associated with the preset to compute modified values of the set of parameters or settings, and the image editing is performed based at least in part on the modified values of the set of parameters or settings.
- combining may include adding the differences to the second values of the set of parameters or settings associated with the preset.
- image editing may be performed on a pixel-basis in the image.
- the values of the set of parameters or settings is associated with a pretrained machine-learning model that predicts the values of the set of parameters or settings for the image.
- the pretrained machine-learning model may include a neural network.
- the image editing may modify one or more attributes of the image.
- This computer system may include: an interface circuit that communicates with an electronic device; a computation device; and a memory that stores program instructions.
- the computer system receives, associated with the electronic device, an image.
- the computer system predicts values of a set of parameters or settings for the image based at least in part on a pretrained machine-learning model, where the values of the set of parameters or settings correspond to auto-setting values of the set of parameters or settings and second values of the set of parameters or settings associated with a preset.
- the computer system provides, addressed to the electronic device, the values of the set of parameters of settings.
- the preset may be associated with a user of the electronic device or another individual than the user.
- the other individual may be a professional photographer.
- the values of the set of parameters or settings may include the combination of the auto-setting values and the second values associated with the preset.
- the values of the set of parameters or settings may include differences between the auto-setting values and the second values of the set of parameters or settings associated with the preset.
- the values of the set of parameters or settings may be the differences from the average or median second values associated with the preset.
- values of the set of parameters or settings may be associated with image editing of the image.
- the image editing may be performed on a pixel-basis in the image.
- the image editing may modify one or more attributes of the image.
- the pretrained machine-learning model may include a neural network.
- Another embodiment provides a computer for use, e.g., in the computer system.
- Another embodiment provides a computer-readable storage medium for use with the electronic device, the second electronic device, the computer or the computer system.
- this computer-readable storage medium When executed by the electronic device, the second electronic device, the computer or the computer system, this computer-readable storage medium causes the electronic device, the second electronic device, the computer or the computer system to perform at least some of the aforementioned operations.
- Another embodiment provides a method, which may be performed by the electronic device, the second electronic device, the computer or the computer system. This method includes at least some of the aforementioned operations.
- FIG. 1 is a block diagram illustrating an example of communication between an electronic device and a computer system in accordance with an embodiment of the present disclosure.
- FIG. 2 is a flow diagram illustrating an example of a method for performing image editing using an electronic device in FIG. 1 in accordance with an embodiment of the present disclosure.
- FIG. 3 is a flow diagram illustrating an example of a method for computing values of a set of parameters or settings using computer system in FIG. 1 in accordance with an embodiment of the present disclosure.
- FIG. 4 is a drawing illustrating an example of communication between an electronic device and a computer system in FIG. 1 in accordance with an embodiment of the present disclosure.
- FIGS. 5 A- 5 D are images illustrating an example of image editing of an image in accordance with an embodiment of the present disclosure.
- FIGS. 6 A- 6 D are images illustrating an example of image editing of an image in accordance with an embodiment of the present disclosure.
- FIG. 7 is a block diagram illustrating an example of an electronic device in accordance with an embodiment of the present disclosure.
- the electronic device may provide, addressed to a computer system, an image. Then, the electronic device may receive, associated with the computer system, values of a set of parameters or settings, where the values of the set of parameters or settings correspond to auto-setting values of the set of parameters or settings and second values of the set of parameters or settings associated with a preset, where the preset is associated with a user of the electronic device or another individual than the user. For example, the other individual may be a professional photographer. Next, the electronic device may perform, using image-editing software, the image editing on the image based at least in part on the values of the set of parameters or settings, where the image editing modifies one or more attributes of the image on a pixel basis.
- these image-editing techniques allow joint use of auto settings of the values for the set of parameters or settings and the second values of the set of parameters or settings associated with the preset.
- the values of the set of parameters or settings may ensure that the auto setting of the values for the set of parameters or settings do not override the second values of the set of parameters or setting associated with the preset.
- These capabilities may allow users to customize or tailor the values for the set of parameters or settings, which may increase the user satisfaction of users of the image-editing software.
- the wireless communication protocol may include: a wireless communication protocol that is compatible with an Institute of Electrical and Electronics Engineers (IEEE) 802.11 standard (which is sometimes referred to as ‘Wi-Fi®’ from the Wi-Fi Alliance of Austin, Texas), Bluetooth, Bluetooth low energy, a cellular-telephone network or data network communication protocol (such as a third generation or 3G communication protocol, a fourth generation or 4G communication protocol, e.g., Long Term Evolution or LTE (from the 3 rd Generation Partnership Project of Sophia Antipolis, Valbonne, France), LTE Advanced or LTE-A, a fifth generation or 5G communication protocol, a low-power wide area network (LPWAN) cellular technology (such as CAT-M1, narrow band Internet of things, etc.), or other present or future developed advanced cellular communication protocol),
- IEEE Institute of Electrical and Electronics Engineers
- LTE Long Term Evolution
- LTE from the 3 rd Generation Partnership Project of Sophia Antipolis, Valbonne, France
- LTE Advanced or LTE-A a fifth generation or 5
- an IEEE 802.11 standard may include one or more of: IEEE 802.11a, IEEE 802.11b, IEEE 802.11g, IEEE 802.11-2007, IEEE 802.11n, IEEE 802.11-2012, IEEE 802.11-2016, IEEE 802.11ac, IEEE 802.11ax, IEEE 802.11ba, IEEE 802.11be, or other present or future developed IEEE 802.11 technologies.
- the wired communication protocol may include a wired communication protocol that is compatible with an IEEE 802.3 standard (which is sometimes referred to as ‘Ethernet’), e.g., an Ethernet II standard.
- IEEE 802.3 standard which is sometimes referred to as ‘Ethernet’
- Ethernet II e.g., a wide variety of communication protocols may be used.
- Bluetooth and Ethernet are used as illustrative examples.
- FIG. 1 presents a block diagram illustrating an example of communication between a an electronic device 110 (such as a cellular telephone, a portable electronic device, or another type of electronic device, etc.) and a computer system 130 (which may include one or more computers or servers, and which may be implemented locally or remotely to provide an image analysis service) via a cellular-telephone network 114 (which may include a base station 108 ), one or more access points 116 (which may communicate using Wi-Fi) in a wireless local area network (WLAN) and/or radio node 118 (which may communicate using LTE or a cellular-telephone data communication protocol) in a small-scale network (such as a small cell).
- a cellular-telephone network 114 which may include a base station 108
- access points 116 which may communicate using Wi-Fi
- WLAN wireless local area network
- radio node 118 which may communicate using LTE or a cellular-telephone data communication protocol
- small-scale network such as a small cell
- radio node 118 may include: an Evolved Node B (eNodeB), a Universal Mobile Telecommunications System (UMTS) NodeB and radio network controller (RNC), a New Radio (NR) gNB or gNodeB (which communicates with a network with a cellular-telephone communication protocol that is other than LTE), etc.
- eNodeB Evolved Node B
- UMTS Universal Mobile Telecommunications System
- RNC radio network controller
- NR New Radio
- an access point, a radio node or a base station are sometimes referred to generically as a ‘communication device.’
- one or more base stations (such as base station 108 ), access points 116 , and/or radio node 118 may be included in one or more networks, such as: a WLAN, a small cell, a local area network (LAN) and/or a cellular-telephone network.
- access points 116 may include a physical access point and/or a virtual access point that is implemented in software in an environment of an electronic device or a computer.
- one or more base stations may communicate computer system using a wired communication protocol (such as Ethernet) via network 120 and/or 122 .
- networks 120 and 122 may be the same or different networks.
- networks 120 and/or 122 may be a LAN, an intra-net or the Internet.
- network 120 may include one or more routers and/or switches (such as switch 128 ).
- Electronic device 110 and/or computer system 130 may implement at least some of the operations in the image-editing techniques. Notably, as described further below, electronic device 110 and/or computer system 130 may perform at least some of the image analysis and/or image editing of one or more images (such as one or more images acquired by electronic device 110 ).
- base station 108 , electronic device 110 , access points 116 , radio node 118 , switch 128 and/or computer system 130 may include subsystems, such as a networking subsystem, a memory subsystem and a processor subsystem.
- electronic device 110 , access points 116 and radio node 118 may include radios 124 in the networking subsystems. More generally, electronic device 110 , access points 116 and radio node 118 can include (or can be included within) any electronic devices with the networking subsystems that enable electronic device 110 , access points 116 and radio node 118 to wirelessly communicate with one or more other electronic devices.
- This wireless communication can comprise transmitting access on wireless channels to enable electronic devices to make initial contact with or detect each other, followed by exchanging subsequent data/management frames (such as connection requests and responses) to establish a connection, configure security options, transmit and receive frames or packets via the connection, etc.
- data/management frames such as connection requests and responses
- base station 108 may wired or wirelessly communicate while: transmitting access requests and receiving access responses on wired or wireless channels, detecting one another by scanning wireless channels, establishing connections (for example, by transmitting connection requests and receiving connection responses), and/or transmitting and receiving frames or packets (which may include information as payloads).
- wireless signals 126 may be transmitted by radios 124 in, e.g., access points 116 and/or radio node 118 and electronic device 110 .
- radio 124 - 1 in access point 116 - 1 may transmit information (such as one or more packets or frames) using wireless signals 126 .
- These wireless signals are received by radio 124 - 2 in electronic device 110 . This may allow access point 116 - 1 to communicate information to other access points 116 and/or electronic device 110 .
- wireless signals 126 may convey one or more packets or frames.
- processing a packet or a frame in one or more electronic devices in electronic device 110 , access points 116 , radio node 118 and/or computer system 130 may include: receiving the wireless or electrical signals with the packet or the frame; decoding/extracting the packet or the frame from the received wireless or electrical signals to acquire the packet or the frame; and processing the packet or the frame to determine information contained in the payload of the packet or the frame.
- the wired and/or wireless communication in FIG. 1 may be characterized by a variety of performance metrics, such as: a data rate for successful communication (which is sometimes referred to as ‘throughput’), an error rate (such as a retry or resend rate), a mean-squared error of equalized signals relative to an equalization target, intersymbol interference, multipath interference, a signal-to-noise ratio, a width of an eye pattern, a ratio of number of bytes successfully communicated during a time interval (such as 1-10 s) to an estimated maximum number of bytes that can be communicated in the time interval (the latter of which is sometimes referred to as the ‘capacity’ of a communication channel or link), and/or a ratio of an actual data rate to an estimated data rate (which is sometimes referred to as ‘utilization’). While instances of radios 124 are shown in components in FIG. 1 , one or more of these instances may be different from the other instances of radios 124 .
- wireless communication between components in FIG. 1 uses one or more bands of frequencies, such as: 900 MHz, 2.4 GHz, 5 GHz, 6 GHz, 7 GHz, 60 GHz, the citizens Broadband Radio Spectrum or CBRS (e.g., a frequency band near 3.5 GHz), and/or a band of frequencies used by LTE or another cellular-telephone communication protocol or a data communication protocol.
- the communication between electronic devices may use multi-user transmission (such as orthogonal frequency division multiple access or OFDMA) and/or multiple-input multiple-output (MIMO).
- OFDMA orthogonal frequency division multiple access
- MIMO multiple-input multiple-output
- FIG. 1 Although we describe the network environment shown in FIG. 1 as an example, in alternative embodiments, different numbers or types of electronic devices and/or monitoring devices may be present. For example, some embodiments comprise more or fewer electronic devices or monitoring devices. In some embodiments, a monitoring device may be integrated into or included in another electronic device. As another example, in another embodiment, different electronic devices are transmitting and/or receiving packets or frames.
- FIG. 1 illustrates computer system 130 at a particular location
- at least a portion of computer system 130 is implemented at more than one location.
- computer system 130 is implemented in a centralized manner, while in other embodiments at least a portion of computer system 130 is implemented in a distributed manner.
- computer system 130 may include one or more computers 132 . These computers may include: communication modules 134 , computation modules 136 , memory modules 138 , and optional control modules 140 .
- a given module or engine may be implemented in hardware and/or in software.
- computation modules 136 may perform calculations using: one or more microprocessors, ASICs, microcontrollers, programmable-logic devices, graphics processing units (GPUs) and/or one or more digital signal processors (DSPs).
- GPUs graphics processing units
- DSPs digital signal processors
- memory modules 138 may access stored data or information in memory local in computer system 130 and/or that is remotely located from computer system 130 .
- one or more of memory modules 138 may access stored information in the local memory.
- one or more memory modules 138 may access, via one or more of communication modules 134 , stored information in the remote memory
- FIG. 1 Although we describe the computation environment shown in FIG. 1 as an example, in alternative embodiments, different numbers or types of components may be present in computer system 130 . For example, some embodiments may include more or fewer components, a different component, and/or components may be combined into a single component, and/or a single component may be divided into two or more components.
- image-editing software such as image-editing software from Adobe Systems of San Jose, California, e.g., Adobe Lightroom.
- image-editing software from Adobe Systems of San Jose, California, e.g., Adobe Lightroom.
- it can be difficult to use a preset and auto settings.
- electronic device 110 and/or computer system 130 may perform the image-editing techniques.
- a user of electronic device 110 may optionally acquire one or more images using an image sensor (such as a CCD or a CMOS image sensor) in electronic device 110 .
- electronic device may provide at least one of the one or more images to computer system 130 .
- One or more of communication modules 134 in computer system 130 may receive the image via network 120 and 122 . Then, one or more of optional control modules 140 may divide the image analysis among one or more computers 132 . For example, a given one of computers 132 may perform at least a designated portion of the image analysis.
- one or more computation modules 136 (such as a processor or a GPU) may implement at least one of one or more predetermined or pretrained machine-learning models, e.g., based at least in part on configuration instructions and hyperparameters.
- one or more computation modules 136 may predict values of a set of parameters or settings for the image, where the values of the set of parameters or settings correspond to auto-setting values of the set of parameters or settings and second values of the set of parameters or settings associated with a preset.
- At least the one of the one or more predetermined or pretrained machine-learning models may include a neural network, which may include or combine one or more convolutional layers, one or more residual layers and one or more dense or fully connected layers, and where a given node in a given layer in the given neural network may include an activation function, such as: a rectified linear activation function or ReLU, a leaky ReLU, an exponential linear unit or ELU activation function, a parametric ReLU, a tanh activation function, and/or a sigmoid activation function.
- an activation function such as: a rectified linear activation function or ReLU, a leaky ReLU, an exponential linear unit or ELU activation function, a parametric ReLU, a tanh activation function, and/or a sigmoid activation function.
- the one or more of optional control modules 140 may instruct one or more of communication modules 134 to return, via network 120 and 122 , the values of the set of parameters or settings to electronic device 110 .
- the one or more of optional control modules 134 may instruct one or more memory modules 138 to include the values of the set of parameters or settings in a training dataset, which may be used by one or more computation modules 136 to retrain at least the one of one or more predetermined or pretrained machine-learning models (such as revising the configuration instructions and the hyperparameters).
- electronic device 110 may execute image-editing software, and may perform, using the image-editing software, image editing at least the image based at least in part on the values of the set of parameters or settings. This image editing may modify one or more attributes of at least the image.
- electronic device 110 and computer system 130 may allow the joint use of auto settings of the values for the set of parameters or settings and the second values of the set of parameters or settings associated with the preset. These capabilities may allow users to customize or tailor the values for the set of parameters or settings, which may increase the user satisfaction of users of the image-editing software.
- FIG. 2 presents a flow diagram illustrating an example of a method 200 for performing image editing, which may be performed by an electronic device (such as electronic device 110 in FIG. 1 ).
- the electronic device may provide, addressed to a computer system, an image (operation 210 ).
- the electronic device may receive, associated with the computer system, values of a set of parameters or settings (operation 212 ), where the values of the set of parameters or settings correspond to auto-setting values of the set of parameters or settings and second values of the set of parameters or settings associated with a preset.
- the preset may be associated with a user of the electronic device or another individual or a third party (who is other than the user or who is different from a provider of image-editing software), such as a professional photographer.
- the electronic device may perform, using the image-editing software, the image editing (operation 214 ) on the image based at least in part on the values of the set of parameters or settings.
- the image editing may be performed on a pixel-basis in the image.
- the image editing may modify one or more attributes of the image.
- the electronic device may optionally perform one or more additional operations (operation 216 ).
- the electronic device may include an image sensor, and the electronic device may acquire the image using the image sensor.
- the values of the set of parameters or settings may include the combination of the auto-setting values and the second values of the set of parameters or settings associated with the preset.
- the values of the set of parameters or settings may include differences between the auto-setting values and the second values of the set of parameters or settings associated with the preset.
- the values of the set of parameters or settings may be the differences from the average or median second values associated with the preset.
- the electronic device may combine the differences with the second values of the set of parameters or settings associated with the preset to compute modified values of the set of parameters or settings, and the image editing is performed based at least in part on the modified values of the set of parameters or settings. Note that the combining may include adding the differences to the second values of the set of parameters or settings associated with the preset.
- the values of the set of parameters or settings is associated with a pretrained machine-learning model that predicts the values of the set of parameters or settings for the image.
- the pretrained machine-learning model may include a neural network.
- FIG. 3 presents a flow diagram illustrating an example of a method 300 for computing values of a set of parameters or settings, which may be performed by a computer system (such as computer system 130 in FIG. 1 ).
- the computer system may receive, associated with an electronic device, an image (operation 310 ).
- the computer system may predict the values of a set of parameters or settings (operation 312 ) for the image based at least in part on a pretrained machine-learning model, where the values of the set of parameters or settings correspond to auto-setting values of the set of parameters or settings and second values of the set of parameters or settings associated with a preset.
- the preset may be associated with a user of the electronic device or another individual or a third party (who is other than the user or who is different from a provider of image-editing software), such as a professional photographer.
- the pretrained machine-learning model may include a neural network.
- the values of the set of parameters or settings may include the combination of the auto-setting values and the second values of the set of parameters or settings associated with the preset.
- the values of the set of parameters or settings may include differences between the auto-setting values and the second values of the set of parameters or settings associated with the preset.
- the values of the set of parameters or settings may be the differences from the average or median second values associated with the preset.
- the computer system may provide, addressed to the electronic device, the values of the set of parameters of settings (operation 314 ).
- values of the set of parameters or settings may be associated with or used for image editing of the image.
- the image editing may be performed on a pixel-basis in the image.
- the image editing may modify one or more attributes of the image.
- method 200 ( FIG. 2 ) and/or 300 , there may be additional or fewer operations. Moreover, the order of the operations may be changed, and/or two or more operations may be combined into a single operation.
- FIG. 4 presents a drawing illustrating an example of communication between electronic device 110 and computer system 130 .
- an interface circuit (IC) 410 in electronic device 110 may provide an image 412 to computer system 130 .
- an interface circuit 414 in computer system 130 After receiving image 412 , an interface circuit 414 in computer system 130 provides image 412 to a computation device (CD) 416 (such as a processor or a GPU) in computer system 130 .
- Computation device 416 in computer system 130 may access, in memory 418 in computer system 130 , information 420 specifying configuration instructions and hyperparameters for one or more predetermined or pretrained machine-learning models, such as one or more neural networks.
- computation device 416 may implement at least one of the one or more predetermined or pretrained machine-learning models.
- computation device 416 may predict values 422 of a set of parameters or settings for image 412 , where values 422 of the set of parameters or settings correspond to auto-setting values of the set of parameters or settings and second values of the set of parameters or settings associated with a preset.
- computation device 416 may instruct 424 interface circuit 414 to provide values 422 of the set of parameters or settings to electronic device 110 .
- interface circuit 410 may provide values 422 of the set of parameters or settings to processor 426 in electronic device 110 .
- processor 426 may execute image-editing software (IES) 428 , and processor 426 may perform, using image-editing software 428 , image editing (IE) 430 on image 412 based at least in part on values 422 of the set of parameters or settings.
- IES image-editing software
- IE image editing
- FIG. 4 illustrates communication between components using unidirectional or bidirectional communication with lines having single arrows or double arrows
- the communication in a given operation in this figure may involve unidirectional or bidirectional communication.
- the disclosed image-editing techniques address these problems, thereby improving built-in photo image-processing or editing software auto settings or auto settings from a software plug-in, external software program and/or a cloud-based computer system while retaining the desired look from the applied preset or style.
- the image-editing techniques document and discover situational tendencies and averages. Leveraging this knowledge and using custom camera profiles (which may be used to correct for differences between different camera models), look-up tables (luts) and/or settings within creative profiles (or presets) in the image-editing software, the image-editing techniques can determine values of a set of parameters or settings that combine auto-setting values of the set of parameters or settings with values of the set of parameters or settings associated with a preset. This may allow the image-editing software to compensate for the inconsistencies and to significantly improve accuracy.
- the image-editing techniques may use the camera profiles, look-up tables and/or creative profiles to prevent the values of the set of parameters or settings associated with the preset from being overwritten when auto settings are used. Consequently, the image-editing techniques may determine values of the set of parameters or settings that provide fully automatic presets for various image-editing software platforms that retain the original vision intended within the preset design while improving on the built-in or external auto-setting values of the set of parameters or settings. These capabilities not only improve on the auto settings, but also allow camera-system specific or camera-platform specific improvements.
- the image-editing techniques can compute the average or median (and, more generally, a moment of the distribution) auto-adjustment tendencies.
- average or median auto adjustment values of the set of parameters or settings for a particular indoor images with natural light may include: exposure: +0.92, contrast: +6, highlights: ⁇ 58, shadows: +50, whites: +6, blacks: ⁇ 13, vibrance: +15, and saturation: +1.
- values of the set of parameters or settings associated with a preset are overwritten when auto settings are enabled.
- values of the set of parameters or settings for a given preset may include: contrast: +20, highlights: ⁇ 44, shadows: +47, whites: ⁇ 26, blacks: ⁇ 30, vibrance: 0, and saturation: 0. Note that presets usually do not modify exposure.
- values of the set of parameters or settings may be compensated by adding or subtracting compensation values of the set of parameters or settings in a non-user modifiable channel (such as creative profiles and/or one or more look-up table) to reduce or eliminate the difference between the auto settings and the preset.
- a non-user modifiable channel such as creative profiles and/or one or more look-up table
- the auto-setting value for contrast may be +6 and the value for contrast in the preset may be +20, so the compensation value for contrast in the creative profile or the look-up table may be +14.
- the auto-setting value for highlights may be ⁇ 58 and the value for highlights in the preset may be ⁇ 44, so the compensation value for highlights in the creative profile or the look-up table may be +14.
- the auto-setting value for shadows may be +50 and the value for shadows in the preset may be +47, so the compensation value for shadows in the creative profile or the look-up table may be ⁇ 3.
- the auto-setting value for whites may be +6 and the value for whites in the preset may be ⁇ 26, so the compensation value for whites in the creative profile or the look-up table may be ⁇ 32.
- the auto-setting value for blacks may be ⁇ 13 and the value for blacks in the preset may be ⁇ 30, so the compensation value for blacks in the creative profile or the look-up table may be ⁇ 17.
- the auto-setting value for vibrance may be +15 and the value for vibrance in the preset may be 0, so the compensation value for vibrance in the creative profile or the look-up table may be ⁇ 15.
- the auto-setting value for saturation may be +1 and the value for saturation in the preset may be 0, so the compensation value for saturation in the creative profile or the look-up table may be ⁇ 1.
- the image-editing techniques may use relative adjustments to compensate for situational inaccuracies in exposure and/or white balance. For example, when the auto settings in combination with a preset tends to overexpose an image half a stop, the value of exposure in the set of parameters or settings may be reduced by ⁇ 0.50 (i.e., the compensation value), thereby compensating for the overexposure. Alternatively or additionally, when the auto setting or in-camera white balance tends to be 250° too warm, the value of the white balance may be reduced by ⁇ 250 (i.e., the compensation value).
- the values of the set of parameters or settings may be encrypted, e.g., by using one or more look-up tables that perform a mapping from the values of the set of parameters or settings to the encrypted values (or vice versa). This may allow the values of the set of parameters or settings to be obfuscated from the user of the image-editing software.
- the image-editing techniques are implemented using a plug-in module (or set of program instructions) and a cloud-based computer system.
- the cloud-based computer system may use a pretrained machine-learning model to analyze an image to determine the values of the set of parameters or settings.
- the plug-in module may upload an image to the cloud-based computer system.
- the cloud-based computer system may apply a pretrained machine-learning model to the image to predict values of the set of parameters or settings.
- the pretrained machine-learning model may have been trained on 200,000 images, and may predict the values or compensation values for the image to correction the auto-setting values for a particular preset (such as the average or median difference between the auto-setting values and the second values of the set of parameters of settings).
- the cloud-based computer system may provide the computed values of the set of parameters or settings to the plug-in module.
- the image-editing software may apply the values of the set of parameters or settings to the image to modify one or more attributes or characteristics of the images.
- the image-editing techniques may be used to address the competition between the auto-setting values of the set of parameters or settings and the second values of the set of parameters or settings associated with a preset.
- the image-editing techniques may allow the concurrent use of auto-setting values and the second values of the set of parameters or settings associated with a preset, such as by correcting the auto-setting values for the average or median difference between the auto-setting values and the second values of the set of parameters or settings associated with the preset.
- the pretrained machine-learning model may be trained on a set of images (such as, e.g., the 200,000 images) in order to optimize the predicted values of the set of parameters or settings.
- pretrained machine-learning model may initially be based at least in part on a ResNet or Residual Network (from Microsoft, Inc. of Redmond, Washington), which is updated during the training using transfer learning.
- a single pretrained machine-learning model may the values of the set of parameters or settings, instead of a separate pretrained machine-learning model for a given parameter or setting.
- a custom loss function may be used to ensure that the pretrained machine-learning model is properly trained.
- the same preset may be used for all training images.
- the values of the set of parameters or settings may include auto settings, such as: an exposure of ⁇ 0.70, a contrast of 0, highlights of ⁇ 36, shadows of +29, whites of ⁇ 45 and blacks of +5.
- the values of the set of parameters or settings may include: an exposure of ⁇ 0.70, a contrast of ⁇ 3, highlights of ⁇ 11, shadows of +7, whites of ⁇ 13 and blacks of ⁇ 2.
- 5 D presents the impact of the image-editing techniques on the image, which allows the use of a preset in conjunction with auto settings.
- the second values of the set or parameters associated with a preset may be overwritten by auto-setting values. Consequently, in the image-editing techniques, compensation values are applied to compensate for overly or under aggressive auto-setting values to obtain the intended user design. This may correct for situational inconsistencies associated with the auto settings. The result may require little to no user input (i.e., it may be automatic) while retaining the stylistic choices in the preset design.
- FIG. 6 A presents an example of an image for an unedited raw file. This image has been overexposed and may require a small exposure adjustment.
- FIG. 6 B presents an example of the image after a designer preset has been applied. Note that the image takes on the characteristics intended in the preset, but may still require user input to correct exposure and white balance.
- FIG. 6 C presents an example of the image when auto settings are applied. Once again, this may override many of the characteristics the preset. In general, building auto settings into a preset typically makes it impossible to retain the user design, because most of the input present in the preset is overwritten by the image-editing software.
- FIG. 6 D presents the impact of the image-editing techniques on the image, which allows the use of a preset in conjunction with auto settings.
- pretrained machine-learning models may be used, such as a pretrained machine-learning model that was trained using a training dataset and a supervised learning technique and/or an unsupervised learning technique.
- the pretrained machine-learning model may include a classifier or a regression model that was trained using: random forests, a support vector machine technique, a classification and regression tree technique, logistic regression, LASSO, linear regression, a neural network technique (such as deep learning, a convolutional neural network technique, an autoencoder neural network or another type of neural network technique), and/or another linear or nonlinear supervised-learning technique.
- FIG. 7 presents a block diagram illustrating an example of an electronic device 700 , e.g., electronic device 110 or a computer in computer system 130 in FIG. 1 , in accordance with some embodiments.
- electronic device 700 may include: one of computers 110 .
- This computer may include processing subsystem 710 , memory subsystem 712 , and networking subsystem 714 .
- Processing subsystem 710 includes one or more devices configured to perform computational operations.
- processing subsystem 710 can include one or more microprocessors, ASICs, microcontrollers, programmable-logic devices, GPUs and/or one or more DSPs. Note that a given component in processing subsystem 710 are sometimes referred to as a ‘computation device’.
- memory subsystem 712 can include mechanisms for controlling access to the memory.
- memory subsystem 712 includes a memory hierarchy that includes one or more caches coupled to a memory in electronic device 700 . In some of these embodiments, one or more of the caches is located in processing sub system 710 .
- memory subsystem 712 is coupled to one or more high-capacity mass-storage devices (not shown).
- memory subsystem 712 can be coupled to a magnetic or optical drive, a solid-state drive, or another type of mass-storage device.
- memory subsystem 712 can be used by electronic device 700 as fast-access storage for often-used data, while the mass-storage device is used to store less frequently used data.
- Networking subsystem 714 includes one or more devices configured to couple to and communicate on a wired and/or wireless network (i.e., to perform network operations), including: control logic 716 , an interface circuit 718 and one or more antennas 720 (or antenna elements).
- FIG. 7 includes one or more antennas 720
- electronic device 700 includes one or more nodes, such as antenna nodes 708 , e.g., a metal pad or a connector, which can be coupled to the one or more antennas 720 , or nodes 706 , which can be coupled to a wired or optical connection or link.
- electronic device 700 may or may not include the one or more antennas 720 .
- networking subsystem 714 can include a BluetoothTM networking system, a cellular networking system (e.g., a 3G/4G/5G network such as UMTS, LTE, etc.), a universal serial bus (USB) networking system, a networking system based on the standards described in IEEE 802.11 (e.g., a Wi-Fi® networking system), an Ethernet networking system, and/or another networking system.
- a BluetoothTM networking system e.g., a 3G/4G/5G network such as UMTS, LTE, etc.
- USB universal serial bus
- Networking subsystem 714 includes processors, controllers, radios/antennas, sockets/plugs, and/or other devices used for coupling to, communicating on, and handling data and events for each supported networking system.
- mechanisms used for coupling to, communicating on, and handling data and events on the network for each network system are sometimes collectively referred to as a ‘network interface’ for the network system.
- a ‘network’ or a ‘connection’ between the electronic devices does not yet exist. Therefore, electronic device 700 may use the mechanisms in networking subsystem 714 for performing simple wireless communication between electronic devices, e.g., transmitting advertising or beacon frames and/or scanning for advertising frames transmitted by other electronic devices.
- Bus 728 may include an electrical, optical, and/or electro-optical connection that the subsystems can use to communicate commands and data among one another. Although only one bus 728 is shown for clarity, different embodiments can include a different number or configuration of electrical, optical, and/or electro-optical connections among the subsystems.
- electronic device 700 includes a display subsystem 726 for displaying information on a display, which may include a display driver and the display, such as a liquid-crystal display, a multi-touch touchscreen, etc.
- electronic device 700 may include a user-interface subsystem 730 , such as: a mouse, a keyboard, a trackpad, a stylus, a voice-recognition interface, and/or another human-machine interface.
- Electronic device 700 can be (or can be included in) any electronic device with at least one network interface.
- electronic device 700 can be (or can be included in): a desktop computer, a laptop computer, a subnotebook/netbook, a server, a supercomputer, a tablet computer, a smartphone, a smartwatch, a cellular telephone, a consumer-electronic device, a portable computing device, communication equipment, and/or another electronic device.
- electronic device 700 may include one or more additional processing subsystems, memory subsystems, networking subsystems, and/or display subsystems. Additionally, one or more of the subsystems may not be present in electronic device 700 . Moreover, in some embodiments, electronic device 700 may include one or more additional subsystems that are not shown in FIG. 7 . Also, although separate subsystems are shown in FIG. 7 , in some embodiments some or all of a given subsystem or component can be integrated into one or more of the other subsystems or component(s) in electronic device 700 . For example, in some embodiments program instructions 722 are included in operating system 724 and/or control logic 716 is included in interface circuit 718 .
- circuits and components in electronic device 700 may be implemented using any combination of analog and/or digital circuitry, including: bipolar, PMOS and/or NMOS gates or transistors.
- signals in these embodiments may include digital signals that have approximately discrete values and/or analog signals that have continuous values.
- components and circuits may be single-ended or differential, and power supplies may be unipolar or bipolar.
- An integrated circuit may implement some or all of the functionality of networking subsystem 714 and/or electronic device 700 .
- the integrated circuit may include hardware and/or software mechanisms that are used for transmitting signals from electronic device 700 and receiving signals at electronic device 700 from other electronic devices. Aside from the mechanisms herein described, radios are generally known in the art and hence are not described in detail.
- networking subsystem 714 and/or the integrated circuit may include one or more radios.
- an output of a process for designing the integrated circuit, or a portion of the integrated circuit, which includes one or more of the circuits described herein may be a computer-readable medium such as, for example, a magnetic tape or an optical or magnetic disk or solid state disk.
- the computer-readable medium may be encoded with data structures or other information describing circuitry that may be physically instantiated as the integrated circuit or the portion of the integrated circuit.
- data structures are commonly written in: Caltech Intermediate Format (CIF), Calma GDS II Stream Format (GDSII), Electronic Design Interchange Format (EDIF), OpenAccess (OA), or Open Artwork System Interchange Standard (OASIS).
- the operations in the preceding embodiments were implemented in hardware or software, in general the operations in the preceding embodiments can be implemented in a wide variety of configurations and architectures. Therefore, some or all of the operations in the preceding embodiments may be performed in hardware, in software or both.
- at least some of the operations in the image-editing techniques may be implemented using program instructions 722 , operating system 724 (such as a driver for interface circuit 718 ) or in firmware in interface circuit 718 .
- the image-editing techniques may be implemented at runtime of program instructions 722 .
- at least some of the operations in the image-editing techniques may be implemented in a physical layer, such as hardware in interface circuit 718 .
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Studio Devices (AREA)
Abstract
Description
Claims (20)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US18/045,358 US12340446B2 (en) | 2021-10-08 | 2022-10-10 | Combining preset and auto settings in image editing |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US202163253786P | 2021-10-08 | 2021-10-08 | |
| US18/045,358 US12340446B2 (en) | 2021-10-08 | 2022-10-10 | Combining preset and auto settings in image editing |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| US20230115490A1 US20230115490A1 (en) | 2023-04-13 |
| US12340446B2 true US12340446B2 (en) | 2025-06-24 |
Family
ID=85798285
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US18/045,358 Active 2043-03-14 US12340446B2 (en) | 2021-10-08 | 2022-10-10 | Combining preset and auto settings in image editing |
Country Status (1)
| Country | Link |
|---|---|
| US (1) | US12340446B2 (en) |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20190080205A1 (en) * | 2016-09-16 | 2019-03-14 | Deep Learning Analytics, LLC | Systems and Methods for Deep Model Translation Generation |
| US20190251612A1 (en) * | 2018-02-15 | 2019-08-15 | Adobe Inc. | Generating user-customized items using a visually-aware image generation network |
| US20190295302A1 (en) * | 2018-03-22 | 2019-09-26 | Northeastern University | Segmentation Guided Image Generation With Adversarial Networks |
| US20230359665A1 (en) * | 2020-09-30 | 2023-11-09 | Sony Group Corporation | Information processing device, information processing method, and program |
-
2022
- 2022-10-10 US US18/045,358 patent/US12340446B2/en active Active
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20190080205A1 (en) * | 2016-09-16 | 2019-03-14 | Deep Learning Analytics, LLC | Systems and Methods for Deep Model Translation Generation |
| US20190251612A1 (en) * | 2018-02-15 | 2019-08-15 | Adobe Inc. | Generating user-customized items using a visually-aware image generation network |
| US20190295302A1 (en) * | 2018-03-22 | 2019-09-26 | Northeastern University | Segmentation Guided Image Generation With Adversarial Networks |
| US20230359665A1 (en) * | 2020-09-30 | 2023-11-09 | Sony Group Corporation | Information processing device, information processing method, and program |
Also Published As
| Publication number | Publication date |
|---|---|
| US20230115490A1 (en) | 2023-04-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US20240224082A1 (en) | Parameter selection method, parameter configuration method, terminal, and network side device | |
| CN114363921A (en) | AI network parameter configuration method and equipment | |
| CN114765879A (en) | PUSCH transmission method, device, equipment and storage medium | |
| WO2022206513A1 (en) | Model processing method, communication device, and system | |
| CN112541868B (en) | Image processing method, device, computer equipment and storage medium | |
| CN109219114B (en) | Method and electronic device for providing feedback information | |
| CN116488689A (en) | Beam information interaction method, device, equipment and storage medium | |
| US12267745B2 (en) | Device steering based on profile and historical behavior | |
| US20160127186A1 (en) | Method and system of dynamically designing and operating an optimal communication network configuration | |
| US20210103473A1 (en) | Method of configuring a memory block allocation of a machine learning network | |
| CN112868265A (en) | Network resource management method, management device, electronic device and storage medium | |
| WO2023160547A1 (en) | Information response method, information sending method, terminal, and network side device | |
| WO2023186099A1 (en) | Information feedback method and apparatus, and device | |
| US12108343B2 (en) | Transmitting power determination method, apparatus and communication device | |
| WO2023208181A1 (en) | Power determination method, terminal, and readable storage medium | |
| US12340446B2 (en) | Combining preset and auto settings in image editing | |
| CN108053453A (en) | A kind of optimization method of color, terminal and computer readable storage medium | |
| US11700294B2 (en) | Video-call user experience testing and assurance | |
| WO2020244619A1 (en) | Spectral curve acquiring method, electronic device, and chip | |
| WO2024041420A1 (en) | Measurement feedback processing method and apparatus, and terminal and network-side device | |
| CN117459961A (en) | Communication method, device and system | |
| CN116744451A (en) | Transmission methods, devices, terminals and storage media | |
| KR101767830B1 (en) | Method of transmitting an image based on resource information of an user and apparatus performing the same | |
| WO2024012285A1 (en) | Method and apparatus for measuring reference signal, and terminal, network-side device and medium | |
| CN120456193A (en) | Communication energy-saving control method, terminal and network function |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY |
|
| FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO SMALL (ORIGINAL EVENT CODE: SMAL); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY |
|
| STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
| AS | Assignment |
Owner name: DVLOP, LLC, CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:NEWSOM, JEFFREY S;REEL/FRAME:062415/0700 Effective date: 20230109 |
|
| FEPP | Fee payment procedure |
Free format text: PETITION RELATED TO MAINTENANCE FEES GRANTED (ORIGINAL EVENT CODE: PTGR); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY |
|
| STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
| STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
| STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
| STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
| STPP | Information on status: patent application and granting procedure in general |
Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS |
|
| STPP | Information on status: patent application and granting procedure in general |
Free format text: AWAITING TC RESP., ISSUE FEE NOT PAID |
|
| STCF | Information on status: patent grant |
Free format text: PATENTED CASE |