Method for correcting a projected image, projection device and computer program product

CN123020754APending Publication Date: 2026-10-30QINGDAO HISENSE LASER DISPLAY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510561948.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-04-29
Publication Date
2026-10-30

AI Technical Summary

Technical Problem

然而,当投影屏幕受到强光影响时,拍摄图像中的部分角点会被光斑覆盖,导致投影设备无法获取到所有角点的坐标,从而影响内部校正参数的准确性,进而内部校正的准确性

Benefits of technology

[0044]在本申请实施例中,在第一拍摄图像中存在部分角点被遮蔽,控制器无法识别出特征图卡中的所有角点的坐标的情况下,即控制器确定根据第一拍摄图像识别出的第一坐标的数量小于特征图卡中角点的数量时,控制器可以根据第一坐标与期望坐标的位置关系区分被识别出第一坐标的第一角点和未被识别出第一坐标的第二角点;而后,控制器可以根据相邻的第一角点的第一坐标计算出第二角点的第二坐标,从而补充完整角点坐标。因此,本实施例提供的方法使得控制器在角点被遮蔽的情况下,仍然可以基于完整的角点坐标计算内部校正参数,提升了内部校正参数的准确性,进而提高投影设备内部校正的准确性。此外,本申请实施例提供的方法使得控制器在部分角点被遮蔽的情况下仍然能够进行内部校正,因此,本实施例提供的方法可以提高内部校正的可用性。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN123020754A_ABST
    Figure CN123020754A_ABST
Patent Text Reader

Abstract

The embodiment of the application is suitable for the field of display technology, and provides a projection image correction method, a projection device and a computer program product, which are applied to a controller. The method comprises the following steps: projecting a feature map card to a projection screen, and acquiring a first shooting image containing the projection screen and the feature map card; performing coordinate identification on corner points in the feature map card based on the first shooting image, and acquiring first coordinates; if the number of the first coordinates is less than the number of the corner points, determining first corner points in which the first coordinates are identified among the corner points, and determining second corner points in which the first coordinates are not identified among the corner points, according to the positional relationship between each first coordinate and an expected coordinate of the corner points; calculating second coordinates of the second corner points based on the first coordinates corresponding to the first corner points adjacent to the positions of the second corner points; and calculating internal correction parameters based on the first coordinates, the second coordinates and the expected coordinates. The application can improve the accuracy of internal correction of the projection device.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of display technology, and in particular to a method for correcting projected images, a projection device, and a computer program product. Background Technology

[0002] With the development of projection technology, projection devices (such as laser TVs and projectors) are increasingly widely used in people's daily lives. To meet users' demands for a high-quality viewing experience, the image quality of projection devices, including resolution, brightness, and color, has been rapidly improved. However, during use, the projection screen may deform due to temperature changes, repeated raising and lowering, or prolonged hanging, resulting in an uneven screen. When the projection screen is uneven, it causes irregular deformation of the projected image, such as local stretching or distortion, leading to a discrepancy between the geometry of the projected image and the original image. Therefore, projection devices need to perform internal correction to restore the correct geometry of the projected image.

[0003] In existing technologies, when performing internal calibration, projection devices need to project a feature map containing multiple checkerboard patterns onto the projection screen and identify the coordinates of the corner points of each checkerboard pattern in the captured image. The projection device can calculate internal calibration parameters based on the coordinates of all corner points to perform internal calibration on the projected image. However, when the projection screen is affected by strong light, some corner points in the captured image may be covered by light spots, preventing the projection device from obtaining the coordinates of all corner points. This affects the accuracy of the internal calibration parameters, and consequently, the accuracy of the internal calibration. Summary of the Invention

[0004] In view of this, embodiments of this application provide a method for correcting projected images, a projection device, and a computer program product to improve the accuracy of internal correction within the projection device.

[0005] A first aspect of this application provides a method for correcting a projected image, applied to a controller, the method comprising:

[0006] A feature map card is projected onto a projection screen, and a first captured image containing the projection screen and the feature map card is acquired; the feature map card contains multiple corner points; the first captured image is an image obtained by capturing the projection screen, or an image obtained by transforming the captured image;

[0007] Based on the first captured image, the coordinates of the corner points in the feature map are identified to obtain the first coordinates;

[0008] If the number of first coordinates is less than the number of corner points, then based on the positional relationship between each first coordinate and the expected coordinate of the corner point, determine the first corner point among the corner points whose first coordinates are identified, and determine the second corner point among the corner points whose first coordinates are not identified;

[0009] Calculate the second coordinates of the second corner point based on the first coordinates corresponding to the first corner point adjacent to the second corner point;

[0010] Based on the first coordinate, the second coordinate, and the desired coordinate, internal correction parameters are calculated; the internal correction parameters are used to perform internal correction on the projected image.

[0011] In one possible implementation of the first aspect, determining a first corner point whose first coordinates are identified, and determining a second corner point whose first coordinates are not identified, based on the positional relationship between each first coordinate and the expected coordinates of the corner point, includes:

[0012] Based on the first coordinate and the expected coordinate of the corner point, determine the positional relationship between the first coordinate and the corner point;

[0013] If the positional relationship between the first coordinate and the corner point meets the preset conditions, then the first index corresponding to the first coordinate is determined according to the index of the corner point in the feature map card;

[0014] According to the first index, each first coordinate is written into a preset array; the number of rows in the preset array is the same as the number of rows of corner points in the feature map; the number of columns in the preset array is the same as the number of columns of corner points in the feature map.

[0015] Based on the positions in the preset array where the value is not empty, determine the first corner point among the corner points that is identified by the first coordinate;

[0016] Based on the positions in the preset array where the value is empty, determine the second corner point among the corner points that has not been identified by the first coordinate.

[0017] In one possible implementation of the first aspect, determining the positional relationship between the first coordinates and the corner point based on the first coordinates and the expected coordinates of the corner point includes:

[0018] Based on the first coordinate and the expected coordinate of the corner point, determine the distance and azimuth between the first coordinate and the corner point.

[0019] In one possible implementation of the first aspect, if the positional relationship between the first coordinate and the corner point satisfies a preset condition, then determining the first index corresponding to the first coordinate based on the index of the corner point in the feature map includes:

[0020] If the distance between the first coordinate and the corner point is less than the second threshold, and the azimuth angle between the first coordinate and the corner point is within the angle range, then the first index corresponding to the first coordinate is determined according to the index of the corner point in the feature map.

[0021] In one possible implementation of the first aspect, if the positional relationship between the first coordinate and the corner point satisfies a preset condition, then determining the first index corresponding to the first coordinate based on the index of the corner point in the feature map includes:

[0022] If the positional relationship between the first coordinate and the corner point satisfies a preset condition, then determine whether the number of corner points whose positional relationship satisfies the preset condition is greater than a first threshold.

[0023] If the number of corner points whose positional relationships satisfy the preset conditions is greater than the first threshold, then the first index corresponding to the first coordinate is determined based on the index of the corner point with the smallest distance value in the feature map.

[0024] In one possible implementation of the first aspect, projecting the feature map card onto the projection screen and acquiring a first captured image including the projection screen and the feature map card includes:

[0025] A feature map card is projected onto the projection screen, and a second captured image containing the projection screen and the feature map card is obtained; the second captured image is an image obtained by capturing the projection screen.

[0026] The coordinates of the first feature point in the second captured image are identified to obtain the third coordinates corresponding to the first feature point; the first feature point is used to match the projected image with the projection screen.

[0027] Calculate the first transformation matrix based on the third coordinate and the expected coordinates corresponding to the first feature point;

[0028] The second captured image is transformed based on the first transformation matrix to obtain the first captured image.

[0029] In one possible implementation of the first aspect, after calculating the first transformation matrix based on the third coordinate and the expected coordinates corresponding to the first feature point, the method further includes:

[0030] The coordinates of the second feature point in the second captured image are identified to obtain the fourth coordinates corresponding to the second feature point; the second feature point is used to scale the projected image.

[0031] Based on the first transformation matrix, the fourth coordinate of the second feature point is transformed to determine the fifth coordinate of the second feature point;

[0032] After calculating the internal correction parameters based on the first coordinate, the second coordinate, and the desired coordinate, the process includes:

[0033] Calculate the second transformation matrix based on the fifth coordinate and the expected coordinates corresponding to the second feature point;

[0034] The first coordinates of the first corner point are transformed according to the second transformation matrix to determine the sixth coordinates of the first corner point;

[0035] The second coordinates of the second corner point are transformed according to the second transformation matrix to determine the seventh coordinates of the second corner point;

[0036] The projected image is corrected based on the fifth coordinate, the internal correction parameter, the sixth coordinate, and the seventh coordinate.

[0037] In one possible implementation of the first aspect, correcting the projected image based on the fifth coordinate, the internal correction parameter, the sixth coordinate, and the seventh coordinate includes:

[0038] The projected image is scaled according to the fifth coordinate to match the projection screen.

[0039] Based on the internal correction parameters, the sixth coordinate, and the seventh coordinate, the pixels in the projected image after the image has been stretched are moved to perform internal correction on the projected image.

[0040] Thirdly, embodiments of this application provide a projection device including a controller and a projection screen, wherein the controller is used to perform the method as described in the first aspect above.

[0041] Fourthly, embodiments of this application provide a computer-readable storage medium storing a computer program that, when executed by a processor, implements the method described in the first aspect above.

[0042] Fifthly, embodiments of this application provide a computer program product that, when run on a projection device, causes the projection device to execute the method described in the first aspect.

[0043] Compared with the prior art, the embodiments of this application have the following advantages:

[0044] In this embodiment, when some corner points are obscured in the first captured image, and the controller cannot identify the coordinates of all corner points in the feature map, i.e., when the controller determines that the number of first coordinates identified from the first captured image is less than the number of corner points in the feature map, the controller can distinguish between first corner points with identified first coordinates and second corner points without identified first coordinates based on the positional relationship between the first coordinates and the desired coordinates. Then, the controller can calculate the second coordinates of the second corner points based on the first coordinates of adjacent first corner points, thereby completing the corner point coordinates. Therefore, the method provided in this embodiment allows the controller to still calculate internal correction parameters based on complete corner point coordinates even when corner points are obscured, improving the accuracy of the internal correction parameters and thus improving the accuracy of the projection device's internal correction. Furthermore, the method provided in this embodiment enables the controller to perform internal correction even when some corner points are obscured; therefore, the method provided in this embodiment can improve the usability of internal correction. Attached Figure Description

[0045] To more clearly illustrate the technical solutions in the embodiments of this application, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0046] Figure 1 These are schematic diagrams of projection scenarios of projection devices in some embodiments of this application;

[0047] Figure 2 This is a schematic diagram of the optical path of the projection device in some embodiments of this application;

[0048] Figure 3 This is a schematic diagram of the software architecture of a controller provided in an embodiment of this application;

[0049] Figure 4 This is a schematic diagram of the deformation of a projection screen provided in an embodiment of this application;

[0050] Figure 5 This is a schematic diagram of the software architecture of a controller provided in an embodiment of this application;

[0051] Figure 6 This is a schematic diagram of a method for correcting a projected image provided in an embodiment of this application;

[0052] Figure 7 This is a schematic diagram of a feature map card projected onto a projection screen according to an embodiment of this application;

[0053] Figure 8 This is a schematic diagram of a second corner point provided in an embodiment of this application;

[0054] Figure 9 This is a schematic diagram of another second corner point provided in an embodiment of this application;

[0055] Figure 10 This is a schematic diagram of another method for correcting projected images provided in an embodiment of this application;

[0056] Figure 11 This is a schematic diagram illustrating a first feature point provided in an embodiment of this application;

[0057] Figure 12 This is a schematic diagram of a correction process provided in an embodiment of this application. Detailed Implementation

[0058] In the following description, specific details such as particular system architectures and techniques are set forth for illustrative purposes and not for limitation, in order to provide a thorough understanding of the embodiments of this application. However, those skilled in the art will understand that this application may also be implemented in other embodiments without these specific details. In other instances, detailed descriptions of well-known systems, apparatuses, circuits, and methods have been omitted so as not to obscure the description of this application with unnecessary detail.

[0059] The technical solutions of the embodiments of this application will be described below with reference to the accompanying drawings. In the description of the embodiments of this application, unless otherwise stated, " / " means "or," for example, A / B can mean A or B; "and / or" in this text is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. Furthermore, in the description of the embodiments of this application, "multiple" refers to two or more than two.

[0060] Hereinafter, the terms "first," "second," and "third" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first," "second," or "third" may explicitly or implicitly include one or more of that feature.

[0061] Specific details, such as particular system architectures and techniques, are set forth for illustrative purposes and not for limitation, to provide a thorough understanding of the embodiments of this application. However, those skilled in the art will understand that this application can be implemented in other embodiments without these specific details. In other instances, detailed descriptions of well-known systems, apparatuses, circuits, and methods are omitted to avoid unnecessary detail that could obscure the description of this application.

[0062] The embodiments of this application can be applied to various types of projection devices. A projection device is a device that can project images or videos onto a screen. A projection device can project laser light of a specific color onto a screen to form a specific image through the refraction of optical components. During the projection process, a certain distance can be maintained between the projection device and the screen so that the image formed on the screen conforms to the focal length range of the optical components, thereby obtaining a clear image. The following will use a projector as an example to describe the projection device and projection control method.

[0063] Taking laser TVs as an example of projection devices, laser TVs can be connected to computers, cable TV networks, the internet, VCD (Video Compact Disc), DVD (Digital Versatile Disc Recordable), game consoles, DV camcorders, etc., through different interfaces to play corresponding video signals. Laser TVs are widely used in homes, offices, schools, and entertainment venues.

[0064] Figure 1 The following are schematic diagrams illustrating projection scenarios of projection devices in some embodiments of this application. Figure 2 A schematic diagram of the optical path of a projection device in some embodiments of this application is shown.

[0065] like Figure 1-2 As shown, the projection scenario provided in this application includes a projection device that can include a projection screen 1 and a controller 2. The projection screen 1 is fixed at a first position on the projection surface. For example, a wall can be used as the projection surface, and a screen can be fixed at the first position on the projection surface. The controller 2 is placed at a second position so that the image it projects matches the projection screen 1. The controller 2 includes a light source 100, an optical engine 200, and a lens 300. The light source 100 provides illumination for the optical engine 200, which modulates the light beam and outputs it to the lens 300 for imaging, projecting it onto the projection surface 400 to form a projected image. Since the light source 100, the optical engine 200, and the lens 300 are used together to emit projection light to project the projected image, in some embodiments of this application, the light source 100, the optical engine 200, and the lens 300 are collectively referred to as the light-emitting assembly.

[0066] In some embodiments, the light source 100 of the controller 2 includes a light emitter assembly 110 and an optical lens assembly 120. The light beam emitted by the light emitter assembly 110 can pass through the optical lens assembly 120 to provide illumination for the optical engine 200.

[0067] It should be noted that in the embodiments of this application, the light source 100 can be a laser light source, an LED light source, or a Liquid Crystal Display (LCD) light source, and this application does not specifically limit it. For example, taking the light source 100 as a laser light source, in some embodiments, the optomechanism 200 of the controller 2 can be implemented to include a blue optomechanism, a green optomechanism, a red optomechanism, and may also include a heat dissipation system, a circuit control system, etc.

[0068] In some embodiments, to enable user interaction, the controller 2 may run an operating system. The operating system is a computer program used to manage and control the hardware and software resources of the controller 2. The operating system can (control the display device) provide a user interface, allowing users to interact with the controller 2 and supporting the running of various applications.

[0069] It should be noted that the operating system can be a native operating system based on a specific operating platform, a third-party operating system that is deeply customized based on a specific operating platform, or an independent operating system specifically developed for display devices.

[0070] Figure 3 This is a schematic diagram of the software architecture of a controller provided in an embodiment of this application.

[0071] An operating system can be divided into different modules or levels based on the functions it implements, for example... Figure 3 As shown, in some embodiments, the system is divided into four layers, from top to bottom: the Applications layer (referred to as the "Application Layer"), the Application Framework layer (referred to as the "Framework Layer"), the System Library layer, and the Kernel layer.

[0072] In some embodiments, the application layer provides services and interfaces for applications, enabling the controller 2 to run applications and interact with the user based on the applications. The application layer may run at least one application, which may be a built-in Windows program, system settings program, or clock program of the operating system; or it may be an application developed by a third-party developer. In specific implementations, the application packages in the application layer are not limited to the examples above.

[0073] The framework layer provides application programming interfaces (APIs) and a programming framework for applications. The application framework layer includes predefined functions. It acts as a central processing unit, determining the actions taken by applications within the application layer. Through the API, applications can access system resources and obtain system services during execution.

[0074] like Figure 3 As shown, the application framework layer in this embodiment includes a view system, managers, and content providers. The view system designs and implements the application's interface and interactions, and includes lists, grids, text boxes, and buttons. The managers include at least one of the following modules: an activity manager for interacting with all running activities in the system; a location manager for providing system services or applications with access to system location services; a package manager for retrieving various information related to application packages currently installed on the device; a notification manager for controlling the display and clearing of notification messages; and a window manager for managing icons, windows, toolbars, wallpapers, and desktop widgets on the user interface.

[0075] In some embodiments, the Activity Manager manages the lifecycle of individual applications and common navigation and back functions, such as controlling application exit, opening, and back actions. The Window Manager manages all window programs, such as obtaining the screen size, determining if a status bar is present, locking the screen, capturing the screen, and controlling changes to the display window, such as shrinking the display window, shaking the display, or distorting the display.

[0076] In some embodiments, the system runtime library layer can provide support for the framework layer. When the framework layer is used, the operating system runs the instruction library contained in the system runtime library layer, such as the C / C++ instruction library, to implement the functions to be performed by the framework layer.

[0077] In some embodiments, the kernel layer is a functional layer situated between the hardware and software of controller 2. The kernel layer can implement functions such as hardware abstraction, multitasking, and memory management. For example, ... Figure 3As shown, hardware drivers can be configured in the kernel layer. The drivers included in the kernel layer can be at least one of the following: audio driver, display driver, Bluetooth driver, camera driver, WIFI driver, USB driver, HDMI driver, sensor driver (such as fingerprint sensor, temperature sensor, pressure sensor, etc.), and power driver, etc.

[0078] Projection screens may deform during use. For example, some height-adjustable projection screens may bend internally after repeated raising and lowering; similarly, some frame-type projection screens may bend internally due to prolonged hanging; or changes in indoor and outdoor temperatures when the projection screen is unpacked may also cause localized bending within the screen. When a projection screen deforms, it will cause irregular distortion and aberration in the projected image, thus affecting the user experience.

[0079] Figure 4 This illustration shows a deformation diagram of a projection screen provided in an embodiment of this application. Figure 4 The solid line represents the image displayed normally on the projection screen, while the dashed line represents the abnormal image displayed due to screen unevenness. This demonstrates that an uneven projection screen can cause irregular geometric deformations within the displayed image.

[0080] Therefore, when the projection screen deforms, the controller needs to perform internal correction on the projected image to restore its correct geometry. In existing projection technologies, internal correction involves projecting a feature map with multiple checkerboard patterns onto the projection screen. By identifying the coordinates of each checkerboard corner in the captured image, internal correction parameters are calculated to complete the projection image correction. However, when the projection screen is affected by strong light interference, some corners in the captured image may be obscured by light spots, preventing the projection device from fully acquiring corner coordinate data. This ultimately affects the accuracy of the internal correction parameters and reduces the correction effect.

[0081] In view of this, this application provides a method for correcting projected images, which can be applied to a controller. Using the method provided in this application, when some corner points in the first captured image are obscured, and the controller cannot identify the coordinates of all corner points in the feature map, i.e., when the controller determines that the number of first coordinates identified from the first captured image is less than the number of corner points in the feature map, the controller can distinguish between first corner points with identified first coordinates and second corner points without identified first coordinates based on the positional relationship between the first coordinates and the desired coordinates. Then, the controller can calculate the second coordinates of the second corner points based on the first coordinates of adjacent first corner points, thereby completing the corner point coordinates. Therefore, the correction method provided in this application effectively solves the problem of missing coordinates caused by corner points being covered by light spots under strong light interference. By calculating the missing corner point coordinates, comprehensive corner point information is obtained, thereby improving the accuracy of internal correction parameters and ultimately significantly improving the internal correction accuracy of the projection device, while also enhancing the adaptability and robustness of the solution in complex environments.

[0082] Furthermore, most current ultra-short-throw projectors with internal distortion correction rely on smartphone photography. Before internal distortion correction can be performed, the projected image must be aligned with the screen. If the projected image and screen are not aligned, internal distortion correction is impossible. The process of aligning the projected image with the screen and then performing internal distortion correction is cumbersome and provides a poor user experience.

[0083] Therefore, this application provides a correction method capable of simultaneously performing entrance correction and internal correction. Through the method provided by this application, since the controller can perform entrance correction and internal correction simultaneously using a single captured image, the correction efficiency of the controller can be improved. Furthermore, the method provided by this application simplifies user operation and improves the user experience.

[0084] To address this, this patent proposes a solution that can simultaneously perform correction of projected images and screen alignment, as well as internal distortion correction. This solution enables rapid correction, optimizes user operation, and improves user experience.

[0085] The technical solution of this application will be described below through specific embodiments.

[0086] Figure 5 A schematic diagram of the software architecture of a controller provided in an embodiment of this application is shown. Figure 5 As shown, the controller can consist of an image acquisition module, an image recognition module, a parameter calculation module, a geometric correction module, and an optical display module.

[0087] The image acquisition module is used to capture images containing both the projection screen and the feature map. Specifically, the image acquisition module can be a camera or an image transmission unit. When the image acquisition module is a camera, after the controller projects the feature map onto the projection screen, the camera can capture an image of the projection screen containing both the projection screen and the feature map. The camera can then transmit the captured image to the image recognition module via a wired connection. When the image acquisition module is an image transmission unit, the user can first capture an image of the projection screen containing both the projection screen and the feature map using a terminal device, such as a mobile phone. The user can then wirelessly transmit the captured image to the image transmission unit, which can then transmit the received image to the image recognition module.

[0088] The image recognition module can use image recognition algorithms to identify the coordinates of feature points in a captured image, such as the coordinates of green squares, the coordinates of screen borders, and the coordinates of corner points.

[0089] The parameter calculation module can be used to calculate internal correction parameters and screen entry correction parameters based on the coordinates of corner points and / or feature points, and transmit these parameters to the geometric correction module for correction operations. For example, the parameter calculation module can calculate a first transformation matrix based on the third coordinates of four first feature points, and then calculate screen entry correction parameters based on the first transformation matrix and the fourth coordinates of identified second feature points. The first feature points can be used to align the projected image with the projection screen. The second feature points can be used to scale the projected image. The screen entry correction parameters are used to align the projected image with the screen. Specifically, the screen entry correction parameters can be the fifth coordinates of each second feature point. The parameter calculation module can also calculate internal correction parameters based on the first and second coordinates of the corner points and the desired coordinates. Specifically, the internal correction parameters can be a displacement scale. The parameter calculation module can also calculate a second transformation matrix based on the projected image and the fifth coordinates of each second feature point, and determine the coordinates of multiple pixels used for internal correction operations based on the second transformation matrix.

[0090] The geometric correction module can first stretch or compress the four vertices of the projected image based on the calculated entrance correction parameters to align the projected image with the screen. Then, the geometric correction module can determine multiple pixels to be controlled based on the fourth or fifth coordinates corresponding to each corner point, and control the movement of the pixels to be controlled according to internal correction parameters.

[0091] An optical display module can be used to project images that a projection device needs to display. When the projection device performs automatic correction, the optical display module can project a feature map onto the projection screen; after the automatic correction is completed, the optical display module can project the corrected image onto the projection screen. Specifically, the optical display module can consist of a light source component, a light modulation component, and a lens. The light source component consists of a light-emitting device, lenses, etc. The light-emitting device can be a full-color laser or a laser with a color wheel. The light modulation component can be any one of a Digital Micromirror Device (DMD), a Liquid Crystal Display (LCD), or a Liquid Crystal on Silicon (LCOS). The light modulation component can modulate the light output from the light source component according to the image display information. The lens is used to project the modulated light onto the projection screen.

[0092] Reference Figure 6 This diagram illustrates a method for correcting a projected image according to an embodiment of this application. This method can be applied to... Figure 1 The controller 2 shown above, specifically the method for correcting the projected image, may include the following steps:

[0093] S601. Project the feature map card onto the projection screen and acquire a first captured image containing the projection screen and the feature map card.

[0094] In this embodiment, when a user needs to correct the image projected by the controller, the user can issue a correction command to the controller. The controller can respond to the correction command by projecting a feature map onto the projection screen and acquiring a first image containing both the projection screen and the feature map. The feature map can consist of multiple checkerboard squares, and multiple corner points of the checkerboard squares can exist on the feature map. The color of the checkerboard squares in the feature map is not limited to black and white. The size of the feature map can be determined based on the resolution and total number of pixels of the projection device. For example, when the projection device is a 4K resolution laser TV, the feature map can consist of 3840×2160 checkerboard squares. When the controller projects the feature map onto the projection screen, the boundary of the feature map projected onto the projection screen can be aligned with the edge of the projection screen or located outside the edge of the projection screen.

[0095] Specifically, the correction command can include a first correction command and a second correction command. When the user determines that the boundary of the image projected by the controller is aligned with the boundary of the projection screen, but the image displayed on the projection screen exhibits irregular geometric distortion, i.e., internal correction of the projected image is required, the user can initiate a first correction command to the controller. The controller can capture a first image of the projection screen, including both the projection screen and the feature map, using a camera on the terminal device or the projection device.

[0096] When a user determines that the image displayed on the projection screen exhibits irregular geometric deformation, and the boundary of the image projected by the controller is not aligned with the boundary of the projection screen—meaning simultaneous on-screen correction and internal correction of the projected image is required—the user can initiate a second correction command to the controller. In response to the second correction command, the controller can capture an image of the projection screen using a camera on the terminal device or projection device, obtaining a second captured image containing both the projection screen and the feature map. This second captured image can be the image acquired by the controller in response to the second correction command. The controller can then calculate on-screen correction parameters and a first transformation matrix based on the second captured image. The on-screen correction parameters are used to align the second captured image with the projection screen; that is, the on-screen correction parameters are used to perform on-screen correction operations. The first transformation matrix is ​​used to transform the second captured image to obtain a first captured image after on-screen correction. For the specific method of calculating the on-screen correction parameters, please refer to the second embodiment of this application; it will not be repeated here.

[0097] S602. Based on the first captured image, the coordinates of the corner points in the feature map are identified to obtain the first coordinates.

[0098] In this embodiment, after acquiring the first captured image, the controller can use a preset coordinate detection algorithm to identify the coordinates of corner points on the feature map in the first captured image to obtain multiple first coordinates. These first coordinates can be the coordinates identified by the controller based on the first captured image. It should be noted that in this application, the controller can perform coordinate identification operations using any algorithm capable of coordinate identification, such as boundary detection algorithms or corner detection algorithms. This embodiment is not intended to limit the specific method by which the controller performs coordinate identification.

[0099] After performing the coordinate recognition operation, the controller can determine whether the number of recognized first coordinates is less than the number of corner points within the projection screen border in the first captured image. If the controller determines that the number of recognized first coordinates is equal to the number of corner points within the projection screen border in the first captured image, then the controller can assume that no corner points are obscured and the corner point coordinates have been recognized. At this time, the controller can calculate the internal correction parameters based on all the recognized first coordinates and the expected coordinates corresponding to each corner point. For the specific method of calculating the internal correction parameters, please refer to S605 of this embodiment, and understand it by replacing "second coordinates" with "first coordinates" in S605. If the controller determines that the number of recognized first coordinates is greater than the number of corner points within the projection screen border in the first captured image, then the controller may not perform the internal correction operation.

[0100] The process of the controller obtaining the coordinates of the corner points to calculate internal parameters can be divided into two cases.

[0101] Scenario 2: Obtain the coordinates of all corner points in the feature map to calculate the internal correction parameters.

[0102] When the controller has completed the screen entry correction operation, the boundary of the feature map card projected by the controller onto the projection screen is already aligned with the edge of the projection screen. At this time, since all corner points of the feature map card are located within the edge of the projection screen, the controller does not need to set the area to be identified and performs coordinate identification on all corner points of the feature map card based on the first captured image, so as to calculate the internal correction parameters based on the coordinates of all corner points of the feature map card.

[0103] Scenario 2: Obtain the coordinates of some corner points in the feature map card to calculate the internal correction parameters.

[0104] When the controller does not perform screen ingress correction, the boundary of the feature map projected by the controller onto the projection screen may not be aligned with the edge of the projection screen. Figure 7 This diagram illustrates a feature map card provided in an embodiment of this application projected onto a projection screen. Figure 7 The solid black line in the image represents the border of the projection screen. For example... Figure 7 As shown, the boundary of the feature map projected onto the projection screen is outside the screen's border, meaning the feature map is not aligned with the screen, and its area is larger than the screen's area. Since internal correction is caused by screen deformation, only the image located inside the screen's border needs correction. Therefore, in Figure 7 In the case shown, coordinate identification is performed on some corner points in the feature map card to calculate internal correction parameters based on the coordinates of some corner points in the feature map card.

[0105] In this scenario, the controller can set the area within the border of the projection screen as the region to be identified, and perform coordinate recognition on the corner points within this region of the first captured image to perform internal correction operations based on the corner points. Specifically, before performing coordinate recognition on the corner points, the controller can also determine the coordinates of the vertices of the projection screen in the first captured image. Then, the controller can determine the region to be identified in the first captured image based on the coordinates of the vertices of the projection screen.

[0106] In one possible implementation, when the user-initiated correction instruction is the first correction instruction, meaning the controller only needs to perform internal correction operations, and the first captured image is an image captured by a camera on the terminal device or projection device on the projection screen, the controller can directly identify the coordinates of the vertices of the projection screen based on the first captured image to obtain the coordinates of the vertices of the projection screen in the first captured image.

[0107] In one possible implementation, when the user-initiated correction command is a second correction command, meaning the controller needs to simultaneously perform screen-in correction and internal correction operations, the first captured image is obtained by transforming the second captured image captured by the controller from the camera on the terminal device or projection device. Therefore, the controller can use the second captured image to identify the coordinates of multiple vertices on the projection screen, obtain the coordinates of these vertices in the second captured image, and perform coordinate transformation on the coordinates of these vertices in the second captured image according to a first transformation matrix to determine the coordinates of these vertices in the first captured image. The method for determining the first transformation matrix is ​​described in the second embodiment of this application.

[0108] S603. If the number of first coordinates is less than the number of corner points, then based on the positional relationship between each first coordinate and the expected coordinate of the corner point, determine the first corner point whose first coordinate is identified, and determine the second corner point whose first coordinate is not identified.

[0109] In this embodiment, if the controller determines that the number of identified first coordinates is less than the number of corner points within the projection screen border, the controller can determine that there are currently corner points whose first coordinates have not been identified. The controller can then determine, based on the positional relationship between each first coordinate and the expected coordinates of the corner point, the first corner points whose first coordinates have been identified from all corner points within the projection screen border, and the second corner points whose first coordinates have not been identified from all corner points within the projection screen border. The expected coordinates of the corner points can be pre-stored in the controller by the developers.

[0110] In one possible implementation, after the controller determines that the number of identified first coordinates is less than the number of corner points within the projection screen border, it can sequentially obtain the positional relationship between each first coordinate and each corner point. Specifically, for any identified first coordinate, the controller can determine the positional relationship between the first coordinate and each corner point based on the first coordinate and the expected coordinates corresponding to each corner point. Then, the controller can determine the first index corresponding to the first coordinate based on the index of the corner point whose positional relationship satisfies the preset conditions in the feature map card within the projection screen border. For example, when the corner point whose positional relationship satisfies the preset conditions is the corner point in the 15th row and 8th column inside the projection screen border, the index of this corner point can be (15, 8).

[0111] After obtaining the first index corresponding to each first coordinate, the controller can sequentially write each first coordinate into a preset array based on the first index. The number of rows in the preset array is the same as the number of rows and columns of the corner points located within the projection screen border in the feature map, both of which are the same number of rows and columns. After writing all first coordinates into the preset array, the controller can identify the non-empty positions in the preset array as first corner points whose first coordinates have been identified. The controller can also identify empty positions in the preset array as first corner points whose first coordinates have not been identified.

[0112] In this embodiment, the controller can determine the first index corresponding to the first coordinate based on the positional relationship between the first coordinate and the corner point, and then sequentially write each first coordinate into a structured preset array according to the first index. Therefore, the controller can accurately distinguish between the first corner point and the second corner point by filling the preset array with the first coordinates. Thus, the method provided in this embodiment enables the controller to effectively filter out the second corner point, providing an accurate spatial reference and data basis for subsequent coordinate filling, thereby improving the accuracy of the controller in performing coordinate filling.

[0113] In one possible implementation, for a given first coordinate, after determining the positional relationship between the first coordinate and each corner point, the controller can determine whether there are any corner points whose positional relationship with the first coordinate satisfies a preset condition. If the controller determines that there are corner points whose positional relationship with the first coordinate satisfies the preset condition, the controller can further determine whether the number of corner points whose positional relationship with the first coordinate satisfies the preset condition is greater than a first threshold. Specifically, the first threshold can be 1.

[0114] If the controller determines that the number of corner points whose positional relationship with the first coordinate satisfies a preset condition is equal to a first threshold, the controller can directly determine the index of that corner point as the first index corresponding to the first coordinate. If the controller determines that the number of corner points whose positional relationship satisfies the preset condition is greater than the first threshold, the controller can obtain the directional relationship between the first coordinate and the adjacent points of each corner point, and determine the corner point whose directional relationship is consistent with the theoretical direction corresponding to the corner point from among the multiple corner points whose positional relationship satisfies the preset condition. The projection device can determine the index of the corner point whose directional relationship is consistent with the theoretical direction corresponding to the corner point, and / or the index of the corner point with the smallest distance value from the first coordinate as the first index corresponding to the first coordinate. Specifically, the projection device can use the direction of the line connecting the first coordinate and the adjacent points of the corner point whose positional relationship satisfies the preset condition as the directional relationship between the first coordinate and the adjacent points of the corner point.

[0115] The method provided in this embodiment allows the controller to select the corner point with the smallest distance from the desired coordinates to determine the index when the number of corner points whose positional relationships meet preset conditions exceeds a first threshold. Therefore, the method provided in this embodiment effectively improves the anti-interference capability of the controller during corner point matching and reduces the probability of incorrect positioning.

[0116] In one possible implementation, the positional relationship between the first coordinate and the corner point can include the distance between the first coordinate and the corner point, as well as the azimuth angle between them. After determining that the number of identified first coordinates is less than the number of corner points located within the projection screen border, the controller can calculate the distance and azimuth angle between the first coordinate and the corner point based on the first coordinate and the expected coordinates of the corner point. Then, the controller can determine whether the positional relationship between the first coordinate and the corner point meets preset conditions based on the distance and azimuth angle. Specifically, if the distance between a corner point and the first coordinate is less than a second threshold, and the azimuth angle between the corner point and the first coordinate is within a preset angle range, the controller can determine that the positional relationship between the corner point and the first coordinate meets the preset conditions. For example, the second threshold can be half the chessboard grid spacing; the angle range can be determined based on the relative position between the expected coordinate of the corner point and the first coordinate. For instance, when the first coordinate is to the right of the predicted coordinate of the corner point, the angle range between the corner point and the first coordinate can be from -30° to +30° to the right.

[0117] In this embodiment, the controller can combine the distance value and the azimuth angle to match the first coordinate and the corner point. Therefore, the method provided in this embodiment can improve the accuracy of matching the first coordinate and the corner point, thereby laying a more accurate data foundation for corner filling and internal correction parameter calculation.

[0118] S604. Calculate the second coordinates of the second corner point based on the first coordinates corresponding to the first corner point adjacent to the position of the second corner point.

[0119] In this embodiment, after the controller determines the second corner point and the first corner point, it can calculate the second coordinate of the second corner point based on the first coordinate of the first corner point that is adjacent to the position of the second corner point.

[0120] In one possible implementation, the controller can determine a linear function by performing linear fitting on the first coordinates of multiple first corner points that are adjacent to the second corner point and have the same row number as the second corner point. The controller can then determine the second coordinates corresponding to the second corner point based on the fitted linear function and the preset chessboard grid spacing.

[0121] Figure 8 This is a schematic diagram of a second corner point provided in an embodiment of this application. Figure 8 As shown, a corner point in the upper right corner of the chessboard is obscured by a light spot, making it impossible to identify the first coordinates corresponding to that corner point. In this case, since the second corner point is located at the upper right edge of the projection screen, meaning there are no first corner points to the right of the second corner point, the projection device can perform a linear fit based on the first coordinates of the two first corner points to the left of the second corner point, and determine the second coordinates corresponding to the second corner point based on the fitted linear function and the preset chessboard spacing.

[0122] Figure 9 This is a schematic diagram of another second corner point provided in an embodiment of this application. (See diagram below.) Figure 9 As shown, a corner point in the lower left corner of the checkerboard is obscured by a light spot, making it impossible to identify the first coordinates corresponding to that corner point. Since this second corner point is a non-boundary corner point, meaning there are first corner points to its left and right, the projection device can perform a linear fit based on the first coordinates of the first corner point to its left and the first coordinates of the first corner point to its right, and determine the second coordinates corresponding to the second corner point based on the fitted linear function and the preset checkerboard spacing.

[0123] S605. Calculate the internal correction parameters based on the first coordinate, the second coordinate, and the desired coordinate.

[0124] In this embodiment, after determining the first or second coordinates corresponding to each corner point, the controller can calculate internal correction parameters based on the expected coordinates, first coordinates, and second coordinates of all corner points. These internal correction parameters can be used to perform internal correction on the projected image.

[0125] Specifically, the internal calibration parameters can be a displacement table. For each corner point within the projection screen bezel, after determining the first or second coordinates corresponding to each corner point, the controller can calculate the displacement value corresponding to the corner point based on the first or second coordinates, and generate a displacement table based on the displacement values ​​of all corner points. The displacement values ​​can include displacement values ​​in the x-direction and displacement values ​​in the y-direction. For the first corner point, the controller can calculate the displacement value based on the difference between the first coordinate and the desired coordinate; for the second corner point, the controller can calculate the displacement value based on the difference between the second coordinate and the desired coordinate.

[0126] In this embodiment, the controller can distinguish between a first corner point with identified coordinates and a second corner point with unidentified coordinates, and use the coordinate information of adjacent first corner points to calculate the position of the second corner point. Then, the controller combines the first coordinates, the supplemented second coordinates, and the expected coordinates of the corner points to calculate internal correction parameters. This method effectively solves the problem of missing corner points affecting the accuracy of correction parameters in strong light environments. By reasonably filling in the coordinates of unidentified corner points, the controller enables the projection device to calculate internal correction parameters based on complete corner point coordinates. Therefore, the method provided in this embodiment improves the accuracy and anti-interference capability of the projection device's internal correction, thereby enhancing the stability and accuracy of the projected image correction.

[0127] Figure 10 A flowchart illustrating a specific implementation of another projection image correction method provided in the second embodiment of this application is shown. See also Figure 10 Compared to Figure 6 The embodiment described herein provides another method for correcting projected images, including steps S1001 to S1010, which are detailed below:

[0128] S1001. Project the feature map card onto the projection screen and acquire a second captured image containing the projection screen and the feature map card.

[0129] In this embodiment, when the user determines that the image displayed on the projection screen exhibits irregular geometric deformation, and the boundary of the image projected by the controller is not aligned with the boundary of the projection screen (i.e., simultaneous ingress and internal corrections are required for the projected image), the user can initiate a second correction command to the controller. In response to the second correction command, the controller can project a feature map onto the projection screen and capture an image of the projection screen using a camera on the terminal device or projection device, obtaining a second captured image containing the projection screen and the feature map. The second captured image can be an image captured by a camera on the terminal device or projection device. The feature map can include at least one first feature point. The number of first feature points can be greater than or equal to the number of parameters in the first transformation matrix. The first feature points can be used to match the projected image with the projection screen, i.e., to align the boundary of the projected image with the border of the projection screen. Specifically, the first feature point can be a corner point of a checkerboard of a specific color in the feature map. For example, the first feature point can be the upper left corner of a green checkerboard in the feature map. The projected image can be a feature map card projected onto the projection screen, or it can be any image projected onto the projection screen other than a feature map card.

[0130] S1002. Perform coordinate recognition on the first feature point in the second captured image to obtain the third coordinate corresponding to the first feature point.

[0131] In this embodiment, the feature map may include multiple first feature points for aligning the second captured image with the projection screen. Each first feature point may be a corner point located inside the screen border. The number of first feature points in the feature map can be determined by the number of parameters in the transformation matrix. For example, when the transformation matrix contains 8 different parameters, the number of first feature points in the feature map can be greater than or equal to 4. Each first feature point may be a corner point on a checkerboard of a specific color. For example, the first feature point may be the upper left corner of a green checkerboard. See also... Figure 11 This illustration shows a schematic diagram of a first feature point provided in an embodiment of this application. For example... Figure 11 As shown, the projection screen's border can contain four gray checkerboard squares. The first feature point can be the top-left corner of each gray checkerboard square. After acquiring the second image, the controller performs coordinate recognition on the first feature point in the second image to obtain the corresponding third coordinates.

[0132] In one possible implementation, when the first feature point is a corner point at a specific position on a checkerboard of a specific color in the feature map, after acquiring the second captured image, the controller can first perform a color space conversion operation on the second captured image to improve the accuracy of the recognition of the corresponding first feature point. Specifically, the controller can convert the second captured image from the RGB color space to the HSV color space. Then, based on the color space-converted second captured image, the controller can perform coordinate recognition on each first feature point in the second captured image to obtain the third coordinates corresponding to each first feature point. Specifically, the controller can identify the boundary of the checkerboard of the specific color using a boundary detection algorithm, and then obtain the coordinates of the four corner points of the checkerboard of the specific color based on the identified boundary, and determine the coordinates of the corner point at the specific position as the third coordinates corresponding to the first feature point.

[0133] S1003. Calculate the first transformation matrix based on the third coordinate and the expected coordinates corresponding to the first feature point.

[0134] In this embodiment, after the controller obtains the third coordinates corresponding to the first feature point, it can input the third coordinates and desired coordinates corresponding to all the first feature points into a preset transformation matrix function to calculate the first transformation matrix.

[0135] In one possible implementation, the transformation matrix in the projection device can be as follows.

[0136]

[0137] in, The transformation matrix can be denoted as k1, k2, k3, k4, k5, k6, k7, and k8. k1 can be the first parameter of the transformation matrix, k2 the second parameter, k3 the third parameter, k4 the fourth parameter, k5 the fifth parameter, k6 the sixth parameter, k7 the seventh parameter, and k8 the eighth parameter. (x, y) can represent the coordinates before the transformation by the transformation matrix.

[0138] Accordingly, the transformation matrix function can be shown below.

[0139]

[0140] S1004. Perform coordinate recognition on the second feature point in the second captured image to obtain the fourth coordinate corresponding to the second feature point.

[0141] In this embodiment, after calculating the first transformation matrix, the controller can perform coordinate recognition on all the second feature points in the second captured image to obtain the fourth coordinates corresponding to each second feature point. The second feature points can then be used to perform image scaling operations on the projected image.

[0142] In one possible implementation, the second feature point can be a vertex of the projection screen. When the second feature point is a vertex of the projection screen, since the border of the projection screen is usually black, to improve the accuracy of the controller's coordinate recognition of the second feature point, the controller can first convert the second captured image into a grayscale image before performing coordinate recognition. Then, the controller can input the grayscale image into a boundary detection algorithm to identify the border of the projection screen from the grayscale image, and extract the fourth coordinates corresponding to each vertex of the projection screen based on the identified border.

[0143] S1005. Perform coordinate transformation on the fourth coordinate of the second feature point according to the first transformation matrix to determine the fifth coordinate of the second feature point.

[0144] In this embodiment, the entrance correction parameter can be the fifth coordinates corresponding to multiple second feature points. The controller can control the compression or stretching of the projected image based on the fifth coordinates corresponding to each second feature point, thereby aligning the projected image with the projection screen. Specifically, after obtaining the fourth coordinates corresponding to each second feature point, the controller can perform coordinate transformation on the fourth coordinates of each second feature point according to the first transformation matrix to determine the fifth coordinates corresponding to each second feature point. The fifth coordinates corresponding to the second feature points can be used to control the scaling of the projected image to match the projection screen, that is, to align the boundaries of the projected image with the borders of the projection screen.

[0145] S1006. Perform image transformation on the second captured image based on the first transformation matrix to obtain the first captured image.

[0146] In this embodiment, after calculating the first transformation matrix, the controller can perform image transformation on the second captured image using the first transformation matrix to obtain the first captured image. The size of the first captured image obtained through image transformation is determined by the resolution of the projection device. For example, when the projection device is a 4K resolution laser TV, the size of the first captured image obtained through image transformation can be 3840×2160 pixels.

[0147] S1007. Calculate the internal correction parameters based on the first captured image.

[0148] In this embodiment, the specific method for the controller to calculate the internal correction parameters is described in the first embodiment of this application, and will not be repeated here.

[0149] S1008. Calculate the second transformation matrix based on the expected coordinates corresponding to the fifth coordinate and the second feature point.

[0150] In this embodiment, after obtaining the fifth coordinate corresponding to the second feature point, the controller can calculate the second transformation matrix based on the fifth coordinate corresponding to the second feature point and the expected coordinate corresponding to the second feature point. The specific method by which the controller calculates the second transformation matrix is ​​similar to the specific method for calculating the first transformation matrix. Readers can refer to the content on calculating the first transformation matrix in S1003 of this embodiment, and replace "first transformation matrix" with "second transformation matrix," "expected coordinate corresponding to the first feature point" with "fifth coordinate," and "third coordinate" with "expected coordinate corresponding to the second feature point" to understand the specific method by which the controller calculates the second transformation matrix.

[0151] S1009. Determine the sixth coordinate of the first corner point and the seventh coordinate of the second corner point based on the second transformation matrix.

[0152] In this embodiment, after obtaining the second transformation matrix, the controller can calculate the coordinates of each pixel that needs to be moved based on the second transformation matrix. Specifically, the controller can perform coordinate transformation on the first coordinate of the first corner point based on the second transformation matrix to determine the sixth coordinate of the first corner point. The controller can also perform coordinate transformation on the second coordinate of the second corner point based on the second transformation matrix to determine the seventh coordinate of the second corner point.

[0153] S1010. Correct the projected image based on the fifth coordinate, internal correction parameters, sixth coordinate, and seventh coordinate.

[0154] In this embodiment, after calculating the fifth coordinates corresponding to each second feature point, the projection device can scale the projected image according to these fifth coordinates to complete screen alignment and match the projected image to the projection screen. Then, the controller can determine multiple pixels that need to be moved based on the sixth and seventh coordinates, and move the pixels in the scaled projected image according to internal correction parameters to perform internal correction. Specifically, when the internal correction parameters are a displacement table, the displacement table can include the displacement values ​​of each corner point in the x-direction and y-direction. For the pixel corresponding to the sixth or seventh coordinate, the controller can control the pixel's movement based on its displacement values ​​in the x-direction and y-direction to perform internal correction of the projected image. Finally, the controller can project the corrected projected image onto the projection screen.

[0155] The method provided in this embodiment allows the controller or user to complete projection screen correction and internal correction based on a single image capture. Therefore, the method provided in this embodiment can improve the correction efficiency of the controller, simplify user operation steps, and enhance the user experience.

[0156] Figure 12 A schematic diagram of a correction process provided in an embodiment of this application is shown. Figure 12 As shown, when the controller needs to perform both entrance correction and internal correction simultaneously, it can project a feature map containing multiple green checkerboard squares onto the projection screen. Then, the controller can capture a second image containing both the feature map and the projection screen using a camera mounted on it. The controller can perform coordinate recognition based on the second image to obtain the third coordinates corresponding to the top-left corner of each green checkerboard square. Then, the controller can calculate a first transformation matrix based on the third coordinates of the top-left corner of each green checkerboard square and its corresponding desired coordinates. After calculating the first transformation matrix, the controller can perform coordinate recognition on each vertex of the projection screen in the second image to obtain the fourth coordinates corresponding to each vertex. Then, the controller can perform coordinate transformation on each of the fourth coordinates using the first transformation matrix to calculate the fifth coordinates corresponding to each vertex of the projection screen, and use the fifth coordinates of all vertices as entrance correction parameters.

[0157] After obtaining the first transformation matrix, the controller can further transform the second captured image using the first transformation matrix to obtain the first captured image used to calculate the internal correction parameters. Then, the controller can identify the coordinates of each corner point in the first captured image to obtain the first coordinates corresponding to each corner point. If the number of first coordinates identified by the controller equals the number of corner points, the controller can directly calculate the displacement table based on the first coordinates and desired coordinates corresponding to each corner point. If the number of first coordinates identified by the controller is less than the number of corner points, the controller can fit the second coordinates corresponding to the unidentified corner points based on the first coordinates, and calculate the displacement table based on the first coordinates, second coordinates, and desired coordinates.

[0158] After determining the displacement scale, the controller can calculate the second transformation matrix based on the fifth coordinates and desired coordinates of each vertex on the projection screen. The controller can then perform coordinate transformations on the coordinates of each corner point in the first captured image using the second transformation matrix to determine the coordinates of each pixel that needs to be moved during internal correction. The controller can then perform image scaling on the projected image based on the fifth coordinates of each vertex, and control pixel movement according to the displacement scale and the coordinates of each pixel to complete both entrance correction and internal correction.

[0159] It should be noted that the sequence number of each step in the above embodiments does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.

[0160] The embodiments described above are only used to illustrate the technical solutions of this application, and are not intended to limit it. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application, and should all be included within the protection scope of this application.

Claims

1. A method for correcting a projected image, characterized in that, Applied to controllers, including: A feature map card is projected onto a projection screen, and a first captured image containing the projection screen and the feature map card is acquired; the feature map card contains multiple corner points; the first captured image is an image obtained by capturing the projection screen, or an image obtained by transforming the captured image; Based on the first captured image, the coordinates of the corner points in the feature map are identified to obtain the first coordinates; If the number of first coordinates is less than the number of corner points, then based on the positional relationship between each first coordinate and the expected coordinate of the corner point, determine the first corner point among the corner points whose first coordinates are identified, and determine the second corner point among the corner points whose first coordinates are not identified; Calculate the second coordinates of the second corner point based on the first coordinates corresponding to the first corner point adjacent to the second corner point; Based on the first coordinate, the second coordinate, and the desired coordinate, internal correction parameters are calculated; the internal correction parameters are used to perform internal correction on the projected image.

2. The method according to claim 1, characterized in that, The step of determining the first corner point whose first coordinates are identified, and determining the second corner point whose first coordinates are not identified, based on the positional relationship between each first coordinate and the expected coordinates of the corner point, includes: Based on the first coordinate and the expected coordinate of the corner point, determine the positional relationship between the first coordinate and the corner point; If the positional relationship between the first coordinate and the corner point meets the preset conditions, then the first index corresponding to the first coordinate is determined according to the index of the corner point in the feature map card; According to the first index, each first coordinate is written into a preset array; the number of rows in the preset array is the same as the number of rows of corner points in the feature map; the number of columns in the preset array is the same as the number of columns of corner points in the feature map. Based on the positions in the preset array where the value is not empty, determine the first corner point among the corner points that is identified by the first coordinate; Based on the positions in the preset array where the value is empty, determine the second corner point among the corner points that has not been identified by the first coordinate.

3. The method according to claim 2, characterized in that, Determining the positional relationship between the first coordinate and the corner point based on the first coordinate and the expected coordinate of the corner point includes: Based on the first coordinate and the expected coordinate of the corner point, determine the distance and azimuth between the first coordinate and the corner point.

4. The method according to claim 3, characterized in that, If the positional relationship between the first coordinate and the corner point satisfies a preset condition, then the first index corresponding to the first coordinate is determined according to the index of the corner point in the feature map, including: If the distance between the first coordinate and the corner point is less than the second threshold, and the azimuth angle between the first coordinate and the corner point is within the angle range, then the first index corresponding to the first coordinate is determined according to the index of the corner point in the feature map.

5. The method according to claim 2, characterized in that, If the positional relationship between the first coordinate and the corner point satisfies a preset condition, then the first index corresponding to the first coordinate is determined according to the index of the corner point in the feature map, including: If the positional relationship between the first coordinate and the corner point satisfies a preset condition, then determine whether the number of corner points whose positional relationship satisfies the preset condition is greater than a first threshold. If the number of corner points whose positional relationships satisfy the preset conditions is greater than the first threshold, then the first index corresponding to the first coordinate is determined based on the index of the corner point with the smallest distance value in the feature map.

6. The method according to any one of claims 1-5, characterized in that, The step of projecting a feature map card onto a projection screen and acquiring a first captured image containing the projection screen and the feature map card includes: A feature map card is projected onto the projection screen, and a second captured image containing the projection screen and the feature map card is obtained; the second captured image is an image obtained by capturing the projection screen. The coordinates of the first feature point in the second captured image are identified to obtain the third coordinates corresponding to the first feature point; the first feature point is used to match the projected image with the projection screen. Calculate the first transformation matrix based on the third coordinate and the expected coordinates corresponding to the first feature point; The second captured image is transformed based on the first transformation matrix to obtain the first captured image.

7. The method according to claim 6, characterized in that, After calculating the first transformation matrix based on the third coordinate and the expected coordinates corresponding to the first feature point, the method further includes: The coordinates of the second feature point in the second captured image are identified to obtain the fourth coordinates corresponding to the second feature point; the second feature point is used to scale the projected image. Based on the first transformation matrix, the fourth coordinate of the second feature point is transformed to determine the fifth coordinate of the second feature point; After calculating the internal correction parameters based on the first coordinate, the second coordinate, and the desired coordinate, the process includes: Calculate the second transformation matrix based on the fifth coordinate and the expected coordinates corresponding to the second feature point; The first coordinates of the first corner point are transformed according to the second transformation matrix to determine the sixth coordinates of the first corner point; The second coordinates of the second corner point are transformed according to the second transformation matrix to determine the seventh coordinates of the second corner point; The projected image is corrected based on the fifth coordinate, the internal correction parameter, the sixth coordinate, and the seventh coordinate.

8. The method according to claim 7, characterized in that, The step of correcting the projected image based on the fifth coordinate, the internal correction parameter, the sixth coordinate, and the seventh coordinate includes: The projected image is scaled according to the fifth coordinate to match the projection screen. Based on the internal correction parameters, the sixth coordinate, and the seventh coordinate, the pixels in the projected image after the image has been stretched are moved to perform internal correction on the projected image.

9. A projection device, characterized in that, The projection device includes a controller and a projection screen, the controller being configured to perform the method as described in any one of claims 1-8.

10. A computer program product, characterized in that, It includes a computer program, which, when run, causes the method for correcting the projected image as described in any one of claims 1-8 to be performed.