Model training method and color calibration method

By constructing multiple candidate models for parallel iterative optimization and refined training, and combining the PSO algorithm and the Elman neural network model, the efficiency and accuracy issues of RGB to CIEXYZ color space conversion are solved, achieving high-fidelity color calibration, which is suitable for professional image processing and mass production calibration of displays.

CN122157616APending Publication Date: 2026-06-05LCFC HEFEI ELECTRONICS TECH

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
LCFC HEFEI ELECTRONICS TECH
Filing Date
2026-03-17
Publication Date
2026-06-05

AI Technical Summary

Technical Problem

Existing technologies for converting RGB to CIEXYZ color space suffer from cumbersome and time-consuming processes, difficulty in accurately fitting the complex nonlinear response of displays, and challenges in optimizing model parameters, resulting in a need for further improvement in conversion accuracy and efficiency.

Method used

By constructing multiple candidate models with different parameters and iteratively optimizing them in parallel, the optimal model is selected and then finely adjusted. The initial candidate model is generated using the particle swarm optimization algorithm, and the parameters are updated and selected by combining the PSO algorithm and the Elman neural network model. Finally, the gradient descent method is used for fine-tuning training to obtain a high-precision color calibration model.

Benefits of technology

It significantly improves the accuracy and efficiency of the model, can reproduce the target color with high fidelity, is suitable for professional image processing and mass production calibration of displays, and solves the problem of different color display effects caused by individual differences in displays.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122157616A_ABST
    Figure CN122157616A_ABST
Patent Text Reader

Abstract

The application provides a model training method and a color calibration method, which can be applied to the field of display device calibration technology. The model training method comprises the following steps: obtaining a plurality of candidate models, each candidate model being used to determine a first color code of a color displayed by a target display in a target color space according to display driving data of the target display; iteratively updating parameters of each candidate model according to a first error of each candidate model until the first preset condition is met, obtaining a plurality of updated candidate models, and screening an intermediate model from the updated candidate models; iteratively adjusting the parameters of the intermediate model according to a second error of the intermediate model until the second preset condition is met, and determining the adjusted intermediate model as a target color calibration model, wherein the target color calibration model is used to perform inverse operation according to the target color code of the input target color to obtain target display driving data required by the target display to display the target color.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of display device calibration technology, specifically to a model training method and a color calibration method. Background Technology

[0002] In applications such as image quality assessment and color display, ensuring color consistency across different devices is crucial. Because the Red-Green-Blue (RGB) color space is device-dependent, the same RGB image often appears differently on different monitors. Therefore, it is essential to characterize the monitor's color and establish a precise mapping between its RGB values ​​and the device-independent International Commission on Illumination (CIE) 1931 XYZ Color Space (CIEXYZ). Traditional methods for converting RGB to CIEXYZ color spaces generally suffer from problems such as cumbersome and time-consuming processes, difficulty in accurately fitting the complex nonlinear response of monitors, or difficulties in optimizing model parameters, leading to room for improvement in conversion accuracy and efficiency. Summary of the Invention

[0004] In view of the above problems, this application provides a model training method, a color calibration method, and a device for improving the consistency of display effects of display devices.

[0005] The first aspect of this application provides a model training method, comprising: acquiring multiple candidate models, each candidate model being used to determine a first color code of the color displayed by the target display in a target color space based on display driver data of the target display; iteratively updating the parameters of each candidate model according to a first error until a first preset condition is met, thereby obtaining multiple updated candidate models, wherein the first error is the error between the first color code output by the candidate model based on the input display driver data and the actual color code of the color displayed by the target display based on the display driver data; selecting an intermediate model from the updated candidate models; iteratively adjusting the parameters of the intermediate model according to a second error until a second preset condition is met, thereby determining the adjusted intermediate model as a target color calibration model, wherein the second error is the error between the second color code output by the intermediate model based on the input display driver data and the corresponding actual color code, and the target color calibration model being used to perform inverse calculation based on the target color code of the input target color to obtain the target display driver data required for the target display to display the target color.

[0006] According to an embodiment of this application, iteratively updating the parameters of each candidate model until a first preset condition is met, based on the first error of each candidate model, to obtain multiple updated candidate models includes: initializing the parameter update speed of each candidate model; determining the candidate models whose first error meets a third preset condition as a global reference model; determining a weight coefficient for the parameter update speed of each candidate model based on the first distance between the parameters of each candidate model and the global reference model and the current iteration number, wherein the parameter update speed is the rate at which the parameters of the candidate model are adjusted, and the weight coefficient is used to adjust the parameter update speed; and updating the parameters of each candidate model based on the parameter update speed adjusted by the weight coefficient.

[0007] According to an embodiment of this application, determining the weighting coefficient of the parameter update speed of each candidate model based on the first distance between the parameters of each candidate model and the global reference model and the current iteration number includes: determining a baseline value of the weighting coefficient based on the current iteration number, wherein the baseline value of the weighting coefficient is negatively correlated with the current iteration number; determining an adjustment value of the weighting coefficient based on the first distance, wherein the adjustment value of the weighting coefficient is positively correlated with the first distance; and determining the weighting coefficient of the parameter update speed based on the product of the baseline value of the weighting coefficient and the adjustment value of the weighting coefficient.

[0008] According to an embodiment of this application, determining the weighting coefficient of the parameter update speed of each candidate model based on the first distance between the parameters of each candidate model and the global reference model and the current iteration number further includes: determining a population size adjustment value based on the number of multiple candidate models, wherein the population size adjustment value is negatively correlated with the number of multiple candidate models; and determining the weighting coefficient of the parameter update speed based on the product of the weighting coefficient baseline value, the weighting coefficient adjustment value, and the population size adjustment value.

[0009] According to an embodiment of this application, updating the parameters of each candidate model based on the parameter update rate adjusted by the weight coefficients includes: determining the individual reference model corresponding to each candidate model based on the first error of each candidate model in the historical iteration process; obtaining the first distance between the parameters of the candidate model and the global reference model and the first learning factor of the first distance, and obtaining the second distance between the parameters of the candidate model and the individual reference model and the second learning factor of the second distance, wherein the first learning factor decreases with the number of iterations and the second learning factor increases with the number of iterations; and determining the parameter update rate of the current iteration cycle based on the result of weighting the parameter update rate with the weight coefficients, the result of weighting the second distance with the first learning factor, and the result of weighting the first distance with the second learning factor.

[0010] According to an embodiment of this application, the method further includes: monitoring the average rate of decrease of the first error of each candidate model during the iteration process; generating a parameter perturbation amount when the average rate of decrease is lower than a preset threshold; and superimposing the parameter perturbation amount onto the parameters of each candidate model.

[0011] According to an embodiment of this application, iteratively adjusting the parameters of the intermediate model to meet a second preset condition based on the second error of the intermediate model, and determining the adjusted intermediate model as the target color calibration model includes: obtaining the second error between the second color code output by the intermediate model according to the display driver data and the corresponding actual color code; determining the parameter update amount of the intermediate model based on the gradient of the second error relative to each parameter in the intermediate model and the adaptive learning rate, wherein the gradient represents the rate of change of the second error with the parameter change, and the adaptive learning rate is used to adjust the update step size of the parameter update amount; and adjusting the parameters of the intermediate model based on the parameter update amount.

[0012] According to an embodiment of this application, the method further includes: if the second error of the current iteration cycle is less than the second error of the previous iteration cycle, then the adaptive learning rate is increased according to the first coefficient; if the second error of the current iteration cycle is greater than the second error of the previous iteration cycle, and is less than or equal to a preset proportion of the second error of the previous iteration cycle, then the adaptive learning rate is kept unchanged; if the second error of the current iteration cycle is greater than the preset proportion, then the adaptive learning rate is decreased according to the second coefficient, where the second coefficient is less than the first coefficient.

[0013] According to an embodiment of this application, determining an intermediate model from a plurality of updated candidate models includes: obtaining a verification data set, the verification data set including multiple sets of verification driving data and verification color measurement values ​​corresponding to each set of verification driving data on a target display; inputting the verification driving data into each updated candidate model to obtain a third color code output by each candidate model; and determining an intermediate model from a plurality of updated candidate models based on a third error between the third color code and the corresponding verification color code value.

[0014] The second aspect of this application provides a color calibration method applied to a target display. The method includes: obtaining the target color code of the target color in the target color space; inputting the target color code into a preset target color calibration model for inverse mapping operation to obtain target driving data required for the target display to display the target color; and driving the target display based on the target driving data to display the target color; wherein the target color calibration model is trained according to the model training method of any of the first aspects.

[0015] This application proposes a model training method for monitor color calibration, which significantly improves model accuracy through a multi-stage optimization and selection mechanism. The target color calibration model obtained by this training method can accurately output the encoded value of the color displayed on the monitor based on the driving values. Therefore, by performing inverse calculations on the color encoded value of the target color based on this target color calibration model, the driving data that enables the monitor to accurately display the target color can be precisely calculated, thereby driving the target monitor to reproduce the target color with high fidelity. This method effectively overcomes the problem of different color rendering effects caused by individual monitor differences, and achieves closed-loop optimization from the color target to the driving signal, providing an efficient and reliable solution for professional color management, monitor mass production calibration, and other scenarios. Attached Figure Description

[0016] The above-mentioned contents, other objects, features and advantages of this application will become clearer from the following description of embodiments with reference to the accompanying drawings, in which:

[0017] Figure 1 A flowchart illustrating a model training method according to an embodiment of this application is shown schematically.

[0018] Figure 2 A schematic diagram of a model structure according to an embodiment of this application is shown.

[0019] Figure 3 A flowchart illustrating the candidate model update according to an embodiment of this application is shown schematically;

[0020] Figure 4 A flowchart illustrating the training of an intermediate model according to an embodiment of this application is shown schematically;

[0021] Figure 5 A flowchart illustrating a color calibration method according to an embodiment of this application is shown schematically; and

[0022] Figure 6 A block diagram schematically illustrates an electronic device suitable for implementing a model training method and / or a color calibration method according to embodiments of this application. Detailed Implementation

[0023] The embodiments of this application will now be described with reference to the accompanying drawings. However, it should be understood that these descriptions are exemplary only and are not intended to limit the scope of this application. In the following detailed description, numerous specific details are set forth to provide a thorough understanding of the embodiments of this application for ease of explanation. However, it will be apparent that one or more embodiments may be implemented without these specific details. Furthermore, descriptions of well-known structures and technologies are omitted in the following description to avoid unnecessarily obscuring the concepts of this application.

[0024] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit the scope of this application. The terms “comprising,” “including,” etc., as used herein indicate the presence of the stated features, steps, operations, and / or components, but do not exclude the presence or addition of one or more other features, steps, operations, or components.

[0025] All terms used herein (including technical and scientific terms) have the meanings commonly understood by those skilled in the art, unless otherwise defined. It should be noted that the terms used herein are to be interpreted in a manner consistent with the context of this specification, and not in an idealized or overly rigid way.

[0026] When using expressions such as "at least one of A, B and C", they should generally be interpreted in accordance with the meaning that is commonly understood by those skilled in the art (e.g., "a system having at least one of A, B and C" should include, but is not limited to, a system having A alone, a system having B alone, a system having C alone, a system having A and B, a system having A and C, a system having B and C, and / or a system having A, B and C, etc.).

[0027] Among numerous display technologies, liquid crystal displays (LCDs) have become the mainstream device for current color image display and color management research due to their advantages such as low radiation, low power consumption, thinness, and high brightness. Currently, color characterization methods for LCDs mainly include three-dimensional lookup table methods, model methods, and neural network methods. The three-dimensional lookup table method establishes a three-dimensional lookup table between the driving signal and the color output, supplemented by interpolation calculations to achieve color space conversion. Its advantage lies in achieving high conversion accuracy, but its disadvantage is that it requires the collection and measurement of massive amounts of color sample data, a cumbersome and time-consuming process. The model method constructs physical or empirical mathematical models based on colorimetric principles to describe the conversion relationship of color space. However, the inherent complex nonlinearity of the photoelectric response of displays makes it difficult for traditional mathematical models to achieve sufficiently accurate global fitting. Neural network methods, due to their powerful nonlinear mapping capabilities, show great potential in the field of color characterization. However, the performance of neural network models is highly dependent on the optimization of their parameters; traditional training methods are prone to getting trapped in local optima, and the model accuracy and generalization ability still need further improvement.

[0028] This application provides a model training method that constructs multiple candidate models with different parameters and iteratively optimizes them in parallel. The optimal model is then selected from the multiple optimized candidate models and finely adjusted in the second stage to obtain a high-precision color calibration model.

[0029] Figure 1 A flowchart illustrating a model training method according to an embodiment of this application is shown schematically.

[0030] like Figure 1As shown, the model training method of this embodiment includes operations S110 to S140, which can be executed sequentially.

[0031] In operation S110, multiple candidate models are obtained, and each candidate model is used to determine the first color code of the color displayed by the target display in the target color space based on the display driving data of the target display.

[0032] Display driver data consists of electrical signal values ​​input to each pixel channel of the target display. These values ​​control the luminous intensity of the red, green, and blue sub-pixels (RGB values) in the target display, thus causing the target display to exhibit the corresponding colors. The target color space can be the standard color space defined by the International Commission on Illumination (CIE 1931 XYZ Color Space, CIEXYZ). The target display can be any type of display device requiring color calibration and characterization, such as LCDs, OLEDs, micro-LEDs, or terminal display devices like projectors, mobile phone screens, and automotive displays. Driven by the display driver data (RGB values), the target display will display the corresponding colors. For example, when the input display driver data is (R=255, G=0, B=0), the target display should theoretically display a highly saturated red; when the input is (R=0, G=128, B=0), the target display should theoretically display a highly saturated red. When B=64, a medium-brightness blue-green hue will be displayed. However, due to inherent differences in hardware characteristics, backlight spectrum, filters, driving circuits, and nonlinear gamma response among different displays, the actual colors (represented by standard color codes such as CIEXYZ or CIELAB) displayed on different displays with the same display driving data often show significant deviations.

[0033] In this embodiment, candidate models are used to construct the mapping relationship between the display driving data of the target display and the color encoding of the target display in the target color space based on the display driving data. These multiple candidate models are generated based on the same model framework, but use different parameters. For example, the candidate model framework can be a recurrent neural network model, specifically an Elman neural network model for handling sequence dependencies. To efficiently and automatically obtain a diverse set of high-quality initial candidate models, this embodiment uses Particle Swarm Optimization (PSO) to generate this set of initial models. Each "particle" corresponds to an Elman neural network instance with a combination of feature parameters. During the initialization phase, a particle swarm, i.e., multiple candidate neural networks, is randomly generated within a preset parameter space. In subsequent model updates, the candidate models are updated based on the first color encoding value output by the candidate models using the PSO algorithm.

[0034] In operation S120, based on the first error of each candidate model, the parameters of each candidate model are iteratively updated until the first preset condition is met, resulting in multiple updated candidate models.

[0035] The first error is the difference between the first color code output by the candidate model based on the input display driver data and the actual color code displayed by the target display based on the display driver data. The first error is typically calculated using standard color difference formulas in color science, such as CIE76 ΔEab, CIE94 ΔE, or CIEDE2000 ΔE00, to quantify the difference between the color code output by the model and the measured color code. The first preset condition can be that the number of iterations reaches a preset number, or the first error is lower than a preset error threshold.

[0036] In this embodiment, the internal parameters of each candidate model are optimized with the goal of minimizing the first error. The PSO algorithm is used to drive this update process, with the negative value and reciprocal of the first error serving as the fitness function of the PSO algorithm. The goal is to maximize the fitness function, i.e., minimize the color difference, to update each candidate model. The movement of each candidate model in the parameter space is guided by both its own historical best model and the global best model of the entire candidate model population, thereby collaboratively and efficiently searching for better model parameters. This swarm intelligence-based update strategy helps avoid individual models getting trapped in local optima and promotes the overall evolution of the candidate model population towards a direction with smaller errors.

[0037] In operation S130, an intermediate model is selected from the updated multiple candidate models.

[0038] In this embodiment, the criteria for determining the intermediate model can be to select the candidate model with the smallest average color difference and the most stable performance on the independent validation set; or it can be to select the best model based on specific performance indicators (such as the adjusted coefficient of determination) after comprehensively considering the model's complexity and generalization ability. From the group of candidate models that have undergone preliminary optimization, the most promising model is selected as the basis for subsequent refinement, thereby achieving a concentrated improvement in model performance.

[0039] In operation S140, based on the second error of the intermediate model, the parameters of the intermediate model are iteratively adjusted until a second preset condition is met. The adjusted intermediate model is then determined as the target color calibration model. The target color calibration model is used to perform inverse calculations based on the target color encoding value of the input target color to obtain the target driving data required for the target display to show the target color. The second preset condition can be that the number of iterations reaches a preset number, the second error is lower than a preset threshold, or the rate of decrease of the second error is lower than a preset threshold, etc.

[0040] The core objective of this training phase is to perform deeper, more refined training on the selected, high-performing intermediate models. By training these intermediate models, the accuracy of the overall model is further improved. The target color calibration model is ultimately used to achieve high-precision inverse mapping from color-coded values ​​to display driver data. Taking the color code of the target color in the target color space (e.g., CIEXYZ color space) as input, the model can inversely calculate the corresponding target driver data, i.e., the RGB value. Upon receiving the calculated RGB value, the target display can accurately reproduce the desired target color, thus completing closed-loop color calibration. This makes this method particularly suitable for professional image processing, color management, and mass production calibration of displays, where extremely high color fidelity is required.

[0041] Figure 2 A schematic diagram of a model structure according to an embodiment of this application is shown.

[0042] like Figure 2 As shown in the embodiments of this application, the candidate model provided is an Elman neural network model, which includes an input layer, a hidden layer, a connecting layer, and an output layer.

[0043] Assume the Elman neural network has n inputs and m outputs, where the inputs are the driving level values ​​(R, G, B) of the target display, and the outputs are the tristimulus measurements (X, Y, Z) of the target display in the CIEXYZ space. The connection weights from the input layer to the hidden layer, from the receiving layer to the hidden layer, and from the hidden layer to the output layer are denoted as follows: , , , This represents the number of neurons in the hidden layer and the receiving layer. Then the input vector... Output vector Represented as formulas respectively:

[0044] (1)

[0045] (2)

[0046] in, For the first A sequence of inputs. The vector description from the input of the receiving layer to the hidden layer is as follows:

[0047] (3)

[0048] in, This indicates that the hidden layer stored in the receiving layer represents the result of the previous calculation. .

[0049] The input of the hidden layer consists of two parts: the input layer and the receiving layer. From equations (1) and (3), the complete input vector can be defined as equation (4).

[0050] (4)

[0051] If the hidden layer chooses sigmoid as the activation function, then , The joint weight is expressed as The output of the hidden layer is expressed as equations (5) and (6).

[0052] (5)

[0053] (6)

[0054] in, For bias.

[0055] The output layer also selects sigmoid as the activation function, and the output value... The results are obtained by calculation using equations (7) and (8):

[0056] (7)

[0057] (8)

[0058] The error of the Elman neural network is shown in equation (9), and the goal of the network is to minimize the error. This is the output value of the network. This is the actual value output.

[0059] (9)

[0060] The color output of a display is not an instantaneous, isolated, static mapping. The brightness and chromaticity of the current pixel may be slightly affected by time-varying factors such as the afterglow of the previous frame, the response delay of the driving circuit, or the panel temperature, exhibiting weak temporal dependence and state memory. The structure of the Elman neural network model (where the output of the hidden layer is fed back to the receiving layer as the input for the next time step) intuitively simulates this physical process. Its receiving layer acts as a "short-term physical state memory," effectively capturing and utilizing the display state information of the previous time step to correct the current output, thereby more accurately describing the dynamic relationship between the driving signal and the color output. The Elman model has a simple structure and a small number of parameters, enabling it to introduce key temporal modeling capabilities on limited and precious measurement data while effectively reducing the risk of overfitting, ensuring the stability and generalization ability of the model training.

[0061] The candidate model update method in this embodiment employs the PSO algorithm. In each iteration, a global reference model is determined from all candidate models. Simultaneously, based on the performance of each candidate model in historical iterations, an individual reference model is determined for each candidate model. The parameter update speed and direction of each candidate model are adjusted accordingly, and the parameters of each candidate model are updated based on this parameter update speed, bringing the candidate model closer to the optimal solution. This iterative process is repeated until preset conditions are met, resulting in multiple optimized candidate models.

[0062] In this embodiment, the PSO algorithm is used to update the parameters of the candidate model. Taking the parameters to be optimized in a recurrent neural network as an example, they include the connection weight vectors from the input layer to the hidden layer, from the connecting layer to the hidden layer, and from the hidden layer to the output layer. , , and hidden layer threshold vector b j etc., forming the parameter vector [ , , ,b j The parameter vector is updated in a D-dimensional parameter vector space. Assume there are m candidate models, and the parameter positions and velocities of each model's parameter vector at the t-th iteration are as follows:

[0063] (10)

[0064] (11)

[0065] Wherein, velocity vector Used to determine the update step size for the parameter vector.

[0066] During the update process, the globally optimal model selected from numerous candidate models in this iteration is chosen. Then, an individual optimal model is selected for each candidate model based on its performance in historical iterations. The global reference model represents the best model currently explored, and all candidate models strive towards it, quickly helping candidate models find their optimal parameter regions in the early stages of iteration. The individual reference model is the parameter state instance with the best performance in the candidate model's own history. By learning from individual reference models, it is ensured that each model, while learning from the group's optimal model, does not forget its own previously explored best positions, thus preserving diverse search experience.

[0067] The parameter vector of an individual reference model is called a local optimum, denoted as .

[0068] (12)

[0069] The parameter vector of the global reference model is called the global optimum, denoted as .

[0070] (13)

[0071] The second distance between the parameters of the candidate model and the individual reference model is The first distance between the parameters of the candidate model and the global reference model is .

[0072] The parameter position and update rate for each candidate are updated using the following equations:

[0073] (14)

[0074] (15)

[0075] and A random scalar between 0 and 1; the weighting coefficient of the second distance. For cognitive learning factors, the weighting coefficient of the first distance. The social learning factor is typically set to 2; the weighting coefficient for historical update speed. This is the inertial weight.

[0076] According to formula (14), the parameter update rate used in the next iteration cycle is affected by the parameter update rate of the previous iteration cycle and the inertia weight. The effect of the product. Inertia weight. The parameter search capability of the algorithm is affected when When the size is large, it is beneficial for global search. When the value is small, it is beneficial for local search, making it easier to approximate the global optimum.

[0077] Previous scholars used a simple method of linearly decreasing inertia weights to make ω adaptive. This method improves ω to:

[0078] (16)

[0079] In the formula, ω max ω min These represent the maximum and minimum values ​​of the inertia weight, respectively, and t is the current iteration number. max This represents the maximum number of iterations. However, this method only considers the impact of the number of iterations of the particle swarm on the inertia weight, making it difficult to adapt to solving complex nonlinear problems and offering limited improvement to algorithm performance.

[0080] Figure 3 The flowchart illustrating the iterative update of candidate models based on the PSO algorithm is shown in the diagram.

[0081] like Figure 3As shown in this embodiment, the weight coefficient (i.e., inertia weight) is related to both the number of iterations and the first distance between the candidate model and the global reference model parameters. During the iteration process, S120 updates the candidate model, including S121~S124.

[0082] In operation S121, the parameter update rate of each candidate model is initialized. The parameter update rate is the speed at which the parameters of the candidate model are adjusted.

[0083] In this embodiment of the application, the parameter update speed can be initialized by random initialization, initialization based on prior knowledge, or initialization based on a preset range during algorithm initialization.

[0084] In operation S122, the candidate model whose first error satisfies the third preset condition is determined as the global reference model.

[0085] In some embodiments, in each iteration, the average color difference between the first color-coded values ​​of all candidate models on the training dataset and the actual measured values ​​is calculated as the first error. The third preset condition can be that the first error of the candidate model is minimized, or that the first error of the candidate model is one of the smallest possible values. The global reference model represents the parameter state most valuable for predicting the forward mapping relationship of the target display discovered by the entire group in the current iteration; its parameter vector is the "global optimal position," towards which all candidate models converge, quickly helping candidate models find the parameter region with better performance in the early stages of iteration.

[0086] In operation S123, the weighting coefficients of the parameter update speed of each candidate model are determined based on the first distance between the parameters of each candidate model and the global reference model and the current iteration number. The weighting coefficients are used to adjust the parameter update speed.

[0087] In this embodiment, firstly, a baseline value for the weight coefficient is determined based on the current iteration number. The baseline value for the weight coefficient is negatively correlated with the current iteration number, meaning that the baseline value for the weight coefficient gradually decreases as the iteration number increases. This design conforms to the general rules of optimization algorithms: in the early stage of iteration, a larger weight coefficient is needed to enhance the global search capability and explore a wider parameter space; in the later stage of iteration, a smaller weight coefficient is needed to enhance the local mining capability and perform a refined search near the optimal solution. The baseline value for the weight coefficient can be implemented in various ways, such as linear decreasing, exponential decreasing, or cosine decreasing. For example, the inertial weight calculation method shown in formula (16). Secondly, a weight coefficient adjustment value is determined based on the first distance. The weight coefficient adjustment value is positively correlated with the first distance, meaning that the farther the distance between the candidate model and the global reference model, the larger the weight coefficient adjustment value; the closer the distance, the smaller the weight coefficient adjustment value. This design allows the weight coefficients to adaptively adjust based on the current state of each candidate model: when a candidate model is far from the global optimum, a larger weight coefficient is needed to accelerate the search; when a candidate model is close to the global optimum, the weight coefficient needs to be reduced for a more refined search, avoiding skipping the optimal solution due to excessively large step sizes. The weight coefficient adjustment can be implemented using linear or nonlinear functions. Finally, the weight coefficients for parameter update speed are determined by multiplying the baseline weight coefficient value and the adjusted weight coefficient value. Using a product approach instead of an summation approach allows the influence of the two factors to reinforce or weaken each other, providing more flexible control over the changes in the weight coefficients.

[0088] In operation S124, the parameters of each candidate model are updated according to the parameter update rate after the weight coefficients are adjusted.

[0089] In this embodiment, through the aforementioned parameter update method, each candidate model can continuously move within the parameter space, gradually optimizing its parameters. The introduction of weight coefficients allows candidate models to inherit historical update speeds, maintaining momentum and avoiding inefficiency caused by blind random searches. Simultaneously, the correlation mechanism between weight coefficients and the number of iterations and the first distance enables candidate models to adaptively adjust their update step size based on the iteration process and their own state, achieving a balance between search efficiency and accuracy.

[0090] In some embodiments, the weighting coefficients are also related to the population size of the algorithm (i.e., the number of candidate models). A population size adjustment value is determined based on the number of candidate models, and this adjustment value is negatively correlated with the number of candidate models. The weighting coefficients for parameter update speed are determined based on the product of the baseline weighting coefficient, the adjusted weighting coefficient, and the adjusted population size. When the population size is large, the group itself already possesses strong global search capabilities; reducing the weighting coefficients can enhance local mining capabilities and improve convergence accuracy. When the population size is small, increasing the weighting coefficients can compensate for the insufficient search capabilities of the group and avoid getting trapped in local optima.

[0091] In this embodiment of the application, the formula for calculating the first distance in the t-th iteration is given by equation (17). The constructed nonlinear decreasing dynamic adjustment function of ω is given by equation (18), and the range of ω is [0.4, 0.9].

[0092] (17)

[0093] (18)

[0094] In the formula, R(t) represents the first distance between the i-th candidate model and the global reference model, R max ω(t) is the maximum value of the first distance; ω(t) is the value of the inertia weight at step t, and is the baseline value of the weight coefficient with respect to the iteration process. This represents the adjusted value of the weighting coefficient that is positively correlated with the first distance. This represents the population size adjustment value that is negatively correlated with the number of multiple candidate models.

[0095] According to formula (18), when R(t) is large, that is, when the improvement of the parameters of the current candidate model is poor and far from the optimal solution, the inertia weight ω(t) is increased to allow the parameters of the candidate model to maintain a faster inertial update speed, enhance the global exploration capability, and jump out of the current poor region; when R(t) is small, that is, when the improvement of the parameters of the current candidate model is good and close to the optimal solution, the inertia weight ω(t) is decreased to allow the parameter update speed of the candidate model to slow down, enhance the local development capability, and conduct a fine search in the current high-quality region. Since the population size N (i.e., the number of candidate models) affects the coverage of the parameter space, when the population size is large, the parameters of the candidate model can find the global optimal solution with a larger coverage range through updates, and the inertia weight should be reduced to improve the local search capability; conversely, when the population size is small, the inertia weight should be increased to improve the global search capability. When the population size is large, according to the second adjustment term, the change amplitude of the inertia weight can be relatively reduced to enhance the local optimization capability; when the population size is small, the change amplitude of the inertia weight can be relatively increased to enhance the global exploration capability.

[0096] According to formula (14), operation S124 updates the parameters of each candidate model, including operations S1241~S1243.

[0097] S1241, Based on the first error of each candidate model in the historical iteration process, determine the individual reference model corresponding to each candidate model.

[0098] In some embodiments, the minimum first error value reached by each candidate model after updates in all past iterations and its corresponding model parameters are recorded. The individual reference model is the parameter state instance with the best performance in the candidate model's own history. By learning from the individual reference model, each model can learn from the group's best while not forgetting the best positions it has previously explored, thus preserving diverse search experience.

[0099] S1242, obtain the first distance and the first learning factor of the first distance between the parameters of the candidate model and the global reference model, and obtain the second distance and the second learning factor of the second distance between the parameters of the candidate model and the individual reference model.

[0100] In this application example, the first learning factor decreases with the number of iterations, while the second learning factor increases with the number of iterations. In the early stages of the search, c1 is set to a larger value, and c2 to a smaller value, allowing the candidate model to learn from the parameters of the individual reference model and enhancing global search capabilities. In the later stages of the search, c1 is set to a smaller value, and c2 to a larger value, allowing the candidate model to learn from the parameters of the global reference model and enhancing local search capabilities. The expressions for c1 and c2 are:

[0101] (19)

[0102] In the formula, ω is the value of the inertia weight at step t.

[0103] In operation S1243, the parameter update rate for the current iteration cycle is determined based on the weighted result of the parameter update rate by the weight coefficient, the weighted result of the first learning factor by the second distance, and the weighted result of the second learning factor by the first distance.

[0104] Operation S1243 corresponds to the content represented by formula (14).

[0105] In the later stages, the particle swarm optimization algorithm is affected by random vibrations, resulting in slow convergence speed when searching for the optimal solution and a tendency to get trapped in local optima.

[0106] In some embodiments, in order to effectively accelerate the optimization of model parameters, the average rate of decrease of the first error of each candidate model is detected; when the average rate of decrease of the first error of each candidate model is lower than a preset threshold, a parameter perturbation is generated, the magnitude of which is negatively correlated with the average rate of decrease; and the parameter perturbation is superimposed on the parameters of the candidate model.

[0107] The formula for generating parameter disturbance is:

[0108] (20)

[0109] In the formula: y(i) is the parameter vector of the i-th candidate model.

[0110] Through multiple iterations, operations S121~S124 are executed until the first preset condition is reached, completing the parameter update of the candidate model. The first preset condition can be a termination condition such as reaching a preset number of iterations or the error of the candidate model being lower than a preset threshold.

[0111] According to operation S130, after the parameter update of the candidate model is completed, an intermediate model is selected from the updated candidate models.

[0112] In some embodiments, a verification data set is obtained, which includes multiple sets of verification driving data and the corresponding verification color metric values ​​of each set of verification driving data on the target display; the verification driving data is input into each updated candidate model to obtain the third color code output by each candidate model during the verification process; based on the third error between the third color code and the corresponding verification color code value, an intermediate model is determined from the updated multiple candidate models. The third error reflects the accuracy of the updated candidate model, and the candidate model with the smallest third error can be selected as the intermediate model.

[0113] Figure 4 A flowchart illustrating the training of an intermediate model according to an embodiment of this application is shown.

[0114] like Figure 4 As shown, in this embodiment of the application, according to operation S140, based on the second error of the intermediate model, the parameters of the intermediate model are iteratively adjusted until they meet the second preset condition, thereby obtaining a target color calibration model with further improved accuracy. Operation S140 consists of single iteration operations S141~S143.

[0115] In operation S141, the second error between the second color code output by the intermediate model based on the display driver data and the corresponding actual color code is obtained.

[0116] The display driver data is input into the intermediate model to obtain the second color encoding value output by the intermediate model. The second error of the second color encoding value relative to the actual color encoding value is calculated, that is, the error of the color encoding of the target display output by the intermediate model relative to the encoding of the actual color displayed on the target display. This error is used as the basis for optimizing the parameters of the intermediate model.

[0117] In operation S142, the parameter update amount of the intermediate model is determined based on the gradient of the second error relative to each parameter in the intermediate model and the adaptive learning rate.

[0118] The gradient represents the rate of change of the second error with respect to the parameters, and is the derivative of the second error with respect to each parameter. The adaptive learning rate is used to adjust the update step size of the parameter updates.

[0119] In this embodiment of the application, a preset adaptive learning rate is adjusted based on the change index of the second error in the current training cycle and the previous training cycle. The adaptive learning rate is used to adjust the update step size of the intermediate model parameters.

[0120] The formula for adjusting the adaptive learning rate is expressed as:

[0121] (twenty one)

[0122] Among them, E t E t+1 Let represent the error at the current time step and the error at the next iteration step, where a and b are constants, both taking a value of 0.05, and η(t) is the adaptive learning rate.

[0123] According to formula (21), if the second error of the current training cycle The second error is smaller than that of the previous training cycle. This indicates that the parameter update effect of the current model is good, based on the first coefficient. Increase the adaptive learning rate to accelerate parameter optimization of the intermediate model and reduce the second error of the intermediate model; if the second error of the current training cycle... The second error greater than the previous training cycle And less than or equal to the second error of the previous training cycle. preset ratio value This indicates that the model parameters are optimized within a reasonable range, maintaining the adaptive learning rate unchanged; if the second error of the current training cycle... Greater than the preset ratio value This indicates that the model parameter optimization effect is poor, according to the second coefficient. Lowering the adaptive learning rate prevents model parameters from oscillating around the optimal solution and promotes stable convergence. The second coefficient is smaller than the first coefficient.

[0124] In operation S143, the parameters of the intermediate model are updated based on the parameter update amount.

[0125] The formula for updating the parameters is:

[0126] θ t+1 =θ t −η(t)⋅∇L (22)

[0127] Where ∇L is the gradient, η(t) is the adaptive learning rate, η(t)⋅∇L is the parameter update amount, and θ t For the parameters before the update, θ t+1 The updated parameters are t, where t represents the number of iterations.

[0128] Repeat steps S141-S143 to iteratively update the parameters of the intermediate model until a preset termination condition is reached. The preset termination condition can be that the loss value is lower than a set threshold, the loss decreases very little after multiple consecutive iterations, or the maximum number of iterations is reached.

[0129] Based on the intermediate model with updated parameters, the parameter update model obtained when the termination condition is met is used as the target color calibration model.

[0130] Operation S140 performs efficient and precise parameter adjustment through gradient guidance, enabling the recurrent neural network model to describe the complex physical mapping relationship from the driving level to the color output of the display with unprecedented accuracy. This lays the most critical and reliable model foundation for subsequent high-fidelity color inverse solving.

[0131] According to the model training method provided in this application, multiple candidate models are screened to obtain intermediate models with higher accuracy. These intermediate models are then trained to obtain the final target color correction model. This target color correction model can accurately output the encoded values ​​of the colors displayed on the monitor based on the driving values. During the updating and screening of candidate models, this method proposes an inertial weight adjustment mechanism; during the training of the intermediate models, a gradient descent method is employed. This model optimization process combines the breadth advantage of group search with the accuracy advantage of gradient optimization, thereby improving the optimization speed and accuracy of the target color calibration model.

[0132] The target color correction model obtained based on the above model training method can be applied to calibrate the color display accuracy of the target display device.

[0133] Figure 5 A flowchart illustrating a color calibration method according to an embodiment of this application is shown schematically. Figure 5 As shown, the color calibration method of this application embodiment operates in steps S510 to S530.

[0134] In operation S510, the target color data of the target color is obtained. The target color data is the data encoding of the target color in the preset color space.

[0135] The target color may originate from the product standard color in professional image processing software, or the reference color extracted from the standard test chart, or it may be a color directly selected by the user through an interactive color selector. All of these color data must be uniformly converted to the model's preset color space, such as the CIE XYZ or CIELAB space, and the numerical range must be normalized, such as normalizing the XYZ values ​​to the [0,1] range to obtain the target color data.

[0136] In operation S520, the target color code is input into the preset target color calibration model for inverse mapping operation to obtain the target driving data required for the target display to show the target color.

[0137] In this embodiment, the target color calibration model is obtained according to the aforementioned operations S110~S140. Inverse mapping is mathematically essentially an optimization problem: finding the driving value that minimizes the difference between the model's output color code and the standard color code within the high-dimensional nonlinear function space defined by the model. In practical calculations, gradient-based numerical optimization algorithms are often used, iterating from reasonable initial guesses of display driving data. In each iteration, the algorithm inputs the current driving value candidate into the model, obtains the model's output color code, calculates the difference between it and the target color code, and uses the gradient information calculated by error backpropagation to update the driving value to reduce color difference. The entire process is strictly constrained by physical reality, ensuring that the solved RGB values ​​are within the display's driveable range (e.g., 0-255), and prioritizing stable and low-power implementations. For scenarios requiring real-time response, the system can use a pre-computed lookup table combined with three-dimensional interpolation for acceleration, ensuring accuracy while meeting real-time requirements.

[0138] In operation of S530, the target display is driven based on the target drive data to display the target color.

[0139] In this embodiment, the reverse-engineered display driver data undergoes validity verification and range clipping to ensure it fully complies with the electrical specifications and safety standards of the target display hardware, preventing over-driving from damaging the device. Based on the specific interface type and communication protocol of the target display, the normalized RGB data is converted into the corresponding digital video signal format, including the correct bit depth, pixel clock, and synchronization timing. During the driving process, the system implements real-time monitoring, tracking the display's status feedback (such as temperature and power consumption) and comparing it with the expected color output. In some advanced applications, a closed-loop feedback mechanism can even be introduced, using a built-in color sensor to measure the actual screen emission in real time, comparing the measured value with the target value, and dynamically fine-tuning the display driver data to compensate for changes in ambient light or drift in the display's own characteristics, thereby achieving continuous high-precision color stability.

[0140] According to the color calibration method provided in this disclosure, the user only needs to provide the target color value, and the system can automatically complete the entire process from reverse calculation of display driver data to driving the display, greatly reducing the technical threshold and operational burden of professional color calibration. This method does not rely on any specific display technology and can be widely adapted to various display media such as liquid crystal displays, organic light-emitting diode displays, micro-light-emitting diode displays, and even projection devices. It can also flexibly handle diverse scenarios ranging from consumer electronics to professional-grade monitoring, and from static images to dynamic videos.

[0141] Figure 6 A block diagram schematically illustrates an electronic device suitable for implementing a model training method and / or a color calibration method according to an embodiment of this application.

[0142] like Figure 6 As shown, an electronic device 600 according to an embodiment of this application includes a processor 601, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 602 or a program loaded from a storage portion 608 into a random access memory (RAM) 603. The processor 601 may include, for example, a general-purpose microprocessor (e.g., a CPU), an instruction set processor and / or an associated chipset and / or a special-purpose microprocessor (e.g., an application-specific integrated circuit (ASIC)), etc. The processor 601 may also include onboard memory for caching purposes. The processor 601 may include a single processing unit or multiple processing units for performing different actions of the method flow according to an embodiment of this application.

[0143] RAM 603 stores various programs and data required for the operation of electronic device 600. Processor 601, ROM 602, and RAM 603 are interconnected via bus 604. Processor 601 executes various operations of the method flow according to embodiments of this application by executing programs in ROM 602 and / or RAM 603. It should be noted that programs may also be stored in one or more memories other than ROM 602 and RAM 603. Processor 601 may also execute various operations of the method flow according to embodiments of this application by executing programs stored in one or more memories.

[0144] According to embodiments of this application, the electronic device 600 may further include an input / output (I / O) interface 605, which is also connected to a bus 604. The electronic device 600 may also include one or more of the following components connected to the input / output (I / O) interface 605: an input section 606 including a keyboard, mouse, etc.; an output section 607 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and a speaker, etc.; a storage section 608 including a hard disk, etc.; and a communication section 609 including a network interface card such as a LAN card, modem, etc. The communication section 609 performs communication processing via a network such as the Internet. A drive 610 is also connected to the input / output (I / O) interface 605 as needed. A removable medium 611, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed on the drive 610 as needed so that computer programs read from it can be installed into the storage section 608 as needed.

[0145] This application also provides a computer-readable storage medium, which may be included in the device / apparatus / system described in the above embodiments; or it may exist independently and not assembled into the device / apparatus / system. The computer-readable storage medium carries one or more programs, which, when executed, implement the method according to the embodiments of this application.

[0146] According to embodiments of this application, the computer-readable storage medium can be a non-volatile computer-readable storage medium, such as including but not limited to: portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this application, the computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. For example, according to embodiments of this application, the computer-readable storage medium may include ROM 602 and / or RAM 603 and / or one or more memories other than ROM 602 and RAM 603 described above.

[0147] Embodiments of this application also include a computer program product comprising a computer program containing program code for performing the methods shown in the flowchart. When the computer program product is run on a computer system, the program code is used to enable the computer system to implement the display color calibration method provided in the embodiments of this application.

[0148] When the computer program is executed by the processor 601, it performs the functions defined in the system / apparatus of this application embodiment. According to the embodiments of this application, the systems, apparatuses, modules, units, etc., described above can be implemented by computer program modules.

[0149] In one embodiment, the computer program may rely on a tangible storage medium such as an optical storage device or a magnetic storage device. In another embodiment, the computer program may also be transmitted and distributed in the form of signals over a network medium, and downloaded and installed via the communication section 609, and / or installed from the removable medium 611. The program code contained in the computer program can be transmitted using any suitable network medium, including but not limited to: wireless, wired, etc., or any suitable combination thereof.

[0150] In such an embodiment, the computer program can be downloaded and installed from a network via the communication section 609, and / or installed from the removable medium 611. When the computer program is executed by the processor 601, it performs the functions defined in the system of this application embodiment. According to the embodiments of this application, the systems, devices, apparatuses, modules, units, etc., described above can be implemented by computer program modules.

[0151] According to embodiments of this application, program code for executing the computer programs provided in the embodiments of this application can be written in any combination of one or more programming languages. Specifically, these computational programs can be implemented using high-level procedural and / or object-oriented programming languages, and / or assembly / machine languages. Programming languages ​​include, but are not limited to, languages ​​such as Java, C++, Python, "C", or similar programming languages. The program code can be executed entirely on the user's computing device, partially on the user's device, partially on a remote computing device, or entirely on a remote computing device or server. In cases involving remote computing devices, the remote computing device can be connected to the user's computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computing device (e.g., via the Internet using an Internet service provider).

[0152] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in a block diagram or flowchart, and combinations of blocks in a block diagram or flowchart, may be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.

[0153] Those skilled in the art will understand that the features described in the various embodiments of this application can be combined and / or combined in various ways, even if such combinations or combinations are not explicitly described in this application. In particular, the features described in the various embodiments of this application can be combined and / or combined in various ways without departing from the spirit and teachings of this application. All such combinations and / or combinations fall within the scope of this application.

Claims

1. A model training method, characterized in that, The method includes: Multiple candidate models are obtained, and each candidate model is used to determine the first color code of the color displayed by the target display in the target color space based on the display driver data of the target display. Based on the first error of each candidate model, the parameters of each candidate model are iteratively updated until a first preset condition is met, resulting in multiple updated candidate models. The first error is the error between the first color code output by the candidate model based on the input display driving data and the actual color code of the target display based on the display driving data. From the updated multiple candidate models, an intermediate model is selected; Based on the second error of the intermediate model, the parameters of the intermediate model are iteratively adjusted until they meet the second preset condition. The adjusted intermediate model is then determined as the target color calibration model. The second error is the error between the second color code output by the intermediate model based on the input display driver data and the corresponding actual color code. The target color calibration model is used to perform inverse calculations based on the target color code of the input target color to obtain the target display driver data required for the target display to display the target color.

2. The method according to claim 1, characterized in that, The step of iteratively updating the parameters of each candidate model according to the first error of each candidate model until a first preset condition is met, to obtain multiple updated candidate models, includes: Initialize the parameter update rate of each candidate model, whereby the parameter update rate is the speed at which the parameters of the candidate model are adjusted. The candidate model whose first error satisfies the third preset condition is determined as the global reference model. Based on the first distance between the parameters of each candidate model and the global reference model and the current iteration number, a weighting coefficient for the parameter update speed of each candidate model is determined, and the weighting coefficient is used to adjust the parameter update speed. The parameters of each candidate model are updated according to the parameter update speed adjusted by the weight coefficients.

3. The method according to claim 2, characterized in that, The step of determining the weight coefficients for the parameter update speed of each candidate model based on the first distance between the parameters of each candidate model and the global reference model and the current iteration number, includes the following individual reference models: The baseline value of the weight coefficient is determined based on the current iteration number, and the baseline value of the weight coefficient is negatively correlated with the current iteration number; Based on the first distance, a weight coefficient adjustment value is determined, wherein the weight coefficient adjustment value is positively correlated with the first distance; The weighting coefficient for the parameter update speed is determined by multiplying the baseline value of the weighting coefficient and the adjustment value of the weighting coefficient.

4. The method according to claim 3, characterized in that, The step of determining the weighting coefficients for the parameter update speed of each candidate model based on the first distance between the parameters of each candidate model and the global reference model and the current iteration number further includes: Based on the number of the multiple candidate models, a population size adjustment value is determined, wherein the population size adjustment value is negatively correlated with the number of the multiple candidate models; The weighting coefficient for the parameter update speed is determined by multiplying the baseline value of the weighting coefficient, the adjusted value of the weighting coefficient, and the adjusted value of the population size.

5. The method according to claim 2, characterized in that, The step of updating the parameters of each candidate model according to the parameter update speed adjusted by the weight coefficients includes: Based on the first error of each candidate model in the historical iteration process, the individual reference model corresponding to each candidate model is determined. Obtain a first distance between the parameters of the candidate model and the global reference model and a first learning factor of the first distance, and obtain a second distance between the parameters of the candidate model and the individual reference model and a second learning factor of the second distance, wherein the first learning factor decreases with the number of iterations and the second learning factor increases with the number of iterations; The parameter update rate for the current iteration period is determined based on the weighted result of the parameter update rate by the weighting coefficient, the weighted result of the first learning factor by the second distance, and the weighted result of the second learning factor by the first distance.

6. The method according to claim 1, characterized in that, The method further includes: If the average rate of decrease of the first error of each candidate model is lower than a preset threshold, a parameter perturbation is generated, the magnitude of which is negatively correlated with the average rate of decrease. The parameter perturbation is superimposed on the parameters of each candidate model.

7. The method according to claim 1, characterized in that, The step of iteratively adjusting the parameters of the intermediate model according to the second error of the intermediate model until the second preset condition is met, and determining the adjusted intermediate model as the target color calibration model, includes: Obtain the second error between the second color code output by the intermediate model based on the display driver data and the corresponding actual color code; Based on the gradient of the second error relative to each parameter in the intermediate model and the adaptive learning rate, the parameter update amount of the intermediate model is determined, wherein the gradient represents the rate of change of the second error with the parameter change, and the adaptive learning rate is used to adjust the update step size of the parameter update amount; The parameters of the intermediate model are updated based on the parameter update amount.

8. The method according to claim 7, characterized in that, The method further includes: If the second error of the current iteration cycle is less than the second error of the previous iteration cycle, then the adaptive learning rate is increased according to the first coefficient. If the second error of the current iteration cycle is greater than the second error of the previous iteration cycle, but less than or equal to the preset proportion of the second error of the previous iteration cycle, then the adaptive learning rate remains unchanged. If the second error of the current iteration cycle is greater than the preset ratio, the adaptive learning rate is adjusted down according to the second coefficient, where the second coefficient is less than the first coefficient.

9. The method according to claim 1, characterized in that, The step of determining an intermediate model from the updated candidate models includes: Obtain a set of verification data, which includes multiple sets of verification driving data and the corresponding verification color measurement values ​​of each set of verification driving data on the target display. The verification-driven data is input into each of the updated candidate models to obtain the third color code output by each candidate model; Based on the third error between the third color code and the corresponding verification color code value, an intermediate model is determined from the updated candidate models.

10. A color calibration method, characterized in that, Applied to a target display, the method includes: Acquire target color data for the target color, wherein the target color data is the data encoding of the target color in a preset color space; The target color code is input into a preset target color calibration model and inversely mapped to obtain the target driving data required for the target display to show the target color. The target display is driven based on the target driving data to display the target color; The target color calibration model is trained according to the model training method described in any one of claims 1 to 9.