Electronic device for processing image, and image processing method thereof
The electronic device uses pyramid images to optimize noise reduction and tone mapping operations, addressing inefficiencies in existing methods by enhancing image quality and dynamic range through efficient noise reduction and tone mapping.
Patent Information
- Application Number
- PCT/KR2025/009276
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-08-26
- Filing Date
- 2025-07-01
- Publication Date
- 2026-01-15
AI Technical Summary
Existing image processing methods face challenges in efficiently reducing noise and adjusting tonal ranges in images due to the inefficiencies in performing temporal noise reduction and tone mapping operations, which can cause frame delays or suboptimal results when performed in a specific order.
An electronic device performs noise reduction and tone mapping operations using pyramid images, where local and global tone mappings are applied based on local and global histogram information, optimizing the order to minimize delays and enhance image quality.
The proposed method effectively reduces noise and enhances image tonal range by utilizing pyramid images, ensuring efficient and high-quality image processing without frame delays, thereby improving image clarity and dynamic range.
Smart Images

Figure KR2025009276_15012026_PF_FP_ABST
Abstract
Description
Electronic device for processing images and image processing method thereof
[0001] The present disclosure relates to an electronic device for processing an image and an image processing method thereof.
[0002] Electronic devices can acquire image data using image sensors. Image data acquired through image sensors can contain noise or be expressed in tones different from reality due to various factors. Electronic devices can remove noise contained in the image data or adjust the tones expressed in the image data.
[0003] Temporal noise reduction (TNR), a method for removing noise contained in image data, may involve compensating an image frame containing a captured image using a previously captured image frame. For example, an electronic device may reduce (or eliminate) noise generated when frames are repeated along the time axis by blending an image frame with a previous image frame.
[0004] To adjust the tonal range represented in image data, an electronic device may perform tone mapping. Tone mapping may include mapping one set of image data to another set using a tone curve for the image data.
[0005] The above information may be provided as background art to aid in understanding the present disclosure. No claim or determination is made as to whether any of the above is applicable as prior art in connection with the present disclosure.
[0006] In one embodiment, an electronic device may include at least one processor and a memory storing instructions. The instructions may be executed by the at least one processor to cause the electronic device to generate at least one pyramid image obtained by changing the resolution of an input image. The instructions may be executed by the at least one processor to cause the electronic device to obtain local histogram information and global histogram information based on a first pyramid image among the at least one pyramid image. The instructions may be executed by the at least one processor to cause the electronic device to perform an image signal processing operation using the at least one pyramid image to obtain a first image. The instructions may be executed by the at least one processor to cause the electronic device to perform local tone mapping and global tone mapping on the first image based on the local histogram information and the global histogram information to obtain a second image.
[0007] An operating method of an electronic device according to one embodiment may include an operation of generating at least one pyramid image obtained by changing a resolution from an input image. The method may include an operation of obtaining a first image by performing an image signal processing operation using the at least one pyramid image. The method may include an operation of obtaining local histogram information and global histogram information based on a first pyramid image among the at least one pyramid image. The method may include an operation of performing local tone mapping and global tone mapping on the first image based on the local histogram information and the global histogram information to obtain a second image.
[0008] A non-transitory computer-readable recording medium according to one embodiment may have recorded thereon a computer program that causes an electronic device to perform the above-described method when executed.
[0009] FIG. 1 is a block diagram of an electronic device within a network according to various embodiments.
[0010] FIG. 2 is a block diagram illustrating a camera module according to various embodiments.
[0011] FIG. 3 is a diagram illustrating an example of a pyramid image generated by an electronic device according to one embodiment.
[0012] FIG. 4 is a block diagram illustrating a process in which an electronic device according to one embodiment processes an image signal for an image based on a pyramid image.
[0013] FIG. 5 is a flowchart illustrating a process in which an electronic device performs image processing according to one embodiment.
[0014] FIG. 6 is a block diagram illustrating a process in which an electronic device processes an image signal and performs tone mapping according to one embodiment.
[0015] FIG. 7 is a diagram illustrating examples of local histograms and global histograms for performing tone mapping by an electronic device according to one embodiment.
[0016] FIG. 8 is a block diagram illustrating a process in which an electronic device processes an image signal and performs tone mapping according to one embodiment.
[0017] FIG. 9 is a block diagram illustrating a process in which an electronic device processes an image signal and performs tone mapping according to one embodiment.
[0018] FIG. 10 is a block diagram illustrating a process in which an electronic device processes an image signal and performs tone mapping according to one embodiment.
[0019] FIG. 11 is a flowchart illustrating a process in which an electronic device performs image processing according to one embodiment.
[0020] FIG. 12 is a flowchart illustrating a process in which an electronic device performs image processing according to one embodiment.
[0021] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the attached drawings so that those skilled in the art can easily implement the present disclosure. However, the disclosed embodiments may be implemented in various different forms and are not limited to the embodiments described herein.
[0022] In one embodiment, an electronic device may perform noise reduction and tone mapping operations on an image. The noise reduction operation may include an operation of reducing or removing noise included in an image. The tone mapping operation may include an operation of flattening a histogram of an image (histogram equalization (HE)) to allow the image to have a high dynamic range. To perform the tone mapping operation, the electronic device may adjust a tone curve of each gray level by applying a gain value to each gray level based on histogram distribution statistics of the gray level included in the image. The tone mapping operation may include local tone mapping (LTM) and global tone mapping. Local tone mapping may mean dividing an image into multiple local regions and performing tone mapping for each region to adjust a gain value. Global tone mapping may mean performing tone mapping on the entire region of the image. If an electronic device performs local tone mapping after performing a noise reduction operation and then performs global tone mapping on the result of performing the local tone mapping, an operation of reading an image stored in memory must be performed in each case of the operation for local tone mapping and the operation for global tone mapping, which may cause a frame delay. If the electronic device performs global tone mapping before performing the noise reduction operation and then performs local tone mapping after the noise reduction operation, the tone mapping performance may be low because the global tone mapping is performed before the local tone mapping.
[0023] The technical problems to be achieved in this document are not limited to the technical problems mentioned above, and other technical problems not mentioned will be clearly understood by a person having ordinary skill in the technical field to which the present disclosure pertains.
[0024] In this disclosure, the term "pixel" may refer to the smallest unit that constitutes a digital image. The resolution of an image may be expressed by the number of pixels contained in the image. For example, if an image is composed of axb pixels arranged in a rows and b columns, the resolution of the image may be indicated as axb.
[0025] FIG. 1 is a block diagram of an electronic device (101) within a network environment (100) according to various embodiments. Referring to FIG. 1, in the network environment (100), the electronic device (101) may communicate with the electronic device (102) via a first network (198) (e.g., a short-range wireless communication network), or may communicate with at least one of the electronic device (104) or the server (108) via a second network (199) (e.g., a long-range wireless communication network). In one embodiment, the electronic device (101) may communicate with the electronic device (104) via the server (108). According to one embodiment, the electronic device (101) may include a processor (120), a memory (130), an input module (150), an audio output module (155), a display module (160), an audio module (170), a sensor module (176), an interface (177), a connection terminal (178), a haptic module (179), a camera module (180), a power management module (188), a battery (189), a communication module (190), a subscriber identification module (196), or an antenna module (197). In some embodiments, the electronic device (101) may omit at least one of these components (e.g., the connection terminal (178)), or may have one or more other components added. In some embodiments, some of these components (e.g., the sensor module (176), the camera module (180), or the antenna module (197)) may be integrated into one component (e.g., the display module (160)).
[0026] The processor (120) may, for example, execute software (e.g., a program (140)) to control at least one other component (e.g., a hardware or software component) of the electronic device (101) connected to the processor (120) and perform various data processing or operations. According to one embodiment, as at least a part of the data processing or operations, the processor (120) may store commands or data received from other components (e.g., a sensor module (176) or a communication module (190)) in a volatile memory (132), process the commands or data stored in the volatile memory (132), and store result data in a non-volatile memory (134). According to one embodiment, the processor (120) may include a main processor (121) (e.g., a central processing unit or an application processor) or an auxiliary processor (123) (e.g., a graphics processing unit, a neural processing unit (NPU), an image signal processor, a sensor hub processor, or a communication processor) that can operate independently or together with the main processor (121). For example, when the electronic device (101) includes the main processor (121) and the auxiliary processor (123), the auxiliary processor (123) may be configured to use less power than the main processor (121) or to be specialized for a given function. The auxiliary processor (123) may be implemented separately from the main processor (121) or as a part thereof.
[0027] The auxiliary processor (123) may control at least a portion of functions or states associated with at least one component (e.g., a display module (160), a sensor module (176), or a communication module (190)) of the electronic device (101), for example, on behalf of the main processor (121) while the main processor (121) is in an inactive (e.g., sleep) state, or together with the main processor (121) while the main processor (121) is in an active (e.g., application execution) state. In one embodiment, the auxiliary processor (123) (e.g., an image signal processor or a communication processor) may be implemented as a part of another functionally related component (e.g., a camera module (180) or a communication module (190)). In one embodiment, the auxiliary processor (123) (e.g., a neural network processing unit) may include a hardware structure specialized for processing artificial intelligence models. The artificial intelligence models may be generated through machine learning. This learning can be performed, for example, on the electronic device (101) itself where the artificial intelligence model is executed, or can be performed through a separate server (e.g., server (108)). The learning algorithm can include, for example, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning, but is not limited to the examples described above. The artificial intelligence model can include multiple artificial neural network layers.The artificial neural network may be one of a deep neural network (DNN), a convolutional neural network (CNN), a recurrent neural network (RNN), a restricted Boltzmann machine (RBM), a deep belief network (DBN), a bidirectional recurrent deep neural network (BRDNN), a deep Q-network, or a combination of two or more of the above, but is not limited to the examples described above. In addition to, or alternatively to, a hardware structure, an artificial intelligence model may include a software structure.
[0028] The memory (130) can store various data used by at least one component (e.g., processor (120) or sensor module (176)) of the electronic device (101). The data can include, for example, software (e.g., program (140)) and input data or output data for commands related thereto. The memory (130) can include volatile memory (132) or non-volatile memory (134).
[0029] The program (140) may be stored as software in the memory (130) and may include, for example, an operating system (142), middleware (144), or an application (146).
[0030] The input module (150) can receive commands or data to be used in a component of the electronic device (101) (e.g., a processor (120)) from an external source (e.g., a user) of the electronic device (101). The input module (150) can include, for example, a microphone, a mouse, a keyboard, a key (e.g., a button), or a digital pen (e.g., a stylus pen).
[0031] The audio output module (155) can output audio signals to the outside of the electronic device (101). The audio output module (155) can include, for example, a speaker or a receiver. The speaker can be used for general purposes, such as multimedia playback or recording playback. The receiver can be used to receive incoming calls. In one embodiment, the receiver can be implemented separately from the speaker or as part of the speaker.
[0032] The display module (160) can visually provide information to an external party (e.g., a user) of the electronic device (101). The display module (160) may include, for example, a display, a holographic device, or a projector and a control circuit for controlling the device. According to one embodiment, the display module (160) may include a touch sensor configured to detect a touch, or a pressure sensor configured to measure the intensity of a force generated by the touch.
[0033] The audio module (170) can convert sound into an electrical signal, or vice versa, convert an electrical signal into sound. According to one embodiment, the audio module (170) can acquire sound through the input module (150), output sound through the sound output module (155), or an external electronic device (e.g., electronic device (102)) (e.g., speaker or headphone) directly or wirelessly connected to the electronic device (101).
[0034] The sensor module (176) can detect the operating status (e.g., power or temperature) of the electronic device (101) or the external environmental status (e.g., user status) and generate an electrical signal or data value corresponding to the detected status. According to one embodiment, the sensor module (176) can include, for example, a gesture sensor, a gyro sensor, a barometric pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor, an IR (infrared) sensor, a biometric sensor, a temperature sensor, a humidity sensor, or an illuminance sensor.
[0035] The interface (177) may support one or more designated protocols that may be used to directly or wirelessly connect the electronic device (101) with an external electronic device (e.g., the electronic device (102)). In one embodiment, the interface (177) may include, for example, a high definition multimedia interface (HDMI), a universal serial bus (USB) interface, an SD card interface, or an audio interface.
[0036] The connection terminal (178) may include a connector through which the electronic device (101) may be physically connected to an external electronic device (e.g., electronic device (102)). According to one embodiment, the connection terminal (178) may include, for example, an HDMI connector, a USB connector, an SD card connector, or an audio connector (e.g., a headphone connector).
[0037] The haptic module (179) can convert electrical signals into mechanical stimuli (e.g., vibration or movement) or electrical stimuli that a user can perceive through tactile or kinesthetic sensations. According to one embodiment, the haptic module (179) can include, for example, a motor, a piezoelectric element, or an electrical stimulation device.
[0038] The camera module (180) can capture still images and videos. According to one embodiment, the camera module (180) may include one or more lenses, image sensors, image signal processors, or flashes.
[0039] The power management module (188) can manage power supplied to the electronic device (101). According to one embodiment, the power management module (188) can be implemented as, for example, at least a part of a power management integrated circuit (PMIC).
[0040] A battery (189) may power at least one component of the electronic device (101). In one embodiment, the battery (189) may include, for example, a non-rechargeable primary battery, a rechargeable secondary battery, or a fuel cell.
[0041] The communication module (190) may support the establishment of a direct (e.g., wired) communication channel or a wireless communication channel between the electronic device (101) and an external electronic device (e.g., electronic device (102), electronic device (104), or server (108)), and the performance of communication through the established communication channel. The communication module (190) may operate independently from the processor (120) (e.g., application processor) and may include one or more communication processors that support direct (e.g., wired) communication or wireless communication. According to one embodiment, the communication module (190) may include a wireless communication module (192) (e.g., a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module) or a wired communication module (194) (e.g., a local area network (LAN) communication module, or a power line communication module). Among these communication modules, the corresponding communication module can communicate with an external electronic device (104) via a first network (198) (e.g., a short-range communication network such as Bluetooth, wireless fidelity (WiFi) direct, or infrared data association (IrDA)) or a second network (199) (e.g., a long-range communication network such as a legacy cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (e.g., a LAN or WAN)). These various types of communication modules can be integrated into a single component (e.g., a single chip) or implemented as multiple separate components (e.g., multiple chips). The wireless communication module (192) can verify or authenticate the electronic device (101) within a communication network such as the first network (198) or the second network (199) by using subscriber information (e.g., an international mobile subscriber identity (IMSI)) stored in the subscriber identification module (196).
[0042] The wireless communication module (192) can support 5G networks and next-generation communication technologies following the 4G network, such as NR access technology (new radio access technology). The NR access technology can support high-speed transmission of high-capacity data (eMBB (enhanced mobile broadband)), minimization of terminal power and connection of multiple terminals (mMTC (massive machine type communications)), or high reliability and low latency (URLLC (ultra-reliable and low-latency communications)). The wireless communication module (192) can support, for example, a high-frequency band (e.g., mmWave band) to achieve a high data transmission rate. The wireless communication module (192) can support various technologies for securing performance in a high-frequency band, such as beamforming, massive multiple-input and multiple-output (MIMO), full dimensional MIMO (FD-MIMO), array antenna, analog beam-forming, or large scale antenna. The wireless communication module (192) can support various requirements specified in the electronic device (101), an external electronic device (e.g., the electronic device (104)), or a network system (e.g., the second network (199)). According to one embodiment, the wireless communication module (192) can support a peak data rate (e.g., 20 Gbps or more) for eMBB realization, a loss coverage (e.g., 164 dB or less) for mMTC realization, or a U-plane latency (e.g., 0.5 ms or less for downlink (DL) and uplink (UL), or 1 ms or less for round trip) for URLLC realization.
[0043] The antenna module (197) can transmit or receive signals or power to or from an external device (e.g., an external electronic device). In one embodiment, the antenna module (197) may include an antenna including a radiator formed of a conductor or a conductive pattern formed on a substrate (e.g., a PCB). In one embodiment, the antenna module (197) may include a plurality of antennas (e.g., an array antenna). In this case, at least one antenna suitable for a communication method used in a communication network, such as the first network (198) or the second network (199), may be selected from the plurality of antennas, for example, by the communication module (190). A signal or power may be transmitted or received between the communication module (190) and an external electronic device via the at least one selected antenna. In some embodiments, in addition to the radiator, another component (e.g., a radio frequency integrated circuit (RFIC)) may be additionally formed as a part of the antenna module (197).
[0044] According to various embodiments, the antenna module (197) may form a mmWave antenna module. In one embodiment, the mmWave antenna module may include a printed circuit board, an RFIC disposed on or adjacent a first side (e.g., a bottom side) of the printed circuit board and capable of supporting a designated high-frequency band (e.g., a mmWave band), and a plurality of antennas (e.g., an array antenna) disposed on or adjacent a second side (e.g., a top side or a side side) of the printed circuit board and capable of transmitting or receiving signals in the designated high-frequency band.
[0045] At least some of the above components can be interconnected and exchange signals (e.g., commands or data) with each other via a communication method between peripheral devices (e.g., a bus, GPIO (general purpose input and output), SPI (serial peripheral interface), or MIPI (mobile industry processor interface)).
[0046] According to one embodiment, commands or data may be transmitted or received between the electronic device (101) and an external electronic device (104) via a server (108) connected to a second network (199). Each of the external electronic devices (102 or 104) may be the same or a different type of device as the electronic device (101). According to one embodiment, all or part of the operations executed in the electronic device (101) may be executed in one or more of the external electronic devices (102, 104, or 108). For example, when the electronic device (101) is to perform a certain function or service automatically or in response to a request from a user or another device, the electronic device (101) may, instead of or in addition to executing the function or service itself, request one or more external electronic devices to perform the function or at least a part of the service. One or more external electronic devices that receive the request may execute at least a portion of the requested function or service, or an additional function or service related to the request, and transmit the result of the execution to the electronic device (101). The electronic device (101) may process the result as is or additionally and provide it as at least a portion of a response to the request. For this purpose, cloud computing, distributed computing, mobile edge computing (MEC), or client-server computing technology may be used, for example. The electronic device (101) may provide an ultra-low latency service by using distributed computing or mobile edge computing, for example. In one embodiment, the external electronic device (104) may include an Internet of Things (IoT) device. The server (108) may be an intelligent server utilizing machine learning and / or a neural network. According to one embodiment, the external electronic device (104) or the server (108) may be included in the second network (199).The electronic device (101) can be applied to intelligent services (e.g., smart home, smart city, smart car, or healthcare) based on 5G communication technology and IoT-related technology.
[0047] Electronic devices according to the various embodiments disclosed in this document may take various forms. Electronic devices may include, for example, portable communication devices (e.g., smartphones), computer devices, portable multimedia devices, portable medical devices, cameras, wearable devices, or home appliances. Electronic devices according to the embodiments of this document are not limited to the aforementioned devices.
[0048] The various embodiments of this document and the terminology used therein are not intended to limit the technical features described in this document to specific embodiments, but should be understood to include various modifications, equivalents, or substitutes of the embodiments. In connection with the description of the drawings, similar reference numerals may be used for similar or related components. The singular form of a noun corresponding to an item may include one or more of the items, unless the context clearly indicates otherwise. In this document, each of the phrases "A or B", "at least one of A and B", "at least one of A or B", "A, B, or C", "at least one of A, B, and C", and "at least one of A, B, or C" can include any one of the items listed together in the corresponding phrase among those phrases, or all possible combinations thereof. Terms such as "first," "second," or "first" or "second" may be used merely to distinguish one component from another, and do not limit the components in any other respect (e.g., importance or order). When a component (e.g., a first component) is referred to as "coupled" or "connected" to another (e.g., a second component), with or without the terms "functionally" or "communicatively," it means that the component can be connected to the other component directly (e.g., wired), wirelessly, or through a third component.
[0049] The term "module" used in various embodiments of this document may include a unit implemented in hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit. A module may be an integral component, or a minimum unit or part of such a component that performs one or more functions. For example, according to one embodiment, a module may be implemented in the form of an application-specific integrated circuit (ASIC).
[0050] Various embodiments of the present document may be implemented as software (e.g., a program (140)) including one or more instructions stored in a storage medium (e.g., an internal memory (136) or an external memory (138)) readable by a machine (e.g., an electronic device (101)). For example, a processor (e.g., a processor (120)) of the machine (e.g., an electronic device (101)) may call at least one instruction among the one or more instructions stored from the storage medium and execute it. This enables the machine to operate to perform at least one function according to the at least one called instruction. The one or more instructions may include code generated by a compiler or code executable by an interpreter. The machine-readable storage medium may be provided in the form of a non-transitory storage medium. Here, 'non-transitory' simply means that the storage medium is a tangible device and does not contain signals (e.g., electromagnetic waves), and the term does not distinguish between cases where data is stored semi-permanently or temporarily on the storage medium.
[0051] According to one embodiment, the method according to various embodiments disclosed in this document may be provided as a computer program product. The computer program product may be traded between sellers and buyers as a product. The computer program product may be distributed in the form of a device-readable storage medium (e.g., compact disc read-only memory (CD-ROM)) or may be provided through an application store (e.g., Play Store). TM ) or directly between two user devices (e.g., smart phones), online distribution (e.g., downloading or uploading). In the case of online distribution, at least a portion of the computer program product may be at least temporarily stored or temporarily created in a machine-readable storage medium, such as the memory of a manufacturer's server, an application store's server, or an intermediary server.
[0052] According to various embodiments, each component (e.g., a module or a program) of the above-described components may include one or more entities, and some of the entities may be separated and placed in other components. According to various embodiments, one or more components or operations of the aforementioned components may be omitted, or one or more other components or operations may be added. Alternatively or additionally, a plurality of components (e.g., a module or a program) may be integrated into a single component. In such a case, the integrated component may perform one or more functions of each of the plurality of components identically or similarly to those performed by the corresponding component among the plurality of components prior to the integration. According to various embodiments, the operations performed by a module, program, or other component may be executed sequentially, in parallel, iteratively, or heuristically, or one or more of the operations may be executed in a different order, omitted, or one or more other operations may be added.
[0053] FIG. 2 is a block diagram (200) illustrating a camera module (180) according to various embodiments. Referring to FIG. 2, the camera module (180) may include a lens assembly (210), a flash (220), an image sensor (230), an image stabilizer (240), a memory (250) (e.g., a buffer memory), or an image signal processor (260). The lens assembly (210) may collect light emitted from a subject that is a target of image capturing. The lens assembly (210) may include one or more lenses. According to one embodiment, the camera module (180) may include a plurality of lens assemblies (210). In this case, the camera module (180) may form, for example, a dual camera, a 360-degree camera, or a spherical camera. Some of the plurality of lens assemblies (210) may have the same lens properties (e.g., angle of view, focal length, autofocus, f-number, or optical zoom), or at least one lens assembly may have one or more lens properties that are different from the lens properties of the other lens assemblies. A lens assembly (210) may include, for example, a wide-angle lens or a telephoto lens.
[0054] The flash (220) can emit light used to enhance light emitted or reflected from a subject. According to one embodiment, the flash (220) can include one or more light-emitting diodes (e.g., red-green-blue (RGB) LED, white LED, infrared LED, or ultraviolet LED), or a xenon lamp. The image sensor (230) can acquire an image corresponding to the subject by converting light emitted or reflected from the subject and transmitted through the lens assembly (210) into an electrical signal. According to one embodiment, the image sensor (230) can include one image sensor selected from among image sensors having different properties, such as an RGB sensor, a black and white (BW) sensor, an IR sensor, or a UV sensor, a plurality of image sensors having the same property, or a plurality of image sensors having different properties. Each image sensor included in the image sensor (230) can be implemented using, for example, a CCD (charged coupled device) sensor or a CMOS (complementary metal oxide semiconductor) sensor.
[0055] The image stabilizer (240) can move at least one lens or image sensor (230) included in the lens assembly (210) in a specific direction or control the operating characteristics of the image sensor (230) (e.g., adjusting the read-out timing, etc.) in response to the movement of the camera module (180) or the electronic device (101) including the same. This allows compensating for at least some of the negative effects of the movement on the captured image. In one embodiment, the image stabilizer (240) can detect such movement of the camera module (180) or the electronic device (101) using a gyro sensor (not shown) or an acceleration sensor (not shown) disposed inside or outside the camera module (180). In one embodiment, the image stabilizer (240) can be implemented as, for example, an optical image stabilizer. The memory (250) can temporarily store at least a portion of the image acquired through the image sensor (230) for the next image processing task. For example, when image acquisition is delayed due to the shutter, or when multiple images are acquired at high speed, the acquired original image (e.g., a Bayer-patterned image or a high-resolution image) is stored in the memory (250), and a corresponding copy image (e.g., a low-resolution image) can be previewed through the display module (160). Thereafter, when a specified condition is satisfied (e.g., a user input or a system command), at least a portion of the original image stored in the memory (250) can be acquired and processed, for example, by the image signal processor (260). According to one embodiment, the memory (250) can be configured as at least a portion of the memory (130) or as a separate memory that operates independently therefrom.
[0056] The image signal processor (260) can perform one or more image processing operations on an image acquired through an image sensor (230) or an image stored in a memory (250). The one or more image processing operations may include, for example, depth map generation, 3D modeling, panorama generation, feature extraction, image synthesis, or image compensation (e.g., noise reduction, resolution adjustment, brightness adjustment, blurring, sharpening, or softening). Additionally or alternatively, the image signal processor (260) may perform control (e.g., exposure time control, read-out timing control, etc.) for at least one of the components included in the camera module (180) (e.g., image sensor (230)). An image processed by the image signal processor (260) may be stored back in the memory (250) for further processing or provided to an external component of the camera module (180) (e.g., memory (130), display module (160), electronic device (102), electronic device (104), or server (108)). According to one embodiment, the image signal processor (260) may include at least one of the processors (120). It may be configured as a separate processor that is configured as a part of the processor (120) or operates independently of the processor (120). If the image signal processor (260) is configured as a separate processor from the processor (120), at least one image processed by the image signal processor (260) may be displayed through the display module (160) as is or after undergoing additional image processing by the processor (120).
[0057] According to one embodiment, the electronic device (101) may include a plurality of camera modules (180), each having different properties or functions. In this case, for example, at least one of the plurality of camera modules (180) may be a wide-angle camera, and at least another may be a telephoto camera. Similarly, at least one of the plurality of camera modules (180) may be a front camera, and at least another may be a rear camera.
[0058] In the present disclosure, the operation of an electronic device (e.g., the electronic device (101) of FIG. 1) may be understood as being performed by executing instructions stored in a memory (e.g., the memory (130) of FIG. 3) by at least one processor (e.g., the processor (120) of FIG. 1) to perform operations or control components of the electronic device.
[0059] FIG. 3 is a diagram illustrating an example of a pyramid image (310) generated by an electronic device (e.g., the electronic device (101) of FIG. 1) according to one embodiment.
[0060] An electronic device according to one embodiment may acquire image frames. For example, the electronic device may acquire images acquired through an image sensor (230) of a camera (e.g., a camera module (180) of FIGS. 1 and 2). For example, the electronic device may also acquire images stored in a memory (e.g., a memory (130) of FIG. 1). The image acquired by the electronic device may be referred to as an input image (300). For example, the electronic device may acquire a current input image (302) after acquiring a previous input image (301).
[0061] In one embodiment, the electronic device may perform an image signal processing operation on a current input image (302) based on a plurality of image frames. For example, the electronic device may perform a noise reduction operation on the current input image (302) based on the plurality of image frames. In the present disclosure, 'reducing noise' may mean removing at least some noise from an image. The electronic device may generate a plurality of pyramid images (310) from each of the input images (300). The pyramid images may include images obtained by changing the resolution of the input images (300). The pyramid images (310) may include images that are divided into a plurality of levels (or layers) according to the resolution. For example, a level 1 pyramid image (L(1)) may include an image with a resolution 1 / 4 that of the input images (300). A level 2 pyramid image (L(2)) may include an image having a resolution 1 / 16 lower than that of the input images (300). A level N pyramid image (L(N)) may include an image having a resolution 1 / (4^N) lower than that of the input images (300). In the present disclosure, the input images (300) may also be referred to as level '0 pyramid images'. An electronic device may perform an image signal processing operation based on pyramid images (310) generated from a plurality of input images (300).
[0062] In one embodiment, the electronic device can obtain a level N output image on which temporal noise reduction is performed by comparing a previous level N pyramid image (331) with a current level N pyramid image (331). The electronic device can obtain a level N-1 output image on which temporal noise reduction is performed by comparing a level N output image, a previous level N-1 pyramid image, and a current level N-1 pyramid image. By repeating the above operation, the electronic device can obtain a level 2 output image on which temporal noise reduction is performed by comparing a level 3 output image, a previous level 2 pyramid image (321), and a current level 2 pyramid image (322). The electronic device can obtain a level 1 output image on which temporal noise reduction is performed by comparing a level 2 output image, a previous level 1 pyramid image (311), and a current level 1 pyramid image (312). The electronic device can obtain an output image on which temporal noise reduction is performed by comparing a level 1 output image, a previous input image (301), and a current input image (302).
[0063] In one embodiment, since an image has low-frequency characteristics as its resolution decreases, an output image in which noise reduction is performed for multiple frequency bands can be obtained by performing a temporal noise reduction operation based on a pyramid image whose resolution is adjusted to multiple levels.
[0064] FIG. 4 is a block diagram illustrating a process in which an electronic device (e.g., the electronic device of FIG. 1) according to one embodiment processes an image signal for an image based on a pyramid image.
[0065] In one embodiment, the electronic device may store input images (e.g., input images (300) of FIG. 3) and pyramid images (e.g., pyramid images (310) of FIG. 3) in a memory (400) (e.g., memory (130) of FIG. 1). The memory (400) may include, for example, a dynamic random access memory (DRAM). However, the type of the memory (400) is not limited thereto.
[0066] In the present disclosure, the image signal processing operation may refer to at least one operation performed by an electronic device to improve the quality of an image using a pyramid image. For example, the image signal processing operation may include a temporal image signal processing operation that reduces noise using a pyramid image. For example, the image signal processing operation may include an operation that improves the clarity of an image using a pyramid image.
[0067] In one embodiment, the electronic device can access the memory (400) to read the current level N pyramid image (411) and the previous level N pyramid image (412). The electronic device can perform an image signal processing operation (413) based on the current level N pyramid image (411) and the previous level N pyramid image (412). The electronic device can obtain a level N output image (414) based on the image signal processing operation (413). For example, the level N output image (414) can include an image in which noise is reduced from the current level N pyramid image (411) using the previous level N pyramid image (412). The electronic device can store the level N output image (414) in the memory (400). The electronic device can read the level N output image, the current level N-1 pyramid image (421), and the previous level N-1 pyramid image (422) stored in the memory (400). The electronic device can perform an image signal processing operation (423) based on the level N output image read from the memory (400), the current level N-1 pyramid image (421), and the previous level N-1 pyramid image (422). For example, the level N-1 output image (424) can include an image in which noise is reduced from the current level N-1 pyramid image (421) using the previous level N-1 pyramid image (422) and the level N output image (414). The electronic device can obtain the level N-1 output image (424) based on the image signal processing operation (423). The electronic device can store the level N-1 output image (424) in the memory (400).
[0068] In one embodiment, the electronic device may repeat the image signal processing operation until it obtains a level 0 output image (444). Each image signal processing operation may include temporal noise reduction (TNR). The electronic device may read the level 1 output image (434), the previous level 0 pyramid image (previous input image) (442), and the current level 0 pyramid image (current input image) (441) stored in the memory (400). The electronic device may perform the image signal processing operation (443) based on the level 1 output image (434), the previous level 0 pyramid image (442), and the current level 0 pyramid image (441). The electronic device may obtain the level 0 output image (444) through the image signal processing operation (443). For example, the level 0 output image (444) may include an image in which noise is reduced from the current level 0 pyramid image (431) using the previous level 0 pyramid image (442) and the level 1 output image (434).
[0069] In one embodiment, an electronic device may perform a tone mapping operation on an image. The tone mapping operation may refer to an operation of equalizing a histogram of an image to improve contrast, thereby increasing the readability of the image by giving the image a high dynamic range. The tone mapping operation may include an operation of adjusting a tone curve by multiplying a gain value for each gray level based on histogram distribution statistics of gray levels of all or a portion of an image. In one embodiment, the tone mapping operation may include local tone mapping and global tone mapping. Local tone mapping may include an operation of dividing an image into a plurality of local regions and adjusting a gain value of a gray level for each local region. Global tone mapping may include an operation of adjusting a gain value of a gray level for the entire image. When performing local tone mapping and global tone mapping after obtaining a level 0 output image (444), an operation of accessing the memory (400) (e.g., direct memory access (DMA)) may have to be performed twice: in the process of performing local tone mapping after storing the level 0 output image (444) in the memory (400) and in the process of performing global tone mapping. Therefore, a delay may occur until the tone-mapped image is obtained. It is also possible to perform local tone mapping on the acquired level 0 output image (444) by performing global tone mapping before performing an image signal processing operation and performing an image signal processing operation (e.g., image signal processing operations (413, 423, 443)) based on the result of performing the global tone mapping.However, in this case, since global tone mapping is performed separately before local tone mapping, the quality of the tone-mapped result may be relatively low.
[0070] FIG. 5 is a flowchart (500) illustrating a process by which an electronic device (e.g., the electronic device (101) of FIG. 1) performs image processing according to one embodiment. FIG. 5 is provided to explain operations performed by the electronic device according to one embodiment, and the process by which the electronic device performs image processing is not limited to the order illustrated in FIG. 5. For example, the order of the operations illustrated in FIG. 5 may be changed, one operation may be performed while another operation is being performed, or one operation may be performed in parallel with another operation.
[0071] In operation 510, an electronic device according to an embodiment may generate at least one pyramid image (e.g., pyramid images (310) of FIG. 3) from an input image (e.g., the input image of FIG. 3). The electronic device may perform image signal processing operations (e.g., image signal processing operations (413, 423, 443) of FIG. 4) to improve the quality of the input image based on the at least one pyramid image.
[0072] In operation 520, an electronic device according to one embodiment may obtain histogram information based on a first pyramid image (e.g., a current level 1 pyramid image (611) of FIG. 6 , a current level 1 pyramid image (611) of FIG. 8 , a current level 2 pyramid image (621) of FIG. 9 , a current level 2 pyramid image (621) of FIG. 10 ). The histogram information may include at least one of local histogram information or global histogram information. For example, the electronic device may perform an image signal processing operation (e.g., an image signal processing operation (613) of FIG. 6, an image signal processing operation (613) of FIG. 8, an image signal processing operation (623) of FIG. 9, an image signal processing operation (623) of FIG. 10) on a first pyramid image among a plurality of pyramid images to obtain an output image (e.g., a level 1 output image (614) of FIG. 6, a level 1 output image (614) of FIG. 8, a level 2 output image (624) of FIG. 9, a level 2 output image (624) of FIG. 10). The electronic device may obtain at least one of local histogram information or global histogram information from the output image.
[0073] In operation 530, an electronic device according to an embodiment may perform an image signal processing operation (e.g., image signal processing operations 413, 423, 443 of FIG. 4 , image signal processing operations 603, 613 of FIGS. 6 and 8 , and image signal processing operations 603, 613, 623 of FIGS. 9 and 10 ) using at least one pyramid image to obtain a first image (e.g., level 0 output image 604 of FIGS. 6 , 8 , 9 , 10 ). In FIG. 5 , operation 530 is illustrated as being performed after operation 520, but is not limited thereto. For example, at least a part of operation 530 may be performed in parallel with operation 520.
[0074] In operation 540, an electronic device according to an embodiment may perform tone mapping on a first image to obtain a second image. The electronic device may perform tone mapping based on the histogram information obtained through operation 520. For example, the electronic device may perform local tone mapping on the first image based on local histogram information and global tone mapping on the first image based on global histogram information.
[0075] FIG. 6 is a block diagram illustrating a process in which an electronic device (e.g., the electronic device (101) of FIG. 1) processes an image signal and performs tone mapping according to one embodiment.
[0076] The image signal processing operations (603, 613) illustrated in FIG. 6 may include at least one operation performed by the electronic device to improve the quality of an image using a pyramid image. For example, the image signal processing operations (603, 613) may include a temporal image signal processing operation that reduces noise using a pyramid image. For example, the image signal processing operations (603, 613) may include an operation that improves the clarity of an image using a pyramid image.
[0077] In one embodiment, the electronic device may perform an image signal processing operation (613) based on a current level 1 pyramid image (611), a previous level 1 pyramid image (612), and a level 2 output image (624) stored in a memory (400) (e.g., a memory (130) of FIG. 1). The level N output image may be obtained by performing image signal processing on the current level N pyramid image using at least the previous level N pyramid image, but a description thereof may be omitted below. For example, the electronic device may reduce noise from the current level 1 pyramid image (611) using the previous level 1 pyramid image (612), and obtain a level 1 output image (614) by synthesizing the current level 1 pyramid image (611) with reduced noise and the level 2 output image (624). The electronic device may store the level 1 output image (614) in the memory (400).
[0078] In one embodiment, the electronic device may perform a local histogram counting operation (641) to obtain local histogram information (642) from a level 1 output image (614) obtained through an image signal processing operation (613). The electronic device may divide the level 1 output image (614) into a plurality of local regions and count the grayscale values for each local region to obtain local histogram information (642).
[0079] In one embodiment, the electronic device can read the current level 0 pyramid image (601), the previous level 0 pyramid image (602), and the level 1 output image (614) stored in the memory (400). The electronic device can perform an image signal processing operation (603) on the current level 0 pyramid image (601) using the previous level 0 pyramid image (602) and the level 1 output image (614) read from the memory (400). For example, the electronic device can reduce noise in the current level 0 pyramid image (601) using the previous level 0 pyramid image (602), and synthesize the current level 0 pyramid image (601) with reduced noise with the level 1 output image (614). The electronic device can obtain the level 0 output image (604) through the image signal processing operation (603). The electronic device can further perform local tone mapping (643) using local histogram information (642) on the level 1 output image (614) read from the memory (400). The electronic device can perform a global histogram counting operation (644) to obtain global histogram information (645) from the result of performing local tone mapping (643). The electronic device can obtain global histogram information (645) by counting grayscale values for all areas of the image obtained by performing local tone mapping (643).
[0080] In one embodiment, the electronic device can read a level 0 output image (604) stored in the memory (400). The electronic device can perform local tone mapping (646) using previously acquired local histogram information (642) on the level 0 output image (604) read from the memory (400). The electronic device can perform global tone mapping (647) using global histogram information (645) on the result of performing local tone mapping (646). The electronic device can obtain a tone-mapped image (605) based on the result of performing global tone mapping (647). The electronic device can store the tone-mapped image (605) in the memory (400). After completing the image signal processing operation (603), when performing tone mapping by acquiring local histogram information and global histogram information based on the level 0 image, an operation of accessing the memory (400) to perform local tone mapping after acquiring the local histogram information, and accessing the memory (400) to perform global tone mapping after acquiring a global histogram based on the result of performing the local tone mapping may be performed. Accordingly, access to the memory (400) may be required twice after the image signal processing operation is performed. In contrast, according to the process illustrated in FIG. 6, the electronic device according to one embodiment may acquire a tone-mapped image (605) through one access to read the level 0 output image (604) after the image signal processing operation (603).
[0081] FIG. 7 is a diagram illustrating examples of local histograms and global histograms for performing tone mapping by an electronic device (e.g., the electronic device (101) of FIG. 1) according to one embodiment.
[0082] In one embodiment, the electronic device may obtain at least one of local histogram information (720) or global histogram information (750) from the image (710). For example, the image (710) may be an image in which the tones of the sky and buildings are not sufficiently expressed. The electronic device may divide the image (710) into a plurality of local regions and obtain local histogram information (720) for each local region. The electronic device may perform local tone mapping by applying a gain value to the tones of the image (710) by adjusting a local tone curve (730) for each local region based on the local histogram information (720).
[0083] In one embodiment, the electronic device can obtain global histogram information (750) for the entire image (710) by counting grayscale values for an entire area of the image (710). The electronic device can perform global tone-mapping by applying a gain value to the grayscale values of the image (710) by adjusting a global tone curve for the entire image (710) based on the global histogram information (750). The electronic device can obtain an image (740) with improved grayscale expression through at least one of local tone-mapping and global tone-mapping.
[0084] In one embodiment, the electronic device may perform global tone mapping before local tone mapping. The electronic device may perform local tone mapping on the result of performing global tone mapping. The electronic device may also perform local tone mapping before global tone mapping. The electronic device may perform global tone mapping on the result of performing local tone mapping.
[0085] FIG. 8 is a block diagram illustrating a process in which an electronic device (e.g., the electronic device (101) of FIG. 1) processes an image signal and performs tone mapping according to one embodiment.
[0086] The image signal processing operations (603, 613) illustrated in FIG. 8 may include at least one operation performed by the electronic device to improve the quality of an image using a pyramid image. For example, the image signal processing operations (603, 613) may include a temporal image signal processing operation that reduces noise using a pyramid image. For example, the image signal processing operations (603, 613) may include an operation that improves the clarity of an image using a pyramid image.
[0087] In one embodiment, the electronic device may perform an image signal processing operation (613) based on a current level 1 pyramid image (611), a previous level 1 pyramid image (612), and a level 2 output image (624) stored in a memory (400) (e.g., a memory (130) of FIG. 1). For example, the electronic device may reduce noise from the current level 1 pyramid image (611) using the previous level 1 pyramid image (612), and obtain a level 1 output image (614) by synthesizing the current level 1 pyramid image (611) with reduced noise and a level 2 output image (624). The electronic device may store the level 1 output image (614) in the memory (400).
[0088] In one embodiment, the electronic device may perform a global histogram counting operation (841) to obtain global histogram information (842) from a level 1 output image (614) output from an image signal processing operation (613). The electronic device may obtain global histogram information (842) by counting grayscale values for the level 1 output image (614).
[0089] In one embodiment, the electronic device can read the current level 0 pyramid image (601), the previous level 0 pyramid image (602), and the level 1 output image (614) stored in the memory (400). The electronic device can perform an image signal processing operation (603) on the current level 0 pyramid image (601) using the previous level 0 pyramid image (602) and the level 1 output image (614) read from the memory (400). For example, the electronic device can reduce noise in the current level 0 pyramid image (601) using the previous level 0 pyramid image (602), and synthesize the current level 0 pyramid image (601) with reduced noise with the level 1 output image (614). The electronic device can obtain the level 0 output image (604) through the image signal processing operation (603). The electronic device can further perform global tone-mapping (843) using global histogram information (842) on the level 1 output image (614) read from the memory (400). The electronic device can perform a local histogram counting operation (844) to obtain local histogram information (845) from the result of performing global tone-mapping (843). The electronic device can divide the image obtained as a result of performing global tone-mapping (843) into a plurality of local areas and count the grayscale values for each local area to obtain local histogram information (845).
[0090] In one embodiment, the electronic device can read a level 0 output image (604) stored in the memory (400). The electronic device can perform global tone mapping (846) using previously acquired global histogram information (842) on the level 0 output image (604) read from the memory (400). The electronic device can perform local tone mapping (847) using local histogram information (845) on the result of performing the global tone mapping (846). The electronic device can obtain a tone-mapped image (805) based on the result of performing the local tone mapping (847). The electronic device can store the tone-mapped image (805) in the memory (400).
[0091] FIG. 9 is a block diagram illustrating a process in which an electronic device (e.g., the electronic device (101) of FIG. 1) processes an image signal and performs tone mapping according to one embodiment.
[0092] The image signal processing operations (603, 613, 623) illustrated in FIG. 9 may include at least one operation performed by the electronic device to improve the quality of an image using a pyramid image. For example, the image signal processing operations (603, 613, 623) may include a temporal image signal processing operation that reduces noise using a pyramid image. For example, the image signal processing operations (603, 613, 623) may include an operation that improves the clarity of an image using a pyramid image.
[0093] In one embodiment, the electronic device may perform an image signal processing operation (623) based on a current level 2 pyramid image (621), a previous level 2 pyramid image (622), and a level 3 output image (634) stored in a memory (400) (e.g., a memory (130) of FIG. 1). For example, the electronic device may reduce noise from the current level 2 pyramid image (621) using the previous level 2 pyramid image (622), and obtain a level 2 output image (624) by synthesizing the current level 2 pyramid image (621) with reduced noise and the level 3 output image (634). The electronic device may store the level 2 output image (624) in the memory (400).
[0094] In one embodiment, the electronic device may perform a local histogram counting operation (941) to obtain local histogram information (942) from a level 2 output image (624) obtained through an image signal processing operation (623). The electronic device may divide the level 2 output image (624) into a plurality of local regions and count the grayscale values for each local region to obtain local histogram information (942).
[0095] In one embodiment, the electronic device can read the current level 1 pyramid image (611), the previous level 1 pyramid image (612), and the level 2 output image (624) stored in the memory (400). The electronic device can perform an image signal processing operation (613) on the current level 1 pyramid image (611) using the level 1 pyramid image (612) and the level 2 output image (624) read from the memory (400). For example, the electronic device can reduce noise from the current level 1 pyramid image (611) using the previous level 1 pyramid image (612), and obtain a level 1 output image (614) by synthesizing the current level 1 pyramid image (611) with reduced noise and the level 2 output image (624). The electronic device can obtain the level 1 output image (614) through the image signal processing operation (613). The electronic device can further perform local tone mapping (943) using local histogram information (942) on the level 2 output image (624) read from the memory (400). The electronic device can perform a global histogram counting operation (944) to obtain global histogram information (945) from the result of performing local tone mapping (943). The electronic device can obtain global histogram information (945) by counting grayscale values for all areas of the image obtained by performing local tone mapping (943).
[0096] In one embodiment, the electronic device can read the current level 0 pyramid image (601), the previous level 0 pyramid image (602), and the level 1 output image (614) stored in the memory (400). The electronic device can perform an image signal processing operation (603) on the current level 0 pyramid image (601) using the previous level 0 pyramid image (602) and the level 1 output image (614) read from the memory (400). For example, the electronic device can reduce noise in the current level 0 pyramid image (601) using the previous level 0 pyramid image (602), and synthesize the current level 0 pyramid image (601) with reduced noise with the level 1 output image (614). The electronic device can obtain the level 0 output image (604) through the image signal processing operation (603). The electronic device can obtain the level 0 output image (604) through the image signal processing operation (603).
[0097] In one embodiment, the electronic device can read a level 0 output image (604) stored in the memory (400). The electronic device can perform local tone mapping (946) using previously acquired local histogram information (942) on the level 0 output image (604) read from the memory (400). The electronic device can perform global tone mapping (947) using global histogram information (945) on the result of performing local tone mapping (946). The electronic device can obtain a tone-mapped image (905) based on the result of performing global tone mapping (947). The electronic device can store the tone-mapped image (905) in the memory (400).
[0098] FIG. 10 is a block diagram illustrating a process in which an electronic device (e.g., the electronic device (101) of FIG. 1) processes an image signal and performs tone mapping according to one embodiment.
[0099] The image signal processing operations (603, 613, 623) illustrated in FIG. 10 may include at least one operation performed by an electronic device to improve the quality of an image using a pyramid image. For example, the image signal processing operations (603, 613, 623) may include a temporal image signal processing operation that reduces noise using a pyramid image. For example, the image signal processing operations (603, 613, 623) may include an operation that improves the clarity of an image using a pyramid image.
[0100] In one embodiment, the electronic device may perform an image signal processing operation (623) based on a current level 2 pyramid image (621), a previous level 2 pyramid image (622), and a level 3 output image (634) stored in a memory (400) (e.g., a memory (130) of FIG. 1). For example, the electronic device may reduce noise from the current level 2 pyramid image (621) using the previous level 2 pyramid image (622), and obtain a level 2 output image (624) by synthesizing the current level 2 pyramid image (621) with reduced noise and the level 3 output image (634). The electronic device may store the level 2 output image (624) in the memory (400).
[0101] In one embodiment, the electronic device may perform a global histogram counting operation (1041) to obtain global histogram information (1042) from a level 2 output image (624) obtained through an image signal processing operation (623). The electronic device may obtain global histogram information (1042) by counting grayscale values for the level 2 output image (624).
[0102] In one embodiment, the electronic device can read the current level 1 pyramid image (611), the previous level 1 pyramid image (612), and the level 2 output image (624) stored in the memory (400). The electronic device can perform an image signal processing operation (613) on the current level 1 pyramid image (611) using the level 1 pyramid image (612) and the level 2 output image (624) read from the memory (400). For example, the electronic device can reduce noise from the current level 1 pyramid image (611) using the previous level 1 pyramid image (612), and obtain a level 1 output image (614) by synthesizing the current level 1 pyramid image (611) with reduced noise and the level 2 output image (624). The electronic device can obtain the level 1 output image (614) through the image signal processing operation (613). The electronic device may further perform global tone-mapping (1043) using global histogram information (1042) on the level 2 output image (624) read from the memory (400). The electronic device may perform a local histogram counting operation (1044) to obtain local histogram information (1045) from the result of performing the global tone-mapping (1043). The electronic device may divide the image obtained as a result of performing the global tone-mapping (1043) into a plurality of local regions and count the grayscale values for each local region to obtain local histogram information (1045).
[0103] In one embodiment, the electronic device can read the current level 0 pyramid image (601), the previous level 0 pyramid image (602), and the level 1 output image (614) stored in the memory (400). The electronic device can perform an image signal processing operation (603) on the current level 0 pyramid image (601) using the previous level 0 pyramid image (602) and the level 1 output image (614) read from the memory (400). For example, the electronic device can reduce noise in the current level 0 pyramid image (601) using the previous level 0 pyramid image (602), and synthesize the current level 0 pyramid image (601) with reduced noise with the level 1 output image (614). The electronic device can obtain the level 0 output image (604) through the image signal processing operation (603).
[0104] In one embodiment, the electronic device can read a level 0 output image (604) stored in the memory (400). The electronic device can perform global tone mapping (1046) using previously acquired global histogram information (1042) on the level 0 output image (604) read from the memory (400). The electronic device can perform local tone mapping (1047) using local histogram information (1045) on the result of performing the global tone mapping (1046). The electronic device can obtain a tone-mapped image (1005) based on the result of performing the local tone mapping (1047). The electronic device can store the tone-mapped image (1005) in the memory (400).
[0105] In one embodiment, the electronic device may selectively perform any one of at least one of the processes illustrated in FIGS. 6, 8, 9, and 10. For example, the electronic device may determine which of the processes illustrated in FIG. 6 and FIG. 9 to perform depending on the size of the input image. For example, when the resolution of the input image is 4 k (3840 x 2160) resolution, the electronic device may perform the process illustrated in FIG. 6. For example, when the resolution of the input image is 8 k (7680 x 4320) resolution, the electronic device may perform the process illustrated in FIG. 9. In this case, even if the resolutions of the input images are different, the resolution of the image used to obtain the histogram information (e.g., full-HD (1920 x 1080) resolution) may be the same.
[0106] Additionally, although FIGS. 6, 8, 9, and 10 illustrate a process of obtaining histogram information from a level 1 output image (614) or a level 2 output image (624), the present invention is not limited thereto. For example, an electronic device according to one embodiment may also obtain histogram information from an output image of level 3 or higher.
[0107] FIG. 11 is a flowchart (1100) illustrating a process in which an electronic device (e.g., the electronic device (101) of FIG. 1) performs image processing according to one embodiment.
[0108] In operation 1111, an electronic device according to an embodiment may generate at least one pyramid image from an input image. The at least one pyramid image may include images divided into N levels (N layers). The electronic device may store the generated at least one pyramid image in a memory (e.g., memory (130) of FIG. 1, memory (400) of FIG. 6 or FIG. 9).
[0109] In operation 1113, an electronic device according to an embodiment may read a level N pyramid image stored in a memory. The level N pyramid image read from the memory may include a previous level N pyramid image and a current level N pyramid image. In operation 1115, the electronic device may perform an image signal processing operation on the level N pyramid image to obtain a level N output image. In operation 1117, the electronic device may store the level N output image in a memory. In operation 1119, the electronic device may read the level N output image and the level N-1 pyramid image stored in the memory. The level N-1 pyramid image read from the memory may include a previous level N-1 pyramid image and a current level N-1 pyramid image. The electronic device may perform an image signal processing operation on the level N-1 pyramid image and a synthesizing operation with the level N output image multiple times.
[0110] In operation 1121, an electronic device according to an embodiment may read a level 3 output image and a level 2 pyramid image stored in a memory. The level 2 pyramid image read from the memory may include a previous level 2 pyramid image and a current level 2 pyramid image. In operation 1123, the electronic device may perform an image signal processing operation on the level 2 pyramid image. The electronic device may synthesize the image signal processed (e.g., noise reduced or sharpened) level 2 pyramid image with the level 3 output image to obtain a level 2 output image. In operation 1125, the electronic device may store the level 2 output image in the memory.
[0111] In operation 1127, an electronic device according to an embodiment may read a level 2 output image and a level 1 pyramid image stored in a memory. The level 1 pyramid image read from the memory may include a previous level 1 pyramid image and a current level 1 pyramid image. In operation 1129, the electronic device may perform an operation of reducing an image on the level 1 pyramid image. The electronic device may obtain a level 1 output image by synthesizing the reduced level 1 pyramid image with the level 2 output image. In operation 1131, the electronic device may store the level 1 output image in a memory.
[0112] In operation 1133, an electronic device according to an embodiment may read a level 1 output image and a level 0 pyramid image (input image) stored in a memory. The level 0 pyramid image read from the memory may include a previous level 0 pyramid image and a current level 0 pyramid image. In operation 1135, the electronic device may perform an operation of reducing an image on the level 0 pyramid image. The electronic device may synthesize the reduced level 0 pyramid image with the level 1 output image to obtain a level 0 output image. In operation 1137, the electronic device may store the level 0 output image in the memory.
[0113] In operation 1141, the electronic device according to one embodiment may select an image of a specific size (or resolution) from among the acquired output images. For example, the electronic device may select an image of a specific size (or resolution) from among the level 2 output image acquired through operation 1123 or the level 1 output image acquired through operation 1129. For example, when the size of the input image is 8K (7680x4320), the size of the level 1 output image may be 4K (3840x2160). When the size of the input image is 8K (7680x4320), the size of the level 2 output image may be 2K (1920x1080). In this case, the electronic device may select the level 1 output image having a resolution of 2K (1920 x 1080).
[0114] In operation 1151, the electronic device according to one embodiment may obtain local histogram information from the image selected in operation 1141. For example, if the level 2 output image obtained in operation 1123 corresponds to a specific size (or resolution), the electronic device may obtain local histogram information from the level 2 output image. If the level 2 output image does not correspond to the specific size (or resolution), the electronic device may not perform the operation of obtaining local histogram information from the level 2 output image. For example, if the level 1 output image obtained in operation 1129 corresponds to a specific size (or resolution), the electronic device may obtain local histogram information from the level 1 output image. If the level 1 output image does not correspond to the specific size (or resolution), the electronic device may not perform the operation of obtaining local histogram information from the level 1 output image.
[0115] In operation 1143, the electronic device according to one embodiment may select an image of a specific size (or resolution) from among the output images read from the memory. For example, the electronic device may select an image of a specific size (or resolution) from among the level 2 output images read in operation 1127 or the level 1 output images read in operation 1133.
[0116] In operation 1153, the electronic device according to one embodiment may perform local tone mapping using the local histogram information acquired in operation 1151 for the image selected in operation 1143. In operation 1155, the electronic device may acquire global histogram information based on the image on which local tone mapping has been performed.
[0117] In operation 1139, the electronic device according to one embodiment may read the level 0 output image stored in operation 1137 from the memory. In operation 1161, the electronic device may perform local tone mapping on the level 0 output image read in operation 1139 using the local histogram information acquired in operation 1151. In operation 1163, the electronic device may perform global tone mapping on the image acquired by performing the local tone mapping in operation 1161 using the global histogram information acquired in operation 1155.
[0118] In operation 1171, the electronic device according to one embodiment may perform post-processing on the acquired image by performing global tone mapping. For example, the electronic device may perform image processing operations (e.g., color correction, filter application, etc.) to improve the quality of the image or acquire an image according to a purpose. In operation 1173, the electronic device according to one embodiment may store the post-processed image in memory.
[0119] FIG. 12 is a flowchart illustrating a process in which an electronic device (e.g., the electronic device (101) of FIG. 1) performs image processing according to one embodiment.
[0120] In operation 1111, an electronic device according to an embodiment may generate at least one pyramid image from an input image. The at least one pyramid image may include images divided into N levels (N layers). The electronic device may store the generated at least one pyramid image in a memory (e.g., memory (130) of FIG. 1, memory (400) of FIG. 8 or FIG. 10).
[0121] In operation 1113, an electronic device according to an embodiment may read a level N pyramid image stored in a memory. The level N pyramid image read from the memory may include a previous level N pyramid image and a current level N pyramid image. In operation 1115, the electronic device may perform an image signal processing operation on the level N pyramid image to obtain a level N output image. In operation 1117, the electronic device may store the level N output image in a memory. In operation 1119, the electronic device may read the level N output image and the level N-1 pyramid image stored in the memory. The level N-1 pyramid image read from the memory may include a previous level N-1 pyramid image and a current level N-1 pyramid image. The electronic device may perform an image signal processing operation on the level N-1 pyramid image and a synthesizing operation with the level N output image multiple times.
[0122] In operation 1121, an electronic device according to an embodiment may read a level 3 output image and a level 2 pyramid image stored in a memory. The level 2 pyramid image read from the memory may include a previous level 2 pyramid image and a current level 2 pyramid image. In operation 1123, the electronic device may perform an image signal processing operation on the level 2 pyramid image. The electronic device may synthesize the image signal-processed level 2 pyramid image with the level 3 output image to obtain a level 2 output image. In operation 1125, the electronic device may store the level 2 output image in the memory.
[0123] In operation 1127, an electronic device according to an embodiment may read a level 2 output image and a level 1 pyramid image stored in a memory. The level 1 pyramid image read from the memory may include a previous level 1 pyramid image and a current level 1 pyramid image. In operation 1129, the electronic device may perform an operation of reducing an image on the level 1 pyramid image. The electronic device may obtain a level 1 output image by synthesizing the reduced level 1 pyramid image with the level 2 output image. In operation 1131, the electronic device may store the level 1 output image in a memory.
[0124] In operation 1133, an electronic device according to an embodiment may read a level 1 output image and a level 0 pyramid image (input image) stored in a memory. The level 0 pyramid image read from the memory may include a previous level 0 pyramid image and a current level 0 pyramid image. In operation 1135, the electronic device may perform an operation of reducing an image on the level 0 pyramid image. The electronic device may synthesize the reduced level 0 pyramid image with the level 1 output image to obtain a level 0 output image. In operation 1137, the electronic device may store the level 0 output image in the memory.
[0125] In operation 1141, the electronic device according to one embodiment may select an image of a specific size (or resolution) from among the acquired output images. For example, the electronic device may select an image of a specific size (or resolution) from among the level 2 output image acquired through operation 1123 or the level 1 output image acquired through operation 1129. For example, when the size of the input image is 8K (7680x4320), the size of the level 1 output image may be 4K (3840x2160). When the size of the input image is 8K (7680x4320), the size of the level 2 output image may be 2K (1920x1080). In this case, the electronic device may select the level 1 output image having a resolution of 2K (1920 x 1080).
[0126] In operation 1251, the electronic device according to one embodiment may obtain global histogram information from the image selected in operation 1141. For example, if the level 2 output image obtained in operation 1123 corresponds to a specific size (or resolution), the electronic device may obtain global histogram information from the level 2 output image. If the level 2 output image does not correspond to the specific size (or resolution), the electronic device may not perform the operation of obtaining global histogram information from the level 2 output image. For example, if the level 1 output image obtained in operation 1129 corresponds to a specific size (or resolution), the electronic device may obtain global histogram information from the level 1 output image. If the level 1 output image does not correspond to the specific size (or resolution), the electronic device may not perform the operation of obtaining global histogram information from the level 1 output image.
[0127] In operation 1143, the electronic device according to one embodiment may select an image of a specific size (or resolution) from among the output images read from the memory. For example, the electronic device may select an image of a specific size (or resolution) from among the level 2 output images read in operation 1127 or the level 1 output images read in operation 1133.
[0128] In operation 1253, the electronic device according to one embodiment may perform global tone mapping using the global histogram information acquired in operation 1251 for the image selected in operation 1143. In operation 1255, the electronic device may acquire local histogram information based on the image on which global tone mapping has been performed.
[0129] In operation 1139, the electronic device according to one embodiment may read the level 0 output image stored in operation 1137 from the memory. In operation 1261, the electronic device may perform global tone mapping on the level 0 output image read in operation 1139 using the global histogram information acquired in operation 1251. In operation 1263, the electronic device may perform local tone mapping on the image acquired by performing the global tone mapping in operation 1261 using the local histogram information acquired in operation 1255.
[0130] In operation 1171, the electronic device according to one embodiment may perform post-processing on the acquired image by performing global tone mapping. For example, the electronic device may perform image processing operations (e.g., color correction, filter application, etc.) to improve the quality of the image or acquire an image according to a purpose. In operation 1173, the electronic device according to one embodiment may store the post-processed image in memory.
[0131] In one embodiment, an electronic device (e.g., the electronic device (101) of FIG. 1) may include at least one processor (e.g., the processor (120) of FIG. 1, the image signal processor (260) of FIG. 2) and a memory (e.g., the memory (130) of FIG. 1, the memory (250) of FIG. 2)) that stores instructions. The instructions may be executed by the at least one processor (e.g., the processor (120) of FIG. 1, the image signal processor (260) of FIG. 2) to cause the electronic device (e.g., the electronic device (101) of FIG. 1) to generate at least one pyramid image (e.g., the pyramid image (310) of FIG. 3) obtained by changing the resolution of an input image. The above commands may be executed by the at least one processor (e.g., the processor (120) of FIG. 1, the image signal processor (260) of FIG. 2) to cause the electronic device (e.g., the electronic device (101) of FIG. 1) to obtain local histogram information and global histogram information based on a first pyramid image (e.g., the current level 1 pyramid image (611) of FIG. 6, the current level 1 pyramid image (611) of FIG. 8, the current level 2 pyramid image (621) of FIG. 9, the current level 2 pyramid image (621) of FIG. 10)) among the at least one pyramid image. The above instructions may be executed by the at least one processor (e.g., the processor (120) of FIG. 1, the image signal processor (260) of FIG. 2), so that the electronic device (e.g., the electronic device (101) of FIG. 1) may perform an image signal processing operation using the at least one pyramid image (e.g., the pyramid image (310) of FIG. 3), thereby obtaining a first image (e.g., the level 0 output image (604) of FIG. 6, the level 0 output image (604) of FIG. 8, the level 0 output image (604) of FIG. 9, the level 0 output image (604) of FIG. 10).The above instructions may be executed by the at least one processor (e.g., the processor (120) of FIG. 1, the image signal processor (260) of FIG. 2) to cause the electronic device (e.g., the electronic device (101) of FIG. 1) to perform local tone mapping and global tone mapping on the first image (e.g., the level 0 output image (604) of FIG. 6, the level 0 output image (604) of FIG. 8, the level 0 output image (604) of FIG. 9, the level 0 output image (604) of FIG. 10) based on the local histogram information and the global histogram information to obtain a second image (e.g., the tone-mapped image (605) of FIG. 6, the tone-mapped image (605) of FIG. 8, the tone-mapped image (605) of FIG. 9, the tone-mapped image (605) of FIG. 10).
[0132] In one embodiment, the at least one pyramid image (e.g., pyramid image (310) of FIG. 3) may include images having different resolutions by reducing the resolution of the input image.
[0133] In one embodiment, a first resolution of the first pyramid image (e.g., the current level 1 pyramid image (611) of FIG. 6, the current level 1 pyramid image (611) of FIG. 8, the current level 2 pyramid image (621) of FIG. 9, the current level 2 pyramid image (621) of FIG. 10) may be lower than a resolution of the input image. The at least one pyramid image may further include a second pyramid image (e.g., the level 2 output image (624) of FIG. 6, the level 2 output image (624) of FIG. 8, the level 3 output image (634) of FIG. 9, the level 3 output image (634) of FIG. 10) having a second resolution lower than the first resolution. The above instructions are executed by the at least one processor (e.g., the processor (120) of FIG. 1, the image signal processor (260) of FIG. 2), so that the electronic device (e.g., the electronic device (101) of FIG. 1) reduces noise for the first pyramid image (e.g., the current level 1 pyramid image (611) of FIG. 6, the current level 1 pyramid image (611) of FIG. 8, the current level 2 pyramid image (621) of FIG. 9, the current level 2 pyramid image (621) of FIG. 10) using the second pyramid image (e.g., the level 1 output image (614) of FIG. 6, the level 1 output image (614) of FIG. 8, the level 2 output image (624) of FIG. 9, the level 3 output image (634) of FIG. 10)) to produce a third image (e.g., the level 1 output image (614) of FIG. 6, the level 1 output image (614) of FIG. 8, the level 2 output image (624) of FIG. 9, the level 3 output image (634) of FIG. It is possible to obtain a level 2 output image (624) of 10.The above commands may be executed by at least one processor (e.g., processor (120) of FIG. 1, image signal processor (260) of FIG. 2) to cause the electronic device (e.g., electronic device (101) of FIG. 1) to perform a compensation operation to reduce noise using the third image (e.g., level 1 output image (614) of FIG. 6, level 1 output image (614) of FIG. 8, level 2 output image (624) of FIG. 9, level 2 output image (624) of FIG. 10)) to obtain the first image (e.g., level 0 output image (604) of FIG. 6, level 0 output image (604) of FIG. 8, level 0 output image (604) of FIG. 9, level 0 output image (604) of FIG. 10).
[0134] In one embodiment, the instructions may be executed by the at least one processor (e.g., the processor (120) of FIG. 1, the image signal processor (260) of FIG. 2) to cause the electronic device (e.g., the electronic device (101) of FIG. 1) to obtain the local histogram information from the acquired third image (e.g., the level 1 output image (614) of FIG. 6, the level 1 output image (614) of FIG. 8, the level 2 output image (624) of FIG. 9, the level 2 output image (624) of FIG. 10). The above commands may be executed by at least one processor (e.g., processor (120) of FIG. 1, image signal processor (260) of FIG. 2), so that the electronic device (e.g., electronic device (101) of FIG. 1) may store the acquired third image (e.g., level 1 output image (614) of FIG. 6, level 1 output image (614) of FIG. 8, level 2 output image (624) of FIG. 9, level 2 output image (624) of FIG. 10)) in the memory (e.g., memory (130) of FIG. 1, memory (250) of FIG. 2). The above commands may be executed by at least one processor (e.g., processor (120) of FIG. 1, image signal processor (260) of FIG. 2), so that the electronic device (e.g., electronic device (101) of FIG. 1) reads a third image (e.g., level 1 output image (614) of FIG. 6, level 1 output image (614) of FIG. 8, level 2 output image (624) of FIG. 9, level 2 output image (624) of FIG. 10)) stored in the memory (e.g., memory (130) of FIG. 1, memory (250) of FIG. 2) and performs local tone mapping based on the local histogram information to obtain a fourth image. The above commands may be executed by at least one processor (e.g., processor (120) of FIG. 1, image signal processor (260) of FIG. 2) to cause the electronic device (e.g., electronic device (101) of FIG. 1) to obtain the global histogram information from the fourth image.
[0135] In a first embodiment, the instructions may be executed by the at least one processor (e.g., the processor (120) of FIG. 1, the image signal processor (260) of FIG. 2) to cause the electronic device (e.g., the electronic device (101) of FIG. 1) to identify the resolution of the acquired third image (e.g., the level 1 output image (614) of FIG. 6, the level 1 output image (614) of FIG. 8, the level 2 output image (624) of FIG. 9, the level 2 output image (624) of FIG. 10). The above commands may be executed by the at least one processor (e.g., the processor (120) of FIG. 1, the image signal processor (260) of FIG. 2) to cause the electronic device (e.g., the electronic device (101) of FIG. 1) to determine whether to obtain the local histogram information from the third image (e.g., the level 1 output image (614) of FIG. 6, the level 1 output image (614) of FIG. 8, the level 2 output image (624) of FIG. 9, the level 2 output image (624) of FIG. 10)) based on the resolution of the third image.
[0136] In one embodiment, the instructions may be executed by the at least one processor (e.g., the processor (120) of FIG. 1, the image signal processor (260) of FIG. 2) to cause the electronic device (e.g., the electronic device (101) of FIG. 1) to obtain the global histogram information from the acquired third image (e.g., the level 1 output image (614) of FIG. 6, the level 1 output image (614) of FIG. 8, the level 2 output image (624) of FIG. 9, the level 2 output image (624) of FIG. 10). The above commands may be executed by at least one processor (e.g., processor (120) of FIG. 1, image signal processor (260) of FIG. 2) to cause the electronic device (e.g., electronic device (101) of FIG. 1) to store the acquired third image (e.g., level 1 output image (614) of FIG. 6, level 1 output image (614) of FIG. 8, level 2 output image (624) of FIG. 9, level 2 output image (624) of FIG. 10)) in the memory (e.g., memory (130) of FIG. 1, memory (250) of FIG. 2). The above commands may be executed by at least one processor (e.g., processor (120) of FIG. 1, image signal processor (260) of FIG. 2) to cause the electronic device (e.g., electronic device (101) of FIG. 1) to read a third image (e.g., level 1 output image (614) of FIG. 6, level 1 output image (614) of FIG. 8, level 2 output image (624) of FIG. 9, level 2 output image (624) of FIG. 10)) stored in the memory (e.g., memory (130) of FIG. 1, memory (250) of FIG. 2) and perform global tone mapping based on the global histogram information to obtain a fourth image. The above commands may be executed by at least one processor (e.g., processor (120) of FIG. 1, image signal processor (260) of FIG. 2) to cause the electronic device (e.g., electronic device (101) of FIG. 1) to obtain the local histogram information from the fourth image.
[0137] In one embodiment, the instructions may be executed by the at least one processor (e.g., the processor (120) of FIG. 1, the image signal processor (260) of FIG. 2) to cause the electronic device (e.g., the electronic device (101) of FIG. 1) to identify the resolution of the acquired third image (e.g., the level 1 output image (614) of FIG. 6, the level 1 output image (614) of FIG. 8, the level 2 output image (624) of FIG. 9, the level 2 output image (624) of FIG. 10). The above commands may be executed by the at least one processor (e.g., the processor (120) of FIG. 1, the image signal processor (260) of FIG. 2) to cause the electronic device (e.g., the electronic device (101) of FIG. 1) to determine whether to obtain the global histogram information from the third image (e.g., the level 1 output image (614) of FIG. 6, the level 1 output image (614) of FIG. 8, the level 2 output image (624) of FIG. 9, the level 2 output image (624) of FIG. 10)) based on the resolution of the third image.
[0138] In one embodiment, the electronic device (e.g., the electronic device (101) of FIG. 1) may further include a camera (e.g., the camera module (1800) of FIG. 1, the camera module (180) of FIG. 2). The input image may be acquired through the camera (e.g., the camera module (1800) of FIG. 1, the camera module (180) of FIG. 2).
[0139] A method of operating an electronic device (e.g., the electronic device (101) of FIG. 1) according to one embodiment may include an operation of generating at least one pyramid image obtained by changing a resolution from an input image. The method may include an operation of obtaining a first image (e.g., a level 0 output image (604) of FIG. 6, a level 0 output image (604) of FIG. 8, a level 0 output image (604) of FIG. 9, a level 0 output image (604) of FIG. 10) by performing an image signal processing operation using the at least one pyramid image. The method may include an operation of obtaining local histogram information and global histogram information based on a first pyramid image (e.g., a current level 1 pyramid image (611) of FIG. 6, a current level 1 pyramid image (611) of FIG. 8, a current level 2 pyramid image (621) of FIG. 9, a current level 2 pyramid image (621) of FIG. 10)) among the at least one pyramid image. The method may include an operation of performing local tone mapping and global tone mapping on the first image (e.g., the level 0 output image (604) of FIG. 6, the level 0 output image (604) of FIG. 8, the level 0 output image (604) of FIG. 9, the level 0 output image (604) of FIG. 10) based on the local histogram information and the global histogram information to obtain a second image (e.g., the tone-mapped image (605) of FIG. 6, the tone-mapped image (605) of FIG. 8, the tone-mapped image (605) of FIG. 9, the tone-mapped image (605) of FIG. 10).
[0140] In one embodiment, the act of generating at least one pyramid image may include reducing the resolution of the input image to generate images having different resolutions.
[0141] In one embodiment, a first resolution of the first pyramid image (e.g., the current level 1 pyramid image (611) of FIG. 6, the current level 1 pyramid image (611) of FIG. 8, the current level 2 pyramid image (621) of FIG. 9, the current level 2 pyramid image (621) of FIG. 10) may be lower than a resolution of the input image. The at least one pyramid image may further include a second pyramid image (e.g., the level 2 output image (624) of FIG. 6, the level 2 output image (624) of FIG. 8, the level 3 output image (634) of FIG. 9, the level 3 output image (634) of FIG. 10)) having a lower resolution than the first resolution. The operation of obtaining the first image (e.g., the level 0 output image (604) of FIG. 6, the level 0 output image (604) of FIG. 8, the level 0 output image (604) of FIG. 9, the level 0 output image (604) of FIG. 10) reduces noise for the first pyramid image (e.g., the current level 1 pyramid image (611) of FIG. 6, the current level 1 pyramid image (611) of FIG. 8, the current level 2 pyramid image (621) of FIG. 9, the current level 2 pyramid image (621) of FIG. 10) by using the second pyramid image (e.g., the level 2 output image (624) of FIG. 6, the level 2 output image (624) of FIG. 8, the level 3 output image (634) of FIG. 9, the level 3 output image (634) of FIG. 10)) to obtain a third image (e.g., the level 1 output image (614) of FIG. 6, the level 1 output image (614) of FIG. 8, the level 2 output image (614) of FIG. 9) It may include an operation of obtaining an image (624), a level 2 output image (624) of FIG. 10.The operation of obtaining the first image (e.g., the level 0 output image (604) of FIG. 6, the level 0 output image (604) of FIG. 8, the level 0 output image (604) of FIG. 9, the level 0 output image (604) of FIG. 10) may further include an operation of performing a compensation operation to reduce noise using the third image (e.g., the level 1 output image (614) of FIG. 6, the level 1 output image (614) of FIG. 8, the level 2 output image (624) of FIG. 9, the level 2 output image (624) of FIG. 10)) to obtain the first image (e.g., the level 0 output image (604) of FIG. 6, the level 0 output image (604) of FIG. 8, the level 0 output image (604) of FIG. 9, the level 0 output image (604) of FIG. 10).
[0142] In one embodiment, the operation of obtaining the local histogram information and the global histogram information may include an operation of obtaining the local histogram information from the obtained third image (e.g., the level 1 output image (614) of FIG. 6, the level 1 output image (614) of FIG. 8, the level 2 output image (624) of FIG. 9, and the level 2 output image (624) of FIG. 10). The operation of obtaining the local histogram information and the global histogram information may further include an operation of storing the obtained third image (e.g., the level 1 output image (614) of FIG. 6, the level 1 output image (614) of FIG. 8, the level 2 output image (624) of FIG. 9, and the level 2 output image (624) of FIG. 10) in a memory (e.g., the memory (130) of FIG. 1, the memory (250) of FIG. 2) of the electronic device (e.g., the electronic device (101) of FIG. 1). The operation of obtaining the local histogram information and the global histogram information may further include an operation of reading a third image (e.g., a level 1 output image (614) of FIG. 6, a level 1 output image (614) of FIG. 8, a level 2 output image (624) of FIG. 9, a level 2 output image (624) of FIG. 10) stored in the memory (e.g., a memory (130) of FIG. 1, a memory (250) of FIG. 2) and performing local tone mapping based on the local histogram information to obtain a fourth image. The operation of obtaining the local histogram information and the global histogram information may include an operation of obtaining the global histogram information from the fourth image.
[0143] In one embodiment, the operation of obtaining the local histogram information may include an operation of identifying a resolution of the obtained third image (e.g., the level 1 output image (614) of FIG. 6, the level 1 output image (614) of FIG. 8, the level 2 output image (624) of FIG. 9, the level 2 output image (624) of FIG. 10). The operation of obtaining the local histogram information may further include an operation of determining whether to obtain the local histogram information from the third image (e.g., the level 1 output image (614) of FIG. 6, the level 1 output image (614) of FIG. 8, the level 2 output image (624) of FIG. 9, the level 2 output image (624) of FIG. 10)) based on the resolution of the third image.
[0144] In one embodiment, the operation of obtaining the local histogram information and the global histogram information may include an operation of obtaining the global histogram information from the obtained third image (e.g., the level 1 output image (614) of FIG. 6, the level 1 output image (614) of FIG. 8, the level 2 output image (624) of FIG. 9, and the level 2 output image (624) of FIG. 10). The operation of obtaining the local histogram information and the global histogram information may further include an operation of storing the obtained third image (e.g., the level 1 output image (614) of FIG. 6, the level 1 output image (614) of FIG. 8, the level 2 output image (624) of FIG. 9, and the level 2 output image (624) of FIG. 10) in a memory (e.g., the memory (130) of FIG. 1, the memory (250) of FIG. 2) of the electronic device (e.g., the electronic device (101) of FIG. 1). The operation of obtaining the local histogram information and the global histogram information may further include an operation of reading a third image (e.g., a level 1 output image (614) of FIG. 6, a level 1 output image (614) of FIG. 8, a level 2 output image (624) of FIG. 9, a level 2 output image (624) of FIG. 10) stored in the memory (e.g., a memory (130) of FIG. 1, a memory (250) of FIG. 2) and performing global tone mapping based on the global histogram information to obtain a fourth image. The operation of obtaining the local histogram information and the global histogram information may further include an operation of obtaining the local histogram information from the fourth image.
[0145] In one embodiment, the operation of obtaining the global histogram information may further include an operation of identifying a resolution of the obtained third image (e.g., the level 1 output image (614) of FIG. 6, the level 1 output image (614) of FIG. 8, the level 2 output image (624) of FIG. 9, the level 2 output image (624) of FIG. 10). The operation of obtaining the global histogram information may further include an operation of determining whether to obtain the global histogram information from the third image (e.g., the level 1 output image (614) of FIG. 6, the level 1 output image (614) of FIG. 8, the level 2 output image (624) of FIG. 9, the level 2 output image (624) of FIG. 10)) based on the resolution of the third image.
[0146] The method may further include an operation of acquiring the input image through a camera (e.g., a camera module (1800) of FIG. 1, a camera module (180) of FIG. 2) of the electronic device (e.g., an electronic device (101) of FIG. 1).
[0147] A computer-readable, non-transitory recording medium according to one embodiment may be a computer program recorded thereon, which causes an electronic device (e.g., the electronic device (101) of FIG. 1) to perform an operation of generating at least one pyramid image obtained by changing the resolution from an input image when executed. The recording medium may be a computer program recorded thereon, which causes the electronic device (e.g., the electronic device (101) of FIG. 1) to further perform an operation of obtaining a first image (e.g., the level 0 output image (604) of FIG. 6, the level 0 output image (604) of FIG. 8, the level 0 output image (604) of FIG. 9, the level 0 output image (604) of FIG. 10) by performing an image signal processing operation using the at least one pyramid image when executed. The above recording medium may be a computer program that records an operation for causing an electronic device (e.g., an electronic device (101) of FIG. 1) to further perform an operation of acquiring local histogram information and global histogram information based on a first pyramid image (e.g., a current level 1 pyramid image (611) of FIG. 6, a current level 1 pyramid image (611) of FIG. 8, a current level 2 pyramid image (621) of FIG. 9, a current level 2 pyramid image (621) of FIG. 10) among the at least one pyramid image when the electronic device is executed.The above recording medium may further record a computer program that causes an electronic device (e.g., an electronic device (101) of FIG. 1) to perform local tone mapping and global tone mapping on the first image (e.g., a level 0 output image (604) of FIG. 6, a level 0 output image (604) of FIG. 8, a level 0 output image (604) of FIG. 9, a level 0 output image (604) of FIG. 10) based on the local histogram information and the global histogram information when executed, thereby obtaining a second image (e.g., a tone-mapped image (605) of FIG. 6, a tone-mapped image (605) of FIG. 8, a tone-mapped image (605) of FIG. 9, a tone-mapped image (605) of FIG. 10).
[0148] The recording medium may be such that the operation of generating at least one pyramid image includes an operation of reducing the resolution of the input image to generate images having different resolutions.
[0149] In one embodiment, a first resolution of the first pyramid image (e.g., the current level 1 pyramid image (611) of FIG. 6, the current level 1 pyramid image (611) of FIG. 8, the current level 2 pyramid image (621) of FIG. 9, the current level 2 pyramid image (621) of FIG. 10) may be lower than a resolution of the input image. The at least one pyramid image may further include a second pyramid image (e.g., the level 2 output image (624) of FIG. 6, the level 2 output image (624) of FIG. 8, the level 3 output image (634) of FIG. 9, the level 3 output image (634) of FIG. 10)) having a lower resolution than the first resolution. The operation of obtaining the first image (e.g., the level 0 output image (604) of FIG. 6, the level 0 output image (604) of FIG. 8, the level 0 output image (604) of FIG. 9, the level 0 output image (604) of FIG. 10) reduces noise for the first pyramid image (e.g., the current level 1 pyramid image (611) of FIG. 6, the current level 1 pyramid image (611) of FIG. 8, the current level 2 pyramid image (621) of FIG. 9, the current level 2 pyramid image (621) of FIG. 10) by using the second pyramid image (e.g., the level 2 output image (624) of FIG. 6, the level 2 output image (624) of FIG. 8, the level 3 output image (634) of FIG. 9, the level 3 output image (634) of FIG. 10)) to obtain a third image (e.g., the level 1 output image (614) of FIG. 6, the level 1 output image (614) of FIG. 8, the level 2 output image (614) of FIG. 9) It may include an operation of obtaining an image (624), a level 2 output image (624) of FIG. 10.The operation of obtaining the first image (e.g., the level 0 output image (604) of FIG. 6, the level 0 output image (604) of FIG. 8, the level 0 output image (604) of FIG. 9, the level 0 output image (604) of FIG. 10) may further include an operation of performing a compensation operation to reduce noise using the third image (e.g., the level 1 output image (614) of FIG. 6, the level 1 output image (614) of FIG. 8, the level 2 output image (624) of FIG. 9, the level 2 output image (624) of FIG. 10)) to obtain the first image (e.g., the level 0 output image (604) of FIG. 6, the level 0 output image (604) of FIG. 8, the level 0 output image (604) of FIG. 9, the level 0 output image (604) of FIG. 10).
[0150] In one embodiment, the operation of obtaining the local histogram information and the global histogram information may include an operation of obtaining the local histogram information from the obtained third image (e.g., the level 1 output image (614) of FIG. 6, the level 1 output image (614) of FIG. 8, the level 2 output image (624) of FIG. 9, and the level 2 output image (624) of FIG. 10). The operation of obtaining the local histogram information and the global histogram information may further include an operation of storing the obtained third image (e.g., the level 1 output image (614) of FIG. 6, the level 1 output image (614) of FIG. 8, the level 2 output image (624) of FIG. 9, and the level 2 output image (624) of FIG. 10) in a memory (e.g., the memory (130) of FIG. 1, the memory (250) of FIG. 2) of the electronic device (e.g., the electronic device (101) of FIG. 1). The operation of obtaining the local histogram information and the global histogram information may further include an operation of reading a third image (e.g., a level 1 output image (614) of FIG. 6, a level 1 output image (614) of FIG. 8, a level 2 output image (624) of FIG. 9, a level 2 output image (624) of FIG. 10) stored in the memory (e.g., a memory (130) of FIG. 1, a memory (250) of FIG. 2) and performing local tone mapping based on the local histogram information to obtain a fourth image. The operation of obtaining the local histogram information and the global histogram information may further include an operation of obtaining the global histogram information from the fourth image.
[0151] An electronic device and an operating method thereof according to various embodiments can reduce power consumption for high-resolution image processing at high speed by reducing the number of times the electronic device accesses memory.
[0152] Electronic devices and methods of operating the same according to various embodiments can reduce the bandwidth of memory required to process images.
[0153] The effects that can be obtained from the present disclosure are not limited to the effects mentioned above, and other effects that are not mentioned can be clearly understood by a person having ordinary skill in the art to which the present disclosure pertains from the description of the present disclosure.
[0154] The methods according to the embodiments described in the claims or specification of the present disclosure may be implemented in the form of hardware, software, or a combination of hardware and software.
[0155] When implemented in software, a computer-readable storage medium storing one or more programs (software modules) may be provided. The one or more programs stored in the computer-readable storage medium are configured for execution by one or more processors within an electronic device. The one or more programs include instructions that cause the electronic device to execute methods according to embodiments described in the claims or specification of the present disclosure.
[0156] In the present disclosure, a function or operation performed by an electronic device may be performed by one or more processors executing one or more instructions stored in a memory. The function or operation of the electronic device mentioned in the present disclosure may be performed by one processor executing one or more instructions, or may be performed by a combination of multiple processors executing one or more instructions. The processor mentioned in the present disclosure may be understood to include a circuit for performing an operation or controlling other components of the electronic device. For example, the one or more processors may include at least one of a central processing unit (CPU), a microprocessor unit (MPU), an application processor (AP), a communication processor (CP), a neural processing unit (NPU), a system on chip (SoC), an application-specific integrated circuit (ASIC), or an integrated circuit (IC) configured to execute one or more instructions. The one or more processors may be configured to perform the operations of the electronic device described above.
[0157] In the present disclosure, a program (software module, software) may be stored in a non-volatile memory including a random access memory (RAM), a flash memory, a read only memory (ROM), an electrically erasable programmable read only memory (EEPROM), a magnetic disc storage device, a compact disc ROM (CD-ROM), digital versatile discs (DVDs) or other forms of optical storage devices, a magnetic cassette. Or, it may be stored in a memory formed by a combination of some or all of these. The memory may be formed by a single storage medium, or may be formed by a combination of a plurality of storage media. The one or more commands may be stored in a single storage medium, or may be distributed and stored in a plurality of storage media.
[0158] Additionally, the program may be stored on an attachable storage device that is accessible via a communication network such as the Internet, an intranet, a local area network (LAN), a wide LAN (WLAN), or a storage area network (SAN), or a combination thereof. Such a storage device may be connected to a device performing an embodiment of the present disclosure via an external port. Additionally, a separate storage device on the communication network may be connected to a device performing an embodiment of the present disclosure.
[0159] In the specific embodiments of the present disclosure described above, components included in the disclosure are expressed in the singular or plural form, depending on the specific embodiment presented. However, the singular or plural expressions are selected to suit the presented situation for convenience of explanation, and the present disclosure is not limited to singular or plural components. Components expressed in the plural form may be composed of singular elements, or components expressed in the singular form may be composed of plural elements.
[0160] Additionally, in the present disclosure, terms such as “part”, “module”, etc. may refer to a hardware component such as a processor or circuit, and / or a software component executed by a hardware component such as a processor.
[0161] A "component" or "module" may be implemented by a program stored in an addressable storage medium and executed by a processor. For example, a "component" or "module" may be implemented by components such as software components, object-oriented software components, class components, and task components, as well as processes, functions, attributes, procedures, subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables.
[0162] The specific implementations described in this disclosure are merely exemplary and do not limit the scope of the present disclosure in any way. For the sake of brevity, descriptions of conventional electronic components, control systems, software, and other functional aspects of the systems may be omitted.
[0163] Additionally, in the present disclosure, “comprising at least one of a, b, or c” may mean “comprising only a, including only b, including only c, or including a combination of two or more (including a and b, including b and c, including a and c, or including all of a, b, and c).
[0164] While the detailed description of this disclosure has described specific embodiments, it should be understood that various modifications are possible without departing from the scope of this disclosure. Therefore, the scope of this disclosure should not be limited to the described embodiments, but should be defined not only by the scope of the claims described below, but also by equivalents thereof.
[0165] In this disclosure, the term "if" will be understood to mean "when, upon," "in response to determining," or "in response to detecting," as the context requires. Similarly, "if it is determined to do," or "if [a stated condition or event] is detected," will optionally be understood to mean "upon determining," or "in response to determining," "upon detecting [a stated condition or event]," or "in response to detecting [a stated condition or event]."
[0166] The devices described above may be implemented as hardware components, software components, and / or a combination of hardware components and software components. For example, the devices and components described in the embodiments may be implemented using one or more general-purpose computers or special-purpose computers, such as a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA), a programmable logic unit (PLU), a microprocessor, or any other device capable of executing instructions and responding to them. A processing device (or processing circuit) may execute an operating system (OS) and one or more software applications running on the operating system. In addition, the processing device may access, store, manipulate, process, and generate data in response to the execution of the software. For ease of understanding, the processing device is sometimes described as being used alone; however, one of ordinary skill in the art will recognize that the processing device may include multiple processing elements and / or multiple types of processing elements. For example, a processing unit may include multiple processors, or a processor and a controller. Other processing configurations, such as parallel processors, are also possible.
[0167] Software may include a computer program, code, instructions, or a combination of one or more of these, which may configure a processing device to perform a desired operation or may independently or collectively command the processing device. The software and / or data may be embodied in any type of machine, component, physical device, computer storage medium, or device for interpretation by the processing device or for providing instructions or data to the processing device. The software may also be distributed over networked computer systems and stored or executed in a distributed manner. The software and data may be stored on one or more computer-readable recording media.
[0168] The method according to the embodiment may be implemented in the form of program commands that can be executed through various computer means and recorded on a computer-readable medium. In this case, the medium may be one that continuously stores a computer-executable program or one that temporarily stores it for execution or download. In addition, the medium may be various recording or storage means in the form of a single or multiple hardware combinations, and is not limited to a medium directly connected to a computer system, but may also be distributed over a network. Examples of the medium may include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical recording media such as CD-ROMs and DVDs, magneto-optical media such as floptical disks, and those configured to store program commands, including ROM, RAM, and flash memory. In addition, examples of other media may include recording or storage media managed by app stores that distribute applications, sites that supply or distribute various software, servers, etc.
[0169] Although the embodiments described above have been described by way of limited examples and drawings, those skilled in the art will appreciate that various modifications and variations can be made based on the above teachings. For example, appropriate results can still be achieved even if the described techniques are performed in a different order than described, and / or components of the described systems, structures, devices, circuits, etc. are combined or combined in a different manner than described, or are replaced or substituted with other components or equivalents.
Claims
1. In electronic devices, at least one processor; and Contains memory for storing commands, The above instructions are collectively or individually executed by the at least one processor, so that the electronic device: Generate at least one pyramid image obtained by changing the resolution from an input image, Obtaining local histogram information and global histogram information based on a first pyramid image among at least one pyramid image, Obtaining a first image by performing an image signal processing operation using at least one pyramid image, An electronic device that performs local tone mapping and global tone mapping on the first image based on the local histogram information and the global histogram information to obtain a second image.
2. In claim 1, An electronic device wherein at least one of the pyramid images comprises images having different resolutions by reducing the resolution of the input image.
3. In claim 1, The first resolution of the first pyramid image is lower than the resolution of the input image, wherein said at least one pyramid image further comprises a second pyramid image having a second resolution lower than said first resolution, The above instructions are executed by the at least one processor, so that the electronic device: A third image is obtained by reducing noise in the first pyramid image using the second pyramid image, An electronic device that acquires the first image by performing a compensation operation to reduce noise using the third image.
4. In claim 3, The above instructions are executed by the at least one processor, so that the electronic device: Obtaining the regional histogram information from the third image obtained above, The third image obtained above is stored in the memory, Reading the third image stored in the above memory and performing local tone mapping based on the local histogram information to obtain a fourth image, An electronic device for obtaining the global histogram information from the fourth image.
5. In claim 4, The above instructions are executed by the at least one processor, so that the electronic device: Identify the resolution of the third image acquired above, An electronic device that determines whether to obtain the local histogram information from the third image based on the resolution of the third image.
6. In claim 3, The above instructions are executed by the at least one processor, so that the electronic device: Obtaining the global histogram information from the third image obtained above, The third image obtained above is stored in the memory, Reading the third image stored in the above memory and performing global tone mapping based on the global histogram information to obtain a fourth image, An electronic device for obtaining the local histogram information from the fourth image.
7. In claim 6, The above instructions are executed by the at least one processor, so that the electronic device: Identify the resolution of the third image acquired above, An electronic device that determines whether to obtain the global histogram information from the third image based on the resolution of the third image.
8. In claim 1, the electronic device further includes a camera, An electronic device, wherein the above input image is obtained through the camera.
9. In the method of operating an electronic device, An operation of generating at least one pyramid image obtained by changing the resolution of an input image; An operation of obtaining a first image by performing an image signal processing operation using at least one pyramid image; An operation of obtaining local histogram information and global histogram information based on a first pyramid image among at least one pyramid image; and A method comprising an operation of performing local tone mapping and global tone mapping on the first image based on the local histogram information and the global histogram information to obtain a second image.
10. In claim 9, A method wherein the operation of generating at least one pyramid image comprises the operation of reducing the resolution of the input image to generate images having different resolutions.
11. In claim 9, The first resolution of the first pyramid image is lower than the resolution of the input image, wherein said at least one pyramid image further comprises a second pyramid image having a lower resolution than said first pyramid image, The operation of obtaining the above first image is: An operation of obtaining a third image by reducing noise in the first pyramid image using the second pyramid image, and A method comprising an operation of obtaining a first image by performing a compensation operation to reduce noise using the third image.
12. In claim 11, The operation of obtaining the above local histogram information and the above global histogram information is: An operation of obtaining the local histogram information from the third image obtained above, An operation of storing the acquired third image in the memory of the electronic device; An operation of reading a third image stored in the above memory and performing local tone mapping based on the local histogram information to obtain a fourth image, and A method comprising an operation of obtaining the global histogram information from the fourth image.
13. In claim 12, The operation to obtain the above regional histogram information is: An operation for identifying the resolution of the third image acquired above, and A method further comprising an operation of determining whether to obtain the local histogram information from the third image based on the resolution of the third image.
14. In claim 11, The operation of obtaining the above local histogram information and the above global histogram information is: An operation of obtaining the global histogram information from the third image obtained above, An operation of storing the acquired third image in the memory of the electronic device; An operation of reading a third image stored in the above memory and performing global tone mapping based on the global histogram information to obtain a fourth image, and A method comprising an operation of obtaining the local histogram information from the fourth image.
15. In a non-transitory computer-readable recording medium, when an electronic device is executed: An operation of generating at least one pyramid image obtained by changing the resolution of an input image; An operation of obtaining a first image by performing an image signal processing operation using at least one pyramid image; An operation of obtaining local histogram information and global histogram information based on a first pyramid image among at least one pyramid image; and A recording medium having recorded thereon a computer program that causes an operation to be performed to obtain a second image by performing local tone mapping and global tone mapping on the first image based on the local histogram information and the global histogram information.
Citation Information
Patent Citations
Tone mapping method and device, electronic equipment and storage medium
CN114066783A
Image and producing device
JP1999187208A
Graphical user interface for tone mapping high dynamic range video
KR1020130085371A
A system for window of curtain wall
KR102691043B1
KR20210145077A