Electronic device and control method therefor
By dividing and gamut mapping images for ePaper displays, the device addresses the challenge of displaying color images efficiently on low-power devices, reducing memory and computational needs while maintaining image quality.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- SAMSUNG ELECTRONICS CO LTD
- Filing Date
- 2025-11-28
- Publication Date
- 2026-06-11
AI Technical Summary
Display devices with ePaper technology face challenges in efficiently processing and displaying color images due to their limited power consumption and color gamut, requiring effective methods to map high-color images to low-color data without significant computational overhead.
The electronic device divides an input image into sub-images, performs gamut mapping to a different color gamut, and decodes each sub-image to reduce data size and complexity, optimizing it for ePaper displays.
This approach reduces memory requirements and computational load while ensuring high-quality image display on ePaper devices by mapping colors within their limited gamut, maintaining image quality and power efficiency.
Smart Images

Figure KR2025020195_11062026_PF_FP_ABST
Abstract
Description
Electronic device and control method thereof
[0001] The present disclosure relates to an electronic device and a method for controlling the same, and more specifically, to an electronic device and a method for controlling the same that acquire image data by decoding and color gamut mapping each of the segmented images.
[0002] Thanks to advancements in electronic technology, various types of display devices are being developed. In particular, display devices equipped with various types of displays have recently become widespread, improving user convenience.
[0003] For example, display devices equipped with ePaper displays have recently become widespread. Since ePaper displays consume little power, display devices are frequently used in situations where they are not connected to an external power source.
[0004] In addition, since electronic paper primarily displays simple black-and-white or low-color images, the original video data must be mapped to low-color image data.
[0005] An electronic device according to one embodiment of the present disclosure comprises a memory for storing at least one instruction, a communication interface, a display, and at least one processor, wherein when the instructions are executed individually or collectively by the at least one processor, the electronic device divides a first image received through the communication interface to obtain a plurality of sub-images, performs gamut mapping for mapping a first partial image data corresponding to the plurality of sub-images to a second color gamut different from a first color gamut corresponding to the first image, thereby obtaining second image data of a size smaller than the total data size of the first partial image data, and controls the display to display a second image corresponding to the first image based on the second image data.
[0006] When the above instructions are executed individually or collectively by the at least one processor, the electronic device may acquire the plurality of sub-images by dividing the first image such that the plurality of sub-images have the same size and resolution.
[0007] When the above instructions are executed individually or collectively by the at least one processor, the electronic device may perform color gamut mapping on the first partial image data to acquire the second partial image data and acquire the second image data based on the second partial image data.
[0008] When the above instructions are executed individually or collectively by the at least one processor, the electronic device may decode each of the plurality of sub-images to obtain the first partial image data and perform color gamut mapping on the first partial image data to obtain the second partial image data.
[0009] In a plurality of pixels of the plurality of sub-images above, the second color depth of the second color gamut may be lower than the first color depth of the first color gamut.
[0010] The first partial image data obtained above includes a plurality of first color values including R (Red), G (Green), and B (Blue) values in the plurality of pixels, and each of the plurality of first color values includes a first number of bits corresponding to the first color depth, and each of the plurality of second color values of the second partial image data includes a second number of bits corresponding to the second color depth, and the second number may be smaller than the first number.
[0011] The plurality of first color values each include 8 bits, and the plurality of second color values include R, Y (Yellow), B, and W (White) values in the plurality of pixels, and the second color gamut may include 6 colors based on the R, Y, B, and W values.
[0012] When the above instructions are executed individually or collectively by the at least one processor, the electronic device may sequentially perform color gamut mapping based on the spatial position of the plurality of sub-images for the first partial image data corresponding to each of the plurality of sub-images.
[0013] When the above instructions are executed individually or collectively by the at least one processor, the electronic device may acquire third image data having a size smaller than the size of the first partial image data based on a post-processing process for improved image quality of the second image data, and control the display to display a third image corresponding to the third image data.
[0014] When the above instructions are executed individually or collectively by the at least one processor, the electronic device may acquire the second image data by performing color gamut mapping on the first partial image data based on a block mode in which the first image is divided into multiple parts, receive a user operation input to switch from the block mode to the full mode through the communication interface, and when the user operation input is received, decode the first image to acquire the fourth image data and acquire the second image data by performing color gamut mapping on the fourth image data.
[0015] A control method for an electronic device according to one embodiment of the present disclosure comprises: a step of obtaining a plurality of sub-images by dividing a first image received through a communication interface; a step of obtaining second image data of a size smaller than the total data size of the first sub-image data by performing gamut mapping for first partial image data corresponding to the plurality of sub-images to a second color gamut different from a first color gamut corresponding to the first image; and a step of displaying a second image corresponding to the first image based on the second image data.
[0016] The step of acquiring the plurality of sub-images may include the step of acquiring the plurality of sub-images by dividing the image so that the plurality of sub-images have the same size and resolution.
[0017] The step of acquiring the second image data may include the step of acquiring the second partial image data by performing color gamut mapping on the first partial image data, and the step of acquiring the second image data based on the second partial image data.
[0018] The step of acquiring the second partial image data may include the step of acquiring the first partial image data by decoding each of the plurality of sub-images and the step of acquiring the second partial image data by performing color gamut mapping on the first partial image data.
[0019] In a plurality of pixels of the plurality of sub-images above, the second color depth of the second color gamut may be lower than the first color depth of the first color gamut.
[0020] The first partial image data obtained above includes a plurality of first color values including R (Red), G (Green), and B (Blue) values in the plurality of pixels, and each of the plurality of first color values includes a first number of bits corresponding to the first color depth, and each of the plurality of second color values of the second partial image data includes a second number of bits corresponding to the second color depth, and the second number may be smaller than the first number.
[0021] The plurality of first color values each include 8 bits, and the plurality of second color values include R, Y (Yellow), B, and W (White) values in the plurality of pixels, and the second color gamut may include 6 colors based on the R, Y, B, and W values.
[0022] The step of acquiring the second image data may sequentially perform color gamut mapping on the first partial image data corresponding to each of the plurality of sub-images based on the spatial position of the plurality of sub-images.
[0023] Based on a post-processing process for improving the quality of the second image data, the method may include the step of acquiring third image data having a size smaller than the size of the first partial image data and the step of displaying a third image corresponding to the third image data.
[0024] In a computer-readable storage medium having one instruction recorded thereon according to one embodiment of the present disclosure, when the at least one instruction is executed individually or collectively by at least one processor, the at least one processor divides a first image received through a communication interface to obtain a plurality of sub-images, performs gamut mapping for mapping a first partial image data corresponding to the plurality of sub-images to a second color gamut different from a first color gamut corresponding to the first image, obtains second image data of a size smaller than the total data size of the first partial image data, and displays a second image corresponding to the first image based on the second image data.
[0025] FIG. 1 is a diagram for schematically illustrating the operation of an electronic device according to one or more embodiments of the present disclosure.
[0026] FIG. 2 is a block diagram for explaining the configuration of an electronic device according to one or more embodiments of the present disclosure.
[0027] FIG. 3 is a drawing for explaining the detailed configuration of an electronic device according to one or more embodiments of the present disclosure.
[0028] FIG. 4 is a flowchart for explaining the detailed operation of an electronic device according to one or more embodiments of the present disclosure.
[0029] FIG. 5 is a diagram illustrating a block decoding operation according to one or more embodiments of the present disclosure.
[0030] FIG. 6 is a drawing for explaining gamut mapping according to one or more embodiments of the present disclosure.
[0031] FIG. 7 is a drawing for illustrating a memory budget according to one or more embodiments of the present disclosure.
[0032] FIG. 8 is a drawing for illustrating a memory budget according to one or more embodiments of the present disclosure.
[0033] FIG. 9 is a drawing for illustrating block mode and overall mode according to one or more embodiments of the present disclosure.
[0034] FIG. 10 is a flowchart illustrating a method for controlling an electronic device according to one or more embodiments of the present disclosure.
[0035] The embodiments described herein are subject to various modifications and may have various forms; specific embodiments are illustrated in the drawings and described in detail in the detailed description. However, this is not intended to limit the scope of specific embodiments and should be understood to include various modifications, equivalents, and / or alternatives to the embodiments of the present disclosure. In relation to the description of the drawings, similar reference numerals may be used for similar components.
[0036] In describing the present disclosure, if it is determined that a detailed description of related known functions or configurations could unnecessarily obscure the essence of the present disclosure, such detailed description is omitted.
[0037] Additionally, the following embodiments may be modified in various other forms, and the scope of the technical concept of the present disclosure is not limited to the following embodiments. Rather, these embodiments are provided to make the present disclosure more faithful and complete and to fully convey the technical concept of the present disclosure to those skilled in the art.
[0038] The terms used in this disclosure are used merely to describe specific embodiments and are not intended to limit the scope of the rights. The singular expression includes the plural expression unless the context clearly indicates otherwise.
[0039] In the present disclosure, expressions such as “have,” “may have,” “include,” or “may include” indicate the presence of such features (e.g., numerical values, functions, actions, or components such as parts) and do not exclude the presence of additional features.
[0040] In the present disclosure, expressions such as “A or B,” “at least one of A or / and B,” or “one or more of A or / and B” may include all possible combinations of items listed together. For example, “A or B,” “at least one of A and B,” or “at least one of A or B” may refer to cases including (1) at least one A, (2) at least one B, or (3) both at least one A and at least one B.
[0041] Expressions such as "first," "second," "first," or "second" used in this disclosure may modify various components regardless of order and / or importance, and are used only to distinguish one component from another and do not limit said components.
[0042] When it is stated that a certain component (e.g., a first component) is "(operatively or communicatively) coupled with / to" or "connected to" another component (e.g., a second component), it should be understood that the said certain component may be directly connected to the said other component or connected through another component (e.g., a third component).
[0043] On the other hand, when it is stated that a certain component (e.g., a first component) is "directly connected" or "directly coupled" to another component (e.g., a second component), it may be understood that no other component (e.g., a third component) exists between said certain component and said other component.
[0044] As used in this disclosure, the expression “configured to” may be replaced, depending on the context, with, for example, “suitable for,” “having the capacity to,” “designed to,” “adapted to,” “made to,” or “capable of.” The term “configured to” may not necessarily mean only “specifically designed to” in hardware.
[0045] Instead, in some situations, the expression “device configured to do something” may mean that the device is “capable of doing something” in conjunction with other devices or components. For example, the phrase “processor configured (or set) to perform A, B, and C” may refer to a dedicated processor for performing those operations (e.g., an embedded processor), or a generic-purpose processor (e.g., a CPU or application processor) capable of performing those operations by executing one or more software programs stored in a memory device.
[0046] In the embodiments, a 'module' or 'part' performs at least one function or operation and may be implemented in hardware or software, or a combination of hardware and software. Additionally, a plurality of 'modules' or a plurality of 'parts' may be integrated into at least one module and implemented by at least one processor, except for a 'module' or 'part' that needs to be implemented in specific hardware.
[0047] Meanwhile, various elements and areas in the drawings are depicted schematically. Accordingly, the technical concept of the present disclosure is not limited by the relative sizes or spacing depicted in the attached drawings.
[0048] Hereinafter, embodiments according to the present disclosure are described in detail with reference to the attached drawings so that those skilled in the art can easily implement them.
[0049] FIG. 1 is a diagram for schematically illustrating the operation of an electronic device according to one or more embodiments of the present disclosure.
[0050] According to FIG. 1, an original image (10) (or first image), a plurality of sub-images (20-1, 20-2, ..., 20-N), an intermediate image (40) (or second image) and a final image (60) (or third image) are shown.
[0051] The electronic device can receive an original image (10) and obtain a final image (60) corresponding to the original image (10). Here, the electronic device can be implemented as a device capable of performing image processing functions, such as a PC or a set-top box, and the electronic device will be described in detail in FIG. 2.
[0052] Here, an image may refer to visual information stored in a digital format. This visual information may include color and brightness information for each pixel and may be displayed on a screen. For example, an image may refer to a photograph taken with a digital camera or graphics generated by a computer. However, it is not limited to these examples.
[0053] Here, the original image (10) may refer to an image displayed on the screen based on image information to which editing or post-processing (50) has not been applied. Here, editing or post-processing (50) may refer to a process of creating a final result different from the original by applying modification or improvement work to the image. Here, the image information may correspond to all data necessary for the visual representation of an image, including data such as pixels, color, and resolution.
[0054] For example, the original image (10) may correspond to a result interpreted from data stored in the original image file shown below the original image (10). Here, the result may be displayed on the screen based on pixel values and color information stored in the file.
[0055] The original video file may refer to the file initially saved after the video was filmed or produced. Here, the file may be a compressed file. For example, it may be a JPEG (Joint Photographic Experts Group) (or JPG), PNG (Portable Network Graphics), GIF (Graphics Interchange Format), or BMP (Bitmap Image File) file saved directly from the camera. However, it is not limited to these.
[0056] In this context, video compression refers to the process of encoding data to reduce image size. For instance, lossy compression can be a compression method that reduces file size by allowing for some data loss. Similarly, lossless compression can be a method that reduces size without any data loss. However, video compression methods are not limited to these examples.
[0057] Meanwhile, regarding the original image (10), an image processing process may be performed according to the characteristics of the electronic device for displaying the original image (10). The original image (10) may be converted into a final image (60) through the image processing process.
[0058] Here, the image processing process can refer to the overall process of receiving a compressed image file on an electronic device, decoding it, interpreting the image data, and displaying it on a screen. For example, an electronic device can receive a compressed JPG file, decode it, interpret the image data, and display it on a screen.
[0059] Here, interpreting image data may mean decoding the data of a compressed file to extract color information for each pixel and visually reconstructing it.
[0060] For example, an electronic device can receive a JPG file from an external device, such as a server, decode it, convert it into RGB pixel values, and display the image on the screen.
[0061] Through this image processing process, the electronic device can generate an intermediate image (40). The intermediate image (40) may refer to an image generated during the image processing process, before image postprocessing (50) is applied after the initial decoding. Here, postprocessing may correspond to additional processing steps before final output, such as image quality improvement or noise removal.
[0062] Here, the intermediate image (40) may correspond to an image obtained by preprocessing the original image (10) as is. However, it is not limited to this, and the intermediate image (40) may correspond to an image obtained after dividing and preprocessing (30-1, 30-2, ..., 30-N) the original image (10).
[0063] Here, dividing the original image (10) (or the first image) may mean dividing the image file. Here, N may represent the number of sub-images generated by dividing the original image.
[0064] Here, multiple sub-images (20-1, 20-2, ..., 20-N) may refer to images obtained by dividing the original image (10) into multiple parts. Here, dividing the original image (10) may mean dividing the original image (10) into multiple parts according to the position of each part. For example, the multiple sub-images (20-1, 20-2, ..., 20-N) may refer to each of the 8 images constituting the original image (10) when the original image (10) is divided horizontally into 8 parts. However, it is not limited to this.
[0065] Splitting an image file can refer to the process of reading metadata such as image size, resolution, and color information based on the file's header information, and dividing the image into small blocks based on this.
[0066] Here, the header information may include data necessary for each partitioned block to be accurately interpreted and processed.
[0067] Meanwhile, preprocessing may refer to the process of decoding a compressed image file to restore the original pixel data and performing basic conversion operations necessary for display on the screen. Here, preprocessing may include color space conversion and resolution adjustment.
[0068] For example, the original image (10) can be divided into multiple sub-images (20-1, 20-2, ..., 20-N). Here, multiple image preprocessing (30-1, 30-2, ..., 30-N) can be performed for each of the multiple sub-images (20-1, 20-2, ..., 20-N).
[0069] For example, a first image preprocessing (30-1) may be performed on a first sub-image (20-1) among a plurality of sub-images, and a second image preprocessing (30-2) may be performed on a second sub-image (20-2). The first image preprocessing to the Nth image preprocessing (30-1, 30-2, ..., 30-N) may each include an image processing process of the same method.
[0070] However, it is not limited to this, and the first image preprocessing to the Nth image preprocessing (30-1, 30-2, ..., 30-N) may each include different image processing processes depending on the corresponding sub-image (20-1, 20-2, ..., 20-N).
[0071] Accordingly, when image preprocessing (30-1, 30-2, ..., 30-N) is performed on each of the multiple sub-images (20-1, 20-2, ..., 20-N), an intermediate image (40) formed by combining the multiple preprocessed sub-images can be generated.
[0072] The intermediate image (40) can be converted into a final image (60) through post-processing (50). Here, the final image (60) is an image in which both pre-processing (e.g., decoding, color conversion, etc.) (30-1, 30-2, ... 30-N) and post-processing (e.g., image quality improvement, noise removal, etc.) (50) are completed, and it may correspond to a finished image ready to be displayed on the screen.
[0073] The electronic device of the present disclosure can divide the original image (10) in this way and perform a preprocessing process (30-1, 30-2, ..., 30-N) individually for each. The amount of computation according to this method may be the same as the amount of computation when the original image (10) is preprocessed as is.
[0074] Here, computational load can refer to the amount of computation required to process image data. The computational load can be determined by the resolution, color depth, and the complexity of the algorithm.
[0075] In order for an electronic device to perform such an image processing process (or operation), it may require memory used for the resolution of the electronic device image, color depth data, intermediate processing results, and post-processing operations. Here, the memory will be described in detail later in FIG. 2.
[0076] Here, the maximum memory capacity that an electronic device must allocate for image processing can be referred to as the Memory Budget.
[0077] If the memory budget is reduced, the capacity and quantity of required memory chips decrease, which can simplify the raw materials and production processes necessary for memory manufacturing. Consequently, manufacturing costs can be lowered as the production costs of memory semiconductors and memory-related components within the device are reduced.
[0078] The memory budget may be determined by the memory capacity required to store and process intermediate images (30) and final images (60) during the image processing process. Here, the memory capacity may correspond to the capacity required to temporarily store and delete intermediate data, such as intermediate images (40), or to store new data.
[0079] If the electronic device performs an image processing process by dividing the original image (10) instead of processing the original image (10) as is, this memory budget can be reduced. That is, through this method, the total amount of computation involved in the image processing process can be maintained, while the memory capacity required for the image processing process can be reduced. This will be explained in detail in Fig. 7, etc., which will be described later.
[0080] The operation steps for the electronic device (100) to acquire image data will be specifically explained through Fig. 2, which will be described later.
[0081] FIG. 2 is a block diagram for explaining the configuration of an electronic device according to one or more embodiments of the present disclosure.
[0082] According to FIG. 2, the electronic device (100) may include a memory (110), a communication interface (120), a display, and at least one processor (140).
[0083] The electronic device (100) can process the original image (10) as illustrated in FIG. 1 to obtain image data corresponding to the intermediate image and the final image, respectively.
[0084] Here, the electronic device (100) can divide the original image (10) and then decode each of the multiple sub-images obtained by dividing. The electronic device (100) can obtain first partial image data corresponding to each of the multiple sub-images. Here, the first partial image data may correspond to data obtained by performing decoding on the multiple sub-images obtained by dividing. This is explained in detail in FIG. 2.
[0085] Here, the image data corresponding to the intermediate image may correspond to data that has undergone a preprocessing step but before postprocessing is applied. For example, the image data corresponding to the intermediate image may correspond to data in a state where basic color conversion or decoding has been completed.
[0086] In the present disclosure, data corresponding to the intermediate image may be referred to as second image data.
[0087] At this time, when the electronic device (100) divides and decodes the original image (10), the first partial image data can be processed to obtain the second partial image data.
[0088] Here, the second part image data may correspond to data obtained by performing color gamut mapping on the first part image data. Color gamut mapping will be explained in detail in the following section.
[0089] Meanwhile, the image data corresponding to the final image is data that has undergone both preprocessing and postprocessing, and may correspond to completed data ready to be finally displayed on the screen or saved. Here, the image data corresponding to the final image may also be referred to as third image data. The same applies hereinafter.
[0090] Meanwhile, the electronic device (100) is a smartphone, tablet PC (Personal computer), desktop PC, laptop PC, PC, set-top box, OTT service (Over-the-top media service) server, console (video game console), Blu-ray player, DVD (Digital Video Disc or Digital Versatile Disc) player, home automation control panel, security control panel, media box (e.g., Samsung HomeSync TM , Apple TV TM , or Google TV TM ), game console (e.g., Xbox) TM PlayStation TM It can be implemented as at least one of ).
[0091] Meanwhile, the electronic device (100) may be implemented as a device capable of performing image processing. Here, the image processing device is a device that processes input image data and converts it into an outputtable form, and can perform operations such as decompression, filtering, and color conversion. The electronic device (100) may be implemented in a device such as the aforementioned smartphone, tablet, console, or OTT service server.
[0092] When the electronic device (100) is implemented as a device equipped with a screen (smartphone or TV), the electronic device (100) can directly display the processed video. In this case, it may include a display (130). This will be explained in detail in the following section. On the other hand, when the electronic device (100) is implemented as a device not equipped with a screen (server or media box), the video can be transmitted to an external screen (display device, etc.) to be output. For example, an OTT server can process video data and stream it to a user device.
[0093] Meanwhile, the electronic device (100) can be implemented as a device capable of processing an input image to display an image on an E-paper.
[0094] Here, E-paper refers to a low-power display that uses reflected light, similar to paper, to display visual information. E-paper can maintain images or text without consuming power. For example, E-paper can be primarily used in e-book readers and electronic tags.
[0095] E-paper can form images by moving microscopic particles using an electric field. Specifically, on E-paper, bright and dark particles can change their arrangement at each pixel of the screen to form an image. The positions of the particles can be maintained without power consumption, even when the power is turned off.
[0096] When the electronic device (100) is implemented as a device capable of processing an input image to display an image on an E-paper, the electronic device (100) can process the input image data into a form suitable for the E-paper.
[0097] Here, the electronic device (100) can convert image data to suit low resolution and transmit it as a signal optimized for an E-paper display. For example, the electronic device (100) can perform image processing functions suitable for E-paper characteristics, such as color limitation, brightness adjustment, and screen refresh rate adjustment. However, it is not limited thereto.
[0098] The memory (110) is electrically connected to at least one processor (140) and can store data necessary for various embodiments of the present disclosure. For example, the memory (110) may be implemented as internal memory, such as RAM (Random Access Memory) included in the processor (140), or as a separate memory from at least one processor (120).
[0099] Depending on the purpose of data storage, the memory (110) may be implemented in the form of a memory embedded in the electronic device (100) or in the form of a memory that can be attached to and detached from the electronic device (100). For example, data for operating the electronic device (100) may be stored in a memory embedded in the electronic device (100), and data for the expansion function of the electronic device (100) may be stored in a memory that can be attached to and detached from the electronic device (100). When implemented as memory embedded in an electronic device (100), the memory (110) may be at least one of volatile memory (e.g., DRAM (dynamic RAM), SRAM (static RAM), or SDRAM (synchronous dynamic RAM), non-volatile memory (e.g., OTPROM (one time programmable ROM), PROM (programmable ROM), EPROM (erasable and programmable ROM), EEPROM (electrically erasable and programmable ROM), mask ROM, flash ROM, flash memory (e.g., NAND flash or NOR flash), hard drive, or solid state drive (SSD).
[0100] Meanwhile, although the illustrated example shows the electronic device (100) being composed of a single memory, when distinguishing between volatile memory and non-volatile memory, the electronic device (100) may be described as including multiple memories.
[0101] A memory (110) according to one or more embodiments may store at least one instruction. Here, the at least one instruction may correspond to at least one command for the electronic device (100) to acquire second image data, etc. In addition, the memory (110) may store information necessary for the operation of the electronic device (100).
[0102] The communication interface (120) is a configuration that performs communication with various types of external devices according to various types of communication methods. The communication interface (120) may include a Wi-Fi module, a Bluetooth module, an infrared communication module, and a wireless communication module, etc. Here, each communication module may be implemented in the form of at least one hardware chip.
[0103] Wi-Fi modules and Bluetooth modules can perform communication using Wi-Fi and Bluetooth methods, respectively. When using a Wi-Fi module or a Bluetooth module, various connection information, such as SSID and session key, is transmitted and received first; after establishing a communication connection using this information, various information can be transmitted and received.
[0104] The infrared communication module performs communication according to infrared communication (IrDA, Infrared Data Association) technology, which uses infrared rays located between visible light and millimeter waves to wirelessly transmit data over short distances.
[0105] In addition to the communication method described above, the wireless communication module may include at least one communication chip that performs communication according to various wireless communication standards such as Zigbee, 3G (3rd Generation), 3GPP (3rd Generation Partnership Project), LTE (Long Term Evolution), LTE-A (LTE Advanced), 4G (4th Generation), and 5G (5th Generation).
[0106] A communication interface (160) including a circuit according to one embodiment of the present disclosure can perform communication with an external device. For example, the communication interface (160) can receive various information related to a wireless power receiving device (200) from an external device (e.g., a wireless power receiving device), an external storage medium (e.g., a USB memory), an external server (e.g., a web hard drive) through a communication method such as AP-based Wi-Fi (Wi-Fi, Wireless LAN network), Bluetooth, Zigbee, wired / wireless LAN (Local Area Network), WAN (Wide Area Network), Ethernet, IEEE 1394, HDMI (High-Definition Multimedia Interface), USB (Universal Serial Bus), MHL (Mobile High-Definition Link), AES / EBU (Audio Engineering Society / European Broadcasting Union), Optical, Coaxial, etc.
[0107] In addition, the communication interface (120) may include at least one wired communication module that performs communication using a LAN (Local Area Network) module, an Ethernet module, a pair cable, a coaxial cable, a fiber optic cable, or an UWB (Ultra Wide-Band) module. Furthermore, the communication interface (120) may receive various information related to the wireless power receiving device (200) from an external storage medium (e.g., USB memory), an external server (e.g., web hard drive), etc. Such a communication interface (120) may also be referred to as a transceiver.
[0108] According to one or more embodiments, the electronic device (100) may receive an image through a communication interface (120). Here, the image may correspond to the original image file described above. Here, the image file may correspond to an image file in the format JPEG, PNG, GIF, or BMP.
[0109] At least one processor (140) can perform overall control operations of the electronic device (100).
[0110] The electronic device (100) can display video data through a display (130). The display (140) can be implemented as a TV, but is not limited thereto; any device equipped with a display function, such as a video wall, LFD (large format display), Digital Signage, DID (Digital Information Display), projector display, etc., can be applied without limitation.
[0111] Additionally, the display (130) can be implemented as various types of displays such as LCD (liquid crystal display), OLED (organic light-emitting diode), LCoS (Liquid Crystal on Silicon), DLP (Digital Light Processing), QD (quantum dot) display panel, QLED (quantum dot light-emitting diodes), μLED (Micro light-emitting diodes), Mini LED, etc.
[0112] Meanwhile, the display (130) may be implemented as a touch screen combined with a touch sensor, a flexible display, a rollable display, a 3D display, a display in which multiple display modules are physically connected, etc. However, it is not limited thereto, and the display (130) may be implemented as the aforementioned E-paper.
[0113] At least one processor (140) may be implemented as a digital signal processor (DSP) that processes digital signals, a microprocessor, or a time controller (TCON). However, it is not limited thereto, and may include or be defined by one or more of a central processing unit (CPU), a micro controller unit (MCU), a micro processing unit (MPU), a controller, an application processor (AP), a graphics-processing unit (GPU), a communication processor (CP), or an ARM processor. Additionally, at least one processor (140) may be implemented as a System on Chip (SoC) or large-scale integration (LSI) with a built-in processing algorithm, or may be implemented in the form of a Field Programmable Gate Array (FPGA). Furthermore, at least one processor (140) may perform various functions by executing computer executable instructions stored in memory. Meanwhile, in FIG. 2, only one processor is included in the electronic device (100). Although it has been described, when implementing it, it may include multiple processors (e.g., CPU + GPU, CPU + DSP).
[0114] According to one or more embodiments, at least one processor (140) can obtain a plurality of sub-images by dividing an image received through a communication interface (120).
[0115] For example, at least one processor (140) can divide the first image to obtain a plurality of sub-images of the same size and resolution.
[0116] For example, at least one processor (140) can receive an image with a resolution of P x Q. Here, P may represent the number of horizontal pixels included in the image. Here, Q may represent the number of vertical pixels included in the image. In this case, multiple pixels included in the image may all have the same size.
[0117] At this time, at least one processor (140) can divide the first image into N sub-images corresponding to the same size and resolution. Accordingly, at least one processor can obtain N sub-images, each having a resolution of P x (1 / N)Q.
[0118] According to one or more embodiments, at least one processor (140) can perform gamut mapping for mapping first partial image data corresponding to a plurality of sub-images to a second color gamut different from a first color gamut corresponding to a first image.
[0119] Here, the first part image data may correspond to data obtained by decoding each of the multiple sub-images. Here, decoding may refer to the process of decompressing the original image to restore the original image data. At least one processor (140) may obtain data including visual information of the original image, such as pixel values, color information, and resolution of each frame, through decoding.
[0120] For example, at least one processor (140) can perform decoding for each of the plurality of sub-images to obtain first partial image data including pixel values, color information, etc. for each of the plurality of sub-images.
[0121] The decoding performed on each of the multiple sub-images here may be referred to as block decoding in this disclosure.
[0122] Afterwards, at least one processor (140) can perform color gamut mapping on the first portion of the image data.
[0123] Here, color gamut mapping can refer to the process of converting colors from a specific color gamut to colors that can be expressed within another color gamut.
[0124] For example, when a specific color is not properly represented on a different device or color space due to differences in color gamut, color gamut mapping may refer to the process of mapping the color to the closest possible value without distortion. A color space may correspond to a model (e.g., sRGB) that defines the range of colors that can be represented on a specific display or device. In this disclosure, color gamut and color space may be used interchangeably.
[0125] Color gamut mapping can refer to the process of mapping from the first color gamut to the second color gamut.
[0126] Here, the first color gamut may refer to the range of a color space that serves as the starting point for color conversion in color gamut mapping. This color gamut may correspond to the range of colors that can be expressed in a specific electronic device or color space.
[0127] For example, the first color gamut may correspond to the color gamut corresponding to the first image. Here, the first color gamut is the range of colors that the received original image can express, and may refer to the color space that serves as the reference before conversion in color gamut mapping.
[0128] Meanwhile, the second color gamut may refer to the range of the target color space to which the colors converted in the color gamut mapping arrive. Here, the second color gamut is the color gamut in which colors converted from the first color gamut are expressed, and the range of color expression may be wider or narrower than that of the first color gamut.
[0129] For example, the second color gamut is a range of colors in the target color space to be matched by converting the colors of the original image (first color gamut), and can refer to the target color space where the image will be displayed after color gamut mapping.
[0130] Meanwhile, the second color gamut may refer to the range of colors that E-paper can express. Due to its characteristics, E-paper can display images in limited colors or grayscale. Here, since E-paper has low power consumption and low resolution characteristics, the range of color expression may be narrow. In this case, at least one processor (140) can map the colors of the original image to the second color gamut, taking into account the color limitations of the E-paper.
[0131] According to one or more embodiments, at least one processor (140) can acquire second image data with a size smaller than the data size of the first partial image data.
[0132] Here, the data size is a value representing the capacity of the stored data and can be measured in units of bytes. Here, the total size of the first partial image data may be the same as the size of the acquired data when the original image is decoded at once without being divided. This will be explained in detail in FIG. 7.
[0133] Meanwhile, at least one processor (140) can obtain second image data by performing color gamut mapping on a plurality of partial images.
[0134] For example, at least one processor (140) can obtain second partial image data by performing color gamut mapping on first partial image data corresponding to a plurality of sub-images.
[0135] For example, at least one processor (140) can sequentially perform two operations (decoding and color gamut mapping) on a plurality of sub-images. The at least one processor (140) can acquire second partial image data for a sub-image among the plurality of sub-images for which both decoding and color gamut mapping have been performed.
[0136] At least one processor (140) can acquire second partial image data corresponding to the plurality of sub-images when decoding and color gamut mapping are performed for all of the plurality of sub-images. Accordingly, at least one processor (140) can stop the decoding and color gamut mapping operations. A detailed explanation of this will be described in detail in FIG. 4.
[0137] Meanwhile, the second color depth of the second color gamut may be lower than the first color depth of the first color gamut in multiple pixels of multiple sub-images. At least one processor (140) can perform color gamut mapping for multiple pixels based on the second color depth.
[0138] Here, color depth can refer to the granularity of colors that can be expressed in each color gamut. Color depth can also be represented by the number of bits that determine the number of colors that can be expressed per pixel in an image or display.
[0139] Here, the higher the number of bits, the more colors can be expressed. Here, bits can be represented in binary form.
[0140] Here, the first color depth may refer to the level of detail of colors that can be expressed in the first color space. For example, in a 24-bit RGB (or RGB-24-bit) color space, 167,000,000 colors can be displayed. However, it is not limited to this.
[0141] Meanwhile, second color depth can refer to the level of color detail that can be expressed in the second color space.
[0142] For example, on devices such as E-paper, depending on the color display performance, only black and white or 4-level grayscale may be displayed with 1-bit or 2-bit depth. However, it is not limited to this.
[0143] Meanwhile, the first portion of the image data may include values according to the first color gamut. For example, the first color gamut may be implemented as a color gamut based on RGB-24bit.
[0144] In this case, the first color depth corresponding to the first color gamut may include first color values including R (Red), G (Green), and B (Blue) values in a plurality of pixels. Here, each first color value may include a number of bits corresponding to the first color depth. For example, each of the R, G, and B values may include 8 bits.
[0145] Here, the R value represents the intensity of the pixel's Red channel, the G value the intensity of the Green channel, and the B value the intensity of the Blue channel; each value can represent the brightness or intensity of a color. In this context, each channel corresponds to a component that independently stores the intensity values of specific color components (R, G, B, etc.) for each pixel in the image.
[0146] Accordingly, the first part image data may include 24 bits per multiple pixels. In this case, each pixel can represent 167,000,000 different colors.
[0147] Meanwhile, at least one processor (140) can acquire second partial image data including second color values, and the second color values of the second partial image data may each include a second number of bits corresponding to a second color depth. The second number may be smaller than the first number.
[0148] For example, if the first color gamut is implemented as RGB-24bit, the second part image data may include a number of bits (less than 24) that is smaller than the total sum (24) of the number of bits (8 each) included in each of the R, G, and B values.
[0149] For example, the second color values may include R, G, B, Y (Yellow), B (Black), and W (White) values, respectively, in multiple pixels. In this case, the second color gamut may be implemented as RGBYBW-4bit.
[0150] RGBYBW-4bit corresponds to a color gamut that represents only 6 colors—red (R), green (G), blue (B), yellow (Y), black (B), and white (W)—using 4 bits. In this case, each pixel is represented by 4 bits, and colors limited to a total of 16 color combinations can be expressed.
[0151] However, this is not limited to this, and even if the second color gamut is implemented as RGBYBW-4bit, the second partial image data may include only the R, Y(Yellow), B, and W(White) values among R, G, B, Y(Yellow), B, and W(White) for each of the multiple pixels. Additionally, each pixel may express only six colors through the R, Y, B, and W values.
[0152] Meanwhile, at least one processor (140) can sequentially perform color gamut mapping on first partial image data corresponding to a plurality of sub-images based on the spatial positions of the plurality of sub-images.
[0153] For example, if the first image is divided horizontally into 8 sub-images, decoding and color gamut mapping can be performed in the order from the topmost sub-image to the bottommost sub-image.
[0154] However, this is not limited thereto, and the order in which each sub-image is processed (decoding and color gamut mapping, etc.) may be the opposite of the example described above, and starting with any sub-image, the order may correspond to the top or bottom (left or right if the original image is vertically split) from the starting sub-image.
[0155] Subsequently, at least one processor (140) may acquire second image data based on the acquired second partial image data. Here, the second image data may correspond to data synthesized from the second partial image data. In this case, the second image data may correspond to data synthesized based on spatial location.
[0156] Here, the process of synthesizing the second part of the image data can also be referred to as image stitching. Image stitching refers to the process of combining multiple partial images to create a single continuous image.
[0157] Afterward, at least one processor (140) may perform a post-processing process based on the acquired second image data. Here, the post-processing process may include a process of improving the image quality corresponding to the second image data.
[0158] Here, the process of improving video quality may refer to work that enhances the visual quality of the video through noise removal, resolution enhancement, color correction, etc. For example, the process of improving video quality may include applying a sharpening filter to make a blurred image clearer. However, it is not limited to this.
[0159] Meanwhile, the post-processing process may correspond to a process for acquiring third image data. Here, the third image data obtained through the post-processing process may correspond to image data that is ready to be output through an external display, etc., after post-processing including image quality improvement and color correction has been performed.
[0160] At this time, the size of the third image data may be smaller than the size of the first partial image data (data size) corresponding to a plurality of sub-images. Here, the total size of the first partial image data may be the same as the size of the data obtained when the original image is decoded at once without being divided. This will be explained in detail in FIG. 7.
[0161] According to one or more embodiments, at least one processor (140) can control the display (130) to display a second image corresponding to a first image based on second image data.
[0162] Here, the second image corresponding to the first image may refer to an image converted to a different color gamut from the first image. For example, the different color gamut here may refer to the second color gamut described above. That is, at least one processor (140) can control the display (130) to display the second image by converting the first image to a new color gamut.
[0163] Here, at least one processor (140) can control the display (130) to display the above image based on the second image data. For example, the display (130) can be controlled to display an image corresponding to the second image data.
[0164] Here, the image corresponding to the second image data may refer to an image based on pixel values and color information included in the image data. That is, the image corresponding to the second image data may refer to an image (e.g., a low-resolution image) in which the received image (original image) has been converted to be suitable for E-paper performance.
[0165] Meanwhile, at least one processor (140) can control the display (130) to display an image in which a post-processing process has been performed based on the second image data.
[0166] According to one embodiment, at least one processor (140) can control a display (140) to display a third image corresponding to the third image data. Here, the third image may correspond to a second image based on decoding, color gamut mapping, and post-processing of the first image.
[0167] For example, at least one processor (140) can control the display (130) to display an image with improved quality compared to the image corresponding to the second image data after performing color gamut mapping to a new color gamut for the first image. However, it is not limited thereto.
[0168] Meanwhile, at least one processor (140) can operate in either block mode or full mode.
[0169] Here, the block mode may correspond to a mode for processing images (decoding, color gamut mapping, etc.) by dividing the first image into multiple parts. At least one processor (140) may acquire multiple sub-images during the block mode and perform color gamut mapping on the first partial image data corresponding to each of the multiple sub-images.
[0170] Meanwhile, the full mode may correspond to a mode for processing the input video (original video) all at once.
[0171] At least one processor (140) can receive user operation input to switch from block mode to full mode through a communication interface (120).
[0172] In this case, at least one processor (140) can obtain fourth image data by decoding the first image when user operation input is received. Here, the fourth image data may correspond to data obtained by performing decoding on the image.
[0173] At least one processor can perform color gamut mapping on the fourth image data. This will be explained in detail in FIG. 9.
[0174] Although the electronic device (100) in FIG. 2 is illustrated as including only basic components (i.e., memory, communication interface, processor), the electronic device (100) may include various additional components in addition to the components described above.
[0175] FIG. 3 is a drawing for explaining the detailed configuration of an electronic device according to one or more embodiments of the present disclosure.
[0176] Referring to FIG. 3, the electronic device (100) may include an MCU (320), Flash (310), and TCON (330).
[0177] Flash (310) can store the input image (image file) (311). Here, the image may correspond to an image received via a wired communication method such as USB or a wireless communication method such as Wi-Fi.
[0178] The MCU (Microcontroller Unit) (320) can process image data of the input image. Here, the MCU is a processor that can be used in an embedded system and may correspond to a small processor in which a CPU, memory, and input / output devices are integrated into a single chip.
[0179] The MCU (320) may include an Image Decoder block (321) that decodes an image (311) input from Flash (310), a color gamut mapping block (323), and a PQ (Picture Quality) processing block (324).
[0180] The MCU (320) may include a PSRAM (322). Here, the PSRAM (Pseudo-Static RAM) (322) may correspond to a memory that has the structure of a DRAM but operates externally like an SRAM. Although the PSRAM (322) requires periodic data updates like a DRAM through a refresh circuit, it can also be used like an SRAM when provided in the MCU (320) as shown in FIG. 3. It can be used simply.
[0181] For example, while the MCU (320) is performing an image processing process, the MCU (320) can store and temporarily process image data through the PSRAM (322). For example, if the image file is large or high resolution, the internal memory of the MCU alone is not sufficient, so additional storage space can be secured by using the PSRAM (322).
[0182] Here, since the PSRAM (322) can process large amounts of data in a low-power state, it can be used to store intermediate data of an image or as a temporary data storage during computation.
[0183] Accordingly, if the image processing process performed by the MCU (320) is simplified or the size of the intermediate data can be reduced, the memory budget required for the PSRAM (322) can be reduced.
[0184] For example, the PSRAM (322) can temporarily store image data that is decoded and produced by the Image Decoder block (321). Additionally, the Gamut mapping block (323) can load image data from the PSRAM (322), perform color gamut mapping, and then temporarily store the image data obtained from the color gamut mapping in the PSRAM (322).
[0185] Next, the PQ Processing block (324) can load color-gamut-mapped data from the PSRAM (322) and perform post-processing.
[0186] Here, post-processing may include the aforementioned 2D Dithering, HGD remapping, and DDI mapping processes.
[0187] The MCU (320) can obtain a final image by performing post-processing. Based on this final image, the MCU (320) can provide SPI data to the TCON (Timing Controller) (330). Here, SPI (Serial Peripheral Interface) may correspond to a communication protocol that transmits data serially at high speed between a master device and a slave device. For example, SPI can exchange synchronized data using a clock signal.
[0188] SPI data is serial data transmitted via the SPI protocol and may correspond to commands, control signals, or actual data between a master and a slave. Here, SPI data may correspond to signals for displaying the final image on the screen. That is, SPI data may correspond to serial data transmitted to the TCON (330), including image data that has undergone pre-processing and post-processing.
[0189] TCON (330) may correspond to a device that controls the timing signal of a display panel (e.g., an LED module) to display image data at the correct time. For example, TCON (330) may receive SPI data and transmit color and timing information to each pixel of the display panel.
[0190] TCON (330) can operate as a device provided in the electronic device (100), but is not limited thereto, and can be located outside the electronic device (100) to receive a control signal (e.g., SPI data) generated by the electronic device (100) and control an image to be displayed on a display panel, etc.
[0191] The configurations described above are merely examples, and the electronic device (100) can be implemented in various configurations necessary to process the original image and obtain the final image data.
[0192] FIG. 4 is a flowchart for explaining the detailed operation of an electronic device according to one or more embodiments of the present disclosure.
[0193] According to FIG. 4, the electronic device (100) processes image data included in the image file after an image file is input and obtains image data for the final image in steps.
[0194] The electronic device (100) can store an image file in Flash when it is input (S410). Afterwards, the electronic device (100) can block the input image file (S420). Here, blocking may mean dividing the input image into multiple parts to obtain multiple sub-images.
[0195] Next, the electronic device (100) can decode the block-shaped image data (S430). The electronic device (100) can store the decoded block image data in a PSRAM (S440). Here, the block image data may correspond to the first partial image data described above.
[0196] Here, block image data may correspond to data based on the RGB-24-bit color space. For example, block image data may contain a total of 24 bits for each of multiple pixels.
[0197] Next, the electronic device (100) can perform color gamut mapping on the decoded data (S450). Next, the electronic device (100) can store the block image data on which color gamut mapping has been performed in a PSRAM (S460). Here, the block image data on which color gamut mapping has been performed may correspond to the aforementioned second partial image data.
[0198] Here, the block image data on which color gamut mapping has been performed may correspond to data based on the RGBYBW-4-bit color space. For example, the block image data on which color gamut mapping has been performed may contain a total of 4 bits for each of the multiple pixels.
[0199] Next, the electronic device (100) can determine whether decoding and color gamut mapping have been performed on all block images (S470). If it is determined that decoding and color gamut mapping have not been performed on all block images, the electronic device (100) can repeat the operations (S430 to S460) from the operation of decoding the block image data (S430) to the operation of storing the block image data with color gamut mapping performed in the PSRAM (S460).
[0200] If it is identified that decoding and color gamut mapping have not been performed for all block images, the electronic device (100) can perform post-processing based on the entire image data (S480).
[0201] Here, the entire image data may correspond to the aforementioned second image data. For example, the entire image data may correspond to data formed by synthesizing multiple block image data to which color gamut mapping has been performed.
[0202] That is, the electronic device (100) can repeat decoding and color gamut mapping until decoding and color gamut mapping are performed on all blocked image data. Here, for a plurality of blocked images, decoding and color gamut mapping can be performed according to the order of spatial position of each blocked image.
[0203] Next, the electronic device (100) can store post-processed image data in PSRAM (S490).
[0204] FIG. 5 is a diagram illustrating a block decoding operation according to one or more embodiments of the present disclosure.
[0205] According to FIG. 5, the electronic device (100) can perform a block decoding process (510).
[0206] The electronic device (100) can receive an original image (original image file) (511-1) and store it in a flash (511). Here, the original image may correspond to an image with PxQ resolution.
[0207] The electronic device (100) can divide the original image into N parts. For example, the electronic device (100) can divide the original image vertically into N parts. In this case, the electronic device (100) can obtain N sub-images with a resolution of Px(1 / N)Q.
[0208] At this time, the electronic device (100) can divide the original image into N sub-images using header information among the image data included in the original image.
[0209] For example, the electronic device (100) can read resolution, frame count, color information, etc. from the header and identify the starting point of each section (sub-image). Based on the starting point, the electronic device (100) can separately extract and divide the data blocks included in the original image.
[0210] The sub-image generated here may be referred to as a sub-block (512). The electronic device (100) can decode multiple sub-blocks (512) in order from the first to the Nth through an MCU. Here, decoding can be performed by a Block Image Decoder (513).
[0211] However, the electronic device (100) may not decode the next sub-block immediately after the sub-block (512) is decoded, but may decode the next sub-block after the decoded sub-block (512) has been color-gamut mapped.
[0212] The electronic device (100) can obtain first partial image data of size (1 / N)K MB after decoding the sub-block (512). Here, K may correspond to the size of the image data that can be obtained when the electronic device (100) decodes the entire original image (511-1). That is, K may correspond to the size of the decoded video data of the original image (511-1).
[0213] Here, size can refer to data size. Data size is a value representing the capacity of stored data and can be measured in bytes.
[0214] The electronic device (100) can perform the next step of color gamut mapping on the first partial image data of size (1 / N)K MB.
[0215] FIG. 6 is a drawing for explaining gamut mapping according to one or more embodiments of the present disclosure.
[0216] According to FIG. 6, the electronic device (100) can perform a color gamut mapping process (610).
[0217] The electronic device (100) can store the first partial image data obtained through the Block Image Decoder block (611) in the PSRAM (612), and load the first partial image data from the PSRAM (612) to perform color gamut mapping through the Gamut mapping block (613).
[0218] Here, the Gamut mapping block (613) loads the first partial image data ((1 / N)K MB) from the PSRAM (612), thereby allowing the first partial image data ((1 / N)K MB) to be output from the PSRAM (612).
[0219] Here, the first part of the image data may correspond to the data where the first block among the plurality of sub-blocks is decoded. However, it is not limited thereto, and after color gamut mapping is performed on the first sub-block, the sub-block that is subsequently decoded among the plurality of sub-blocks may correspond to the decoded data.
[0220] In this case, the first part image data may correspond to a size of (1 / N)K MB. And the first part image data may correspond to data based on the RGB-24-bit color space.
[0221] The gamut mapping block (613) can obtain first partial image data from the PSRAM (612). The gamut mapping block (613) can obtain second partial image data by performing color gamut mapping on the first partial image data.
[0222] In this case, the second part image data may correspond to data of size (1 / G)(1 / N)K MB. Also, the second part image data may correspond to data based on the RGBYBW-4-bit color scheme.
[0223] That is, the second partial image data may correspond to data having a size (1 / G) times the size of the first partial image data. Here, G may correspond to a parameter indicating how the size of the total data changes as the bit depth decreases when mapping the color gamut from the first color gamut (e.g., RGB-24-bit) to the second color gamut (e.g., RGBYBW-4-bit). Here, bit depth may have the same meaning as the aforementioned color depth.
[0224] For example, when mapping the color gamut from RGB-24bit to RGBYBW-4bit, the size of the second part image data can be reduced to 1 / 6 of the size of the first part image data. In this case, the G value can be 6.
[0225] Accordingly, the electronic device (100) can perform color gamut mapping on the first partial image data ((1 / N)K MB) obtained by decoding the first sub-block. Once all color gamut mapping corresponding to the first sub-block is performed, the second partial image data of size (1 / G)(1 / N)K MB can be stored in the PSRAM (612).
[0226] Next, the electronic device (100) can perform decoding and color gamut mapping on the next sub-block in the same way as on the first sub-block to acquire second partial image data of size (1 / G)(1 / N)K MB and store it in PSRAM (612).
[0227] The electronic device (100) can repeat this process (decoding and color gamut mapping) N times for all sub-blocks (N sub-blocks). Accordingly, since the second partial image data of size (1 / G)(1 / N)K MB can be stored N times in the PSRAM (612), image data of size (1 / G)K MB can be stored in the PSRAM. This will be explained in detail in FIG. 8, which will be described later.
[0228] The image data stored at this time may correspond to the second image data. Based on the second image data, the electronic device (100) can perform a subsequent process (post-processing).
[0229] FIG. 7 is a drawing for illustrating a memory budget according to one or more embodiments of the present disclosure.
[0230] According to FIG. 7, the memory budget of a first method (710) for decoding the original video at once and the memory budget of a second method (720) for decoding the original video by dividing it (block decoding, block unit decoding) are shown.
[0231] Here, the memory budget may refer to the storage space required in the PSRAM for the electronic device (100) to process the input image (decoding, color gamut mapping, post-processing, etc.). That is, the memory budget may refer not to the capacity of image data, etc., actually stored in the PSRAM, but to the data capacity of the PSRAM expected to be required to perform the above-mentioned image processing.
[0232] Each of the first method (710) and the second method (720) includes a table showing the output data capacity and PSRAM memory budget for each process of image processing. Here, the output data may correspond to the results generated in each image processing process (decoding, color gamut mapping, post-processing).
[0233] Here, the capacity indicated in the PSRAM memory budget may refer to the memory capacity required to store the results, depending on the data size of the output generated in each process.
[0234] According to the first method (710), the electronic device (100) can acquire K MB of image data through image decoding. Accordingly, the PSRAM may require at least K MB of memory space.
[0235] Subsequently, through color gamut mapping, the electronic device (100) can acquire (1 / G)K MB of image data. In this case, the electronic device (100) can perform color gamut mapping using the K MB of image data stored in the PSRAM.
[0236] In other words, since K MB of image data must be stored in the PSRAM until all color gamut mapping is performed, K + (1 / G)K MB of memory space may be required to perform the process up to color gamut mapping.
[0237] Afterward, the electronic device (100) can perform a post-processing process based on image data of (1 / G)K MB obtained through color gamut mapping. The electronic device (100) can obtain final image data of X MB through the post-processing process.
[0238] The electronic device (100) can perform post-processing using K MB capacity that is not used after decoding is already finished. Accordingly, even if post-processing is performed after color gamut mapping, the memory budget may not increase.
[0239] Once color gamut mapping is fully performed using the video data after decoding, K MB of free space may become available in the PSRAM. In other words, once color gamut mapping is complete, the K MB of video data temporarily stored for the mapping process may no longer exist in the PSRAM. Thus, utilizing the K MB capacity that is no longer in use after decoding is finished can mean utilizing this free storage space.
[0240] On the other hand, according to the second method (720), the electronic device (100) can acquire (1 / N)K MB of image data through block decoding. Accordingly, the PSRAM may require at least (1 / N)K MB of memory space. Here, the image data acquired through block decoding may correspond to the first portion of image data described above.
[0241] Subsequently, through color gamut mapping of (1 / N)K MB of image data, the electronic device (100) can acquire (1 / N)(1 / G)K MB of image data. In this case, the electronic device (100) can perform color gamut mapping using (1 / N)K MB of image data stored in PSRAM. Here, the image data acquired through color gamut mapping may correspond to the aforementioned second part image data.
[0242] That is, since (1 / N)K MB of image data must be stored in the PSRAM until the color gamut mapping for the first sub-block is fully performed, (1 / N)K + (1 / N) (1 / G)K MB of memory space may be required to perform the process up to the color gamut mapping for the first sub-block.
[0243] The electronic device (100) can obtain (1 / N)(1 / G)K MB by performing decoding and color gamut mapping on the second sub-block. The electronic device (100) can obtain (1 / G)K MB of image data through color gamut mapping by repeating this process N times. Accordingly, (1 / N)K + (1 / G)K MB of memory space may be required until color gamut mapping is performed for all sub-blocks.
[0244] Subsequently, the electronic device (100) can perform a post-processing process based on the image data of (1 / G)K MB obtained through color gamut mapping. The electronic device (100) can obtain final image data of X MB through the post-processing process. Here, the final image data may correspond to the aforementioned third image data.
[0245] At this time, the electronic device (100) can perform a post-processing process by utilizing the (1 / N)K MB capacity that is not being used because decoding has already been completed. In this case, the size (X MB) of the final image data obtained through the post-processing process may be larger than the data capacity (1 / N)K MB calculated after block decoding. Accordingly, the memory budget required for the electronic device (100) to perform the post-processing process may be X + (1 / G)K MB.
[0246] After block decoding, when color gamut mapping is fully performed using image data, a spare space of (1 / N)K MB may be available in the PSRAM. The electronic device (100) utilizes the (1 / N)K MB capacity that is not used because block decoding is already finished, but since X MB of image data larger than (1 / N)K is acquired depending on post-processing, the memory budget required until the final stage may correspond to X + (1 / G)K MB.
[0247] As mentioned above, since X MB is smaller than K MB, which is the size of image data obtained by performing decoding on the entire image, in the case of the second method, the total memory budget can be reduced from K + (1 / G)K MB to X + (1 / G)K MB.
[0248] FIG. 8 is a drawing for illustrating a memory budget according to one or more embodiments of the present disclosure.
[0249] FIG. 8 illustrates the process of calculating the memory budget according to each of the first method (810) and the second method (820) described in FIG. 7, using actual figures as examples.
[0250] Here, the values given as examples for the original image size, the decoded image data size (K), N, and G (e.g., 11 Mbyte (MB), 1.84 Mbyte, 1, 6, etc.) are merely examples, and it goes without saying that various other values can be applied instead.
[0251] According to the first method (810), since N is 1, the electronic device (100) can decode the input image at once without dividing it.
[0252] The electronic device (100) can receive an original image with a resolution of 2560X1440 and decode it to obtain 11 MB of image data.
[0253] Next, the electronic device (100) can obtain 1.84 MB of image data by performing color gamut mapping on the acquired image data when G is 6.
[0254] Here, 6 may correspond to the value of G in the case where the color space corresponding to the first color gamut is RGB-24bit and the color space corresponding to the second color gamut is RGBYBW-4bit. Also, here, 1.84 MB may correspond to an approximation of the value of (1 / G)K, which is obtained by dividing the capacity (K) 11 of the image data after decoding by 6.
[0255] Afterwards, the electronic device (100) can obtain 2.5 MB of final image data by performing post-processing based on 1.84 MB of image data. At this time, the electronic device (100) can store the obtained final image data in PSRAM by utilizing 11 MB of memory space that is not used after decoding is completed.
[0256] Accordingly, when the electronic device (100) processes an image according to the first method (810), the memory budget may be 12.84 MB (K + (1 / G)K MB) by adding 11 MB and 1.84 MB.
[0257] Meanwhile, according to the second method (820), since N is 8, the electronic device (100) can divide the input image into 8 parts.
[0258] That is, the electronic device (100) can obtain eight sub-blocks of 2560x180 resolution by dividing the original image with a resolution of 2560x1440. The electronic device (100) can obtain 1.38 MB of image data by decoding the first sub-block of 2560x180 resolution (the sub-block located at the very top) among the eight sub-blocks.
[0259] Next, the electronic device (100) can obtain 0.23 MB of image data by performing color gamut mapping on the acquired image data when G is 6.
[0260] Here, similar to the first method, if the color space corresponding to the first color gamut is RGB-24bit and the color space corresponding to the second color gamut is RGBYBW-4bit, G may correspond to 6. Also, here 0.23 MB may correspond to the value of (1 / G)K obtained by dividing the capacity (K) of the image data after decoding (1.38) by 6.
[0261] The electronic device (100) can obtain 0.23 MB ((1 / N)(1 / G)K MB) of image data by performing decoding and color gamut mapping on the second sub-block. The electronic device (100) can obtain 1.84 MB ((1 / G)K MB) of image data by repeating this process 8 times. Accordingly, 3.22 MB of memory space may be required by adding 1.38 MB and 1.84 MB until color gamut mapping is performed on all sub-blocks.
[0262] At this time, the electronic device (100) can perform a post-processing process by utilizing the 1.38 MB ((1 / N)K MB) capacity that is not being used because decoding has already finished. In this case, the size of the final image data obtained through the post-processing process, 2.5 MB (X MB), may be larger than 1.38 MB (1 / N)K MB. Accordingly, the memory budget required for the electronic device (100) to perform the post-processing process may be 4.34 MB (X + (1 / G)K MB) by adding 1.84 MB and 2.5 MB.
[0263] As in this example, when the electronic device (100) divides the input image and performs preprocessing (decoding and color gamut mapping) for each instead of decoding the input image all at once, the memory budget can be reduced from 12.84 MB to 4.34 MB, which is a decrease of 8.5 MB.
[0264] Reducing the memory budget in this way can decrease the capacity and quantity of required memory chips. Consequently, this simplifies the raw materials and production processes necessary for memory manufacturing, leading to a reduction in memory production costs.
[0265] FIG. 9 is a drawing for illustrating block mode and overall mode according to one or more embodiments of the present disclosure.
[0266] According to FIG. 9, the electronic device (100) can operate in either a full mode (910) or a block mode (920).
[0267] The data size (capacity) values shown in each of the full mode (910) and block mode (920) may represent the size of data input to or output from the PSRAM. Here, each data size value is described as a value exemplified in FIGS. 7 and 8, but is not necessarily limited thereto.
[0268] Additionally, the values of N and G shown in each of the full mode (910) and block mode (920) are the values exemplified in FIGS. 7 and 8, but are not necessarily limited thereto.
[0269] Here, the electronic device (100) can operate in a full mode (910) or a block mode (920) based on user operation input for selecting a mode.
[0270] Here, the electronic device (100) can receive user operation input through various operation interfaces such as a keyboard, mouse, operation buttons, and a touchable display equipped on the electronic device. However, it is not limited thereto.
[0271] The full mode (910) may correspond to a mode for processing the input video (original video) at once. The block mode (920) may correspond to a mode for processing the video (decoding, color gamut mapping, etc.) by dividing the first video into multiple parts.
[0272] The electronic device (100) can obtain image data by decoding the received image during the entire mode (910). Here, the image data obtained through decoding may correspond to the aforementioned fourth image data.
[0273] The electronic device (100) can perform color gamut mapping on the acquired image data. Details regarding the implementation of the operation of the full mode (910) may be referenced in the descriptions of other drawings provided above, such as the description of FIGS. 7 and FIGS. 8.
[0274] The electronic device (100) can decode a plurality of sub-blocks during block mode (910) to obtain image data corresponding to each of the plurality of sub-blocks. The image data obtained by decoding here may correspond to the first partial image data described above.
[0275] The electronic device (100) can perform color gamut mapping on the acquired image data and perform the same operation (decoding and color gamut mapping) on the remaining sub-blocks.
[0276] For details regarding the implementation of block mode 910, the above description may be referenced. Meanwhile, the electronic device (100) may switch to full mode (920) and operate while operating in block mode (920). At this time, the electronic device (100) may switch to block mode (910) based on user operation input for switching from block mode (920) to full mode (910).
[0277] For example, the memory budget for executing each mode may differ between the full mode (910) and the block mode (920). In the case of FIG. 9, the memory budget for executing the full mode (910) may be 12.84 MB, and the memory budget for executing the block mode (920) may be 4.34 MB.
[0278] In this case, if the electronic device (100) is equipped with a PSRAM of 5 MB, the electronic device (100) cannot operate in full mode (910) with a memory budget of 12.84 MB. However, if the electronic device (100) is equipped with a PSRAM of 13 MB, the electronic device (100) can operate in both full mode (910) and block mode (920).
[0279] For example, the electronic device (100) can operate in a block mode (920) with a low memory budget and low image processing speed, and then switch to an overall mode (910) with a high memory budget and high image processing speed.
[0280] That is, the user can operate the electronic device (100) to operate in block mode (920) and, depending on the situation, input an operation to switch the electronic device (100) from block mode (920) to full mode (910).
[0281] For example, if there is sufficient free space in the memory (PSRAM) and a rapid image processing function is required, the user can input an operation to switch from block mode (920) to full mode (910).
[0282] However, it is not limited to this, and the electronic device (100) may switch to a block mode (920) and operate based on user operation input, etc. while operating in the full mode (910).
[0283] Accordingly, instead of operating in a fixed mode, the electronic device (100) can operate in either a full mode (910) or a block mode (920) depending on the presence or absence of memory space constraints. Through this, the electronic device (100) can operate in a suitable mode depending on the state of available memory space or the user's requirements.
[0284] FIG. 10 is a flowchart illustrating a method for controlling an electronic device according to one or more embodiments of the present disclosure.
[0285] The electronic device (100) can acquire multiple sub-images (S1010).
[0286] According to one or more embodiments, the electronic device (100) can divide a first image to obtain a plurality of sub-images.
[0287] According to one or more embodiments, the electronic device (100) can divide an image to obtain a plurality of sub-images of the same size and resolution.
[0288] Next, the electronic device (100) can obtain second image data by performing gamut mapping on each of the plurality of sub-images (S1020).
[0289] According to one or more embodiments, the electronic device (100) can acquire first partial image data corresponding to each of a plurality of sub-images.
[0290] For example, an electronic device (100) can obtain first partial image data by decoding each of a plurality of sub-images.
[0291] According to one or more embodiments, the electronic device (100) can perform color gamut mapping for mapping a first partial image data to a second color gamut different from a first color gamut corresponding to the first image.
[0292] For example, an electronic device (100) can perform color gamut mapping for each of a plurality of pixels based on a second color depth lower than a first color depth corresponding to a first color gamut.
[0293] According to one or more embodiments, the electronic device (100) can obtain second partial image data by performing color gamut mapping on first image data and obtain second image data based on second partial image data.
[0294] Through this, the electronic device (100) can maintain the same image processing process including decoding, color gamut mapping, and post-processing, while blocking the original image and processing the image block by block.
[0295] When an electronic device (100) processes an image in this manner, the memory space required for image processing can be reduced compared to a method of processing the entire image at once. Accordingly, the memory budget required for image processing can be reduced.
[0296] Accordingly, the capacity and quantity of memory chips required for manufacturing the electronic device (100) can be reduced, and the raw materials and production processes required for memory manufacturing can be simplified. Therefore, there is an effect of lowering manufacturing costs by reducing the production cost of memory semiconductors and the cost of memory-related components within the device. In particular, when the electronic device (100) is implemented as a device for displaying images on E-paper, the electronic device (100) can be designed to be more suitable for the characteristics of E-paper, which mainly displays low resolution and simple colors (black and white, limited color expression).
[0297] Meanwhile, in Fig. 10, the order of all steps has been mapped for convenience of explanation, but it goes without saying that the order of steps that are not related to the order or can be performed in parallel is not necessarily limited to that order.
[0298] Meanwhile, methods according to at least some of the various embodiments of the present disclosure described above can be implemented in the form of an application that can be installed on an existing electronic device.
[0299] In addition, methods according to at least some of the various embodiments of the present disclosure described above may be implemented by software upgrades or hardware upgrades alone for existing electronic devices.
[0300] In addition, methods according to at least some of the various embodiments of the present disclosure described above may also be performed through an embedded server equipped in an electronic device, or through at least one external server among the electronic devices.
[0301] Meanwhile, according to one embodiment of the present disclosure, the various embodiments described above may be implemented as software containing instructions stored on a machine-readable storage medium (e.g., a computer). The machine may include an electronic device (e.g., electronic device (A)) according to the disclosed embodiments, which is a device capable of calling instructions stored from the storage medium and operating according to the called instructions. When instructions are executed by a processor, the processor may perform a function corresponding to the instructions directly or by using other components under the control of the processor. Instructions may include code generated or executed by a compiler or an interpreter. The machine-readable storage medium may be provided in the form of a non-transitory storage medium. Here, "non-transitory storage medium" simply means that it is a tangible device and does not contain a signal (e.g., electromagnetic waves), and this term does not distinguish between cases where data is stored semi-permanently and cases where it is stored temporarily in the storage medium. For example, A 'non-transient storage medium' may include a buffer in which data is temporarily stored. According to one embodiment, the method according to the various embodiments disclosed herein may be provided by being included in a computer program product. The computer program product may be traded between a seller and a buyer 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 distributed online (e.g., download or upload) through an application store (e.g., Play Store™) or directly between two user devices (e.g., smartphones).In the case of online distribution, at least a portion of a computer program product (e.g., a downloadable app) may be temporarily stored or temporarily created on a device-readable storage medium, such as the memory of a manufacturer's server, an application store's server, or a relay server.
[0302] Various embodiments of the present disclosure may be implemented as software comprising instructions stored on a machine-readable storage medium (e.g., a computer). The machine may include an electronic device (e.g., an electronic device) according to the disclosed embodiments, which is a device capable of calling instructions stored from the storage medium and operating according to the called instructions.
[0303] When the above-described instruction is executed by a processor, the processor may perform the function corresponding to the instruction directly or by using other components under the processor's control. The instruction may include code generated or executed by a compiler or an interpreter.
[0304] Although preferred embodiments of the present disclosure have been illustrated and described above, the present disclosure is not limited to the specific embodiments described above. It is understood that various modifications can be made by those skilled in the art without departing from the essence of the present disclosure as claimed in the claims, and such modifications should not be understood individually from the technical spirit or perspective of the present disclosure.
Claims
1. In an electronic device, Memory that stores at least one instruction; Communication interface; Display; and It includes at least one processor; and When the above instructions are executed individually or collectively by the at least one processor, the electronic device, A first image received through the above communication interface is divided to obtain a plurality of sub-images, and Gamut mapping is performed on first partial image data corresponding to the plurality of sub-images to map to a second color gamut different from the first color gamut corresponding to the first image, thereby obtaining second image data with a size smaller than the total data size of the first partial image data. An electronic device that controls the display to display a second image corresponding to the first image based on the second image data.
2. In Paragraph 1, When the above instructions are executed individually or collectively by the at least one processor, the electronic device, An electronic device for obtaining a plurality of sub-images by dividing a first image so that the plurality of sub-images have the same size and resolution.
3. In Paragraph 1, When the above instructions are executed individually or collectively by the at least one processor, the electronic device, Color gamut mapping is performed on the first partial image data to obtain the second partial image data, and An electronic device that acquires the second image data based on the second partial image data.
4. In Paragraph 3, When the above instructions are executed individually or collectively by the at least one processor, the electronic device, Each of the above plurality of sub-images is decoded to obtain the first partial image data, and An electronic device that performs color gamut mapping on the first partial image data to obtain the second partial image data.
5. In Paragraph 4, An electronic device in which the second color depth of the second color gamut in a plurality of pixels of the plurality of sub-images is lower than the first color depth of the first color gamut.
6. In Paragraph 5, The first partial image data obtained above includes a plurality of first color values including R (Red), G (Green), and B (Blue) values in the plurality of pixels, and Each of the above plurality of first color values includes a first number of bits corresponding to the first color depth, and An electronic device in which a plurality of second color values of the second part image data each include a second number of bits corresponding to the second color depth, and the second number is smaller than the first number.
7. In Paragraph 6, Each of the above plurality of first color values includes 8 bits, and The above plurality of second color values include R, Y (Yellow), B, and W (White) values in a plurality of pixels, and An electronic device in which the second color gamut includes six colors based on the R, Y, B, and W values.
8. In Paragraph 1, When the above instructions are executed individually or collectively by the at least one processor, the electronic device, An electronic device that performs sequential color gamut mapping based on the spatial position of a plurality of sub-images for first partial image data corresponding to each of the plurality of sub-images.
9. In Paragraph 1, When the above instructions are executed individually or collectively by the at least one processor, the electronic device, Based on a post-processing process for improved image quality of the second image data, third image data having a size smaller than the size of the first partial image data is obtained, and An electronic device that controls the display to display a third image corresponding to the third image data.
10. In Paragraph 1, When the above instructions are executed individually or collectively by the at least one processor, the electronic device, Based on a block mode in which the first image is divided into multiple parts, color gamut mapping is performed on the first partial image data to obtain the second image data, and Through the communication interface above, receive user operation input for switching from block mode to full mode, and An electronic device that, upon receiving the above user operation input, decodes the first image to obtain fourth image data and performs color gamut mapping on the fourth image data to obtain second image data.
11. In a method for controlling an electronic device, A step of obtaining a plurality of sub-images by dividing a first image received through a communication interface; A step of performing gamut mapping for mapping a first partial image data corresponding to the plurality of sub-images to a second color gamut different from a first color gamut corresponding to the first image, thereby obtaining second image data of a size smaller than the total data size of the first partial image data; and A control method comprising the step of displaying a second image corresponding to the first image based on the second image data.
12. In Paragraph 11, The step of acquiring the plurality of sub-images above is, A control method comprising the step of obtaining the plurality of sub-images by dividing the image such that the plurality of sub-images have the same size and resolution.
13. In Paragraph 11, The step of acquiring the second image data above is, A step of obtaining second partial image data by performing color gamut mapping on the first partial image data; and A control method comprising the step of acquiring the second image data based on the second partial image data.
14. In Paragraph 13, The step of acquiring the above-mentioned second partial image data is, A step of obtaining the first partial image data by decoding each of the plurality of sub-images; and A control method comprising the step of obtaining the second partial image data by performing color gamut mapping on the first partial image data.
15. In a computer-readable storage medium having at least one instruction recorded thereon, when the at least one instruction is executed individually or collectively by at least one processor, the at least one processor, A first image received through a communication interface is divided to obtain a plurality of sub-images, and Gamut mapping is performed on first partial image data corresponding to the plurality of sub-images to map to a second color gamut different from the first color gamut corresponding to the first image, thereby obtaining second image data with a size smaller than the total data size of the first partial image data. A non-transient computer-readable recording medium that displays a second image corresponding to the first image based on the second image data.