Simulation video injection method and system
By combining a simulated video rendering workstation, a PCIe adapter board, a CPCIe adapter board, and a video simulation board, the problem of limited image post-processing in HIL testing was solved, achieving richer image processing effects and real-time performance.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- BEIJING JINGWEI HIRAIN TECH CO INC
- Filing Date
- 2025-11-10
- Publication Date
- 2026-05-21
AI Technical Summary
In the HIL test, due to the limited internal resources of the camera simulation board, the image post-processing effect was limited and could not achieve rich image processing effects.
The system employs a combination of a simulated video rendering workstation, a PCIe adapter board, a CPCIe adapter board, a CPCIe expansion chassis, and a video simulation board. Image data is transmitted to the video simulation board via the PCIe and CPCIe adapter boards and then processed by the graphics card, thus avoiding post-processing of the image within the video simulation board.
It achieves richer image post-processing effects, solves the problem of limited image post-processing caused by the limited resources of the camera simulation board, and improves the richness and real-time performance of image processing.
Smart Images

Figure CN2025133776_21052026_PF_FP_ABST
Abstract
Description
A method and system for injecting simulated video
[0001] This application claims priority to Chinese Patent Application No. 202411620776.3, filed on November 13, 2024, entitled "A Method and System for Injecting Simulated Video", the entire contents of which are incorporated herein by reference. Technical Field
[0002] This application relates to the field of image processing technology, and in particular to a method and system for injecting simulated video. Background Technology
[0003] With the rapid development of intelligent driving technology in automobiles, the number of I / Os that need to be simulated in the hardware-in-the-loop (HIL) test of the controller has indeed increased. In HIL testing, in order to simulate real driving scenarios and environments, the generated simulation video can be injected into the corresponding camera simulation input so that the simulation video injection can be completed later.
[0004] Currently, video is typically rendered using a graphics card via scene simulation software. The rendered video content is then output to a camera simulation board through the graphics card's display port. This simulation board then processes the image content and strings together the simulated camera signals and simulated video data before inputting them to the controller, thus achieving simulated video injection. Image post-processing is implemented internally within the camera simulation board; however, the limited resources within the board restrict its processing capabilities.
[0005] Therefore, how to enrich image post-processing effects has become an urgent problem to be solved in this field. Summary of the Invention
[0006] This application provides a method and system for injecting simulated video, with the aim of providing rich image post-processing effects.
[0007] To achieve the above objectives, this application provides the following technical solution:
[0008] A simulation video injection system, the injection system comprising: a simulation video rendering workstation, a PCIe adapter board, a CPCIe adapter board, a CPCIe expansion chassis, and a video simulation board;
[0009] The PCIe adapter board is connected to the simulated video rendering workstation; the simulated video rendering workstation is used to store image data in shared memory, and the PCIe adapter board is used to transmit the image data.
[0010] The PCIe adapter board is connected to the CPCIe adapter board; the CPCIe adapter board is used to transmit the image data.
[0011] The CPCIe adapter board is located inside the CPCIe expansion chassis, and the CPCIe adapter board has multiple CPCIe slots.
[0012] The video simulation board is installed in the CPCIe slot of the CPCIe expansion chassis; the video simulation board is used to inject the image data into the controller;
[0013] The video simulation board is connected to the controller.
[0014] Optionally, the PCIe adapter board is connected to the PCIe slot of the simulation video rendering workstation; wherein the PCIe slot of the simulation video rendering workstation conforms to the PCIe 3.0 standard, and the PCIe slot has at least 16 channels.
[0015] Optionally, the simulated video rendering workstation is connected to a graphics card.
[0016] Optionally, the simulated video rendering workstation includes at least scene simulation software, RTSPU software, and a buffer pool; the scene simulation software is used to preprocess the image data and output the preprocessed image data and / or the image data to the display; the RTSPU software is used to obtain the image data from the shared memory and preprocess the image data; the buffer pool is used to store the image data.
[0017] A method for injecting simulated video, applied to the simulated video injection system described above, includes:
[0018] The latest image data is periodically retrieved from the shared memory via RTSPU software;
[0019] The latest image data is stored in a buffer pool;
[0020] Upon receiving a trigger signal from the controller, the system searches for the latest image data stored in the buffer pool and identifies it as the target image data.
[0021] The target image data is sent to the video simulation board via the PCIe adapter board and the CPCIe adapter board.
[0022] Upon receiving the target image data, the target image data is sent to the controller via the video simulation board.
[0023] Optionally, after periodically acquiring image data from the shared memory via the RTSPU software, the process further includes:
[0024] The latest image data is sent to the video simulation board via the PCIe adapter board and the CPCIe adapter board.
[0025] Upon receiving a trigger signal from the controller, the latest image data is sent to the controller via the video simulation board.
[0026] Optionally, after receiving the trigger signal from the controller and sending the latest image data to the controller via the video simulation board, the method further includes:
[0027] After the video simulation board finishes sending the latest image data, the RTSPU software retrieves the latest image data from the shared memory.
[0028] Update the latest image data to the video simulation board.
[0029] Optionally, storing the latest image data in a buffer pool includes:
[0030] For each buffer in the buffer pool, detect whether image data exists in the buffer;
[0031] If the image data exists in the buffer, then the storage time of the image data in the buffer is obtained;
[0032] Update the image data with the earliest storage time to the latest image data;
[0033] If the image data is not present in the buffer, the latest image data is stored in the buffer.
[0034] Optionally, the step of searching for the latest image data with the latest storage time from the buffer pool after receiving a trigger signal from the controller and identifying it as the target image data includes:
[0035] Upon receiving a trigger signal from the controller, the storage time of the latest image data in each buffer of the buffer pool is obtained;
[0036] Detect whether the latest image data with the most recent storage time meets a preset requirement; the preset requirement is that the latest image data is complete image data.
[0037] If the latest image data with the latest storage time meets the preset requirements, then the latest image data with the latest storage time is identified as the target image data;
[0038] If the latest image data with the latest storage time does not meet the preset requirements, then the latest image data with the latest storage time is selected from other buffers and identified as the target image data; the other buffers are buffers other than the buffer to which the latest image data that does not meet the preset requirements belongs.
[0039] Optionally, before periodically retrieving the latest image data from the shared memory via the RTSPU software, the method further includes:
[0040] The latest image data is obtained from the image database using scene simulation software, and the latest image data is stored in shared memory;
[0041] Once the latest image data is stored, it is sent to the display.
[0042] The technical solution provided in this application includes an injection system comprising: a simulated video rendering workstation, a PCIe adapter board, a CPCIe adapter board, a CPCIe expansion chassis, and a video simulation board. The PCIe adapter board is connected to the simulated video rendering workstation. The simulated video rendering workstation stores image data in shared memory, and the PCIe adapter board is used to transmit image data. The PCIe adapter board is connected to the CPCIe adapter board. The CPCIe adapter board is used to transmit image data. The CPCIe adapter board is located inside the CPCIe expansion chassis, expanding the PCIe slots of the CPCIe expansion chassis into multiple CPCIe slots. The video simulation board is located in a CPCIe slot of the CPCIe expansion chassis. The video simulation board is used to inject image data into the controller. The video simulation board is connected to the controller. By transmitting image data to the video simulation board through the PCIe adapter board and the CPCIe adapter board, and then injecting the image data into the controller, the graphics card processes the image, thereby enabling richer image post-processing effects. Attached Figure Description
[0043] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0044] Figure 1 is a schematic diagram of the architecture of a simulation video injection system provided in an embodiment of this application;
[0045] Figure 2 is a flowchart of a simulation video injection method provided in an embodiment of this application;
[0046] Figure 3 is a schematic diagram of a display showing content provided in an embodiment of this application;
[0047] Figure 4 is a flowchart of another method for injecting simulated video provided in an embodiment of this application;
[0048] Figure 5 is a flowchart of a method for storing the latest image data provided in an embodiment of this application;
[0049] Figure 6 is a flowchart of a method for acquiring the latest image data provided in an embodiment of this application;
[0050] Figure 7 is a schematic diagram of data transmission provided in an embodiment of this application;
[0051] Figure 8 is a schematic diagram of another data transmission method provided in an embodiment of this application. Detailed Implementation
[0052] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0053] In this application, the terms "comprising," "including," or any other variations thereof are intended to cover a 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.
[0054] Figure 1 shows a schematic diagram of the architecture of a simulated video injection system provided in an embodiment of this application. The injection system includes: a simulated video rendering workstation 11, a PCIe adapter board 12, a CPCIe adapter board 13, a CPCIe expansion chassis 14, and a video simulation board 15.
[0055] The PCIe adapter board 12 is connected to the simulation video rendering workstation 11.
[0056] The simulation video rendering workstation 11 is used to store image data in shared memory, and the PCIe adapter board 12 is used to transmit image data.
[0057] It should be noted that the PCIe adapter board 12 is connected to the PCIe slot of the simulation video rendering workstation 11.
[0058] Specifically, the PCIe slots of the simulation video rendering workstation 11 conform to the PCIe 3.0 standard, and the PCIe slots have at least 16 lanes.
[0059] It should be emphasized that the simulation video rendering workstation 11 is connected to the graphics card 16.
[0060] Specifically, the simulation video rendering workstation 11 includes at least scene simulation software, RTSPU software, and a buffer pool.
[0061] The scene simulation software is used to preprocess the image data and output the preprocessed image data and / or image data to the display. The RTSPU software is used to obtain image data from shared memory and preprocess the image data. The buffer pool is used to store the image data.
[0062] Optionally, the buffer pool may include, but is not limited to, the Buffer pool.
[0063] Understandably, after the scene simulation software stores image data in shared memory, the RTSPU software can retrieve image data from the shared memory and store it in a buffer pool so that it can subsequently retrieve complete and stable image data from the buffer pool.
[0064] It should be noted that image preprocessing includes, but is not limited to: pixel format conversion of image data (i.e., direct conversion of color spaces such as RGB / YUV / HSI), gain adjustment of color channels of image data (e.g., increasing the gain of Red in the RGB color space to make the image content more red), local mosaicking of image data, and adding layers to image data (e.g., adding rain and fog layer effects to image data).
[0065] It should be noted that the image data is processed by the graphics card 16, and then the processed image data is stored in shared memory by the scene simulation software.
[0066] It is important to emphasize that the unused HDMI / DP ports on the graphics card 16 are connected to the monitor, allowing for real-time monitoring of the image data injected into the controller (e.g., whether the rendering frame rate meets requirements, whether there are any abnormalities in the rendered image, and whether the current rendering scene matches the controller's algorithm recognition results).
[0067] PCIe adapter board 12 is connected to CPCIe adapter board 13.
[0068] The CPCIe adapter board 13 is used to transmit image data.
[0069] Specifically, the PCIe adapter board 12 is connected to the CPCIe adapter board 13 via a cable.
[0070] Understandably, once the RTSPU software can obtain image data from shared memory, it can transmit the image data through the PCIe adapter board 12 and the CPCIe adapter board 13.
[0071] CPCIe adapter board 13 is located inside CPCIe expansion chassis 14, and CPCIe adapter board 13 has multiple CPCIe slots.
[0072] It should be noted that the CPCIe adapter board 13 is located inside the CPCIe expansion chassis 14. That is, the CPCIe adapter board is inserted into the CPCIe expansion chassis 14. Since the CPCIe adapter board 13 has multiple CPCIe slots, a high-bandwidth PCIe slot can be expanded into multiple low-bandwidth CPCIe slots so that subsequent video emulation boards can be inserted into the low-bandwidth CPCIe slots.
[0073] Understandably, the CPCIe adapter board 13 is located inside the CPCIe expansion chassis 14. Through the chips on the expansion chassis (such as the PCIe switch chip), a high-bandwidth PCIe slot is expanded into multiple low-bandwidth CPCIe slots.
[0074] The video simulation board 15 is located in the CPCIe slot of the CPCIe expansion chassis 14.
[0075] The video simulation board 15 is used to inject image data into the controller 17.
[0076] It is understandable that the video emulation board 15 is set in the CPCIe slot of the CPCIe expansion chassis 14, that is, the video emulation board 15 is inserted into the CPCIe slot of the expansion chassis 14.
[0077] Optionally, controller 17 may include, but is not limited to, a controller for the domain under test.
[0078] Optionally, the video simulation board 15 may include, but is not limited to, a camera video simulation board.
[0079] The video simulation board 15 is connected to the controller 17.
[0080] Specifically, the video simulation board 15 is connected to the module interface of the controller 17 via a coaxial cable.
[0081] Understandably, the video simulation board 15 transmits image data (i.e., the serialized simulated camera information) to the controller 17 via a coaxial cable.
[0082] In summary, image data is transmitted to the video emulation board via PCIe and CPCIe adapter boards, and then injected into the controller via the video emulation board. Since the video emulation board does not perform image post-processing, which is done by the graphics card, there is no limitation on the internal resources of the video emulation board, thus enabling richer image post-processing effects.
[0083] Corresponding to the simulated video injection system provided in the above embodiments of the present invention, referring to Figure 2, a flowchart of a simulated video injection method provided in an embodiment of the present invention is shown, the method comprising:
[0084] S201: Periodically retrieves the latest image data from shared memory via RTSPU software.
[0085] The latest image data refers to the latest image data stored in the shared memory.
[0086] Optionally, the latest image data can be periodically retrieved from shared memory via the RTSPU software. Specifically, the latest image data can be retrieved from shared memory every minute or every ten minutes via the RTSPU software.
[0087] It should be noted that RTSPU software typically refers to client software that supports the Real-Time Streaming Protocol (RTSP). RTSP is a network protocol used for real-time data transmission, commonly used to transmit multimedia data streams such as audio and video over a network.
[0088] It is understandable that the latest image data is periodically retrieved from shared memory via the RTSPU software to ensure that the latest image data sent subsequently is real-time.
[0089] Optionally, before step S201, in order to monitor the currently injected image data in real time, the latest image data needs to be sent to the display for display. Therefore, in another embodiment of this application, an image data display method is provided, including:
[0090] The latest image data is obtained from the image database using scene simulation software and stored in shared memory.
[0091] Understandably, in order for the RTSPU software to obtain the latest image data currently stored in shared memory, the scene simulation software needs to obtain the latest image data from the image database in real time and store the latest image data obtained in real time in shared memory.
[0092] Once the latest image data is stored, it will be sent to the display.
[0093] It should be noted that by sending the latest image data to the display, the current image data injected into the controller can be viewed in real time, allowing for timely detection and resolution of any issues with the image data. The content displayed on the monitor can be seen in Figure 3.
[0094] Optionally, after step S201, the latest image data can be directly sent to the video simulation board, allowing the simulation video board to inject the latest image data into the controller. Directly sending the latest image data reduces transmission and processing delays, thereby improving real-time performance. Therefore, another embodiment of this application provides another method for injecting simulation video, as shown in Figure 4, including the following steps:
[0095] S401: Sends the latest image data to the video simulation board via PCIe and CPCIe adapter boards.
[0096] Understandably, because PCIe and CPCIe adapters have high bandwidth and low latency, transmitting image data through them enables real-time processing, ensuring that the video simulation board can acquire and process the latest image data in a timely manner.
[0097] S402: Upon receiving a trigger signal from the controller, the latest image data is sent to the controller via the video simulation board.
[0098] The triggering information includes, but is not limited to, trigger signals (typically used to trigger image capture or other related operations).
[0099] Understandably, when the video simulation board receives the trigger signal sent by the controller, it sends the latest image data to the controller, thus completing the injection of the simulation video.
[0100] Optionally, after step S302, to ensure that the video simulation board can acquire and process the latest image data in a timely manner to maintain the real-time performance and accuracy of the image display, another embodiment of this application provides an image data updating method, including:
[0101] Once the video simulation board has finished sending the latest image data, the RTSPU software retrieves the latest image data from shared memory.
[0102] It is understandable that the scene simulation software updates the image data in the shared memory in real time. Therefore, the image data obtained from the shared memory by the RTSPU software is the latest stored image data.
[0103] Update the video simulation board with the latest image data.
[0104] It is understandable that the specific implementation process of updating the latest image data to the video simulation board is as follows: the latest image data is sent to the video simulation board through the PCIe adapter board and CPCIe adapter board, so that the video simulation board stores the latest image data.
[0105] S202: Store the latest image data in the buffer pool.
[0106] It should be noted that, because the frame rate of the rendered images varies depending on the complexity of the scene, the frame rate of the simulation data source fluctuates. Therefore, the frame rate of the image data stored in the shared memory by the scene simulation software also fluctuates, as does the frame rate of the latest image data retrieved from the shared memory by the RTSPU software.
[0107] The frame rate of the trigger signal sent by the controller to the video simulation board is usually relatively stable, but occasional fluctuations can still occur. To ensure the integrity and stability of the image data received by the controller, the image data is stored in a buffer pool to ensure that the controller receives complete image data.
[0108] Specifically, assuming the frame rate of the controller's camera module is 30 FPS, the frame rate rendered by the scene simulation software fluctuates between 24 and 60 FPS. Due to the existence of the buffer pool, when the frame rate fluctuation is greater than the controller's 30 FPS, the RTSPU software performs a function similar to downsampling, sampling the 30 frames required by the controller from the frame images rendered in the current 1 second. When the frame rate fluctuation is less than the controller's 30 FPS, the RTSPU software performs a function similar to interpolation based on the existing image content, interpolating the content of the same image frames from the previous moment from the image frames rendered in the current 1 second, thereby meeting the controller's 30 FPS requirement.
[0109] Optionally, in another embodiment of the application, the specific implementation of step S202, as shown in FIG5, includes the following steps:
[0110] S501: For each buffer in the buffer pool, check if there is image data in the buffer.
[0111] If image data exists in the buffer, proceed to step S502; if image data does not exist in the buffer, proceed to step S504.
[0112] One buffer stores one image data.
[0113] Specifically, assuming there are three buffers in the buffer pool, each containing image data, for the three buffers in the buffer pool, check whether there is image data in the buffer. Obviously, there is image data in the buffer, so continue to execute S502.
[0114] Specifically, suppose there are three buffers in the buffer pool, namely the first buffer, the second buffer and the third buffer. The first buffer and the second buffer contain image data, while the third buffer does not contain image data. For the three buffers in the buffer pool, it is checked whether there is image data in the buffer. Obviously, there is no image data in the third buffer. Therefore, step S504 is executed.
[0115] S502: Get the storage time of the image data in the buffer.
[0116] It should be noted that the scene simulation software stores image data in each buffer at different times. Therefore, the storage time of image data in each buffer can be obtained so that new image data can be stored later.
[0117] S503: Update the oldest image data to the latest image data.
[0118] It is understandable that, since image data stored earlier is less real-time, in order to ensure that the data in the buffer pool is real-time, the image data with the earliest storage time needs to be updated to the latest image data, that is, the image data with the earliest storage time is replaced with the latest image data.
[0119] Specifically, there are three image data sets, stored in three buffers respectively. The storage time of the first image data in the first buffer is 11:30, the storage time of the second image data in the second buffer is 11:40, and the storage time of the third image data in the third buffer is 11:50. The image data with the earliest storage time is updated to the latest image data, that is, the first image data in the first buffer is replaced with the latest image data.
[0120] S504: Store the latest image data in the buffer.
[0121] It is understandable that if there is no image data in the buffer, it means that there is no need to replace the image data at this time, so the latest image data can be stored in the buffer.
[0122] S203: Upon receiving a trigger signal from the controller, retrieve the latest image data with the latest storage time from the buffer pool and mark it as the target image data.
[0123] Understandably, upon receiving a trigger signal from the controller, the system searches for the latest image data stored in the buffer pool, which is the latest currently stored image data, and then identifies this latest currently stored image data as the target image data.
[0124] Optionally, the video simulation board can periodically and actively search the buffer pool for the latest image data with the most recent storage time.
[0125] Alternatively, in another embodiment of the application, the specific implementation of step S203, as shown in FIG6, includes the following steps:
[0126] S601: Upon receiving a trigger signal from the controller, obtain the storage time of the latest image data in each buffer of the buffer pool.
[0127] Specifically, assume there are three buffers in the buffer pool: the first buffer, the second buffer, and the third buffer. The latest image data is stored in the first buffer at 11:20, in the second buffer at 11:10, and in the third buffer at 11:40.
[0128] S602: Detect whether the latest image data stored at the latest time meets the preset requirements.
[0129] If the latest image data stored at the latest time meets the preset requirements, then proceed to step S603; if the latest image data stored at the latest time does not meet the preset requirements, then proceed to step S604.
[0130] The preset requirement is that the latest image data is complete image data.
[0131] It should be noted that if the buffer is being updated with images or videos (e.g., the oldest image data is being updated to the latest image data), then the latest image or video will not be complete image data at this time.
[0132] Specifically, assuming the storage time of the latest image data in the first buffer is 11:20, the storage time of the latest image data in the second buffer is 11:10, and the storage time of the latest image data in the third buffer is 11:40, and the latest image data in the third buffer is complete image data, it is checked whether the latest image data in the third buffer meets the preset requirements. Obviously, the latest image data in the third buffer meets the preset requirements. Therefore, step S603 is executed.
[0133] S603: Identify the latest image data with the latest storage time as the target image data.
[0134] S604: Select the latest image data with the latest storage time from other buffers and mark it as the target image data.
[0135] Other buffers are buffers other than the buffer containing the latest image data that does not meet the preset requirements.
[0136] Specifically, assuming the latest image data in the first buffer is stored at 11:20, the latest image data in the second buffer is stored at 11:10, and the latest image data in the third buffer is stored at 11:40, and the latest image data in the third buffer is not complete image data, then it is necessary to select the latest image data with the latest storage time from the first and second buffers as the latest image data in the first buffer, and mark the latest image data in the first buffer as the target image data.
[0137] S204: Sends the target image data to the video simulation board via the PCIe adapter board and CPCIe adapter board.
[0138] It should be noted that the specific implementation of step S204 can be referred to step S301 accordingly, and will not be repeated here.
[0139] S205: After receiving the target image data, the target image data is sent to the controller through the video simulation board.
[0140] It is understandable that after receiving the target image data, the target image data is sent to the controller through the video simulation board, thereby completing the simulation video injection into the controller.
[0141] Referring to Figure 1 and Figure 7, which illustrates a data transmission diagram, the scene simulation software updates the image content (i.e., the latest image data) to the shared memory. It then sends the latest image data to the graphics card via the output port of the simulation video rendering workstation, and finally sends it to the monitor via the graphics card's HDMI / DP interface. The RTSPU software retrieves the latest image data from the shared memory and sends it to the video simulation board (i.e., the camera simulation board) via the PCIe and CPCIe adapter boards. The video simulation board then transmits the latest image data (i.e., the serialized camera information) to the controller (i.e., the domain under test controller) via a coaxial cable.
[0142] Referring to Figure 1 and Figure 8, the scene simulation software stores the latest image data in shared memory, retrieves the latest image data from the shared memory through the RTSPU software, stores the latest image data in the buffer pool, and when it receives a trigger signal from the controller, it retrieves the latest image data that has the latest storage time and meets the preset requirements, and sends the latest image data to the controller.
[0143] In summary, by storing the latest image data in a buffer pool, when a trigger signal is received from the controller, the latest image data with the latest storage time is retrieved from the buffer pool and injected into the controller. This ensures that the latest image data injected into the controller is complete and real-time, enabling the controller to make more accurate decisions based on the accurate latest image data.
[0144] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. In particular, for system or system embodiments, since they are fundamentally similar to method embodiments, the description is relatively simple; relevant parts can be referred to the descriptions in the method embodiments. The systems and system embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate. Components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without creative effort.
[0145] Those skilled in the art will further recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementations should not be considered beyond the scope of this invention.
[0146] The above description of the disclosed embodiments enables those skilled in the art to make or use this application. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of this application. Therefore, this application is not to be limited to the embodiments shown herein, but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
Claims
1. An injection system of emulated video, characterized in that, The injection system includes: a simulation video rendering workstation, a PCIe adapter board, a CPCIe adapter board, a CPCIe expansion chassis, and a video simulation board. The PCIe adapter board is connected to the simulated video rendering workstation; the simulated video rendering workstation is used to store image data in shared memory, and the PCIe adapter board is used to transmit the image data. The PCIe adapter board is connected to the CPCIe adapter board; the CPCIe adapter board is used to transmit the image data. The CPCIe adapter board is located inside the CPCIe expansion chassis, and the CPCIe adapter board has multiple CPCIe slots. The video simulation board is installed in the CPCIe slot of the CPCIe expansion chassis; the video simulation board is used to inject the image data into the controller; The video simulation board is connected to the controller.
2. The system of claim 1, wherein, The PCIe adapter board is connected to the PCIe slot of the simulation video rendering workstation; wherein the PCIe slot of the simulation video rendering workstation conforms to the PCIe 3.0 standard and has at least 16 channels.
3. The system of claim 1, wherein, The simulated video rendering workstation is connected to the graphics card.
4. The system of claim 1, wherein, The simulated video rendering workstation includes at least scene simulation software, RTSPU software, and a buffer pool; the scene simulation software is used to preprocess the image data and output the preprocessed image data and / or the image data to the display; the RTSPU software is used to obtain the image data from the shared memory and preprocess the image data; the buffer pool is used to store the image data.
5. A method of injecting a simulated video, characterized by, The injection system for the simulated video according to any one of claims 1-4 includes: The latest image data is periodically retrieved from the shared memory via RTSPU software; The latest image data is stored in a buffer pool; Upon receiving a trigger signal from the controller, the system searches for the latest image data stored in the buffer pool and identifies it as the target image data. The target image data is sent to the video simulation board via the PCIe adapter board and the CPCIe adapter board. Upon receiving the target image data, the target image data is sent to the controller via the video simulation board.
6. The method of claim 5, wherein, After periodically acquiring image data from the shared memory via the RTSPU software, the process further includes: The latest image data is sent to the video simulation board via the PCIe adapter board and the CPCIe adapter board. Upon receiving a trigger signal from the controller, the latest image data is sent to the controller via the video simulation board.
7. The method of claim 6, wherein, After receiving the trigger signal from the controller, and sending the latest image data to the controller via the video simulation board, the process further includes: After the video simulation board finishes sending the latest image data, the RTSPU software retrieves the latest image data from the shared memory. Update the latest image data to the video simulation board.
8. The method of claim 5, wherein, The step of storing the latest image data in a buffer pool includes: For each buffer in the buffer pool, detect whether image data exists in the buffer; If the image data exists in the buffer, then the storage time of the image data in the buffer is obtained; Update the image data with the earliest storage time to the latest image data; If the image data is not present in the buffer, the latest image data is stored in the buffer.
9. The method of claim 5, wherein, Upon receiving a trigger signal from the controller, the process of retrieving the latest image data with the most recent storage time from the buffer pool and identifying it as the target image data includes: Upon receiving a trigger signal from the controller, the storage time of the latest image data in each buffer of the buffer pool is obtained; Detect whether the latest image data with the most recent storage time meets a preset requirement; the preset requirement is that the latest image data is complete image data. If the latest image data with the latest storage time meets the preset requirements, then the latest image data with the latest storage time is identified as the target image data; If the latest image data with the latest storage time does not meet the preset requirements, then the latest image data with the latest storage time is selected from other buffers and identified as the target image data; the other buffers are buffers other than the buffer to which the latest image data that does not meet the preset requirements belongs.
10. The method of claim 5, wherein, Before the periodic acquisition of the latest image data from the shared memory via the RTSPU software, the process also includes: The latest image data is obtained from the image database using scene simulation software, and the latest image data is stored in shared memory; Once the latest image data is stored, it is sent to the display.