Display panel Mura compensation data compression and decompression method
By analyzing the spatial distribution characteristics of the compensation data of the display panel, using row or column differential and run coding methods, the problems of large amount of data and low transmission efficiency in the display panel are solved, and efficient data compression and display quality improvement are achieved.
Patent Information
- Application Number
- CN202510498924.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-21
- Publication Date
- 2025-07-11
AI Technical Summary
The existing Demura technology faces problems such as large amount of compensation data, limited hardware resources, insufficient compression efficiency and accuracy, low data transmission efficiency and data distortion in extreme environments in the display panel, and it is difficult to meet the dynamic compensation needs of the new display technology.
By analyzing the two-dimensional spatial distribution characteristics of the compensated data, row or column differential preprocessing is used to combine multi-mode coding strategies to intelligently select the differential direction, and use run encoding to store duplicate data, generate compressed files, and support real-time hardware processing.
It realizes lossless data compression with high compression rate, reduces storage costs and transmission bandwidth pressure, improves the production line burning efficiency and display quality consistency of display panels, and adapts to the needs of new display technologies such as OLED and Micro-LED.
Smart Images

Figure CN120302043A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of display technology, and particularly to a method for compressing and decompressing Mura compensation data of a display panel. Background Art
[0002] The Mura phenomenon (derived from the Japanese word "mottled") commonly existing in the manufacturing process of display panels is a key problem restricting the improvement of display quality. This phenomenon is manifested as uneven brightness or chromaticity that can be distinguished by the naked eye in local areas of the screen, which is particularly obvious when displaying a pure color screen, and often exists in the form of cloud-like patches, banded stripes or grid-like defects. Its physical causes are complex and diverse, mainly stemming from fluctuations at the microscopic level such as the discreteness of the electrical characteristics of thin-film transistors (TFTs) in semiconductor manufacturing processes, uneven coating of organic light-emitting materials, and differences in encapsulation stress distribution. With the rapid development of self-emitting display technologies such as OLED and Micro-LED, the impact of the Mura problem on image quality has become increasingly prominent. Since these technologies eliminate the light-shielding effect of the traditional liquid crystal layer, the brightness deviation of a single pixel will be directly amplified and presented, which may cause serious consequences in professional fields such as medical diagnostic displays and film and television monitoring screens.
[0003] To eliminate Mura defects, the industry generally adopts Demura (De-Mura) compensation technology. This technology captures the actual light-emitting characteristics of each pixel on the panel through a precision optical detection device, establishes a two-dimensional matrix containing compensation parameters, and dynamically corrects the input signal of each pixel during the display driving stage. The operation of a typical Demura system includes three core stages: first, using a high-precision imaging system to scan and obtain the original brightness distribution data, then generating compensation coefficients corresponding to each pixel through a dedicated algorithm, and finally burning the compensation data into the driving chip or an external memory, and applying reverse correction in real time during the rendering of the image. Although this technical path of "measurement - calculation - compensation" is effective, it has given rise to huge data processing requirements. Taking an FHD full high-definition display screen (1920×1080 pixels) as an example, the amount of monochromatic compensation data reaches millions of parameters. If RGB three channels and gamma correction are considered, more data needs to be stored, which poses a severe challenge to the hardware storage space and data processing capabilities.
[0004] The current Demura technology faces multiple bottlenecks in practical applications. First, there is a sharp contradiction between the explosive growth of compensation data and the limitations of hardware resources. The compensation matrix of high-end display panels can reach the GB level, while the built-in storage of driver chips is usually only in the MB range, forcing manufacturers to adopt an external storage solution, directly increasing the material cost and circuit complexity. Second, it is difficult for traditional compression algorithms to balance efficiency and accuracy. General compression tools such as ZIP can reduce the data volume, but the decompression process requires the complete loading of data blocks and cannot support the real-time streaming processing requirements of driver chips; while simple differential coding reduces the instantaneous memory occupancy, but has no compression effect on randomly distributed compensation values. Moreover, the data transmission efficiency in the production process restricts the improvement of production capacity. In the compensation data burning process before the panel leaves the factory, the data transmission of several GB each time makes the calibration time of a single device up to dozens of minutes, becoming the key bottleneck restricting the throughput of the production line. More seriously, the existing technical solutions may cause data distortion in extreme scenarios. For example, long sequence repeated compression is vulnerable to single-bit flips, resulting in the failure of the entire row of compensation. This systematic risk is particularly prominent in high-temperature and high-vibration environments such as in-vehicle displays. In addition, the emerging flexible folding screen technology introduces a new variable - the brightness drift effect caused by the change in the screen form, requiring the compensation system to have the ability to dynamically update, which poses a fundamental challenge to the traditional static compression architecture. Summary of the Invention
[0005] Object of the Invention: The object of the present invention is to provide a method for compressing and decompressing Mura compensation data of a display panel. By analyzing the two-dimensional spatial distribution characteristics of the compensation data, it intelligently selects the row or column direction for differential preprocessing, and combines a multi-mode coding strategy to achieve a high compression rate and hardware-friendly real-time processing ability while ensuring data integrity, and solves the problems existing in the background technology.
[0006] Technical Solution: A method for compressing Mura compensation data of a display panel according to the present invention includes the following steps:
[0007] (1) Receive the original matrix data containing multiple rows and columns of compensation parameters;
[0008] (2) Dynamically select the row or column differential mode by calculating the mean absolute difference (MAD) in the row direction and the column direction;
[0009] (3) In the row differential mode, the parameters of the first row of each column are reserved as the original values, and the subsequent parameters are converted into the differences between adjacent rows;
[0010] (4) In the column differential mode, the parameters of the first column of each row are reserved as the original values, and the subsequent parameters are converted into the differences between adjacent columns;
[0011] (5) Perform real-time scanning on the differential data sequence, detect continuous repeated differences, and store the repeated times and differences in the run-length encoding mode, and directly store the non-repeated differences as the original values;
[0012] (6) When generating the compressed file, write the number of rows, the number of columns, and the differential direction identifier at the head.
[0013] Further, in step (2), the specific implementation process of the row differential processing is as follows: for each column of data, the parameter of the first row remains the original value unchanged, and each subsequent parameter is stored as the difference between the current parameter and the parameter of the previous row, forming a row differential sequence.
[0014] Further, in step (2), the column differential processing is as follows: for each row of data, the parameter of the first column remains the original value unchanged, and each subsequent parameter is stored as the difference between the current parameter and the parameter of the previous column, forming a column differential sequence.
[0015] Further, in step (2), the calculation method of the direction selection is as follows: the formula for calculating the row MAD value is:
[0016]
[0017] where MAD row is the row mean absolute difference, V[i][j] is the value of the i-th row and j-th column of the compensation data matrix, and M and N are the number of rows and the number of columns of the compensation parameter matrix respectively.
[0018] The formula for calculating the column MAD value is:
[0019]
[0020] where MAD col is the column mean absolute difference, V[i][j] is the value of the i-th row and j-th column of the compensation data matrix, and M and N are the number of rows and the number of columns of the compensation parameter matrix respectively.
[0021] When the row MAD value is less than or equal to the column MAD value, select the row differential mode, otherwise select the column differential mode.
[0022] Further, in step (5), the run-length encoding mode includes: short run-length encoding: the identifier `0x01` is followed by the single-byte repeat count and the two-byte difference; long run-length encoding: the identifier `0x02` is followed by the two-byte repeat count and the two-byte difference; non-repeated differences adopt the single-value encoding mode, and the identifier `0x00` is followed by the two-byte original value.
[0023] Further, in step (6), the compressed file header includes: the direction identifier `ROW` or `COL`; the two-byte number of rows M and the two-byte number of columns N; the data block sequence stores the encoded differential values in the original order.
[0024] A method for decompressing the Mura compensation data of a display panel according to the present invention includes the following steps:
[0025] S1 reads the header information of the compressed file to obtain the matrix size and the differential direction identifier;
[0026] S2 parses the data block, identifies the run-length encoding identifier and unfolds the consecutive repeated sequences;
[0027] S3 accumulates the differential values row by row in the row differential mode to restore the original matrix;
[0028] S4 accumulates the differential values column by column in the column differential mode to restore the original matrix;
[0029] S5 adopts a streaming processing architecture, and the peak memory occupancy only stores the data of the currently processed row or column.
[0030] Furthermore, the mathematical formula for accumulating the differential values is: row differential mode:
[0031]
[0032] where V[i][j] is the value of the i-th row and j-th column of the compensation data matrix, and Δ row [k][j] is the compensation data difference of the k-th row and j-th column after processing.
[0033] Column differential mode:
[0034]
[0035] where V[i][j] is the value of the i-th row and j-th column of the compensation data matrix, and Δ col [i][k] is the compensation data difference of the i-th row and k-th column after processing.
[0036] A display panel Mura compensation data compression system according to the present invention includes:
[0037] Receiving module: used to receive the original matrix data containing multi-row and multi-column compensation parameters;
[0038] Dynamic selection module: used to dynamically select the row or column differential mode by calculating the mean absolute difference (MAD) in the row direction and the column direction;
[0039] Row difference module: in the row differential mode, the first row parameter of each column retains the original value, and the subsequent parameters are converted into the differences between adjacent rows;
[0040] Column difference module: in the column differential mode, the first column parameter of each row retains the original value, and the subsequent parameters are converted into the differences between adjacent columns;
[0041] Detection module; used to perform real-time scanning on the differential data sequence, detect consecutive repeated differences, store the number of repetitions and the differences in the run-length encoding mode, and directly store the original values for non-repeated differences;
[0042] Generation module: used to write the number of rows, columns of the matrix and the differential direction identifier at the head when generating the compressed file.
[0043] A display panel Mura compensation data decompression system according to the present invention includes:
[0044] Reading module: used to read the header information of the compressed file to obtain the matrix size and the differential direction identifier;
[0045] Parsing module: used to parse the data block, identify the run-length encoding identifier and expand the continuous repeated sequence;
[0046] First accumulation module: used to accumulate the differential values row by row in the row differential mode to restore the original matrix;
[0047] Second accumulation module: used to accumulate the differential values column by column in the column differential mode to restore the original matrix;
[0048] Streaming module: used to adopt a streaming processing architecture, and the peak memory occupancy only stores the data of the currently processed row or column.
[0049] Beneficial effects: Compared with the prior art, the present invention has the following remarkable advantages: Through the collaborative optimization of dynamic row-column difference selection and adaptive run-length encoding, efficient lossless compression of the display panel Mura compensation data is achieved. Its core advantages are: intelligently selecting the row or column differential direction based on the volatility of adjacent data (MAD value) to effectively eliminate spatial redundancy; combining short / long run-length encoding strategies to adaptively process continuous repeated patterns and discrete values, achieving a higher compression ratio in typical scenarios; the pure addition and subtraction streaming decoding architecture only requires a very simple arithmetic unit and low memory, supports real-time processing by embedded hardware, can adapt to the stringent compensation requirements of new display technologies such as OLED and Micro-LED, significantly reduces the storage cost and transmission bandwidth pressure, and improves the production line burning efficiency and display quality consistency. Description of the Drawings
[0050] Figure 1 It is the compensation data compression flow chart of the present invention;
[0051] Figure 2 It is the decompression flow chart of the compressed file of the present invention. Detailed Embodiments
[0052] The technical solution of the present invention will be further described below in conjunction with the drawings.
[0053] As Figure 1 shown, the embodiment of the present invention provides a display panel Mura compensation data compression and decompression method, including the steps:
[0054] In the data preprocessing stage, the system first performs data fluctuation analysis on the input compensation matrix in both row and column directions, and dynamically selects the optimal difference direction by calculating the Mean Absolute Difference (MAD) in the row and column directions.
[0055] In the row difference mode, the parameter of the first row in each column retains the original value, and each subsequent parameter is converted into the difference from the parameter of the previous row. The mathematical representation is:
[0056]
[0057] This mode is applicable to the situation where the parameter variation within a row is small (such as horizontal uniform stripes).
[0058] In the column difference mode, the parameter of the first column in each row retains the original value, and each subsequent parameter is converted into the difference from the parameter of the previous column. The mathematical representation is:
[0059]
[0060] This mode is applicable to the situation where the parameter variation between columns is small (such as vertical uniform stripes).
[0061] The core basis for direction selection is the comparison of the row and column MAD values. The calculation formula is:
[0062]
[0063] When the row MAD value is less than or equal to the column MAD value, the row difference mode is preferentially adopted; otherwise, the column difference mode is selected.
[0064] After completing the differential preprocessing, the system performs real-time scanning on the generated differential sequence and dynamically selects the encoding mode. For non-repeated differences that appear independently, the single-value encoding mode is adopted, and the storage format is the identifier 0x00 followed by the 2-byte difference value (such as 0x00 0xFF9C represents the value -100). For continuous repeated difference sequences, they are divided into two modes: short run-length and long run-length according to the number of repetitions. The short run-length encoding (number of repetitions 2 - 255 times) uses the identifier 0x01 followed by 1-byte length and 2-byte difference (such as 0x01 0x0A 0x0000 represents the value 0 repeated 10 times), and the long run-length encoding (number of repetitions ≥ 256 times) uses the identifier 0x02 followed by 2-byte length and 2-byte difference (such as 0x02 0x0100 0x0000 represents the value 0 repeated 256 times). During the encoding process, all data blocks are continuously stored in the original order. The header of the finally generated compressed file contains the number of matrix rows, columns, and the differential direction identifier to ensure that the decompression process can accurately reconstruct the original data.
[0065] Such as Figure 2As shown, during decompression, the system first reads the header information to obtain the matrix size and the differential direction flag, and then parses the encoded content in the order of data blocks. For single-value encoded blocks, the difference values are directly extracted, while for run-length encoded blocks, they are expanded into a continuous repeated sequence according to the length flag.
[0066] In the row-differential mode, for each row of data, the difference values are accumulated column by column starting from the first value, and the mathematical reconstruction formula is:
[0067]
[0068] In the column-differential mode, for each column of data, the difference values are accumulated row by row starting from the first value, and the mathematical reconstruction formula is:
[0069]
[0070] The entire decompression process only relies on addition and subtraction operations, does not require the support of complex computing units, and adopts a streaming processing architecture, with low peak memory occupancy, and can be adapted to the embedded hardware environment.
[0071] Taking the processing flow of typical Mura compensation data as an example for illustration.
[0072] First, assume that the original values of a set of compensation data are
[0073]
[0074] The direction selection algorithm automatically makes a decision by comparing the row and column MAD values, and the calculation formulas are respectively:
[0075]
[0076] The system first calculates the data volatility in the row and column directions:
[0077] If the absolute values of the differences between adjacent rows in the row direction are ∣25 - 25∣ = 0, ∣28 - 28∣ = 0, ∣31 - 31∣ = 0, ∣34 - 34∣ = 0, ∣37 - 37∣ = 0, the row MAD calculation is
[0078]
[0079] The absolute values of the differences between adjacent columns within a column are ∣28 - 25∣ = 3, ∣31 - 28∣ = 3, etc., and the column mean absolute difference (MAD) calculation is
[0080]
[0081] According to Figure 1 The steps shown in the process, when it is detected that the row MAD value is lower than the column MAD, the system switches to the row-differential mode, otherwise the column-differential is enabled. Since the row MAD (0) is less than the column MAD (3), the row-differential mode is selected.
[0082] Differential calculation retains the first value and generates a sequence:
[0083]
[0084] Taking the second column as an example, when encoding, the first value 28 is stored as a single-value block 0x00 0x001c (3 bytes), and the subsequent 4 "0"s are compressed into a run-length block 0x01 0x04 0x0000 (4 bytes). After the entire column is compressed, the data volume is 7 bytes, and the compression rate is 30% compared to the original 10 bytes. That is, the entire array is compressed from 50 bytes to 35 bytes. When decompressing, accumulate column by column according to the formula:
[0085] V[1]=28, V[2]=28 + 0 = 28, …… V[5]=28 + 0 = 28
[0086] Finally, the original data is completely restored.
[0087] It should be added that when the run length exceeds 255 during the encoding process, it enters the long run-length mode. For example, 300 consecutive zero values are converted into 0x02 (1-byte identifier), 0x012C (2-byte length), 0x0000 (2-byte value), a total of 5 bytes. When the first value of the compensation value or a negative number appears in the differential array, it should be stored in the form of two's complement.
[0088] The compressed file structure contains a 3-byte direction identifier (such as "ROW" or "COL"), 2-byte number of rows, 2-byte number of columns, and a data block sequence. The decompression module automatically calls the row or column accumulation algorithm through the header identifier.
Claims
1. A method for compressing Mura compensation data of a display panel, characterized in that, It includes the following steps: (1) Receive the original matrix data containing multi - row and multi - column compensation parameters; (2) Dynamically select the row or column difference mode by calculating the mean absolute difference (MAD) in the row direction and column direction; (3) In the row difference mode, the parameter of the first row of each column retains the original value, and subsequent parameters are converted into differences between adjacent rows; (4) In the column difference mode, the parameter of the first column of each row retains the original value, and subsequent parameters are converted into differences between adjacent columns; (5) Perform real - time scanning on the differentiated data sequence, detect consecutive repeated differences, and store the number of repetitions and differences in run - length encoding mode. Non - repeated differences are directly stored as the original values; (6) When generating the compressed file, write the number of matrix rows, columns, and the difference direction identifier at the header.
2. A method for compressing Mura compensation data of a display panel according to claim 1, characterized in that, In step (2), the specific implementation process of row difference processing is as follows: For each column of data, the parameter of the first row remains the original value unchanged, and each subsequent parameter is stored as the difference between the current parameter and the parameter of the previous row, forming a row difference sequence.
3. A method for compressing Mura compensation data of a display panel according to claim 1, characterized in that In step (2), the specific display process of column difference processing is as follows: For each row of data, the parameter of the first column remains the original value unchanged, and each subsequent parameter is stored as the difference between the current parameter and the parameter of the previous column, forming a column difference sequence.
4. A method for compressing Mura compensation data of a display panel according to claim 1, characterized in that In step (2), the calculation method for direction selection is: The formula for calculating the row MAD value is: Among them, MAD row is the row mean absolute difference, V[i][j] is the value of the i-th row and j-th column of the compensation data matrix, and M and N are the number of rows and columns of the compensation data matrix, respectively. The formula for calculating the column MAD value is: Where MAD col is the column mean absolute difference, V[i][j] is the value of the i-th row and j-th column of the compensation data matrix, and M and N are the number of rows and columns of the compensation parameter matrix, respectively. When the row MAD value is less than or equal to the column MAD value, select the row difference mode; otherwise, select the column difference mode.
5. A method for compressing Mura compensation data of a display panel according to claim 1, characterized in that, In step (5), the run - length encoding mode includes: Short run - length encoding: After the identifier `0x01`, followed by a single - byte number of repetitions and two - byte difference; Long run - length encoding: After the identifier `0x02`, followed by two - byte number of repetitions and two - byte difference; Non - repeated differences adopt the single - value encoding mode, with the identifier `0x00` followed by two - byte original values.
6. A method for compressing Mura compensation data of a display panel according to claim 1, wherein In step (6), the compressed file header includes: Direction identifier `ROW` or `COL`; Two - byte number of rows M and two - byte number of columns N; The data block sequence stores the encoded difference values in the original order.
7. A method for decompressing Mura compensation data of a display panel, characterized in that, It includes the following steps: S1 Read the compressed file header information to obtain the matrix size and difference direction identifier; S2 Parse the data block, identify the run - length encoding identifier and expand the consecutive repeated sequence; S3 In the row difference mode, accumulate the difference values row by row to restore the original matrix; S4 In the column difference mode, accumulate the difference values column by column to restore the original matrix; S5 Adopt a streaming processing architecture, and the peak memory occupancy only stores the data of the currently processed row or column.
8. A method for decompressing Mura compensation data of a display panel according to claim 7, characterized in that, The mathematical formula for accumulating difference values is: In the row difference mode: where V[i][j] is the value of the i-th row and j-th column of the compensation data matrix, and Δ row [k][j] is the difference of the compensation data of the k-th row and j-th column after processing. In the column difference mode: where V[i][j] is the value of the i-th row and j-th column of the compensation data matrix, and Δ col [i][k] is the compensation data difference of the i-th row and k-th column after processing.
9. A display panel Mura compensation data compression system, characterized in that, It includes: Receiving module: Used to receive the original matrix data containing multi - row and multi - column compensation parameters; Dynamic selection module: Used to dynamically select the row or column difference mode by calculating the mean absolute difference (MAD) in the row direction and column direction; Row difference module: In the row difference mode, the parameter of the first row of each column retains the original value, and subsequent parameters are converted into differences between adjacent rows; Column difference module: In the column difference mode, the parameter of the first column of each row retains the original value, and subsequent parameters are converted into differences between adjacent columns; Detection module; Used to perform real - time scanning on the differentiated data sequence, detect consecutive repeated differences, store the number of repetitions and differences in run - length encoding mode, and directly store non - repeated differences as the original values; Generation module: used to write the number of rows, columns of the matrix and the differential direction identifier at the head when generating the compressed file.
10. A display panel Mura compensation data decompression system, characterized in that, Including: Reading module: used to read the header information of the compressed file to obtain the matrix size and the differential direction identifier; Parsing module: used to parse the data block, identify the run-length encoding identifier and expand the continuous repeated sequence; First accumulation module: used to accumulate the differential values row by row in the row differential mode to restore the original matrix; Second accumulation module: used to accumulate the differential values column by column in the column differential mode to restore the original matrix; Streaming module: used to adopt a streaming processing architecture, and the peak memory occupancy only stores the data of the currently processed row or column.
Citation Information
Cited By
Electric energy meter data compression method and system, electronic equipment and storage medium
CN120825182A