A method and system for correcting trapezoidal distortion of a projection screen in an angular mode
Patent Information
- Application Number
- CN202610564734.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2026-04-27
- Publication Date
- 2026-10-27
- Estimated Expiration
- 2046-04-27
AI Technical Summary
[0003]现有技术中,重力传感器硬件存在零点漂移问题,现有方案通常采用静态校准参数且需重启服务方可生效,导致产线调试效率低下且无法应对运行中的偏置漂移;现有技术多采用简单的时间滤波或固定阈值,难以区分手持抖动与真实位移,导致设备微震时画面频繁闪烁,现有校正算法通常采用单一线性映射策略,在极端俯仰角度或跨模式切换时,画面易出现突变或撕裂,缺乏平滑过渡机制;触发策略仅依赖单一角度变化条件,缺少角度变化幅度阈值与冷却时间约束,易因微小震动或短暂扰动触发不必要的校正操作,增加系统负载
1.本发明通过广播指令动态加载零点偏置参数,并在加载过程中对参数字段进行格式与数值范围的合法性验证,确保偏置数据的有效性;通过将原始加速度数据与三轴偏置向量进行向量差分析,实现了校准后加速度数据的实时输出。该机制使得设备在产线调试或运行过程中发生零点漂移时,无需重启即可完成偏置更新,显著提升了调试效率与系统灵活性。同时,采用滑动窗口式三轴标准差计算生成瞬态波动强度指示值,并基于三轴独立阈值进行稳态判定,有效区分了手持抖动与真实位移,避免了设备微震时画面的频繁闪烁,提高了校正触发的准确性与画面稳定性。
Smart Images

Figure CN122395355B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of image communication technology, and in particular to a method and system for keystone correction of projected images in a split-angle mode. Background Technology
[0002] When a projector is used in a non-frontal projection posture, the projected image will exhibit trapezoidal distortion, affecting the viewing experience. To solve this problem, modern projectors typically integrate a gravity sensor to detect changes in the device's posture and perform geometric correction on the output image accordingly. By measuring the three-axis acceleration components, the gravity sensor can calculate attitude parameters such as the device's pitch angle, providing input for trapezoidal correction. The basic process of existing trapezoidal correction schemes is as follows: raw data from the gravity sensor is collected, the pitch angle is calculated after simple filtering, correction parameters are calculated based on the pitch angle and a preset mapping relationship, and finally, the parameters are applied to the image rendering pipeline. Under ideal conditions, this type of scheme can achieve basic automatic correction functionality.
[0003] In existing technologies, gravity sensor hardware suffers from zero-point drift. Current solutions typically employ static calibration parameters, requiring a service restart to take effect, leading to low production line debugging efficiency and an inability to handle bias drift during operation. Existing technologies often use simple time filtering or fixed thresholds, making it difficult to distinguish between hand-held jitter and actual displacement, resulting in frequent screen flickering during minor equipment vibrations. Existing correction algorithms typically employ a single linear mapping strategy, which can cause abrupt changes or screen tearing at extreme pitch angles or during mode switching, lacking a smooth transition mechanism. Triggering strategies rely only on single angle change conditions, lacking thresholds for angle change amplitude and cooling time constraints, making them prone to triggering unnecessary correction operations due to minor vibrations or brief disturbances, increasing system load. Therefore, there is an urgent need to develop a projection screen keystone correction method that supports zero-point bias thermal reload, possesses highly robust steady-state detection, employs angle-based adaptive correction strategies, and multi-condition collaborative triggering to solve the above problems and improve correction accuracy and image stability. Summary of the Invention
[0004] This invention provides a method and system for keystone correction of projected images in a split-angle mode, in order to solve the problems mentioned in the background art.
[0005] To achieve the above objectives, the present invention provides a method for keystone correction of a projection image in a multi-angle mode, comprising: Real-time zero-point offset compensation is performed on the raw three-axis acceleration data stream of the projection device to generate calibrated acceleration data of the projection device. The calibrated acceleration data is used to calculate the spatial angle to obtain the real-time pitch angle of the projection device. The real-time pitch angle is then matched with the preset angular attitude range to determine the trapezoidal correction mode of the real-time pitch angle. The sliding window triaxial standard deviation is calculated on the calibrated acceleration data to generate a transient fluctuation intensity indicator value for the calibrated acceleration data. When the transient fluctuation intensity indicator value is lower than the preset fluctuation threshold, a trapezoidal correction trigger signal is generated. Based on the trapezoidal correction trigger signal and trapezoidal correction mode, the real-time pitch angle is analyzed to obtain the projection transformation parameter set; The projection transformation parameter set is injected into the image rendering pipeline of the projection device. Based on the injected image rendering pipeline, the output image of the projection device is rendered with real-time geometric correction to obtain the corrected rectangular image, and the corrected attitude reference of the projection device is updated.
[0006] In a preferred embodiment, instantaneous zero-point offset compensation is performed on the raw three-axis acceleration data stream of the projection device to generate calibrated acceleration data of the projection device, including: Receive the bias loading command from the projection device; After responding to the bias loading command, the zero-point bias parameter field is read from the persistent storage medium of the projection device; Perform format and numerical range validation on the zero-point offset parameter field, and parse the zero-point offset parameter field into a three-axis offset vector when the validation passes. Vector difference analysis is performed on the raw acceleration data of the projection device and the three-axis offset vector. Based on the analysis results, the calibrated acceleration data of the projection device is output.
[0007] In a preferred embodiment, the calibrated acceleration data is used to calculate the spatial angle to obtain the real-time pitch angle of the projection device. The real-time pitch angle is then matched with a preset angular attitude range to determine the trapezoidal correction mode for the real-time pitch angle, including: Spatial angle calculation is performed on the calibrated acceleration data to obtain the real-time pitch angle of the projection device; The formula for calculating the real-time pitch angle is: ; in, For real-time pitch angle, It is the arctangent function. To determine the instantaneous acceleration components along the X-axis of the coordinate system corresponding to the calibrated acceleration data, To represent the instantaneous acceleration components along the Y-axis of the coordinate system corresponding to the calibrated acceleration data, To represent the instantaneous acceleration components along the Z-axis of the coordinate system corresponding to the calibrated acceleration data. Pi is a constant. Divide the angular attitude range of the projection device, associate the preset trapezoidal correction mode with the angular attitude range of the projection device, and use the intersection of boundary values in adjacent angular attitude ranges as the transition domain of adjacent angular attitude ranges. The real-time pitch angle and angular attitude range are matched to determine the trapezoidal correction mode of the real-time pitch angle. The boundary values of the angular attitude interval are sequentially traversed. When the value of the real-time pitch angle falls within or equals the boundary value of the angular attitude interval, it is determined that the real-time pitch angle belongs to the corresponding angular attitude interval, and the trapezoidal correction mode bound to the angular attitude interval is determined.
[0008] In a preferred embodiment, a sliding window triaxial standard deviation calculation is performed on the calibrated acceleration data to generate a transient fluctuation intensity indicator value for the calibrated acceleration data. When the transient fluctuation intensity indicator value is lower than a preset fluctuation threshold, a trapezoidal correction trigger signal is generated, including: Acquire the calibrated acceleration data and write it into a preset circular buffer, using the circular buffer as the data window to be analyzed; Calculate the first standard deviation of the data window to be analyzed at the current moment in the X-axis direction, the second standard deviation in the Y-axis direction, and the third standard deviation in the Z-axis direction; The first standard deviation, the second standard deviation, and the third standard deviation are combined to form the transient fluctuation intensity indicator value; When the transient fluctuation intensity indicator value is lower than the preset fluctuation threshold, a trapezoidal correction trigger signal is generated.
[0009] In a preferred embodiment, when the transient fluctuation intensity indication value is lower than a preset fluctuation threshold, a trapezoidal correction trigger signal is generated, including: The fluctuation thresholds of the pre-calibrated acceleration data are preset, including a first fluctuation threshold, a second fluctuation threshold, and a third fluctuation threshold. When the first standard deviation is less than the first fluctuation threshold of the transient fluctuation intensity indicator, the second standard deviation is less than the second fluctuation threshold of the transient fluctuation intensity indicator, and the third standard deviation is less than the third fluctuation threshold of the transient fluctuation intensity indicator, the projection device is determined to be in a steady state, and a keystone correction trigger signal is generated.
[0010] In a preferred embodiment, the trapezoidal correction trigger signal includes: The absolute difference between the real-time pitch angle and the historical attitude reference after effective correction of the projection device is used as the attitude change. The time interval between the historically corrected attitude references of the projection device is used as the device cooling time. A trapezoidal correction trigger signal is generated when the attitude change is not less than the pitch angle change trigger threshold of the projection device and the device cooling time is not less than the correction operation cooling time threshold of the projection device.
[0011] In a preferred embodiment, based on the trapezoidal correction trigger signal and the trapezoidal correction mode, the real-time pitch angle is analyzed to obtain a set of projection transformation parameters, including: When the real-time pitch angle value is within the angular attitude range, the geometric gain matrix of the projection device is obtained by performing correlation mapping analysis on the trapezoidal correction mode according to the preset gain coefficient corresponding to the trapezoidal correction mode. Based on the trapezoidal correction trigger signal, the real-time pitch angle and geometric gain matrix are input into the vertex coordinate solution equation of the projection device to obtain the normalized coordinates of the four target points in the projected image of the projection device. The normalized coordinates of the four targets are encapsulated into a set of projection transformation parameters for the projection device.
[0012] In a preferred embodiment, performing correlation mapping analysis on the trapezoidal correction mode to obtain the geometric gain matrix of the projection device further includes: When the real-time pitch angle value is within the transition domain of adjacent angular attitude intervals, identify the first geometric gain matrix and the second geometric gain matrix corresponding to the adjacent angular attitude intervals. The transition geometry gain matrix of the projection device is calculated based on the relative position parameters of the real-time pitch angle in the transition domain. The formula for calculating the transition geometry gain matrix is: ; in, This is the first geometric gain matrix. This is the second geometric gain matrix. These are the interpolation coefficients obtained by linearly normalizing the real-time pitch angle within the transition domain. The transition geometry gain matrix; Replace the geometric gain matrix of the projection device with the transition geometric gain matrix.
[0013] In a preferred embodiment, the projection transformation parameter set is injected into the image rendering pipeline of the projection device. Based on the injected image rendering pipeline, the output image of the projection device is rendered with real-time geometric correction to obtain a corrected rectangular image. The corrected attitude reference of the projection device is then updated, including: Obtain the display control interface of the projection device and convert the projection transformation parameter set into a normalized eight-point coordinate matrix; The display control interface is called to inject the normalized eight-point coordinate matrix into the image rendering pipeline of the projection device, so as to perform vertex remapping on the output image of the projection device and generate a corrected rectangular image. The real-time pitch angle is stored as the new corrected attitude reference, and the generation time of the trapezoidal correction trigger signal is used as the start time of the device cooling time.
[0014] To address the aforementioned problems, the present invention also provides a keystone correction system for projection images in a split-angle mode, the system comprising: The zero-point calibration module is used to perform real-time zero-point offset compensation on the raw three-axis acceleration data stream of the projection device, and generate calibrated acceleration data of the projection device. The attitude calculation and pattern matching module is used to perform spatial angle calculation on the calibrated acceleration data to obtain the real-time pitch angle of the projection device, and to perform interval assignment matching between the real-time pitch angle and the preset angular attitude interval to determine the trapezoidal correction mode of the real-time pitch angle. The dynamic trigger judgment module is used to perform sliding window triaxial standard deviation calculation on the calibrated acceleration data, generate transient fluctuation intensity indication value of the calibrated acceleration data, and generate trapezoidal correction trigger signal when the transient fluctuation intensity indication value is lower than the preset fluctuation threshold. The parameter calculation module is used to perform pitch angle analysis on the real-time pitch angle based on the trapezoidal correction trigger signal and trapezoidal correction mode, and obtain the projection transformation parameter set. The rendering pipeline injection module is used to inject the projection transformation parameter set into the image rendering pipeline of the projection device. Based on the injected image rendering pipeline, the output image of the projection device is rendered with real-time geometric correction to obtain the corrected rectangular image and update the corrected attitude reference of the projection device.
[0015] Compared with the prior art, the present invention has the following beneficial effects: 1. This invention dynamically loads zero-point offset parameters via broadcast commands and verifies the format and numerical range of the parameter fields during the loading process to ensure the validity of the offset data. By performing vector difference analysis between the original acceleration data and the three-axis offset vector, real-time output of the calibrated acceleration data is achieved. This mechanism allows for offset updates without restarting when zero-point drift occurs during production line debugging or operation, significantly improving debugging efficiency and system flexibility. Simultaneously, a sliding window-based three-axis standard deviation calculation generates transient fluctuation intensity indicators, and steady-state determination is performed based on independent three-axis thresholds. This effectively distinguishes between handheld shaking and actual displacement, avoiding frequent screen flickering during minor vibrations and improving the accuracy of calibration triggering and screen stability.
[0016] 2. This invention assigns pitch angles to preset angular attitude ranges, associating different trapezoidal correction modes with different ranges. A gain fading mechanism is introduced in the transition domain between adjacent angular attitude ranges, using interpolation coefficients to linearly transition the geometric gain matrix, achieving smooth transitions during mode switching and avoiding abrupt screen abruptness or tearing. Furthermore, when generating the trapezoidal correction trigger signal, this invention comprehensively considers three conditions: steady-state determination results, attitude change amount, and device cooling time. Correction is triggered only when the device is stable and the attitude has changed significantly, effectively suppressing invalid correction operations caused by minor vibrations or brief disturbances, reducing system load, and improving the robustness of correction operations and user experience. Attached Figure Description
[0017] Figure 1 This is a flowchart illustrating a method for trapezoidal correction of a projection image in a split-angle mode, as provided in an embodiment of the present invention. Figure 2 A functional block diagram of a projection screen keystone correction system in a split-angle mode provided in an embodiment of the present invention; The realization of the objective, functional features and advantages of the present invention will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation
[0018] It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
[0019] This application provides a method for keystone correction of a projection image in a multi-angle mode. The execution subject of this method includes, but is not limited to, at least one of the following electronic devices that can be configured to execute the method provided in this application: a server, a terminal, etc. In other words, the method for keystone correction of a projection image in a multi-angle mode can be executed by software or hardware installed on a terminal device or a server device. The server includes, but is not limited to, a single server, a server cluster, a cloud server, or a cloud server cluster. The server can be an independent server or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, content delivery networks (CDNs), and big data and artificial intelligence platforms.
[0020] Reference Figure 1 The diagram shown is a flowchart illustrating a method for keystone correction of a projection image in a split-angle mode according to an embodiment of the present invention. In this embodiment, the method for keystone correction of a projection image in a split-angle mode includes: Real-time zero-point offset compensation is performed on the raw three-axis acceleration data stream of the projection device to generate calibrated acceleration data of the projection device. In this embodiment of the invention, real-time zero-point offset compensation is performed on the raw three-axis acceleration data stream of the projection device to generate calibrated acceleration data of the projection device, including: Receive the bias loading command from the projection device; After responding to the bias loading command, the zero-point bias parameter field is read from the persistent storage medium of the projection device; Perform format and numerical range validation on the zero-point offset parameter field, and parse the zero-point offset parameter field into a three-axis offset vector when the validation passes. Vector difference analysis is performed on the raw acceleration data of the projection device and the three-axis offset vector. Based on the analysis results, the calibrated acceleration data of the projection device is output.
[0021] The control system of the projection equipment continuously monitors the system broadcast channel. When the engineering mode application or production line debugging tool issues a calibration broadcast, the control system recognizes the broadcast as an offset loading command.
[0022] Upon receiving the offset loading command, the control system immediately enters the offset update process, suspends the routine processing of the original triaxial acceleration data stream, and prepares to perform the reloading operation of the zero-point offset parameters.
[0023] The control system accesses the built-in flash memory storage partition of the projection device, which has a parameter field pre-written with a specific attribute name. This field records the zero-point offset parameters obtained by calibrating the device on a horizontal, stationary platform.
[0024] The control system calls the read interface of the persistent storage medium to read the field stored in the storage medium completely, and obtains the content of the zero-point offset parameter field composed of characters.
[0025] The control system transmits the zero-point offset parameter field it reads to the validity verification unit. The verification unit first checks whether the field meets the preset format requirements, that is, the field must consist of three comma-separated values, and each value must be represented by a standard decimal number. If the format does not meet the requirements, the verification fails. The control system retains the original zero-point offset parameter and records the error log.
[0026] If the format verification passes, the verification unit further verifies the numerical range of the three values to determine whether each value is within the preset physical allowable range. This preset range is based on the physical limit of gravitational acceleration. If any value exceeds this range, the verification is deemed to have failed.
[0027] When both format verification and numerical range verification pass, the control system parses the field into three independent values, corresponding to the X-axis offset, Y-axis offset, and Z-axis offset, respectively, and combines these three values into a three-axis offset vector for subsequent compensation operations.
[0028] The control system performs an axis-by-axis difference operation on each frame of data in the real-time received raw triaxial acceleration data stream and the triaxial bias vector. Specifically, the X-axis value in the raw acceleration data is subtracted from the X-axis bias of the triaxial bias vector to obtain the calibrated X-axis value, the Y-axis value is subtracted from the Y-axis bias of the triaxial bias vector to obtain the calibrated Y-axis value, and the Z-axis value is subtracted from the Z-axis bias of the triaxial bias vector to obtain the calibrated Z-axis value.
[0029] The control system combines the three values obtained after the difference operation into a frame of calibrated acceleration data, which serves as the input for subsequent spatial angle calculation. At the same time, the control system outputs the calibrated acceleration data to the data processing queue for the attitude calculation module to read and use.
[0030] The beneficial effects are as follows: The above steps, through the zero-point offset compensation process, enable the projection device to dynamically load and update the zero-point offset without restarting the service, significantly improving production line debugging efficiency and the ability to handle offset drift during operation. This process, through a dual validity verification mechanism of format and numerical range, ensures that the written offset parameters conform to physical reality, avoiding subsequent attitude calculation failures due to incorrect parameters. By performing axis-by-axis difference calculations between the original acceleration data and the three-axis offset vector, the system can output calibrated acceleration data in real time, providing accurate basic input for subsequent pitch angle calculations, thereby ensuring the accuracy and reliability of keystone correction.
[0031] The calibrated acceleration data is used to calculate the spatial angle to obtain the real-time pitch angle of the projection device. The real-time pitch angle is then matched with the preset angular attitude range to determine the trapezoidal correction mode of the real-time pitch angle. In this embodiment of the invention, the calibrated acceleration data is used to perform spatial angle calculation to obtain the real-time pitch angle of the projection device, and the real-time pitch angle is matched with a preset angular attitude interval to determine the trapezoidal correction mode of the real-time pitch angle, including: Spatial angle calculation is performed on the calibrated acceleration data to obtain the real-time pitch angle of the projection device; The formula for calculating the real-time pitch angle is: ; in, For real-time pitch angle, It is the arctangent function. To determine the instantaneous acceleration components along the X-axis of the coordinate system corresponding to the calibrated acceleration data, To represent the instantaneous acceleration components along the Y-axis of the coordinate system corresponding to the calibrated acceleration data, To represent the instantaneous acceleration components along the Z-axis of the coordinate system corresponding to the calibrated acceleration data. Pi is a constant. Divide the angular attitude range of the projection device and associate the preset keystone correction mode with the angular attitude range of the projection device; The real-time pitch angle and angular attitude range are assigned and matched to determine the trapezoidal correction mode of the real-time pitch angle. The boundary values of the angular attitude interval are sequentially traversed. When the value of the real-time pitch angle falls within or equals the boundary value of the angular attitude interval, it is determined that the real-time pitch angle belongs to the corresponding angular attitude interval, and the trapezoidal correction mode bound to the angular attitude interval is determined.
[0032] The spatial angle calculation unit reads three values from the calibrated acceleration data. The first value is the instantaneous acceleration component in the X-axis direction of the coordinate system corresponding to the calibrated acceleration data. The second value is the instantaneous acceleration component in the Y-axis direction of the coordinate system corresponding to the calibrated acceleration data. The third value is the instantaneous acceleration component in the Z-axis direction of the coordinate system corresponding to the calibrated acceleration data.
[0033] The spatial angle calculation unit squares the instantaneous acceleration component in the Y-axis direction to obtain the first squared value, squares the instantaneous acceleration component in the Z-axis direction to obtain the second squared value, adds the first squared value and the second squared value to obtain the sum of squares, and then performs a square root operation on the sum of squares to obtain the square root value.
[0034] The spatial angle calculation unit takes the negative value of the instantaneous acceleration component in the X-axis direction to obtain the negative X-axis acceleration component, and divides the negative X-axis acceleration component by the square root value mentioned above to obtain the ratio result.
[0035] The spatial angle calculation unit calls the arctangent function, takes the ratio result as the input parameter of the arctangent function, performs the arctangent operation, and obtains the angle value in radians.
[0036] The spatial angle calculation unit uses the constant pi as a conversion factor. It divides the angle value in radians by the constant pi and then multiplies it by 180 to obtain the angle value in degrees. This angle value is the real-time pitch angle of the projection device.
[0037] The spatial angle calculation unit outputs the calculated real-time pitch angle to the pattern matching unit.
[0038] The control system pre-stores the angular attitude range configuration table in the persistent storage medium of the projection device.
[0039] The angular attitude range configuration table records more than two angular attitude ranges. Each angular attitude range is defined by the lower boundary value and the upper boundary value of the range. Each angular attitude range is pre-bound with a trapezoidal correction mode. The trapezoidal correction modes include the first trapezoidal correction mode corresponding to the lens upward mode, the second trapezoidal correction mode corresponding to the lens downward mode, and the third trapezoidal correction mode corresponding to the ceiling mode.
[0040] The control system loads the angular attitude range configuration table into the memory of the pattern matching unit.
[0041] After receiving the real-time pitch angle, the pattern matching unit initiates the interval assignment matching process.
[0042] The pattern matching unit obtains the lower boundary value and upper boundary value of each angle attitude interval in turn, according to the storage order of the angle attitude intervals in the angle attitude interval configuration table.
[0043] For the currently acquired angular attitude range, the pattern matching unit compares the real-time pitch angle value with the lower boundary value of the range, and at the same time compares the real-time pitch angle value with the upper boundary value of the range to determine whether the real-time pitch angle value is greater than or equal to the lower boundary value of the range and less than or equal to the upper boundary value of the range.
[0044] When the real-time pitch angle value meets the above conditions, the pattern matching unit determines that the real-time pitch angle belongs to the current angular attitude interval and stops traversing subsequent angular attitude intervals.
[0045] The pattern matching unit reads the trapezoidal correction mode bound to the angular attitude range from the angular attitude range configuration table and determines the trapezoidal correction mode as the trapezoidal correction mode corresponding to the real-time pitch angle.
[0046] The beneficial effects are as follows: This invention achieves a segmented angle control strategy by matching the real-time pitch angle with a preset angular attitude range, thus employing differentiated trapezoidal correction modes for different pitch angle ranges. This avoids the image tearing problem inherent in traditional single linear mapping at extreme angles. By sequentially traversing the boundary values of the angular attitude range and performing numerical comparisons, the control system can accurately and uniquely determine the range to which the real-time pitch angle belongs, ensuring the determinism and consistency of the trapezoidal correction mode selection. By pre-binding the angular attitude range with the trapezoidal correction mode, the control system can directly call the corresponding mode parameters during subsequent correction parameter calculations, providing a fundamental support for segmented angle adaptive correction and thereby improving the image correction quality under different installation postures.
[0047] The sliding window triaxial standard deviation is calculated on the calibrated acceleration data to generate a transient fluctuation intensity indicator value for the calibrated acceleration data. When the transient fluctuation intensity indicator value is lower than the preset fluctuation threshold, a trapezoidal correction trigger signal is generated. In this embodiment of the invention, a sliding window triaxial standard deviation calculation is performed on the calibrated acceleration data to generate a transient fluctuation intensity indicator value for the calibrated acceleration data. When the transient fluctuation intensity indicator value is lower than a preset fluctuation threshold, a trapezoidal correction trigger signal is generated, including: Acquire the calibrated acceleration data and write it into a preset circular buffer, using the circular buffer as the data window to be analyzed; Calculate the first standard deviation of the data window to be analyzed at the current moment in the X-axis direction, the second standard deviation in the Y-axis direction, and the third standard deviation in the Z-axis direction; The first standard deviation, the second standard deviation, and the third standard deviation are combined to form the transient fluctuation intensity indicator value; When the transient fluctuation intensity indicator value is lower than the preset fluctuation threshold, a trapezoidal correction trigger signal is generated.
[0048] When the transient fluctuation intensity indicator value is lower than the preset fluctuation threshold, a trapezoidal correction trigger signal is generated, including: The fluctuation thresholds of the pre-calibrated acceleration data are preset, including a first fluctuation threshold, a second fluctuation threshold, and a third fluctuation threshold. When the first standard deviation is less than the first fluctuation threshold of the transient fluctuation intensity indicator, the second standard deviation is less than the second fluctuation threshold of the transient fluctuation intensity indicator, and the third standard deviation is less than the third fluctuation threshold of the transient fluctuation intensity indicator, the projection device is determined to be in a steady state, and a keystone correction trigger signal is generated.
[0049] The trapezoidal correction trigger signal includes: The absolute difference between the real-time pitch angle and the historical attitude reference after effective correction of the projection device is used as the attitude change. The time interval between the historically corrected attitude references of the projection device is used as the device cooling time. A trapezoidal correction trigger signal is generated when the attitude change is not less than the pitch angle change trigger threshold of the projection device and the device cooling time is not less than the correction operation cooling time threshold of the projection device.
[0050] When the control system starts, it allocates a continuous storage space in memory as a circular buffer, and presets the length of the circular buffer to three storage units. Each storage unit is used to store one frame of calibrated acceleration data.
[0051] The control system continuously receives calibrated acceleration data output by the attitude calculation module. Each time a frame of calibrated acceleration data is received, the data is written into the storage unit currently pointed to by the pointer in the circular buffer in chronological order. After writing is completed, the pointer moves to the next storage unit. When the pointer reaches the last storage unit of the circular buffer, the pointer returns to the first storage unit, so that the circular buffer always retains the three most recently written frames of calibrated acceleration data.
[0052] The control system uses the three frames of calibrated acceleration data currently stored in the annular buffer as a whole as a data window to be analyzed, for subsequent standard deviation calculation.
[0053] The control system reads all three frames of calibrated acceleration data from the data window to be analyzed, extracts the corresponding X-axis values from each frame, and obtains three X-axis values. The arithmetic mean of these three X-axis values is calculated to obtain the X-axis mean. The difference between each X-axis value and the X-axis mean is squared to obtain the squared differences of the three X-axis values. The arithmetic mean of these three squared differences is calculated to obtain the X-axis variance. The square root of the X-axis variance is then performed to obtain the first standard deviation.
[0054] The control system reads all three frames of calibrated acceleration data from the data window to be analyzed, extracts the corresponding Y-axis values from each frame, and obtains three Y-axis values. The arithmetic mean of these three Y-axis values is calculated to obtain the Y-axis mean. The difference between each Y-axis value and the Y-axis mean is squared to obtain the squared differences of the three Y-axis values. The arithmetic mean of these three squared differences is calculated to obtain the Y-axis variance. The square root of the Y-axis variance is then performed to obtain the second standard deviation.
[0055] The control system reads all three frames of calibrated acceleration data from the data window to be analyzed, extracts the corresponding Z-axis values from each frame, and obtains three Z-axis values. The arithmetic mean of these three Z-axis values is calculated to obtain the Z-axis mean. The difference between each Z-axis value and the Z-axis mean is squared to obtain three squared Z-axis difference values. The arithmetic mean of these three squared Z-axis difference values is calculated to obtain the Z-axis variance. The square root of the Z-axis variance is then performed to obtain the third standard deviation.
[0056] The control system combines the calculated first standard deviation, second standard deviation, and third standard deviation in the order of X-axis, Y-axis, and Z-axis into a set containing three values, which is the transient fluctuation intensity indication value.
[0057] The control system pre-stores fluctuation threshold configuration parameters in the persistent storage medium of the projection device. The fluctuation threshold configuration parameters record a value as the first fluctuation threshold, a value as the second fluctuation threshold, and a value as the third fluctuation threshold. The first fluctuation threshold and the second fluctuation threshold are set to the same value, and the third fluctuation threshold is set to a value different from the first fluctuation threshold.
[0058] The control system loads the first fluctuation threshold, the second fluctuation threshold, and the third fluctuation threshold into the memory of the steady-state determination unit.
[0059] The steady-state determination unit extracts the first standard deviation, the second standard deviation, and the third standard deviation from the transient fluctuation intensity indication value, and compares them with the first fluctuation threshold, the second fluctuation threshold, and the third fluctuation threshold, respectively.
[0060] The steady-state determination unit determines whether the first standard deviation is less than the first fluctuation threshold, and at the same time determines whether the second standard deviation is less than the second fluctuation threshold, and at the same time determines whether the third standard deviation is less than the third fluctuation threshold.
[0061] When all three conditions are met, the steady-state determination unit determines that the projection device is currently in a steady state and outputs a steady-state confirmation signal to the trigger signal generation unit.
[0062] The control system pre-stores trigger threshold configuration parameters in the persistent storage medium of the projection device. The trigger threshold configuration parameters record a value as the pitch angle change trigger threshold and a value as the correction operation cooling time threshold.
[0063] The control system reads the historical effective post-correction attitude reference from the memory of the projection device. This historical effective post-correction attitude reference records the real-time pitch angle value of the projection device when the last successful keystone correction was performed, as well as the completion time of that correction.
[0064] After receiving the steady-state confirmation signal, the trigger signal generation unit reads the real-time pitch angle value at the current moment from the memory, subtracts the real-time pitch angle value recorded in the historical effective corrected attitude reference, and takes the absolute value of the calculation result to obtain the attitude change.
[0065] The trigger signal generation unit obtains the system clock value at the current moment, subtracts the correction completion time recorded in the historical effective correction attitude reference from the system clock value at the current moment, and obtains the equipment cooling time.
[0066] The trigger signal generation unit compares the attitude change with the pitch angle change trigger threshold, and at the same time compares the device cooling time with the correction operation cooling time threshold.
[0067] When the attitude change is greater than or equal to the pitch angle change trigger threshold, and the equipment cooling time is greater than or equal to the correction operation cooling time threshold, the trigger signal generation unit generates a trapezoidal correction trigger signal and outputs the trapezoidal correction trigger signal to the parameter calculation module.
[0068] The beneficial effects are as follows: This invention uses a sliding window-based three-axis standard deviation calculation to independently calculate the variance and standard deviation of acceleration data in the X, Y, and Z axes, achieving a refined assessment of the stability of the projection device in each axis of three-dimensional space. This effectively distinguishes between handheld jitter and actual displacement, avoiding frequent screen flickering when the device experiences minor vibrations. By comparing the three-axis standard deviation with their respective independent fluctuation thresholds, the system can determine that the device is in an unsteady state when instability occurs in any axis, improving the sensitivity and accuracy of steady-state determination. By introducing dual triggering conditions—attitude change threshold and cooling time threshold—the system only generates a trigger signal when the device is stable, the attitude has changed significantly, and the cooling time requirement from the last correction has been met. This effectively suppresses invalid correction operations caused by minor vibrations or brief disturbances, reduces system load, and improves the robustness of correction operations and user experience.
[0069] Based on the trapezoidal correction trigger signal and trapezoidal correction mode, the real-time pitch angle is analyzed to obtain the projection transformation parameter set; In this embodiment of the invention, based on the trapezoidal correction trigger signal and the trapezoidal correction mode, the real-time pitch angle is analyzed to obtain a set of projection transformation parameters, including: When the real-time pitch angle value is within the angular attitude range, the geometric gain matrix of the projection device is obtained by performing correlation mapping analysis on the trapezoidal correction mode according to the preset gain coefficient corresponding to the trapezoidal correction mode. Based on the trapezoidal correction trigger signal, the real-time pitch angle and geometric gain matrix are input into the vertex coordinate solution equation of the projection device to obtain the normalized coordinates of the four target points in the projected image of the projection device. The normalized coordinates of the four targets are encapsulated into a set of projection transformation parameters for the projection device.
[0070] Correlation mapping analysis of the trapezoidal correction mode yields the geometric gain matrix of the projection device, and also includes: When the real-time pitch angle value is within the transition domain of adjacent angular attitude intervals, identify the first geometric gain matrix and the second geometric gain matrix corresponding to the adjacent angular attitude intervals. The transition geometry gain matrix of the projection device is calculated based on the relative position parameters of the real-time pitch angle in the transition domain. When the real-time pitch angle value is within the transition domain of adjacent angular attitude intervals, identify the first geometric gain matrix and the second geometric gain matrix corresponding to the adjacent angular attitude intervals. The transition geometry gain matrix of the projection device is calculated based on the relative position parameters of the real-time pitch angle in the transition domain. The formula for calculating the transition geometry gain matrix is: ; in, This is the first geometric gain matrix. This is the second geometric gain matrix. These are the interpolation coefficients obtained by linearly normalizing the real-time pitch angle within the transition domain. The transition geometry gain matrix; The control system confirms that the real-time pitch angle value is within a certain angle attitude range recorded in the angle attitude range configuration table.
[0071] The control system accesses the persistent storage medium of the projection device according to the trapezoidal correction mode bound to the angle attitude range. The persistent storage medium stores a preset gain coefficient for each trapezoidal correction mode.
[0072] The control system reads the preset gain coefficient corresponding to the trapezoidal correction mode from the persistent storage medium. The preset gain coefficient contains two independent values: the horizontal scaling ratio and the vertical scaling ratio.
[0073] The control system arranges the read horizontal and vertical scaling ratios into a matrix structure to form a geometric gain matrix. The two values in this matrix correspond to the horizontal and vertical gains, respectively. The control system stores this geometric gain matrix in memory for later retrieval.
[0074] After receiving the trapezoidal correction trigger signal, the control system confirms that trapezoidal correction parameter calculation is required.
[0075] The control system retrieves the real-time pitch angle value and geometric gain matrix from memory.
[0076] The control system simultaneously inputs the real-time pitch angle value and the geometric gain matrix into the vertex coordinate calculation unit.
[0077] The vertex coordinate calculation unit pre-stores the initial coordinates of the original four corner points of the projected image in the original image coordinate system. These initial coordinates include the four corner points: the upper left corner, the upper right corner, the lower right corner, and the lower left corner. Each corner point contains a horizontal coordinate value and a vertical coordinate value. All initial coordinates are represented in a normalized form.
[0078] The vertex coordinate calculation unit first calculates the vertical offset based on the vertical gain value in the geometric gain matrix and the real-time pitch angle value. This calculation process involves multiplying the real-time pitch angle value by the vertical gain value to obtain the vertical offset.
[0079] The vertex coordinate calculation unit then calculates the horizontal stretching amount based on the horizontal gain value in the geometric gain matrix and the real-time pitch angle value. This calculation process involves multiplying the real-time pitch angle value by the horizontal gain value to obtain the horizontal stretching amount.
[0080] The vertex coordinate calculation unit applies vertical offset and horizontal stretch to the initial coordinates of the four corner points respectively. For the top left corner point, the vertex coordinate calculation unit subtracts the horizontal stretch from its initial x-coordinate to obtain a new x-coordinate, and subtracts the vertical offset from its initial y-coordinate to obtain a new y-coordinate.
[0081] For the top right corner point, the vertex coordinate calculation unit adds the horizontal stretch to its initial x-coordinate to obtain a new x-coordinate, and subtracts the vertical offset from its initial y-coordinate to obtain a new y-coordinate.
[0082] For the bottom right corner point, the vertex coordinate calculation unit adds the horizontal stretch to its initial x-coordinate to obtain a new x-coordinate, and adds the vertical offset to its initial y-coordinate to obtain a new y-coordinate.
[0083] For the bottom left corner point, the vertex coordinate calculation unit subtracts the horizontal stretching amount from its initial x-coordinate to obtain a new x-coordinate, and adds the vertical offset to its initial y-coordinate to obtain a new y-coordinate.
[0084] The vertex coordinate calculation unit arranges the four new corner coordinates obtained after the above calculation in the order of top left corner, top right corner, bottom right corner, and bottom left corner. Each corner coordinate is represented by a normalized value. The result of this arrangement is the normalized coordinates of the four target points.
[0085] The control system transmits the normalized coordinates of the four target points to the parameter encapsulation unit.
[0086] The parameter encapsulation unit arranges the eight normalized values in the normalized coordinates of the four target points in sequence according to the data format specified by the display control interface of the projection device, forming a projection transformation parameter set. The eight values in the projection transformation parameter set correspond to the x-coordinate of the upper left corner, the y-coordinate of the upper left corner, the x-coordinate of the upper right corner, the y-coordinate of the upper right corner, the x-coordinate of the lower right corner, the y-coordinate of the lower right corner, the x-coordinate of the lower left corner, and the y-coordinate of the lower left corner, respectively.
[0087] The control system pre-stores an angular attitude interval configuration table in the pattern matching unit. This configuration table sets a transition domain between two adjacent angular attitude intervals. This transition domain is jointly defined by the upper boundary value of the preceding angular attitude interval and the lower boundary value of the following angular attitude interval. All pitch angle values within the transition domain do not belong to either the preceding or following angular attitude interval. A boundary interval is formed between two adjacent angular attitude intervals by the upper boundary value of the preceding angular attitude interval and the lower boundary value of the following angular attitude interval.
[0088] The control system determines whether the upper and lower boundary values of two adjacent angular attitude intervals are equal. When the upper boundary value equals the lower boundary value, the control system uses a single numerical point between the boundary values as the transition region between the adjacent angular attitude intervals, and this transition region contains only that single numerical point. When the upper boundary value is less than the lower boundary value, the control system uses the open interval between the upper and lower boundary values as the transition region between the adjacent angular attitude intervals, and this transition region contains all values greater than the upper boundary value and less than the lower boundary value.
[0089] When determining the trapezoidal correction mode to which the real-time pitch angle belongs, the control system first determines whether the value of the real-time pitch angle falls within the transition domain of the adjacent angular attitude interval.
[0090] When the real-time pitch angle value falls within the transition domain, the control system identifies two adjacent angular attitude intervals connected by the transition domain. The geometric gain matrix associated with the trapezoidal correction mode corresponding to the interval with the smaller value is determined as the first geometric gain matrix, and the geometric gain matrix associated with the trapezoidal correction mode corresponding to the interval with the larger value is determined as the second geometric gain matrix.
[0091] The control system acquires the lower and upper boundary values of the transition domain, where the lower boundary value is the upper boundary value of the smaller angular attitude interval connected to the transition domain, and the upper boundary value is the lower boundary value of the larger angular attitude interval connected to the transition domain.
[0092] The control system reads the real-time pitch angle value from memory, subtracts the lower boundary value of the transition domain from the real-time pitch angle value to obtain the first difference value, subtracts the lower boundary value of the transition domain from the upper boundary value of the transition domain to obtain the total width of the transition domain, and divides the first difference value by the total width of the transition domain to obtain the interpolation coefficient, which is a value between zero and one.
[0093] The control system reads the first geometric gain matrix from memory, which contains the first horizontal gain value and the first vertical gain value.
[0094] The control system reads the second geometric gain matrix from memory, which contains the second horizontal gain value and the second vertical gain value.
[0095] The control system multiplies the interpolation coefficient with the second level gain value to obtain the first product, multiplies the value after subtracting the interpolation coefficient with the first level gain value to obtain the second product, and adds the first product and the second product to obtain the transition level gain value.
[0096] The control system multiplies the interpolation coefficient with the second vertical gain value to obtain a third product, multiplies the value after subtracting the interpolation coefficient with the first vertical gain value to obtain a fourth product, and adds the third product and the fourth product to obtain the transition vertical gain value.
[0097] The control system arranges the transition horizontal gain values and transition vertical gain values according to a matrix structure to form a transition geometric gain matrix.
[0098] The control system stores the transition geometric gain matrix in memory, replacing the original geometric gain matrix in memory, for use by the subsequent vertex coordinate calculation unit when performing pitch angle analysis.
[0099] The parameter encapsulation unit outputs the projection transformation parameter set to the rendering pipeline injection module.
[0100] The beneficial effects are as follows: This invention achieves precise control of differentiated scaling factors for different posture ranges by resolving the preset gain coefficients corresponding to the trapezoidal correction mode into a geometric gain matrix, thus avoiding the problem of correction distortion under multiple installation angles with a single scaling parameter. By inputting the real-time pitch angle and the geometric gain matrix into the vertex coordinate calculation unit and calculating the offset coordinates of the four corner points separately according to clear numerical calculation rules, the system can generate normalized coordinates of the four-point target in a traceable and repeatable manner, eliminating the uncertainty brought by black-box algorithms. By encapsulating the normalized coordinates of the four-point target into a standardized set of projection transformation parameters, a unified data interface is provided for subsequent rendering pipeline injection, ensuring a complete closed loop from posture perception to image correction and improving the accuracy and reliability of trapezoidal correction.
[0101] The projection transformation parameter set is injected into the image rendering pipeline of the projection device. Based on the injected image rendering pipeline, the output image of the projection device is rendered with real-time geometric correction to obtain the corrected rectangular image, and the corrected attitude reference of the projection device is updated.
[0102] In this embodiment of the invention, a set of projection transformation parameters is injected into the image rendering pipeline of the projection device. Based on the injected image rendering pipeline, the output image of the projection device is rendered with real-time geometric correction to obtain a corrected rectangular image. The corrected pose reference of the projection device is then updated, including: Obtain the display control interface of the projection device and convert the projection transformation parameter set into a normalized eight-point coordinate matrix; The display control interface is called to inject the normalized eight-point coordinate matrix into the image rendering pipeline of the projection device, so as to perform vertex remapping on the output image of the projection device and generate a corrected rectangular image. The real-time pitch angle is stored as the new corrected attitude reference, and the generation time of the trapezoidal correction trigger signal is used as the start time of the device cooling time.
[0103] The control system obtains the projection transformation parameter set from the parameter encapsulation unit.
[0104] The control system obtains the display control interface of the projection device, which is a low-level communication channel provided by the projection device's operating system for managing display output.
[0105] The control system rearranges the eight normalized values in the projection transformation parameter set according to the input format required by the display control interface to form a normalized eight-point coordinate matrix. The eight values in this normalized eight-point coordinate matrix correspond to the x-coordinate of the upper left corner, the y-coordinate of the upper left corner, the x-coordinate of the upper right corner, the y-coordinate of the upper right corner, the x-coordinate of the lower right corner, the y-coordinate of the lower right corner, the x-coordinate of the lower left corner, and the y-coordinate of the lower left corner, respectively.
[0106] The control system calls the display control interface and passes the normalized eight-point coordinate matrix as input parameter to the display control interface.
[0107] After receiving the normalized eight-point coordinate matrix, the display control interface passes the matrix to the vertex shader unit in the rendering pipeline.
[0108] The vertex shader unit pre-stores the original vertex coordinate data of all pixels in the output image of the projection device.
[0109] The vertex shader unit uses the coordinates of the four corner points in the normalized eight-point coordinate matrix as the target coordinates and performs vertex remapping operations on the original vertex coordinate data.
[0110] The vertex shader unit maps each original vertex coordinate to a new quadrilateral region defined by a normalized eight-point coordinate matrix based on the relative positional relationship between the original vertex coordinates and the original coordinates of the four corner points, thus stretching the originally trapezoidal screen area into a rectangular area.
[0111] After completing vertex remapping, the vertex shader unit outputs the remapped vertex coordinate data to the subsequent processing units of the rendering pipeline.
[0112] The subsequent processing unit of the rendering pipeline fills and renders the output image with pixels based on the remapped vertex coordinate data, generating a corrected rectangular image.
[0113] The control system outputs the corrected rectangular image to the optical engine module of the projection device for projection display.
[0114] The control system retrieves the real-time pitch angle values currently involved in this trapezoidal correction from memory.
[0115] The control system acquires the generation time of the trapezoidal correction trigger signal. This generation time is the system clock value when the steady-state determination unit outputs a steady-state confirmation signal and the trigger signal generation unit determines that both the attitude change and the equipment cooling time meet the threshold conditions.
[0116] The control system stores the real-time pitch angle value as a new corrected attitude reference in the memory of the projection device, replacing the pitch angle value in the original historical valid corrected attitude reference in the memory.
[0117] The control system stores the generation time of the trapezoidal correction trigger signal as the start time of the device cooling time in the memory of the projection device, replacing the correction completion time in the original historical effective correction attitude reference in the memory, for use in calculating the device cooling time during subsequent trigger determination.
[0118] The beneficial effects are as follows: This invention achieves a complete closed loop from calculation to rendering of correction parameters by converting the projection transformation parameter set into a normalized eight-point coordinate matrix and injecting it into the vertex shader unit of the image rendering pipeline, ensuring that the corrected rectangular image can be output to the projection optical engine in real time. Through vertex remapping operations, the system stretches the originally distorted trapezoidal image into a standard rectangle, avoiding image tearing or residual deformation. By updating the start time of the corrected attitude reference and device cooling time in real time, the system provides accurate historical data for the next trapezoidal correction trigger determination, enabling the calculation of attitude change and device cooling time to be based on the latest correction state, thereby ensuring the continuous and effective operation of the multi-condition collaborative triggering mechanism and improving the consistency and reliability of trapezoidal correction.
[0119] like Figure 2 The diagram shown is a functional block diagram of a projection screen trapezoidal correction system with a split-angle mode provided in an embodiment of the present invention.
[0120] The projection screen keystone correction system 100 with segmented angle modes described in this invention can be installed in an electronic device. Depending on the functions implemented, the projection screen keystone correction system 100 with segmented angle modes may include a zero-point calibration module 101, an attitude calculation and mode matching module 102, a dynamic trigger determination module 103, a parameter calculation module 104, and a rendering pipeline injection module 105. The modules described in this invention can also be referred to as units, which are a series of computer program segments that can be executed by the processor of an electronic device and can perform a fixed function, and are stored in the memory of the electronic device.
[0121] In this embodiment, the functions of each module / unit are as follows: The zero-point calibration module 101 is used to perform real-time zero-point offset compensation on the original three-axis acceleration data stream of the projection device to generate calibrated acceleration data of the projection device. The attitude calculation and pattern matching module 102 is used to perform spatial angle calculation on the calibrated acceleration data to obtain the real-time pitch angle of the projection device, and to perform interval assignment matching between the real-time pitch angle and the preset angular attitude interval to determine the trapezoidal correction mode of the real-time pitch angle. The dynamic trigger determination module 103 is used to perform sliding window triaxial standard deviation calculation on the calibrated acceleration data, generate transient fluctuation intensity indication value of the calibrated acceleration data, and generate trapezoidal correction trigger signal when the transient fluctuation intensity indication value is lower than the preset fluctuation threshold. The parameter calculation module 104 is used to perform pitch angle analysis on the real-time pitch angle based on the trapezoidal correction trigger signal and the trapezoidal correction mode to obtain the projection transformation parameter set; The rendering pipeline injection module 105 is used to inject the projection transformation parameter set into the image rendering pipeline of the projection device, and perform real-time geometric correction rendering on the output image of the projection device based on the injected image rendering pipeline to obtain the corrected rectangular image, and update the corrected attitude reference of the projection device.
[0122] In the several embodiments provided by this invention, it should be understood that the disclosed methods and systems can be implemented in other ways. For example, the system embodiments described above are merely illustrative; for instance, the division of modules is only a logical functional division, and other division methods may be used in actual implementation.
[0123] The modules described as separate components may or may not be physically separate. The components shown as modules may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs.
[0124] Furthermore, the functional modules in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or in the form of hardware plus software functional modules.
[0125] It will be apparent to those skilled in the art that the present invention is not limited to the details of the exemplary embodiments described above, and that the present invention can be implemented in other specific forms without departing from the spirit or essential characteristics of the present invention.
[0126] The embodiments of this application can acquire and process relevant data based on an artificial intelligence technology. Artificial intelligence is the theory, method, technology, and application system that uses digital computers or machines controlled by digital computers to simulate, extend, and expand human intelligence, perceive the environment, acquire knowledge, and use that knowledge to obtain optimal results.
[0127] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and are not intended to limit it. Although the present invention has been described in detail with reference to preferred embodiments, those skilled in the art should understand that modifications or equivalent substitutions can be made to the technical solutions of the present invention without departing from the spirit and scope of the technical solutions of the present invention.
Claims
1. A method for keystone correction of a projection image in a split-angle mode, characterized in that, The method includes: Real-time zero-point offset compensation is performed on the raw three-axis acceleration data stream of the projection device to generate calibrated acceleration data of the projection device. The calibrated acceleration data is used to calculate the spatial angle to obtain the real-time pitch angle of the projection device. The real-time pitch angle is then matched with the preset angular attitude range to determine the trapezoidal correction mode of the real-time pitch angle. The sliding window triaxial standard deviation is calculated on the calibrated acceleration data to generate a transient fluctuation intensity indicator value for the calibrated acceleration data. When the transient fluctuation intensity indicator value is lower than the preset fluctuation threshold, a trapezoidal correction trigger signal is generated. Based on the trapezoidal correction trigger signal and trapezoidal correction mode, the real-time pitch angle is analyzed to obtain the projection transformation parameter set; The projection transformation parameter set is injected into the image rendering pipeline of the projection device. Based on the injected image rendering pipeline, the output image of the projection device is rendered with real-time geometric correction to obtain the corrected rectangular image, and the corrected attitude reference of the projection device is updated.
2. The method for keystone correction of a projection image in a split-angle mode as described in claim 1, characterized in that, The process of performing real-time zero-point offset compensation on the raw three-axis acceleration data stream of the projection device to generate calibrated acceleration data for the projection device includes: Receive the bias loading command from the projection device; After responding to the bias loading command, the zero-point bias parameter field is read from the persistent storage medium of the projection device; Perform format and numerical range validation on the zero-point offset parameter field, and parse the zero-point offset parameter field into a three-axis offset vector when the validation passes. Vector difference analysis is performed on the raw acceleration data of the projection device and the three-axis offset vector. Based on the analysis results, the calibrated acceleration data of the projection device is output.
3. The method for keystone correction of a projection image in a split-angle mode as described in claim 1, characterized in that, The step of performing spatial angle calculation on the calibrated acceleration data to obtain the real-time pitch angle of the projection device, and matching the real-time pitch angle with a preset angular attitude range to determine the trapezoidal correction mode of the real-time pitch angle includes: Spatial angle calculation is performed on the calibrated acceleration data to obtain the real-time pitch angle of the projection device; The formula for calculating the real-time pitch angle is: ; in, For real-time pitch angle, It is the arctangent function. To determine the instantaneous acceleration components along the X-axis of the coordinate system corresponding to the calibrated acceleration data, To represent the instantaneous acceleration components along the Y-axis of the coordinate system corresponding to the calibrated acceleration data, To represent the instantaneous acceleration components along the Z-axis of the coordinate system corresponding to the calibrated acceleration data. Pi is a constant. Divide the angular attitude range of the projection device, associate the preset trapezoidal correction mode with the angular attitude range of the projection device, and use the intersection of boundary values in adjacent angular attitude ranges as the transition domain of adjacent angular attitude ranges. The real-time pitch angle and angular attitude range are matched to determine the trapezoidal correction mode of the real-time pitch angle. The boundary values of the angular attitude interval are sequentially traversed. When the value of the real-time pitch angle falls within or equals the boundary value of the angular attitude interval, it is determined that the real-time pitch angle belongs to the corresponding angular attitude interval, and the trapezoidal correction mode bound to the angular attitude interval is determined.
4. The method for keystone correction of a projection image in a split-angle mode as described in claim 3, characterized in that, The step involves performing a sliding window-based triaxial standard deviation calculation on the calibrated acceleration data to generate a transient fluctuation intensity indicator value for the calibrated acceleration data. When the transient fluctuation intensity indicator value is lower than a preset fluctuation threshold, a trapezoidal correction trigger signal is generated, including: Acquire the calibrated acceleration data and write it into a preset circular buffer, using the circular buffer as the data window to be analyzed; Calculate the first standard deviation of the data window to be analyzed at the current moment in the X-axis direction, the second standard deviation in the Y-axis direction, and the third standard deviation in the Z-axis direction; The first standard deviation, the second standard deviation, and the third standard deviation are combined to form the transient fluctuation intensity indicator value; When the transient fluctuation intensity indicator value is lower than the preset fluctuation threshold, a trapezoidal correction trigger signal is generated.
5. The method for keystone correction of a projection image in a split-angle mode as described in claim 4, characterized in that, When the transient fluctuation intensity indication value is lower than a preset fluctuation threshold, a trapezoidal correction trigger signal is generated, including: The fluctuation thresholds of the pre-calibrated acceleration data are preset, including a first fluctuation threshold, a second fluctuation threshold, and a third fluctuation threshold. When the first standard deviation is less than the first fluctuation threshold of the transient fluctuation intensity indicator, the second standard deviation is less than the second fluctuation threshold of the transient fluctuation intensity indicator, and the third standard deviation is less than the third fluctuation threshold of the transient fluctuation intensity indicator, the projection device is determined to be in a steady state, and a keystone correction trigger signal is generated.
6. The method for keystone correction of a projection image in a split-angle mode as described in claim 5, characterized in that, The trapezoidal correction trigger signal includes: The absolute difference between the real-time pitch angle and the historical attitude reference after effective correction of the projection device is used as the attitude change. The time interval between the historically corrected attitude references of the projection device is used as the device cooling time. A trapezoidal correction trigger signal is generated when the attitude change is not less than the pitch angle change trigger threshold of the projection device and the device cooling time is not less than the correction operation cooling time threshold of the projection device.
7. The method for keystone correction of a projection image in a split-angle mode as described in claim 1, characterized in that, The method, based on the trapezoidal correction trigger signal and trapezoidal correction mode, performs pitch angle analysis on the real-time pitch angle to obtain a set of projection transformation parameters, including: When the real-time pitch angle value is within the angular attitude range, the geometric gain matrix of the projection device is obtained by performing correlation mapping analysis on the trapezoidal correction mode according to the preset gain coefficient corresponding to the trapezoidal correction mode. Based on the trapezoidal correction trigger signal, the real-time pitch angle and geometric gain matrix are input into the vertex coordinate solution equation of the projection device to obtain the normalized coordinates of the four target points in the projected image of the projection device. The normalized coordinates of the four targets are encapsulated into a set of projection transformation parameters for the projection device.
8. The method for keystone correction of a projection image in a split-angle mode as described in claim 7, characterized in that, The step of performing correlation mapping analysis on the trapezoidal correction mode to obtain the geometric gain matrix of the projection device also includes: When the real-time pitch angle value is within the transition domain of adjacent angular attitude intervals, identify the first geometric gain matrix and the second geometric gain matrix corresponding to the adjacent angular attitude intervals. The transition geometry gain matrix of the projection device is calculated based on the relative position parameters of the real-time pitch angle in the transition domain. The formula for calculating the transition geometry gain matrix is: ; in, This is the first geometric gain matrix. This is the second geometric gain matrix. These are the interpolation coefficients obtained by linearly normalizing the real-time pitch angle within the transition domain. The transition geometry gain matrix; Replace the geometric gain matrix of the projection device with the transition geometric gain matrix.
9. The method for keystone correction of a projection image in a split-angle mode as described in claim 1, characterized in that, The process of injecting the projection transformation parameter set into the image rendering pipeline of the projection device, performing real-time geometric correction rendering on the output image of the projection device based on the injected image rendering pipeline, obtaining a corrected rectangular image, and updating the corrected attitude reference of the projection device includes: Obtain the display control interface of the projection device and convert the projection transformation parameter set into a normalized eight-point coordinate matrix; The display control interface is called to inject the normalized eight-point coordinate matrix into the image rendering pipeline of the projection device, so as to perform vertex remapping on the output image of the projection device and generate a corrected rectangular image. The real-time pitch angle is stored as the new corrected attitude reference, and the generation time of the trapezoidal correction trigger signal is used as the start time of the device cooling time.
10. A keystone correction system for a projection image in a split-angle mode, characterized in that, The system for implementing the projected image trapezoidal correction method in a split-angle mode as described in claim 1 includes: The zero-point calibration module is used to perform real-time zero-point offset compensation on the raw three-axis acceleration data stream of the projection device, and generate calibrated acceleration data of the projection device. The attitude calculation and pattern matching module is used to perform spatial angle calculation on the calibrated acceleration data to obtain the real-time pitch angle of the projection device, and to perform interval assignment matching between the real-time pitch angle and the preset angular attitude interval to determine the trapezoidal correction mode of the real-time pitch angle. The dynamic trigger judgment module is used to perform sliding window triaxial standard deviation calculation on the calibrated acceleration data, generate transient fluctuation intensity indication value of the calibrated acceleration data, and generate trapezoidal correction trigger signal when the transient fluctuation intensity indication value is lower than the preset fluctuation threshold. The parameter calculation module is used to perform pitch angle analysis on the real-time pitch angle based on the trapezoidal correction trigger signal and trapezoidal correction mode, and obtain the projection transformation parameter set. The rendering pipeline injection module is used to inject the projection transformation parameter set into the image rendering pipeline of the projection device. Based on the injected image rendering pipeline, the output image of the projection device is rendered with real-time geometric correction to obtain the corrected rectangular image and update the corrected attitude reference of the projection device.
Citation Information
Patent Citations
Projection equipment correction method, projection equipment and storage medium
CN118625860A
Projection optical apparatus
JP1992225213A