Demura compensation value compression method and device, electronic equipment, storage medium and computer program product

By compressing the Demura compensation values ​​in grayscale order and dividing the data into blocks, and calculating the difference and gain coefficient, the problem of improving the compression ratio of the Demura algorithm is solved, achieving a higher compression ratio and saving storage resources.

CN120935342APending Publication Date: 2025-11-11GLENFLY TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511211784.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-08-27
Publication Date
2025-11-11

AI Technical Summary

Technical Problem

The Demura algorithm in the current technology has difficulty improving the compression ratio, which leads to an increase in storage resource requirements, especially on large-size panels where the storage resource requirements increase significantly.

Method used

The compensation values ​​of a specified number of bound gray levels in the image are compressed in ascending order of gray level values. The compensation value of each color channel is divided into multiple non-overlapping data blocks. The average value and difference of each data block are calculated. Gray level reconstruction and error data block processing are performed using the first-level attenuation value and the neighbor compensation value gain coefficient.

Benefits of technology

It significantly improves the compression rate of Demura compensation values, reduces the mura phenomenon in bound grayscale, saves storage resources, and improves the storage efficiency of display driver chips.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120935342A_ABST
    Figure CN120935342A_ABST
Patent Text Reader

Abstract

The invention relates to a Demura compensation value compression method and device, electronic equipment, a storage medium and a computer program product. The Demura compensation value compression method comprises the following steps of: compressing compensation values of a specified number of binding point gray scales of an image according to a sequence of gray scale values from small to large, and in the compression process, before the compensation values are compressed, aiming at the compensation value of each binding point gray scale, carrying out compression on the binding point gray scales; dividing the compensation value of each color channel of the image into a plurality of data blocks which are not overlapped with each other; for each color channel, calculating an average value of each data block; and for each data block, calculating a difference value between the data block and the average value to obtain a primary attenuation value. According to the technical scheme, the compression rate can be increased.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of display technology, specifically to a Demura compensation value compression method, apparatus, electronic device, storage medium, and computer program product. Background Technology

[0002] In related technologies, OLED (Organic Light-Emitting Diode) displays are composed of independent light-emitting sub-pixel devices. The thin-film transistors (TFTs) in the sub-pixel devices have uncontrollable factors in their manufacturing process. For example, the voltage (Voled) variation between the anode and cathode of the organic light-emitting diode causes mura (due to the limitations of the manufacturing process of OLED screens, each pixel displays uneven brightness at the same gray level, which we call the mura effect). The threshold voltage and mobility of low-temperature polycrystalline silicon TFTs are non-uniform, resulting in the mura phenomenon of uneven brightness.

[0003] The Demura (removing mura) compensation algorithm has become an effective method to enhance and repair display performance, and is widely used in display driver chips from manufacturers. The Demura algorithm acquires a brightness map across 0-255 gray levels, obtains the correct display brightness based on the brightness variation relationship at different gray levels, and fits the corresponding relationship curve to correct different pixel values. Due to the limitations of chip storage resources, the compensation value data that the Demura algorithm needs to store must be compressed. The amount of data burned increases significantly with the increase in panel size. Taking a 2560x1600 panel as an example, assuming that compensation values ​​for 3 gray levels need to be stored, and each compensation value is 6 bits, then storing the compensation values ​​for the three RGB channels requires a total of 221.184Mb of storage resources.

[0004] To save storage resources and reduce chip costs, the compensation value is usually compressed, and the compressed binary bit stream is burned into the memory (e.g., ROM, SRAM, and flash) on the display driver chip.

[0005] Among related technologies, the Demura algorithm can achieve compression ratios of over 10 times, but further increasing the compression ratio becomes extremely difficult. Therefore, how to further improve the compression ratio of the Demura algorithm is a technical problem that needs to be solved. Summary of the Invention

[0006] The technical problem solved by this application is to provide a Demura compensation value compression method, apparatus, electronic device, storage medium, and computer program product that can improve the compression ratio.

[0007] According to a first aspect of the embodiments of this application, a Demura compensation value compression method is provided, comprising: compressing the compensation values ​​of a specified number of bound gray levels of an image in ascending order of gray level values, wherein, before compressing the compensation values, for each bound gray level, the compensation values ​​of each color channel of the image are divided into multiple non-overlapping data blocks; for each color channel, the average value of each data block is calculated; and for each data block, the difference between the data block and the average value is calculated to obtain a first-level attenuation value.

[0008] In one implementation, compressing the compensation values ​​of a specified number of bound point gray levels of the image in ascending order of gray level values ​​includes: compressing the compensation values ​​of all color channels of the image as a whole for each bound point gray level.

[0009] In one implementation, after calculating the difference between the data block and the average value for each data block to obtain a first-level attenuation value, the method further includes: for each data block of each binding point grayscale (excluding the maximum grayscale value) among a specified number of binding point grayscales, calculating the neighbor compensation value gain coefficient of the data block of the next binding point grayscale relative to the data block; for binding point grayscales among a specified number of binding point grayscales where the grayscale value is greater than the minimum grayscale value, obtaining the grayscale reconstructed data sub-block of the previous binding point grayscale; the grayscale reconstructed data sub-block includes a reconstructed value; calculating the product of the reconstructed value of the data sub-block of the previous binding point grayscale and the neighbor compensation value gain coefficient to obtain a reference data sub-block; the reference data sub-block includes a reference value; calculating the difference between the data sub-block of the current binding point grayscale and the reference data sub-block to obtain an error data sub-block; the error data sub-block includes an error value.

[0010] In one implementation, the step of calculating the neighbor compensation gain coefficient of the data block of the next bound gray level relative to the data block for each data block of each bound gray level includes: calculating the sum of the first-level attenuation values ​​of the data block for each data block of each bound gray level to obtain a first sum, and calculating the sum of the first-level attenuation values ​​of the data block of the next bound gray level to obtain a second sum; and calculating the ratio of the second sum to the first sum to obtain the neighbor compensation gain coefficient.

[0011] In one implementation, within the same color channel, the difference between the compensated grayscale values ​​of different binding point grayscales and the original grayscale values ​​has the same sign.

[0012] According to a second aspect of the embodiments of this application, a Demura compensation value compression apparatus is provided, configured to compress the compensation values ​​of a specified number of bound-point grayscale values ​​of an image in ascending order of grayscale values. The apparatus includes: a partitioning module, a first calculation module, and a second calculation module. The partitioning module is configured to, before compressing the compensation values ​​during the compression process, divide the compensation values ​​of each color channel of the image into multiple non-overlapping data blocks for each bound-point grayscale value. The first calculation module is configured to calculate the average value of each data block for each color channel. The second calculation module is configured to calculate the difference between the data block and the average value for each data block to obtain a first-level attenuation value.

[0013] In one embodiment, the Demura compensation value compression device further includes: a third calculation module, an acquisition module, a fourth calculation module, and a fifth calculation module; the third calculation module is configured to calculate, for each data block of each binding point grayscale other than the maximum grayscale value in a specified number of binding point grayscales, the neighbor compensation value gain coefficient of the next binding point grayscale relative to the data block; the acquisition module is configured to acquire, for binding point grayscales with grayscale values ​​greater than the minimum grayscale value in a specified number of binding point grayscales, the grayscale reconstructed data sub-block of the previous binding point grayscale; the grayscale reconstructed data sub-block includes a reconstructed value; the fourth calculation module is configured to calculate the product of the reconstructed value of the data sub-block of the previous binding point grayscale and the neighbor compensation value gain coefficient to obtain a reference data sub-block; the reference data sub-block includes a reference value; the fifth calculation module is configured to calculate the difference between the data sub-block of the current binding point grayscale and the reference data sub-block to obtain an error data sub-block; the error data sub-block includes an error value.

[0014] According to a third aspect of the embodiments of this application, an electronic device is provided, including a memory and a processor, wherein the memory is used to store a computer program executable by the processor; and the processor is used to execute the computer program in the memory to implement the method described above.

[0015] According to a fourth aspect of the embodiments of this application, a computer-readable storage medium is provided, on which a computer program is stored, which, when executed by a processor, can implement the above-described method.

[0016] According to a fifth aspect of the embodiments of this application, a computer program product is provided, including a computer program that, when executed by a processor, implements the above-described method.

[0017] Compared with the prior art, the beneficial effects of this application are as follows: the compensation values ​​of a specified number of bound gray levels of the image are compressed in ascending order of gray level values. During the compression process, before compressing the compensation values, for each bound gray level, the compensation values ​​of each color channel of the image are divided into multiple non-overlapping data blocks. For each color channel, the average value of each data block is calculated. For each data block, the difference between the data block and the average value is calculated to obtain a first-level attenuation value. In this way, the fluctuation range of the compensation value of each bound gray level can be reduced, the mura phenomenon of each bound gray level can be weakened, and the compression ratio can be improved.

[0018] Furthermore, for each bound gray level, the compensation values ​​of all color channels of the image are compressed as a whole without splitting the compensation values ​​of each bound gray level. This is because if the compensation values ​​of each bound gray level are split and then compressed, it is impossible to form a reconstructed value within one compression cycle to perform Mura attenuation on the compensation values ​​of the bound gray levels with higher gray levels.

[0019] Furthermore, for each data block, the difference between the data block and the average value is calculated to obtain the first-level attenuation value. Then, for each data block of each bound gray level, the neighbor compensation value gain coefficient of the data sub-block of the next bound gray level relative to the data block is calculated. For bound gray levels with gray levels greater than the minimum gray level value among a specified number of bound gray levels, the gray level reconstruction data sub-block of the previous bound gray level is obtained. The gray level reconstruction data sub-block includes the reconstruction value. The product of the reconstruction value of the data sub-block of the previous bound gray level and the neighbor compensation value gain coefficient is calculated to obtain the reference data sub-block. The reference data sub-block includes the reference value. The difference between the data sub-block of the current bound gray level and the reference data sub-block is calculated to obtain the error data sub-block. The error data sub-block includes the error value. In this way, the fluctuation range of the compensation value of bound gray levels with gray levels greater than the minimum gray level value can be further reduced, and the mura phenomenon of bound gray levels with gray levels greater than the minimum gray level value can be significantly reduced, which can significantly improve the compression ratio. Attached Figure Description

[0020] Figure 1 This is a flowchart illustrating a Demura compensation value compression method according to an exemplary embodiment.

[0021] Figure 2 This is a flowchart illustrating a Demura compensation value compression method according to another exemplary embodiment.

[0022] Figure 3 This is a flowchart illustrating a Demura compensation value compression method according to another exemplary embodiment.

[0023] Figure 4This is a schematic diagram illustrating the encoding result of a mode that introduces skip encoding, according to an exemplary embodiment.

[0024] Figure 5 This is a flowchart illustrating a Demura compensation value compression method according to another exemplary embodiment.

[0025] Figure 6 This is a schematic diagram illustrating a residual data block according to an exemplary embodiment.

[0026] Figure 7 yes Figure 6 A schematic diagram of the significant values ​​of the residual data block shown.

[0027] Figure 8-13 This is a schematic diagram illustrating six feature map templates according to an exemplary embodiment.

[0028] Figure 14 This is a block diagram illustrating a Demura compensation value compression device according to an exemplary embodiment.

[0029] Figure 15 This is a flowchart illustrating a Demura compensation value compression method according to another exemplary embodiment.

[0030] Figure 16 This is a flowchart illustrating a Demura compensation value compression method according to another exemplary embodiment.

[0031] Figure 17 This is a schematic diagram of an input image obtained by secondary attenuation of the compensation value based on the gray level of the second binding point, according to an exemplary embodiment.

[0032] Figure 18 This is a schematic diagram illustrating the brightness distribution of pixels within a data block according to an exemplary embodiment.

[0033] Figure 19 This is a schematic diagram illustrating the relationship between the luminance and grayscale of sub-pixels in each color channel, according to an exemplary embodiment.

[0034] Figure 20 This is a block diagram illustrating a Demura compensation value compression device according to an exemplary embodiment.

[0035] Figure 21 This is a block diagram illustrating a Demura compensation value compression device according to another exemplary embodiment.

[0036] Figure 22 This is a flowchart illustrating a Demura compensation value compression method according to an exemplary embodiment.

[0037] Figure 23 This is a flowchart illustrating a Demura compensation value compression method according to another exemplary embodiment.

[0038] Figure 24 This is a flowchart illustrating a Demura compensation value compression method according to another exemplary embodiment.

[0039] Figure 25 This is a flowchart illustrating a Demura compensation value compression method according to another exemplary embodiment.

[0040] Figure 26 This is a flowchart illustrating a Demura compensation value compression method according to another exemplary embodiment.

[0041] Figure 27 This is a schematic diagram illustrating the index values ​​of sub-pixels in a data block according to an exemplary embodiment.

[0042] Figure 28 This is a flowchart illustrating a Demura compensation value compression method according to another exemplary embodiment.

[0043] Figure 29 This is a flowchart illustrating a Demura compensation value compression method according to another exemplary embodiment.

[0044] Figure 30 This is a block diagram illustrating a Demura compensation value compression device according to an exemplary embodiment.

[0045] Figure 31 This is a block diagram illustrating an electronic device according to an exemplary embodiment. Detailed Implementation

[0046] Unless otherwise defined, the technical or scientific terms used in this specification and claims shall have the ordinary meaning understood by one of ordinary skill in the art to which this application pertains. Specific embodiments of this application will be described below in conjunction with the accompanying drawings. It should be noted that, in order to provide a concise description, this specification cannot exhaustively describe all features of the actual embodiments. Without departing from the spirit and scope of this application, those skilled in the art can modify and substitute the embodiments of this application, and the resulting embodiments are also within the protection scope of this application.

[0047] Before detailing the Demura compensation value compression method provided in the embodiments of this application, let's first briefly introduce the general process of the Demura compensation value compression method.

[0048] In this application, the specified number is 3, but it is not limited to this.

[0049] like Figure 1 As shown, in this application, the compensation values ​​B1, B2, and B3 of the three binding point gray levels of the image are compressed. These three binding point gray levels include a first binding point gray level, a second binding point gray level, and a third binding point gray level. The gray level value of the first binding point gray level is less than the gray level value of the second binding point gray level, and the gray level value of the second binding point gray level is less than the gray level value of the third binding point gray level. For example, the first, second, and third binding point gray levels can be 32, 64, and 192, respectively, but are not limited to these.

[0050] In this application, the color channels of the image may include a red channel, a green channel, and a blue channel, and the image includes pixels arranged in an array, each pixel including a red sub-pixel, a green sub-pixel, and a blue sub-pixel, but is not limited thereto.

[0051] like Figure 1 As shown in this application, when compressing the compensation values ​​B1, B2 and B3 of the three binding point gray levels, the compensation value B1 of the first binding point gray level with a gray level value of 32 is compressed first, and then the compensation values ​​B2 of the second binding point gray level with a gray level value of 64 and the compensation value B3 of the third binding point gray level with a gray level value of 192 are compressed in sequence.

[0052] In this application, the compensation value B1 of the first bound-point grayscale with a grayscale value of 32 includes the grayscale compensation values ​​of the red sub-pixels, the green sub-pixels, and the blue sub-pixels. The compensation value B2 of the second bound-point grayscale with a grayscale value of 64 includes the grayscale compensation values ​​of the red sub-pixels, the green sub-pixels, and the blue sub-pixels. The compensation value B3 of the third bound-point grayscale with a grayscale value of 192 includes the grayscale compensation values ​​of the red sub-pixels, the green sub-pixels, and the blue sub-pixels.

[0053] Here, let's clarify the definition of Demura compression ratio. The compressed input is defined as the compensation values ​​of the image at the first, second, and third binding point grayscale levels. The image size is W*H, where W is the image width and H is the image height. The storage capacity for each compensation value in each color channel is 8 bits. Assuming the compressed binary bitstream is K bits, the compression ratio (r) is calculated using the following formula: (1) like Figure 1 As shown, when compressing the compensation value B1 of the first binding point grayscale with a grayscale value of 32, the following steps S1~S9 are included: Step S11, First-order attenuation. The details of first-order attenuation will be provided below.

[0054] Step S12, Spatial Compression. Spatial compression refers to inputting the compensation value after first-stage attenuation into the spatial sampling model for downsampling to obtain the spatial sampled value.

[0055] Step S13, prediction. Prediction refers to model prediction, specifically, inputting the compensation value after the first-level attenuation into the prediction model for processing to obtain multiple model feature values.

[0056] Step S14, Residual Transformation. Residual transformation refers to performing residual transformation on the feature values ​​of multiple modes separately to obtain a set of residual values.

[0057] Step S15, Reconstruction. Reconstruction in this step refers to reconstructing the data based on the spatial sampled values ​​and residual values ​​to obtain the first reconstructed value.

[0058] Step S16, Syntax Element Encoding. Syntax element encoding in this step refers to encoding syntax elements based on the spatial domain sampled values ​​and residual values ​​to obtain the first set of syntax element codes.

[0059] Step S17, Bitrate Control. Details regarding bitrate control will be provided below.

[0060] Step S18, mode selection. Mode selection refers to selecting the optimal compression encoding mode based on the first reconstructed value, the first syntax element encoding set, and the bitrate control result.

[0061] Step S19, Syntax Element Encoding. Syntax element encoding in this step refers to encoding syntax elements using the optimal compression encoding mode.

[0062] like Figure 1 As shown, after compressing the compensation value B1 of the first binding point grayscale with a grayscale value of 32, the next step is to compress the compensation value B2 of the second binding point grayscale with a grayscale value of 64. Specifically, this may include the following steps S20~S211: Step S20, Reconstruction. Reconstruction in this step refers to reconstructing the compensation value B1 of the first binding point grayscale with a grayscale value of 32 using the optimal compression encoding mode, to obtain the second reconstructed value B1'.

[0063] Step S21, First-order attenuation. The details of first-order attenuation will be provided below.

[0064] Step S210, Secondary Attenuation. Secondary attenuation refers to attenuation based on the result of primary attenuation and the second reconstructed value B1'. The relevant content of secondary attenuation will be described in detail below.

[0065] Step S22, Spatial Compression. Spatial compression refers to downsampling the data after secondary attenuation into the spatial sampling model to obtain spatial sampled values.

[0066] Step S23, Prediction. Prediction refers to model prediction, specifically based on the data after second-order attenuation. If the data after second-order attenuation meets the specified threshold range, proceed to step S211; otherwise, proceed to step S24. The details of model prediction in this step will be explained in detail below.

[0067] Step S211, skip encoding.

[0068] Step S24: Residual Transformation Based on Feature Maps. Residual transformation refers to performing residual transformation using residual encoding based on salient feature maps. The details of feature map-based residual transformation will be provided below.

[0069] Steps S25 to S29 are similar to steps S15 to S19 described above, and will not be repeated here.

[0070] like Figure 1 As shown, after compressing the compensation value B2 of the second binding point grayscale with a grayscale value of 64, the next step is to compress the compensation value B3 of the third binding point grayscale with a grayscale value of 192, which may include steps S30 to S311. Steps S30 to S311 are similar to steps S20 to S211 described above, and will not be repeated here. The third reconstructed value B2' is obtained by reconstructing the compensation value B2 of the second binding point grayscale with a grayscale value of 64 using the optimal compression coding mode.

[0071] The Demura compensation value compression method in this application has been introduced in general above. The Demura compensation value compression method in this application will be described in detail below.

[0072] One embodiment of this application provides a method for compressing Demura compensation values. This Demura compensation value compression method can be applied to electronic devices such as image processors and display driver chips. Please refer to... Figure 2 The Demura compensation value compression method may include the following steps S101 to S102, where the content of steps S101 to S102 is the bitrate control described above.

[0073] Step S101: Compress the compensation values ​​of a specified number of bound gray levels of the image in ascending order of gray level values. During the compression process, for each bound gray level compensation value, before compressing the compensation value, determine the first storage capacity budget for each color channel based on the storage capacity of the memory on the display driver chip, the preset compression ratio, the gray level weight of each bound gray level, and the channel weight of each color channel.

[0074] In this embodiment, the compensation values ​​of the three binding point gray levels of the image are compressed in ascending order of gray level values. During the compression process, before compressing the compensation value of each binding point gray level, the first storage capacity budget for each color channel is determined based on the storage capacity of the memory on the display driver chip, the preset compression ratio, the gray level weight of each binding point gray level, and the channel weight of each color channel.

[0075] In this embodiment, the grayscale weight of the first binding point grayscale is greater than that of the second binding point grayscale, and the grayscale weight of the third binding point grayscale is the same as that of the first binding point grayscale. For example, the grayscale weight of the first binding point grayscale is 0.4, the grayscale weight of the second binding point grayscale is 0.2, and the grayscale weight of the third binding point grayscale is 0.4.

[0076] Since the first binding point grayscale is at a lower grayscale level, more accurate compression of the compensation value requires more storage resources; otherwise, the compressed data will have a large error. Therefore, assigning a larger grayscale weight to the first binding point grayscale can reduce the error in the compressed data.

[0077] In this embodiment, the channel weight of the green channel is greater than the channel weight of the red channel, and the channel weight of the red channel is greater than the channel weight of the blue channel. The channel weight of the green channel is 0.5, the channel weight of the red channel is 0.3, and the channel weight of the blue channel is 0.2.

[0078] Based on the human eye's attention mechanism and sensitivity to color brightness, users perceive different levels of mura in the red, green, and blue channels. Generally, the mura in the green channel is perceived more strongly than that in the red and blue channels, and the mura in the red channel is perceived more strongly than that in the blue channel. Therefore, the channel weight of the green channel is greater than that of the red channel, and the channel weight of the red channel is greater than that of the blue channel. This can maximize the encoding quality of the green channel and thus reduce the user's perception of mura.

[0079] Taking the first bound grayscale with a grayscale value of 32 as an example, calculate the initial storage capacity budget for each color channel: (2) Where Knot32R_BitsBudget is the first storage capacity budget for the red color channel, romBitSize is the storage capacity of the memory on the display driver chip, r is the compression ratio, and Knot... w32 R is the grayscale weight of the first binding point grayscale with a grayscale value of 32. w This represents the channel weight for the red color channel.

[0080] (3) Wherein, Knot32G_BitsBudget is the first storage capacity budget for the green color channel, G w This represents the channel weight for the green color channel.

[0081] (4) Wherein, Knot32B_BitsBudget is the first storage capacity budget for the blue color channel, B w This represents the channel weight for the blue color channel.

[0082] The calculation method for the first storage capacity budget of each color channel of the second bound grayscale with a grayscale value of 64 and the first storage capacity budget of each color channel of the third bound grayscale with a grayscale value of 192 is similar to that for the first storage capacity budget of the first bound grayscale with a grayscale value of 32.

[0083] Step S102: For each color channel, determine the second storage capacity budget for each data sub-block based on the first storage capacity budget and the number of data sub-blocks; wherein, when compressing the compensation value, the compensation value of the image is divided into data blocks according to the first size, and the data blocks are divided into data sub-blocks according to the second size, wherein the second size is smaller than the first size.

[0084] In this embodiment of the application, when compressing the compensation value of the grayscale of the bound points, for each color channel, the compensation value is first divided into non-overlapping data blocks according to a first size, and the data blocks are then divided into non-overlapping data sub-blocks according to a second size, wherein the second size is smaller than the first size.

[0085] For example, the first size is 4*16, and the second size is 4*4. That is, for each color channel, the compensation value is first divided into non-overlapping data blocks of size 4*16, and each data block is then divided into non-overlapping data sub-blocks of size 4*4. The size of the data block is 4*16, and the size of the data sub-block is 4*4, but it is not limited to these.

[0086] In this step, for each color channel, the second storage capacity budget for each data sub-block can be determined based on the first storage capacity budget and the number of data sub-blocks. The specific method is as follows: First, calculate the number of data sub-blocks based on the image size and the size of the data sub-blocks. For example, if the image size is 1600*2560 and the data sub-block size is 4*4, then the number of data sub-blocks is image size / data sub-block size = 400*640.

[0087] Next, for each color channel, a second storage capacity budget for each data sub-block is determined based on the first storage capacity budget and the number of data sub-blocks.

[0088] The second storage capacity budget for the data sub-blocks in the red color channel is as follows: (5) Among them, BLk32R_BitsBudget is the second storage capacity budget for the data sub-block of the red color channel.

[0089] The second storage capacity budget for the data sub-blocks in the green color channel is as follows: (6) Among them, BLk32G_BitsBudget is the second storage capacity budget for the data sub-block of the green color channel.

[0090] The second storage capacity budget for the data sub-blocks in the blue color channel is as follows: (7) Among them, BLk32B_BitsBudget is the second storage capacity budget for the data sub-block of the blue color channel.

[0091] In this embodiment, the compensation values ​​of a specified number of bound gray levels in the image are compressed in ascending order of gray level values. During the compression process, before compressing the compensation value of each bound gray level, a first storage capacity budget for each color channel is determined based on the storage capacity of the memory on the display driver chip, a preset compression ratio, the gray level weight of each bound gray level, and the channel weight of each color channel. Then, for each color channel, a second storage capacity budget for each data sub-block is determined based on the first storage capacity budget and the number of data sub-blocks. When compressing the compensation value, the compensation value of the image is divided into data blocks according to a first size, and the data blocks are divided into data sub-blocks according to a second size, which is smaller than the first size. In this way, the encoding resource consumption of data sub-blocks, the storage resources of each color channel, and the encoding quality of each color channel can be controlled according to the storage capacity of the memory, the preset compression ratio, the gray level weight of each bound gray level, and the channel weight of each color channel, thereby improving the compression effect and compression ratio.

[0092] In this embodiment, for the grayscale level with a grayscale value greater than the minimum grayscale value among the three grayscale levels, after compressing and encoding the compensation value of the previous grayscale level, the remaining storage capacity of each color channel of the previous grayscale level is determined. For each color channel, the remaining storage capacity is the difference between the first storage capacity budget and the storage capacity of the encoded data of the compensation value of the previous grayscale level. For each color channel, a second storage capacity budget for each data sub-block is determined based on the first storage capacity budget, the remaining storage capacity, and the number of data sub-blocks.

[0093] For example, if there is still remaining budget after encoding the compensation value of the first bound-point grayscale with a grayscale value of 32, i.e., there is remaining storage capacity, then the remaining storage capacity of the first bound-point grayscale with a grayscale value of 32 can continue to be used when encoding the compensation value of the second bound-point grayscale with a grayscale value of 64. Therefore, for each color channel, the second storage capacity budget for the data sub-block of the second bound-point grayscale with a grayscale value of 64 is: (8) Wherein, BLk64R_BitsBudget is the second storage capacity budget for the data sub-block at the second binding point grayscale with a grayscale value of 64 for the red color channel, and Knot32R_RemainBitsBudget is the remaining storage capacity for the first binding point grayscale with a grayscale value of 32 for the red color channel.

[0094] (9) Wherein, BLk64G_BitsBudget is the second storage capacity budget for the data sub-block at the second binding point grayscale with a grayscale value of 64 for the green color channel, and Knot32G_RemainBitsBudget is the remaining storage capacity for the first binding point grayscale with a grayscale value of 32 for the green color channel.

[0095] (10) Wherein, BLk64B_BitsBudget is the second storage capacity budget for the data sub-block of the second binding point grayscale with a grayscale value of 64 for the blue color channel, and Knot32B_RemainBitsBudget is the remaining storage capacity for the first binding point grayscale with a grayscale value of 32 for the blue color channel.

[0096] In this embodiment, the channel weight of the green channel is greater than the channel weight of the red channel and the channel weight of the blue channel. The grayscale weight of the first binding point grayscale with a grayscale value of 32 is greater than the grayscale weight of the second binding point grayscale with a grayscale value of 64. Storage resources can be tilted to the first binding point grayscale. At the same time, the encoding quality of the green channel is used as the evaluation criterion as much as possible, which can improve the overall evaluation of compression effect and compression ratio.

[0097] Another embodiment of this application provides a method for compressing Demura compensation values. See also... Figure 3 The Demura compensation value compression method may include the following steps S301 to S306, where the contents of S301 to S306 are the contents of the above steps S23, S211 and S24, or the contents of S33, S311 and S34.

[0098] Step S301: For a specified number of grayscale points with grayscale values ​​greater than the minimum grayscale value, select the optimal compression encoding mode based on the compensation value of the data sub-block of the previous grayscale point according to the second storage capacity budget, and use the optimal compression encoding mode to compress and encode the compensation value of the data sub-block of the previous grayscale point to obtain the grayscale reconstructed data sub-block; the grayscale reconstructed data sub-block includes the reconstructed value.

[0099] In this step, for the second binding point grayscale with a grayscale value of 64, the optimal compression encoding mode is selected based on the compensation value of the data sub-block of the first binding point grayscale with a grayscale value of 32 according to the second storage capacity budget. The compensation value of the data sub-block of the first binding point grayscale with a grayscale value of 32 is compressed and encoded using the optimal compression encoding mode to obtain the grayscale reconstructed data sub-block, which includes the reconstructed value.

[0100] In this step, for the third binding point grayscale with a grayscale value of 192, the optimal compression coding mode is selected based on the compensation value of the data sub-block of the second binding point grayscale with a grayscale value of 64 according to the second storage capacity budget. The compensation value of the data sub-block of the second binding point grayscale with a grayscale value of 64 is compressed and encoded using the optimal compression coding mode to obtain the grayscale reconstructed data sub-block, which includes the reconstructed value.

[0101] Step S302: Calculate the product of the reconstructed value of the previous grayscale data sub-block and the gain coefficient of the neighbor compensation value to obtain the reference data sub-block; the reference data sub-block includes the reference value.

[0102] In this step, for the second binding point grayscale with a grayscale value of 64, the product of the reconstructed value of the data sub-block with a grayscale value of 32 and the neighbor compensation value gain coefficient is calculated to obtain the reference data sub-block; the reference data sub-block includes the reference value. The calculation method of the neighbor compensation value gain coefficient will be introduced below.

[0103] In this step, for the third binding point grayscale with a grayscale value of 192, the product of the reconstructed value of the data sub-block with a grayscale value of 64 and the neighbor compensation value gain coefficient is calculated to obtain the reference data sub-block; the reference data sub-block includes the reference value.

[0104] Step S303: Calculate the difference between the current grayscale data sub-block and the reference data sub-block to obtain the error data sub-block; the error data sub-block includes the error value.

[0105] In this step, for the second binding point grayscale with a grayscale value of 64, the difference between the data sub-block of the second binding point grayscale with a grayscale value of 64 and the reference data sub-block is calculated to obtain the error data sub-block, which includes the error value.

[0106] In this step, for the third binding point grayscale with a grayscale value of 192, the difference between the data sub-block of the third binding point grayscale with a grayscale value of 192 and the reference data sub-block is calculated to obtain the error data sub-block, which includes the error value.

[0107] Step S304: Sum all error values ​​in the error data sub-block to obtain the total error.

[0108] In this step, for each error data sub-block, the sum of all error values ​​in the sub-block is calculated to obtain the total error. Specifically, the absolute values ​​of all error values ​​in the sub-block with an absolute value greater than 1 are summed to obtain the total error. That is, error values ​​between ±1 are ignored, because these values ​​have little impact on the Mura of the second binding point grayscale with a grayscale value of 64 or the third binding point grayscale with a grayscale value of 192.

[0109] Step S305: When the total error is less than the error threshold, skip encoding the data sub-block of the current binding point grayscale.

[0110] In this step, when the total error is less than the error threshold, the encoding of the data sub-block at the current grayscale level is skipped. For example, the error threshold can be 2, but it is not limited to this. In this way, by skipping the encoding of some data sub-blocks, storage resources for compression encoding can be saved, thereby improving the compression ratio.

[0111] like Figure 4 As shown, all blocks in the first gray area 41 employ the skip-encoding mode. For the compensation values ​​of any color channel of the second binding point grayscale with a grayscale value of 64 and the third binding point grayscale with a grayscale value of 192, the more data sub-blocks using the skip-encoding mode, the more storage resources are saved, and the more significant the improvement in compression ratio. The introduction of the skip-encoding mode is mainly to address the issue of further improving the compression ratio.

[0112] Step S306: When the total error is greater than the error threshold, the residual encoding method of the salient feature map is used to perform residual transformation on the data sub-block of the current binding point gray level to obtain residual data sub-block, and the residual data sub-block includes residual value.

[0113] In this step, when the total error exceeds the error threshold, the residual encoding method of the salient feature map is used to perform residual transformation on the data sub-block of the current bound point gray level to obtain residual data sub-blocks, which include residual values.

[0114] like Figure 5 As shown, step S306 may include the following steps S3061 to S3064: Step S3061: Divide the residual data sub-block into data units according to the third size, where the third size is smaller than the second size.

[0115] In this step, the residual data sub-blocks are divided into data units according to a third size, which is smaller than the second size. For example, if the third size is 2*2, a residual data sub-block with a size of 4*4 can be divided into complementary overlapping data units of size 2*2.

[0116] Step S3062: Determine the salient value for each data cell.

[0117] In this step, the significance value of each data unit is determined by calculating the sum of the residuals in each data unit. For each data unit, if the sum of residuals is less than or equal to -2, the significance value of the data unit is -1; if the sum of residuals is greater than or equal to 2, the significance value of the data unit is 1; otherwise, the significance value of the data unit is 0.

[0118] For example Figure 6 Taking residual data block 60, which consists of four residual data sub-blocks 61-64, as an example, Figure 7 As shown, the significant values ​​of the four data units 611 of the residual data sub-block 61 are [1,0,1,0], the significant values ​​of the four data units 621 of the residual data sub-block 62 are [0,-1,0,-1], the significant values ​​of the four data units 631 of the residual data sub-block 63 are [1,1,1,-1], and the significant values ​​of the four data units 641 of the residual data sub-block 64 are [0,1,0,-1].

[0119] Step S3063: Determine the filling position and filling value of each data unit based on the feature map template of the preset number of filling value distributions.

[0120] In this step, such as Figure 8-13As shown, six feature map templates 81-86 are defined for different padding value distributions. Each template includes a first region 811 and a second region 812. The first region 811 indicates that the padding value at the corresponding padding position is a significant value of the data unit, and the second region 812 indicates that the corresponding padding position is not filled. Feature map template 81 indicates that the data to be encoded is 0, feature map template 82 indicates that the data to be encoded is -1, feature map template 83 indicates that the data to be encoded is -2, feature map template 84 indicates that the data to be encoded is 1, feature map template 85 indicates that the data to be encoded is 2, and feature map template 86 indicates that the data to be encoded is 3.

[0121] For residual data sub-block 61, the first 2*2 data unit 611 is [0,0,1,1], with a significance value of 1. Therefore, this data unit 611 should be filled with 1s, but not entirely. The defined feature map template 81 is most similar to the first 2*2 data unit 611. Therefore, the filling position and filling value of the first 2*2 data unit 611 are determined according to the feature map template 81. Specifically, the filling value of the filling position corresponding to the first region 811 is 1, and the filling position corresponding to the second region 812 is not filled. This process continues, determining the filling position and filling value within each data unit based on the feature map templates with six different filling value distributions.

[0122] For residual data sub-block 61, the data to be encoded is [1,-1]; for residual data sub-block 62, the data to be encoded is [0,0]; for residual data sub-block 63, the data to be encoded is [3,-1,-1,0]; and for residual data sub-block 64, the data to be encoded is [3,0]. It is important to emphasize that when the significant value of a 2x2 data unit is 0, no padding position needs to be encoded.

[0123] Step S3064: For each data sub-block of the current binding point grayscale, obtain the residual data sub-block based on the saliency value of the data unit and the fill value of the fill position.

[0124] In this step, for each data sub-block of the current binding point grayscale, the residual data sub-block is obtained based on the saliency value of the data cell and the fill value of the fill position.

[0125] For example Figure 6Taking residual data block 60, which consists of four residual data sub-blocks 61 to 64, as an example, the total encoding is as follows: For residual data sub-block 61, the data to be encoded is [1,0,1,0,1,-1]; for residual data sub-block 62, the data to be encoded is [0,-1,0,-1,0,0]; for residual data sub-block 63, the data to be encoded is [1,1,1,-1,3,-1,-1,0]; and for residual data sub-block 64, the data to be encoded is [0,1,0,-1,3, 0].

[0126] In this embodiment, for a specified number of grayscale points where the grayscale value is greater than the minimum grayscale value, the optimal compression coding mode is selected based on the compensation value of the data sub-block of the previous grayscale point according to the second storage capacity budget. The compensation value of the data sub-block of the previous grayscale point is compressed and encoded using the optimal compression coding mode to obtain a grayscale reconstructed data sub-block, which includes the reconstructed value. Then, the product of the reconstructed value of the data sub-block of the previous grayscale point and the gain coefficient of the neighbor compensation value is calculated to obtain a reference data sub-block, which includes the reference value. Then, the difference between the data sub-block of the current grayscale point and the reference data sub-block is calculated to obtain an error data sub-block, which includes the error value. Then, the sum of all error values ​​in the error data sub-block is calculated to obtain the total error. When the total error is less than the error threshold, the encoding of the data sub-block of the current grayscale point is skipped. In this way, by skipping the encoding of some data sub-blocks, storage compression coding resources can be saved, thereby improving the compression ratio.

[0127] For this Mura phenomenon, the compensation values ​​within each data block exhibit a random discrete distribution. Therefore, based on the transistor's current-driven light emission characteristics, the gray-level-brightness relationship, the inter-neighbor gray-level transitivity of the Mura region distribution, and the same sign of the Demura compensation values ​​between neighboring gray levels, the reconstructed value after compressing and encoding the compensation value of the previous bound-point gray level is multiplied by the neighboring compensation value gain coefficient and compared with the compensation value of the current bound-point gray level to obtain an error data sub-block. The sum of all error values ​​in the error data sub-block is calculated to obtain the total error. When the total error is less than the error threshold, encoding of the current bound-point gray level data sub-block is skipped. When the total error is greater than the error threshold, but the compensation value distribution is mostly ±1 or 0, the residual encoding method of the salient feature map is used to perform residual transformation on the current bound-point gray level data sub-block to obtain a residual data sub-block. Finally, the process proceeds to the mode selection step to select the encoding method with the best performance.

[0128] Another exemplary embodiment of this application also provides a Demura compensation value compression device. For example... Figure 14As shown, in this embodiment, the Demura compensation value compression device is configured to compress the compensation values ​​of a specified number of bound gray levels of the image in ascending order of gray level values. The device includes: The first determining module 141 is configured to, during the compression process, determine the first storage capacity budget for each color channel based on the storage capacity of the memory on the display driver chip, the preset compression ratio, the gray level weight of each binding point gray level, and the channel weight of each color channel before compressing the compensation value for each binding point gray level. The second determining module 142 is configured to determine a second storage capacity budget for each data sub-block based on the first storage capacity budget and the number of data sub-blocks for each color channel; wherein, when compressing the compensation value, the compensation value of the image is divided into data blocks according to a first size, and the data blocks are divided into data sub-blocks according to a second size, the second size being smaller than the first size.

[0129] In related technologies, the compensation values ​​of each grayscale point are split, and the compensation values ​​of each grayscale point in the same color channel are combined to obtain combined data. Then, the combined data of each color channel is compressed and encoded separately, and the compression codes of the compensation values ​​of each color channel are independent of each other. However, improving the compression ratio is very difficult.

[0130] This application provides an embodiment of a Demura compensation value compression method. Please refer to [link to relevant documentation]. Figure 15 The Demura compensation value compression method may include the following steps S1501 to S1503. Steps S1501 to S1503 are the first-level attenuation mentioned above.

[0131] Step S1501: Compress the compensation values ​​of a specified number of bound point gray levels of the image in ascending order of gray level values. During the compression process, before compressing the compensation values, for each bound point gray level, the compensation values ​​of each color channel of the image are divided into multiple non-overlapping data blocks.

[0132] In this embodiment, the compensation values ​​of a specified number of bound-point grayscale values ​​in the image are compressed in ascending order of grayscale value. Before compression, for each bound-point grayscale value, the compensation value for each color channel of the image is divided into multiple non-overlapping data blocks. Specifically, the compensation value for each color channel of the image can be divided into data blocks according to a first size.

[0133] Step S1502: For each color channel, calculate the average value of each data block.

[0134] In this step, the average value of each data block is calculated for each color channel. For example, if the first size is 4*16, the average value of each data block for the green channel is calculated by averaging the 64 compensation values ​​in each data block.

[0135] Step S1503: For each data block, calculate the difference between the data block and the average value to obtain the first-level attenuation value.

[0136] In this step, for each data block, the difference between the data block and the average value is calculated to obtain the first-level attenuation value. Specifically, for each data block, the difference between each compensation value in the data block and the average value of the data block is calculated to obtain the first-level attenuation value of the compensation value. In this way, the fluctuation range of the compensation value of each binding point grayscale can be reduced, the mura phenomenon of each binding point grayscale can be weakened, and the compression ratio can be improved.

[0137] Furthermore, for each bound gray level, the compensation values ​​of all color channels of the image are compressed as a whole without splitting the compensation values ​​of each bound gray level. This is because if the compensation values ​​of each bound gray level are split and then compressed, it is impossible to form a reconstructed value within one compression cycle to perform Mura attenuation on the compensation values ​​of the bound gray levels with higher gray levels.

[0138] In this application, the basis for first-level attenuation of compensation values ​​in the data block is the Mura brightness simulation map. The severity of Mura is related to the coordinate position of pixels in the original image. Often, pixel brightness differences are small in the center, resulting in lower Mura severity, while pixel brightness differences are larger at the image edges or corners, leading to higher Mura severity. Alternatively, a severe Mura pattern may be continuously distributed in a certain area of ​​the image, and this continuity may involve compensation with the same positive or negative values ​​(for example, for a compensation map with a grayscale value of 32, in each color channel, the compensation value within the same area is either less than 32 or greater than 32). Based on this Mura distribution pattern, first-level attenuation of the compensation values ​​is applied to reduce the fluctuation range of the compressed data.

[0139] In this application, as Figure 1 As shown, the compensation value of the first binding point grayscale with a grayscale value of 32 is compressed and encoded after a first-level attenuation. For the compensation values ​​of the second binding point grayscale with a grayscale value of 64 and the third binding point grayscale with a grayscale value of 192, a first-level attenuation is performed, followed by a second-level attenuation, and then compression encoding. The specific method of the second-level attenuation is as follows... Figure 16 As shown, the process may include the following steps S1601 to S1604: Step S1601: For each data block of each bound point gray level other than the maximum gray level value in a specified number of bound point gray levels, calculate the neighbor compensation value gain coefficient of the data block of the next bound point gray level relative to the data block.

[0140] In this step, for each data block with a first-level binding grayscale value of 32, after first-level attenuation, the neighbor compensation gain coefficient of the data block with a second-level binding grayscale value of 64 is calculated relative to the data block with the first-level binding grayscale after first-level attenuation. The calculation method is as follows: for each data block of each binding grayscale, the sum of the first-level attenuation values ​​of the data block is calculated to obtain the first sum, and the sum of the first-level attenuation values ​​of the data block of the second-level binding grayscale is calculated to obtain the second sum. Then, the ratio of the second sum to the first sum is calculated to obtain the neighbor compensation gain coefficient of the first-level binding grayscale and the second-level binding grayscale. The sum of the first-level attenuation values ​​of the data block refers to the sum of all first-level attenuation values ​​in the data block.

[0141] In this step, for each data block with a gray level of 64 at the second binding point, after the first-level attenuation, the neighbor compensation gain coefficient of the data block with a gray level of 192 at the third binding point is calculated relative to the data block with the second binding point gray level after the first-level attenuation.

[0142] Step S1602: For a specified number of grayscale points with grayscale values ​​greater than the minimum grayscale value, obtain the grayscale reconstruction data sub-block of the previous grayscale point; the grayscale reconstruction data sub-block includes the reconstruction value.

[0143] In this step, such as Figure 1 As shown, for the second binding point grayscale with a grayscale value of 64, the grayscale reconstruction data sub-block of the first binding point grayscale is obtained; the grayscale reconstruction data sub-block includes the reconstructed value. This step is step S20 mentioned above.

[0144] In this step, such as Figure 1 As shown, for the third binding point grayscale with a grayscale value of 192, the grayscale reconstruction data sub-block of the second binding point grayscale is obtained; the grayscale reconstruction data sub-block includes the reconstructed value. This step is step S30 mentioned above.

[0145] Step S1603: Calculate the product of the reconstructed value of the previous grayscale data sub-block and the gain coefficient of the neighbor compensation value to obtain the reference data sub-block; the reference data sub-block includes the reference value.

[0146] In this step, for the second binding point grayscale with a grayscale value of 64, the product of the reconstructed value of the data sub-block of the first binding point grayscale and the gain coefficient of the neighbor compensation value of the second binding point grayscale relative to the first binding point grayscale is calculated to obtain the reference data sub-block; the reference data sub-block includes the reference value.

[0147] In this step, for the third binding point grayscale with a grayscale value of 192, the reconstructed value of the data sub-block of the second binding point grayscale is calculated as the product of the gain coefficient of the neighbor compensation value of the third binding point grayscale relative to the second binding point grayscale, to obtain the reference data sub-block; the reference data sub-block includes the reference value.

[0148] Step S1604: Calculate the difference between the current grayscale data sub-block and the reference data sub-block to obtain the error data sub-block; the error data sub-block includes the error value.

[0149] In this step, for the second binding point grayscale with a grayscale value of 64, the difference between the data sub-block after the first-level attenuation of the second binding point grayscale and the corresponding reference data sub-block is calculated to obtain the error data sub-block; the error data sub-block includes the error value. This error value is the value of the compensation value of the second binding point grayscale after the second-level attenuation.

[0150] In this step, for the third binding point grayscale with a grayscale value of 192, the difference between the data sub-block after the first-level attenuation of the third binding point grayscale and the corresponding reference data sub-block is calculated to obtain the error data sub-block; the error data sub-block includes the error value. This error value is the value of the compensation value of the third binding point grayscale after the second-level attenuation.

[0151] like Figure 17 As shown, the second gray area 171 represents an error value of 0, and the blue area 172 represents an error value between [-1, 1]. Figure 17 The input image is obtained by applying a second-level attenuation to the compensation value of the second binding point grayscale with a grayscale value of 64. Based on this input image, the Mura information of the second binding point grayscale with a grayscale value of 64 can be directly derived.

[0152] Applying a two-stage attenuation to the grayscale levels of the second and third binding points can further reduce the fluctuation range of the compensation value, significantly reduce the mura phenomenon, and substantially improve the compression ratio.

[0153] In this application, the image includes multiple pixels arranged in an array, each pixel including sub-pixels of the red channel, green channel, and blue channel. Within the same color channel, the difference between the compensated grayscale values ​​of different bound-point grayscale values ​​of the same sub-pixel and the grayscale values ​​before compensation has the same sign.

[0154] Therefore, to improve compression efficiency, in the compression system, the compensation values ​​of the red, green, and blue channels of the first binding point grayscale (grayscale value 32) can be compressed as the first step, instead of recombining and compressing the compensation values ​​of the red channels of the first binding point grayscale (grayscale value 32), the second binding point grayscale (grayscale value 64), and the third binding point grayscale (grayscale value 192), and then compressing the compensation values ​​of the green channels of the first, second, and third binding point grayscales, as well as the compensation values ​​of the blue channels of the first, second, and third binding point grayscales. This recombining and compression scheme leads to inaccurate predictions within the data block.

[0155] In this application, the compensation values ​​of the red, green, and blue channels of the first binding point grayscale with a grayscale value of 32 are subjected to a first-level attenuation, and the reconstructed values ​​of the red, green, and blue channels are obtained. Based on the rule that the difference between the compensated grayscale values ​​and the uncompensated grayscale values ​​of different binding point grayscales of the same sub-pixel in the same color channel has the same sign, the reconstructed value of the first binding point grayscale is subtracted from the first-level attenuated data of the compensation values ​​of the red, green, and blue channels of the second binding point grayscale with a grayscale value of 64, resulting in the following: Figure 17 The input image shown can further reduce the irregularity of Mura's distribution, which is beneficial for the compression algorithm to store less syntax element information.

[0156] The following proves the rule that the difference between the compensated grayscale value and the uncompensated grayscale value of the same sub-pixel in the same color channel has the same sign: Currently, AMOLED (Active-matrix organic light-emitting diode) display panels all use independently emitting diodes (sub-pixels). These diodes are driven by corresponding driving circuits, which include TFTs (thin-film transistors). Sub-pixel emission is controlled by the data gate voltage, which regulates the source and drain current of the transistor. This current drives the diode to display different grayscale levels of brightness. The gamma relationship is the relationship between grayscale and brightness formed by the current driving the sub-pixel to emit light at different grayscale levels. The Mura effect, analyzed from the perspective of grayscale and brightness, means that for each sub-pixel, the gamma relationship is not uniform. That is, to display the same grayscale, the brightness of each sub-pixel is not equal, resulting in inconsistent brightness levels. Figure 18 As shown, Figure 18Let X represent the brightness distribution of pixels within a data block, where X is the width of the data block, Y is the height of the data block, and L is the brightness of the pixel.

[0157] The compensation value of any color channel data block in the compensation map (based on the compensation value) of a bound grayscale with a grayscale value of 32 is similar to the actual luminance distribution of the sub-pixels. Figure 18 The brightness distribution shown indicates that there is no similarity between adjacent data blocks as in a typical natural image. It is difficult to predict adjacent data blocks using the following formula: |F(x,y)-( G(x1,y2)+T(x',y'))|, where F(x,y) is the compensation value at coordinate (x,y), G(x1,y2) is the compensation value at coordinate (x1,y2), x1= x, y2= y-1, meaning G(x1,y2) and F(x,y) are in the same column and above F(x,y), and T(x',y') is the compensation value at coordinate (x',y'), x'= x-1, y'= y, meaning F(x,y) and T(x',y') are in the same row and above F(x,y).

[0158] For example, conventional compression coding can minimize the error of |F(x,y)-( G(x1,y2)+T(x',y'))| because the transition between neighboring pixels is natural. However, this derivation relationship is greatly reduced in the Mura compensation map. The sub-pixels within a data block and the sub-pixels of adjacent data blocks are randomly distributed, making it difficult to predict data similar to the original data from adjacent data blocks, thus making compression difficult. The sub-pixels in the compensation map are compensation values.

[0159] In the Demura algorithm, a fitting relationship is made between the diode luminance and the display grayscale corresponding to all sub-pixels within a single color channel. All sub-pixels essentially exhibit the following characteristics: Figure 19 The relationship is shown, where the horizontal axis represents grayscale and the vertical axis represents brightness. Curves 191, 192, and 193 are the relationship curves between grayscale and brightness of the red channel, the green channel, and the blue channel, respectively.

[0160] The following is a brief introduction to the method for calculating the Mura compensation value: First, based on the grayscale-brightness acquisition data, the grayscale-brightness curves of the red, green, and blue channels are calculated.

[0161] Next, at different gray levels, the brightness of the center area of ​​the screen is selected as the standard brightness. The size of the center area of ​​the screen is generally 40*40 pixels.

[0162] Next, the grayscale-brightness relationship of each sub-pixel is calculated based on lum1[i] and lum_mid[i].

[0163] Substitute the brightness (lum_mid[i]) of the central area of ​​the screen at the current gray level into equation (11) to obtain the gray level compensation value of each sub-pixel. lum1[i] is the brightness corresponding to the sub-pixel, and lum_mid[i] is the brightness corresponding to the central area of ​​the screen, i∈[32,64, 128,192,224].

[0164] Let the system of equations be:

[0165] Given the gray level (gray1) and corresponding brightness (lum1[i]) of each sub-pixel, i∈[32,64, 128,192,224], substitute into equation (11) to obtain the parameters gamma1 and b1.

[0166] The brightness (lum_mid[i]) and grayscale (gray[i]) corresponding to the central area of ​​the screen, i∈[16,32,96,160,192,224], are substituted into equation (12) to obtain the parameters gamma and b.

[0167] The grayscale-luminance relationship of the sub-pixels in the red, green, and blue channels is as follows: lg(lum1[i])=gamma1*lg(gray1[i])+b1(11) Substituting the corrected brightness lum_mid[i] of the center area of ​​the screen into equation (11), the gray level difference can be obtained as follows: = – gray[i](13) for Figure 19 The grayscale-luminance relationship of a sub-pixel (Equation (11)) is given. If the luminances lum_mid32, lum_mid64, and lum_mid192 of grayscale values ​​32, 64, and 192 are given, they are substituted into Equation (13) to obtain: (14) (15) For a pixel in the specified standard center area, with a grayscale value of 32, the brightness is determined according to the following formula: (16) Calculated lumi_mid32= (17) in, This represents the brightness of the pixels in the central region when the grayscale value is 32.

[0168] For a pixel in the specified standard center area, with a grayscale value of 32, the brightness is determined according to the following formula: (18) Calculated lumi_mid64= (19) in, This represents the brightness of the pixels in the central region when the grayscale value is 64.

[0169] Will and Substituting into equation (11), we can obtain (20)

[0170] (twenty one) because If the value is always positive, then it can be proved that for any sub-pixel, under the same color channel... Correspondingly Same number.

[0171] Another exemplary embodiment of this application also provides a Demura compensation value compression apparatus, configured to compress the compensation values ​​of a specified number of bound gray levels of an image in ascending order of gray level values. For example... Figure 20 As shown, in this embodiment, the Demura compensation value compression device includes: The partitioning module 2001 is configured to, during the compression process, before compressing the compensation value, divide the compensation value of each color channel of the image into multiple non-overlapping data blocks for the compensation value of each binding point grayscale. The first calculation module 2002 is configured to calculate the average value of each data block for each color channel; The second calculation module 2003 is configured to calculate the difference between the data block and the average value for each data block to obtain a first-level attenuation value.

[0172] In one embodiment, such as Figure 21 As shown, the Demura compensation value compression device further includes: The third calculation module 2101 is configured to calculate the gain coefficient of the neighbor compensation value of the data block of the next binding gray level relative to the data block for each data block of each binding gray level other than the maximum gray level value in a specified number of binding gray levels. The acquisition module 2102 is configured to acquire the grayscale reconstruction data sub-block of the previous grayscale point among a specified number of grayscale points whose grayscale value is greater than the minimum grayscale value; the grayscale reconstruction data sub-block includes the reconstruction value. The fourth calculation module 2103 is configured to calculate the product of the reconstructed value of the previous bound-point grayscale data sub-block and the neighbor compensation value gain coefficient to obtain a reference data sub-block; the reference data sub-block includes a reference value; The fifth calculation module 2104 is configured to calculate the difference between the current grayscale data sub-block and the reference data sub-block to obtain an error data sub-block; the error data sub-block includes an error value.

[0173] This application provides an embodiment of a Demura compensation value compression method. Please refer to [link to relevant documentation]. Figure 22 The Demura compensation value compression method may include the following steps S2201 to S2202: Step S2201: For each color channel of the image, combine the compensation values ​​of a specified number of bound point gray levels into a first array. Specifically, for each color channel of the image, the compensation values ​​of different bound point gray levels of the same sub-pixel have the same sign.

[0174] Step S2202: Perform statistical compression encoding based on the first array.

[0175] The Demura compensation value compression method in this embodiment is different from the Demura compensation value compression method described above.

[0176] In this embodiment, for the red channel, the compensation values ​​of the first binding point grayscale, the second binding point grayscale, and the third binding point grayscale are combined to obtain the corresponding first array. In the red channel, the compensation values ​​of the first binding point grayscale, the second binding point grayscale, and the third binding point grayscale for the same sub-pixel have the same sign.

[0177] For the green channel, the compensation values ​​of the first, second, and third binding point gray levels are combined to obtain the corresponding first array. In the green channel, the compensation values ​​of the first, second, and third binding point gray levels of the same sub-pixel have the same sign.

[0178] For the blue channel, the compensation values ​​of the first, second, and third binding point gray levels are combined to obtain the corresponding first array. In the blue channel, the compensation values ​​of the first, second, and third binding point gray levels for the same sub-pixel have the same sign.

[0179] Then, statistical compression encoding is performed based on the first array of all color channels.

[0180] Since the compensation values ​​of each bound point grayscale in the same color channel have the same sign, the compensation values ​​of each bound point grayscale in the same color channel are combined to obtain the first array. Then, statistical compression encoding is performed based on the first array, which can reduce the number of baseline global data groups and thus improve the compression ratio.

[0181] In step S2202, Huffman coding can be performed based on the first array.

[0182] Taking the red channel in the 1600*2560 compensation map as an example, the compensation values ​​of the first binding point grayscale with a grayscale value of 32, the second binding point grayscale with a grayscale value of 64, and the third binding point grayscale with a grayscale value of 192 show a trend of gradually decreasing from 0 to both positive and negative ends. The specific statistics are shown in Table 1 below.

[0183] Table 1. Distribution of compensation values ​​for different gray levels in the red channel.

[0184] In Table 1, 32R represents the compensation value of the first binding point grayscale with a grayscale value of 32, 64R represents the compensation value of the second binding point grayscale with a grayscale value of 64, and 192R represents the compensation value of the third binding point grayscale with a grayscale value of 192.

[0185] As shown in Table 1, the compensation values ​​of the first binding point grayscale are largely concentrated in the range of [-2,2], the second binding point grayscale are largely concentrated in the range of [-3,3], and the third binding point grayscale are largely concentrated in the range of [-4,4]. This distribution is determined by the grayscale-brightness relationship when the sub-pixel is driven to emit light. The first binding point grayscale has low brightness, requiring less current to drive the sub-pixel to emit light, and its fluctuations due to process defects are small. The third binding point grayscale has high brightness, requiring more current to drive the sub-pixel to emit light, and its fluctuations due to process defects are large.

[0186] Using Huffman coding in statistical coding requires the Huffman tree to have 3 or 4 layers, and the constructed Huffman coding index to be 8 or 16. To reduce the range of data fluctuation, the ratio of the number of data points composed of compensation values ​​of different binding point gray levels within the same color channel to the number of pixels in the image can be greater than a preset threshold, but less than 1.

[0187] In one embodiment, such as Figure 23 As shown, step S2202 may include the following steps S2301~S2302: Step S2301: Construct a Huffman table based on the first array; wherein, the Huffman table includes the index value of the target sub-pixel, the compensation value of different binding point gray levels and statistics; the statistics of the compensation values ​​of different binding point gray levels of the target sub-pixel are arranged in descending order, the index value of the target sub-pixel increases as the statistics decrease; the ratio of the sum of the statistics of the target sub-pixel to the number of pixels in the image is greater than a preset threshold.

[0188] In this step, statistics are performed on the first array of all color channels, and a Huffman table is constructed based on the statistical results. The Huffman table includes the index value of the target sub-pixel, the compensation values ​​for different grayscale levels at different binding points, and statistical measures. In the Huffman table, the statistical measures of the compensation values ​​for different grayscale levels at different binding points of the target sub-pixel are arranged in descending order, and the index value of the target sub-pixel increases as the statistical measure decreases. The ratio of the sum of the statistical measures of the target sub-pixels to the number of pixels in the image is greater than a preset threshold, which is less than 1. For example, the preset threshold can be 0.7, but it is not limited to this.

[0189] Since the ratio of the sum of the statistics of the target sub-pixels to the number of pixels in the image is less than 1, the fluctuation range of the cross data can be reduced, thereby improving the compression ratio.

[0190] Step S2302: Perform Huffman coding based on the Huffman table.

[0191] In one embodiment, such as Figure 24 As shown, step S2301 may include the following steps S2401 to S2409: Step S2401: For the compensation value of the grayscale of each binding point in the first array, the compensation value is divided into data blocks according to the first size, and the data blocks are divided into data sub-blocks according to the second size, where the second size is smaller than the first size.

[0192] In this step, for the first array of each color channel, the compensation value of each grayscale point is divided into data blocks according to a first size, for example, into 4*16 data blocks. Then, each data block is divided into data sub-blocks according to a second size, for example, into 4*4 data sub-blocks.

[0193] Step S2402: For each data sub-block, query the preset character set according to the compensation value to obtain the corresponding target code; wherein, the character set includes the correspondence between the compensation value and the code.

[0194] In this step, for each data sub-block, the corresponding target code is obtained by querying the preset character set based on the compensation value.

[0195] For example, the preset character set dict = { {-7, "0000"}, {-6 , "0001"}, {-5, "0010"}, {-4 , "0011"},{-3, "0100"}, {-2 , "0101"},{-1 , "0110"},{ 0 , "0111"},{ 1 , "1000"},{2 , "1001"},{3 , "1010"},{ 4 , "1011"},{5 , "1100"},{6 , "1101"} ,{ 7 , "1110"},{8 , "1111"}}, where the target code corresponding to the compensation value -7 is 0000, and the target code corresponding to the compensation value -6 is 0001.

[0196] Step S2403: For each data sub-block, store the target code corresponding to the compensation value of different binding point gray levels into the code set.

[0197] In this step, for each data sub-block, the target code corresponding to the compensation value of different binding point gray levels is stored in the code set.

[0198] If an element (a combination of three compensation values) in a data sub-block is [0, -1, 2], its corresponding target code is "0111" + "0110" + "1001" = "011101101001", which can be represented as [0111, 0110, 1001]. A set of codes includes codes for 4*4 elements.

[0199] Step S2404: For each encoding set, select a first element from the encoding set.

[0200] In this step, for each encoding set, a first element is selected from the encoding set. For example, the first element A = [off1, off2, off3], where off1, off2, and off3 are the target codes for the compensation values ​​of the first, second, and third binding point gray levels, respectively.

[0201] Step S2405: Compare the first element with each second element in the global element set to obtain the target second element that is closest to the first element.

[0202] In this step, the first element is compared with each second element in the global element set to find the target second element that is closest to the first element. The initial value of the global element set is empty.

[0203] In one embodiment, such as Figure 25As shown, the steps S2501 to S2504 may be included: Step S2501: Calculate the weighted sum of the compensation values ​​of each binding point grayscale in the first element based on the compensation values ​​of each binding point grayscale and the grayscale weight of each binding point grayscale, and obtain the first sum value.

[0204] For example, for the red channel, the weighted sum of the compensation values ​​of each bound point grayscale in the first element and the grayscale weight of each bound point grayscale is calculated using the following formula to obtain the first sum: (twenty two) in, The first sum, The weight of the compensation value for the first grayscale level of the red channel. The weight of the compensation value for the second binding point grayscale of the red channel. The weight of the compensation value for the third binding point grayscale of the red channel. This is the compensation value for the grayscale of the first binding point. This is the compensation value for the grayscale of the second binding point. This is the compensation value for the grayscale of the third binding point.

[0205] In one embodiment, It is 0.5. It is 0.3. It is 0.2.

[0206] Step S2502: For each second element in the global element set, calculate the weighted sum of the compensation values ​​of each binding point grayscale based on the compensation values ​​of each binding point grayscale in the second element and the grayscale weight of each binding point grayscale, and obtain the second sum value.

[0207] Similarly, for each second element in the global element set, the second sum is calculated using the same method as the first sum, thus obtaining the second sum corresponding to all second elements in the global element set.

[0208] Step S2503: Find the second sum that is closest to the first sum from all the second sums, and use it as the first target sum.

[0209] In this step, the second sum that is closest to the first sum is found from all the second sums corresponding to the second elements in the global element set. When the difference between the second sum that is closest to the first sum and the first sum is less than a specified threshold, the second sum that is closest to the first sum is taken as the first target sum.

[0210] Step S2504: Determine the second element corresponding to the first target and value as the second element of the target.

[0211] In this step, the second element corresponding to the first target and value is determined as the second element of the target.

[0212] Step S2406: When the target second element is found in the global element set, record the maximum statistic of the target second element, and increment the value of the maximum statistic by 1 after traversing the encoded set.

[0213] In this step, when the target second element is found in the global element set, the maximum statistic of the target second element is recorded, and after traversing the encoded set, the value of the maximum statistic is incremented by 1.

[0214] Step S2407: If the target second element does not exist in the global element set, add the first element to the global element set.

[0215] In this step, if the target second element does not exist in the global element set, the first element is added to the global element set.

[0216] Step S2408: After traversing all encoding sets, a global statistics table is obtained. The global statistics table includes the index value of all sub-pixels, the compensation value of different binding point gray levels, and the statistics. The statistics of the compensation values ​​of different binding point gray levels of all sub-pixels are arranged in descending order, and the index value of all sub-pixels increases as the statistics decrease.

[0217] In this step, after traversing all encoding sets, a global statistics table is obtained. The global statistics table includes the index values ​​of all sub-pixels, the compensation values ​​of different binding point gray levels, and statistics; the statistics of the compensation values ​​of different binding point gray levels of all sub-pixels are arranged in descending order, and the index values ​​of all sub-pixels increase as the statistics decrease.

[0218] For example, the global statistics table for the red channel can be shown in Table 2 below. The index value (EntryIdx) ranges from 0 to 32, and the sum of the statistics (S) is 2560*1600.

[0219] Table 2 Global Statistics for the Red Channel

[0220] According to Table 2, in the red channel, the index value of element [-1,2,3] is 0, and the statistic is 146123. -1 is the compensation value of the first binding point grayscale, 2 is the compensation value of the second binding point grayscale, and 3 is the compensation value of the third binding point grayscale.

[0221] Step S2409: Select the top N statistics from the global statistics table, along with their corresponding index values ​​and compensation values, to obtain a Huffman table. The ratio of the sum of the top N statistics to the number of pixels in the image is greater than a preset threshold.

[0222] In this step, the top N statistics, along with their corresponding index values ​​and compensation values, are selected from the global statistics table to obtain a Huffman table. The ratio of the sum of the top N statistics to the number of pixels in the image is greater than a preset threshold.

[0223] For example, N is 8 or 16.

[0224] When N is 8, the ratio of the sum of the first 8 statistics to the number of pixels in the image is greater than a preset threshold. ),Right now (twenty three) in, ~ These are the first 8 statistics.

[0225] When N is 16, the ratio of the sum of the first 16 statistics to the number of pixels in the image is greater than a preset threshold. ),Right now (twenty four) in, ~ These are the first 16 statistics.

[0226] In one embodiment, such as Figure 26 As shown, after step S2301, the following steps S2601~S2604 may also be included: Step S2601: Obtain the global index table based on the global statistics table. The global index table includes the index values ​​of all sub-pixels.

[0227] In this step, a global index table is obtained based on the global statistics table. This global index table includes the index values ​​of all sub-pixels. For example, such as... Figure 27 The image shows the index values ​​of subpixels within a 4x16 data block. Six subpixels with an index value of 251 have an index value greater than the maximum index value in the Huffman table.

[0228] Step S2602: When the index value of a sub-pixel is greater than a preset index value threshold, the index value of the sub-pixel is adjusted so that the adjusted index value is less than or equal to the index value threshold, where the index value threshold is the maximum index value in the Huffman table.

[0229] In this step, for each sub-pixel in the global index table, if the sub-pixel's index value is greater than a preset index value threshold, the sub-pixel's index value is adjusted so that the adjusted index value is less than or equal to the index value threshold, which is the maximum index value in the Huffman table. For example, for... Figure 27 The index values ​​of the 6 sub-pixels 251 are adjusted so that the adjusted index values ​​are less than or equal to the index value threshold.

[0230] In one embodiment, such as Figure 28 As shown, step S2602 may include the following steps S2801 to S2804: Step S2801: Search for the first compensation value that is the same as the compensation value of the sub-pixel in the Huffman table.

[0231] In this step, when the index value of a sub-pixel is greater than a preset index value threshold, the first compensation value that is the same as the compensation value of the sub-pixel is searched in the Huffman table.

[0232] Step S2802: When a first compensation value exists in the Huffman table, adjust the index value of the sub-pixel to the index value corresponding to the first compensation value.

[0233] In this step, when a first compensation value exists in the Huffman table, the index value of the sub-pixel is adjusted to the index value corresponding to the first compensation value in the Huffman table.

[0234] Step S2803: When the first compensation value does not exist in the Huffman table, find the second compensation value that is closest to the compensation value of the sub-pixel in the Huffman table.

[0235] In this step, when the index value of a sub-pixel is greater than a preset index value threshold, and there is no first compensation value in the Huffman table that is the same as the compensation value of the sub-pixel, the second compensation value that is closest to the compensation value of the sub-pixel is found in the Huffman table.

[0236] In one embodiment, such as Figure 29 As shown, step S2803 may include the following steps S2901~S2904: Step S2901: Calculate the weighted sum of the compensation values ​​of each binding point gray level based on the compensation values ​​of each binding point gray level and the gray level weight of each binding point gray level to obtain the third sum value.

[0237] In this step, when the index value of a sub-pixel is greater than a preset index value threshold, and there is no first compensation value in the Huffman table that is the same as the compensation value of that sub-pixel, a weighted sum of the compensation values ​​of each bound point grayscale is calculated based on the compensation values ​​of each bound point grayscale and the grayscale weight of each bound point grayscale to obtain a third sum. The calculation method of the third sum is similar to that of the first sum, and will not be repeated here.

[0238] Step S2902: For each target sub-pixel in the Huffman table, calculate the weighted sum of the compensation values ​​of each binding point gray level based on the compensation values ​​of each binding point gray level and the gray level weight of each binding point gray level, and obtain the fourth sum value.

[0239] In this step, for each target sub-pixel in the Huffman table, a weighted sum of the compensation values ​​of each binding point grayscale is calculated based on the compensation values ​​of each binding point grayscale of the target sub-pixel and the grayscale weights of each binding point grayscale, to obtain the fourth sum. The calculation method of the fourth sum is similar to that of the first sum, and will not be repeated here.

[0240] Step S2903: Find the fourth sum that is closest to the third sum from all the fourth sums, and use it as the second target sum.

[0241] In this step, the fourth sum value that is closest to the third sum value is found from the fourth sum value corresponding to each target sub-pixel in the Huffman table, and this fourth sum value is used as the second target sum value.

[0242] Step S2904: Determine the compensation value corresponding to the second target and value as the second compensation value.

[0243] In this step, the compensation value corresponding to the second target and value is determined as the second compensation value.

[0244] Step S2804: Adjust the index value of the sub-pixel to the index value corresponding to the second compensation value.

[0245] When the index value of a sub-pixel is greater than the preset index value threshold, and there is no first compensation value in the Huffman table that is the same as the compensation value of the sub-pixel, find the second compensation value that is closest to the compensation value of the sub-pixel in the Huffman table, and adjust the index value of the sub-pixel to the index value corresponding to the second compensation value.

[0246] Another exemplary embodiment of this application also provides a Demura compensation value compression device. For example... Figure 30 As shown, in this embodiment, the Demura compensation value compression device includes: The combination module 3001 is configured to combine a specified number of binding point grayscale compensation values ​​into a first array for each color channel of the image; wherein, for each color channel of the image, the compensation values ​​of different binding point grayscales of the same sub-pixel have the same sign. The encoding module 3002 is configured to perform statistical compression encoding based on the first array.

[0247] Embodiments of this application also propose an electronic device, including a processor and a memory; the memory is used to store a computer program executable by the processor; the processor is used to execute the computer program in the memory to implement the Demura compensation value compression method of any of the above embodiments.

[0248] Embodiments of this application also propose a computer-readable storage medium that, when an executable computer program in the storage medium is executed by a processor, enables the implementation of the Demura compensation value compression method of any of the above embodiments.

[0249] Embodiments of this application also propose a computer program product, including a computer program that, when executed by a processor, implements a driving method for the universal serial bus interface of any of the above embodiments.

[0250] Regarding the apparatus in the above embodiments, the specific manner in which the processor performs the operation has been described in detail in the embodiments related to the method, and will not be elaborated upon here.

[0251] Figure 31 This is a block diagram illustrating an electronic device according to an exemplary embodiment. (Refer to...) Figure 31 The electronic device 3100 includes a processing component 922, which further includes one or more processors, and memory resources represented by memory 932 for storing instructions, such as application programs, that can be executed by the processing component 922. The application programs stored in memory 932 may include one or more modules, each corresponding to a set of instructions. Furthermore, the processing component 922 is configured to execute instructions to perform the aforementioned Demura compensation value compression method.

[0252] Electronic device 3100 may also include a power supply component 926 configured to perform power management of electronic device 3100, a wired or wireless network interface 950 configured to connect device 3100 to a network, and an input / output (I / O) interface 958. Electronic device 900 may operate on an operating system stored in memory 932, such as Windows Server™, MacOS X™, Unix™, Linux™, FreeBSD™, or similar.

[0253] In an exemplary embodiment, a non-transitory computer-readable storage medium including instructions is also provided, such as a memory 932 including instructions, which can be executed by a processing component 922 of an electronic device 3100 to perform the above-described method. For example, the non-transitory computer-readable storage medium may be a ROM, random access memory (RAM), CD-ROM, magnetic tape, floppy disk, and optical data storage device, etc.

[0254] In this invention, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance. The term "multiple" refers to two or more unless otherwise expressly defined.

[0255] The above description of the embodiments is intended to enable those skilled in the art to understand and apply this application. It will be apparent to those skilled in the art that various modifications can be easily made to these embodiments, and the general principles described herein can be applied to other embodiments without creative effort. Therefore, this application is not limited to the embodiments described herein, and any improvements and modifications made by those skilled in the art based on the disclosure of this application without departing from the scope and spirit of this application are within the scope of this application.

Claims

1. A method for compressing Demura compensation values, characterized in that, include: The compensation values ​​of a specified number of bound gray levels in the image are compressed in ascending order of gray level values. During the compression process, before compressing the compensation values, the compensation values ​​of each color channel of the image are divided into multiple non-overlapping data blocks for each bound gray level compensation value. For each color channel, calculate the average value for each data block; For each data block, the difference between the data block and the average value is calculated to obtain the first-level attenuation value.

2. The Demura compensation value compression method as described in claim 1, characterized in that, The compression of the compensation values ​​of a specified number of bound gray levels in the image according to the gray level values ​​in ascending order includes: For each grayscale point, the compensation values ​​of all color channels of the image are compressed as a whole.

3. The Demura compensation value compression method as described in claim 1, characterized in that, After calculating the difference between the data block and the average value for each data block to obtain the first-level attenuation value, the method further includes: For each data block of each binding point gray level other than the maximum gray level value in a specified number of binding point gray levels, calculate the neighbor compensation value gain coefficient of the data block of the next binding point gray level relative to the data block. For a specified number of grayscale points with grayscale values ​​greater than the minimum grayscale value, obtain the grayscale reconstruction data sub-block of the previous grayscale point; the grayscale reconstruction data sub-block includes the reconstruction value. The product of the reconstructed value of the previous grayscale data sub-block and the gain coefficient of the neighbor compensation value is calculated to obtain the reference data sub-block; the reference data sub-block includes the reference value; The difference between the current grayscale data sub-block and the reference data sub-block is calculated to obtain the error data sub-block; the error data sub-block includes the error value.

4. The Demura compensation value compression method as described in claim 3, characterized in that, The step of calculating the neighbor compensation gain coefficient of the next data block relative to the data block for each data block of each bound-point grayscale includes: For each data block of each bound-point grayscale, calculate the sum of the first-level attenuation values ​​of the data block to obtain the first sum, and calculate the sum of the first-level attenuation values ​​of the data block of the next bound-point grayscale to obtain the second sum; The ratio of the second sum to the first sum is calculated to obtain the neighbor-to-neighbor compensation value gain coefficient.

5. The Demura compensation value compression method as described in claim 1, characterized in that, The image includes multiple pixels arranged in an array, and each pixel includes sub-pixels of different color channels. In the same color channel, the difference between the compensated grayscale values ​​of different bound point grayscale values ​​of the same sub-pixel and the grayscale values ​​before compensation has the same sign.

6. A Demura compensation value compression device, characterized in that, The apparatus, configured to compress the compensation values ​​of a specified number of bound gray levels of an image in ascending order of gray level values, includes: The partitioning module is configured to, during the compression process, before compressing the compensation value, divide the compensation value of each color channel of the image into multiple non-overlapping data blocks for the compensation value of each binding point grayscale. The first calculation module is configured to calculate the average value of each data block for each color channel; The second calculation module is configured to calculate the difference between the data block and the average value for each data block to obtain a first-level attenuation value.

7. The Demura compensation value compression device as described in claim 6, characterized in that, Also includes: The third calculation module is configured to calculate the gain coefficient of the data block of the next binding gray level relative to the data block for each data block of each binding gray level other than the maximum gray level value in a specified number of binding gray levels. The acquisition module is configured to acquire a grayscale reconstruction data sub-block of the previous grayscale point among a specified number of grayscale points whose grayscale value is greater than the minimum grayscale value; the grayscale reconstruction data sub-block includes the reconstruction value. The fourth calculation module is configured to calculate the product of the reconstructed value of the previous grayscale data sub-block and the gain coefficient of the neighbor compensation value to obtain a reference data sub-block; the reference data sub-block includes a reference value; The fifth calculation module is configured to calculate the difference between the current grayscale data sub-block and the reference data sub-block to obtain an error data sub-block; the error data sub-block includes an error value.

8. An electronic device, characterized in that, The method includes a memory and a processor, wherein the memory is used to store a computer program executable by the processor; and the processor is used to execute the computer program in the memory to implement the method as described in any one of claims 1 to 5.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the executable computer program in the storage medium is executed by a processor, it can implement the method as described in any one of claims 1 to 5.

10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by the processor, it implements the method as described in any one of claims 1 to 5.