Brightness correction data acquisition method and device, electronic equipment and chip
By blocking and clustering the brightness correction data of the OLED screen, encoding and decoding the class label table and clustering table, the problem of uneven brightness of the OLED screen is solved, and efficient data compression and hardware complexity are achieved.
Patent Information
- Application Number
- CN202510174422.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-17
- Publication Date
- 2025-05-16
AI Technical Summary
OLED screens are prone to uneven brightness during manufacturing, which leads to the need for brightness calibration to improve screen performance. When obtaining pixel-level brightness correction data, the data volume is huge and compression processing is required, but the existing block-level encoding scheme leads to an increase in hardware complexity, power consumption and area.
A method for obtaining brightness correction data is proposed. By blocking the correction data of the image and clustering each data block in sequence, a class label table and a cluster table are obtained, and the K repair data is encoded and decoded to determine the K repair data. This method uses the same clustering method to compress all block-level data, reducing hardware complexity.
It realizes efficient compression of OLED screen brightness correction data, reduces hardware complexity, reduces chip power consumption and area, and improves the brightness uniformity and compensation effect of the screen.
Smart Images

Figure CN120017864A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of image processing, and in particular to a method and device for acquiring brightness correction data, an electronic device, and a chip. Background Art
[0002] Organic Light-Emitting Diode (OLED) screens have many advantages, such as being thin, light, delicate, sensitive, colorful, and power-saving. They are becoming more and more common in people's daily lives, such as smartphones, wearable devices, and televisions. In addition, the digital signage and automotive fields are also exploring potential application scenarios for OLED.
[0003] Due to the limitations of the manufacturing process, OLED screens are prone to uneven display panel brightness, i.e. mura, and brightness calibration is required to improve screen performance. The Demura algorithm is used to remove mura. Usually, the pixel-level brightness correction data of the screen is obtained before leaving the factory, and then the brightness correction is performed through numerical compensation to achieve the purpose of removing mura. Due to the huge amount of pixel-level brightness correction data, it needs to be compressed. Summary of the invention
[0004] The present disclosure provides a method and device for acquiring brightness correction data, an electronic device, a storage medium and a chip to solve the problems in the related art.
[0005] A first aspect of the present disclosure provides a method for obtaining brightness correction data, the method comprising:
[0006] Divide the corrected data of the image into blocks, and cluster each data block in turn to obtain a class label table and a cluster table of each data block, wherein the class label table contains the class to which each pixel in the data block belongs, and the cluster table contains K-repaired corrected data of all pixels of the class;
[0007] Encode the class label table and the clustering table, and write the encoding result into a bitstream;
[0008] The code stream is decoded to obtain the class label table and the cluster table, and K-repair correction data is determined based on the class label table and the cluster table.
[0009] In some embodiments of the present disclosure, determining K-corrected data based on the class label table and the cluster table includes:
[0010] Determine the class to which the target corresponding to each pixel belongs based on the class label table;
[0011] Based on the class to which the target corresponding to each pixel belongs, the clustering table is searched to obtain all K-corrected data in the class to which the target belongs.
[0012] In some embodiments of the present disclosure, clustering each data block in turn to obtain a class label table and a clustering table for each data block includes:
[0013] All pixels in each data block are traversed in sequence to perform clustering, and the class to which each pixel belongs is determined;
[0014] Based on the clustering result of each pixel, the class label table and the clustering table are updated respectively.
[0015] In some embodiments of the present disclosure, the method further includes:
[0016] The class label table and the clustering table are initialized based on K-corrected data of any pixel in the data block.
[0017] In some embodiments of the present disclosure, encoding the class label table and the clustering table and writing the encoding result into a bitstream includes:
[0018] Encode the class label table and the cluster table to obtain encoding results of the class label table and the cluster table, and determine the code length of the encoding results;
[0019] When it is determined that the code length is less than a preset code length threshold, the encoding result is written into a code stream.
[0020] In some embodiments of the present disclosure, the method further includes:
[0021] When it is determined that the code length is greater than or equal to the preset code length threshold, each data block is clustered again until the code length is less than the preset code length threshold.
[0022] In some embodiments of the present disclosure, the method further includes:
[0023] When it is determined that the code length is less than a preset code length threshold, determining a target number of newly added classes;
[0024] Class expansion is performed according to the calling frequency of the class in the class tag table and the target number of the newly added class.
[0025] In some embodiments of the present disclosure, before respectively updating the class label table and the clustering table based on the clustering result of each pixel, the method further includes:
[0026] Determine the number of pixels in each cluster;
[0027] When it is determined that the number of pixels is less than a preset pixel threshold, the corresponding cluster is deleted.
[0028] A second aspect of the present disclosure provides a device for acquiring brightness correction data, the device comprising:
[0029] A blocking unit, used for blocking the correction data of the image;
[0030] A clustering unit, used to cluster each data block in turn to obtain a class label table and a cluster table for each data block, wherein the class label table contains the class to which each pixel in the data block belongs, and the cluster table contains K-corrected data of all pixels of the class;
[0031] A processing unit, used for encoding the class label table and the clustering table, and writing the encoding result into a bit stream;
[0032] A decoding unit, used for decoding the bit stream to obtain the class label table and the clustering table;
[0033] The first determining unit is used to determine K-corrected positive data based on the class label table and the clustering table.
[0034] In some embodiments of the present disclosure, the determining unit is further configured to:
[0035] Determine the class to which the target corresponding to each pixel belongs based on the class label table;
[0036] Based on the class to which the target corresponding to each pixel belongs, the clustering table is searched to obtain all K-corrected data in the class to which the target belongs.
[0037] In some embodiments of the present disclosure, the clustering unit is further used to:
[0038] All pixels in each data block are traversed in sequence to perform clustering, and the class to which each pixel belongs is determined;
[0039] Based on the clustering result of each pixel, the class label table and the clustering table are updated respectively.
[0040] In some embodiments of the present disclosure, the device further comprises:
[0041] An initialization unit is used to initialize the class label table and the clustering table based on K-corrected data of any pixel in the data block.
[0042] In some embodiments of the present disclosure, the processing unit is further configured to:
[0043] Encoding the class label table and the cluster table to obtain encoding results of the class label table and the cluster table, and determining a code length of the encoding results;
[0044] When it is determined that the code length is less than a preset code length threshold, the encoding result is written into a code stream.
[0045] In some embodiments of the present disclosure, the device further comprises:
[0046] The clustering unit is further configured to, when it is determined that the code length is greater than or equal to the preset code length threshold, re-cluster each data block until the code length is less than the preset code length threshold.
[0047] In some embodiments of the present disclosure, the device further comprises:
[0048] A second determining unit, configured to determine a target number of newly added classes when it is determined that the code length is less than a preset code length threshold;
[0049] The expansion unit is used to expand the class according to the calling frequency of the class in the class label table and the target number of the newly added class.
[0050] In some embodiments of the present disclosure, the device further comprises:
[0051] a third determining unit, configured to determine the number of pixels in each cluster before respectively updating the class label table and the cluster table based on the clustering result of each pixel;
[0052] The deleting unit is used to delete the corresponding cluster when it is determined that the number of pixels is less than a preset pixel threshold.
[0053] The third aspect embodiment of the present disclosure proposes an electronic device, comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the method described in the first aspect embodiment of the present disclosure.
[0054] The fourth aspect embodiment of the present disclosure proposes a non-transitory computer-readable storage medium storing computer instructions, wherein the computer instructions are used to enable a computer to execute the method described in the first aspect embodiment of the present disclosure.
[0055] The fifth aspect embodiment of the present disclosure proposes a chip, comprising one or more interface circuits and one or more processors; the interface circuit is used to receive a signal and send the signal to the processor, the signal comprising a computer instruction; when the processor executes the computer instruction, the electronic device executes the method described in the first aspect embodiment of the present disclosure.
[0056] In summary, according to the method for obtaining brightness correction data proposed in the present disclosure, the method includes dividing the correction data of the image into blocks, and clustering each data block in turn to obtain a class label table and a cluster table for each data block, wherein the class label table contains the class to which each pixel in the data block belongs, and the cluster table contains K repair correction data of all pixels of the class, the class label table and the cluster table are encoded, the encoding result is written into the bitstream, the bitstream is decoded to obtain the class label table and the cluster table, and the K repair correction data is determined based on the class label table and the cluster table. The present disclosure adopts the same clustering method for all block-level data to achieve compression in the spatial domain. In addition, a corresponding set of decoding methods can be used during decoding, thereby reducing hardware complexity.
[0057] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS
[0058] The drawings herein are incorporated into and constitute a part of the specification, illustrate embodiments consistent with the present disclosure, and together with the description are used to explain the principles of the present disclosure, and do not constitute improper limitations on the present disclosure.
[0059] Figure 1 A flowchart of a method for obtaining brightness correction data provided by an embodiment of the present disclosure;
[0060] Figure 2 A flowchart of a method for obtaining brightness correction data provided by an embodiment of the present disclosure;
[0061] Figure 3 A flowchart of a method for obtaining brightness correction data provided by an embodiment of the present disclosure;
[0062] Figure 4 A flowchart of a method for obtaining brightness correction data provided by an embodiment of the present disclosure;
[0063] Figure 5 A flowchart of a method for obtaining brightness correction data provided by an embodiment of the present disclosure;
[0064] Figure 6 A flowchart of a method for obtaining brightness correction data provided by an embodiment of the present disclosure;
[0065] Figure 7 A schematic diagram of the structure of a device for acquiring brightness correction data provided by an embodiment of the present disclosure;
[0066] Figure 8 A schematic diagram of the structure of a device for acquiring brightness correction data provided by an embodiment of the present disclosure;
[0067] Fig. 9 A schematic diagram of the structure of an electronic device provided by an embodiment of the present disclosure;
[0068] Fig.10 A schematic diagram of the structure of a chip provided in an embodiment of the present disclosure. DETAILED DESCRIPTION
[0069] Embodiments of the present disclosure are described in detail below, and examples of the embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals throughout represent the same or similar elements or elements having the same or similar functions. The embodiments described below with reference to the accompanying drawings are exemplary and are intended to be used to explain the present disclosure, and should not be construed as limiting the present disclosure.
[0070] OLED (Organic Light-Emitting Diode) screens have many advantages, such as being thin, light, delicate, sensitive, colorful, and power-saving. They are becoming more and more common in people's daily lives, such as smartphones, wearable devices, and televisions. In addition, the digital signage and automotive fields are also exploring potential application scenarios for OLED.
[0071] Due to the limitations of the manufacturing process, OLED screens are prone to uneven display panel brightness, i.e. mura, and brightness calibration is required to improve screen performance. The Demura algorithm is used to remove mura. Usually, the pixel-level brightness correction data of the screen is obtained before leaving the factory, and then the brightness correction is performed through numerical compensation to achieve the purpose of removing mura. Due to the huge amount of pixel-level brightness correction data, it needs to be compressed.
[0072] In the related technology, a block-level coding scheme can be adopted, and each block can be flexibly encoded using the optimal coding scheme, which can achieve targeted and efficient compression. However, correspondingly, the flexible coding scheme requires a corresponding hardware decoding design, and the increase in hardware complexity causes a significant increase in chip power consumption and area.
[0073] Therefore, in order to solve the problems existing in the related art, the present disclosure proposes a method for obtaining brightness correction data, which includes dividing the correction data of the image into blocks, and clustering each data block in turn to obtain a class label table and a cluster table of each data block, wherein the class label table contains the class to which each pixel in the data block belongs, and the cluster table contains K correction data of all pixels of the class, encoding the class label table and the cluster table, writing the encoding result into a bit stream, decoding the bit stream to obtain the class label table and the cluster table, and determining the K correction data based on the class label table and the cluster table.
[0074] This solution uses the same clustering method for all block-level data to achieve compression in the spatial domain. In addition, a corresponding set of decoding methods can be used during decoding, reducing hardware complexity.
[0075] The embodiments of the present disclosure are not exhaustive, but are only illustrative of some embodiments, and are not intended to be a specific limitation on the scope of protection of the present disclosure. In the absence of contradiction, each step in a certain embodiment can be implemented as an independent embodiment, and the steps can be arbitrarily combined. For example, a solution after removing some steps in a certain embodiment can also be implemented as an independent embodiment, and the order of the steps in a certain embodiment can be arbitrarily exchanged. In addition, the optional implementation methods in a certain embodiment can be arbitrarily combined; in addition, the embodiments can be arbitrarily combined, for example, some or all of the steps of different embodiments can be arbitrarily combined, and a certain embodiment can be arbitrarily combined with the optional implementation methods of other embodiments.
[0076] In each embodiment of the present disclosure, unless otherwise specified or there is a logical conflict, the terms and / or descriptions between the embodiments are consistent and can be referenced to each other, and the technical features in different embodiments can be combined to form a new embodiment based on their internal logical relationships.
[0077] The terms used in the embodiments of the present disclosure are only for the purpose of describing specific embodiments and are not intended to limit the present disclosure.
[0078] In the embodiments of the present disclosure, unless otherwise specified, elements expressed in the singular form, such as "a", "an", "the", "above", "said", "aforementioned", "this", etc., may mean "one and only one", or "one or more", "at least one", etc. For example, when using articles such as "a", "an", "the" in English in translation, the noun after the article may be understood as a singular expression or a plural expression.
[0079] In some embodiments, terms such as "in response to ...", "in response to determining ...", "in the case of ...", "at the time of ...", "when ...", "if ...", "if ...", etc. can be used interchangeably.
[0080] In some embodiments, terms such as "greater than", "greater than or equal to", "not less than", "more than", "more than or equal to", "not less than", "higher than", "higher than or equal to", "not lower than", and "above" can be replaced with each other, and terms such as "less than", "less than or equal to", "not greater than", "less than", "less than or equal to", "no more than", "lower than", "lower than or equal to", "not higher than", and "below" can be replaced with each other.
[0081] The prefixes such as "first" and "second" in the embodiments of the present disclosure are only for distinguishing different description objects and do not constitute any restrictions on the position, order, priority, quantity or content of the description objects. For the statement of the description objects, please refer to the description in the context of the claims or embodiments, and no unnecessary restrictions should be constituted due to the use of prefixes.
[0082] In the embodiments of the present disclosure, “plurality” refers to two or more.
[0083] In the embodiments of the present disclosure, terms such as "import", "input", and "read in" can be used interchangeably.
[0084] In some embodiments, devices, etc. can be interpreted as physical or virtual, and their names are not limited to the names recorded in the embodiments. Terms such as "device", "equipment", "device", "circuit", "network element", "node", "function", "unit", "section", "system", "network", "chip", "chip system", "entity", and "subject" can be used interchangeably.
[0085] In some embodiments, the terms "terminal", "terminal device", "user equipment (UE)", "user terminal" "mobile station (MS)", "mobile terminal (MT)", subscriber station, mobile unit, subscriber unit, wireless unit, remote unit, mobile device (mobile device), wireless device (wireless device), wireless communication device (wireless communication device), remote device (remote device), mobile subscriber station (mobile subscriber station), access terminal (access terminal), mobile terminal (mobile terminal), wireless terminal (wireless terminal), remote terminal (remote terminal), handset (handset), user agent (user agent), mobile client (mobile client), client (client) and the like can be used interchangeably.
[0086] Figure 1 This is a flow chart of a method for obtaining brightness correction data provided by an embodiment of the present disclosure. The method can be applicable to application scenarios such as smart terminals, for example, executed by a terminal with an integrated image processing function or an image processor in the terminal, or executed by other devices suitable for performing image processing to output K-correction data about brightness, and the present disclosure is not limited thereto. Figure 1 As shown, the method for obtaining brightness correction data includes steps 101-103.
[0087] Step 101 : divide the corrected data of the image into blocks, and cluster each data block in turn to obtain a class label table and a clustering table for each data block.
[0088] In compensation, the grayscale of the three colors RGB needs to be compensated separately. The method described in the embodiment of the present disclosure performs the same processing on the correction data of the three colors. Therefore, the method described below is introduced for one color, and the other two processing methods are the same and will not be repeated.
[0089] The class label table contains the class to which each pixel in the data block belongs, and the cluster table contains K-corrected data of all pixels in the class.
[0090] The correction data described in the embodiment of the present disclosure may be pixel-level brightness correction data of the screen acquired before the screen leaves the factory, or may be brightness correction data acquired in any manner in other scenarios of the terminal.
[0091] After the correction data of brightness is obtained, the correction data is pre-divided uniformly or non-uniformly to obtain a number of data blocks. In practical applications, a number of data blocks of the same size are obtained by uniformly dividing the data, such as a three-dimensional data block with M rows, N columns and K dimensions. It should be noted that the value of K is consistent with the number of gray levels of the correction data. For example, the brightness correction data currently used for demura is usually between 2 and 8 levels, such as 0, 16, 32, 64, 128, 255 gray levels, etc. The K value of each pixel is the same or different. The specific embodiment of the present disclosure does not specifically limit the K value.
[0092] When clustering the correction data of each data block of the entire panel (image), clustering is performed using the same or similar clustering thresholds to achieve uniformity of the corrected brightness on the terminal screen, while also making the compensation value damage between blocks more uniform.
[0093] This paper compresses data in data blocks, so clustering is performed block by block, or clustering is performed in parallel to improve data processing efficiency. When performing clustering, any implementation method in the relevant technology can be used, which will not be repeated here.
[0094] After clustering is completed, the clustering results of each data block are summarized, that is, the class to which each pixel in the data block belongs is written into the class label table, and the K-corrected data of all pixels of the class are written into the clustering table. In addition, the clustering table also includes the number of class centers, or the number of class centers exists in the form of a separate table. The specific details are not limited in the embodiments of the present disclosure.
[0095] For ease of understanding, assume that there are 100 pixels in the data block, and the class label table records the class label of each pixel. The class label is unique, that is, 100 pixels correspond to 100 class labels. The same class has the same corresponding class label, and different classes have different corresponding class labels. In the clustering table, for 100 pixels, the number of clusters is not limited, and the number of pixels in each cluster is not limited. For example, 100 pixels are clustered into 5 categories, class 1 contains 10 pixels, class 2 contains 20 pixels, class 3 contains 30 pixels, class 4 contains 30 pixels, class 5 contains 10 pixels, and so on. It should be noted that the above examples are only exemplary explanations given for ease of understanding, and are not limitations on the specific number of pixels or clusters.
[0096] Step 102: Encode the class label table and the clustering table, and write the encoding result into the bitstream.
[0097] All data blocks use the same cluster coding algorithm. Compared with the flexible and multiple block-level coding schemes in the related art, the encoding and decoding method adopted in the present disclosure has low hardware complexity.
[0098] The present disclosure writes a code stream indication to write the encoding results of the class label table and the clustering table into the code stream.
[0099] In addition, when encoding, encoding is performed based on the class label table and the cluster table (or including the number of class centers), which greatly reduces the amount of encoded data and shortens the processing time of the chip.
[0100] When implementing the encoding, any method may be used, and the specific embodiments of the present disclosure are not limited thereto.
[0101] Step 103: decode the bitstream to obtain the class label table and the cluster table, and determine K-repair correction data based on the class label table and the cluster table.
[0102] Hardware decompression only requires a set of cluster decoding algorithms corresponding to the cluster encoding algorithm.
[0103] In the embodiment of the present disclosure, the encoded content is consistent with the decoded content. When implementing the decoding, any method can be used, and the specific embodiment of the present disclosure is not limited.
[0104] In summary, according to the method for obtaining brightness correction data proposed in the present disclosure, the method includes dividing the correction data of the image into blocks, and clustering each data block in turn to obtain a class label table and a cluster table for each data block, wherein the class label table contains the class to which each pixel in the data block belongs, and the cluster table contains K repair correction data of all pixels of the class, the class label table and the cluster table are encoded, the encoding result is written into the bit stream, the bit stream is decoded to obtain the class label table and the cluster table, and the K repair correction data is determined based on the class label table and the cluster table. The present disclosure adopts the same clustering method for all block-level data to achieve compression in the spatial domain. In addition, a corresponding set of decoding methods can be used during decoding, thereby reducing hardware complexity.
[0105] Figure 2 The following further shows a flow chart of a method for obtaining brightness correction data proposed in the present disclosure. Figure 2 The embodiment shown further explains step 103. Figure 2 The following steps may be included:
[0106] Step 201: Determine the class to which the object corresponding to each pixel belongs based on the class label table.
[0107] The class label table stores the target class label corresponding to each pixel block in the data block. The class to which the corresponding target belongs is determined based on the target class label, and the class label is unique.
[0108] Step 202: based on the class to which the target corresponding to each pixel belongs, search the cluster table to obtain all K-corrected data in the class to which the target belongs.
[0109] After determining the class to which the target belongs based on the class label table, the clustering table is read based on the class to which the target belongs, and all K-corrected data in the class to which the target belongs are queried in the clustering table.
[0110] Figure 2 The method described can also be understood as a process of reconstructing correction data based on encoding, reconstructing the correction data and performing interpolation fitting to obtain correction data at each grayscale, which is added to the original display image to achieve brightness compensation.
[0111] Figure 3 The following further shows a flow chart of a method for obtaining brightness correction data proposed in the present disclosure. Figure 2 The embodiment shown further explains step 101. Figure 3 The following steps may be included:
[0112] Step 301, traverse all pixels in each data block in turn to perform clustering, and determine the class to which each pixel belongs.
[0113] Step 302: Based on the clustering result of each pixel, update the class label table and the clustering table respectively.
[0114] During clustering, the pixels of the block to be clustered (the data block currently being processed) can be divided into two data sets, one is the clustered pixel set, and the other is the unclustered pixel set. In the initial state, the clustering table and the class label table are both empty, the clustered pixel set is empty, and the unclustered pixel set is all the pixels of the block to be clustered. After clustering, the clustering table stores multiple class centers, the clustered pixel set is all the pixels of the block, and the unclustered pixel set is empty.
[0115] Step 301 is used to classify the pixels in the block pixel by pixel, and perform one or more clustering iterations at the block level. After the clustering process converges, the updated label table and clustering table are returned to step 302.
[0116] In the first round of clustering, each pixel is traversed to determine whether it meets the writing conditions of the class center. If it meets the conditions, the currently traversed pixel is written into the class center as a new class. Otherwise, the clustering is successful, and its class label table and cluster table are updated. When traversing, it can be traversed sequentially or in order of eigenvalue size. The eigenvalue is used to express the difference in data characteristics between pixels. Specifically, the embodiment of the present disclosure does not limit the traversal method.
[0117] In non-first-round clustering, each pixel is traversed and the cluster center closest to the pixel is found in the clustering table as the class label (or class index value) of the class to which the pixel finally belongs.
[0118] After clustering all pixels of the block or updating their classes in each round, update each class center in the clustering table, first count all pixels belonging to the class, calculate the mean of the compensation data of each grayscale layer of the pixels to which they belong, and then count the number of pixels whose compensation data of each grayscale layer of the pixels to which they belong is higher than the mean and lower than the mean. If the number of pixels above the mean is large, round it up, otherwise, round it down, so that the degree of damage to the compensation data of more pixels is low.
[0119] When the preset maximum number of iterations (manual calibration) is reached or the class index values of all pixels no longer change, the clustering process is considered to have converged and the clustering is finished. The clustering table and the class label value of each pixel in the block are returned.
[0120] Figure 4 A flow chart showing a method for obtaining brightness correction data proposed in the present disclosure is shown. Figure 4 As shown, including:
[0121] Step 401 : Initialize the class label table and the cluster table based on K-corrected data of any pixel in the data block.
[0122] The initialization of the class label table and the clustering table plays an important role in determining whether the compensation data damage caused by compression is evenly distributed and the iterative convergence speed of the clustering algorithm. If the pixels on the panel are clustered directly according to their positions without initialization, the pixels that are traversed first will be stored in the cluster first, and their degree of damage will be lower than that of the pixels traversed later. This may cause a certain degree of brightness difference when compensating the screen brightness.
[0123] There are many different ways to initialize, two of which are listed here. The first is to set a different random seed for each block, and obtain a certain number of random numbers as the class label of the pixels in the traversal block. When the clustered pixel meets the writing condition of the class center, the pixel is written into the class center as a new class. The second is to set an eigenvalue for the compensation data of each pixel. The eigenvalue is used to express the difference in data characteristics between pixels. By setting a priority for the eigenvalue (such as traversing the large eigenvalue first), the high-priority pixel is directly used as the initial class center. The calculation of the eigenvalue can be set to the sum of the compensation values of K layers, and there is no specific restriction here.
[0124] After initialization, the initial cluster centers are stored in the clustering table, and the clustered pixel set is not empty.
[0125] Step 402, divide the corrected data of the image into blocks, and cluster each data block in turn to obtain a class label table and a cluster table for each data block, wherein the class label table contains the class to which each pixel in the data block belongs, and the cluster table contains the K-repair correction data of all pixels of the class.
[0126] Step 403: Encode the class label table and the clustering table, and write the encoding result into the bitstream.
[0127] Step 404: decode the code stream to obtain the class label table and the cluster table, and determine K-repair correction data based on the class label table and the cluster table.
[0128] For instructions on steps 402 to 404, please refer to Figure 1 The detailed description of the embodiments of the present disclosure will not be repeated here.
[0129] Figure 5 The following further shows a flow chart of a method for obtaining brightness correction data proposed in the present disclosure. Figure 2 The embodiment shown further explains step 102. Figure 5 The following steps may be included:
[0130] Step 501: Encode the class label table and the cluster table to obtain encoding results of the class label table and the cluster table, and determine the code length of the encoding.
[0131] If it is determined that the code length is less than the preset code length threshold, step 502 is executed; if it is determined that the code length is greater than or equal to the preset code length threshold, step 503 is executed.
[0132] The preset code length threshold described in the embodiment of the present disclosure can be configured according to business requirements or set according to experience, and the size of the preset code length threshold is not specifically limited.
[0133] In some embodiments, the preset code length threshold inter-block encoding code length may fluctuate according to actual clustering conditions.
[0134] Step 502: Write the encoding result into a bit stream.
[0135] Step 503: re-cluster each data block until the code length is smaller than the preset code length threshold.
[0136] When re-clustering, the clustering threshold needs to be adjusted once or multiple times to allow pixels with a larger distance between the correction data to be grouped together to achieve a higher compression ratio. Clustering is terminated until the corresponding code length of the clustering result based on the adjusted clustering threshold is less than the preset code length threshold during encoding.
[0137] Figure 6 A flow chart showing a method for obtaining brightness correction data proposed in the present disclosure is shown. Figure 4 As shown, including:
[0138] Step 601, divide the corrected data of the image into blocks, and cluster each data block in turn to obtain a class label table and a cluster table for each data block, wherein the class label table contains the class to which each pixel in the data block belongs, and the cluster table contains the K-repaired corrected data of all pixels of the class.
[0139] Step 602: determine the number of pixels in each cluster, and if it is determined that the number of pixels is less than a preset pixel threshold, delete the corresponding cluster.
[0140] When the cluster center of the cluster table converges and is fixed, clustering post-processing is performed. The disclosed embodiment also provides a class deletion mechanism, the purpose of which is to remove a limited number of class centers with a small number of pixels and reduce the code length required for encoding without affecting the compensation effect.
[0141] Specifically, if the number of attributable pixels is low, the class difference between the class center and the closest class center in the cluster table is within an acceptable range, and if the block has a higher bit rate than other blocks, the class center can be merged into its closest class center to reduce the number of cluster tables, while only causing a single pixel to be damaged more heavily. The impact of this difference on the effect during actual screen brightness compensation is almost negligible. Among them, the upper limit of the number of deletions can be set as a parameter related to the number of block pixels, and the acceptable range of class differences can be manually calibrated.
[0142] In some embodiments, the deletion condition of a class can be formulated as:
[0143] (mb_bit_i>ave_mb_bit*factor2)and(frequency_num<=delete_frequency_thresh)and(cluster_dif <dif_thresh)and(delete_cluster_num<=delete_cluster_tresh)
[0144] Among them, mb_bit_i represents the code length required for encoding the current block, ave_mb_bit is the average code length of the encoded block, factor2 is the preset ratio parameter, frequency_num is the frequency of class citation, delete_frequency_thresh is the reference frequency threshold for deleting the class center, cluster_dif represents the difference between the center of the class to be processed and its nearest class center, dif_thresh is the preset acceptable range of class difference, delete_cluster_num is the number of deleted classes of the current block class deletion mechanism, and delete_cluster_thresh is the preset upper limit of the number of deletable classes. The traversal priority of the class center in the clustering table of the deletion mechanism can be obtained by sorting the data difference of each class reclassified from small to large from the class center with a reference frequency less than the threshold.
[0145] Step 603: Encode the class label table and the clustering table, and determine the code length of the encoding.
[0146] Step 604: When it is determined that the code length is less than a preset code length threshold, a target number of newly added classes is determined.
[0147] The disclosed embodiment also provides a class expansion mechanism for alleviating and reducing compensation damage as much as possible using a limited bit rate. If the writing condition of additional class centers is met after clustering converges, a limited number of class centers can be written to expand the cluster table.
[0148] It should be noted that the definition of a finite number of class centers is to newly write class centers in the clustering table, without increasing the code length of the class labels to which each pixel belongs. If the number of class centers after the first round of clustering is P, the maximum number of newly added class centers is:
[0149] left_cluster_num = (1 << ceil(log2(P))) - P.
[0150] In another implementation manner of the present disclosure embodiment, determining the target number of newly added classes can also be achieved through the following method: The writing condition of additional class centers (determining the target number of newly added classes) can comprehensively consider the compensation damage degree and the number of bits required to write new class centers. For example, this condition can be set as: (new_cluster_bit < pixel_num * factor1) and (frequency_num >= add_frequency_thresh) and (add_cluster_num < left_cluster_num), where the number of bits new_cluster_bit required to encode the new class center is less than a certain proportion pixel_num * factor1 of the number of block pixels, frequency_num is the frequency of class reference, the class has at least add_frequency_thresh and above clustering pixels, factor1 is a proportional parameter obtained by manual calibration, and add_cluster_num is the number of expanded classes of the current block class expansion mechanism.
[0151] Step 605: Perform class expansion according to the call frequency of the classes in the class label table and the target number of the newly added classes.
[0152] The traversal priority of class centers in the clustering table of the expansion mechanism can be obtained by sorting the call frequencies (or reference frequencies) of each class according to the amount. In this way, the compensation damage can be reduced to a certain extent without increasing too much bitstream.
[0153] After clustering ends, a certain number of class centers are stored in the clustering table, the set of classified pixels is all the pixels within the block, and the set of pixels to be classified is empty.
[0154] Step 606: Re-encode based on the class label table and the clustering table after class expansion, and write the encoding into the bitstream.
[0155] Step 607: Decode the bitstream to obtain the class label table and the clustering table, and determine the K repair data based on the class label table and the clustering table.
[0156] The embodiments of the present disclosure have the following beneficial effects:
[0157] 1. Divide the screen panel into blocks, use the same or similar clustering thresholds to perform block-level clustering compression on the panel, and achieve compression in the spatial domain. All blocks use the same clustering compression algorithm, and hardware decompression only requires a set of clustering decoding algorithms corresponding to the clustering encoding algorithm. Compared with the existing block-level flexible and multiple encoding schemes, the hardware complexity is low.
[0158] 2. The bit rate can be flexibly allocated between blocks according to the data characteristics of each block. Under the same clustering threshold parameter, blocks with complex mura damage distribution can be clustered into more classes, and vice versa. The block-level clustering table has a more flexible compensation data distribution;
[0159] 3. Flexible class expansion and deletion mechanism, flexibly fine-tuning the class table based on clustering results, bit rate, compensation effect and other considerations, increasing the flexibility of the block-level clustering algorithm, balancing the compression rate and compensation effect, and improving the screen compensation effect and the generalization ability of the compression model.
[0160] Corresponding to the above-mentioned method for obtaining brightness correction data, the present invention also provides a device for obtaining brightness correction data. Since the device embodiment of the present invention corresponds to the above-mentioned method embodiment, details not disclosed in the device embodiment can be referred to the above-mentioned method embodiment, and will not be described in detail in the present invention.
[0161] Figure 7 The present invention provides a schematic diagram of a device 700 for acquiring brightness correction data, wherein the device 700 comprises:
[0162] A blocking unit 701, used for blocking the corrected data of the image;
[0163] A clustering unit 702 is used to cluster each data block in turn to obtain a class label table and a cluster table of each data block, wherein the class label table contains the class to which each pixel in the data block belongs, and the cluster table contains K-corrected data of all pixels of the class;
[0164] The processing unit 703 is used to encode the class label table and the clustering table, and write the encoding result into the bit stream;
[0165] A decoding unit 704, configured to decode the bitstream to obtain the class label table and the clustering table;
[0166] The first determining unit 705 is configured to determine K-corrected positive data based on the class label table and the clustering table.
[0167] In summary, according to the device for acquiring brightness correction data proposed in the present disclosure, the device includes dividing the correction data of the image into blocks, and clustering each data block in turn to obtain a class label table and a cluster table for each data block, wherein the class label table contains the class to which each pixel in the data block belongs, and the cluster table contains K repair correction data of all pixels of the class, the class label table and the cluster table are encoded, the encoding result is written into the bit stream, the bit stream is decoded to obtain the class label table and the cluster table, and the K repair correction data is determined based on the class label table and the cluster table. The present disclosure adopts the same clustering method for all block-level data to achieve compression in the spatial domain. In addition, a corresponding set of decoding methods can be used during decoding, thereby reducing hardware complexity.
[0168] Furthermore, in a possible implementation of the embodiment of the present disclosure, as Figure 8 As shown, the first determining unit 705 is further configured to:
[0169] Determine the class to which the target corresponding to each pixel belongs based on the class label table;
[0170] Based on the class to which the target corresponding to each pixel belongs, the clustering table is searched to obtain all K-corrected data in the class to which the target belongs.
[0171] Furthermore, in a possible implementation of the embodiment of the present disclosure, as Figure 8 As shown, the clustering unit 702 is also used for:
[0172] All pixels in each data block are traversed in sequence to perform clustering, and the class to which each pixel belongs is determined;
[0173] Based on the clustering result of each pixel, the class label table and the clustering table are updated respectively.
[0174] Furthermore, in a possible implementation of the embodiment of the present disclosure, as Figure 8 As shown, the device also includes:
[0175] The initialization unit 706 is used to initialize the class label table and the clustering table based on the K-corrected data of any pixel in the data block.
[0176] Furthermore, in a possible implementation of the embodiment of the present disclosure, as Figure 8 As shown, the processing unit 703 is also used for:
[0177] Encode the class label table and the cluster table to obtain encoding results of the class label table and the cluster table, and determine the code length of the encoding;
[0178] When it is determined that the code length is less than a preset code length threshold, the code is written into the code stream.
[0179] Furthermore, in a possible implementation of the embodiment of the present disclosure, as Figure 8 As shown, the device also includes:
[0180] The clustering unit 702 is further configured to, when it is determined that the code length is greater than or equal to the preset code length threshold, re-cluster each data block until the code length is less than the preset code length threshold.
[0181] Furthermore, in a possible implementation of the embodiment of the present disclosure, as Figure 8 As shown, the device also includes:
[0182] A second determining unit 707, configured to determine a target number of newly added classes when it is determined that the code length is less than a preset code length threshold;
[0183] The expansion unit 708 is used to expand the class according to the calling frequency of the class in the class tag table and the target number of the newly added class.
[0184] Furthermore, in a possible implementation of the embodiment of the present disclosure, as Figure 8 As shown, the device also includes:
[0185] A third determining unit 709, configured to determine the number of pixels in each cluster before respectively updating the class label table and the cluster table based on the clustering result of each pixel;
[0186] The deleting unit 710 is used to delete the corresponding cluster when it is determined that the number of pixels is less than a preset pixel threshold.
[0187] Since the device provided in the embodiment of the present disclosure corresponds to the methods provided in the above-mentioned embodiments, the implementation of the method is also applicable to the device provided in the embodiment and will not be described in detail in this embodiment.
[0188] In the embodiments provided in the present application, the methods and devices provided in the embodiments of the present application are introduced. In order to implement the functions in the methods provided in the embodiments of the present application, the electronic device may include a hardware structure and a software module, and implement the functions in the form of a hardware structure, a software module, or a hardware structure plus a software module. A function of the functions may be executed in the form of a hardware structure, a software module, or a hardware structure plus a software module.
[0189] Fig. 98 is a block diagram of an electronic device 800 for implementing the above-mentioned method for obtaining brightness correction data according to an exemplary embodiment. For example, the electronic device 800 may be a mobile phone, a computer, a digital broadcast terminal, a messaging device, a game console, a tablet device, a medical device, a fitness device, a personal digital assistant, etc.
[0190] Reference Fig. 9 , the electronic device 800 may include one or more of the following components: a processing component 802 , a memory 804 , a power component 806 , a multimedia component 808 , an audio component 810 , an input / output (I / O) interface 812 , a sensor component 814 , and a communication component 816 .
[0191] The processing component 802 generally controls the overall operation of the electronic device 800, such as operations associated with display, phone calls, data communications, camera operations, and recording operations. The processing component 802 may include one or more processors 820 to execute instructions to complete all or part of the steps of the above-mentioned method. In addition, the processing component 802 may include one or more modules to facilitate the interaction between the processing component 802 and other components. For example, the processing component 802 may include a multimedia module to facilitate the interaction between the multimedia component 808 and the processing component 802.
[0192] The memory 804 is configured to store various types of data to support operations on the electronic device 800. Examples of such data include instructions for any application or method operating on the electronic device 800, contact data, phone book data, messages, pictures, videos, etc. The memory 804 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEP ROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk.
[0193] The power supply component 806 provides power to the various components of the electronic device 800. The power supply component 806 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to the electronic device 800.
[0194] The multimedia component 808 includes a screen that provides an output interface between the electronic device 800 and the user. In some embodiments, the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touch, slide, and gestures on the touch panel. The touch sensor may not only sense the boundaries of the touch or slide action, but also detect the duration and pressure associated with the touch or slide operation. In some embodiments, the multimedia component 808 includes a front camera and / or a rear camera. When the electronic device 800 is in an operating mode, such as a shooting mode or a video mode, the front camera and / or the rear camera may receive external multimedia data. Each front camera and rear camera may be a fixed optical lens system or have a focal length and optical zoom capability.
[0195] The audio component 810 is configured to output and / or input audio signals. For example, the audio component 810 includes a microphone (MIC), and when the electronic device 800 is in an operating mode, such as a call mode, a recording mode, and a voice recognition mode, the microphone is configured to receive an external audio signal. The received audio signal can be further stored in the memory 804 or sent via the communication component 816. In some embodiments, the audio component 810 also includes a speaker for outputting audio signals.
[0196] I / O interface 812 provides an interface between processing component 802 and peripheral interface modules, such as keyboards, click wheels, buttons, etc. These buttons may include but are not limited to: home button, volume button, start button, and lock button.
[0197] The sensor assembly 814 includes one or more sensors for providing various aspects of status assessment for the electronic device 800. For example, the sensor assembly 814 can detect the open / closed state of the electronic device 800, the relative positioning of components, such as the display and keypad of the electronic device 800, and the sensor assembly 814 can also detect the position change of the electronic device 800 or a component of the electronic device 800, the presence or absence of contact between the user and the electronic device 800, the orientation or acceleration / deceleration of the electronic device 800, and the temperature change of the electronic device 800. The sensor assembly 814 may include a proximity sensor configured to detect the presence of nearby objects without any physical contact. The sensor assembly 814 may also include an optical sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, the sensor assembly 814 may also include an accelerometer, a gyroscope sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.
[0198] The communication component 816 is configured to facilitate wired or wireless communication between the electronic device 800 and other devices. The electronic device 800 can access a wireless network based on a communication standard, such as WiFi, 2G or 3G, 4G LTE, 5G NR (NewRadio) or a combination thereof. In an exemplary embodiment, the communication component 816 receives a broadcast signal or broadcast-related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communication component 816 also includes a near field communication (NFC) module to facilitate short-range communication. For example, the NFC module can be implemented based on radio frequency identification (RFID) technology, infrared data association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology and other technologies.
[0199] In an exemplary embodiment, the electronic device 800 may be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components to perform the above methods.
[0200] In an exemplary embodiment, a non-transitory computer-readable storage medium including instructions is also provided, such as a memory 804 including instructions, and the above instructions can be executed by the processor 820 of the electronic device 800 to perform the above method for image processing. For example, the non-transitory computer-readable storage medium can be a ROM, a random access memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, etc.
[0201] The embodiments of the present disclosure further provide a non-transitory computer-readable storage medium storing computer instructions, wherein the computer instructions are used to enable a computer to execute the method described in the above embodiments of the present disclosure.
[0202] For electronic devices that may be chips or chip systems, see Fig.10 Schematic diagram of the chip structure shown. Fig.10 The chip shown includes a processor 901 and an interface 902. The number of the processor 901 can be one or more, and the number of the interface 902 can be multiple.
[0203] Optionally, the chip further includes a memory 903, and the memory 903 is used to store necessary computer programs and data.
[0204] Those skilled in the art may also understand that the various illustrative logical blocks and steps listed in the embodiments of the present application may be implemented by electronic hardware, computer software, or a combination of the two. Whether such functions are implemented by hardware or software depends on the specific application and the design requirements of the entire system. Those skilled in the art may use various methods to implement the functions for each specific application, but such implementation should not be understood as exceeding the scope of protection of the embodiments of the present application.
[0205] It should be noted that the terms "first", "second", etc. in the specification and claims of the present disclosure and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present disclosure described herein can be implemented in an order other than those illustrated or described herein. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present disclosure. Instead, they are merely examples of devices and methods consistent with some aspects of the present disclosure as detailed in the appended claims.
[0206] In the description of this specification, the description with reference to the terms "one embodiment", "some embodiments", "illustrative embodiments", "examples", "specific examples" or "some examples" etc. means that the specific features, structures, materials or characteristics described in conjunction with the embodiments or examples are included in at least one embodiment or example of the present invention. In this specification, the schematic representation of the above terms does not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described may be combined in any one or more embodiments or examples in a suitable manner.
[0207] Any process or method description in a flowchart or otherwise described herein may be understood to represent a module, segment or portion of code that includes one or more executable instructions for implementing the steps of a specific logical function or process, and the scope of the preferred embodiments of the present invention includes alternative implementations in which functions may not be performed in the order shown or discussed, including performing functions in a substantially simultaneous manner or in the reverse order depending on the functions involved, which should be understood by those skilled in the art to which the embodiments of the present invention belong.
[0208] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as an ordered list of executable instructions for implementing logical functions, and can be embodied in any computer-readable medium for use by an instruction execution system, device or apparatus (such as a computer-based system, a system including a processing module, or other system that can fetch instructions from an instruction execution system, device or apparatus and execute instructions), or in combination with these instruction execution systems, devices or apparatuses. For the purposes of this specification, "computer-readable medium" can be any device that can contain, store, communicate, propagate or transmit a program for use by an instruction execution system, device or apparatus, or in combination with these instruction execution systems, devices or apparatuses. More specific examples of computer-readable media (a non-exhaustive list) include the following: an electrical connection with one or more wires (control method), a portable computer disk box (magnetic device), a random access memory (RAM), a read-only memory (ROM), an erasable and programmable read-only memory (EPROM or flash memory), a fiber optic device, and a portable compact disk read-only memory (CDROM). In addition, the computer-readable medium may even be paper or other suitable medium on which the program is printed, since the program may be obtained electronically, for example, by optically scanning the paper or other medium and then editing, interpreting or otherwise processing in a suitable manner if necessary, and then stored in a computer memory.
[0209] It should be understood that the various parts of the embodiments of the present invention can be implemented by hardware, software, firmware or a combination thereof. In the above embodiments, multiple steps or methods can be implemented by software or firmware stored in a memory and executed by a suitable instruction execution system. For example, if implemented by hardware, as in another embodiment, it can be implemented by any one of the following technologies known in the art or their combination: a discrete logic circuit having a logic gate circuit for implementing a logic function for a data signal, a dedicated integrated circuit having a suitable combination of logic gate circuits, a programmable gate array (PGA), a field programmable gate array (FPGA), etc.
[0210] A person of ordinary skill in the art may understand that all or part of the steps of the method for implementing the above-mentioned embodiment may be completed by instructing the relevant hardware through a program, and the program may be stored in a computer-readable storage medium, which, when executed, includes one of the steps of the method embodiment or a combination thereof.
[0211] In addition, each functional unit in each embodiment of the present invention may be integrated into a processing module, or each unit may exist physically separately, or two or more units may be integrated into one module. The above-mentioned integrated module may be implemented in the form of hardware or in the form of a software functional module. If the integrated module is implemented in the form of a software functional module and sold or used as an independent product, it may also be stored in a computer-readable storage medium. The above-mentioned storage medium may be a read-only memory, a disk or an optical disk, etc.
[0212] Although the embodiments of the present invention have been shown and described above, it is to be understood that the above embodiments are exemplary and are not to be construed as limitations of the present invention. A person skilled in the art may make changes, modifications, substitutions and variations to the above embodiments within the scope of the present invention.
Claims
1. A method for obtaining brightness correction data, characterized in that: The method comprises: Divide the corrected data of the image into blocks, and cluster each data block in turn to obtain a class label table and a cluster table of each data block, wherein the class label table contains the class to which each pixel in the data block belongs, and the cluster table contains K-repaired corrected data of all pixels of the class; Encode the class label table and the clustering table, and write the encoding result into a bitstream; The code stream is decoded to obtain the class label table and the cluster table, and K-repair correction data is determined based on the class label table and the cluster table.
2. The method according to claim 1, characterized in that: The determining of K-maintenance positive data based on the class label table and the cluster table includes: Determine the class to which the target corresponding to each pixel belongs based on the class label table; Based on the class to which the target corresponding to each pixel belongs, the clustering table is searched to obtain all K-corrected data in the class to which the target belongs.
3. The method according to claim 1, characterized in that The step of clustering each data block in turn to obtain a class label table and a clustering table for each data block includes: All pixels in each data block are traversed in sequence to perform clustering, and the class to which each pixel belongs is determined; Based on the clustering result of each pixel, the class label table and the clustering table are updated respectively.
4. The method according to claim 3, characterized in that The method further comprises: The class label table and the clustering table are initialized based on K-corrected data of any pixel in the data block.
5. The method according to claim 1, characterized in that The step of encoding the class label table and the cluster table and writing the encoding result into a bitstream includes: Encode the class label table and the cluster table to obtain encoding results of the class label table and the cluster table, and determine the code length of the encoding results; When it is determined that the code length is less than a preset code length threshold, the encoding result is written into a code stream.
6. The method according to claim 5, characterized in that The method further comprises: When it is determined that the code length is greater than or equal to the preset code length threshold, each data block is clustered again until the code length is less than the preset code length threshold.
7. The method according to claim 1, characterized in that The method further comprises: When it is determined that the code length is less than a preset code length threshold, determining a target number of newly added classes; Class expansion is performed according to the calling frequency of the class in the class tag table and the target number of the newly added class.
8. The method according to claim 3, characterized in that Before respectively updating the class label table and the clustering table based on the clustering result of each pixel, the method further includes: Determine the number of pixels in each cluster; When it is determined that the number of pixels is less than a preset pixel threshold, the corresponding cluster is deleted.
9. A device for acquiring brightness correction data, characterized in that: The device comprises: A blocking unit, used for blocking the correction data of the image; A clustering unit, used to cluster each data block in turn to obtain a class label table and a cluster table for each data block, wherein the class label table contains the class to which each pixel in the data block belongs, and the cluster table contains K-corrected data of all pixels of the class; A processing unit, used for encoding the class label table and the clustering table, and writing the encoding result into a bit stream; A decoding unit, used for decoding the bit stream to obtain the class label table and the clustering table; The first determining unit is used to determine K-corrected positive data based on the class label table and the clustering table.
10. An electronic device, characterized in that: include: at least one processor; as well as a memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method according to any one of claims 1 to 8.
11. A non-transitory computer-readable storage medium storing computer instructions, characterized in that: The computer instructions are used to cause the computer to execute the method according to any one of claims 1-8.
12. A chip, characterized in that: The chip comprises one or more interface circuits and one or more processors; the interface circuit is used to receive a signal and send the signal to the processor, wherein the signal comprises a computer instruction; when the processor executes the computer instruction, the chip executes the method described in any one of claims 1 to 8.
Citation Information
Patent Citations
Demura data compression method, mura compensation method and device
CN109672451A
Compression method for DeMURA data of OLED screen
CN110162290A
Cluster refinement for texture synthesis in video coding
CN111434115A
Code rate control method and device, electronic equipment and storage medium
CN115103186A
Demura data processing method based on self-adaptive rectangular blocks and display device
CN117995112A