A light display control method, system and general double-voltage COB lamp strip
Patent Information
- Application Number
- CN202611239516.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-08-17
- Publication Date
- 2026-09-25
AI Technical Summary
本方案通过摄像画面提取条纹观测序列并反推拍频相位,再校正对应灯具PWM计数起点,可在保持目标亮度和颜色不变的情况下,相对缓解摄像条纹和滚动暗带;
Smart Images

Figure CN122825280A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of lighting display control technology, and more specifically, to a lighting display control method, system, and universal dual-voltage COB light strip. Background Technology
[0002] Existing lighting display control is mainly used to uniformly adjust the brightness, color, color temperature and flashing rhythm of lamps. In engineering sites, the edge gateway usually sends scene frames, dimming duty cycle, color channel value and synchronization time to each lamp through wireless networking, and confirms whether the control is completed based on the lamp online status, execution receipt or drive parameter readback. In scenarios such as live streaming rooms, conference rooms, showroom windows, and commercial display spaces, the lighting must maintain the on-site viewing effect while adapting to the progressive exposure imaging of mobile phones, surveillance cameras, or live streaming cameras. Furthermore, during the display process, video anomalies cannot be eliminated by reducing the target brightness, changing the target color, or pausing the current image. Under these conditions, even if all the lights are operating at the same brightness and color values, horizontal stripes, rolling dark bands, local color flashes, or regional brightness fluctuations will still appear in the camera footage. The root cause is that the beat frequency is generated between the wireless batch update cycle, the LED driver PWM phase, and the camera equipment exposure scan. The brightness, color, and execution success markers returned by the lights can only reflect the control input and cannot reflect the actual imaging results in the camera footage. The technical problem this application aims to solve is: how to perform edge-side correction on the drive update time or PWM phase of wireless networked lights based on stripes or flickering areas appearing in the camera image, without changing the target display brightness and target display color, so that the light display remains consistent in on-site viewing and camera imaging. Summary of the Invention
[0003] To overcome the aforementioned deficiencies in the prior art, embodiments of the present invention provide a lighting display control method, system, and universal dual-voltage COB light strip. This method extracts the stripe observation sequence along the line-by-line exposure direction using an edge camera, and then uses empirical wavelet transform and sparse Bayesian learning spectrum estimation algorithms to inversely deduce the beat frequency phase word. Finally, an edge IoT node converts the beat frequency phase word into the corresponding phase correction control word for the wirelessly networked light fixture. This corrects the PWM counting start point of the light fixture while maintaining the target brightness and color, thereby solving the problems mentioned in the background art.
[0004] To achieve the above objectives, the present invention provides the following technical solution: a lighting display control method, comprising: S1. Acquire the image captured by the edge camera in the current light display cycle, obtain the inter-row brightness difference by subtracting the average brightness of the previous row from the average brightness of the subsequent row along the line-by-line exposure direction, and output the stripe observation sequence in ascending order of row number. S2. Based on the stripe observation sequence, the empirical wavelet transform algorithm is executed to obtain the frequency domain amplitude sequence through discrete Fourier transform. The rising-to-falling index is used as the peak position, and the falling-to-rising index between adjacent peak positions is used as the frequency band boundary position. The empirical wavelet filter bank is generated and the stripe intrinsic mode sequence is output. S3. For the stripe eigenmode sequence, arrange the stripe eigenmodes with non-zero sign flipping times in descending order of row number and energy value, and take the first one in the sort as the target stripe mode. S4. Arrange the target stripe modes by row number to form an observation vector. Generate candidate beat frequency atoms within the light display cycle according to the PWM reference frequency and the row-by-row exposure interval to construct a sparse dictionary matrix. S5. In the sparse Bayesian learning spectrum estimation algorithm, the coefficient vector is obtained by multiplying the conjugate transpose of the sparse dictionary matrix by the observation vector. The sparse hyperparameters are updated by the square of the coefficients and the noise variance is updated by the sum of squared residuals. Then, the posterior mean vector is solved until the non-zero spectral line indices of two adjacent rounds are consistent, and the beat frequency phase word is output. S6. The edge IoT node writes the beat frequency phase word into the wireless networking order of the lighting fixture according to the correspondence between the position of the lighting fixture and the line interval of the screen. It generates a phase correction control word while keeping the brightness code and color code of the light source unchanged. The control word is then transmitted wirelessly to the lighting fixture, so that the lighting fixture updates the PWM count start point in the next cycle and outputs the lighting display control result.
[0005] In a preferred embodiment, S1 includes: S11. Obtain the frame start counter number, progressive exposure counter number, and light display cycle counter number of the image frame. Multiply the current row number by the progressive exposure counter number and add the frame start counter number. Then take the remainder of the light display cycle counter number to obtain the current row exposure phase number. Write the current row exposure phase number into the row exposure phase sequence in ascending order of row number. The frame start count refers to the count value latched by the local timer when the edge camera captures the first row of pixels of the image, which is used to indicate the start time of the image entering the line-by-line exposure process; The progressive scan number refers to the count difference accumulated by the local timer at the edge camera end between the start of exposure of two adjacent rows of pixels, which is used to represent the inter-row time interval of progressive scan. The digital display of the lighting cycle count refers to the count length of the local timer registered by the edge IoT node when the wirelessly networked lighting fixture completes one PWM drive counting cycle; The row number refers to the sequential number formed by arranging the rows of pixels in the image along the line-by-line exposure direction, which is used to identify the position of each row of pixels in the line-by-line exposure scan. S12. For the pixel row corresponding to the current row number, read the red channel value, green channel value and blue channel value of each pixel in the pixel row one by one. Multiply the red channel value by 299, the green channel value by 587, and the blue channel value by 114, then sum them up and divide by 1000 to get the current pixel brightness value. Then, sum the current pixel brightness values one by one and divide by the number of pixels in the pixel row to get the average brightness value of the current row. A pixel row refers to a group of pixels in an image that have the same row number and are arranged horizontally. It is used as the basic image unit for calculating the average row brightness in the line exposure direction. S13. Subtract the average brightness value of the previous row from the average brightness value of the current row to obtain the inter-row brightness difference, and write the inter-row brightness difference into the position corresponding to the exposure phase value of the current row, and output the stripe observation sequence.
[0006] In a preferred embodiment, S2 includes: S21. Read the inter-row brightness difference in the stripe observation sequence arranged in ascending order of row number. For each frequency index, calculate the cumulative sum of the inter-row brightness difference multiplied by the corresponding cosine basis value and the cumulative sum of the inter-row brightness difference multiplied by the corresponding sine basis value to obtain the real part value and the imaginary part value in the frequency domain. Then, take the square root of the square of the square of the real part value and the square of the imaginary part value in the frequency domain to obtain the frequency domain amplitude. Output the real part sequence, the imaginary part sequence, and the amplitude sequence in the frequency domain in ascending order of frequency index. The frequency index refers to the frequency domain sequence number formed when performing a discrete Fourier transform on the stripe observation sequence, which is used to identify the real part, imaginary part, and amplitude of the inter-row brightness difference at different spatial frequency positions; S22. For the frequency domain amplitude sequence, calculate the forward amplitude difference by subtracting the previous frequency domain amplitude from the current frequency domain amplitude, and calculate the backward amplitude difference by subtracting the current frequency domain amplitude from the next frequency domain amplitude. When the forward amplitude difference of the current frequency index is positive and the backward amplitude difference of the current frequency index is negative, write it into the peak bit. Read the frequency indexes with negative forward amplitude difference and positive backward amplitude difference between two adjacent peak bits, and write the read frequency indexes into the frequency band boundary bit sequence. S23. Based on the frequency band boundary sequence, segmentally extract the real part sequence and the imaginary part sequence in the frequency domain. For the real part value and the imaginary part value in the frequency domain within each extracted frequency band, retain the original value. For the real part value and the imaginary part value in the frequency domain outside the extracted frequency band, write zero. Rewrite the frequency indices at both ends of the extracted frequency band that are connected to the adjacent extracted frequency bands according to the cosine decreasing weight and the cosine increasing weight to form an empirical wavelet filter bank. Then, perform an inverse discrete Fourier transform on the real part sequence and the imaginary part sequence in the frequency domain after processing by the empirical wavelet filter bank to output the fringe eigenmode sequence. The truncation band refers to a frequency index range defined by the boundary between two adjacent frequency bands, which is used to separate the corresponding frequency components from the real part sequence and the imaginary part sequence in the frequency domain and generate a stripe eigenmode. Cosine decreasing weight and cosine increasing weight refer to paired smoothing coefficients generated according to the order of frequency index relative to the start of the transition zone in the transition zone where the truncated frequency band meets the adjacent truncated frequency band. Let the start of the transition zone be the first frequency index and the end of the transition zone be the second frequency index. The current order is obtained by subtracting the first frequency index from the current frequency index, and the transition length is obtained by subtracting the first frequency index from the second frequency index. The cosine decreasing weight is one plus the cosine value corresponding to the ratio of the current order to the transition length and then divided by two. The cosine increasing weight is one minus the cosine value corresponding to the ratio of the current order to the transition length and then divided by two. These are used to transition the frequency domain value of the current truncated frequency band from one to zero and to transition the frequency domain value of the adjacent truncated frequency band from zero to one.
[0007] In a preferred embodiment, S3 includes: S31. Read the current fringe eigenmode and its mode generation order in the fringe eigenmode sequence. Read the mode value of the current fringe eigenmode at each row number in ascending order of row number. Square the mode values at each row number and add them one by one to obtain the row number energy value of the current fringe eigenmode. The modal value refers to the numerical sampling result of the fringe eigenmode at the corresponding row number, which is used to represent the brightness fluctuation component of the fringe eigenmode at the pixel row position. The current fringe eigenmode refers to a fringe eigenmode that is being read and has its row number energy value and sign flip count calculated according to the mode generation order of the fringe eigenmode sequence during the target fringe mode screening process. S32. For the current fringe intrinsic mode, read the mode value at the previous row number and the mode value at the current row number in ascending order of row number. When the modal value at the current row number multiplied by the modal value at the previous row number is less than zero, increment the sign flip count of the current fringe intrinsic mode by one. After traversing all the row numbers of the current fringe intrinsic mode, output the sign flip count of the current fringe intrinsic mode. S33. Write the current fringe eigenmode with a non-zero sign flip count into the candidate fringe eigenmodes. Arrange the candidate fringe eigenmodes in descending order of row number energy value. If the row number energy values are the same, arrange them in descending order of sign flip count. If both the row number energy value and the sign flip count are the same, arrange them in ascending order of mode generation order. Output the candidate fringe eigenmode that ranks first in the sorting as the target fringe mode.
[0008] In a preferred embodiment, S4 includes: S41. Read the modal values in the target fringe mode arranged in ascending order of row number, write the modal value at each row number into the vector position corresponding to the same row number, and use the direction of ascending row number as the vector arrangement direction to output the observation vector. S42. Divide the light display period by the line exposure interval to obtain the line period number. Read the candidate beat frequency number one by one from zero to the line period number minus one. Divide the candidate beat frequency number by the light display period to obtain the candidate scan frequency. Subtract the candidate scan frequency from the PWM reference frequency to obtain the candidate beat frequency value. Multiply the current line number by the line exposure interval to obtain the current line exposure time. Multiply the candidate beat frequency value, the current line exposure time and two π to obtain the candidate beat frequency phase value. Output the candidate beat frequency phase table. The line-by-line exposure interval refers to the time interval between the start of exposure of two adjacent rows of pixels in the edge camera end, which is used to calculate the imaging sampling time corresponding to each pixel row under line-by-line exposure scanning. The candidate beat frequency index refers to the frequency enumeration number generated in an integer increment from zero to the row period number minus one. It is used to form the candidate scan frequency and participate in the construction of the sparse dictionary matrix. The PWM reference frequency refers to the frequency at which the driver of a wireless networked lighting fixture repeats the PWM counting cycle within one light source brightness control cycle. It is used to represent the reference switching beat of the light source driving signal. S43. For the candidate beat frequency phase table, read the candidate beat frequency phase value according to the candidate beat frequency sequence number and row number, calculate the cosine value corresponding to the candidate beat frequency phase value as the real part of the matrix, calculate the sine value corresponding to the candidate beat frequency phase value as the imaginary part of the matrix, and write the real part of the matrix and the imaginary part of the matrix into the matrix column corresponding to the same candidate beat frequency sequence number, and output the sparse dictionary matrix.
[0009] In a preferred embodiment, S5 includes: S51. Read the sparse dictionary matrix and observation vector. Multiply the observation vector by the conjugate transpose of the sparse dictionary matrix to obtain the initial coefficient vector. Add the square of the real part and the square of the imaginary part of the same candidate beat frequency index in the initial coefficient vector to obtain the first round of sparse hyperparameters. Divide the sum of squares of the residuals after subtracting the product of the sparse dictionary matrix and the initial coefficient vector from the observation vector by the length of the observation vector to obtain the first round of noise variance. At the same time, generate the previous round spectral line index as an empty index. S52. Generate a diagonal hyperparameter matrix based on the sparse hyperparameters of this round. Multiply the sparse dictionary matrix by the conjugate transpose of the sparse dictionary matrix and add the product of the noise variance of this round and the inverse of the diagonal hyperparameter matrix to obtain the posterior solution matrix. Invert the posterior solution matrix to obtain the posterior inverse matrix of this round. Multiply the posterior inverse matrix of this round by the conjugate transpose of the sparse dictionary matrix and the observation vector to output the posterior mean vector of this round. S53. For the real and imaginary parts of the same candidate beat frequency index in the posterior mean vector of this round, add the squared real part, the squared imaginary part, and the diagonal value of the same candidate beat frequency index in the posterior inverse matrix of this round to obtain the sparse hyperparameters of the next round. Then, divide the sum of squared residuals obtained by subtracting the product of the sparse dictionary matrix and the posterior mean vector of this round from the observation vector by the length of the observation vector to obtain the noise variance of the next round.
[0010] In a preferred embodiment, S5 further includes: S54. Read the posterior mean vector of this round item by item, and write the candidate beat frequency numbers whose real and imaginary parts are not simultaneously zero into the spectral line index of this round; if the spectral line index of this round is inconsistent with the spectral line index of the previous round, replace the spectral line index of the previous round with the spectral line index of this round, and return to S52 to continue the calculation with the sparse hyperparameter of the next round and the noise variance of the next round; if the spectral line index of this round is consistent with the spectral line index of the previous round, read the posterior mean vector of this round corresponding to the spectral line index of this round. S55. Perform arctangent operation with the real part of the posterior mean vector corresponding to the current spectral line index as the horizontal axis value and the imaginary part as the vertical axis value to obtain the beat frequency phase value. Write the beat frequency phase value according to the candidate beat frequency number corresponding to the current spectral line index and output the beat frequency phase word for the light source PWM counting start point correction.
[0011] In a preferred embodiment, S6 includes: S61. Read the correspondence between the lamp position and the screen row interval. Obtain the lamp coverage row interval according to the wireless networking lamp entry order. Use the row number range of the target stripe mode that participates in the generation of the beat frequency phase word as the beat frequency phase word row interval. Calculate the number of overlapping rows between the lamp coverage row interval and the beat frequency phase word row interval one by one. Subtract the number of overlapping rows from the length of the lamp coverage row interval to get the number of non-overlapping rows. Subtract the number of non-overlapping rows from the number of overlapping rows to get the corresponding score. Determine the wireless networking lamp entry order corresponding to the beat frequency phase word according to the descending order of the corresponding score, the descending order of the number of overlapping rows, and the ascending order of the wireless networking lamp entry order. Output the entry phase correspondence table. The image row interval refers to a range of pixel rows in the image defined by the start row number and the end row number, which is used to represent the imaging coverage position of a certain lamp in the line-by-line exposure direction; S62. Based on the network access phase correspondence table, read the beat frequency phase word and PWM count start point of the same wireless network lamp access sequence. Multiply the beat frequency phase word by the light display cycle count number and divide by two to the power of W to obtain the phase count offset. Add the phase count offset to the PWM count start point and take the remainder of the light display cycle count number to output the correction PWM count start point. The PWM count start point refers to the initial count value written to the counter at the beginning of a PWM count cycle by the lamp driver, which is used to determine the phase position of the light source conduction pulse within the light display cycle; S63. Read the starting point of the correction PWM count, the light source brightness code and the color code, write the original value of the light source brightness code into the brightness control segment, write the original value of the color code into the color control segment, write the starting point of the correction PWM count into the phase control segment, and output the phase correction control word. The light source brightness code refers to the brightness control digital quantity sent from the edge IoT node to the lamp driver, which is used to determine the light source conduction duty cycle of the lamp in the current lighting display cycle; the original value of the light source brightness code refers to the light source brightness code that has been written into the current light source display control word before the phase correction control word is generated, which is used to keep the target brightness of the lamp unchanged when adjusting the PWM count start point; The color code refers to the color control digital quantity sent from the edge IoT node to the lighting driver, which is used to determine the driving ratio of each color channel of the lighting fixture in the current lighting display cycle; and the original color code value refers to the color code that has been written into the current light source display control word before the phase correction control word is generated, which is used to keep the target color of the lighting fixture unchanged when adjusting the PWM count start point. S64. The edge IoT node sends the phase correction control word wirelessly according to the network access order of the wireless networked lights, and reads the phase control segment readback value returned by the lights; if the phase control segment readback value is different from the phase control segment, the same phase correction control word is sent again; if the phase control segment readback value is equal to the phase control segment, the execution confirmation word is output. The phase control segment readback value refers to the value that the lamp driver reads from the latched phase control segment and sends back to the edge IoT node after receiving the phase correction control word. It is used to verify whether the PWM count start point has been written according to the phase control segment. S65. In the next lighting display cycle, the luminaire latches the light source brightness code and color code according to the execution confirmation word, updates the PWM count start point according to the phase control segment, and outputs the lighting display control result.
[0012] A lighting display control system includes a data acquisition module, a decomposition module, a filtering module, a construction module, an estimation module, and a correction module. The acquisition module is used to acquire the image captured by the edge camera in the current light display cycle. It obtains the inter-row brightness difference by subtracting the average brightness of the previous row from the average brightness of the subsequent row along the line-by-line exposure direction, and outputs the stripe observation sequence in increments according to the row number. The decomposition module executes the empirical wavelet transform algorithm based on the fringe observation sequence, obtains the frequency domain amplitude sequence through discrete Fourier transform, uses the rising-to-falling index as the peak position, and the falling-to-rising index between adjacent peak positions as the frequency band boundary position, generates an empirical wavelet filter bank and outputs the fringe eigenmode sequence. The filtering module is used to sort the stripe eigenmode sequences in descending order of row number energy value, and select the first sorted stripe eigenmode as the target stripe mode. The construction module is used to form an observation vector by arranging the target stripe mode by row number, generate candidate beat frequency atoms according to the PWM reference frequency and the row-by-row exposure interval within the light display cycle, and construct a sparse dictionary matrix. The estimation module is used in the sparse Bayesian learning spectrum estimation algorithm to obtain the coefficient vector by multiplying the conjugate transpose of the sparse dictionary matrix by the observation vector, update the sparse hyperparameters by the square of the coefficients and update the noise variance by the sum of squared residuals, solve the posterior mean vector, and output the beat frequency phase word when the non-zero spectral line indices of two adjacent rounds are consistent. The correction module is used by the edge IoT node to write the beat frequency phase word into the network access order of the wireless networked lamp according to the correspondence between the lamp position and the screen row interval. It generates a phase correction control word while keeping the light source brightness code and color code unchanged, and sends it to the lamp wirelessly so that the lamp updates the PWM count start point in the next cycle and outputs the lighting display control result.
[0013] A universal dual-voltage COB LED strip includes: The dual-voltage COB LED strip includes a processor and a memory, the memory storing a computer program that the processor executes to perform the method.
[0014] The technical effects and advantages of this invention are as follows: This solution extracts the stripe observation sequence from the camera footage and reverses the beat frequency phase, then corrects the corresponding PWM counting start point of the lamp. This can relatively alleviate camera stripes and rolling dark bands while keeping the target brightness and color unchanged. By decomposing the fringe observation sequence into fringe eigenmodes through empirical wavelet transform and screening the target fringe mode, the beat frequency estimation can focus on the line-by-line exposure related components and reduce interference from non-fringe brightness variations. By constructing a sparse dictionary matrix using the PWM reference frequency, line-by-line exposure interval, and light display period, the image stripe variation can be transformed into a spectral line estimation problem, thereby enhancing the edge correction direction. In the sparse Bayesian learning spectrum estimation algorithm, the sparse hyperparameters, noise variance and posterior mean vector are recursively derived, and the beat frequency phase word can be determined from the candidate beat frequency index, thus improving the computability of the correction amount. After matching the lamp coverage row interval with the beat frequency phase word row interval, the phase correction control word is written, which can reduce the probability of irrelevant lamps being synchronously rewritten in the wireless network. Attached Figure Description
[0015] Figure 1 This is a flowchart outlining the method steps of the present invention; Figure 2 This is a schematic diagram of the system module structure of the present invention. Detailed Implementation
[0016] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0017] Refer to the instruction manual appendix Figure 1-2 The present invention provides a lighting display control method, comprising: S1. Acquire the image captured by the edge camera in the current light display cycle, obtain the inter-row brightness difference by subtracting the average brightness of the previous row from the average brightness of the subsequent row along the line-by-line exposure direction, and output the stripe observation sequence in ascending order of row number. In this embodiment, after the edge camera captures the image, it converts the brightness fluctuations formed by the line-by-line exposure into a stripe observation sequence that can be read by subsequent empirical wavelet transform. The processing first maps each pixel line to the phase position within the light display cycle, then converts the color channel value of each pixel line into the average brightness value of the line, and then uses the brightness difference between adjacent pixel lines to represent the stripe changes in the line-by-line exposure direction. The current lighting display cycle begins when the PWM counter on the lamp driver starts one counting cycle and ends when the same PWM counter completes that counting cycle. When the frame start count of the imaging image falls into the current lighting display cycle, the imaging image participates in the generation of the stripe observation sequence. This implementation process includes the following steps: S11 is used to determine the exposure phase of each pixel row within the light display cycle, so that the brightness difference between subsequent rows can be written into the stripe observation sequence according to the light source PWM beat. The edge camera acquires the frame start count, progressive exposure count, and light display cycle count of the image. The frame start count is the count value latched by the local timer when the first row of pixels of the image is acquired. The progressive exposure count is the count difference accumulated by the local timer between the start of exposure of two adjacent rows of pixels. The light display cycle count is the count length registered by the edge IoT node when the wireless networked light completes one PWM drive counting cycle. When the local timer of the edge camera and the timer of the edge IoT node do not belong to the same timing reference, first read the transmit count and receive count in the frame synchronization packet, subtract the transmit count from the receive count to get the timing offset, and then add the timing offset to the frame start count to get the converted frame start count. The transmit and receive counters use the same counting unit and the same counting bit width, with a designed bit width of w and a counting modulus of two powers of w. When the receive counter is not less than the transmit counter, the timing offset is obtained by subtracting the transmit counter from the receive counter. When the receive counter is less than the transmit counter, the timing offset is obtained by adding the receive counter to the counting modulus and then subtracting the transmit counter. When the converted frame start counter exceeds the counting modulus, the remainder of the counting modulus is taken. Then, the pixel rows in the image are read in ascending order of row number. The current row number is multiplied by the line exposure meter number, and the converted frame start meter number is added. The remainder is then taken with respect to the light display cycle meter number to obtain the current row exposure phase word. The current row exposure phase word is then written into the row exposure phase sequence in ascending order of row number. If the frame start timer digit, the line exposure timer digit, or the light display cycle timer digit is missing, the current image frame is discarded and the next image frame is read to avoid misalignment of the line exposure phase digits caused by different timing sources; S12 is used to convert the pixel row corresponding to the current row number into a single brightness value, so that the color changes in the camera image can participate in the inter-row brightness difference calculation with a uniform brightness caliber. For the pixel row corresponding to the current row number, the edge camera reads the red channel value, green channel value and blue channel value of each pixel in the pixel row one by one. The red channel value, green channel value and blue channel value are all read as eight-bit unsigned integers. The brightness conversion factor is given by the brightness conversion configuration of the edge IoT node. The red channel value is multiplied by 299, the green channel value by 587, and the blue channel value by 114, then summed, divided by 1000, and the integer quotient is taken to obtain the current pixel brightness value. The edge camera accumulates the brightness values of the current pixels in the same pixel row one by one, and then divides the accumulated result by the number of pixels in the pixel row and takes the integer quotient to obtain the average brightness value of the current row. If the current pixel lacks a red channel value, green channel value, or blue channel value, then the current pixel will not be read. The number of pixels in the pixel row will be counted according to the actual number of pixels involved in the brightness conversion. If the pixel row corresponding to the current row number has no pixels involved in the brightness conversion, then the current row number will not generate the current row brightness average value word. S13 is used to write the brightness change between adjacent pixel rows into the position corresponding to the phase of the light display cycle, thereby outputting a stripe observation sequence that can be read by subsequent frequency domain decomposition. The edge camera reads the average brightness value of the current line and the average brightness value of the previous line starting from the second valid line number, and subtracts the average brightness value of the previous line from the average brightness value of the current line to obtain the brightness difference between the lines. No inter-row brightness difference is generated when the row number is the first valid row number; the first written value of the stripe observation sequence corresponds to the second valid row number. The edge IoT node determines the stripe observation sequence length by subtracting one from the light display cycle number, dividing it by the progressive exposure meter number, and adding one to the integer quotient. The corresponding write positions are then set sequentially from zero according to the phase sequence number. The length of the row exposure phase sequence is determined by the number of valid row numbers used to generate the current row exposure phase word. The row exposure phase sequence and the stripe observation sequence are not limited to the same length. The edge IoT node obtains the phase number by dividing the current row exposure phase word by the line-by-line exposure meter number, and writes the inter-row brightness difference into the position corresponding to the phase number in the stripe observation sequence. If the same phase number corresponds to multiple inter-line brightness differences, the inter-line brightness differences under the same phase number are accumulated in ascending order of the line number, and the accumulated result is divided by the number of writes and the integer quotient is taken to form the inter-line brightness difference corresponding to the phase number. If the previous line of brightness mean value is missing, skip the current line number and continue reading the next valid line number until you get adjacent valid line numbers that can be subtracted, and finally output the stripe observation sequence. Through the above implementation process, the progressive exposure stripes in the imaging image are converted into a stripe observation sequence organized according to the phase of the light display cycle. The subsequent empirical wavelet transform algorithm can directly read the stripe observation sequence and separate the stripe eigenmodes, avoiding the loss of the correspondence between the light source PWM beat and the camera progressive exposure beat caused by directly using the whole image. In practical applications: For example, multiple wirelessly networked lights in an exhibition hall display a fixed color and brightness within the same lighting display cycle. After the edge camera captures an image with a horizontal dark band, it first uses the frame start counter digital and the progressive scan digital to calculate the current row exposure phase word for each pixel row. Then, it converts the red channel value, green channel value, and blue channel value of each pixel row into the current row brightness average value word. Finally, it writes the inter-row brightness difference between adjacent pixel rows into the corresponding phase sequence number to form a stripe observation sequence for subsequent S2 reading.
[0018] S2. Based on the stripe observation sequence, the empirical wavelet transform algorithm is executed to obtain the frequency domain amplitude sequence through discrete Fourier transform. The rising-to-falling index is used as the peak position, and the falling-to-rising index between adjacent peak positions is used as the frequency band boundary position. The empirical wavelet filter bank is generated and the stripe intrinsic mode sequence is output. In this embodiment, the stripe observation sequence has been written into the inter-row brightness difference according to the phase of the light display cycle. The edge IoT node needs to convert the stripe observation sequence from the row number domain to the frequency index domain, and then adaptively determine the frequency band boundary position according to the rise and fall of the frequency domain amplitude. Finally, the empirical wavelet filter bank is used to separate the stripe eigenmode sequence corresponding to the camera stripe. The processing procedure first performs a Discrete Fourier Transform on the inter-line brightness difference, then determines the peak position and frequency band boundary position from the frequency domain amplitude sequence, and subsequently extracts the real part sequence and the imaginary part sequence in the frequency domain according to the frequency band boundary position and performs an inverse Discrete Fourier Transform. This implementation process includes the following steps: In S21, in order to convert the inter-row brightness difference in the line-by-line exposure direction into a frequency domain expression, the edge IoT node reads the inter-row brightness difference arranged in ascending order of row number in the stripe observation sequence, and uses the length of the stripe observation sequence as the length of the discrete Fourier transform, with the frequency index increasing from zero to the length of the stripe observation sequence minus one. For each frequency index, the edge IoT node reads the inter-row brightness difference corresponding to each row number in ascending order of row number. Based on the row number, frequency index, and stripe observation sequence length, it generates the corresponding cosine base value and the corresponding sine base value. The inter-row brightness difference is multiplied by the corresponding cosine base value and then accumulated item by item to obtain the real part value in the frequency domain. The inter-row brightness difference is multiplied by the corresponding sine base value and then accumulated item by item to obtain the imaginary part value in the frequency domain. Finally, the square root of the sum of the square of the real part value and the square of the imaginary part value in the frequency domain is used to obtain the amplitude value in the frequency domain. The real part, imaginary part, and amplitude in the frequency domain are all written according to the same frequency index, forming a sequence of real part, imaginary part, and amplitude in the frequency domain, which are then read for subsequent peak bits and frequency band boundaries. If there are positions in the fringe observation sequence where the interline brightness difference is not written, then the position participates in the discrete Fourier transform with a zero value. The corresponding frequency index of the unwritten position is retained and a zero value is written. The corresponding position is not deleted or the fringe observation sequence is compressed so that the phase number interval and the length of the discrete Fourier transform of the fringe observation sequence remain unchanged. If the length of the fringe observation sequence is zero, then the frequency domain transformation is stopped and the fringe observation sequence generated by the next frame of the imaging picture is reread. In S22, in order to obtain the adaptive frequency band boundary required for empirical wavelet transform from the frequency domain amplitude sequence, the edge IoT node reads the frequency domain amplitude sequence item by item along the frequency index increment direction. The first and last frequency indices do not participate in the judgment of rising to falling. For the current frequency index, the edge IoT node calculates the forward amplitude difference by subtracting the previous frequency domain amplitude from the current frequency domain amplitude, and calculates the backward amplitude difference by subtracting the current frequency domain amplitude from the next frequency domain amplitude. When the forward amplitude difference of the current frequency index is positive and the backward amplitude difference of the current frequency index is negative, the current frequency index is written to the peak bit. If multiple consecutive frequency indices correspond to the same frequency domain amplitude, then the consecutively equal frequency indices are grouped into the same amplitude platform. The amplitude difference between the previous frequency index and the starting frequency index of the amplitude platform, as well as the amplitude difference between the ending frequency index and the next frequency index of the amplitude platform, are read. When the difference between the previous and next amplitudes is positive and negative, the integer quotient obtained by dividing the sum of the starting and ending frequency indices of the amplitude platform by two is written into the peak bit. When the difference between the previous and next amplitudes is negative and positive, the integer quotient is written into the frequency band boundary bit sequence. When the amplitude platform is located at the beginning or end of the frequency domain amplitude sequence, it does not participate in the generation of peak bits and frequency band boundary bits. Between two adjacent peak positions, the edge IoT node continues to read the forward amplitude difference and backward amplitude difference item by item. When the forward amplitude difference of the current frequency index is negative and the backward amplitude difference of the current frequency index is positive, the current frequency index is written into the frequency band boundary position sequence. If no frequency index satisfying the condition that the forward amplitude difference is negative and the backward amplitude difference is positive is read between two adjacent peak positions, then the index of the two peak positions and the integer quotient obtained by dividing by two are written into the frequency band boundary sequence to ensure that the frequency band boundary sequence can continuously limit the subsequent intercepted frequency band. In S23, in order to separate the fringe components in the frequency index domain into fringe eigenmodes that can be used for target fringe mode selection, the edge IoT node extracts the real part sequence and the imaginary part sequence of the frequency domain segment by segment based on the frequency band boundary position sequence. The starting point of the first intercepted frequency band is frequency index zero, and the ending point of the last intercepted frequency band is the last position of the frequency index. The intermediate intercepted frequency bands are defined by the boundary positions of two adjacent frequency bands. Each intercepted frequency band generates a mode generation sequence according to the increasing direction of the frequency band boundary positions. For each intercepted frequency band, the edge IoT node retains the real and imaginary values in the frequency domain within the intercepted frequency band, writes zero to the real and imaginary values in the frequency domain outside the intercepted frequency band, and generates cosine decreasing weights and cosine increasing weights in the transition zone where the intercepted frequency bands connect with adjacent intercepted frequency bands at both ends. The current order is obtained by subtracting the start point of the transition zone from the current frequency index, and the transition length is obtained by subtracting the start point of the transition zone from the end point of the transition zone. The cosine decreasing weight is one plus the cosine value corresponding to the ratio of the current order to the transition length, and then divided by two. The cosine increasing weight is one minus the cosine value corresponding to the ratio of the current order to the transition length, and then divided by two. Specifically, for any frequency band boundary, the first index interval between the current frequency band boundary and the previous frequency band boundary, and the second index interval between the next frequency band boundary and the current frequency band boundary are read. The first and second index intervals are arranged in ascending order of value. The integer quotient of the first index interval divided by two is taken as the transition half-width. The transition half-width is subtracted from the frequency band boundary to obtain the start point of the transition zone, and the transition half-width is added to the frequency band boundary to obtain the end point of the transition zone. No outward transition zone is set for the start point of the first captured frequency band and the end point of the last captured frequency band. When the transition half-width is zero, cosine weight rewriting is not performed. When the transition length is zero, cosine weight rewriting is not performed; the frequency domain values within the frequency band are retained in their original values, and the frequency domain values outside the frequency band are written to zero. The edge IoT node performs an inverse discrete Fourier transform on the real part sequence and the imaginary part sequence in the frequency domain after processing each truncated frequency band, and generates a sequential output stripe eigenmode sequence according to the mode. Through the above implementation process, the inter-row brightness difference in the fringe observation sequence is converted into a frequency domain amplitude sequence, and the frequency band boundary sequence is generated by the rise and fall of the frequency domain amplitude sequence itself. An empirical wavelet filter bank can be formed without external fixed frequency bands. Each fringe eigenmode in the fringe eigenmode sequence corresponds to a truncation frequency band and a mode generation order. Subsequently, the target fringe mode can be selected based on the row number energy value, the number of sign flips, and the mode generation order. In practical applications: After the edge camera captures the image of the exhibition hall lighting fixtures, the stripe observation sequence output by S1 contains the brightness changes of the dark band formed along the line-by-line exposure direction. The edge IoT node performs a discrete Fourier transform on the stripe observation sequence to obtain the frequency domain real part sequence, frequency domain imaginary part sequence, and frequency domain amplitude sequence. Then, based on the peak position and frequency band boundary position in the frequency domain amplitude sequence, an empirical wavelet filter bank is generated. Finally, multiple stripe eigenmodes are output for S3 to screen the target stripe mode that is related to the phase of the light source PWM.
[0019] S3. For the stripe eigenmode sequence, arrange the stripe eigenmodes with non-zero sign flipping times in descending order of row number and energy value, and take the first one in the sort as the target stripe mode. In this embodiment, after obtaining the stripe intrinsic mode sequence, the edge IoT node needs to select the target stripe mode corresponding to the row-by-row exposure stripe changes from multiple stripe intrinsic modes. The processing first calculates the energy concentration degree of each stripe intrinsic mode in the row number direction, then counts the number of sign flips of the mode value between adjacent row numbers, and then selects the stripe intrinsic modes with sign flips as candidate stripe intrinsic modes, and sorts them according to row number energy value, number of sign flips, and mode generation order. This implementation process includes the following steps: In S31, in order to quantify the brightness fluctuation intensity of each fringe eigenmode in the direction of the row number of the image, the edge IoT node reads the current fringe eigenmode and its mode generation order in the fringe eigenmode sequence. The mode generation order is determined by the generation order of the truncated frequency band in S23. The truncated frequency band is generated in the direction of increasing frequency band boundary position, and the mode generation order increases from zero. The edge IoT node reads the modal value of the current stripe eigenmode at each row number in ascending order of row number. The modal value is the numerical sampling result of the stripe eigenmode at the corresponding row number, which is used to represent the brightness fluctuation component of the stripe eigenmode at the pixel row position. The edge IoT node squares the modal values on each row number and adds them together to obtain the row number energy value of the current fringe eigenmode. The row number energy value is then written into the modal filtering record along with the current fringe eigenmode and the modal generation order. If the current fringe intrinsic mode is missing a modal value at a certain row number, the modal value at that row number will be squared and accumulated as zero. If the current fringe intrinsic mode has no modal value at any row number, the current fringe intrinsic mode will not be written into the modal filtering record. In S32, in order to identify whether the current stripe intrinsic mode has stripe features that alternate along the line-by-line exposure direction, the edge IoT node reads the current stripe intrinsic mode based on the mode filtering record, and reads the mode value on the previous line number and the mode value on the current line number in increments according to the line number. Edge IoT nodes read the quantization unit corresponding to the last significant bit according to the storage precision of the stripe intrinsic modes, write zero to mode values with an absolute value less than one quantization unit, and retain the original sign and value of the remaining mode values; the number of sign flips is calculated based on the adjacent mode values after this processing. When the modal value of the current row number multiplied by the modal value of the previous row number is less than zero, the edge IoT node increments the sign flip count of the current stripe intrinsic mode by one; If the modal value of the current line number multiplied by the modal value of the previous line number equals zero, the sign toggling count is not incremented, and the next line number is read. After traversing all row numbers of the current fringe intrinsic mode, the edge IoT node outputs the sign flip count of the current fringe intrinsic mode and writes the sign flip count into the mode filtering record for subsequent sorting and reading; if the current fringe intrinsic mode has only one valid mode value, the sign flip count is written to zero. In S33, in order to determine the target fringe mode for beat frequency phase estimation among multiple fringe eigenmodes, the edge IoT node reads the mode filtering record and writes the current fringe eigenmode with a non-zero sign flip count into the candidate fringe eigenmode. The edge IoT nodes sort the candidate stripe intrinsic modes in descending order of row number energy value. If the row number energy values are the same, they are sorted in descending order of sign flip number. If both the row number energy value and the sign flip number are the same, they are sorted in ascending order of mode generation order. The candidate stripe intrinsic mode with the first position in the sorted order is output as the target stripe mode. If there is no current fringe eigenmode with a non-zero sign flip count, the edge IoT node reads the current fringe eigenmode whose row number energy value is sorted in descending order in the mode filtering record as the target fringe mode, ensuring that subsequent observation vectors can continue to be generated; Through the above implementation process, each fringe eigenmode in the fringe eigenmode sequence is converted into a mode filtering record with row number energy value, sign flip number and mode generation order. The edge IoT node can select the target fringe mode that has both brightness fluctuation intensity and row-by-row alternation characteristics, providing a single and clear input for the subsequent sparse dictionary matrix construction. In practical applications: When there are horizontal dark bands in the exhibition hall camera footage formed by the PWM beat of the lighting fixtures and the line-by-line exposure beat, the empirical wavelet transform algorithm will output multiple stripe eigenmodes. The edge IoT nodes will calculate the row number energy value and sign flip number of each stripe eigenmode, and then select the target stripe mode according to the row number energy value, sign flip number, and mode generation order, so that S4 can arrange them according to the row number to form the observation vector.
[0020] S4. Arrange the target stripe modes by row number to form an observation vector. Generate candidate beat frequency atoms within the light display cycle according to the PWM reference frequency and the row-by-row exposure interval to construct a sparse dictionary matrix. In this embodiment, after obtaining the target fringe mode, the edge IoT node converts the target fringe mode into an observation vector that can be read by the sparse Bayesian learning spectrum estimation algorithm. It then generates a candidate beat frequency phase table based on the lamp's PWM reference frequency, the line-by-line exposure interval, and the light display period. A sparse dictionary matrix is then constructed from the candidate beat frequency phase table. The core of the process is to use the row number position of the target fringe mode as the observation dimension and the candidate beat frequency index as the spectral line enumeration dimension, so that subsequent beat frequency phase words can be obtained from the matching relationship between the sparse dictionary matrix and the observation vector. This implementation process includes the following steps: S41 is used to convert the target fringe mode into an observation vector arranged by row number, so that the subsequent sparse Bayesian learning spectrum estimation algorithm has a fixed input dimension. The edge IoT node reads the modal values in the target stripe mode arranged in ascending order of row number. The target stripe mode comes from the first candidate stripe eigenmode output by S33. Edge IoT nodes use the increasing row number direction as the vector arrangement direction, write the modal value of each row number to the vector position corresponding to the same row number to form an observation vector, and write the observation vector to the beat frequency estimation buffer for S42 and subsequent S5 to read; If the target stripe mode is missing a mode value at a certain row number, the vector position corresponding to that row number is written with a zero value. If the target stripe mode has no mode values at any row number, the edge IoT node returns to S3 to reread the stripe intrinsic mode sequence and regenerate the target stripe mode. S42 is used to generate a candidate beat frequency phase table, so that each candidate beat frequency number has a calculable phase value in each row number; The edge IoT node reads the light display cycle, line-by-line exposure interval and PWM reference frequency determined by one PWM drive counting cycle in S11. The line-by-line exposure interval is the time length between the start of light integration and the end of light integration of a pixel row in the edge camera end. The line-by-line exposure interval is obtained by dividing the line-by-line exposure meter number by the edge IoT timer frequency. Edge IoT nodes obtain the line cycle quotient by dividing the light display cycle by the line exposure interval, and take the integer quotient of the line cycle quotient as the line cycle number. The remainder is not involved in the generation of candidate beat frequency sequence number. Then, the candidate beat frequency numbers are read one by one from zero to the number of line cycles minus one. The candidate scan frequency is obtained by dividing the candidate beat frequency number by the light display cycle. The candidate beat frequency value is obtained by subtracting the candidate scan frequency from the PWM reference frequency. The current line exposure time is obtained by multiplying the current line number by the line exposure interval. The candidate beat frequency value, the current line exposure time and two π are multiplied together to obtain the candidate beat frequency phase value. The edge IoT node writes the candidate beat frequency phase value according to the candidate beat frequency sequence number and row number, and outputs the candidate beat frequency phase table for S43 to read; if the line-by-line exposure interval is zero or the light display cycle is zero, the candidate beat frequency phase table is not generated, and the timing parameters of the edge camera end and the light driver end are read again. S43 is used to convert the candidate beat frequency phase table into a sparse dictionary matrix, so that each candidate beat frequency index corresponds to a column of complex atoms; The edge IoT node reads the candidate beat frequency phase table, reads the candidate beat frequency phase value item by item according to the candidate beat frequency sequence number and row number, calculates the cosine value corresponding to the candidate beat frequency phase value as the real part of the matrix, and calculates the sine value corresponding to the candidate beat frequency phase value as the imaginary part of the matrix. The rows of the sparse dictionary matrix correspond to the vector positions in the observation vector, and the columns of the sparse dictionary matrix correspond to the candidate beat frequency indices. The matrix columns corresponding to the same candidate beat frequency indices are written into the real part and imaginary part of the matrix in ascending order of row number, forming complex atomic columns. When a row number in the candidate beat frequency phase table is missing a candidate beat frequency phase value, the real part of the corresponding matrix is written with a zero value and the imaginary part of the matrix is written with a zero value. When all row numbers corresponding to the candidate beat frequency number are missing candidate beat frequency phase values, the candidate beat frequency number is not generated into a matrix column. Finally, a sparse dictionary matrix is output for S5 to read. Through the above implementation process, the target fringe mode is organized into an observation vector consistent with the row number. The PWM reference frequency, the line-by-line exposure interval and the light display period are converted into a candidate beat frequency phase table. The candidate beat frequency phase table is further converted into a sparse dictionary matrix, so that the subsequent sparse Bayesian learning spectrum estimation algorithm can estimate the beat frequency phase word within the candidate beat frequency sequence number range. In practical applications: the exhibition hall lighting driver operates at a fixed PWM reference frequency, the edge camera captures images in a line-by-line exposure mode, the edge IoT node reads the target stripe mode, first generates an observation vector according to the row number, then enumerates the candidate beat frequency sequence number according to the light display cycle and the line-by-line exposure interval, generates a candidate beat frequency phase table, and finally writes the cosine value and sine value corresponding to each candidate beat frequency sequence number into a sparse dictionary matrix to provide calculable input for the subsequent S5 output beat frequency phase word.
[0021] S5. In the sparse Bayesian learning spectrum estimation algorithm, the coefficient vector is obtained by multiplying the conjugate transpose of the sparse dictionary matrix by the observation vector. The sparse hyperparameters are updated by the square of the coefficients and the noise variance is updated by the sum of squared residuals. Then, the posterior mean vector is solved until the non-zero spectral line indices of two adjacent rounds are consistent, and the beat frequency phase word is output. In this embodiment, after obtaining the sparse dictionary matrix and observation vector, the edge IoT node determines the spectral lines participating in the light source PWM phase correction from the candidate beat frequency indices using a sparse Bayesian learning spectral estimation algorithm, and converts the complex posterior mean corresponding to the spectral lines into beat frequency phase words. The processing first involves the sparse dictionary matrix and observation vector forming the first round of computation, then recursively updating the sparse hyperparameters, noise variance, and the current round's posterior mean vector. Subsequently, the consistency between the current round's spectral line index and the previous round's spectral line index is used as the convergence criterion. Finally, a quadrant-based arctangent operation is performed on the converged spectral lines. This implementation process includes the following steps: S51 is used to establish the first round input of the sparse Bayesian learning spectrum estimation algorithm, so that subsequent recursions have a clear initial source; The edge IoT node reads the sparse dictionary matrix output by S43 and the observation vector output by S41, and multiplies the observation vector by the conjugate transpose of the sparse dictionary matrix to obtain the initial coefficient vector; for the same candidate beat frequency number, the edge IoT node reads the real part and the imaginary part of the initial coefficient vector, and adds the squared value of the real part and the squared value of the imaginary part to obtain the first round of sparse hyperparameters; The edge IoT node is then multiplied by the initial coefficient vector by the sparse dictionary matrix to obtain the initial reconstruction vector. The initial residual vector is obtained by subtracting the initial reconstruction vector from the observation vector. The residual squares of each vector position in the initial residual vector are added together to obtain the residual sum of squares. The first round noise variance is obtained by dividing the residual sum of squares by the length of the observation vector. The first round of sparse hyperparameters and the first round of noise variance are written into the current round's computation cache, serving as the current round's sparse hyperparameters and noise variance when S52 is executed for the first time. At the same time, the previous round's spectral line index is generated as an empty index. If the observation vector length is zero, the initial coefficient vector calculation is not performed, and S4 is returned to regenerate the observation vector and sparse dictionary matrix. S52 is used to solve the posterior mean vector of the current round under the constraints of the current round's sparse hyperparameters and the current round's noise variance, so that the spectral contribution of the candidate beat frequency number can be quantified; Edge IoT nodes read the sparse hyperparameters of this round and write them into the diagonal hyperparameter matrix according to the candidate beat frequency index. The rows and columns of the diagonal hyperparameter matrix correspond to the candidate beat frequency index. When the sparse hyperparameters in this round are zero, the corresponding diagonal terms in the diagonal hyperparameter matrix are written with the reciprocal of the observation vector length, and then used in the inverse matrix calculation to avoid division by zero. The edge IoT node obtains the dictionary correlation matrix by multiplying the conjugate transpose of the sparse dictionary matrix by the sparse dictionary matrix, obtains the noise constraint matrix by multiplying the current round noise variance by the inverse of the diagonal hyperparameter matrix, and then obtains the posterior solution matrix by adding the dictionary correlation matrix and the noise constraint matrix. The edge IoT node inverts the posterior solution matrix to obtain the current round's posterior inverse matrix, and then multiplies the current round's posterior inverse matrix by the conjugate transpose of the sparse dictionary matrix and the observation vector to output the current round's posterior mean vector. If the posterior solution matrix is not invertible, then the posterior solution matrix is regenerated by adding the reciprocal of the observation vector length to each diagonal term in the diagonal hyperparameter matrix. S53 is used to update the sparse hyperparameters and noise variance of the next round in reverse based on the posterior mean vector of the current round, so that the recursive process is tightened to the candidate beat spectrum line consistent with the observation vector in each round. For the real and imaginary parts of the same candidate beat frequency index in the posterior mean vector of this round, the edge IoT node adds the squared real part, the squared imaginary part, and the diagonal value of the same candidate beat frequency index in the posterior inverse matrix of this round to obtain the sparse hyperparameters of the next round, and writes them into the calculation cache of the next round according to the candidate beat frequency index. The edge IoT node is multiplied by the sparse dictionary matrix to obtain the reconstruction vector of the current round. The observation vector is subtracted from the reconstruction vector of the current round to obtain the residual vector of the current round. The residual squares of each vector position in the residual vector of the current round are added together to obtain the residual sum of squares. The residual sum of squares is divided by the length of the observation vector to obtain the noise variance of the next round. Edge IoT nodes generate iteration rounds, and the number of candidate beat frequency numbers is used as the upper limit of the iteration rounds. After each generation of the current round spectral line index, the iteration round number is incremented by one, and the current round spectral line index, the current round posterior mean vector, and the current round residual sum of squares are saved. When the current round spectral line index is consistent with any non-adjacent historical round spectral line index, it is determined that the spectral line index has undergone a cyclic change, and the posterior mean vector of the round with the lowest residual sum of squares within the cyclic range is read. When the iteration round number reaches the upper limit of the iteration round number and the spectral line indices of two adjacent rounds are still inconsistent, the posterior mean vector of the round with the lowest residual sum of squares among the saved rounds is read, and its corresponding spectral line index is written into the current round spectral line index, and beat frequency phase words are generated again. The next round of sparse hyperparameters and the next round of noise variance are only rewritten as the sparse hyperparameters and noise variance used in the next S52 when S54 determines that the current round spectral index is inconsistent with the previous round spectral index. S54 is used to determine whether the candidate beat spectrum line has converged, and if it has not converged, the computation amount of the next round is written back to the current round's computation cache; The edge IoT node reads the posterior mean vector of the current round item by item, and quantizes the real part and imaginary part of the posterior mean vector of the current round according to the phase control segment width. The phase control segment width comes from the lamp driver end register definition or the current light source display control word format. Under the same candidate beat frequency number, when the real part and the imaginary part after quantization are not both zero at the same time, the edge IoT node will write the candidate beat frequency number into the current round of spectral line index. The edge IoT node compares the current round spectral line index with the previous round spectral line index in ascending order of candidate beat frequency number. If the number of indexes is different or any index value is different, the current round spectral line index replaces the previous round spectral line index, and the next round sparse hyperparameter and the next round noise variance are rewritten as the current round sparse hyperparameter and the current round noise variance before returning to S52 to continue the calculation. If the number of indices and the values of each index are the same as those of the previous spectral index, then the posterior mean vector corresponding to the current spectral index is read and written into the phase solving buffer for S55 to read; if the current spectral index is an empty index, then the beat frequency phase word is output and the current light source display control word remains unchanged. S55 is used to convert the converged current-round spectral line index into a beat frequency phase word that can be read by the lamp PWM count start point correction. The edge IoT node reads the current round posterior mean vector corresponding to the current round spectral line index in the phase solution cache, and performs a dual-input arctangent operation with the real part of the current round posterior mean vector as the horizontal axis value and the imaginary part as the vertical axis value. When the horizontal axis value is zero and the vertical axis value is positive, the beat frequency phase value is written as π / 2; when the horizontal axis value is zero and the vertical axis value is negative, the beat frequency phase value is written as π / 2; when both the horizontal axis value and the vertical axis value are zero, no beat frequency phase value is generated. In other cases, the edge IoT node corrects the arctangent result based on the quadrants where the horizontal and vertical axis values are located to obtain the beat frequency phase value; the beat frequency phase value is normalized to the range of zero to two π, and unsigned fixed-point encoding is performed according to the phase control segment bit width; let the phase control segment bit width be W, the beat frequency phase word is the integer quotient obtained by multiplying the beat frequency phase value by two to the power of W and then dividing by two π; the edge IoT node writes the beat frequency phase value according to the candidate beat frequency sequence number corresponding to the current spectral line index, and outputs the beat frequency phase word used for the correction of the light source PWM counting start point, for S6 to read; Through the above implementation process, the sparse dictionary matrix and observation vector are recursively converted into the current round spectral line index and beat frequency phase word. Spectral line convergence does not depend on the external threshold, but on the item-by-item consistency between the current round spectral line index and the previous round spectral line index in two adjacent rounds. The beat frequency phase word is calculated from the current round posterior mean vector corresponding to the converged spectral line and can directly enter the subsequent phase correction control word generation process. In practical applications: When the PWM drive beat of the wireless networked lights in the exhibition hall and the line-by-line exposure beat of the edge camera produce horizontal stripes, the edge IoT node reads the sparse dictionary matrix and observation vector generated by S4, first generates the first round of sparse hyperparameters and the first round of noise variance, and then solves the posterior mean vector of the current round and updates the spectral index of the current round. When the spectral index of the current round is consistent with the spectral index of the previous round, a dual-input arctangent operation is performed on the posterior mean vector of the current round corresponding to the spectral index of the current round to generate the beat frequency phase word for the next step of PWM counting start point correction of the light source.
[0022] S6. The edge IoT node writes the beat frequency phase word into the wireless networking order of the lighting fixture according to the correspondence between the position of the lighting fixture and the line interval of the screen. It generates a phase correction control word while keeping the brightness code and color code of the light source unchanged. The control word is then sent to the lighting fixture via wireless transmission, so that the lighting fixture updates the PWM count start point in the next cycle and outputs the lighting display control result. In this embodiment, after obtaining the beat frequency phase word, the edge IoT node needs to implement the beat frequency phase word into the light source control execution quantity of the specific wireless networked light fixture. The processing first determines the network entry order of the wireless networked light fixture corresponding to the beat frequency phase word based on the correspondence between the light fixture position and the screen row interval. Then, the beat frequency phase word is converted into the correction PWM count start point. Subsequently, while keeping the original values of the light source brightness code and color code unchanged, a phase correction control word is generated, and the verification and execution of the next light display cycle are completed through wireless transmission. This implementation process includes the following steps: S61 is used to assign the beat frequency phase word to the wireless networked light fixture that actually generates the corresponding image stripe, so that subsequent phase correction is only written to the light fixture driver end that matches the beat frequency phase word row interval. The edge IoT node reads the correspondence between the lamp position and the line interval of the screen. The correspondence between the lamp position and the line interval of the screen is provided by the lamp installation position calibration table. The lamp installation position calibration table is indexed by the network access order of the wireless network lamps and records the start and end line numbers of the line interval covered by the lamps. The edge IoT node then reads the range of row numbers involved in the generation of the beat frequency phase word in the target stripe mode, and uses the first row number of the range as the starting row number of the beat frequency phase word row interval, and the last row number of the range as the ending row number of the beat frequency phase word row interval. For each wireless networked light fixture's entry order, the edge IoT node calculates the number of overlapping rows between the light fixture's coverage row interval and the beat frequency phase word row interval. The number of non-overlapping rows is obtained by subtracting the number of overlapping rows from the length of the light fixture's coverage row interval. The corresponding score is then obtained by subtracting the number of non-overlapping rows from the number of overlapping rows. The entry order of the wireless networked light fixture corresponding to the beat frequency phase word is determined by sorting the corresponding score in descending order, the number of overlapping rows in descending order, and the wireless networked light fixture's entry order in ascending order. The entry phase correspondence table is then output. If the lamp installation location calibration table is missing a lamp coverage row interval for a certain wireless network lamp access order, then the lamp access order for that wireless network lamp will not participate in the corresponding score calculation. If all wireless network lamp access orders are missing lamp coverage row intervals, then the current light source display control word will be maintained and the lamp installation location calibration table will be read again. S62 is used to convert the beat frequency phase word into a correction PWM counting start point that can be directly written into the counter at the lamp driver end, so that beat frequency phase correction can be performed in digital form within the lighting display cycle; The edge IoT node reads the beat frequency phase word and PWM count start point of the same wireless network lamp based on the network access phase correspondence table. The PWM count start point is the initial count value written to the counter by the lamp driver at the beginning of a PWM counting cycle. The edge IoT node multiplies the beat frequency phase word by the light display cycle counter number corresponding to one PWM drive counting cycle in S11, and divides it by two π to obtain the phase count offset. The integer quotient of the division result is used as the write count offset. Then, the write count offset is added to the PWM count start point and the remainder is taken by the light display cycle counter number to obtain the correction PWM count start point. The correction PWM count start point is written into the phase correction cache according to the network access order of the wireless networked lights. If the network access order of the same wireless networked lamp corresponds to multiple beat frequency phase words, then read one beat frequency phase word in descending order of the corresponding score in S61, descending order of the number of overlapping rows, and ascending order of the beat frequency phase word generation order to participate in the calculation of the correction PWM count start point; If the PWM count start point or the light display cycle count digit is missing, the wireless networked light fixture will not generate a correction PWM count start point for its network entry order, and will maintain the current light source display control word. S63 is used to generate phase correction control words without changing the target brightness and target color, so that the light source control only adjusts the PWM phase position; The edge IoT node reads the starting point of the correction PWM count in the phase correction cache, and reads the original value of the light source brightness code and the original value of the color code from the current light source display control word. The original value of the light source brightness code is the light source brightness code that has been written into the current light source display control word before the phase correction control word is generated, and the original value of the color code is the color code that has been written into the current light source display control word before the phase correction control word is generated. According to the field bit width defined in the lamp driver register, the edge IoT node writes the original value of the light source brightness code into the brightness control segment, the original value of the color code into the color control segment, writes the starting point of the correction PWM count into the phase control segment, and outputs the phase correction control word. If the starting point of the PWM correction count exceeds the counting range that the phase control section can represent, then the value obtained by taking the remainder of the starting point of the PWM correction count with respect to the digital value of the light display cycle counter is written into the phase control section. If the original value of the light source brightness code or the original value of the color code are missing, the phase correction control word will not be generated, and the current light source display control word will continue to be maintained. S64 is used to write the phase correction control word into the corresponding lamp via wireless transmission and to verify the writing result using the phase control segment readback value. The edge IoT node sends the phase correction control word wirelessly according to the order of the wireless networking lamps joining the network. After receiving the phase correction control word, the lamp driver latches the brightness control segment, color control segment and phase control segment, and reads the phase control segment readback value from the latched phase control segment and sends it back to the edge IoT node. After the edge IoT node reads the phase control segment readback value, it compares the phase control segment readback value with the phase control segment in the phase correction control word bit by bit. When the phase control segment readback value is different from the phase control segment, the same phase correction control word is sent again in the next wireless transmission time slot, and the current light source display control word is maintained at the lamp driver end. When the phase control segment readback value equals the phase control segment value, the edge IoT node outputs an execution confirmation word; if the wireless transmission does not return the phase control segment readback value, the edge IoT node does not output an execution confirmation word and continues to read the online status and phase control segment readback value of the same wireless networked lighting fixture in the next lighting display cycle. S65 is used to enable the luminaire to perform light source control at the start of the correction PWM count in the next lighting display cycle after the confirmation phase correction control word has been written. The next lighting display cycle is a PWM drive counting cycle immediately following the generation of the execution confirmation word. The lamp driver reads the execution confirmation word at the beginning of the next lighting display cycle, latches the light source brightness code and color code according to the execution confirmation word, and updates the PWM counting start point according to the phase control segment. When the PWM counter reaches the updated PWM count start point, the lamp driver starts counting the current light source conduction pulses. The brightness control segment continues to determine the light source conduction duty cycle, and the color control segment continues to determine the driving ratio of each color channel, finally outputting the lighting display control result. If the execution confirmation word is not read at the start of the next lighting display cycle, the lighting driver will use the current light source display control word and will not rewrite the PWM count start point. Through the above implementation process, the beat frequency phase word is converted into a phase correction control word for the network access order of specific wireless networked lamps. The original values of the light source brightness code and color code remain unchanged in the phase correction control word. The lamp driver only adjusts the PWM counting start point according to the phase control segment, thereby correcting the stripe beat frequency phase in the camera image. In practical applications: When a group of wirelessly networked lights in an exhibition hall maintains the same target brightness and target color display, the edge IoT node determines the network entry order of the wirelessly networked lights that need to be corrected based on the overlap between the beat frequency phase word row interval and the light coverage row interval. Then, the beat frequency phase word is converted into the correction PWM count start point, and a phase correction control word is generated and sent to the corresponding light through wireless transmission. After the phase control segment readback value returned by the light is consistent with the phase control segment, the light keeps the light source brightness code and color code unchanged in the next lighting display cycle, only updates the PWM count start point according to the phase control segment, and outputs the lighting display control result after the camera stripe is corrected.
[0023] Furthermore, the present invention also includes a lighting display control system, the system comprising a data acquisition module, a decomposition module, a filtering module, a construction module, an estimation module, and a correction module: The acquisition module is used to acquire the image captured by the edge camera in the current light display cycle. It obtains the inter-row brightness difference by subtracting the average brightness of the previous row from the average brightness of the subsequent row along the line-by-line exposure direction, and outputs the stripe observation sequence in increments according to the row number. The decomposition module executes the empirical wavelet transform algorithm based on the fringe observation sequence, obtains the frequency domain amplitude sequence through discrete Fourier transform, uses the rising-to-falling index as the peak position, and the falling-to-rising index between adjacent peak positions as the frequency band boundary position, generates an empirical wavelet filter bank and outputs the fringe eigenmode sequence. The filtering module is used to sort the stripe eigenmode sequences in descending order of row number energy value, and select the first sorted stripe eigenmode as the target stripe mode. The construction module is used to form an observation vector by arranging the target stripe mode by row number, generate candidate beat frequency atoms according to the PWM reference frequency and the row-by-row exposure interval within the light display cycle, and construct a sparse dictionary matrix. The estimation module is used in the sparse Bayesian learning spectrum estimation algorithm to obtain the coefficient vector by multiplying the conjugate transpose of the sparse dictionary matrix by the observation vector, update the sparse hyperparameters by the square of the coefficients and update the noise variance by the sum of squared residuals, solve the posterior mean vector, and output the beat frequency phase word when the non-zero spectral line indices of two adjacent rounds are consistent. The correction module is used by the edge IoT node to write the beat frequency phase word into the network access order of the wireless networked lamp according to the correspondence between the lamp position and the screen row interval. It generates a phase correction control word while keeping the light source brightness code and color code unchanged, and sends it to the lamp wirelessly so that the lamp updates the PWM count start point in the next cycle and outputs the lighting display control result.
[0024] A universal dual-voltage COB LED strip includes: The dual-voltage COB LED strip includes a processor and a memory, the memory storing a computer program that the processor executes to perform the method.
[0025] Working principle: This scheme first acquires the image within the current lighting display cycle by the edge camera, and calculates the brightness difference between adjacent pixel rows along the line-by-line exposure direction to form a stripe observation sequence that reflects the changes in the camera stripes. Then, the stripe observation sequence is decomposed into multiple stripe eigenmodes by the empirical wavelet transform algorithm, and the target stripe mode with the highest correlation with the camera stripes is selected based on the row number energy value and the number of sign flips. The edge IoT node then constructs a sparse dictionary matrix based on the PWM reference frequency, the line-by-line exposure interval, and the lighting display cycle, and obtains the beat frequency phase word through the sparse Bayesian learning spectrum estimation algorithm. Finally, based on the correspondence between the lamp position and the line interval of the image, the beat frequency phase word is converted into the phase correction control word of the corresponding wireless network lamp. While keeping the light source brightness code and color code unchanged, the lamp updates the PWM count start point in the next lighting display cycle through wireless transmission. For example, in an exhibition hall, live broadcast room, or conference room, the on-site lighting may appear to have normal brightness and color, but horizontal dark bands or scrolling stripes appear in the camera image. The edge camera first captures the image and extracts the line-by-line brightness difference. The edge IoT node identifies the stripe mode generated by the interaction between the PWM beat of the lighting fixture and the line-by-line exposure beat of the camera from these brightness differences, and then calculates the beat frequency phase corresponding to the stripe. Subsequently, the system finds the corresponding lighting fixture based on the line interval where the stripe is located in the image, and wirelessly sends the phase correction control word to the lighting fixture, so that the lighting fixture only adjusts the PWM count start point without changing the original brightness and color, thereby correcting the stripes in the camera image.
[0026] The above description is merely a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the protection scope of the present invention.
Claims
1. A lighting display control method, characterized in that, include: S1. Acquire the image captured by the edge camera in the current light display cycle, obtain the inter-row brightness difference by subtracting the average brightness of the previous row from the average brightness of the subsequent row along the line-by-line exposure direction, and output the stripe observation sequence in ascending order of row number. S2. Based on the stripe observation sequence, the empirical wavelet transform algorithm is executed to obtain the frequency domain amplitude sequence through discrete Fourier transform. The rising-to-falling index is used as the peak position, and the falling-to-rising index between adjacent peak positions is used as the frequency band boundary position. The empirical wavelet filter bank is generated and the stripe intrinsic mode sequence is output. S3. For the stripe eigenmode sequence, arrange the stripe eigenmodes with non-zero sign flipping times in descending order of row number and energy value, and take the first one in the sort as the target stripe mode. S4. Arrange the target stripe modes by row number to form an observation vector. Generate candidate beat frequency atoms within the light display cycle according to the PWM reference frequency and the row-by-row exposure interval to construct a sparse dictionary matrix. S5. In the sparse Bayesian learning spectrum estimation algorithm, the coefficient vector is obtained by multiplying the conjugate transpose of the sparse dictionary matrix by the observation vector. The sparse hyperparameters are updated by the square of the coefficients and the noise variance is updated by the sum of squared residuals. Then, the posterior mean vector is solved until the non-zero spectral line indices of two adjacent rounds are consistent, and the beat frequency phase word is output. S6. The edge IoT node writes the beat frequency phase word into the wireless networking order of the lighting fixture according to the correspondence between the position of the lighting fixture and the line interval of the screen. It generates a phase correction control word while keeping the brightness code and color code of the light source unchanged. The control word is then transmitted wirelessly to the lighting fixture, so that the lighting fixture updates the PWM count start point in the next cycle and outputs the lighting display control result.
2. The lighting display control method according to claim 1, characterized in that: S1 includes: S11. Obtain the frame start counter number, progressive exposure counter number, and light display cycle counter number of the image frame. Multiply the current row number by the progressive exposure counter number and add the frame start counter number. Then take the remainder of the light display cycle counter number to obtain the current row exposure phase number. Write the current row exposure phase number into the row exposure phase sequence in ascending order of row number. S12. For the pixel row corresponding to the current row number, read the red channel value, green channel value and blue channel value of each pixel in the pixel row one by one. Multiply the red channel value by 299, the green channel value by 587, and the blue channel value by 114, then sum them up and divide by 1000 to get the current pixel brightness value. Then, sum the current pixel brightness values one by one and divide by the number of pixels in the pixel row to get the average brightness value of the current row. S13. Subtract the average brightness value of the previous row from the average brightness value of the current row to obtain the inter-row brightness difference, and write the inter-row brightness difference into the position corresponding to the exposure phase value of the current row, and output the stripe observation sequence.
3. The lighting display control method according to claim 2, characterized in that: S2 includes: S21. Read the inter-row brightness difference in the stripe observation sequence arranged in ascending order of row number. For each frequency index, calculate the cumulative sum of the inter-row brightness difference multiplied by the corresponding cosine basis value and the cumulative sum of the inter-row brightness difference multiplied by the corresponding sine basis value to obtain the real part value and the imaginary part value in the frequency domain. Then, take the square root of the square of the square of the real part value and the square of the imaginary part value in the frequency domain to obtain the frequency domain amplitude. Output the real part sequence, the imaginary part sequence, and the amplitude sequence in the frequency domain in ascending order of frequency index. S22. For the frequency domain amplitude sequence, calculate the forward amplitude difference by subtracting the previous frequency domain amplitude from the current frequency domain amplitude, and calculate the backward amplitude difference by subtracting the current frequency domain amplitude from the next frequency domain amplitude. When the forward amplitude difference of the current frequency index is positive and the backward amplitude difference of the current frequency index is negative, write it into the peak bit. Read the frequency indexes with negative forward amplitude difference and positive backward amplitude difference between two adjacent peak bits, and write the read frequency indexes into the frequency band boundary bit sequence. S23. Based on the frequency band boundary sequence, segmentally extract the real part sequence and the imaginary part sequence of the frequency domain. For the real part value and the imaginary part value of the frequency domain within each extracted frequency band, retain the original value. Write zero for the real part value and the imaginary part value of the frequency domain outside the extracted frequency band. Rewrite the frequency indexes at both ends of the extracted frequency band that are connected to the adjacent extracted frequency bands according to the cosine decreasing weight and the cosine increasing weight to form an empirical wavelet filter bank. Perform inverse discrete Fourier transform on the real part sequence and the imaginary part sequence of the frequency domain after processing by the empirical wavelet filter bank to output the fringe eigenmode sequence.
4. The lighting display control method according to claim 3, characterized in that: S3 includes: S31. Read the current fringe eigenmode and its mode generation order in the fringe eigenmode sequence. Read the mode value of the current fringe eigenmode at each row number in ascending order of row number. Square the mode values at each row number and add them one by one to obtain the row number energy value of the current fringe eigenmode. S32. For the current fringe intrinsic mode, read the mode value at the previous row number and the mode value at the current row number in ascending order of row number. When the modal value at the current row number multiplied by the modal value at the previous row number is less than zero, increment the sign flip count of the current fringe intrinsic mode by one. After traversing all the row numbers of the current fringe intrinsic mode, output the sign flip count of the current fringe intrinsic mode. S33. Write the current fringe eigenmode with a non-zero sign flip count into the candidate fringe eigenmodes. Arrange the candidate fringe eigenmodes in descending order of row number energy value. If the row number energy values are the same, arrange them in descending order of sign flip count. If both the row number energy value and the sign flip count are the same, arrange them in ascending order of mode generation order. Output the candidate fringe eigenmode that ranks first in the sorting as the target fringe mode.
5. The lighting display control method according to claim 4, characterized in that: S4 includes: S41. Read the modal values in the target fringe mode arranged in ascending order of row number, write the modal value at each row number into the vector position corresponding to the same row number, and use the direction of ascending row number as the vector arrangement direction to output the observation vector. S42. Divide the light display period by the line exposure interval to obtain the line period number. Read the candidate beat frequency number one by one from zero to the line period number minus one. Divide the candidate beat frequency number by the light display period to obtain the candidate scan frequency. Subtract the candidate scan frequency from the PWM reference frequency to obtain the candidate beat frequency value. Multiply the current line number by the line exposure interval to obtain the current line exposure time. Multiply the candidate beat frequency value, the current line exposure time and two π to obtain the candidate beat frequency phase value. Output the candidate beat frequency phase table. S43. For the candidate beat frequency phase table, read the candidate beat frequency phase value according to the candidate beat frequency sequence number and row number, calculate the cosine value corresponding to the candidate beat frequency phase value as the real part of the matrix, calculate the sine value corresponding to the candidate beat frequency phase value as the imaginary part of the matrix, and write the real part of the matrix and the imaginary part of the matrix into the matrix column corresponding to the same candidate beat frequency sequence number, and output the sparse dictionary matrix.
6. The lighting display control method according to claim 5, characterized in that: S5 includes: S51. Read the sparse dictionary matrix and observation vector. Multiply the observation vector by the conjugate transpose of the sparse dictionary matrix to obtain the initial coefficient vector. Add the square of the real part and the square of the imaginary part of the same candidate beat frequency index in the initial coefficient vector to obtain the first round of sparse hyperparameters. Divide the sum of squares of the residuals after subtracting the product of the sparse dictionary matrix and the initial coefficient vector from the observation vector by the length of the observation vector to obtain the first round of noise variance. At the same time, generate the previous round spectral line index as an empty index. S52. Generate a diagonal hyperparameter matrix based on the sparse hyperparameters of this round. Multiply the sparse dictionary matrix by the conjugate transpose of the sparse dictionary matrix and add the product of the noise variance of this round and the inverse of the diagonal hyperparameter matrix to obtain the posterior solution matrix. Invert the posterior solution matrix to obtain the posterior inverse matrix of this round. Multiply the posterior inverse matrix of this round by the conjugate transpose of the sparse dictionary matrix and the observation vector to output the posterior mean vector of this round. S53. For the real and imaginary parts of the same candidate beat frequency index in the posterior mean vector of this round, add the squared real part, the squared imaginary part, and the diagonal value of the same candidate beat frequency index in the posterior inverse matrix of this round to obtain the sparse hyperparameters of the next round. Then, divide the sum of squared residuals obtained by subtracting the product of the sparse dictionary matrix and the posterior mean vector of this round from the observation vector by the length of the observation vector to obtain the noise variance of the next round.
7. A lighting display control method according to claim 6, characterized in that: S5 also includes: S54. Read the posterior mean vector of this round item by item, and write the candidate beat frequency numbers whose real and imaginary parts are not simultaneously zero into the spectral line index of this round; if the spectral line index of this round is inconsistent with the spectral line index of the previous round, replace the spectral line index of the previous round with the spectral line index of this round, and return to S52 to continue the calculation with the sparse hyperparameter of the next round and the noise variance of the next round; if the spectral line index of this round is consistent with the spectral line index of the previous round, read the posterior mean vector of this round corresponding to the spectral line index of this round. S55. Perform arctangent operation with the real part of the posterior mean vector corresponding to the current spectral line index as the horizontal axis value and the imaginary part as the vertical axis value to obtain the beat frequency phase value. Write the beat frequency phase value according to the candidate beat frequency number corresponding to the current spectral line index and output the beat frequency phase word for the light source PWM counting start point correction.
8. The lighting display control method according to claim 7, characterized in that: S6 includes: S61. Read the correspondence between the lamp position and the screen row interval. Obtain the lamp coverage row interval according to the wireless networking lamp entry order. Use the row number range of the target stripe mode that participates in the generation of the beat frequency phase word as the beat frequency phase word row interval. Calculate the number of overlapping rows between the lamp coverage row interval and the beat frequency phase word row interval one by one. Subtract the number of overlapping rows from the length of the lamp coverage row interval to get the number of non-overlapping rows. Subtract the number of non-overlapping rows from the number of overlapping rows to get the corresponding score. Determine the wireless networking lamp entry order corresponding to the beat frequency phase word according to the descending order of the corresponding score, the descending order of the number of overlapping rows, and the ascending order of the wireless networking lamp entry order. Output the entry phase correspondence table. S62. Based on the network access phase correspondence table, read the beat frequency phase word and PWM count start point of the same wireless network lamp access sequence. Multiply the beat frequency phase word by the light display cycle count number and divide by two to the power of W to obtain the phase count offset. Add the phase count offset to the PWM count start point and take the remainder of the light display cycle count number to output the correction PWM count start point. S63. Read the starting point of the correction PWM count, the light source brightness code and the color code, write the original value of the light source brightness code into the brightness control segment, write the original value of the color code into the color control segment, write the starting point of the correction PWM count into the phase control segment, and output the phase correction control word. S64. The edge IoT node sends the phase correction control word wirelessly according to the network access order of the wireless networked lights, and reads the phase control segment readback value returned by the lights; if the phase control segment readback value is different from the phase control segment, the same phase correction control word is sent again; if the phase control segment readback value is equal to the phase control segment, the execution confirmation word is output. S65. In the next lighting display cycle, the luminaire latches the light source brightness code and color code according to the execution confirmation word, updates the PWM count start point according to the phase control segment, and outputs the lighting display control result.
9. A lighting display control system for implementing the lighting display control method according to any one of claims 1-8, the system comprising a data acquisition module, a decomposition module, a filtering module, a construction module, an estimation module, and a correction module, characterized in that: The acquisition module is used to acquire the image captured by the edge camera in the current light display cycle. It obtains the inter-row brightness difference by subtracting the average brightness of the previous row from the average brightness of the subsequent row along the line-by-line exposure direction, and outputs the stripe observation sequence in increments according to the row number. The decomposition module executes the empirical wavelet transform algorithm based on the fringe observation sequence, obtains the frequency domain amplitude sequence through discrete Fourier transform, uses the rising-to-falling index as the peak position, and the falling-to-rising index between adjacent peak positions as the frequency band boundary position, generates an empirical wavelet filter bank and outputs the fringe eigenmode sequence. The filtering module is used to sort the stripe eigenmode sequences in descending order of row number energy value, and select the first sorted stripe eigenmode as the target stripe mode. The construction module is used to form an observation vector by arranging the target stripe mode by row number, generate candidate beat frequency atoms according to the PWM reference frequency and the row-by-row exposure interval within the light display cycle, and construct a sparse dictionary matrix. The estimation module is used in the sparse Bayesian learning spectrum estimation algorithm to obtain the coefficient vector by multiplying the conjugate transpose of the sparse dictionary matrix by the observation vector, update the sparse hyperparameters by the square of the coefficients and update the noise variance by the sum of squared residuals, solve the posterior mean vector, and output the beat frequency phase word when the non-zero spectral line indices of two adjacent rounds are consistent. The correction module is used by the edge IoT node to write the beat frequency phase word into the network access order of the wireless networked lamp according to the correspondence between the lamp position and the screen row interval. It generates a phase correction control word while keeping the light source brightness code and color code unchanged, and sends it to the lamp wirelessly so that the lamp updates the PWM count start point in the next cycle and outputs the lighting display control result.
10. A universal dual-voltage COB LED strip, comprising a lighting display control system as described in claim 9, characterized in that: The dual-voltage COB LED strip includes a processor and a memory, the memory storing a computer program that, when executed by the processor, implements the method as described in any one of claims 1-8.