Image rendering method, electronic device, and computer-readable storage medium

By adjusting the absolute rotation angle in the second type of coordinate system to the deflection rotation angle and unifying the deflection of the rendering camera, the problem of misalignment of screen elements in different applications was solved, resulting in a smoother screen display effect.

CN122284873APending Publication Date: 2026-06-26ZHEJIANG GEELY HLDG GRP CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
ZHEJIANG GEELY HLDG GRP CO LTD
Filing Date
2026-03-13
Publication Date
2026-06-26

AI Technical Summary

Technical Problem

Because screen elements in different applications may be constructed using different coordinate systems, the orientation of screen elements cannot be accurately aligned when they are blended, resulting in a lack of smoothness and affecting the user's visual experience.

Method used

By obtaining the first absolute rotation angle of the preset image element in the second type of coordinate system, adjusting it to a deflection angle, and using this deflection angle to uniformly deflect the rendering camera in the first and second type of coordinate systems, the image elements in each coordinate system are aligned.

Benefits of technology

It reduces the choppy display of screen elements and improves the user's visual experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122284873A_ABST
    Figure CN122284873A_ABST
Patent Text Reader

Abstract

This specification provides an image rendering method, an electronic device, and a computer-readable storage medium. The method renders image elements in a first coordinate system and a second coordinate system using the following steps: obtaining a first absolute rotation angle of a preset image element in the second coordinate system in the current frame; wherein the first absolute rotation angle includes the angle between the orientation of the preset image element in the second coordinate system and the target coordinate axis; adjusting the first absolute rotation angle to obtain a deflection angle smaller than the first absolute rotation angle; deflecting the rendering cameras in the first and second coordinate systems according to the deflection angle; rendering the image elements in the current frame according to the rendering cameras in each coordinate system after the deflection; and displaying the rendered image elements on the same display interface.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This specification relates to the field of image processing technology, and in particular to an image rendering method, electronic device, and computer-readable storage medium. Background Technology

[0002] When rendering scene elements using an image processing software engine, the final orientation of the rendered scene element is determined by both the orientation of the scene element in the coordinate system and the orientation of the rendering camera (also called the rendering lens in some embodiments). If the rendering camera and the scene element rotate by the same angle on a certain axis simultaneously, the scene element in the image will not change. However, if the rendering camera and the scene element do not rotate by the same angle on a certain axis simultaneously, the orientation of the scene element in the image will change.

[0003] As more and more applications use image processing software to render images, in order to achieve more eye-catching visual effects, a technology has emerged that can merge and display visual elements from different applications.

[0004] However, since screen elements in different applications may be constructed using different coordinate systems, the orientation of screen elements in the merged display cannot be accurately aligned, which may cause problems such as lag, stuttering, and jumps in the merged display, affecting the user's visual experience. Summary of the Invention

[0005] In view of the above, one or more embodiments of this specification provide an image rendering method, an electronic device, and a computer-readable storage medium to solve the problems existing in the related art.

[0006] To achieve the above objectives, one or more embodiments of this specification provide the following technical solutions: According to a first aspect of the embodiments of this specification, an image rendering method is provided, which renders screen elements of a first type of coordinate system and a second type of coordinate system using the following steps; each of the screen elements in the first type of coordinate system and the second type of coordinate system includes a preset screen element, wherein the first type of coordinate system includes a coordinate system in which the orientation of the preset screen element is always aligned with the target coordinate axis, and the second type of coordinate system includes a coordinate system in which the orientation of the preset screen element is not always aligned with the target coordinate axis: Obtain the first absolute rotation angle of the preset screen element in the current frame in the second type of coordinate system; wherein, the first absolute rotation angle includes the angle between the orientation of the preset screen element in the second type of coordinate system and the target coordinate axis; The first absolute rotation angle is adjusted to obtain a deflection angle smaller than the first absolute rotation angle; The rendering cameras in the first and second coordinate systems are deflected according to the deflection angle. The rendering cameras in each coordinate system render the scene elements in the current frame according to the deflection, and the rendered scene elements are displayed on the same display interface.

[0007] Optionally, before adjusting the first absolute angle to obtain a deflection angle smaller than the first absolute angle, the method further includes: Determine whether the first absolute rotation angle is the same as the first absolute rotation angle of the previous frame of the current frame; In response to the fact that the first absolute rotation angle is different from the first absolute rotation angle of the previous frame of the current frame, the adjustment of the first absolute rotation angle is performed.

[0008] Optional, also includes: In response to the fact that the first absolute rotation angle is the same as the first absolute rotation angle of the previous frame of the current frame, the first historical rotation angle of the previous frame of the current frame and the second historical rotation angle of the previous N frames of the current frame are obtained from the historical rotation angles corresponding to the recorded historical frames, where N is an integer greater than 1. The second absolute angle of the current frame is predicted based on the first historical deflection angle and the second historical deflection angle, and the second absolute angle is determined as the updated first absolute angle; The adjustment of the first absolute angle includes: The updated first absolute angle is adjusted.

[0009] Optionally, predicting the second absolute angle of the current frame based on the first historical deflection angle and the second historical deflection angle includes: Calculate the difference between the first historical deflection angle and the second historical deflection angle; The first historical deflection angle is added to the difference to obtain the second absolute angle of the current frame.

[0010] Optionally, adjusting the first absolute angle to obtain a deflection angle smaller than the first absolute angle includes: The first absolute rotation angle is smoothed to obtain a deflection angle smaller than the first absolute rotation angle.

[0011] Optionally, smoothing the first absolute angle to obtain a deflection angle smaller than the first absolute angle includes: Obtain the first historical deflection angle of the previous frame of the current frame from the historical deflection angles corresponding to the recorded historical frames; Calculate the difference between the first historical deflection angle and the first absolute angle; The difference is multiplied by a preset difference coefficient, and the result of the multiplication is added to the first historical deflection angle to obtain the deflection angle.

[0012] Optionally, obtaining the first absolute rotation angle of the preset screen element in the current frame in the second type of coordinate system includes: Call the interface provided by the application corresponding to the second type of coordinate system to obtain the first absolute rotation angle of the preset screen element in the current frame in the second type of coordinate system returned by the interface.

[0013] Optionally, the method is applied to an in-vehicle infotainment system, and the display interface includes the interface on the display screen of the in-vehicle infotainment system.

[0014] Optionally, the preset screen elements include vehicle model elements, the application corresponding to the first type of coordinate system includes at least one of vehicle desktop application and environmental perception application, and the application corresponding to the second type of coordinate system includes map navigation application.

[0015] Optionally, the image elements may include three-dimensional or two-dimensional image elements.

[0016] According to a second aspect of the embodiments of this specification, an image rendering apparatus is provided. The apparatus renders image elements in a first type of coordinate system and a second type of coordinate system using the following units: Each of the image elements in the first type of coordinate system and the second type of coordinate system includes a preset image element; wherein the first type of coordinate system includes a coordinate system in which the orientation of the preset image element is always aligned with a target coordinate axis, and the second type of coordinate system includes a coordinate system in which the orientation of the preset image element is not always aligned with the target coordinate axis. The acquisition unit acquires the first absolute rotation angle of the preset screen element in the second type of coordinate system in the current frame; wherein, the first absolute rotation angle includes the angle between the orientation of the preset screen element in the second type of coordinate system and the target coordinate axis; The adjustment unit adjusts the first absolute rotation angle to obtain a deflection angle smaller than the first absolute rotation angle; The processing unit deflects the rendering cameras in the first type of coordinate system and the second type of coordinate system according to the deflection angle, renders the scene elements of each rendering camera in the current frame according to the deflection, and displays the rendered scene elements on the same display interface.

[0017] According to a third aspect of the embodiments of this specification, an electronic device is provided, including a processor; a memory for storing processor-executable instructions; wherein the processor implements the above-described method by executing the executable instructions.

[0018] According to a fourth aspect of the embodiments of this specification, a computer-readable storage medium is provided, wherein computer-readable instructions are stored on the computer-readable storage medium, and the computer-readable instructions, when executed by a processor, implement the above-described method.

[0019] According to a fifth aspect of the embodiments of this specification, a computer program product is provided, including a computer program that, when executed by a processor, implements the above-described method.

[0020] The technical solutions provided in the embodiments of this specification may include the following beneficial effects: Since both the first and second coordinate systems share the same preset image elements, the first absolute angle of this preset image element in the second coordinate system can be used to associate the various coordinate systems. Based on this, by adjusting this first absolute angle, a smoother and more uniform deflection angle can be obtained. Then, this deflection angle is used to uniformly deflect the rendering cameras in each coordinate system, thereby aligning the orientation of the image elements in each coordinate system. This reduces the smoothness of the display when image elements in the first and second coordinate systems are blended together. Attached Figure Description

[0021] Figure 1 A flowchart of an image rendering method provided as an exemplary embodiment of this specification; Figure 2 A schematic diagram of a first type of coordinate system provided for an exemplary embodiment of this specification; Figure 3 A schematic diagram of a second type of coordinate system provided for an exemplary embodiment of this specification; Figure 4 A schematic diagram illustrating the change of absolute rotation angle provided for an exemplary embodiment of this specification; Figure 5 A flowchart of rendering camera deflection provided as an exemplary embodiment of this specification; Figure 6 A schematic diagram of the structure of an electronic device containing an image rendering apparatus, provided as an exemplary embodiment of this specification; Figure 7 A block diagram of an image rendering apparatus provided for an exemplary embodiment of this specification. Detailed Implementation

[0022] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numerals in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with one or more embodiments of this specification. Rather, they are merely examples of apparatuses and methods consistent with some aspects of one or more embodiments of this specification as detailed in the appended claims.

[0023] It should be noted that the steps of the corresponding methods are not necessarily performed in the order shown and described in this specification in other embodiments. In some other embodiments, the methods may include more or fewer steps than described in this specification. Furthermore, a single step described in this specification may be broken down into multiple steps in other embodiments; and multiple steps described in this specification may be combined into a single step in other embodiments.

[0024] As mentioned earlier, since screen elements in different applications may be constructed using different coordinate systems, the orientation of screen elements in the merged display cannot be accurately aligned. This can lead to problems such as lag, stuttering, and jumps in the merged display, affecting the user's visual experience.

[0025] Based on this, this specification aims to provide an image rendering scheme. Since both the first and second coordinate systems have the same preset image elements, the first absolute angle of this preset image element in the second coordinate system can be used to associate the various coordinate systems. Based on this, by adjusting this first absolute angle, a smoother and more uniform deflection angle can be obtained; then, this deflection angle is used to uniformly deflect the rendering cameras in each coordinate system, thereby aligning the orientation of the image elements in each coordinate system; this reduces the smoothness that occurs when image elements in the first and second coordinate systems are blended and displayed.

[0026] The image rendering method described in this manual will be explained in detail below with reference to the accompanying drawings.

[0027] Please refer to Figure 1 , Figure 1 This flowchart illustrates an exemplary embodiment of an image rendering method provided in this specification. The method renders image elements in a first coordinate system and a second coordinate system using the following steps. Each of the first and second coordinate systems includes preset image elements. The first coordinate system includes a coordinate system where the orientation of the preset image elements is always aligned with the target coordinate axis, and the second coordinate system includes a coordinate system where the orientation of the preset image elements is not always aligned with the target coordinate axis. Step 110: Obtain the first absolute rotation angle of the preset screen element in the current frame in the second type of coordinate system; wherein, the first absolute rotation angle includes the angle between the orientation of the preset screen element in the second type of coordinate system and the target coordinate axis; Step 120: Adjust the first absolute angle to obtain a deflection angle smaller than the first absolute angle; Step 130: Deflect the rendering cameras in the first type of coordinate system and the second type of coordinate system according to the deflection angle, render the scene elements in the current frame according to the rendering cameras in each coordinate system after the deflection, and display the rendered scene elements on the same display interface.

[0028] The embodiments provided in this specification can be applied to different device terminals, such as performing image rendering in a car's infotainment system and displaying the rendered image elements on the screen of the infotainment system; or performing image rendering in smart glasses and displaying the rendered image elements on the lenses of the smart glasses; or performing image rendering in mobile phones, computers, tablets, etc. and displaying the rendered image elements on the screen.

[0029] Taking vehicles as an example, the display screen (such as the central control screen) is a key component connecting people and vehicles for human-machine interaction. Generally, the visual appeal of a vehicle's display screen (e.g., whether the content is rich, beautiful, and cool) has become a crucial factor in its sales success. Therefore, in addition to improving the screen size, resolution, and image processing chip on the hardware side, it is also necessary to improve the presented image effects on the software side. This includes the need to display screen elements from at least two applications simultaneously. However, as mentioned earlier, screen elements in different applications may be constructed using different coordinate systems. This makes it difficult to accurately align the orientation of screen elements in the merged display, potentially leading to issues such as lag, stuttering, and jumps, affecting the user's visual experience. The above embodiments can solve this problem.

[0030] It should be noted that, in order to meet the basic system resource requirements for rendering visual elements, the vehicle's infotainment system can be equipped with any in-vehicle chip capable of meeting the computing power required for rendering the visuals, and the operating system version of the infotainment system can include, but is not limited to, terminal operating systems such as Android, iOS, Linux, and HarmonyOS.

[0031] The screen elements in this specification can refer to either three-dimensional or two-dimensional screen elements; correspondingly, the first type of coordinate system and the second type of coordinate system can be either three-dimensional or two-dimensional coordinate systems depending on the screen elements. This specification does not limit the embodiments in this regard.

[0032] The applications corresponding to the first and second type of coordinate systems in this specification are usually applications adapted to the device terminal. These applications need to be installed locally on the device terminal or displayed on the device terminal by running in the cloud.

[0033] Taking a vehicle's infotainment system as an example, applications can include, but are not limited to, in-vehicle desktop applications, map navigation applications, environmental perception applications, etc., all of which include vehicle model elements.

[0034] Among them, the in-vehicle desktop application can render and display vehicle model elements based on the vehicle's parameter information (such as size, position, orientation, etc.).

[0035] Map navigation applications can render a navigation map based on the real-time location of a car and the triangulated map grid data of the area where the real-time location is located. The navigation map can include vehicle model elements and map elements of the area where the vehicle is located (such as road elements, building elements, etc.).

[0036] Environmental perception applications can use real-time environmental data collected by environmental sensors (such as cameras and lidar) on the vehicle to render and display the vehicle model elements and surrounding perceived elements (such as other vehicles, pedestrians, obstacles, etc.).

[0037] It is understandable that different applications may use different or the same coordinate systems. Generally, coordinate systems can be categorized into first-type and second-type coordinate systems. First, both the first-type and second-type coordinate systems include preset screen elements in their respective screen elements. Second, the first-type coordinate system includes a coordinate system in which the orientation of the preset screen elements is always aligned with the target coordinate axis, while the second-type coordinate system includes a coordinate system in which the orientation of the preset screen elements is not always aligned with the target coordinate axis.

[0038] Taking the aforementioned in-vehicle desktop application and environmental perception application as examples, both of them use the first type of coordinate system.

[0039] The following is for reference. Figure 2 The first type of coordinate system shown here refers to a car, where the car's facing direction is always aligned with the Y-axis. Regardless of the car's direction, its orientation remains constant; what changes are other screen elements. For example... Figure 2As shown, when the car turns right, the car does not change relative to the first type of coordinate system. The car's orientation is always aligned with the Y-axis. What changes is the relative position of other elements (such as the reference object shown) with the car. The reference object changes from being located directly behind the car to being located to the right rear of the car, and the angle between the reference object and the Y-axis is the angle at which the car turns right.

[0040] Taking the aforementioned map navigation application as an example, the map navigation application uses the second type of coordinate system.

[0041] The following is for reference. Figure 3 The second type of coordinate system shown here also uses a car as the preset screen element. In this system, the car's front orientation is no longer always aligned with the Y-axis; therefore, when the car turns, its orientation relative to the second type of coordinate system changes. Figure 3 As shown, when the car turns right, the car's orientation also deflects to the right relative to the Y-axis of the second type of coordinate system. The angle between the car's orientation and the Y-axis is the car's first absolute turning angle.

[0042] Understandably, to merge and display the image elements from the in-vehicle desktop application, the environmental perception application, and the map navigation application, it is necessary to uniformly rotate the rendering cameras of each application's coordinate system to align the orientation of the screen elements in each coordinate system. This uniform rotation requires calculation using the first absolute rotation angle of the preset screen elements in the second type of coordinate system, as shown in steps 110 to 120 above. Steps 110 to 130 will be described in detail below.

[0043] Step 110: Obtain the first absolute rotation angle of the preset screen element in the current frame in the second type of coordinate system.

[0044] For example, the first absolute rotation angle of the preset screen element in the current frame in the second type of coordinate system can be obtained by calling the interface provided by the application corresponding to the second type of coordinate system.

[0045] Since the merged image may change at any time, the embodiments provided in this specification can be repeatedly executed to form a [structure / feature]. Figure 4 The diagram shows the change in absolute rotation angle.

[0046] exist Figure 4 The image shows 7 frames from frame 0 to frame 6. The first row records the first absolute rotation angle of the preset screen element in the second type of coordinate system obtained in step 110, denoted as originAngle.

[0047] The second line records the second absolute angle, denoted as predictAngle.

[0048] The third line records the deflection angle obtained after adjusting the first absolute angle, denoted as currentAngle.

[0049] The second absolute rotation angle is the absolute rotation angle determined by prediction when the first absolute rotation angle of the current frame does not change compared to the first absolute rotation angle of the previous frame (i.e., the first absolute rotation angles of the two adjacent frames are equal, and the value of the first absolute rotation angle of the current frame relative to the previous frame has not been updated).

[0050] In one exemplary embodiment, prior to step 120, the following may also be included: Determine whether the first absolute rotation angle is the same as the first absolute rotation angle of the previous frame of the current frame; In response to the fact that the first absolute rotation angle is different from the first absolute rotation angle of the previous frame of the current frame, step 120 is executed; In response to the fact that the first absolute rotation angle is the same as the first absolute rotation angle of the previous frame of the current frame, the first historical rotation angle of the previous frame of the current frame and the second historical rotation angle of the previous N frames of the current frame are obtained from the historical rotation angles corresponding to the recorded historical frames, where N is an integer greater than 1. The second absolute angle of the current frame is predicted based on the first historical deflection angle and the second historical deflection angle, and the second absolute angle is determined as the updated first absolute angle; Accordingly, adjusting the first absolute angle in step 120 may include adjusting the updated first absolute angle.

[0051] In this specification, the preceding N frames can refer to the Nth frame before the current frame. For example, if the current frame is the 5th frame and N is 2, then the 3rd frame is the Nth frame before the current frame.

[0052] The following is combined Figure 4 As shown, each time a frame is refreshed, the first absolute angle of the preset screen element obtained from the application corresponding to the second type of coordinate system can be obtained through the above interface. However, the value of this first absolute angle is not a new value that changes every time. For example, the first absolute angle obtained in the 3rd and 4th frames is N / A. N / A means that the value of the first absolute angle has not changed. Therefore, the first absolute angle of the 3rd and 4th frames is actually still the value of the first absolute angle of the 2nd frame, which is 35.

[0053] If the first absolute angle (N / A) remains unchanged, using it directly will cause screen stuttering. Therefore, to avoid stuttering, a reasonable new value, namely the second absolute angle, can be predicted for the current frame based on the trend of the deflection angle changes in the previous few frames. This second absolute angle is then used as the first absolute angle updated for the current frame in step 120 for adjustment. Since the value being adjusted is no longer the same as in the previous frame, the adjustment result will also differ, thus avoiding screen stuttering.

[0054] In an exemplary embodiment, predicting the second absolute angle of the current frame based on the first historical deflection angle and the second historical deflection angle may include: Calculate the difference between the first historical deflection angle and the second historical deflection angle; The first historical deflection angle is added to the difference to obtain the second absolute angle of the current frame.

[0055] by Figure 4 Taking the third frame as an example, since the first absolute rotation angle of the third frame has not been updated, the prediction calculation can be performed based on the deflection angles of the previous frame and the frame before that. The prediction calculation process can refer to the following formula: Where i represents the current frame, This indicates the first historical deflection angle of the previous frame in the current frame. This indicates the second historical deflection angle of the two frames preceding the current frame; This represents the difference between the first historical deflection angle and the second historical deflection angle. This indicates the second absolute rotation angle of the current frame.

[0056] by Figure 4 Taking the third frame as an example, since the first absolute angle of the third frame has not been updated, the second absolute angle of the third frame is predicted to be 35 using the above prediction formula: Similarly, in frame 4, since the first absolute angle of frame 4 has not been updated, the second absolute angle of frame 4 is predicted to be 35 using the above prediction formula. It is understandable that, in addition to calculating the second absolute angle using the formula shown above, other methods can also be used for calculation.

[0057] Step 120: Adjust the first absolute angle to obtain a deflection angle smaller than the first absolute angle.

[0058] In this manual, there are several ways to adjust the process: For example, the first absolute angle can be smoothed to obtain a deflection angle smaller than the first absolute angle.

[0059] For example, a preset threshold can be subtracted from the first absolute angle to obtain a deflection angle smaller than the first absolute angle.

[0060] In one exemplary embodiment, the smoothing process described above can also take many forms, such as linear interpolation, weighted averaging, etc.

[0061] Taking linear interpolation as an example, the first historical deflection angle of the previous frame of the current frame can be obtained from the historical deflection angle corresponding to the recorded historical frames. Calculate the difference between the first historical deflection angle and the first absolute angle; The difference is multiplied by a preset difference coefficient, and the result of the multiplication is added to the first historical deflection angle to obtain the deflection angle.

[0062] In this embodiment, the following formula for calculating the linear difference can be used as a reference: in, Indicates the deflection angle of the current frame. This indicates the first historical deflection angle of the previous frame in the current frame. This represents the first absolute rotation angle of the current frame (if the current frame needs to calculate the aforementioned second absolute rotation angle, then the first absolute rotation angle here actually represents...). That is, the predicted second absolute angle); t represents the preset interpolation coefficient, t=[0,1]; usually, the value of t determines the speed of interpolation transition. The larger t is, the faster the interpolation transition is, and the smaller t is, the slower the interpolation transition is.

[0063] by Figure 4 For example, assuming t=0.5, the deflection angles from frame 0 to frame 6 are described below: Since frame 0 is the initial value and has no historical deflection angle, the deflection angle of frame 0 is equal to the first absolute angle = 30 by default; The deflection angle of the first frame is calculated to be 31 using the above adjustment formula: The deflection angle for the second frame is calculated using the above adjustment formula to be 33. The deflection angle of the third frame is calculated to be 34 using the above adjustment formula. The deflection angle for frame 4, calculated using the above adjustment formula, is 34.5°. The deflection angle of frame 5 is calculated to be 36 using the above adjustment formula. The deflection angle of frame 6 is calculated to be 38 using the above adjustment formula. Step 130: Deflect the rendering cameras in the first type of coordinate system and the second type of coordinate system according to the deflection angle, render the scene elements in the current frame according to the rendering cameras in each coordinate system after the deflection, and display the rendered scene elements on the same display interface.

[0064] Taking the aforementioned in-vehicle desktop applications, environmental perception applications, and map navigation applications as examples, combined with Figure 5 The flowchart shown illustrates the unified deflection process of the rendering cameras. After obtaining the first absolute angle of the current frame, if this first absolute angle has not been updated, a second absolute angle needs to be predicted and assigned to the first absolute angle of the current frame. If the first absolute angle has been updated (including the predicted and assigned first absolute angle), an adjustment process is performed to obtain the deflection angle of the current frame. Next, this deflection angle is applied to the in-vehicle desktop application, the environment perception application, and the map navigation application to uniformly offset their respective rendering cameras. Finally, based on the deflected rendering cameras, the respective application's screen elements are rendered. For example, the map navigation application's rendering camera renders map elements, vehicle model elements, and perception elements; the in-vehicle desktop application's rendering camera renders vehicle model elements; and the environment perception application's rendering camera renders vehicle model elements and perception elements. Because the rendering cameras have undergone a unified deflection angle, the orientation of all rendered screen elements does not change from the rendering camera's perspective, ensuring visual consistency and allowing for interaction and animation display using the in-vehicle desktop application's rendering camera.

[0065] In addition, in some embodiments, a transition animation can be added when switching from an application in the second type of coordinate system to an application in the first type of coordinate system, so as to prevent the screen jump caused by the first absolute angle of the non-zero value in the second type of coordinate system suddenly returning to zero (the orientation of the preset screen element in the first type of coordinate system is always aligned with the target coordinate axis, that is, the absolute angle in the first type of coordinate system is equal to 0).

[0066] After introducing the methods of exemplary embodiments of this specification, the apparatus, electronic devices, and computer-readable storage media of exemplary embodiments of this specification will be described next.

[0067] In an exemplary embodiment of this specification, an electronic device is provided, comprising: a processor; and a memory for storing processor-executable instructions; wherein the processor implements the method described above by executing the executable instructions.

[0068] Figure 6 This is a schematic structural diagram of an electronic device provided in an exemplary embodiment. Please refer to... Figure 6 At the hardware level, the electronic device includes a processor, internal bus, network interface, memory, and non-volatile memory, and may also include other hardware required for business operations. One or more embodiments of this specification can be implemented in software, such as the processor reading the corresponding computer program from non-volatile memory into memory and then running it. Of course, besides software implementation, one or more embodiments of this specification do not exclude other implementation methods, such as logic devices or a combination of hardware and software. That is to say, the execution entity of the following processing flow is not limited to individual logic units, but can also be hardware or logic devices.

[0069] Please refer to Figure 7 In one software implementation, an image rendering apparatus is provided. The apparatus utilizes the following units to render screen elements in a first type of coordinate system and a second type of coordinate system. Each screen element in both the first and second type of coordinate systems includes a preset screen element. The first type of coordinate system includes a coordinate system in which the orientation of the preset screen element is always aligned with a target coordinate axis, and the second type of coordinate system includes a coordinate system in which the orientation of the preset screen element is not always aligned with the target coordinate axis. The acquisition unit 710 acquires the first absolute rotation angle of the preset screen element in the second type of coordinate system in the current frame; wherein, the first absolute rotation angle includes the angle between the orientation of the preset screen element in the second type of coordinate system and the target coordinate axis; The adjustment unit 720 adjusts the first absolute rotation angle to obtain a deflection angle smaller than the first absolute rotation angle; The processing unit 730 deflects the rendering cameras in the first type of coordinate system and the second type of coordinate system according to the deflection angle, renders the scene elements in the current frame according to the rendering cameras in each coordinate system after the deflection, and displays the rendered scene elements on the same display interface.

[0070] Optionally, prior to the adjustment unit 720, the following may also be included: The determining unit determines whether the first absolute rotation angle is the same as the first absolute rotation angle of the previous frame of the current frame; in response to the first absolute rotation angle being different from the first absolute rotation angle of the previous frame of the current frame, the adjusting unit 720 is executed.

[0071] Optionally, the determining unit is further configured to execute the prediction unit in response to the first absolute rotation angle being the same as the first absolute rotation angle of the previous frame of the current frame; The prediction unit obtains the first historical deflection angle of the previous frame and the second historical deflection angle of the Nth frame before the current frame from the historical deflection angles corresponding to the recorded historical frames; predicts the second absolute angle of the current frame based on the first historical deflection angle and the second historical deflection angle, and determines the second absolute angle as the updated first absolute angle; where N is an integer greater than 1. The adjustment unit 720 further includes adjusting the updated first absolute angle.

[0072] Optionally, the prediction unit, in predicting the second absolute angle of the current frame based on the first historical deflection angle and the second historical deflection angle, is further used to calculate the difference between the first historical deflection angle and the second historical deflection angle; and add the first historical deflection angle to the difference to obtain the second absolute angle of the current frame.

[0073] Optionally, the adjustment unit 720 includes: The difference sub-unit performs linear difference processing on the first absolute rotation angle to obtain a deflection angle smaller than the first absolute rotation angle.

[0074] Optionally, the difference subunit is further configured to obtain the first historical deflection angle of the previous frame of the current frame from the historical deflection angle corresponding to the recorded historical frame; calculate the difference between the first historical deflection angle and the first absolute angle; multiply the difference by a preset difference coefficient, and add the multiplication result to the first historical deflection angle to obtain the deflection angle.

[0075] Optionally, the acquisition unit 710 is further configured to call the interface provided by the application corresponding to the second type of coordinate system to obtain the first absolute rotation angle of the preset screen element in the current frame in the second type of coordinate system returned by the interface.

[0076] Optionally, the device is applied to the vehicle infotainment system of a car, and the display interface includes the interface on the display screen of the vehicle infotainment system.

[0077] Optionally, the preset screen elements include vehicle model elements, the application corresponding to the first type of coordinate system includes at least one of vehicle desktop application and environmental perception application, and the application corresponding to the second type of coordinate system includes map navigation application.

[0078] Optionally, the image elements may include three-dimensional or two-dimensional image elements.

[0079] For details on the implementation process of the functions and roles of each module in the above-mentioned device, please refer to the implementation process of the corresponding steps in the above-mentioned image rendering method. For relevant parts, please refer to the description of the method implementation method. It will not be repeated here.

[0080] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical modules; that is, they may be located in one place or distributed across multiple network modules. Some or all of the units or modules can be selected to achieve the purpose of the solution described in this specification, depending on actual needs. Those skilled in the art can understand and implement this without any inventive effort.

[0081] The systems, devices, modules, or units described in the above embodiments can be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer, which can take the form of a personal computer, laptop computer, cellular phone, camera phone, smartphone, personal digital assistant, media player, navigation device, email sending and receiving device, game console, tablet computer, wearable device, or any combination of these devices.

[0082] In exemplary embodiments of this specification, a computer-readable storage medium is also provided, which, when the instructions in the computer-readable storage medium are executed by a processor of an electronic device, enables the electronic device to perform the aforementioned method embodiments.

[0083] Computer-readable storage media may include data signals propagated in baseband or as part of a carrier wave, carrying readable computer program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A readable signal medium may also be any readable medium other than a readable storage medium, capable of sending, propagating, or transmitting programs for use by or in conjunction with an instruction execution system, apparatus, or device.

[0084] In an exemplary embodiment of this specification, a computer program product is also provided, including a computer program that, when executed by a processor, implements the steps of the aforementioned method.

[0085] The computer-readable storage medium and the computer program code contained on the computer program product described above can be transmitted using any suitable medium, including but not limited to wireless, wired, optical fiber, RE, or any suitable combination thereof.

[0086] Program code for performing the operations described herein can be written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Java and C++, as well as conventional procedural programming languages ​​such as C or similar languages. The program code can execute entirely on the user's computing device, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server. In cases involving remote computing devices, the remote computing device can be connected to the user's computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computing device (e.g., via the Internet using an Internet service provider).

[0087] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0088] The foregoing has described specific embodiments of this specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims may be performed in a different order than that shown in the embodiments and may still achieve the desired result. Furthermore, the processes depicted in the drawings do not necessarily require the specific or sequential order shown to achieve the desired result. In some embodiments, multitasking and parallel processing are possible or may be advantageous.

[0089] The terminology used in one or more embodiments of this specification is for the purpose of describing particular embodiments only and is not intended to limit the scope of one or more embodiments of this specification. The singular forms “a,” “described,” and “the” used in one or more embodiments of this specification and in the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise. It should also be understood that the term “and / or” as used herein refers to and includes any or all possible combinations of one or more associated listed items.

[0090] It should be understood that although the terms first, second, third, etc., may be used to describe various information in one or more embodiments of this specification, such information should not be limited to these terms. These terms are only used to distinguish information of the same type from one another. For example, first information may also be referred to as second information without departing from the scope of one or more embodiments of this specification, and similarly, second information may also be referred to as first information. Depending on the context, the word "if" as used herein may be interpreted as "when," "in response to a determination," or "when," or "in the event of a determination."

[0091] The above description is merely a preferred embodiment of one or more embodiments of this specification and is not intended to limit the scope of one or more embodiments of this specification. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of one or more embodiments of this specification should be included within the protection scope of one or more embodiments of this specification.

Claims

1. An image rendering method, characterized in that, The following steps are used to render screen elements in both the first and second coordinate systems; each coordinate system includes preset screen elements, wherein the first coordinate system includes a coordinate system in which the orientation of the preset screen elements is always aligned with the target coordinate axis, and the second coordinate system includes a coordinate system in which the orientation of the preset screen elements is not always aligned with the target coordinate axis: Obtain the first absolute rotation angle of the preset screen element in the current frame in the second type of coordinate system; wherein, the first absolute rotation angle includes the angle between the orientation of the preset screen element in the second type of coordinate system and the target coordinate axis; The first absolute rotation angle is adjusted to obtain a deflection angle smaller than the first absolute rotation angle; The rendering cameras in the first and second coordinate systems are deflected according to the deflection angle. The rendering cameras in each coordinate system render the scene elements in the current frame according to the deflection, and the rendered scene elements are displayed on the same display interface.

2. The method according to claim 1, characterized in that, Before adjusting the first absolute rotation angle to obtain a deflection angle smaller than the first absolute rotation angle, the method further includes: Determine whether the first absolute rotation angle is the same as the first absolute rotation angle of the previous frame of the current frame; In response to the fact that the first absolute rotation angle is different from the first absolute rotation angle of the previous frame of the current frame, the adjustment of the first absolute rotation angle is performed.

3. The method according to claim 2, characterized in that, Also includes; In response to the fact that the first absolute rotation angle is the same as the first absolute rotation angle of the previous frame of the current frame, the first historical rotation angle of the previous frame of the current frame and the second historical rotation angle of the Nth frame before the current frame are obtained from the historical rotation angles corresponding to the recorded historical frames, where N is an integer greater than 1. The second absolute angle of the current frame is predicted based on the first historical deflection angle and the second historical deflection angle, and the second absolute angle is determined as the updated first absolute angle; The adjustment of the first absolute angle includes: The updated first absolute angle is adjusted.

4. The method according to claim 3, characterized in that, The step of predicting the second absolute angle of the current frame based on the first historical deflection angle and the second historical deflection angle includes: Calculate the difference between the first historical deflection angle and the second historical deflection angle; The first historical deflection angle is added to the difference to obtain the second absolute angle of the current frame.

5. The method according to claim 1, characterized in that, The step of adjusting the first absolute angle to obtain a deflection angle smaller than the first absolute angle includes: The first absolute rotation angle is smoothed to obtain a deflection angle smaller than the first absolute rotation angle.

6. The method according to claim 5, characterized in that, The step of smoothing the first absolute angle to obtain a deflection angle smaller than the first absolute angle includes: Obtain the first historical deflection angle of the previous frame of the current frame from the historical deflection angles corresponding to the recorded historical frames; Calculate the difference between the first historical deflection angle and the first absolute angle; The difference is multiplied by a preset difference coefficient, and the multiplication result is added to the first historical deflection angle to obtain the deflection angle.

7. The method according to claim 1, characterized in that, The step of obtaining the first absolute rotation angle of the preset screen element in the current frame in the second type of coordinate system includes: Call the interface provided by the application corresponding to the second type of coordinate system to obtain the first absolute rotation angle of the preset screen element in the current frame in the second type of coordinate system returned by the interface.

8. The method according to claim 1, characterized in that, The method is applied to the vehicle infotainment system of a car, and the display interface includes the interface on the display screen of the vehicle infotainment system.

9. The method according to claim 8, characterized in that, The preset screen elements include vehicle model elements, the application corresponding to the first type of coordinate system includes at least one of vehicle desktop application and environmental perception application, and the application corresponding to the second type of coordinate system includes map navigation application.

10. The method according to claim 1, characterized in that, The image elements include three-dimensional or two-dimensional image elements.

11. An electronic device, characterized in that, include: processor; Memory used to store processor-executable instructions; The processor implements the method as described in any one of claims 1-10 by executing the executable instructions.

12. A computer-readable storage medium, characterized in that, It stores computer-readable instructions that, when executed by a processor, implement the method as described in any one of claims 1-10.