Naked-eye 3D dynamic-area image fusion method and apparatus, device, and medium
By dynamically allocating thread resources and rendering processing, the problem of insufficient computing power in vehicle head-up display devices was solved, enabling smooth display of 3D images and improving image processing efficiency and user experience.
Patent Information
- Application Number
- PCT/CN2025/079784
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-07-31
- Filing Date
- 2025-02-28
- Publication Date
- 2026-02-05
AI Technical Summary
The vehicle head-up display device's processing system lacks sufficient computing power when processing 3D images, resulting in screen stuttering and an inability to provide enough computing power to support the real-time display of full-frame 3D images.
By dynamically allocating thread resources, different regions in the image are rendered using relatively fixed threads. Dynamic parameters are dynamically updated to determine the target thread and pixel position, reducing the number of calculation parameters, improving calculation efficiency and accuracy, reducing thread group occupancy, maximizing the utilization of threads in the thread group, and improving the parallelism of image processing.
It solves the problem of insufficient computing power, ensures the smoothness of 3D images, improves image processing efficiency and user driving experience, especially providing real-time display of 3D holographic images in vehicle head-up displays.
Smart Images

Figure CN2025079784_05022026_PF_FP_ABST
Abstract
Description
Methods, devices, equipment and media for dynamic region image fusion in naked-eye 3D
[0001] This application claims priority to Chinese Patent Application No. 202411040094.5, filed with the Chinese Patent Office on July 31, 2024, the entire contents of which are incorporated herein by reference. Technical Field
[0002] This application relates to the field of 3D head-up display technology, such as methods, apparatus, devices and media for dynamic region image fusion in naked-eye 3D. Background Technology
[0003] Glasses-free 3D display technology refers to a 3D display technology that allows users to view 3D images directly with the naked eye without wearing special 3D glasses or other auxiliary equipment, presenting a 3D effect. Glasses-free 3D display technology has a wide range of applications, such as movie playback, interactive projection, stage performances, and head-up displays.
[0004] In vehicle head-up display applications, naked-eye 3D display technology can provide drivers with richer and more intuitive information, increasing driving safety and convenience. In particular, naked-eye 3D displays combined with augmented reality effects can provide 3D holographic images in head-up displays, helping drivers obtain road information in an immersive way.
[0005] In the process of developing this application, the following problems were found in the related technologies: The head-up display devices of the vehicle are generally equipped with processing systems that can be used by mobile terminals such as Android and HarmonyOS. However, the processing systems of the related technologies can generally provide sufficient computing power for 2D image processing. For 3D images, when the GPU (Graphics Processing Unit) calculates the pixels of the entire screen display area to achieve image fusion, the device may not have enough computing power to provide sufficient computing power support for the full-frame 3D image, which may cause screen stuttering. Summary of the Invention
[0006] This application provides a method, apparatus, device, and medium for dynamic region image fusion in naked-eye 3D, which can dynamically allocate thread resources and use relatively fixed threads to dynamically render different regions in the image. This solves the problem of high computing power consumption when processing full-frame 3D images in related technologies, and is suitable for projection devices with low computing power, ensuring the smoothness of 3D images.
[0007] According to one aspect of this application, a method for dynamic region image fusion in naked-eye 3D is provided, comprising:
[0008] After completing the display of the current projected image, if it is determined that the current projected image contains a 3D fusion object to be moved, then the target dynamic region of the 3D fusion object in the next projected image is obtained.
[0009] Based on the target dynamic region, the position of the target pixel corresponding to each target thread is determined, and the target thread is used to render the corresponding target pixel to obtain the next projected image.
[0010] The next projected image is projected onto the display screen for display.
[0011] Optionally, based on the target dynamic region, the position of the target pixel corresponding to each target thread is determined, including:
[0012] Based on the target dynamic region, extract the target partition description information and screen anchoring information, and obtain multiple dynamic parameters based on the target partition description information and screen anchoring information;
[0013] Based on the dynamic parameters and screen anchoring information, the position of the target pixel point corresponding to each target thread is determined.
[0014] The advantage of this setup is that by dynamically updating dynamic parameters, the position of the target pixel corresponding to each target thread can be determined, and the rendering pixels of each thread can be dynamically allocated, so that the image fusion processing of the display area can be completed by calling the smallest thread.
[0015] Optionally, the target partition description information includes the first coordinates of the center point of the target dynamic region in the next projected image, and the size information of the target dynamic region in the next projected image;
[0016] The screen anchoring information includes the size information of the next projected image and the second coordinates of the anchor point in the next projected image.
[0017] The advantage of this setting is that by setting the target partition description information and screen anchoring information as described above, the number of calculation parameters for the target dynamic region can be reduced, ensuring both calculation efficiency and accuracy of the target dynamic region calculation.
[0018] Optionally, based on the target partition description information and screen anchoring information, multiple dynamic parameters are obtained, including:
[0019] Based on the size information of the target dynamic region in the next projected image, determine the region width and region height of the target dynamic region in the next projected image;
[0020] Based on the first coordinate and the second coordinate, determine the lateral coordinate difference and the longitudinal coordinate difference between the center point of the target dynamic area and the anchor point.
[0021] The advantage of this setting is that by calculating dynamic parameters based on the target partition description information and screen anchoring information, the amount of calculation of dynamic parameters is reduced, the real-time update of dynamic parameters can be guaranteed, and the projection latency of 3D fusion objects can be reduced.
[0022] Optionally, based on the dynamic parameters and screen anchoring information, the target pixel positions corresponding to each target thread are determined, including:
[0023] The computational shader in the image processing engine is invoked to determine the position of the target pixel corresponding to the target thread within the target dynamic region according to the following formula:
[0024] id.x1=id.x2+LocalX+ScreenWidth / 2-ΔWidth / 2;
[0025] id.y1=id.y2+LocalY+ScreenHeight / 2-ΔHeight / 2;
[0026] Wherein, id.x1 and id.y1 are the horizontal and vertical coordinates of the target pixel, respectively; id.x2 and id.y2 are the horizontal and vertical coordinates of the pixel processed by the target thread in the current projected image, respectively; LocalX and LocalY are the horizontal and vertical relative coordinates between the center point of the target dynamic region and the anchor point, respectively; ScreenWidth is the screen width of the next projected image; ScreenHeight is the screen height of the next projected image; ΔWidth is the width of the target dynamic region in the next projected image; and ΔHeight is the reference height of the target dynamic region in the next projected image.
[0027] The advantage of this setup is that by using the above formula to calculate the target pixel position corresponding to each target thread, the target thread's pixel to be rendered can be updated quickly by combining dynamic parameters. The calculation is simple and has good real-time performance.
[0028] Optionally, after obtaining multiple dynamic parameters based on the target partition description information and screen anchoring information, the method further includes:
[0029] Based on the target dynamic region and the dynamic parameters, target threads for image fusion of the target dynamic region are determined in the computation shader.
[0030] The advantage of this setup is that it minimizes the occupancy of thread groups, maximizes the utilization of threads within thread groups, avoids occupancy of thread groups for other tasks, and maximizes the computational performance of the compute shader.
[0031] Optionally, based on the target dynamic region and the dynamic parameters, each target thread for image fusion of the target dynamic region is determined in the computation shader, including:
[0032] Determine the thread arrangement pattern in each thread group predefined in the compute shader;
[0033] Based on the thread arrangement pattern, the region width, and the region height, at least one target thread group is defined in the computation shader for image fusion of the target dynamic region, and multiple target threads are determined based on the target thread group.
[0034] The advantage of this setup is that by determining the target thread group and target thread based on the thread arrangement mode, the occupancy of the thread group can be minimized, the utilization of the threads in the thread group can be maximized, and the occupancy of the thread group of other tasks can be avoided, thereby maximizing the computational performance of the computation shader, improving the parallelism of image processing, and improving image processing efficiency.
[0035] Optionally, the target thread in the compute shader is used to render the unique target pixel corresponding to it according to the fusion rule to obtain the rendering result value of the target pixel. After all target threads have completed rendering, the target dynamic region is determined and the image fusion process is completed.
[0036] The advantage of this setup is that by mapping threads to pixels one-to-one, and rendering a single thread to only one pixel at a time, the characteristics of compute shaders can be fully utilized, improving the parallelism of image processing and increasing image processing efficiency.
[0037] Optionally, the next projected image is a 3D head-up display image;
[0038] The display screen is an imaging element configured on the vehicle; the imaging element includes the vehicle's windshield, a reflective film disposed in the vehicle, or an imaging window disposed in the vehicle.
[0039] The advantage of this setup is that by using a naked-eye 3D dynamic region image fusion method when generating 3D head-up display images, virtual reality can be used to provide users with a good driving experience, reduce the computational pressure on the vehicle system, improve computational efficiency, and ensure smooth visuals.
[0040] Optionally, the 3D blending object to be moved can be an augmented reality (AR) cue element;
[0041] The AR prompt elements specifically include AR navigation elements and AR obstacle prompt elements.
[0042] The advantage of this setup is that by projecting AR navigation elements and AR obstacle prompts into the 3D head-up display image, virtual reality can be used to provide users with a good driving experience. At the same time, the 3D-displayed AR prompts can improve the accuracy of the instructions, readability, and interactivity.
[0043] Optionally, the target dynamic region of the 3D fused object in the next projected image is obtained, including:
[0044] When the movement condition of the AR cue element is detected, obtain the first position description information of the AR cue element in the real world;
[0045] Based on the first position description information of the AR prompt element in the real world, determine the second position description information of the AR prompt element in the head-up display coordinate system in the virtual image plane;
[0046] Based on the second location description information, determine the dynamic area in the next projected image where the AR prompt element will be displayed.
[0047] The advantage of this setting is that by determining the target dynamic region based on the position description information of the real world and the virtual image plane, the accuracy of the target dynamic region determination can be improved, making the position of the generated 3D fused object accurate, providing users with accurate guidance and improving the visual experience.
[0048] Optionally, the target dynamic region of the next projected image includes both the left-eye and right-eye visible images of the 3D fused object.
[0049] The advantage of this setup is that by displaying the left-eye and right-eye visible images of the 3D fusion object in the target dynamic area, a naked-eye 3D effect can be achieved, improving the user's viewing experience.
[0050] According to another aspect of this application, a naked-eye 3D dynamic region image fusion device is provided, comprising:
[0051] The dynamic region determination module is configured to, after completing the display of the current projected image, if it is determined that the current projected image contains a 3D fusion object to be moved, then obtain the target dynamic region of the 3D fusion object in the next projected image.
[0052] The projection image generation module is configured to determine the position of the target pixel corresponding to each target thread based on the target dynamic region, and to use the target thread to render the corresponding target pixel to obtain the next projection image.
[0053] The projection display module is configured to project the next projected image onto a display screen for projection display.
[0054] According to another aspect of this application, a projection device is provided, the projection device comprising:
[0055] At least one processor; and
[0056] A memory communicatively connected to the at least one processor; wherein,
[0057] The memory stores a computer program that can be executed by the at least one processor, the computer program being executed by the at least one processor to enable the at least one processor to perform the naked-eye 3D dynamic region image fusion method according to any embodiment of this application.
[0058] According to another aspect of this application, a computer-readable storage medium is provided, the computer-readable storage medium storing computer instructions for causing a processor to execute and implement the naked-eye 3D dynamic region image fusion method according to any embodiment of this application.
[0059] The technical solution of this application embodiment, after completing the display of the current projected image, if it is determined that the current projected image contains a 3D fusion object to be moved, then obtains the target dynamic region of the 3D fusion object in the next projected image, determines the position of the target pixel corresponding to each target thread based on the target dynamic region, and uses the target thread to perform rendering processing on the corresponding target pixel to obtain the next projected image, and projects the next projected image onto the display screen for projection display. This method can dynamically allocate the target pixels processed by the target thread, use a relatively fixed thread to dynamically render different regions in the image, and perform image fusion only on the dynamic region where the 3D fusion object is located in each frame of the projected image, without processing other parts of the image. This solves the problem of insufficient computing power when the processing system of related technologies processes full-frame 3D images, and is adapted to projection devices with low computing power, ensuring the smoothness of 3D images.
[0060] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of this application, nor is it intended to limit the scope of this application. Other features of this application will become readily apparent from the following description. Attached Figure Description
[0061] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying 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.
[0062] Figure 1 is a flowchart of a naked-eye 3D dynamic region image fusion method according to Embodiment 1 of this application;
[0063] Figure 2 is a schematic diagram of a head-up display imaging process according to an embodiment of this application;
[0064] Figure 3 is a schematic diagram of a dynamic region according to an embodiment of this application;
[0065] Figure 4 is a schematic diagram of a naked-eye 3D imaging principle according to an embodiment of this application;
[0066] Figure 5 is a schematic diagram of the projection effect of a naked-eye 3D image in a head-up display scene according to an embodiment of this application;
[0067] Figure 6 is a flowchart of another naked-eye 3D dynamic region image fusion method provided according to Embodiment 2 of this application;
[0068] Figure 7 is a schematic diagram of a thread group arrangement pattern provided according to an embodiment of this application;
[0069] Figure 8 is a schematic diagram of a thread arrangement pattern provided according to an embodiment of this application;
[0070] Figure 9 is a diagram illustrating the relationship between a thread group and a thread according to an embodiment of this application.
[0071] Figure 10 is a schematic diagram of image fusion region division according to an embodiment of this application;
[0072] Figure 11 is a flowchart of dynamic region image fusion for naked-eye 3D according to an embodiment of this application;
[0073] Figure 12 is a schematic diagram of the structure of a naked-eye 3D dynamic region image fusion device according to Embodiment 3 of this application;
[0074] Figure 13 is a schematic diagram of the projection device for implementing the naked-eye 3D dynamic region image fusion method according to the embodiments of this application. Detailed Implementation
[0075] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort should fall within the scope of protection of the present application.
[0076] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0077] This application uses a head-up display of a vehicle as an example to illustrate a dynamic region image fusion method for naked-eye 3D, where the vehicle is intended to represent various forms of transportation. For example, transportation may include, but is not limited to, land-based transportation such as vehicles, air transportation such as aircraft (or flying vehicles), or water or underwater transportation.
[0078] Optionally, in the application of head-up displays (HUDs) in vehicles, the HUD device can process and display projected images. The HUD device may include at least one display as a display pixel unit, at least one optical grating device as a pixel imaging unit, at least one optical mirror device as an imaging unit, and at least one optical sensor as an image capture unit. The front-end display portion of the naked-eye 3D display technology needs to calculate and generate projected images through the pixel imaging unit, allowing the left and right eyes to see different images, which are then merged in the brain to create a 3D effect.
[0079] Example 1
[0080] Figure 1 is a flowchart of a naked-eye 3D dynamic region image fusion method provided in Embodiment 1 of this application. This embodiment is applicable to the situation of image fusion of dynamic regions in a 3D projection image. This method can be executed by a naked-eye 3D dynamic region image fusion device, which can be implemented in hardware and / or software, and is generally configured in a projection device with image processing capabilities. As shown in Figure 1, the method includes:
[0081] S110. After completing the display of the current projected image, if it is determined that the current projected image contains a 3D fusion object to be moved, then obtain the target dynamic region of the 3D fusion object in the next projected image.
[0082] Figure 2 is a schematic diagram of an optional head-up display imaging process. As shown in Figure 2, the image source in the HUD (Head-Up Display) emits light and images, which are then projected onto the windshield of the vehicle via a plane mirror and a curved mirror. The windshield is an optional imaging element. If the vehicle is equipped with other imaging elements, the image can also be projected onto those other imaging elements. The eye box refers to the range of imaging light that can be received at the driver's eye height. The content of the head-up display actually observed from the driver's perspective is actually a virtual image on a virtual image plane in space. By correcting the projected image, the virtual image in the virtual image plane can be adjusted, ultimately achieving the effect of changing the image from the driver's perspective.
[0083] Optionally, in most naked-eye 3D projection display scenarios, the projected content is video or dynamic image. Whether it is video or dynamic image, it is actually projecting multiple frames of images in a short period of time. For example, if the application scenario is a head-up display in a vehicle, the projected image can be a 3D head-up display image, and each frame of the projected image includes the 3D head-up display content at the current time point.
[0084] It is understandable that for a moving 3D fusion object, its position on the display screen is different at different points in time. In each frame of the image, the area displaying the 3D fusion object to be moved can be used as the dynamic area.
[0085] Figure 3 is a schematic diagram of an optional dynamic region. As shown in Figure 3, Position A can be the current dynamic region in the current projected image, which displays the 3D fusion object to be moved. Position B and Position C show two optional dynamic regions. In the next projected image, if the 3D fusion object to be moved needs to be moved to Position B, then Position B is the target dynamic region in the next projected image. It can also be moved to both Position B and Position C at the same time. Then Position B and Position C are two different target dynamic regions. The shape and number of dynamic regions are not limited here. Figure 3 is only an example.
[0086] Optionally, the 3D fusion object can refer to the 3D target to be displayed in the image. Taking the head-up display in the vehicle as an example, the AR navigation element in the head-up display screen can be a 3D target, and the AR obstacle prompt element can also be a 3D target. When there are multiple different obstacles, each obstacle corresponds to an AR obstacle prompt element, each AR obstacle prompt element can be a 3D target.
[0087] Figure 4 illustrates an optional naked-eye 3D imaging principle. In Figure 4, through optical design of the HUD, the user's left eye sees image P1 through an imaging structure, such as a windshield, while the right eye sees image P2. Due to the binocular parallax formed by images P1 and P2, the objects seen by the user have a sense of depth and space. The image seen by the right eye is combined in the user's brain to form a stereoscopic image with depth. Naked-eye 3D imaging can adjust the binocular parallax by changing the position between the two images, thus changing the perceived distance of the virtual image (the actual distance of the virtual image remains unchanged). The closer the two images are, the closer the perceived distance of the virtual image; conversely, the farther apart the two images are, the farther the perceived distance of the virtual image.
[0088] Optionally, the 3D fusion object can be generated by fusing the left-eye and right-eye images of the 3D target to be displayed. When the 3D fusion object to be moved is generated for the first time, the 3D fusion object can be fused in the area where it is first displayed. This is equivalent to a static fusion method in the initial state, but the 3D fusion object is dynamically displayed during subsequent movement.
[0089] Optionally, the target dynamic region of the 3D fusion object in the next projected image can be determined based on the pre-set 3D projection content. The target dynamic region of the 3D fusion object in the next projected image can be determined based on the information collected in real time. For example, in the application scenario of vehicle head-up display, the location of the head-up display element in the next projected image, i.e., the target dynamic region, can be determined based on the vehicle information collected in real time.
[0090] S120. Based on the target dynamic region, determine the position of the target pixel corresponding to each target thread, and use the target thread to render the corresponding target pixel to obtain the next projected image.
[0091] Optionally, after determining the target dynamic region of the 3D fused object in the next projected image, the target partition description information and screen anchoring information can be determined.
[0092] Optionally, the target partition description information includes the first coordinates of the center point of the target dynamic region in the projected image, and the size information of the target dynamic region in the projected image; the screen anchoring information includes the size information of the projected image and the second coordinates of the anchor point in the projected image.
[0093] Optionally, the shape of the target dynamic region can be a rectangle, triangle, circle, ellipse, or an irregular shape; there are no restrictions here.
[0094] Optionally, the selected size information will vary depending on the shape of the target dynamic region. For example, for a rectangular, triangular, or elliptical target dynamic region, the size information is selected as the region width and region height. For a circular target dynamic region, the size information can be selected as the radius of the circle. For an irregularly shaped target dynamic region, the minimum bounding box of the target dynamic region can be determined first using the regular shape, and then the width and height of the minimum bounding box of the target dynamic region can be determined. Only a few optional methods for obtaining size information are shown here, and no specific limitation is made on the size information.
[0095] Optionally, the size information of the target dynamic region in the projected image may be the same as or different from the shape and size information of the target dynamic region in the next projected image, depending on the specific display requirements of the 3D projected image.
[0096] Optionally, based on conventional projection technology, the projected image is generally a regular image. The size information of the projected image can include the screen height and screen width. Of course, the projected image can also be an irregular image. When the projected image is an irregular image, the size information of the projected image can be the size information of the smallest bounding box of the projected image. Here, the size information of the projected image is not specifically limited.
[0097] Optionally, the anchor point can refer to a pre-marked point in the projected image, which can be used as a reference point in the projected image. The anchor point can be the center point of the projected image, the corner points, etc., but there is no limitation on this.
[0098] Optionally, based on the target partition description information and screen anchoring information, the position of the target pixel corresponding to each target thread in the next projected image can be determined, and then the target thread can be used to render the corresponding target pixel.
[0099] Understandably, to reduce the resource consumption of image fusion, a target thread for image fusion of the next projected image is determined based on each thread performing image fusion on the current projected image. Specifically, if the number of pixels occupied by the dynamic region in the current projected image is the same as that in the next projected image, then each thread performing image fusion on the current projected image is used as the target thread. If the number of pixels occupied by the dynamic region in the current projected image is less than the number of pixels in the next projected image, then a new thread is determined based on each thread performing image fusion on the current projected image, and they are all used as the target thread. If the number of pixels occupied by the dynamic region in the current projected image is greater than the number of pixels in the next projected image, then some threads are selected from each thread performing image fusion on the current projected image as the target thread. No limitation is imposed here.
[0100] Optionally, the current dynamic region in the current projected image can be one or multiple. After all target pixels have completed the rendering process, the rendered image is used as the next projected image.
[0101] S130. Project the next image onto the display screen for projection display.
[0102] Optionally, when the application scenario is a head-up display function for a vehicle, the display screen can be an imaging element configured on the vehicle; the imaging element may include the vehicle's windshield, a reflective film installed in the vehicle, or an imaging window installed in the vehicle, but is not limited thereto. Imaging through the windshield is called W-HUD (Windshield-HUD), and imaging through the imaging window is called C-HUD (Combiner HUD). Optionally, the imaging window is generally made of transparent material (transparent to visible light) or an imaging plate with a certain curvature.
[0103] Figure 5 is a schematic diagram of the projection effect of an optional naked-eye 3D image in a head-up display scenario. As shown in Figure 5, the black box in the middle can be regarded as a dynamic area. The 3D fusion object in it is the navigation arrow in the AR navigation element. The ghosting effect indicated by the arrow in the figure is actually the superposition effect of the left and right eye images. From the driver's perspective, it is a 3D dynamic arrow. The rest can be regarded as a simulated segmentation of the windshield and other areas inside the vehicle from the driver's perspective, which can be ignored.
[0104] The technical solution of this application embodiment, after completing the display of the current projected image, if it is determined that the current projected image contains a 3D fusion object to be moved, then obtains the target dynamic region of the 3D fusion object in the next projected image, determines the position of the target pixel corresponding to each target thread based on the target dynamic region, and uses the target thread to perform rendering processing on the corresponding target pixel to obtain the next projected image, and projects the next projected image onto the display screen for projection display. This method can dynamically allocate the target pixels processed by the target thread, use a relatively fixed thread to dynamically render different regions in the image, and perform image fusion only on the dynamic region where the 3D fusion object is located in each frame of the projected image, without processing other parts of the image. This solves the problem of insufficient computing power when the processing system of related technologies processes full-frame 3D images, and is adapted to projection devices with low computing power, ensuring the smoothness of 3D images.
[0105] Example 2
[0106] Figure 6 is a flowchart of a naked-eye 3D dynamic region image fusion method provided in Embodiment 2 of this application. This embodiment further illustrates the naked-eye 3D dynamic region image fusion method based on the above embodiments. As shown in Figure 6, the method includes:
[0107] S210. After completing the display of the current projected image, if it is determined that the current projected image contains a 3D fusion object to be moved, then obtain the target dynamic region of the 3D fusion object in the next projected image.
[0108] Optionally, when the application scenario is the head-up display function of a vehicle, the 3D fusion object to be moved can be an AR prompt element; the AR prompt element can specifically include AR navigation elements and AR obstacle prompt elements, but is not limited to the AR prompt elements exemplified above.
[0109] Optionally, AR prompt elements can refer to elements that use augmented reality technology, combined with real-time vehicle assistance information, to provide prompts to users in the form of a head-up display; AR navigation elements can refer to navigation elements that guide users with virtual models, arrows, dashed lines, and other elements; AR obstacle prompt elements can refer to elements that indicate obstacles around the vehicle to users with indicators, such as triangles, horizontal lines, and other indicators.
[0110] Optionally, the target dynamic region of the 3D fused object in the next projected image is obtained, including:
[0111] When the movement condition of the AR cue element is detected, obtain the first position description information of the AR cue element in the real world;
[0112] Based on the first position description information of the AR prompt element in the real world, determine the second position description information of the AR prompt element in the head-up display coordinate system in the virtual image plane;
[0113] Based on the second location description information, determine the dynamic area in the next projected image where the AR prompt element will be displayed.
[0114] Optionally, the movement conditions of AR prompt elements may differ depending on the type of AR prompt element. For example, for AR navigation elements, movement conditions can be determined when navigation information changes or when the AR navigation element is dynamically displayed and reaches a point in time where the dynamic change occurs. Similarly, for AR obstacle prompt elements, movement conditions can be determined when the obstacle moves or the vehicle moves, causing the obstacle's position to deviate from its position at the previous time point. This is merely an example and does not specifically limit the detection of movement conditions.
[0115] It is understandable that the virtual image plane serves as the virtual image imaging surface of the AR prompt element (similar to the principle of mirror imaging). When the light source in the HUD projects the AR prompt element onto the imaging element of the vehicle, the AR prompt element actually observed from the driver's perspective is located on this virtual image plane in space. By controlling the imaging size and position of the AR prompt element in the virtual image plane, the final effect presented from the driver's perspective is that the virtual image of the AR prompt element is integrated with the road environment in the real world.
[0116] Optionally, the location description information can refer to the coordinates of the AR prompt element's location point in a specified coordinate system. After obtaining the second location description information in the head-up display coordinate system in the virtual image plane, the dynamic area for displaying the AR prompt element in the projected image can be determined based on the mapping relationship between the virtual image plane and the projected image.
[0117] S220. Based on the target dynamic region, extract the target partition description information and screen anchoring information, and obtain multiple dynamic parameters based on the target partition description information and screen anchoring information.
[0118] Optionally, based on the target partition description information and screen anchoring information, multiple dynamic parameters are obtained, including:
[0119] Based on the size information of the target dynamic region in the next projected image, determine the region width and region height of the target dynamic region in the next projected image;
[0120] Based on the first coordinate and the second coordinate, determine the lateral coordinate difference and the longitudinal coordinate difference between the center point of the target dynamic area and the anchor point.
[0121] Optionally, the first coordinate is the coordinate of the center point of the target dynamic region in the projected image, and the second coordinate is the coordinate of the anchor point in the projected image.
[0122] Optionally, the difference between the horizontal coordinates of the center point and the anchor point can be obtained by subtracting the horizontal coordinate of the first coordinate from the horizontal coordinate of the second coordinate, and the difference between the vertical coordinates of the center point and the anchor point can be obtained by subtracting the vertical coordinate of the first coordinate from the vertical coordinate of the second coordinate.
[0123] Optionally, the method proposed in this application can be processed by the image processing engine in the projection device calling the computational shader, and the image processing engine can create and render the 3D model.
[0124] In a specific application scenario, dynamic parameters of integer type (int) can be defined, such as region width ΔWidth, region height ΔHeight, horizontal coordinate difference LocalX, and vertical coordinate difference LocalY. These parameters are then assigned to the imaging region Image. Specifically, the definitions can be expressed as ImageRectTransform.sizeDelta = new Vector2(ΔWidth, ΔHeight) and ImageRectTransform.anchoredPosition = new Vector2(PositionX, PositionY). Here, ImageRectTransform.anchoredPosition represents the position of the 3D fusion object relative to the anchor point, and ImageRectTransform.sizeDelta represents the size of the 3D fusion object. Both of these are attributes in the image processing engine.
[0125] S230. Based on the target dynamic region and the dynamic parameters, determine each target thread in the computation shader for image fusion of the target dynamic region.
[0126] Optionally, based on the target dynamic region and the dynamic parameters, each target thread for image fusion of the target dynamic region is determined in the computation shader, including:
[0127] Determine the thread arrangement pattern in each thread group predefined in the compute shader;
[0128] Based on the thread arrangement pattern, the region width, and the region height, at least one target thread group is defined in the computation shader for image fusion of the target dynamic region, and multiple target threads are determined based on the target thread group.
[0129] Optionally, the computation shader of the image processing engine may include multiple regularly arranged thread groups, each of which includes multiple regularly arranged threads. Based on the inherent properties of the image processing engine, each thread in the computation shader can perform image processing on a single pixel in the projected image, and the threads can process in parallel. Therefore, for complex image processing involving multiple pixels, computation time can be significantly reduced by calling the threads in the computation shader to process them simultaneously.
[0130] Optionally, the number of thread groups in the compute shader can be specified through a pre-configured thread group attribute. A thread group can be understood as a combination of a group of threads. A thread group can contain many threads. The usage of the thread group attribute is as follows: the first parameter is the kernel index value, and the following three parameters are the number of thread groups for the x, y, and z axes, respectively.
[0131] Continuing the previous example, Figure 7 is a schematic diagram of an optional thread group arrangement mode. In the example shown in Figure 7, cs.Dispatch(kernal,4,4,2) is set. Each cube in Figure 7 can be regarded as a thread group. The thread group arrangement mode is 4 threads in the X-axis direction, 4 threads in the Y-axis direction, and 2 threads in the Z-axis direction. Figure 7 is only for illustrative purposes and does not limit the actual thread group arrangement method.
[0132] Optionally, the compute shader can also specify the number of threads in the thread group through pre-configured thread properties. The arrangement of the threads in the thread group is similar to that of a cuboid, and the thread properties specify how many threads are in each of the x, y, and z directions.
[0133] Continuing from the previous example, Figure 8 is a schematic diagram of an optional thread arrangement mode. In the example shown in Figure 8, [numthreads(8,4,2)] is specified, which specifies 8 threads for the x axis, 4 threads for the y axis, and 2 threads for the z axis. Therefore, a thread group has 64 threads. A small cube in Figure 8 represents one thread.
[0134] Optionally, Figure 9 is an optional relationship diagram between thread groups and threads. As shown in Figure 9, the right side is a schematic diagram of the thread group arrangement mode, and the left side is a schematic diagram of the thread arrangement mode. The right image is an expansion of one of the threads in the left thread arrangement mode schematic diagram. When there are 32 thread groups in the left image and 64 threads in each thread group in the right image, there are a total of 32 × 64 = 2048 threads in the image processing engine.
[0135] S240. Based on the dynamic parameters and screen anchoring information, determine the position of the target pixel corresponding to each target thread.
[0136] Optionally, each target thread in the compute shader corresponds one-to-one with each pixel in the target dynamic region, and the target thread is used to perform image rendering processing on the corresponding pixel in the target dynamic region.
[0137] Optionally, the target thread in the compute shader is used to render the unique target pixel corresponding to it according to the fusion rule to obtain the rendering result value of the target pixel. After all target threads have completed rendering, the target dynamic region is determined and the image fusion process is completed.
[0138] In a specific application scenario, the target thread group can be defined using CS.Dispatch(kernel, ΔWidth / numberThreasdX, ΔHeight / numberThreasdY, 1), where numberThreasdX is the number of threads on the X-axis of the thread group, numberThreasdY is the number of threads on the Y-axis of the thread group, and the kernel keyword is used to define a computation kernel. A computation kernel is a function that can be executed in parallel. It accepts a set of input data and returns a set of output data. In a computation shader, one or more computation kernels can be defined, and then these kernels are called to execute computation tasks.
[0139] Optionally, based on the dynamic parameters and screen anchoring information, the target pixel position corresponding to each target thread can be determined, which may include:
[0140] The computational shader in the image processing engine is invoked to determine the position of the target pixel corresponding to the target thread within the target dynamic region according to the following formula:
[0141] id.x1=id.x2+LocalX+ScreenWidth / 2-ΔWidth / 2;
[0142] id.y1=id.y2+LocalY+ScreenHeight / 2-ΔHeight / 2;
[0143] Wherein, id.x1 and id.y1 are the horizontal and vertical coordinates of the target pixel, respectively; id.x2 and id.y2 are the horizontal and vertical coordinates of the pixel processed by the target thread in the current projected image, respectively; LocalX and LocalY are the horizontal and vertical relative coordinates between the center point of the target dynamic region and the anchor point, respectively; ScreenWidth is the screen width of the next projected image; ScreenHeight is the screen height of the next projected image; ΔWidth is the width of the target dynamic region in the next projected image; and ΔHeight is the reference height of the target dynamic region in the next projected image.
[0144] S250: Project the next image onto the display screen for projection display.
[0145] Optionally, the target dynamic region of the next projected image includes both the left-eye and right-eye visible images of the 3D fused object.
[0146] Optionally, the next projected image can be a 3D head-up display image; the display screen is an imaging element configured on the vehicle; the imaging element includes the vehicle's windshield, a reflective film disposed in the vehicle, or an imaging window disposed in the vehicle.
[0147] The technical solution of this application embodiment, after completing the display of the current projected image, if it is determined that the current projected image contains a 3D fusion object to be moved, then obtains the target dynamic region of the 3D fusion object in the next projected image, determines the position of the target pixel corresponding to each target thread based on the target dynamic region, and uses the target thread to perform rendering processing on the corresponding target pixel to obtain the next projected image, and projects the next projected image onto the display screen for projection display. This method can dynamically allocate the target pixels processed by the target thread, use a relatively fixed thread to dynamically render different regions in the image, and perform image fusion only on the dynamic region where the 3D fusion object is located in each frame of the projected image, without processing other parts of the image. This solves the problem of insufficient computing power when the processing system of related technologies processes full-frame 3D images, and is adapted to projection devices with low computing power, ensuring the smoothness of 3D images.
[0148] Figure 10 is a schematic diagram of an optional image fusion region division. As shown in Figure 10, image fusion can be divided into full-screen image fusion and indefinite region image fusion. In practical application scenarios, image fusion technology is generally used in vehicle infotainment systems, i.e., Android systems. However, the GPU performance required for the computation shader to run is relatively high. Under high thread counts, Android systems cannot provide sufficient GPU computing power, which will cause screen stuttering. Based on such scenarios, this application proposes to split the image fusion algorithm into full-screen image fusion and indefinite region image fusion. For images that do not need to be displayed in full screen, indefinite regions are selected in the projected image for region image fusion. Indefinite regions can refer to static indefinite regions and dynamic indefinite regions. This application focuses on explaining the naked-eye 3D image fusion method for dynamic indefinite regions.
[0149] Figure 11 is an optional flowchart of dynamic region image fusion for naked-eye 3D. Figure 11 shows another optional application scenario of dynamic region image fusion for naked-eye 3D. That is, firstly, the dynamic partition size parameter and the dynamic partition position parameter are obtained, which can be similar to the dynamic region size information and the coordinate difference between the center point and the anchor point of the dynamic region in this application. The total number of shader threads is determined according to the dynamic partition size parameter. The dynamic partition position parameter and the dynamic partition size parameter are input into the pre-established 3D image fusion model to obtain the index, fused pixel value and slope. Then, according to the total number of shader threads, index, fused pixel value and slope, the fused imaging result of the dynamic partition image is generated.
[0150] Example 3
[0151] Figure 12 is a schematic diagram of a naked-eye 3D dynamic region image fusion device provided in Embodiment 3 of this application. As shown in Figure 12, the device includes: a dynamic region determination module 310, a projection image generation module 320, and a projection display module 330.
[0152] The dynamic region determination module 310 is configured to, after completing the display of the current projected image, if it is determined that the current projected image contains a 3D fusion object to be moved, then obtain the target dynamic region of the 3D fusion object in the next projected image.
[0153] The projection image generation module 320 is configured to determine the position of the target pixel corresponding to each target thread based on the target dynamic region, and to use the target thread to render the corresponding target pixel to obtain the next projection image;
[0154] The projection display module 330 is configured to project the next projection image onto a display screen for projection display.
[0155] The technical solution of this application embodiment, after completing the display of the current projected image, if it is determined that the current projected image contains a 3D fusion object to be moved, then obtains the target dynamic region of the 3D fusion object in the next projected image, determines the position of the target pixel corresponding to each target thread based on the target dynamic region, and uses the target thread to perform rendering processing on the corresponding target pixel to obtain the next projected image, and projects the next projected image onto the display screen for projection display. This method can dynamically allocate the target pixels processed by the target thread, use a relatively fixed thread to dynamically render different regions in the image, and perform image fusion only on the dynamic region where the 3D fusion object is located in each frame of the projected image, without processing other parts of the image. This solves the problem of insufficient computing power when the processing system of related technologies processes full-frame 3D images, and is adapted to projection devices with low computing power, ensuring the smoothness of 3D images.
[0156] Based on the above embodiments, the projection image generation module 320 may include:
[0157] The dynamic parameter acquisition unit is configured to extract target partition description information and screen anchoring information based on the target dynamic region, and acquire multiple dynamic parameters based on the target partition description information and screen anchoring information.
[0158] The pixel matching unit is configured to determine the position of the target pixel corresponding to each target thread based on various dynamic parameters and screen anchoring information.
[0159] Based on the above embodiments, the target partition description information includes the first coordinates of the center point of the target dynamic region in the projected image, and the size information of the target dynamic region in the projected image;
[0160] The screen anchoring information includes the size information of the projected image and the second coordinates of the anchor point in the projected image.
[0161] Based on the above embodiments, the dynamic parameter acquisition unit is configured as follows:
[0162] Based on the size information of the target dynamic region in the next projected image, determine the region width and region height of the target dynamic region in the next projected image;
[0163] Based on the first coordinate and the second coordinate, determine the lateral coordinate difference and the longitudinal coordinate difference between the center point of the target dynamic area and the anchor point.
[0164] Based on the above embodiments, the pixel matching unit is configured as follows:
[0165] The computational shader in the image processing engine is invoked to determine the position of the target pixel corresponding to the target thread within the target dynamic region according to the following formula:
[0166] id.x1=id.x2+LocalX+ScreenWidth / 2-ΔWidth / 2;
[0167] id.y1=id.y2+LocalY+ScreenHeight / 2-ΔHeight / 2;
[0168] Wherein, id.x1 and id.y1 are the horizontal and vertical coordinates of the target pixel, respectively; id.x2 and id.y2 are the horizontal and vertical coordinates of the pixel processed by the target thread in the current projected image, respectively; LocalX and LocalY are the horizontal and vertical relative coordinates between the center point of the target dynamic region and the anchor point, respectively; ScreenWidth is the screen width of the next projected image; ScreenHeight is the screen height of the next projected image; ΔWidth is the width of the target dynamic region in the next projected image; and ΔHeight is the reference height of the target dynamic region in the next projected image.
[0169] Based on the above embodiments, a thread determination module may also be included, configured to determine each target thread for image fusion of the target dynamic region in the computation shader according to the target dynamic region and the dynamic parameters.
[0170] Based on the above embodiments, the thread determination module is configured as follows:
[0171] Determine the thread arrangement pattern in each thread group predefined in the compute shader;
[0172] Based on the thread arrangement pattern, the region width, and the region height, at least one target thread group is defined in the computation shader for image fusion of the target dynamic region, and multiple target threads are determined based on the target thread group.
[0173] Based on the above embodiments, the target thread in the compute shader is used to render the unique target pixel corresponding to it according to the fusion rule to obtain the rendering result value of the target pixel. After all target threads have completed rendering, the target dynamic region is determined to complete the image fusion processing.
[0174] Based on the above embodiments, the next projected image is a 3D head-up display image;
[0175] The display screen is an imaging element configured on the vehicle; the imaging element includes the vehicle's windshield, a reflective film disposed in the vehicle, or an imaging window disposed in the vehicle.
[0176] Based on the above embodiments, the 3D fusion object to be moved is an AR prompt element;
[0177] The AR prompt elements specifically include AR navigation elements and AR obstacle prompt elements.
[0178] Based on the above embodiments, the projection image generation module 320 may further include a dynamic region determination unit, configured as follows:
[0179] When the movement condition of the AR cue element is detected, obtain the first position description information of the AR cue element in the real world;
[0180] Based on the first position description information of the AR prompt element in the real world, determine the second position description information of the AR prompt element in the head-up display coordinate system in the virtual image plane;
[0181] Based on the second location description information, determine the dynamic area in the next projected image where the AR prompt element will be displayed.
[0182] Based on the above embodiments, the target dynamic region of the next projected image includes the left-eye visible image and the right-eye visible image of the 3D fusion object.
[0183] The naked-eye 3D dynamic region image fusion device provided in this application embodiment can execute the naked-eye 3D dynamic region image fusion method provided in any embodiment of this application, and has the corresponding functional modules and beneficial effects of the method execution.
[0184] Example 4
[0185] Figure 13 shows a schematic diagram of the structure of a projection device 10 that can be used to implement embodiments of this application. The projection device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workbenches, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The projection device can also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices (such as helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the application described and / or claimed herein.
[0186] As shown in Figure 13, the projection device 10 includes at least one processor 11 and a memory, such as a read-only memory (ROM) 12 or a random access memory (RAM) 13, communicatively connected to the at least one processor 11. The memory stores computer programs executable by the at least one processor. The processor 11 can perform various appropriate actions and processes based on the computer programs stored in the ROM 12 or loaded from storage unit 18 into the RAM 13. The RAM 13 can also store various programs and data required for the operation of the projection device 10. The processor 11, ROM 12, and RAM 13 are interconnected via a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.
[0187] Multiple components in the projection device 10 are connected to the I / O interface 15, including: an input unit 16, such as a keyboard, mouse, etc.; an output unit 17, such as various types of displays, speakers, etc.; a storage unit 18, such as a disk, optical disk, etc.; and a communication unit 19, such as a network card, modem, wireless transceiver, etc. The communication unit 19 allows the projection device 10 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.
[0188] Processor 11 can be various general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of processor 11 include, but are not limited to, central processing unit (CPU), graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, digital signal processors (DSPs), and any suitable processor, controller, microcontroller, etc. Processor 11 performs the various methods and processes described above, such as the naked-eye 3D dynamic region image fusion method as described in the embodiments of this application. That is:
[0189] After completing the display of the current projected image, if it is determined that the current projected image contains a 3D fusion object to be moved, then the target dynamic region of the 3D fusion object in the next projected image is obtained.
[0190] Based on the target dynamic region, the position of the target pixel corresponding to each target thread is determined, and the target thread is used to render the corresponding target pixel to obtain the next projected image.
[0191] The next projected image is projected onto the display screen for display.
[0192] In some embodiments, the glasses-free 3D dynamic region image fusion method can be implemented as a computer program tangibly contained in a computer-readable storage medium, such as storage unit 18. In some embodiments, part or all of the computer program can be loaded and / or mounted on the projection device 10 via ROM 12 and / or communication unit 19. When the computer program is loaded into RAM 13 and executed by processor 11, one or more steps of the glasses-free 3D dynamic region image fusion method described above can be performed. Alternatively, in other embodiments, processor 11 can be configured to perform the glasses-free 3D dynamic region image fusion method by any other suitable means (e.g., by means of firmware).
[0193] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), hybrid programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transferring data and instructions to the storage system, the at least one input device, and the at least one output device.
[0194] Computer programs used to implement the methods of this application may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when executed by the processor, the computer programs cause the functions / operations specified in the flowcharts and / or block diagrams to be performed. The computer programs may be executed entirely on a machine, partially on a machine, or as a standalone software package, partially on a machine and partially on a remote machine, or entirely on a remote machine or server.
[0195] In the context of this application, a computer-readable storage medium can be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, apparatus, or device. A computer-readable storage medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. Alternatively, a computer-readable storage medium can be a machine-readable signal medium. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0196] To provide interaction with the user, the systems and techniques described herein can be implemented on a projection device having: a display device for displaying information to the user (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor); and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the projection device. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).
[0197] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or computing systems that include middleware components (e.g., application servers), or computing systems that include frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., communication networks). Examples of communication networks include local area networks (LANs), wide area networks (WANs), blockchain networks, and the Internet.
[0198] A computing system can include clients and servers. Clients and servers are generally located far apart and typically interact through communication networks. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. The server can be a cloud server, also known as a cloud computing server or cloud host, which is a hosting product within the cloud computing service system to address the shortcomings of traditional physical hosts and VPS services, such as high management difficulty and weak business scalability.
[0199] It should be understood that the various forms of processes shown above can be used to reorder, add, or delete steps. For example, the steps described in this application can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution of this application can be achieved.
Claims
1. A dynamic region image fusion method for naked-eye 3D, comprising: after finishing displaying a current projection image, if it is determined that the current projection image contains a 3D fusion object to be moved, obtaining a target dynamic region of the 3D fusion object in a next projection image; determining target pixel point positions corresponding to respective target threads according to the target dynamic region, and rendering and processing corresponding target pixel points by using the target threads to obtain the next projection image; projecting and displaying the next projection image on a display screen.
2. The method of claim 1, wherein, The determining of the target pixel point positions corresponding to the respective target threads according to the target dynamic region comprises: extracting target partition description information and screen anchoring information according to the target dynamic region, and obtaining a plurality of dynamic parameters according to the target partition description information and the screen anchoring information; determining the target pixel point positions corresponding to the respective target threads according to the dynamic parameters and the screen anchoring information.
3. The method of claim 2, wherein, The target partition description information comprises a first coordinate of a center point of the target dynamic region in the next projection image, and size information of the target dynamic region in the next projection image. The screen anchoring information comprises size information of the next projection image and a second coordinate of an anchor point in the next projection image.
4. The method of claim 3, wherein, The obtaining of the plurality of dynamic parameters according to the target partition description information and the screen anchoring information comprises: determining a region width and a region height of the target dynamic region in the next projection image according to the size information of the target dynamic region in the next projection image; determining a horizontal coordinate difference and a vertical coordinate difference between the center point of the target dynamic region and the anchor point according to the first coordinate and the second coordinate.
5. The method of claim 4, wherein, The determining of the target pixel point positions corresponding to the respective target threads according to the dynamic parameters and the screen anchoring information comprises: calling a calculation shader in an image processing engine, and determining the target pixel point positions corresponding to the target threads in the target dynamic region according to the following formula: id.x1=id.x2+LocalX+ScreenWidth / 2-ΔWidth / 2; id.y1=id.y2+LocalY+ScreenHeight / 2-ΔHeight / 2; wherein id.x1 and id.y1 are horizontal and vertical coordinates of the target pixel point, id.x2 and id.y2 are horizontal and vertical coordinates of a pixel point processed by the target thread in the current projection image, LocalX and LocalY are a horizontal relative coordinate and a vertical relative coordinate between the center point of the target dynamic region and the anchor point, ScreenWidth is a picture width of the next projection image, ScreenHeight is a picture height of the next projection image, ΔWidth is the region width of the target dynamic region in the next projection image, and ΔHeight is a reference height of the target dynamic region in the next projection image. 6.The method according to claim 5, after the obtaining of the plurality of dynamic parameters according to the target partition description information and the screen anchoring information, the method further comprises: According to the target dynamic area and the dynamic parameter, each target thread for image fusion of the target dynamic area is determined in a compute shader.
7. The method of claim 6, wherein, According to the target dynamic area and the dynamic parameter, each target thread for image fusion of the target dynamic area is determined in a compute shader, comprising: determining a thread arrangement mode in each predefined thread group in the compute shader; defining at least one target thread group for image fusion of the target dynamic area in the compute shader according to the thread arrangement mode, the area width and the area height, and determining a plurality of target threads according to the target thread group.
8. The method of claim 7, wherein, The target thread in the compute shader is used to render the unique target pixel point corresponding thereto according to a fusion rule to obtain a rendering result value of the target pixel point, and after the rendering of each target thread is completed, it is determined that the target dynamic area completes the image fusion processing.
9. The method of any one of claims 1-8, wherein, The next projection image is a 3D head-up display image. The display screen is an imaging element configured on the vehicle, and the imaging element includes a front windshield of the vehicle, a reflective layer film arranged in the vehicle, or an imaging window arranged in the vehicle.
10. The method of claim 9, wherein, The 3D fusion object to be moved is an augmented reality (AR) prompt element. The AR prompt element specifically includes an AR navigation element and an AR obstacle prompt element.
11. The method of claim 10, wherein, The target dynamic area of the 3D fusion object in the next projection image is obtained, comprising: when a moving condition of the AR prompt element is detected, first position description information of the AR prompt element in the real world is obtained; second position description information of the AR prompt element in a head-up display coordinate system in a virtual image plane is determined according to the first position description information of the AR prompt element in the real world; a dynamic area for displaying the AR prompt element in the next projection image is determined according to the second position description information.
12. The method of any one of claims 1-8, wherein, In the target dynamic area of the next projection image, a left-eye visible image and a right-eye visible image of the 3D fusion object are included.
13. A naked-eye 3D dynamic area image fusion device, comprising: a dynamic area determination module configured to, after completion of display of a current projection image, if it is determined that the current projection image includes a 3D fusion object to be moved, obtain a target dynamic area of the 3D fusion object in a next projection image; a projection image generation module configured to determine target pixel point positions corresponding to each target thread according to the target dynamic area, and perform rendering processing on the corresponding target pixel points by using the target threads to obtain the next projection image; a projection display module configured to project the next projection image into a display screen for projection display.
14. A projection device, comprising: at least one processor; and a memory connected in communication with the at least one processor; wherein the memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor to enable the at least one processor to execute the naked-eye 3D dynamic area image fusion method of any one of claims 1-12.
15. A computer readable storage medium storing computer instructions for causing a processor to implement the method of any one of claims 1-12 when executed.
Citation Information
Patent Citations
Three-dimensional effect picture efficient rendering method and system based on cloud rendering
CN113192171A
Display method of collision early warning information, head-up display device, carrier and medium
CN115857169A
Naked eye 3D uncertain region image fusion method, system, device and equipment
CN118764599A
Naked eye 3D dynamic region image fusion method, device, equipment and medium
CN118764600A
Display method, electronic device and storage medium
US20230118166A1