Camera module image calibration method
By combining the image calibration method of AWB and LSC data, the differences and consistency of imaging effects of the camera module under variable lighting conditions are solved, and high-quality image output and production efficiency are improved in diverse lighting environments.
Patent Information
- Application Number
- CN202411284911.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-09-21
- Filing Date
- 2024-09-13
- Publication Date
- 2024-12-31
AI Technical Summary
The prior art is difficult to achieve high-quality image calibration of camera modules under variable lighting conditions, and module consistency is difficult to ensure in large-scale production, resulting in different imaging effects and high rework rate.
Using an image calibration method combining AWB and LSC data, by obtaining color temperature image data at different color temperatures, segmenting in grids and calculating the mean R/G and B/G, screening the poor modules, and automatically adjusting and correcting according to the actual ambient lighting conditions. Coefficient to improve the color and brightness adjustment ability of the module in a diverse lighting environment.
It significantly improves consistency and image quality between modules, reduces calibration errors, improves pass rate and production efficiency, reduces rework rate, and performs well in extreme lighting conditions.
Smart Images

Figure CN119232914A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of electronic data processing, and in particular to a camera module image calibration method. Background Art
[0002] As smartphones and other mobile devices have higher requirements for camera modules, how to obtain high-quality images under different ambient lighting conditions has become an important issue. In the existing technology, a single calibration method is usually used to optimize image quality. However, under variable lighting conditions, a single calibration method is difficult to meet the requirements. At the same time, in the large-scale production process, the consistency control of camera modules also faces great challenges.
[0003] The actual production process of the camera module is the process of stacking and assembling each single material. Since good consistency cannot be guaranteed between each single material, there are differences in imaging effects between the camera modules of the same batch. In the prior art, a typical module is usually selected from the camera modules of the same batch, and a set of debugging parameters is generated based on this typical module. Each camera module of the batch uses this set of debugging parameters in the terminal device to correct the color effect of the camera module. However, due to the differences in color parameters of each camera module (especially the large difference in parameters between edge camera modules and typical modules), the camera modules of the same batch use the same set of debugging parameters, and the final imaging color effects may be quite different.
[0004] For example, CN116257734A discloses a method for detecting PDAF gain data. Based on the acquired gain data, two actual data row lists of the gain data are acquired, and a corresponding bitmap mark table is generated based on the actual data list; based on the actual data row list and the bitmap mark list, it is determined whether the gain data meets the preset card control rules, and if so, the gain data is determined as valid data. This patent can detect the gain data and then achieve the technical effect of determining the validity of the gain data, but it lacks the gain data check for LSC and image color uniformity. Summary of the invention
[0005] In order to solve the problems that the calibration of the camera module cannot adapt to the changing lighting environment and the consistency of the camera module is difficult to ensure, the present invention proposes a camera module image calibration method, which can not only calibrate the color balance under different color temperatures, but also significantly improve the consistency between modules, especially in large-scale production, it is particularly effective for controlling bad modules.
[0006] In order to achieve the above object, the present invention proposes the following technical solution: a camera module image calibration method, referring to Figure 1 , including the following steps: S1, obtaining color temperature maps from the 1st color temperature to the Nth color temperature of the current module, and dividing each color temperature map into a*b regions by gridding; S2, according to the image data of each area of each color temperature map of the current module, calculate the R / G average and B / G average of each area; S3, according to the R / G and B / G ratios of the corresponding areas of the current module and the typical module, filter out the bad modules; S4, calculating and storing the AWB data and LSC data of the camera module at the first color temperature to the Nth color temperature according to the image data of the N color temperature images; S5, according to the actual ambient lighting conditions, automatically calls the AWB data and the LSC data, calculates the correction coefficient, and applies the correction coefficient to calibrate the image.
[0007] In this technical solution, by combining the two calibration methods of AWB and LSC, the image data captured by the camera module is gridded, and then the R / G and B / G ratios of the corresponding positions of the ordinary module and the typical module are compared. It can not only calibrate the color balance under different color temperatures, but also significantly improve the consistency between modules through the grid comparison method, especially in large-scale production, it is particularly effective for controlling bad modules. In a diversified lighting environment, the camera module can dynamically adjust the color and brightness, adapt to a variety of lighting environments, and thus adapt to various shooting scenes, especially perform well under extreme lighting conditions, and can avoid the problems of color deviation and image quality degradation caused by lighting changes; this technical solution collects and burns AWB data in a multi-color temperature environment, which can more accurately restore the colors under different light sources, enhance the authenticity and restoration of the image, and enable the camera module to quickly match the color temperature under the current ambient light during use, thereby outputting a more realistic and natural image effect, and can effectively reduce calibration errors and improve the qualification rate of the module, which not only improves the image quality, but also improves production efficiency and reduces the rework rate caused by bad modules.
[0008] Preferably, step S1 comprises: S11, using the current camera module to take a photo of a whiteboard at a first color temperature to an Nth color temperature, respectively, to obtain N color temperature images of the current module; S12, grid-dividing each color temperature image into a*b regions, and obtaining image data of each region of each color temperature image of the current module.
[0009] In this technical solution, whiteboard photos are taken respectively in multiple color temperature environments to obtain image data, and then the color temperature map and data are grid-divided.
[0010] Preferably, step S2 comprises: S21, obtaining the values of each channel of R, Gr, Gb, and B of each area according to the image data of each area of each color temperature map of the current module; S22, for each channel, according to the sum of the channel values of each area and the number of vertices in the exposure area, calculate the average value of the channel in each area, and obtain the average value of the four channels of the current module; S23, calculating the R / G mean and B / G mean of each area of the current module according to the average values of the four channels.
[0011] Preferably, step S3 comprises: S31, calculating the R / G mean and B / G mean corresponding to each area of the typical module according to the image data of the typical module; S32, calculating the ratio of the R / G average value and the B / G average value of the corresponding area of the current module and the typical module to obtain a first ratio of each area; S33, setting a first threshold, determining whether the first ratio of the vertices of each region exceeds the first threshold, and if there is a region where the first ratio exceeds the first threshold, determining that the current module is a bad module, and recalibrating or eliminating the current module.
[0012] Preferably, step S4 comprises: S41, calculating and storing AWB data according to N color temperature images; S42, obtaining LSC gain data according to the N color temperature images, obtaining a data row list according to the obtained gain data, and then generating a corresponding bitmap mark table according to the data row list; S43, processing the LSC gain data, setting detection rules by analyzing the rules satisfied by the qualified LSC gain data, judging whether the LSC gain data satisfies the preset detection rules, determining the LSC gain data that satisfies the detection rules as valid data, and determining the LSC gain data that does not satisfy the preset detection rules as invalid data.
[0013] Preferably, step S42 includes: S421, respectively setting the color temperature of each Figure 4 The channel is divided into a*b blocks, the brightness of each block is recorded, and the data row list of a*b is obtained. The average value of each block of the four channels is calculated, and four groups of data of the four channels R, Gr, Gb, and B are obtained respectively. Each group of data has n values. The four groups of data of R, Gr, Gb, and B are converted into hexadecimal storage and burned; S422, generate four-channel data R[n], Gr[n], Gb[n], B[n] according to the a*b method, divide the n data into t block areas according to symmetry, extract the edge area, central area and other areas, and perform mean difference detection of each channel on the extracted areas, where a, b, n, t are all integers.
[0014] Preferably, the specific process of detecting the mean difference of each channel in the edge area includes: calculating the average value avg_Xi of the block extracted from the edge area and the three surrounding blocks, and then calculating the average value avg_Xi of the blocks at the other three corners and the three surrounding blocks, avg_Xi`, avg_Xi``, avg_Xi```, adding the calculated average values of the four corners to obtain the average value avgi, and then calculating the difference value X_Diff[i] = ABS(MAX((avg_X[i]–avgi),(avg_X[i`]–avgi),(avg_X[i``]–avgi),(avg_[Xi```]–avgi))), to obtain the difference value of the average values of the edge areas of all channels.
[0015] In the technical solution, X represents any channel, which can be R, Gr, Gb, or B channel, and represents the mean difference detection of the edge area of any channel.
[0016] Preferably, the specific process of detecting the mean difference of each channel in the middle area includes: calculating the average value avg_Xi of the block extracted from the middle area and the surrounding eight blocks, and then calculating the average values avg_Xi`, avg_Xi``, avg_Xi``` of the blocks in the other three corners and the surrounding eight blocks, adding the calculated average values of the four corners to obtain the average value avgi, and then calculating the difference value X_Diff[i] = ABS(MAX((avg_X[i]–avgi),(avg_X[i`]–avgi),(avg_X[i``]–avgi),(avg_[Xi```]–avgi))) of the average values of the four corners to obtain the difference value of the average values of the middle areas of all channels, and comparing the obtained difference values to obtain the maximum peripheral difference value X_MAX_Surround.
[0017] In the technical solution, X represents any channel, which can be R, Gr, Gb, or B channel, and represents the mean difference detection of the middle area of any channel.
[0018] Preferably, the specific process of detecting the mean difference of each channel in other areas includes: calculating the average value Xi=X[i-1]+X[i]+X[i+1]) / 3 of the block extracted from other areas and the two surrounding blocks, and then calculating the average value Xi` of the block in the symmetrical area of this block and the two surrounding blocks, adding the calculated average values of the two blocks to obtain the average value avgi, and then calculating the difference value X_Diff[i]=ABS(MAX((X[i]–avgi),(X[i`]–avgi))) of the average values of the four corners to obtain the difference value of the average values of other areas of all channels, and comparing the obtained difference values to obtain the internal maximum difference value X_Max_Inner.
[0019] In the technical solution, X represents any channel, which can be R, Gr, Gb, or B channel, and represents mean value difference detection of other regions of any channel.
[0020] Preferably, the detection rules include: comparing the obtained maximum peripheral difference values and maximum internal difference values of each channel, finding the largest maximum peripheral difference value Max Surround and the maximum internal difference value Max Inner and the maximum difference ratio of the 16 blocks at the four corners Max_GrGb_diff, and when Max Surround<10% and Max Inner<5% and Max_GrGb_diff<5%, the LSC gain data that meets the detection rules is determined to be valid data.
[0021] In this technical solution, there are two detection standards, namely, the maximum difference value and the Gr-Gb difference control. If one of the two standards is not met, the LSC gain data is determined to be invalid data. The first detection rule is to compare the obtained peripheral maximum difference value and the internal maximum difference value of each channel, and find the largest peripheral maximum difference value Max Surround and the internal maximum difference value Max Inner. If Max Surround <10% and Max Inner <5%, the LSC gain data that meets the detection rule is determined to be valid data. There is also a detection rule, that is, to calculate the difference ratio of the 16 areas in the four corners respectively, and then calculate the maximum difference ratio based on the calculated difference ratio. When the maximum difference ratio is less than 5%, it means that the detected LSC gain data is valid data. If the maximum difference ratio does not meet the requirement of less than 5%, it means that the detected LSC gain data is invalid data.
[0022] The beneficial effects of the present invention are: 1) Improve image consistency and quality control: Not only can it calibrate the color balance under different color temperatures, but it can also significantly improve the consistency between modules through a grid-based comparison method, which is particularly effective for controlling bad modules in large-scale production; 2) After combining AWB and LSC data, the camera module can dynamically adjust the color and brightness in a variety of lighting environments to adapt to a variety of lighting environments, thereby adapting to various shooting scenes. This method performs particularly well under extreme lighting conditions and can avoid color deviation and image quality degradation caused by lighting changes; 3) Collecting and burning AWB data in a multi-color temperature environment can more accurately restore the colors under different light sources, enhance the authenticity and restoration of the image, and enable the camera module to quickly match the color temperature under the current ambient light during use, thereby outputting a more realistic and natural image effect; 4) Using a multi-color temperature environment to burn AWB data effectively reduces calibration errors and improves the module qualification rate, which not only improves image quality, but also improves production efficiency and reduces the rework rate caused by defective modules. BRIEF DESCRIPTION OF THE DRAWINGS
[0023] Figure 1 It is a flow chart of the present invention.
[0024] Figure 2 This is a schematic diagram of four-channel data in Example 2 of the present invention.
[0025] Figure 3 This is a schematic diagram of extracting edge data through four channels in Example 2 of the present invention.
[0026] Figure 4 Schematic diagram of calculating the mean difference of edge area Block1 in Example 2 of the present invention.
[0027] Figure 5 Schematic diagram of the mean difference calculation of the middle area Block 10 in Example 2 of the present invention.
[0028] Figure 6 Schematic diagram of calculating the mean difference of Block 50 in other regions in Example 2 of the present invention.
[0029] Figure 7 This is a schematic diagram of four-channel data in Example 3 of the present invention.
[0030] Figure 8 This is a schematic diagram of edge data extraction using four channels in Example 3 of the present invention.
[0031] Fig. 9 Schematic diagram of calculating the mean difference of edge area Block1 in Example 3 of the present invention.
[0032] Fig.10Schematic diagram of the mean difference calculation of the middle area Block 9 in Example 3 of the present invention.
[0033] Fig.11 Schematic diagram of calculating the mean difference of Block 51 in other regions in Example 3 of the present invention.
[0034] Fig.12 Schematic diagram of the electronic structure device in Example 3 of the present invention. DETAILED DESCRIPTION
[0035] The specific implementation of the technical solution of the present invention is further described below through examples and in conjunction with the accompanying drawings.
[0036] Example 1 This embodiment provides a camera module image calibration method, referring to Figure 1 , including the following steps: Step S1, obtaining the color temperature diagrams from the 1st color temperature to the Nth color temperature of the current module, and gridding each color temperature diagram into a*b regions; the specific process of step S1 includes the following sub-steps.
[0037] Step S11, using the current camera module to take a photo of a whiteboard at the first color temperature to the Nth color temperature, to obtain N color temperature images of the current module.
[0038] In this embodiment, first, a camera module is used to photograph a whiteboard under three different color temperature environments of 3000K, 5100K, and 6000K, respectively, to obtain three raw images of the whiteboard as color temperature maps.
[0039] Step S12, grid-dividing each color temperature image into a*b regions, and obtaining image data of each region of each color temperature image of the current module.
[0040] In this embodiment, the three color temperature images are grid-divided into 10*10 regions, each color temperature image has 100 regions, and image data of each region of each color temperature image of the current module is obtained.
[0041] Step S2, according to the image data of each area of each color temperature map of the current module, calculate the R / G average value and the B / G average value of each area; the specific process of step S2 includes the following sub-steps.
[0042] Step S21, obtaining the values of each channel of R, Gr, Gb, and B of each area according to the image data of each area of each color temperature map of the current module.
[0043] Step S22, for each channel, according to the sum of the channel values in each area and the number of vertices in the exposure area, the sum of each channel value in each area is recorded as R_All_block_i, Gr_All_block_i, Gb_All_block_i and B_All_block_i respectively; the number of each channel point in the exposure area is recorded as R_Count_block_i, Gr_Count_block_i, Gb_Count_block_i and B_Count_block_i respectively; Calculate the average value of each channel in each area to obtain the average value of the four channels of the current module. The specific calculation process is as follows: R_Avg_Unit_block_i = R_All_block_i / R_Count_block_i; Gr_Avg_Unit_block_i=Gr_All_block_i / Gr_Count_block_i; Gb_Avg_Unit_block_i=Gb_All_block_i / Gb_Count_block_i; B_Avg_Unit_block_i=B_All_block_i / B_Count_block_i.
[0044] Step S23, calculate the R / G mean and B / G mean of each area of the current module according to the average value of the four channels. The specific calculation process is as follows: R / G_Unit_block_i=R_Avg_Unit_block_i / ((Gr_Avg_Unit_block_i+Gb_Avg_Unit_block_i) / 2); B / G_Unit_block_i=B_Avg_Unit_block_i / ((Gr_Avg_Unit_block_i+Gb_Avg_Unit_block_i) / 2).
[0045] Step S3, filtering out bad modules according to the R / G and B / G ratios of the corresponding areas between the current module and the typical module; the specific process of step S3 includes the following sub-steps.
[0046] Step S31, according to the image data of the typical module, calculate the R / G mean and B / G mean corresponding to each area of the typical module, the R / G mean of the area of several typical modules is recorded as R / G_Golden_block_i, and the B / G mean of the area of several typical modules is recorded as B / G_Golden_block_i (i=0,1,...,n*m). In this embodiment, i=0,1,...,100. The specific calculation process is as follows: R / G_Golden_block_i=(R / G_Golden_block_i_0+...+R / G_Golden_block_i_k) / k; B / G_Golden_block_i=(B / G_Golden_block_i_0+...+B / G_Golden_block_i_k) / k.
[0047] Step S32, calculating the ratio of the R / G average value and the B / G average value of the corresponding area of the current module and the typical module to obtain the first ratio of each area.
[0048] Step S33, setting a first threshold, determining whether the first ratio of each region vertex exceeds the first threshold, if there is a region where the first ratio exceeds the first threshold, determining that the current module is a bad module, recalibrating or eliminating the current module.
[0049] In this embodiment, the first threshold is set to 10%, that is, when the following inequality cannot be satisfied, the current module is determined to be a bad module and needs to be recalibrated or eliminated; |(R / G_Unit_block_i) / (R / G_Golden_block_i)-1|≤10%; (R / G_Golden_bock_i is the R / G_Block_Average_i of the whole set of data) |(B / G_Unit_block_i) / (B / G_Golden_block_i)-1|≤10%; (B / G_Golden_block_i is B / G_Block_Average_i of the whole set of data).
[0050] Step S4, according to the image data of N color temperature images, calculate the AWB data and LSC data of the camera module at the first color temperature to the Nth color temperature, and store them in the memory; the specific process of step S4 includes the following sub-steps.
[0051] Step S41, calculate AWB data according to N color temperature maps and store it in the memory of the camera module; Step S42, obtain LSC gain data according to the N color temperature maps, obtain a data row list according to the obtained gain data, and then generate a corresponding bitmap marking table according to the data row list; Step S43, process the LSC gain data, set detection rules by analyzing the rules satisfied by qualified LSC gain data, judge whether the LSC gain data satisfies the preset detection rules, determine the LSC gain data that satisfies the detection rules as valid data, and if it does not satisfy the preset detection rules, it is determined as invalid data; Step S44, store the valid data in the memory.
[0052] In this embodiment, AWB data and LSC data are calculated according to N color temperature graphs, and the acquired data is stored in the EEPROM of the camera module. The LSC data is detected according to a method for detecting LSC gain data in Embodiment 2.
[0053] Step S5, according to the actual ambient lighting conditions, automatically call the AWB data and the LSC data, calculate the correction coefficient, and apply the correction coefficient to calibrate the image.
[0054] In this embodiment, during use, the terminal device automatically calls corresponding AWB and LSC data for image processing according to actual ambient lighting conditions, thereby achieving better image quality.
[0055] Example 2 The present application embodiment provides a method for detecting LSC gain data, comprising the following steps: S1, obtaining LSC gain data, obtaining a data row list according to the obtained gain data, and then obtaining a corresponding bitmap mark table generated according to the data list; S2, processing the LSC gain data, setting detection rules by analyzing the rules satisfied by the qualified LSC gain data, judging whether the LSC gain data satisfies the preset detection rules, and determining the LSC gain data that satisfies the detection rules as valid data; if it does not satisfy the preset detection rules, it is determined as invalid data.
[0056] First, in order to obtain gain data, move the module to 1-2cm away from the light source, parallel to the surface of the light source, set the image size, digital gain, analog gain, image brightness, mirror and flip requirements of the camera according to the preset requirements, then take pictures, and use Qualcomm tools to collect gain data. Qualcomm tool LSC divides the four channels into 17*13 blocks respectively, and records the brightness of each block. The following table is the Qualcomm LSC 17*13 data list.
[0057] That is, a 17*13 data row list is obtained, and then the average value of each Block of the four channels is calculated, and four groups of data R, Gr, Gb, and B are obtained respectively. Each group of data has 221 values. The four groups of data R, Gr, Gb, and B are converted into hexadecimal data for storage and burning. The four groups of data are numbered and stored respectively. The numbering method is as follows: Block1~221R channel data R_ave[1]: Block1 R average value - BLC R_ave[2]: Block2 R average value - BLC ...... R_ave
[220] : Block220 R average value - BLC R_ave
[221] : Block221 R average value - BLC Block1~221Gr channel data Gr_ave[1]: Block1 Gr average value - BLC Gr_ave[2]: Block2 Gr average value - BLC ...... Gr_ave
[220] : Block220 Gr average value - BLC Gr_ave
[221] : Block221 Gr average value - BLC Block1~221Gb channel data Gb_ave[1]: Block1 Gb average value - BLC Gb_ave[2]: Block2 Gb average value - BLC ...... Gb_ave
[220] : Block 220 Gb average value - BLC Gb_ave
[221] : Block221 Gb average value - BLC Block1~221B channel data B_ave[1]: Block1 B average value - BLC B_ave[2]: Block2 B average value - BLC ...... B_ave
[220] : Block220 B average value - BLC B_ave
[221] : Block221 B average value - BLC R, Gr, Gb, and B represent four channels. Since the obtained R / Gr / Gb / B values are floating point types, we need to convert them into hexadecimal data for storage. The conversion method is as follows: Hex value=(int)(1023*(R_ave[i] / R_max)+0.5){i=1,2,…220,221} Or Hex value=(int)(512*(R_ave[i] / R_max)+0.5){i=1,2,…220,221} Convert each of the 221 data into hexadecimal for easy calculation.
[0058] There are 8 burning formats for burning data. The following describes the 8 burning formats in detail.
[0059] The first type, storage format 1: 2Byte represents a value, the same channel, high first and low, the storage format is shown in the following table: RRR..RRRGGrGrGr...GrGrGrGbGbGb...GbGbGbBBB...BBB order
[0060] The second type, storage format 2: 2Byte represents a value, different channels, high first and low, the storage format is shown in the following table: RGrGbBRGrGbBRGrGbBRGrGbB..RGrGbB order
[0061] The third type, storage format 3: 2Byte represents a value, the same channel, first low and then high, the storage format is shown in the following table: RRR..RRRGGrGrGr...GrGrGrGbGbGb...GbGbGbBBB...BBB order .
[0062] The fourth type, storage format 4: 2Byte represents a value, different channels, low bits first and high bits later, the storage format is shown in the following table: RGrGbBRGrGbBRGrGbBRGrGbB..........RGrGbB order
[0063] The fifth type, storage format 5: 5Byte stores 4 channel values. The storage format is shown in the following table: 17*13*5=1105Byte The order of placement of the 5th byte data R, GR, GB, B is: bit[7:6]: B High bit[5:4]:Gb High bit[3:2]: Gr High bit[1:0]: R High Offset Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0 R_avg R Bit7 R Bit6 R Bit5 R Bit4 R Bit3 R Bit2 R Bit1 R Bit0 Gt_avg Gr Bit7 Gr Bit6 Gr Bit5 Gr Bit4 Gr Bit3 Gr Bit2 Gr Bit1 Gr Bit0 Gb_avg Gb Bit7 Gb Bir6 Gb Bit5 Gb Bit4 Gb Bit3 Gb Bit2 Gb Bit1 Gb Bit0 B_avg B Bit7 B Bit6 B Bit5 B Bit4 B Bit3 B Bit2 B Bit1 B Bit0 High bits B Bit9 B Bit8 Gb Bit9 Gb Bit8 G Bit9 Gr Bit8 R Bit9 R Bit8 .
[0064] The sixth type, storage format 6: 5Byte stores 4 channel values. The storage format is shown in the following table: 17*13*5=1105Byte The order of placement of the 5th byte data R, GR, GB, B is: bit[7:6]: R High bit[5:4]: Gr High bit[3:2]: Gb High bit[1:0]: B High Qffset Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0 R_avg R Bit7 R Bit6 R Bit5 R Bit4 R Bit3 R Bit2 R Bit1 R Bit0 Gr_avg Gr Bit7 Gr Bit6 Gr Bit5 Gr Bit4 Gr Bit3 GrBit2 Gr Bit1 Gr Bit0 Gb_avg Gb Bit7 Gb Bit6 Gb Bit5 Gb Bit4 Gb Bit3 Gb Bit2 Gb Bit1 Gb Bit0 B_avg B Bit7 B Bit6 B Bit5 B Bit4 B Bit3 B Bit2 B Bit1 B Bit0 High bits R Bit9 R Bit8 Gr Bit9 Gr Bit8 Gb Bit9 Gb Bit8 B Bit9 B Bit8 .
[0065] The seventh type, storage format 7: 1 Byte represents a value, the same channel, the storage format is as shown in the following table: RRR..RRRGGrGrGr...GrGrGrGbGbGb...GbGbGbBBB...BBB order
[0066] The eighth type, storage format 8: 1 Byte represents a value, different channels, the storage format is shown in the following table: RGrGbBRGrGbBRGrGbBRGrGbB..........RGrGbB order
[0067] After the burning is completed, the Qualcomm tool generates four-channel data R
[221] , Gr
[221] , Gb
[221] , B
[221] in a 17*13 format, and divides the 221 data into 56 areas according to symmetry, such as Figure 2 shown.
[0068] Extract the edge area, such as Figure 3 shown.
[0069] That is, Block numbers 1 to 8, 9, 17, 25, 33, 41, 49, and 51; extract the central area, that is, Block numbers 10 to 16, 18 to 24, 26 to 32, 34 to 40, and 42 to 48; extract other areas, that is, Block numbers 50 to 56 horizontally and 52 to 56 vertically, and perform mean difference detection on the extracted areas.
[0070] This embodiment takes the edge area Block1 R channel mean difference calculation method as an example. Figure 4 As shown, extract the block with Block number 1 in the edge area, and then calculate the average value of it and the surrounding three blocks. The calculation method is as follows: avg_R 1=(R[1]+R[2]+R[9]+R
[10] ) / 4; then calculate the average values of the blocks of the other three corners and the three surrounding blocks as follows: avg1=(avg_R[1]+avg_R[1`]+avg_R[1``]+avg_R[1```]) / 4; the number of each corner is set to the upper left avg_R[1], upper right avg_R[1`], lower left avg_R[1``], and lower right avg_R[1```] according to its position, and then calculate the difference in the average values of these four corners: R_Diff[1]=ABS(MAX((avg_[R1]–avg1),(avg_[R1`]–avg1),(avg_[R1``]–avg1),(avg_[R1```]–avg1))); The same is true for other edge regions. Calculate the average value of the edge region and the surrounding three blocks in the same way as above, and calculate R_Diff[2]…R_Diff[8], R_Diff[9], R_Diff
[17] , R_Diff
[25] , R_Diff
[33] , and R_Diff
[41] . For the edge regions 49 and 51, since there is only left-right and top-bottom symmetry, only their average differences are calculated: avg49 = (R
[49] + R[49`]) / 2, R_Diff
[49] = ((R
[49] - avg
[49] ), (R[49`] - avg[49`])); avg51=(R
[51] +R[51`]) / 2,R_Diff
[51] =((R
[51] -avg
[51] ),(R[51`]-avg[51`])); This embodiment takes the calculation method of the mean difference of the central area Block10R channel as an example. Figure 5 shown.
[0071] Calculate the average value of the block extracted from the middle area and the eight surrounding blocks avgR
[10] =(R[1]+R[2]+R[3]+R[9]+R
[10] +R
[11] +R
[17] +R
[18] +R
[19] ) / 9; Then calculate the average values of the blocks at the other three corners and the surrounding eight blocks, avgR[10`], avgR[10``], avgR[10```]; then add the calculated average values of the four corners to get the average value avg10, and then calculate the difference of the average values of the four corners: R_Diff
[10] = ABS(MAX((avg_[R10]–avg10),(avg_[R10`]–avg10),(avg_[R10``]–avg10),(avg_[R10```]–avg10))); The same is true for other central areas. Calculate the average value of each block and the surrounding 8 blocks in the same way to obtain R_Diff[2]…R_Diff[8], R_Diff[9], R_Diff
[17] , R_Diff
[25] , R_Diff
[33] , R_Diff
[41] ; then calculate the maximum peripheral difference value of the R channel: R_MAX_Surround=MAX((R_Diff[1],R_Diff[2],…,R_Diff[8],R_Diff[9],…,R_Diff
[41] ,R_Diff
[49] ,R_Diff
[51] )); This embodiment takes the calculation method of the mean difference of R channels in other regions as an example. Figure 6 shown.
[0072] For 52-56 which are only symmetrical in the upper and lower parts and 50-56 which are only symmetrical in the left and right parts, only the difference between the average values of the left and right parts and the upper and lower parts is calculated. Taking the block numbered 50 as an example, calculate the average value avg50 of the block numbered 50 extracted from other areas and the two surrounding blocks (avg50=R
[49] +R
[50] +R
[51] ) / 3; then calculate the average value avg50`=R[49`]+R[50`]+R[51`]) / 3 of the symmetrical area block of this block and the two surrounding blocks, and then calculate the maximum difference value R_Diff
[50] ; R_Diff
[51] , R_Diff
[52] …R_Diff
[56] are calculated in the same way according to the above calculation method, and then calculate the internal maximum difference value R_Max_Inner of the R channel = Max(R_Diff
[10] ,…,R_Diff
[48] ,R_Diff
[50] ,…,R_Diff
[56] ,R_Diff
[52] ,…,R_Diff
[56] ); The above is the calculation process of the R channel. For the Gr, Gb, and B channels, the Gr channel peripheral maximum difference value Gr_Max_Surround, the Gr channel internal maximum difference value Gr_Max_Inner, the Gb channel peripheral maximum difference value Gb_Max_Surround, the Gb channel internal maximum difference value Gb_Max_Inner, the Gb channel peripheral maximum difference value Gb_Max_Surrou nd, and the Gb channel internal maximum difference value Gb_Max_Inner are obtained in the same way. After obtaining the above maximum difference values, for the peripheral part, the peripheral maximum difference value Max_Surround=Max(R_Max_Surround, Gr_Max_Surround, Gb_Max_Surround, B_Max_Surround) is obtained; for the internal part, the internal maximum difference value Max_Inner=Max(R_Max_Inner, Gr_Max_Inner, Gb_Max_Inner, B_Max_Inner) is obtained; Finally, we need to control the two values of Max_Surround and Max_Inner, which need to be obtained by collecting data and calculating the statistics.
[0073] Based on the results obtained from the data currently received, the control standards are set as follows: Max Surround <10% Max Inner<5%, when the maximum peripheral difference value is less than 10% and the maximum internal difference value is less than 5%, it means that the obtained LSC gain data is determined to be valid data. If one of the two standards is not met, it means that the LSC gain data is determined to be invalid data.
[0074] In this embodiment, there is another detection rule, namely, Gr-Gb difference control, which calculates the Gr-Gb difference of 16 areas in four corners respectively. The calculation method is to multiply the absolute value of the difference between Gr and Gb in each block by the smaller value of Gr and Gb by 100%: Figure 4 As shown below: Let upper left LT, lower left LB, upper right RT, lower right RB, for the upper left corner: diff_GrGb_LT[1]=fabs(Gr_LT[1]-Gb_LT[1]) / min(Gr_LT[1],Gb_LT[1])*100%; diff_GrGb_LT[2]=fabs(Gr_LT[2]-Gb_LT[2]) / min(Gr_LT[2],Gb_LT[2])*100%; diff_GrGb_LT[9]=fabs(Gr_LT[9]-Gb_LT[9]) / min(Gr_LT[9],Gb_LT[9])*100%; diff_GrGb_LT
[10] =fabs(Gr_LT
[10] -Gb_LT
[10] ) / min(Gr_LT
[10] ,Gb_LT
[10] )*100%; The same goes for the lower left diff_GrGb_LB, upper right diff_GrGb_RT, and lower right diff_GrGb_BB.
[0075] Then calculate the maximum difference ratio: Max_GrGb_diff=Max(diff_GrGb_LT[1],diff_GrGb_LT[2],…,diff_GrGb_RB[2],diff_GrGb_RB[2],diff_GrGb_RB[9],diff_GrGb_RB
[10] ).
[0076] Control standard positioning: Maximum difference ratio Max_GrGb_diff<5% If the maximum difference ratio is greater than 5%, it means that the obtained LSC gain data is invalid data. If the maximum difference ratio is less than 5%, it means that the obtained LSC gain data is valid data.
[0077] Finally, the qualified data is burned into the module according to the burning data burning format requirements.
[0078] Example 3 The present application embodiment provides a method for detecting LSC gain data, comprising the following steps: S1, obtaining LSC gain data, obtaining a data row list according to the obtained gain data, and then obtaining a corresponding bitmap mark table generated according to the data list; S2, processing the LSC gain data, setting detection rules by analyzing the rules satisfied by the qualified LSC gain data, judging whether the LSC gain data satisfies the preset detection rules, and determining the LSC gain data that satisfies the detection rules as valid data; if it does not satisfy the preset detection rules, it is determined as invalid data.
[0079] First, in order to obtain gain data, move the module to 1-2cm away from the light source, parallel the module to the light source surface, set the image size, digital gain, analog gain, image brightness, mirror and flip requirements of the camera according to the preset requirements, and then take pictures, and use the MTK platform to obtain data. Since the MTK platform has a total of 1868 data, the first 68 data are header information, and the following 1800 data are data burned in the calculation area, so when decoding the 1800 data, follow the following rules for decoding: First, burn the data in the order of the image format of the platform tool. For example, if the image format is BGGR, the data sequence is: B value of area 1, Gb value of area 1, Gr value of area 1, R value of area 1, B value of area 2, Gb value of area 1, Gr value of area 1, R value of area 1, etc. Decode in this order.
[0080] The MTK platform generates four-channel data R
[225] , Gr
[225] , Gb
[225] , B
[225] in a 15*15 manner, that is, a 15*15 data row list is obtained, and then the average value of each Block of the four channels is calculated, and four groups of data R, Gr, Gb, and B are obtained respectively. Each group of data has 225 values. The four groups of data R, Gr, Gb, and B are converted into hexadecimal data for storage and burning. The four groups of data are numbered and stored respectively, and then burned. The data burning adopts the burning method of high and low bit combination, low bit first and high bit later. The storage format is shown in the following table:
[0081] After the burning is completed, the MTK platform generates four-channel data R
[225] , Gr
[225] , Gb
[225] , B
[225] in a 15*15 manner, and divides the 225 data into 56 areas according to symmetry, such as Figure 7 As shown, the edge area is extracted, such as Figure 8 As shown, Block numbers are 1 to 7, 8, 15, 22, 29, 36, 43, and 50; the central area is extracted, namely Block numbers are 9 to 14, 16 to 21, 23 to 28, 30 to 35, 37 to 42, and 44 to 49; other areas are extracted, namely Block numbers 51 to 56 in the horizontal direction and 51 to 56 in the vertical direction, and the mean difference of each channel is detected for the extracted areas.
[0082] This embodiment takes the edge area Block1 R channel mean difference calculation method as an example. Fig. 9 As shown: Extract the block numbered 1 in the edge area, and then calculate the average value of it and the three surrounding blocks. The calculation method is as follows: avg_R 1=(R[1]+R[2]+R[8]+R[9]) / 4; then calculate the average values of the blocks of the other three corners and the three surrounding blocks as follows: avg1=(avg_R[1]+avg_R[1`]+avg_R[1``]+avg_R[1```]) / 4; the number of each corner is set to the upper left avg_R[1], upper right avg_R[1`], lower left avg_R[1``], and lower right avg_R[1```] according to the position, and then calculate the difference in the average values of these four corners: R_Diff[1]=ABS(MAX((avg_[R1]–avg1),(avg_[R1`]–avg1),(avg_[R1``]–avg1),(avg_[R1```]–avg1))); The same is true for other edge areas. Calculate the average value of the edge area and the surrounding three blocks in the same way as above, and calculate R_Diff[2]…R_Diff[7], R_Diff[8], R_Diff
[15] , R_Diff
[22] , R_Diff
[29] , R_Diff
[36] , and R_Diff
[43] . For the edge region 50, since there is only left-right and top-bottom symmetry, only their average differences are calculated: avg50 = (R
[50] + R[50`]) / 2, R_Diff
[50] = ((R
[50] - avg
[50] ), (R[50`] - avg[50`])); avg50``=(R[50``]+R[50```]) / 2,R_Diff[50``]=((R[50``]-avg[50``]),(R[50```]-avg[50```])); 50, 50`, 50``, 50```, respectively represent region50 which is symmetrical up and down and region50 which is symmetrical left and right.
[0083] This embodiment takes the calculation method of the mean difference of the central area Block9R channel as an example. Fig.10 As shown, the average value avgR[9]=(R[1]+R[2]+R[3]+R[8]+R[9]+R
[10] +R
[15] +R
[16] +R
[17] ) / 9 of the block extracted from the middle area and the surrounding eight blocks is calculated; Then calculate the average values of the blocks at the other three corners and the surrounding eight blocks, avgR[9`], avgR[9``], avgR[9```]; then add the calculated average values of the four corners to get the average value avg9, and then calculate the difference of the average values of the four corners: R_Diff[9] = ABS(MAX((avg_[R9]–avg9),(avg_[R9`]–avg9),(avg_[R9``]–avg9),(avg_[R9```]–av g9))); The same is true for other central areas. Calculate the average value of each block and the surrounding eight blocks in the same way to obtain R_Diff[2]…R_Diff[7], R_Diff[8], R_Diff
[15] , R_Diff
[22] , R_Diff
[29] , R_Diff
[36] , R_Diff
[43] ; then calculate the maximum peripheral difference value of the R channel: R_MAX_Surround=MAX((R_Diff[1],R_Diff[2],…,R_Diff[7],R_Diff[8],…,R_Diff
[43] ,R_Diff
[50] ,R_Diff[50``])); This embodiment takes the calculation method of the mean difference of R channels in other regions as an example. Fig.11As shown, for 51-56 that are only symmetrical in the upper and lower parts and 51-56 that are only symmetrical in the left and right parts, only the difference between the average values of the left and right parts and the upper and lower parts is calculated. Taking the block numbered 51 as an example, the average value of the block numbered 51 extracted from other areas and the two surrounding blocks is calculated (avg51=R
[50] +R
[51] +R
[52] ) / 3; then the average value of the block numbered 51 in the symmetrical area and the two surrounding blocks is calculated (avg51`=R[50`]+R[51`]+R[52`]) / 3, and then the maximum difference value R_Diff
[51] ; R_Diff
[52] , R_Diff
[53] is calculated. …R_Diff
[56] is calculated in the same way as above, and then the internal maximum difference value of the R channel is calculated as R_Max_Inner=Max(R_Diff[9],…,R_Diff
[49] ,R_Diff
[51] ,…,R_Diff
[56] ,R_Diff
[51] …R_Diff
[56] ); The above is the calculation process of the R channel. For the Gr, Gb, and B channels, the maximum value of the Gr channel periphery is obtained in the same way. The difference value Gr_Max_Surround, the maximum difference value Gr_Max_Inner inside the Gr channel, the maximum difference value Gb_Max_Surround outside the Gb channel, the maximum difference value Gb_Max_Inner inside the Gb channel, the maximum difference value Gb_Max_Surround outside the Gb channel, and the maximum difference value Gb_Max_Inner inside the Gb channel. After obtaining the above maximum difference values, for the peripheral part, the peripheral maximum difference value Max_Surround = Max(R_Max_Surround, Gr_Max_Surround, Gb_Max_Surround, B_Max_Surround) is obtained; for the internal part, the internal maximum difference value Max_Inner = Max(R_Max_Inner, Gr_Max_Inner, Gb_Max_Inner, B_Max_Inner) is obtained; Finally, we need to control the two values of Max_Surround and Max_Inner, which need to be obtained by collecting data and calculating the statistics.
[0084] Based on the results obtained from the data currently received, the control standards are set as follows: Max Surround <10% Max Inner<5%, when the maximum peripheral difference value is less than 10% and the maximum internal difference value is less than 5%, it means that the obtained LSC gain data is determined to be valid data. If one of the two standards is not met, it means that the LSC gain data is determined to be invalid data.
[0085] In this embodiment, there is another detection rule, namely, Gr-Gb difference control, which calculates the Gr-Gb difference of 16 areas in four corners respectively. The calculation method is to multiply the absolute value of the difference between Gr and Gb in each block by the smaller value of Gr and Gb by 100%: Fig. 9 For example: Let upper left LT, lower left LB, upper right RT, lower right RB, for the upper left corner: diff_GrGb_LT[1]=fabs(Gr_LT[1]-Gb_LT[1]) / min(Gr_LT[1],Gb_LT[1])*100%; diff_GrGb_LT[2]=fabs(Gr_LT[2]-Gb_LT[2]) / min(Gr_LT[2],Gb_LT[2])*100%; diff_GrGb_LT[8]=fabs(Gr_LT[8]-Gb_LT[8]) / min(Gr_LT[8],Gb_LT[8])*100%; diff_GrGb_LT[9]=fabs(Gr_LT[9]-Gb_LT[9]) / min(Gr_LT[9],Gb_LT[9])*100%; The same goes for the lower left diff_GrGb_LB, upper right diff_GrGb_RT, and lower right diff_GrGb_BB.
[0086] Then calculate the maximum difference ratio: Max_GrGb_diff=Max(diff_GrGb_LT[1],diff_GrGb_LT[2],…,diff_GrGb_RB[2],diff_GrGb_RB[2],diff_GrGb_RB[8],diff_GrGb_RB[9]).
[0087] Control standard positioning: Maximum difference ratio Max_GrGb_diff<5% If the maximum difference ratio is greater than 5%, it means that the obtained LSC gain data is invalid data. If the maximum difference ratio is less than 5%, it means that the obtained LSC gain data is valid data.
[0088] Finally, check whether the data of the four channels generated meet the rule: large around and small in the center; burn the qualified data into the module in the order of the image format of the MTK platform tool.
[0089] Based on the same inventive concept, an electronic device is provided, such as Fig.12As shown, it includes a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the program, the steps of the above-mentioned method for detecting LSC gain data are implemented.
[0090] Among them, Fig.12 In the present invention, a bus architecture (represented by a bus) may include any number of interconnected buses and bridges, and the bus links together various circuits including one or more processors represented by a processor and a memory represented by a memory. The bus may also link together various other circuits such as peripherals, voltage regulators, and power management circuits, which are well known in the art and are therefore not further described herein. The bus interface provides an interface between the bus and a receiver and a transmitter. The receiver and transmitter may be the same element, namely a transceiver, providing a unit for communicating with various other devices over a transmission medium. The processor is responsible for managing the bus and general processing, while the memory may be used to store data used by the processor when performing operations.
[0091] Based on the same inventive concept, a computer-readable storage medium is provided, on which a computer program is stored, and when the program is executed by a processor, the steps of the detection method of the above-mentioned LSC gain data are implemented. The algorithms and displays provided herein are not inherently related to any specific computer, virtual system or other device. Various general systems can also be used with the teachings based on this. According to the above description, the structure required to construct such a system is obvious. In addition, the present invention is not directed to any specific programming language. It should be understood that the content of the present invention described herein can be implemented using various programming languages, and the above description of specific languages is to disclose the best implementation mode of the present invention. In the specification provided here, a lot of specific details are explained. However, it can be understood that embodiments of the present invention can be practiced without these specific details. In some instances, well-known methods, structures and techniques are not shown in detail so as not to blur the understanding of this specification.
[0092] The above embodiments only express several implementation methods of the present invention, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the invention patent. It should be pointed out that, for ordinary technicians in this field, several variations and improvements can be made without departing from the concept of the present invention, and these all belong to the protection scope of the present invention.
Claims
1. A camera module image calibration method, characterized in that: The following steps are involved: S1, obtaining color temperature maps from the 1st color temperature to the Nth color temperature of the current module, and dividing each color temperature map into a*b regions by gridding; S2, calculating the R / G mean and B / G mean of each area according to the image data of each area of each color temperature map of the current module; S3, filtering out bad modules according to the R / G and B / G ratios of the corresponding areas between the current module and the typical module; S4, calculating and storing the AWB data and LSC data of the camera module at the first color temperature to the Nth color temperature according to the image data of the N color temperature images; S5, according to the actual ambient lighting conditions, automatically calls the AWB data and the LSC data, calculates the correction coefficient, and applies the correction coefficient to calibrate the image.
2. A camera module image calibration method according to claim 1, characterized in that: The step S1 comprises: S11, using the current camera module to take a photo of a whiteboard at a first color temperature to an Nth color temperature, respectively, to obtain N color temperature images of the current module; S12, grid-dividing each color temperature image into a*b regions, and obtaining image data of each region of each color temperature image of the current module.
3. A camera module image calibration method according to claim 1, characterized in that: The step S2 comprises: S21, obtaining the values of each channel of R, Gr, Gb, and B of each area according to the image data of each area of each color temperature map of the current module; S22, for each channel, according to the sum of the channel values of each area and the number of vertices in the exposure area, calculate the average value of the channel in each area, and obtain the average value of the four channels of the current module; S23, calculating the R / G mean and B / G mean of each area of the current module according to the average values of the four channels.
4. A camera module image calibration method according to claim 1, characterized in that: The step S3 comprises: S31, calculating the R / G mean and B / G mean corresponding to each area of the typical module according to the image data of the typical module; S32, calculating the ratio of the R / G average value and the B / G average value of the corresponding area of the current module and the typical module to obtain a first ratio of each area; S33, setting a first threshold, determining whether the first ratio of the vertices of each region exceeds the first threshold, and if there is a region where the first ratio exceeds the first threshold, determining that the current module is a bad module, and recalibrating or eliminating the current module.
5. A camera module image calibration method according to any one of claims 1 to 4, characterized in that: The step S4 comprises: S41, calculating and storing AWB data according to N color temperature images; S42, obtaining LSC gain data according to the N color temperature images, obtaining a data row list according to the obtained gain data, and then generating a corresponding bitmap mark table according to the data row list; S43, processing the LSC gain data, setting detection rules by analyzing the rules satisfied by the qualified LSC gain data, judging whether the LSC gain data satisfies the preset detection rules, determining the LSC gain data that satisfies the detection rules as valid data, and determining the LSC gain data that does not satisfy the preset detection rules as invalid data.
6. A camera module image calibration method according to claim 5, characterized in that: The step S42 comprises: S421, divide the four channels of each color temperature image into a*b blocks respectively, record the brightness of each block, obtain the a*b data row list, calculate the average value of each block of the four channels, obtain four groups of data of four channels R, Gr, Gb, B respectively, each group of data has n values, convert the four groups of data of R, Gr, Gb, B into hexadecimal storage and burn; S422, generate four-channel data R[n], Gr[n], Gb[n], B[n] according to the a*b method, divide the n data into t block areas according to symmetry, extract the edge area, central area and other areas, and perform mean difference detection of each channel on the extracted areas, where a, b, n, t are all integers.
7. A camera module image calibration method according to claim 6, characterized in that: The specific process of detecting the mean difference of each channel in the edge area includes: calculating the average value avg_Xi of the block extracted from the edge area and the three surrounding blocks, and then calculating the average value avg_Xi of the blocks of the other three corners and the three surrounding blocks, avg_Xi`, avg_Xi``, avg_Xi```, adding the calculated average values of the four corners to obtain the average value avgi, and then calculating the difference value X_Diff[i]=ABS(MAX((avg_X[i]–avgi),(avg_X[i`]–avgi),(avg_X[i``]–avgi),(avg_[Xi```]–avgi))), to obtain the difference value of the average values of the edge areas of all channels.
8. A camera module image calibration method according to claim 6, characterized in that: The specific process of detecting the mean difference of each channel in the middle area includes: calculating the average value avg_Xi of the block extracted from the middle area and the surrounding eight blocks, and then calculating the average values avg_Xi`, avg_Xi``, avg_Xi``` of the blocks in the other three corners and the surrounding eight blocks, adding the calculated average values of the four corners to obtain the average value avgi, and then calculating the difference value X_Diff[i] = ABS(MAX((avg_X[i]–avgi),(avg_X[i`]–avgi),(avg_X[i``]–avgi),(avg_[Xi```]–avgi))) of the average values of the four corners to obtain the difference value of the average values of the middle areas of all channels, and comparing the obtained difference values to obtain the maximum peripheral difference value X_MAX_Surround.
9. A camera module image calibration method according to claim 6, characterized in that: The specific process of detecting the mean difference of each channel in the other areas includes: calculating the average value Xi=X[i-1]+X[i]+X[i+1]) / 3 of the block extracted from other areas and the two surrounding blocks, and then calculating the average value Xi` of the block in the symmetrical area of this block and the two surrounding blocks, adding the calculated average values of the two blocks to obtain the average value avgi, and then calculating the difference value X_Diff[i]=ABS(MAX((X[i]–avgi),(X[i`]–avgi))) of the average values of the four corners to obtain the difference value of the average values of other areas of all channels, and comparing the obtained difference values to obtain the internal maximum difference value X_Max_Inner.
10. The camera module image calibration method according to claim 5, characterized in that: The detection rule includes: comparing the obtained maximum peripheral difference values and the maximum internal difference values of each channel, finding the largest maximum peripheral difference value Max Surround, the maximum internal difference value Max Inner, and the maximum difference ratio Max_GrGb_diff of the 16 blocks at the four corners, and when Max Surround<10% and Max Inner<5% and Max_GrGb_diff<5% are satisfied, the LSC gain data that meets the detection rule is determined to be valid data.
Citation Information
Cited By
Camera module automatic debugging system with adaptive parameter calibration
CN119946250A