A method and system for enhancing the image quality of LED displays
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-06-23
- Publication Date
- 2026-08-14
AI Technical Summary
这是由于LED显示屏采用逐行扫描的驱动方式,且每一行的点亮时间(即扫描级数)固定不变,导致在显示高速运动物体时,人眼追踪运动目标的过程中会感受到画面失真
[0048]根据本公开实施例提供的LED显示画质增强方法,包括以下步骤:获取连续的多帧原始图像并缓存;根据缓存的多帧原始图像计算运动矢量场,并基于所述运动矢量场生成至少一帧中间过渡帧;根据所述运动矢量场确定图像中的动态区域;根据所述动态区域内的运动速度信息,将所述动态区域划分为至少两个速度等级,并为不同速度等级的区域分别配置不同的扫描参数,其中,所述扫描参数至少包括扫描级数;至少根据所述原始图像、所述中间过渡帧以及所述扫描参数驱动LED显示屏进行显示。上述技术方案通过获取连续多帧原始图像并计算运动矢量场,能够准确感知画面中的运动信息;基于运动矢量场生成中间过渡帧,有效提升了帧率,减少了动态模糊;同时,通过识别动态区域并根据运动速度划分速度等级,为不同等级区域自适应配置不同的扫描级数,使得高速运动区域获得更短的行点亮时间,从而有效抑制拖尾现象,显著提升LED显示屏的动态画质。此外,PWM占空比补偿进一步保证了亮度一致性,FPGA状态机和I2C通信方案确保了扫描参数配置的实时性和可靠性。
Smart Images

Figure CN122575274A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of LED display technology, specifically to a method and system for enhancing the image quality of LED displays. Background Technology
[0002] LED displays, with their advantages of high brightness, long lifespan, and low power consumption, have been widely used in many fields such as outdoor advertising, stage performances, sporting events, and traffic guidance. As viewers' demands for display quality continue to increase, LED displays not only need to present vibrant colors and high contrast, but also need to provide a clear and smooth visual experience when displaying dynamic images.
[0003] In the process of making this disclosure, the inventors discovered that traditional LED displays exhibit significant trailing, blurring, and false outline phenomena when displaying moving images. This is because LED displays use a progressive scan driving method, and the illumination time of each line (i.e., the number of scan levels) remains constant. As a result, when displaying fast-moving objects, the human eye perceives image distortion as it tracks the moving target. Furthermore, existing LED display systems typically lack intelligent perception capabilities for image content and cannot differentiate processing based on moving areas in the image, thus reducing dynamic image quality.
[0004] On the other hand, although some high-end display devices have introduced motion estimation and motion compensation (MEMC) technology to improve the frame rate through frame interpolation, most of these technologies are designed for liquid crystal displays (LCDs) and do not fully consider the scanning driving characteristics of LED displays. Directly transplanting MEMC technology to LED display systems not only fails to effectively suppress dynamic trailing, but may also introduce new flickering or uneven brightness problems due to mismatched scanning parameters. Summary of the Invention
[0005] To address the problems in the related technologies, this disclosure provides a method and system for enhancing the image quality of LED displays.
[0006] In a first aspect, this disclosure provides a method for enhancing the image quality of an LED display, comprising the following steps:
[0007] Acquire and cache multiple consecutive frames of raw images;
[0008] The motion vector field is calculated based on the cached multiple frames of original images, and at least one intermediate transition frame is generated based on the motion vector field.
[0009] The dynamic regions in the image are determined based on the motion vector field;
[0010] Based on the motion speed information within the dynamic region, the dynamic region is divided into at least two speed levels, and different scanning parameters are configured for regions of different speed levels, wherein the scanning parameters include at least the number of scanning levels;
[0011] The LED display screen is driven to display based at least on the original image, the intermediate transition frame, and the scanning parameters.
[0012] According to embodiments of this disclosure, determining the dynamic region in the image based on the motion vector field specifically includes:
[0013] After downsampling the image, edge detection is performed to obtain a low-resolution region of interest mask;
[0014] The low-resolution region of interest mask is upsampled to the original resolution, and texture analysis is performed within the upsampled region of interest. The final dynamic region is then segmented from the region of interest based on the texture features.
[0015] According to embodiments of this disclosure, the calculation of the motion vector field based on multiple cached original images specifically includes:
[0016] The initial motion vector field is calculated using the optical flow method;
[0017] The initial motion vector field is input into a neural network for fine-tuning to obtain a refined motion vector field;
[0018] Spatial and temporal continuity constraints are applied to the refined motion vector field to output the final motion vector field.
[0019] According to embodiments of this disclosure, dividing the dynamic region into at least two speed levels based on the motion speed information within the dynamic region specifically includes:
[0020] Calculate the average value μv and standard deviation σv of the motion velocity in the corresponding region of multiple frames in the current scene, and set the velocity threshold vthreshold = μv + k·σv, where k is a preset coefficient;
[0021] The dynamic region is divided into different speed levels, including at least a high-speed motion region and a low-speed or stationary region, based on the speed threshold.
[0022] According to embodiments of this disclosure, configuring different scanning parameters for regions of different speed levels specifically includes:
[0023] A first scanning level is configured for high-speed moving areas, and a second scanning level is configured for low-speed or stationary areas. The first scanning level is greater than the second scanning level, and the larger the scanning level, the shorter the illumination time of each line in the corresponding scanning cycle.
[0024] According to embodiments of this disclosure, a PWM duty cycle compensation step is also included:
[0025] The PWM duty cycle compensation coefficient is calculated based on the configured scan level and the current region's motion speed, and the PWM duty cycle of the corresponding region is adjusted according to the compensation coefficient; wherein, the compensation coefficient increases accordingly when the motion speed is higher and / or the scan level is larger.
[0026] According to embodiments of this disclosure, the step of acquiring and caching multiple consecutive frames of original images specifically includes:
[0027] A hardware FIFO circular buffer is used to store N frames of original images, where the value of N ranges from 4 to 16;
[0028] The circular buffer is managed using write pointers and read pointers. When the interval between the write pointer and the read pointer reaches a preset upper limit threshold, overflow processing is triggered to discard old frames. When the write pointer and the read pointer are equal, underflow processing is triggered to pause the read operation.
[0029] According to embodiments of this disclosure, the method further includes using a state machine within the FPGA to perform the configuration and switching steps of the scan parameters:
[0030] Waiting for frame synchronization signal in idle state;
[0031] The motion speed information of the dynamic region is obtained during the calculation process;
[0032] In the configuration state, the scanning level and PWM parameters corresponding to the current region are calculated and determined based on the motion speed information.
[0033] In high-speed scanning mode or normal scanning mode, control commands corresponding to the first scanning level or the second scanning level are output respectively.
[0034] According to embodiments of this disclosure, the FPGA communicates via I 2 The C-bus communicates with the LED driver IC to configure scanning parameters, specifically including:
[0035] Send the device address after sending the start signal;
[0036] After receiving the acknowledgment signal from the device, send the register address;
[0037] After receiving the response signal again, scan configuration data is sent, which is calculated based on the frame period and the current scan level.
[0038] Send a stop signal to end communication.
[0039] Secondly, this disclosure also provides an LED display image quality enhancement system, including:
[0040] The image acquisition module is used to acquire multiple consecutive frames of raw images;
[0041] A circular buffer storage module is used to cache the multiple frames of original images;
[0042] The motion estimation and compensation module is used to calculate the motion vector field based on the cached multiple frames of original images and generate at least one intermediate transition frame based on the motion vector field.
[0043] The dynamic region detection module is used to determine dynamic regions in the image based on the motion vector field;
[0044] The scanning parameter adaptive configuration module is used to divide the dynamic region into at least two speed levels based on the motion speed information within the dynamic region, and to configure different scanning parameters for regions of different speed levels, wherein the scanning parameters include at least the number of scanning levels.
[0045] The drive output module is used to drive the LED display screen to display based at least on the original image, the intermediate transition frame, and the scanning parameters.
[0046] Thirdly, embodiments of this disclosure provide an electronic device including a memory and a processor, wherein the memory is used to store one or more computer instructions, wherein the one or more computer instructions are executed by the processor to implement the method as described in any of the first aspects.
[0047] Fourthly, this disclosure provides a computer-readable storage medium having computer instructions stored thereon, which, when executed by a processor, implement the method as described in any of the first aspects.
[0048] The LED display image quality enhancement method provided in this disclosure includes the following steps: acquiring and caching multiple consecutive frames of original images; calculating a motion vector field based on the cached multiple frames of original images, and generating at least one intermediate transition frame based on the motion vector field; determining dynamic regions in the image based on the motion vector field; dividing the dynamic regions into at least two speed levels based on the motion speed information within the dynamic regions, and configuring different scanning parameters for regions of different speed levels, wherein the scanning parameters include at least a number of scanning levels; and driving the LED display screen to display based at least on the original images, the intermediate transition frame, and the scanning parameters. The above technical solution, by acquiring multiple consecutive frames of original images and calculating the motion vector field, can accurately perceive motion information in the image; generating intermediate transition frames based on the motion vector field effectively improves the frame rate and reduces dynamic blur; simultaneously, by identifying dynamic regions and dividing speed levels according to motion speed, different scanning levels are adaptively configured for different level regions, enabling high-speed motion regions to obtain shorter line illumination times, thereby effectively suppressing trailing phenomena and significantly improving the dynamic image quality of the LED display screen. Furthermore, PWM duty cycle compensation further ensures brightness consistency, and the FPGA state machine and I... 2 The C communication scheme ensures the real-time performance and reliability of scan parameter configuration.
[0049] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure. Attached Figure Description
[0050] Other features, objects, and advantages of this disclosure will become more apparent from the following detailed description of non-limiting embodiments, taken in conjunction with the accompanying drawings.
[0051] Figure 1 A schematic diagram of the overall architecture of an LED display image enhancement system according to an embodiment of the present disclosure is shown.
[0052] Figure 2 A flowchart illustrating an LED display image quality enhancement method according to an embodiment of the present disclosure is shown.
[0053] Figure 3 A flowchart of a dynamic region detection method according to an embodiment of the present disclosure is shown.
[0054] Figure 4 A flowchart illustrating a method for calculating a motion vector field according to an embodiment of the present disclosure is shown.
[0055] Figure 5 A flowchart illustrating a speed level classification and scanning parameter configuration method according to an embodiment of the present disclosure is shown.
[0056] Figure 6A state transition diagram of an in-FPGA state machine according to an embodiment of the present disclosure is shown.
[0057] Figure 7 A structural block diagram of an electronic device according to an embodiment of the present disclosure is shown.
[0058] Figure 8 A schematic diagram of the structure of a computer system suitable for implementing the method according to embodiments of the present disclosure is shown. Detailed Implementation
[0059] In the following, exemplary embodiments of the present disclosure will be described in detail with reference to the accompanying drawings to enable those skilled in the art to readily implement them. Furthermore, for clarity, portions unrelated to the description of exemplary embodiments have been omitted from the drawings.
[0060] In this disclosure, it should be understood that terms such as “comprising” or “having” are intended to indicate the presence of features, figures, steps, behaviors, components, parts or combinations thereof disclosed in this specification, and are not intended to exclude the possibility of the presence or addition of one or more other features, figures, steps, behaviors, components, parts or combinations thereof.
[0061] It should also be noted that, unless otherwise specified, the embodiments and features described in this disclosure can be combined with each other. This disclosure will now be described in detail with reference to the accompanying drawings and embodiments.
[0062] To facilitate understanding of the technical solutions disclosed herein, some technical terms involved in this disclosure are defined and explained below:
[0063] Scan number: This refers to the number of equal divisions required for an LED display screen to scan all rows within one display frame cycle. Its value is equal to the reciprocal of the proportion of simultaneously lit rows to the total number of rows. A higher scan number results in a shorter effective lighting time for each row within one frame cycle and stronger motion tailing suppression.
[0064] PWM duty cycle: refers to the ratio of the time that the LED driver IC outputs a high level for effective driving within one line scan cycle to the entire line scan cycle. This ratio determines the brightness of the LED.
[0065] Motion vector field: refers to the set of vectors that describe the displacement direction and magnitude of each pixel or sub-block in an image from the previous frame to the current frame. It is the basic data that characterizes the motion state of the image.
[0066] Optical flow: a technique for estimating the velocity and direction of an object's motion by calculating the temporal changes and spatial gradients of pixel intensity in an image sequence.
[0067] Region of Interest (ROI): refers to a specific area in an image that needs to be processed and analyzed in detail. In this disclosure, it specifically refers to an image region where moving objects may exist.
[0068] Texture analysis refers to the statistical analysis and description of features such as gray-level distribution, spatial frequency, and directionality in local areas of an image, used to distinguish moving objects from flat backgrounds.
[0069] Frame synchronization signal (VSYNC): A pulse signal used to identify the start and end of each frame of image data. It is the time reference for frame switching and timing control in the display system.
[0070] Blanking period: refers to the idle time interval between the valid display line and the valid display frame during video signal transmission. During this period, no image data is written, which is suitable for auxiliary operations such as parameter configuration.
[0071] Figure 1 A schematic diagram of the overall architecture of an LED display image enhancement system according to an embodiment of the present disclosure is shown.
[0072] like Figure 1 As shown, the system includes an image acquisition module, a ring buffer storage module, a motion estimation and compensation module, a dynamic region detection module, a scanning parameter adaptive configuration module, and a drive output module.
[0073] The image acquisition module acquires multiple consecutive frames of raw images. It can be a receiving unit connected to a video source (such as an HDMI, DP interface, or network stream) and outputs raw image data frame by frame. The circular buffer storage module uses a hardware FIFO circular buffer to cache multiple frames of raw images for subsequent motion estimation. The motion estimation and compensation module calculates a motion vector field based on the cached multiple frames of raw images and generates at least one intermediate transition frame based on this motion vector field to improve the frame rate. The dynamic region detection module determines dynamic regions in the image based on the motion vector field, identifying moving objects or regions in the image. The adaptive scanning parameter configuration module divides the dynamic region into at least two speed levels based on the motion speed information within the region and configures different scanning parameters for regions of different speed levels. The scanning parameters include at least the number of scanning levels. The drive output module generates the control signals required to drive the LED display screen based on at least the raw images, the intermediate transition frames, and the scanning parameters, driving the LED panel to display the final image.
[0074] The above technical solution decouples image acquisition, caching, motion estimation, region detection, parameter configuration, and drive output functions through modular partitioning, realizing efficient parallel operation of the data processing pipeline. Each module can be optimized independently, the system as a whole has strong scalability, and it is easy to deploy hardware acceleration on FPGA or ASIC platforms.
[0075] Figure 2 A flowchart illustrating an LED display image quality enhancement method according to an embodiment of the present disclosure is shown.
[0076] like Figure 2 As shown, the LED display image quality enhancement method includes the following steps S201~S205.
[0077] In step S201, multiple consecutive frames of raw images are acquired and buffered. Specifically, the image acquisition module receives the raw images output from the video source at a fixed frame rate (e.g., 60Hz) and sends the image data to the circular buffer storage module. The circular buffer storage module adopts a hardware FIFO structure and can store N frames of raw images, where N ranges from 4 to 16, preferably 8 frames. The circular buffer is managed using write pointers and read pointers: when the interval between the write pointer and the read pointer reaches a preset upper limit threshold (e.g., the buffer is full or nearly full), overflow processing is triggered, discarding the oldest frame data to prevent data overwriting conflicts; when the write pointer and the read pointer are equal, it indicates that the buffer is empty, triggering underflow processing, pausing the read operation, and waiting for new frames to be written. Through the above management mechanism, it is ensured that the motion estimation module can stably acquire continuous frame sequences. It should be noted that when an overflow occurs and old frames are discarded, the motion estimation module automatically switches to a dynamic adjustment strategy: if the number of consecutive frames remaining in the current buffer is ≥3, calculation continues based on the existing consecutive frames; if the number of consecutive frames remaining is <3, the calculation task for the current frame is skipped, and full-function motion estimation is resumed after the buffer accumulates at least 4 frames. This strategy ensures that motion vector field calculations are always based on a temporally continuous frame sequence, avoiding motion vector deviations caused by unequal time intervals between frames. When the motion vector calculation for the current frame is skipped due to insufficient remaining consecutive frames, the system adopts a fallback strategy: directly reusing the intermediate transition frame generated in the previous moment as the output display content for the current frame. This avoids black screens or screen tearing during calculation interruptions, ensuring the visual continuity of the LED display output.
[0078] In step S202, a motion vector field is calculated based on the cached multiple frames of original images, and at least one intermediate transition frame is generated based on the motion vector field. The motion estimation and compensation module uses two or more consecutive frames of images in the cache to calculate pixel-level or sub-block-level motion vector fields using optical flow or block matching methods. Then, based on the motion vector field, a motion compensation interpolation algorithm is used to generate one or more intermediate transition frames between adjacent frames, thereby improving the display frame rate. For example, if the original frame rate is 60Hz, an image sequence with a frame rate of 120Hz or even higher can be interpolated to reduce motion blur caused by visual persistence.
[0079] In step S203, dynamic regions in the image are determined based on the motion vector field. The dynamic region detection module analyzes the motion vector field and identifies regions with significant motion vector amplitudes as dynamic regions. Specific implementation details will be discussed later. Figure 3 Detailed description is provided.
[0080] In step S204, based on the motion speed information within the dynamic region, the dynamic region is divided into at least two speed levels, and different scanning parameters are configured for regions of different speed levels. The scanning parameter adaptive configuration module calculates the motion speed magnitude (i.e., the magnitude of the motion vector) of each pixel or sub-block within the dynamic region, and divides the region into high-speed motion regions and low-speed or stationary regions based on statistical characteristics. Then, different scanning levels are configured for them: a larger scanning level (e.g., 16 scans or 32 scans) is configured for high-speed regions, which shortens the illumination time of each line, thereby reducing visual trailing when the human eye tracks high-speed objects; a smaller scanning level (e.g., 8 scans) is configured for low-speed or stationary regions, which reduces driving power consumption while ensuring image quality.
[0081] In step S205, the LED display screen is driven to display the image based at least on the original image, the intermediate transition frame, and the scanning parameters. The drive output module arranges the original image and the generated intermediate transition frame in display sequence, and generates corresponding row strobe signals and column data signals according to the scan level configured for each region, thereby driving the LED display screen to display the final image through the LED driver IC.
[0082] The above technical solution realizes a closed-loop control process from image perception and motion analysis to drive parameter adjustment. By improving temporal resolution through motion compensation frame interpolation and combining it with adaptive scanning parameter configuration based on motion speed, it can effectively suppress motion trailing while ensuring a dynamic balance between display brightness and power consumption, significantly improving the dynamic image quality performance of LED displays.
[0083] Figure 3 A flowchart of a dynamic region detection method according to an embodiment of the present disclosure is shown.
[0084] like Figure 3 As shown, step S203, which involves determining the dynamic region in the image based on the motion vector field, includes the following sub-steps.
[0085] In step S301, edge detection is performed after downsampling the image to obtain a low-resolution region of interest (ROI) mask. Since the original image has a high resolution (e.g., 4K), direct edge detection would be computationally too computationally intensive. Therefore, the dynamic region detection module first downsamples the current frame image, reducing the resolution to 1 / 4 or 1 / 8 of the original resolution. Then, Canny edge detection or the Sobel operator is performed on the downsampled image to extract edge information. Based on the edge information, connected component analysis or morphological operations are used to form a preliminary ROI mask, which identifies regions where moving objects may exist. Downsampling significantly reduces the computational load and improves processing speed.
[0086] In step S302, the low-resolution region of interest (ROI) mask is upsampled to the original resolution, and texture analysis is performed within the upsampled ROI. Based on texture features, the final dynamic region is segmented from the ROI. The low-resolution mask is then restored to the original image size using bilinear interpolation or nearest-neighbor interpolation to obtain the ROI at the original resolution. Within this ROI, local texture complexity (e.g., contrast, energy, etc. of the gray-level co-occurrence matrix) is calculated. Since moving objects typically have rich textures, while flat areas (such as the sky or walls) are not easily perceived even when moving, sparse textured false positive regions are eliminated through texture analysis, ultimately segmenting the true dynamic region. This dynamic region will be used for subsequent velocity level classification and scanning parameter configuration.
[0087] The above technical solution, through a coarse-to-fine detection strategy of downsampling followed by upsampling, significantly reduces computational resource consumption and hardware costs. At the same time, it effectively eliminates static or flat area interference from motion vector fields through texture analysis, significantly improving the accuracy and robustness of dynamic region recognition and providing a reliable basis for subsequent precise scanning parameter partitioning configuration.
[0088] Figure 4 A flowchart illustrating a method for calculating a motion vector field according to an embodiment of the present disclosure is shown.
[0089] like Figure 4 As shown, the step S202, which involves calculating the motion vector field based on the cached multiple frames of original images, includes the following sub-steps.
[0090] In step S401, the initial motion vector field is calculated using optical flow. The motion estimation and compensation module uses a traditional optical flow algorithm (such as Lucas-Kanade or Horn-Schunck) or a fast algorithm based on dense optical flow to calculate the initial motion vector field between two adjacent frames. This initial vector field may contain noise and local discontinuities.
[0091] In step S402, the initial motion vector field is input into a neural network for refinement, resulting in a refined motion vector field. A pre-trained lightweight convolutional neural network (CNN) or recurrent neural network (RNN) is used, with the initial motion vector field and the original image pair as input, and the network outputs the refined motion vector. This network can learn complex mappings such as motion edge preservation and occlusion handling, thereby effectively improving the accuracy of the motion vector.
[0092] In one optional implementation, the neural network employs a lightweight convolutional neural network structure, specifically including:
[0093] Network Structure: The neural network employs an encoder-decoder architecture. The encoder consists of four convolutional layers, each followed by a batch normalization layer and a ReLU activation function. The convolutional kernel size is 3×3, with 32, 64, 128, and 256 channels respectively. The decoder consists of four deconvolutional layers with 128, 64, 32, and 2 channels respectively. The last layer outputs the correction values (Δu, Δv) for the motion vector field. Here, Δu and Δv represent the sub-pixel displacement compensation values (unit: pixels) in the horizontal and vertical directions of the image, respectively. The total number of network parameters is approximately 1.2 million, making it suitable for real-time deployment on FPGA or embedded platforms.
[0094] Input and output: The network input is a 5-channel tensor formed by concatenating the initial motion vector field (2 channels) and the current frame image (3 channels RGB) along the channel dimension; the network output is a refined motion vector field (2 channels).
[0095] Training method: Supervised learning is used for training. The training dataset consists of synthetic moving image pairs (such as the MPI-Sintel dataset or the FlyingChairs dataset) and real video sequences. The loss function is the endpoint error. EndpointError (EPE) and Smoothness Loss Weighted sum of (Smoothness Loss):
[0096]
[0097] in, ,
[0098] λ is the smoothing weight coefficient (with a value of 0.01 to 0.1). These are the correction values for the neural network outputs of the motion vector field in the horizontal and vertical directions. These are the actual motion vectors provided by the dataset. Total number of pixels in the current frame.
[0099] The Adam optimizer was used during training, with an initial learning rate of 1×10⁻⁶. -4 The batch size is 8, and the training cycle is 200 rounds.
[0100] The trained network weights are quantized to 8-bit integers (INT8) and then deployed to the DSP unit of the FPGA, with inference latency controlled within 2ms to meet real-time processing requirements. In one specific embodiment, the training platform is a server configured with an NVIDIA RTX 3080 GPU, using the PyTorch 1.12 framework. After training, the network weights are exported in ONNX format, quantized to INT8, and deployed to a Xilinx Zynq UltraScale+ MPSoC series FPGA using the Xilinx Vitis AI 3.0 toolchain. A deep pipeline architecture is used during deployment, with convolutional layers, batch normalization layers, and ReLU activation layers fused into a single DSP computation, achieving a measured inference latency of 1.8ms (@200MHz clock speed).
[0101] In step S403, spatial continuity constraints and temporal continuity constraints are applied to the refined motion vector field to output the final motion vector field. Spatial continuity constraints are applied to the motion vector field through median filtering or anisotropic diffusion to ensure a smooth transition between motion vectors of adjacent pixels; temporal continuity constraints utilize the motion vector field of the previous frame to perform consistency checks on the current frame, suppressing abrupt abnormal vectors. The final output motion vector field is both accurate and smooth, providing a reliable basis for subsequent frame interpolation and dynamic region detection.
[0102] The above technical solution combines the physical prior of traditional optical flow algorithms with the powerful nonlinear fitting capability of neural networks, and is supplemented by spatiotemporal continuity constraints, so that the final output motion vector field has both high precision and high robustness. It can effectively cope with occlusion, lighting changes and noise interference in complex motion scenes, fundamentally guarantee the interpolation quality of intermediate transition frames and avoid image distortion.
[0103] Figure 5 A flowchart illustrating a speed level classification and scanning parameter configuration method according to an embodiment of the present disclosure is shown.
[0104] like Figure 5 As shown, step S204, which involves dividing the dynamic region into at least two speed levels based on the motion speed information within the dynamic region and configuring different scanning parameters for regions of different speed levels, includes the following sub-steps.
[0105] In step S501, the average value and standard deviation of motion velocity within the corresponding region of multiple frames in the current scene are calculated, and a velocity threshold is set. The velocity threshold formula is vthreshold = μv + k·σv, where k is a preset coefficient. The scanning parameter adaptive configuration module statistically analyzes the motion velocity (i.e., the magnitude of the motion vector) of all pixels within the dynamic region and calculates the average value μv and standard deviation σv. The preset coefficient k can be adjusted according to the actual application scenario, typically ranging from 1.0 to 2.0, to balance detection sensitivity and robustness.
[0106] In step S502, the dynamic region is divided into different speed levels, including at least a high-speed motion region and a low-speed or stationary region, based on the speed threshold. Pixels within the dynamic region with a speed greater than or equal to vthreshold are classified as high-speed motion regions, while the rest (less than vthreshold) are classified as low-speed or stationary regions. In implementation, it can also be further divided into multiple levels (e.g., medium-speed regions) for more fine-tuned parameter configuration.
[0107] In step S503, a first scanning level is configured for high-speed motion areas, and a second scanning level is configured for low-speed or stationary areas. The first scanning level is greater than the second scanning level, and the higher the scanning level, the shorter the illumination time for each line within the corresponding scanning cycle. For example, for high-speed areas, a scanning level of 32 scans is configured, meaning the effective illumination time for each line is 1 / 32 of the frame cycle; for low-speed areas, an 8-scan configuration is used, with an illumination time of 1 / 8 of the frame cycle. Shortening the illumination time reduces the blurring sensation caused by the integral effect when the human eye tracks high-speed motion, thereby effectively suppressing motion blur.
[0108] In addition, step S504 may also be included.
[0109] In step S504, a PWM duty cycle compensation coefficient is calculated based on the configured scan level and the movement speed of the current area, and the PWM duty cycle of the corresponding area is adjusted according to the compensation coefficient. The compensation coefficient increases accordingly when the movement speed is higher and / or the scan level is larger. Since the illumination time of each line is shortened after the scan level increases, the brightness will decrease if the original PWM duty cycle is maintained. Therefore, it is necessary to adjust the PWM duty cycle according to the compensation coefficient to ensure brightness consistency.
[0110] Specifically, the PWM duty cycle compensation coefficient is calculated based on the configured scan level and the movement speed of the current region. In one optional implementation, the PWM duty cycle compensation coefficient Ccomp is calculated using the following formula:
[0111] Ccomp = (Sbase / Scurr) × (1 + α*vnorm)
[0112] Where Sbase is the preset baseline scan level (e.g., 8 scans), Scurr is the actual scan level configured for the current area (e.g., 16 or 32 scans), and (Sbase / Scurr) is used to compensate for the shortened line illumination time caused by changes in scan level; vnorm is the normalized motion speed of the current area (range 0~1), and α is the speed compensation weight coefficient (range 0.1~0.5). The final output actual PWM duty cycle Dout = Dbase × Ccomp, where Dbase is the baseline PWM duty cycle. Through the above formula, the overall brightness of the screen can be dynamically maintained uniformly when switching between different scan levels.
[0113] The normalization method for vnorm is: vnorm = v / vmax, where v is the motion velocity of the pixels in the current region (i.e., the magnitude of the motion vector), and vmax is the maximum value of the motion velocity in all dynamic regions within the current frame. The normalized vnorm value ranges from [0, 1].
[0114] The value of α is determined by the following experimental method: Under standard test conditions (ambient illuminance 500 lux, color temperature 6500K), LED displays are driven with standard test patterns (such as uniformly moving grid stripes) at different speeds, and the brightness consistency and trailing suppression effect under different α values are subjectively evaluated.
[0115] The results show that:
[0116] When α < 0.1, the brightness compensation in the high-speed region is insufficient, and the human eye can perceive a decrease in brightness.
[0117] When α ∈ [0.1, 0.5], the brightness consistency is good (ΔL < 3%), and the tailing suppression effect is significant;
[0118] When α > 0.5, overcompensation occurs in the high-speed region, resulting in higher brightness than the surrounding region and producing a "bright spot" effect.
[0119] Based on the above experiments, the optimal value for α is 0.3, which achieves the best balance between brightness compensation accuracy and trailing suppression effect. For different application scenarios (such as outdoor high-brightness environments or indoor low-brightness environments), α can be dynamically adjusted according to the ambient illuminance within the range of 0.1 to 0.5.
[0120] The aforementioned technical solution, through statistically based adaptive threshold segmentation, can objectively and dynamically reflect the intensity of motion in the current scene, avoiding misjudgments caused by fixed thresholds. Simultaneously, it precisely configures differentiated scanning levels for different speed grades and uses explicit mathematical formulas for PWM duty cycle compensation, maximizing trailing suppression while ensuring consistent brightness across the entire screen and low-power operation.
[0121] Figure 6 A state transition diagram of an in-FPGA state machine according to an embodiment of the present disclosure is shown.
[0122] The method can be implemented using an FPGA to configure and switch scanning parameters in real time, and its internal state machine includes the following states.
[0123] Idle State (IDLE): After power-on reset, the system enters the idle state, waiting for the frame synchronization signal (VSYNC). When a valid frame synchronization signal is detected, the state machine transitions to the compute state (CALC).
[0124] Calculation State (CALC): In this state, the FPGA reads the motion velocity information of the dynamic region in the current frame from the dynamic region detection module and temporarily stores the data in an internal register. This velocity information may include indicators such as the average velocity or maximum velocity within the region. After the calculation is complete, the state machine transitions to the configuration state (CONFIG).
[0125] Configuration State (CONFIG): Based on the motion speed information and the preset speed threshold, determine whether the current area belongs to a high-speed or low-speed level, and calculate the corresponding scan level and PWM parameters (including duty cycle compensation value). After the configuration parameters are calculated, the state machine jumps to either high-speed scan state (HIGH_SCAN) or normal scan state (NORMAL_SCAN) depending on the size of the scan level.
[0126] High-speed scan state (HIGH_SCAN): Outputs line scan control commands and PWM data corresponding to the first scan level (larger value) to drive the LED driver IC. This state lasts for one frame cycle until the next frame synchronization signal arrives, at which point it returns to the idle state.
[0127] Normal scan state (NORMAL_SCAN): Outputs the row scan control command and PWM data corresponding to the second scan level (smaller value), and returns to the idle state after one frame cycle.
[0128] Within a frame cycle, the state machine sequentially traverses the complete transition path from IDLE to CALC to CONFIG to (HIGH_SCAN or NORMAL_SCAN). The CALC and CONFIG states are completed during the blanking period following the frame synchronization signal trigger, while the HIGH_SCAN or NORMAL_SCAN state persists throughout the entire effective display interval. When the VSYNC signal of the next frame arrives, the state machine jumps back from the current scan state to the IDLE state, beginning a new configuration cycle.
[0129] Through the state machine design described above, the FPGA can quickly and adaptively adjust the scanning parameters on a frame-by-frame basis to meet the real-time requirements of dynamic image quality enhancement.
[0130] The above technical solution employs a hardware state machine to achieve frame-level, zero-delay switching of scanning parameters. The state transition path is clear and strictly synchronized with the frame synchronization signal, avoiding the time uncertainty and delay caused by software scheduling. This hardware acceleration mechanism ensures that scanning parameters can be updated in real time synchronously with the screen content when there are sudden changes in high-speed motion scenes.
[0131] According to embodiments of this disclosure, the FPGA communicates via I 2 The C-bus communicates with the LED driver IC to configure scan parameters and the PWM register. The specific communication process is as follows.
[0132] First, the FPGA, acting as the master, sends a start signal (START), followed by the device address (DeviceAddress), which is the 7-bit or 10-bit slave address of the LED driver IC, along with write operation bits. Then, the master releases the bus and waits for an acknowledgment (ACK) signal from the slave. Upon receiving a correct acknowledgment, the master sends the register address, specifying the offset of the internal register to be configured. It then waits for another ACK from the slave. Next, the master sends configuration data, calculated based on the frame period and the current scan level, including the scan level setting and PWM duty cycle compensation value. After sending this data, it waits for another ACK from the slave, and finally, the master sends a stop signal (STOP) to end the communication.
[0133] The whole I 2 The C-communication process is completed within the blanking period of each frame, ensuring that it does not affect the normal image display timing. Through this configuration, the system can flexibly and dynamically adjust the operating mode of the LED driver IC, enabling rapid updates of scanning parameters.
[0134] The above communication timing and blanking period configuration strategy utilizes standard I 2Configuration can be completed via the C bus interface, offering strong hardware compatibility. By strictly limiting parameter update operations to within the frame blanking period, conflicts or interference with the image display data stream during the configuration process are completely avoided, ensuring a stable and flicker-free display.
[0135] The embodiments of this disclosure will be further described below with reference to a specific application scenario.
[0136] Suppose a stadium's LED screen is playing a football match, with the original video frame rate at 60Hz. The image acquisition module receives HDMI input images at 60Hz, and the circular buffer storage module caches the most recent 8 frames. The motion estimation and compensation module uses optical flow and neural networks to calculate consecutive frames, generating an accurate motion vector field. Based on this vector field, an intermediate transition frame is inserted between every two frames, increasing the output frame rate to 120Hz.
[0137] The dynamic region detection module identifies areas of rapid movement, such as soccer balls and players, as dynamic regions based on the motion vector field. The adaptive scanning parameter configuration module statistically analyzes the motion speed within these regions, calculates the average value μv and standard deviation σv, sets a speed threshold, and marks soccer balls and running players with speeds exceeding the threshold as high-speed regions, while static areas like the stands and stadium background are marked as low-speed regions. A 32-scan cycle is configured for high-speed regions, and the PWM compensation coefficient is calculated using the formula Ccomp = (8 / 32) × (1 + α*vnorm), accordingly increasing the PWM duty cycle to compensate for brightness loss. An 8-scan cycle is configured for low-speed regions, with a smaller compensation coefficient. The FPGA state machine, within each frame cycle, uses I... 2 The C bus writes configuration parameters into the registers of the LED driver IC.
[0138] Ultimately, when displaying fast-moving footballs and players on the LED display screen, the reduced row illumination time significantly decreased the perceived trailing and blurring, resulting in a clear and smooth image; while static background areas maintained high brightness and low power consumption. Overall image quality was significantly enhanced, meeting the high dynamic range display requirements of sporting events.
[0139] This disclosure also discloses an electronic device, Figure 7 A structural block diagram of an electronic device according to an embodiment of the present disclosure is shown.
[0140] like Figure 7 As shown, the electronic device includes a memory and a processor, wherein the memory is used to store one or more computer instructions, wherein the one or more computer instructions are executed by the processor to implement the method according to embodiments of the present disclosure.
[0141] The LED display image quality enhancement method includes the following steps:
[0142] Acquire and cache multiple consecutive frames of raw images;
[0143] The motion vector field is calculated based on the cached multiple frames of original images, and at least one intermediate transition frame is generated based on the motion vector field.
[0144] The dynamic regions in the image are determined based on the motion vector field;
[0145] Based on the motion speed information within the dynamic region, the dynamic region is divided into at least two speed levels, and different scanning parameters are configured for regions of different speed levels, wherein the scanning parameters include at least the number of scanning levels;
[0146] The LED display screen is driven to display based at least on the original image, the intermediate transition frame, and the scanning parameters.
[0147] According to embodiments of this disclosure, determining the dynamic region in the image based on the motion vector field specifically includes:
[0148] After downsampling the image, edge detection is performed to obtain a low-resolution region of interest mask;
[0149] The low-resolution region of interest mask is upsampled to the original resolution, and texture analysis is performed within the upsampled region of interest. The final dynamic region is then segmented from the region of interest based on the texture features.
[0150] According to embodiments of this disclosure, the calculation of the motion vector field based on multiple cached original images specifically includes:
[0151] The initial motion vector field is calculated using the optical flow method;
[0152] The initial motion vector field is input into a neural network for fine-tuning to obtain a refined motion vector field;
[0153] Spatial and temporal continuity constraints are applied to the refined motion vector field to output the final motion vector field.
[0154] According to embodiments of this disclosure, dividing the dynamic region into at least two speed levels based on the motion speed information within the dynamic region specifically includes:
[0155] Calculate the average value μv and standard deviation σv of the motion velocity in the corresponding region of multiple frames in the current scene, and set the velocity threshold vthreshold = μv + k·σv, where k is a preset coefficient;
[0156] The dynamic region is divided into different speed levels, including at least a high-speed motion region and a low-speed or stationary region, based on the speed threshold.
[0157] According to embodiments of this disclosure, configuring different scanning parameters for regions of different speed levels specifically includes:
[0158] A first scanning level is configured for high-speed moving areas, and a second scanning level is configured for low-speed or stationary areas. The first scanning level is greater than the second scanning level, and the larger the scanning level, the shorter the illumination time of each line in the corresponding scanning cycle.
[0159] According to embodiments of this disclosure, a PWM duty cycle compensation step is also included:
[0160] The PWM duty cycle compensation coefficient is calculated based on the configured scan level and the current region's motion speed, and the PWM duty cycle of the corresponding region is adjusted according to the compensation coefficient; wherein, the compensation coefficient increases accordingly when the motion speed is higher and / or the scan level is larger.
[0161] According to embodiments of this disclosure, the step of acquiring and caching multiple consecutive frames of original images specifically includes:
[0162] A hardware FIFO circular buffer is used to store N frames of original images, where the value of N ranges from 4 to 16;
[0163] The circular buffer is managed using write pointers and read pointers. When the interval between the write pointer and the read pointer reaches a preset upper limit threshold, overflow processing is triggered to discard old frames. When the write pointer and the read pointer are equal, underflow processing is triggered to pause the read operation.
[0164] According to embodiments of this disclosure, the method further includes using a state machine within the FPGA to perform the configuration and switching steps of the scan parameters:
[0165] Waiting for frame synchronization signal in idle state;
[0166] The motion speed information of the dynamic region is obtained during the calculation process;
[0167] In the configuration state, the scanning level and PWM parameters corresponding to the current region are calculated and determined based on the motion speed information.
[0168] In high-speed scanning mode or normal scanning mode, control commands corresponding to the first scanning level or the second scanning level are output respectively.
[0169] According to embodiments of this disclosure, the FPGA communicates via I 2 The C-bus communicates with the LED driver IC to configure scanning parameters, specifically including:
[0170] Send the device address after sending the start signal;
[0171] After receiving the acknowledgment signal from the device, send the register address;
[0172] After receiving the response signal again, scan configuration data is sent, which is calculated based on the frame period and the current scan level.
[0173] Send a stop signal to end communication.
[0174] Figure 8 A schematic diagram of the structure of a computer system suitable for implementing the method according to embodiments of the present disclosure is shown.
[0175] like Figure 8 As shown, the computer system includes a processing unit that can execute various methods described above based on a program stored in a read-only memory (ROM) or a program loaded from a storage portion into a random access memory (RAM). The RAM also stores various programs and data required for the operation of the computer system. The processing unit, ROM, and RAM are interconnected via a bus. Input / output (I / O) interfaces are also connected to the bus.
[0176] The following components are connected to the I / O interface: input sections including keyboards, mice, etc.; output sections including cathode ray tubes (CRTs), liquid crystal displays (LCDs), and speakers; storage sections including hard disks; and communication sections including network interface cards such as LAN cards and modems. The communication section performs communication processes via a network such as the Internet. Drives are also connected to the I / O interface as needed. Removable media, such as disks, optical disks, magneto-optical disks, semiconductor memories, etc., are installed on the drive as needed so that computer programs read from them can be installed into the storage section as required. The processing unit can be implemented as a CPU, GPU, TPU, FPGA, NPU, etc.
[0177] In particular, according to embodiments of this disclosure, the methods described above can be implemented as computer software programs. For example, embodiments of this disclosure include a computer program product comprising a computer program tangibly embodied on a machine-readable medium, the computer program containing program code for performing the methods described above. In such embodiments, the computer program can be downloaded and installed from a network via a communication component, and / or installed from a removable medium.
[0178] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0179] The units or modules described in the embodiments of this disclosure can be implemented in software or programmable hardware. The described units or modules can also be located in a processor, and the names of these units or modules do not necessarily constitute a limitation on the unit or module itself.
[0180] In another aspect, this disclosure also provides a computer-readable storage medium, which may be a computer-readable storage medium included in the electronic device or computer system described above; or it may be a standalone computer-readable storage medium not assembled into a device. The computer-readable storage medium stores one or more programs, which are used by one or more processors to perform the methods described in this disclosure.
[0181] The above description is merely a preferred embodiment of this disclosure and an explanation of the technical principles employed. Those skilled in the art should understand that the scope of the invention involved in this disclosure is not limited to technical solutions formed by specific combinations of the above-described technical features, but should also cover other technical solutions formed by arbitrary combinations of the above-described technical features or their equivalents without departing from the inventive concept. For example, technical solutions formed by substituting the above-described features with (but not limited to) technical features disclosed in this disclosure that have similar functions.
Claims
1. A method for enhancing the image quality of an LED display, characterized in that, Includes the following steps: Acquire and cache multiple consecutive frames of raw images; The motion vector field is calculated based on the cached multiple frames of original images, and at least one intermediate transition frame is generated based on the motion vector field. The dynamic regions in the image are determined based on the motion vector field; Based on the motion speed information within the dynamic region, the dynamic region is divided into at least two speed levels, and different scanning parameters are configured for regions of different speed levels, wherein the scanning parameters include at least the number of scanning levels; The LED display screen is driven to display based at least on the original image, the intermediate transition frame, and the scanning parameters.
2. The method according to claim 1, characterized in that, The step of determining the dynamic region in the image based on the motion vector field specifically includes: After downsampling the image, edge detection is performed to obtain a low-resolution region of interest mask; The low-resolution region of interest mask is upsampled to the original resolution, and texture analysis is performed within the upsampled region of interest. The final dynamic region is then segmented from the region of interest based on the texture features.
3. The method according to claim 1, characterized in that, The calculation of the motion vector field based on the cached multiple frames of original images specifically includes: The initial motion vector field is calculated using the optical flow method; The initial motion vector field is input into a neural network for fine-tuning to obtain a refined motion vector field; Spatial and temporal continuity constraints are applied to the refined motion vector field to output the final motion vector field.
4. The method according to claim 1, characterized in that, The step of dividing the dynamic region into at least two speed levels based on the motion speed information within the dynamic region specifically includes: Calculate the average value μv and standard deviation σv of the motion velocity in the corresponding region of multiple frames in the current scene, and set the velocity threshold vthreshold = μv + k·σv, where k is a preset coefficient; The dynamic region is divided into different speed levels, including at least a high-speed motion region and a low-speed or stationary region, based on the speed threshold.
5. The method according to claim 4, characterized in that, The configuration of different scanning parameters for regions with different speed levels specifically includes: A first scanning level is configured for high-speed moving areas, and a second scanning level is configured for low-speed or stationary areas. The first scanning level is greater than the second scanning level, and the larger the scanning level, the shorter the illumination time of each line in the corresponding scanning cycle.
6. The method according to claim 5, characterized in that, It also includes a PWM duty cycle compensation step: The PWM duty cycle compensation coefficient is calculated based on the configured scan level and the current region's motion speed, and the PWM duty cycle of the corresponding region is adjusted according to the compensation coefficient; wherein, the compensation coefficient increases accordingly when the motion speed is higher and / or the scan level is larger.
7. The method according to claim 1, characterized in that, The process of acquiring and caching multiple consecutive frames of raw images specifically includes: A hardware FIFO circular buffer is used to store N frames of original images, where the value of N ranges from 4 to 16; The circular buffer is managed using write pointers and read pointers. When the interval between the write pointer and the read pointer reaches a preset upper limit threshold, overflow processing is triggered to discard old frames. When the write pointer and the read pointer are equal, underflow processing is triggered to pause the read operation.
8. The method according to claim 5, characterized in that, It also includes using the state machine within the FPGA to perform the configuration and switching steps of the scan parameters: Waiting for frame synchronization signal in idle state; The motion speed information of the dynamic region is obtained during the calculation process; In the configuration state, the scanning level and PWM parameters corresponding to the current region are calculated and determined based on the motion speed information. In high-speed scanning mode or normal scanning mode, control commands corresponding to the first scanning level or the second scanning level are output respectively.
9. The method according to claim 8, characterized in that, FPGA via I 2 The C-bus communicates with the LED driver IC to configure scanning parameters, specifically including: Send the device address after sending the start signal; After receiving the acknowledgment signal from the device, send the register address; After receiving the response signal again, scan configuration data is sent, which is calculated based on the frame period and the current scan level. Send a stop signal to end communication.
10. An LED display image quality enhancement system, characterized in that, include: The image acquisition module is used to acquire multiple consecutive frames of raw images; A circular buffer storage module is used to cache the multiple frames of original images; The motion estimation and compensation module is used to calculate the motion vector field based on the cached multiple frames of original images and generate at least one intermediate transition frame based on the motion vector field. The dynamic region detection module is used to determine dynamic regions in the image based on the motion vector field; The scanning parameter adaptive configuration module is used to divide the dynamic region into at least two speed levels based on the motion speed information within the dynamic region, and to configure different scanning parameters for regions of different speed levels, wherein the scanning parameters include at least the number of scanning levels. The drive output module is used to drive the LED display screen to display based at least on the original image, the intermediate transition frame, and the scanning parameters.