Image processing device, test method for image processing device and image processing system

By using a video generator in an image processing system to simulate a camera and generate video data streams, the problems of high testing costs and cumbersome procedures in existing technologies are solved, achieving the effects of reducing costs, simplifying processes, and improving efficiency and accuracy.

CN118283228BActive Publication Date: 2025-10-31锐泰微(北京)电子科技有限公司
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202410418378.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-04-08
Publication Date
2025-10-31
Estimated Expiration
2044-04-08

AI Technical Summary

Technical Problem

Existing image processing systems require multiple cameras to collect video data streams during testing, which is costly and involves cumbersome testing steps, making it difficult to effectively reduce testing costs and simplify the process.

Method used

In the image processing system, a video generator is set up to simulate a camera. The video data stream is generated through the frame synchronization signal, and the vertical blanking duration of the display frame is adjusted according to the receiving time interval to eliminate time deviation and avoid processor parsing and merging errors.

Benefits of technology

It reduced testing costs, simplified the testing process, improved testing efficiency and accuracy, and enhanced the stability and reliability of the system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118283228B_ABST
    Figure CN118283228B_ABST
Patent Text Reader

Abstract

This application discloses an image processing apparatus, a testing method for the image processing apparatus, and an image processing system. The image processing apparatus includes: a processor for processing multiple video data streams; at least one serializer, each serializer including a video generator for simulating a camera to generate video data streams; and a deserializer providing at least one frame synchronization signal to each serializer, so that each video generator outputs a corresponding video data stream to the deserializer in test mode according to the first frame synchronization signal, and the deserializer provides multiple video data streams to the processor based on the video data streams provided by each serializer. By simulating a camera using a video generator, no camera is required during the testing process, and no camera configuration is needed, thus reducing testing costs, simplifying the testing process, and improving testing efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of information technology, and in particular to an image processing device, a testing method for the image processing device, and an image processing system. Background Technology

[0002] In recent years, with the development of computer science and technology, image processing technology has also developed rapidly. Simultaneously, to meet the demand for wide-angle, large-scene images, multi-channel data acquisition and stitching technologies have become research hotspots and have been widely applied in various fields. Taking assisted driving scenarios as an example, the environment in which vehicles operate is often very complex. To solve the problem of blind spots for drivers, the most common technical approach currently is to install multiple cameras on the vehicle body to monitor the surrounding environment from different angles, obtaining multiple video data streams. These multiple video data streams are then parsed, merged, and processed to obtain a panoramic video of the vehicle's surroundings.

[0003] Figure 1 A schematic block diagram of an image processing system for processing multiple video data streams is shown. See also Figure 1 The image processing system 100 is used to process multiple video data streams acquired by the multiple cameras 140 (for example, in...). Figure 1 (The image shows four cameras). The image processing system 100 includes a processor 110 and a communication link. Specifically, the processor 110 is used to parse and merge the video data streams. The communication link provides a video data stream transmission channel between each camera 140 and the processor 110. Further, the communication link includes a deserializer 120 communicatively connected to the processor and a serializer 130 corresponding to each camera 140.

[0004] To ensure that the image processing system can correctly handle multiple video data streams, it must undergo rigorous testing. However, the testing process requires acquiring video data streams from multiple cameras, which is costly. Furthermore, to ensure the testing can proceed smoothly, the multiple cameras need to be pre-configured, making the testing process cumbersome. Summary of the Invention

[0005] In view of the above problems, the purpose of this application is to provide an image processing apparatus, a testing method for the image processing apparatus, and an image processing system, which can reduce testing costs and simplify the testing process.

[0006] According to one aspect of this application, an image processing apparatus is provided, comprising: a processor for processing multiple video data streams; at least one serializer, each serializer including a video generator for simulating a camera to generate the video data streams; and a deserializer providing at least one frame synchronization signal to each of the serializers, such that each video generator outputs a corresponding video data stream to the deserializer in a test mode based on a first frame synchronization signal, the deserializer providing the multiple video data streams to the processor based on the video data streams provided by each of the serializers.

[0007] Optionally, each video data stream includes multiple display frames, and the transmission duration of each display frame includes a vertical blanking duration; the deserializer is further configured to provide a frame synchronization signal to each serializer when receiving a preset number of display frames from each video data stream; the video generator is further configured to adjust the vertical blanking duration of the (j+1)th display frame according to the reception time interval between receiving the (i+1)th frame synchronization signal and the i-th frame synchronization signal, wherein the video generator receives the (i+1)th frame synchronization signal during the transmission of the j-th display frame, and i and j are both integers greater than or equal to 1.

[0008] Optionally, the video generator includes: a data generation module for generating a corresponding video data stream based on the first frame synchronization signal; a timing module for acquiring the reception time interval between receiving the (i+1)th frame synchronization signal and the i-th frame synchronization signal; an adjustment module communicatively connected to the timing module for adjusting the vertical blanking duration of the (j+1)th display frame based on the reception time interval; and a transmission module for transmitting the video data stream, wherein the vertical blanking duration of the unadjusted display frames is a preset duration.

[0009] Optionally, the adjustment module is configured to adjust the vertical blanking duration of the (j+1)th display frame based on the difference between the reception time interval and the standard transmission interval between two adjacent frame synchronization signals.

[0010] Optionally, the video generator further includes a detection module, which is communicatively connected to the adjustment module and the sending module, respectively. The detection module is configured to control the sending module to stop sending the video data stream and report an error when the difference between the receiving time interval and the standard transmission interval is greater than a preset adjustment range.

[0011] Optionally, the deserializer provides the frame synchronization signal to each of the serializers via the reverse channel of the corresponding serial data path; each of the serializers provides the corresponding video data stream to the deserializer via the forward channel of the corresponding serial data path.

[0012] Optionally, the deserializer includes: a buffer for buffering the video data streams output by each of the video generators; and a signal generator, communicatively connected to the processor and the buffer, for generating each of the frame synchronization signals.

[0013] Optionally, the deserializer further includes a detection unit connected to the buffer, which compares each of the video data streams with corresponding standard data to verify the serial data path.

[0014] Optionally, the detection unit pre-stores the standard data or generates the standard data corresponding to each of the video data streams according to the data generation logic of the video generator.

[0015] Optionally, the frame synchronization signal is a pulse signal.

[0016] According to another aspect of this application, an image processing system is provided, wherein the image processing system includes: an image processing apparatus as described in any of the preceding claims, wherein the image processing system is configured to, in a test mode, generate the video data stream by simulating a camera through the video generator; and in an operating mode, connect each of the serializers to a corresponding camera to acquire the corresponding video data stream via each of the cameras.

[0017] According to a third aspect of this application, a method for testing an image processing apparatus is provided, comprising: setting up a test environment including a processor, a deserializer, and at least one serializer, the processor being used to process multiple video data streams, each serializer including a video generator being used to simulate a camera generating the video data streams; providing at least one frame synchronization signal to each of the serializers respectively; in each video generator, providing a corresponding video data stream to the deserializer according to a first frame synchronization signal; and in the deserializer providing the multiple video data streams to the processor according to the video data streams provided by each of the serializers.

[0018] Optionally, each video data stream includes multiple display frames, and the transmission duration of each display frame includes a vertical blanking duration; the test method further includes: providing a frame synchronization signal to each serializer when the deserializer receives a preset number of display frames from each video data stream; and in each video generator, adjusting the vertical blanking duration of the (j+1)th display frame according to the reception time interval between receiving the (i+1)th frame synchronization signal and the i-th frame synchronization signal, wherein the video generator receives the (i+1)th frame synchronization signal during the transmission of the j-th display frame, and i and j are both integers greater than or equal to 1.

[0019] Optionally, the method for adjusting the vertical blanking duration of the (j+1)th display frame includes: obtaining a standard transmission interval between two adjacent frame synchronization signals; and adjusting the vertical blanking duration of the (j+1)th display frame according to the difference between the reception time interval and the standard transmission interval.

[0020] Optionally, the test method further includes, before adjusting the vertical blanking duration of the (j+1)th display frame: determining whether the difference between the receiving time interval and the standard transmission interval is greater than a preset adjustment range; if it is greater, stopping the transmission of the video data stream and reporting an error.

[0021] Optionally, the test method further includes: transmitting the frame synchronization signal via the reverse channel of the corresponding serial data path; and transmitting the video data stream via the forward channel of the corresponding serial data path.

[0022] Optionally, the testing method further includes: comparing each of the video data streams with corresponding standard data in the deserializer to verify the serial data path.

[0023] Optionally, the testing method further includes: pre-storing the standard data in the deserializer when setting up the testing environment; or generating the standard data corresponding to each of the video data streams in the deserializer according to the data generation logic of the video generator.

[0024] Optionally, the frame synchronization signal is a pulse signal.

[0025] According to the image processing apparatus, the test method for the image processing apparatus, and the image processing system provided in this application, a video generator is set in the serializer to simulate a camera. During the test phase of the image processing system, each video generator generates a corresponding video data stream based on the first frame synchronization signal provided by the deserializer. The test process does not require the participation of a camera, nor does it require the configuration of a camera. Therefore, the test cost can be reduced, the test process can be simplified, and the test efficiency can be improved.

[0026] Furthermore, the video generator adjusts the vertical blanking duration of the next display frame to be sent based on the receiving time interval of the synchronization signals of two adjacent frames. This eliminates the time deviation of the corresponding display frames of each video generator arriving at the deserializer, avoids processor parsing and merging errors caused by misalignment of corresponding display frames, and improves the accuracy and reliability of the test results of the image processing system.

[0027] Furthermore, a preset adjustment range is defined. If the difference between the adjacent receiving time interval and the preset standard transmission interval exceeds the preset adjustment range, the output will stop and the system will report an error. This avoids system errors caused by over-range adjustment and improves system stability.

[0028] Furthermore, standard data is pre-stored in the deserializer or generated according to the generation logic of the video generator to verify the video data stream, thereby verifying the correctness of the serial data path, which is more conducive to troubleshooting system errors and saves testing time. Attached Figure Description

[0029] The above and other objects, features and advantages of the present invention will become more apparent from the following description of embodiments of the invention with reference to the accompanying drawings, in which:

[0030] Figure 1 A schematic structural diagram of an image processing system in the prior art is shown;

[0031] Figure 2a This shows a timing diagram of the transmission of one row of pixel data;

[0032] Figure 2b This shows a timing diagram of the transmission of a display frame;

[0033] Figure 3 This diagram shows a schematic structural block diagram of the image processing system according to the first embodiment of this application;

[0034] Figure 4 Show Figure 3 The diagram shows a schematic structure of the video generator.

[0035] Figure 5 Show Figure 3 The schematic diagram of the deserializer is shown.

[0036] Figure 6 A schematic flowchart of the image processing system testing method according to the second embodiment of this application is shown. Detailed Implementation

[0037] Various embodiments of the invention will now be described in more detail with reference to the accompanying drawings. In the various drawings, the same elements are indicated by the same or similar reference numerals. For clarity, the various parts in the drawings are not drawn to scale.

[0038] Furthermore, certain terms are used in this patent specification and claims to refer to specific components. Those skilled in the art will understand that manufacturers may use different names to refer to the same component. This patent specification and claims do not distinguish components based on differences in name, but rather on differences in function.

[0039] It should be understood that, in the following description, "circuit" may include single or combined hardware circuits, programmable circuits, state machine circuits, and / or elements capable of storing instructions executed by the programmable circuit. When an element or circuit is said to be "connected" to another element or "connected" between two nodes, it may be directly coupled or connected to the other element, or there may be intermediate elements; the connection between elements may be physical, logical, or a combination thereof. Conversely, when an element is said to be "directly coupled to" or "directly connected" to another element, it means that there are no intermediate elements between them.

[0040] Furthermore, it should be noted that in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, 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 limitations, 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.

[0041] To facilitate understanding of this application, a brief introduction to the video data stream transmission involved in this application will be given first.

[0042] A video data stream consists of multiple continuously transmitted display frames. Each display frame transmits display data composed of several pixel data, each pixel data having independent display information. By sequentially displaying the display information of each pixel data on the screen, a complete picture is formed. By continuously displaying multiple display frames, dynamic images can be displayed by utilizing the persistence of vision in the human eye.

[0043] Figure 2a and Figure 2b The timing diagram illustrates the transmission of one line of pixel data and one display frame. Figure 2a and Figure 2b The process involves multiple timing signals related to video data stream transmission, specifically including the following:

[0044] Field synchronization signal (VSYNC): Used to identify the start of a display frame transmission;

[0045] Horizontal Synchronization Signal (HSYNC): Used to indicate the start of transmission of one line of pixel data;

[0046] Data Enable signal: Pixel data transmitted during the active level of the data enable signal is valid data; pixel data transmitted during the inactive level of the data enable signal is invalid data (e.g., corresponding to displaying black).

[0047] The front shoulder (V / H front) and back shoulder (V / H back) are defined as follows: after the horizontal sync signal / vertical sync signal is issued, valid data cannot be enabled immediately. Therefore, the interval from the end of the horizontal / vertical sync signal to the start of the data enable signal is called the back shoulder of the horizontal / vertical scan, and the interval from the end of the data enable signal to the start of the horizontal / vertical sync signal is called the front shoulder of the horizontal / vertical scan.

[0048] Horizontal blanking (Hblank): The time interval between transmitting valid data between two adjacent rows of pixels. The duration of horizontal blanking usually includes the line synchronization signal and the front and back shoulders of the line scan.

[0049] Vertical blanking (Vblank): The time interval between transmitting valid data between two adjacent display frames. The duration of vertical blanking typically includes the field synchronization signal and the front and back shoulders of the field scan.

[0050] In other words, the transmission duration for each display frame includes the vertical blanking duration and the frame data transmission duration. For two adjacent display frames, the time interval between the transmission of their effective data is the vertical blanking duration of the subsequent display frame.

[0051] Figure 3 A schematic structural diagram of the image processing system according to the first embodiment of this application is shown. Figure 3 As shown, the image processing apparatus 200 includes a processor 210 and at least one serializer 230 (in... Figure 3 (Taking four serializers 230 as an example) and a deserializer 220. The processor 210 is used to process multiple video data streams; each serializer 230 includes a video generator 240 for simulating a camera to generate video data streams; the deserializer 220 provides at least one frame synchronization signal to each serializer 230, so that each video generator outputs a corresponding video data stream to the deserializer 220 in test mode based on the first frame synchronization signal, thereby enabling the deserializer 220 to provide multiple video data streams to the processor 210 based on each video data stream.

[0052] Specifically, in this embodiment, the deserializer 220 is communicatively connected to each serializer 230 via a corresponding serial data path. The deserializer 220 provides a frame synchronization signal to each serializer 230 via the reverse channel of the corresponding serial data path. Each serializer 230 provides a video data stream to the deserializer 220 via the forward channel of the corresponding serial data path.

[0053] Furthermore, in some embodiments, the frame synchronization signal is, for example, a pulse signal. Upon receiving the first frame synchronization signal, the video generator 240 provides a corresponding video data stream according to a preset data generation logic, with the vertical blanking duration of each displayed frame being a preset duration. Specifically, the video generator can generate test patterns including solid color patterns, color bar patterns, grayscale patterns, and pseudo-random binary sequence patterns (PRBS patterns). Therefore, during the testing phase of the image processing system, no camera is required, nor is camera configuration necessary, which helps reduce testing costs, simplify the testing process, and improve testing efficiency.

[0054] Furthermore, in this embodiment, the deserializer 220 is also configured to send a frame synchronization signal according to a preset period. In some embodiments, the deserializer 220 provides a frame synchronization signal to each serializer 230 when it receives a preset number of display frames from each video data stream. Taking a preset number of 1 as an example, after a corresponding display frame from each video data stream is written to the deserializer 220, the deserializer 220 sends the next frame synchronization signal.

[0055] The video generator 240 is also used to adjust the vertical blanking duration of the (j+1)th display frame based on the reception time interval between receiving the (i+1)th frame synchronization signal and the i-th frame synchronization signal. The video generator 240 receives the (i+1)th frame synchronization signal during the transmission of the j-th display frame (i.e., the display frame being transmitted by the video generator 240 when receiving the (i+1)th frame synchronization signal is denoted as the j-th display frame), where i and j are both integers greater than or equal to 1. This ensures that the corresponding display frames from each video generator arrive at the deserializer at the same time. Therefore, the time deviation of the corresponding display frames from each video generator arriving at the deserializer can be eliminated, avoiding processor parsing and merging errors caused by misalignment of corresponding display frames, and improving the accuracy and reliability of the image processing system test results.

[0056] It should be noted that the terms 'i' and 'j' mentioned above are only used to characterize the correspondence between the display frame currently being sent by the video generator 240 and the currently received frame synchronization signal. That is, for ease of description, the display frame being sent by the video generator 240 when it receives the (i+1)th frame synchronization signal is denoted as the j-th display frame, and the display frame with its vertical blanking duration adjusted is the next display frame after the currently sent display frame, i.e., the (j+1)-th display frame. For example, the video generator 240 starts sending display frames one by one with a preset vertical blanking duration when it receives the first frame synchronization signal. After the deserializer 220 receives the first display frame from each video data stream, it synchronously sends the second frame synchronization signal to each video generator. In some embodiments, when a video generator 240 is receiving the second frame synchronization signal (i.e., i=1, the (i+1)th frame synchronization signal is the second frame synchronization signal) and is transmitting the second display frame (i.e., j=2, the second display frame is denoted as the jth display frame), then the vertical blanking duration of the third display frame (i.e., the (j+1)th display frame is the third display frame) is adjusted according to the reception time interval between the second frame synchronization signal and the first frame synchronization signal (i.e., the i-th frame synchronization signal is the first frame synchronization signal). In some other embodiments, when a video generator 240 is receiving the second frame synchronization signal (i.e., the (i+1)th frame synchronization signal is the second frame synchronization signal) and is transmitting the third display frame (i.e., the third display frame is denoted as the j-th display frame), then the vertical blanking duration of the fourth display frame (i.e., the (j+1)th display frame is the fourth display frame) is adjusted according to the reception time interval between the second frame synchronization signal and the first frame synchronization signal (i.e., the i-th frame synchronization signal is the first frame synchronization signal).

[0057] Furthermore, for example, the video generator initially adjusts the preset vertical blanking duration, and then adjusts it based on the result of the previous adjustment each time. For instance, after receiving the second frame synchronization signal, the video generator adjusts the preset vertical blanking duration according to the time interval between the reception of the first and second frame synchronization signals to obtain the first adjustment result as the vertical blanking duration of the corresponding display frame to be sent; after receiving the third frame synchronization signal, it adjusts the first adjustment result according to the time interval between the reception of the second and third frame synchronization signals to obtain the second adjustment result as the vertical blanking duration of the corresponding display frame to be sent, and so on.

[0058] Figure 4 A schematic structural diagram of a video generator according to an embodiment of this application is shown. See also... Figure 4 The video generator 240 includes:

[0059] The data generation module 241 generates a video data stream based on the first frame synchronization signal.

[0060] The timing module 242 is used to obtain the reception time interval between the (i+1)th frame synchronization signal and the ith frame synchronization signal, where i is an integer greater than or equal to 1. In some embodiments, the timing module 242 includes, for example, a counter, which counts the pixel clock cycles elapsed between the (i+1)th frame synchronization signal and the ith frame synchronization signal to obtain the reception time interval between the two adjacent frame synchronization signals. It should be noted that the reception time interval may be misaligned due to quantization errors when converted to pixel clock cycles. Therefore, it is necessary to obtain an integer number of clock cycles, for example, by rounding up, to obtain the reception time interval between the two adjacent frame synchronization signals. Furthermore, it should be understood that the timing module of this application should not be limited to this. For example, in some embodiments, a timer can also be used directly for timing.

[0061] The adjustment module 243, communicatively connected to the timing module 242, is used to adjust the vertical blanking duration of the (j+1)th display frame based on the reception time interval between the (i+1)th frame synchronization signal and the (i)th frame synchronization signal. In some embodiments, the standard transmission interval between two adjacent frame synchronization signals can be obtained based on parameters such as the transmission frequency of the video data stream. The adjustment module 243 is configured to adjust the vertical blanking duration of the (j+1)th display frame based on the difference between the reception time interval between the (i+1)th frame synchronization signal and the (i)th frame synchronization signal and the standard transmission interval. Similarly, it should be understood that this application should not be limited thereto. For example, in some embodiments, the vertical blanking duration of the (j+1)th display frame can also be adjusted based on the difference between the reception time interval between the (i+1)th and (i)th frame synchronization signals and the reception time interval between the (i)th and (i-1)th frame synchronization signals.

[0062] It should be noted that the adjustment module 243 first adjusts the preset vertical blanking duration, and then adjusts the result of the previous adjustment each time. For example, after receiving the second frame synchronization signal, the video generator adjusts the preset vertical blanking duration according to the time interval between the reception of the first and second frame synchronization signals to obtain the first adjustment result as the vertical blanking duration of the corresponding display frame to be sent; after receiving the third frame synchronization signal, it adjusts the first adjustment result according to the time interval between the reception of the second and third frame synchronization signals to obtain the second adjustment result as the vertical blanking duration of the corresponding display frame to be sent, and so on.

[0063] The sending module 244 is used to send video data streams, and for unadjusted display frames, the vertical blanking duration is a preset duration.

[0064] Furthermore, in embodiments of this application, the video generator 240 further includes a detection module 245. The detection module 245 is communicatively connected to the adjustment module 243 and the transmission module 244, respectively. It determines whether the current video generator 240 can correctly adjust the vertical blanking duration of the next display frame by comparing the difference between a preset adjustment range and the aforementioned receiving time interval and standard transmission interval. For example, in some embodiments, a preset adjustment range is defined. When the difference is less than or equal to the preset adjustment range, it indicates that the video generator 240 has adjustment capability. In this case, the detection module 245 provides an effective level of the enable signal En to the transmission module, and the transmission module 244 transmits each display frame sequentially. Conversely, if the difference is less than or equal to the preset adjustment range, it indicates that the video generator 240 has lost its adjustment capability. The detection module 245 provides an ineffective level of the enable signal En to the transmission module, the transmission module 244 stops transmitting the video data stream, and outputs a second error signal indicating that the video generator 240 has lost its adjustment capability.

[0065] Figure 5 A schematic structural diagram of the deserializer 220 according to an embodiment of this application is shown. See also Figure 5 The deserializer 220 includes:

[0066] Buffer 222 is used to buffer the video data streams output by each video generator;

[0067] Signal generator 221 is communicatively connected to both the processor and the buffer, and is used to generate synchronization signals for each frame. Specifically, in some embodiments, signal generator 221 generates the first frame synchronization signal according to the configuration signal provided by processor 210; the signal generator also provides a frame synchronization signal to each serializer when it detects that a preset number of display frames have been written to each video data stream in buffer 222 (for example, this can be determined by the end-of-frame signal).

[0068] Furthermore, in this embodiment, the deserializer 220 further includes a detection unit 223, which is communicatively connected to the buffer 222. This unit verifies the correctness of the serial data path by comparing each video data stream with its corresponding standard data. The comparison method, for example, involves comparing the valid pixel data transmitted in each video data stream with its corresponding standard data.

[0069] In some embodiments, the detection unit 223 may have built-in standard data corresponding to each video data stream. In some other embodiments, the detection unit 223 may also generate standard data corresponding to each video data stream according to the data generation logic of the video generator 240. If the video data stream is consistent with the corresponding standard data, the serial data path is determined to be correct, and the video data stream is sent to the processor 210 for subsequent processing; if the video data stream is inconsistent with the corresponding standard data, the serial data path is determined to be incorrect, and the detection unit 223 provides the processor 210 with a first error signal indicating a path error. Further, in some embodiments, the first error signal also includes timing information generated according to the reception time of each display frame of the video data stream, to facilitate subsequent error finding and correction.

[0070] According to the image processing apparatus provided in this application, a video generator is set in the serializer to simulate a camera. During the testing phase of the image processing system, each video generator generates a corresponding video data stream based on the first frame synchronization signal provided by the deserializer. The testing process does not require the participation of the camera, nor does it require the configuration of the camera. Therefore, the testing cost can be reduced, the testing process can be simplified, and the testing efficiency can be improved.

[0071] Furthermore, the video generator adjusts the vertical blanking duration of the next display frame to be sent based on the receiving time interval of the synchronization signals of two adjacent frames. This eliminates the time deviation of the corresponding display frames of each video generator arriving at the deserializer, avoids processor parsing and merging errors caused by misalignment of corresponding display frames, and improves the accuracy and reliability of the test results of the image processing system.

[0072] Furthermore, a preset adjustment range is defined. If the difference between the adjacent receiving time interval and the preset standard transmission interval exceeds the preset adjustment range, the output will stop and the system will report an error. This avoids system errors caused by over-range adjustment and improves system stability.

[0073] Furthermore, standard data is pre-stored in the deserializer or generated according to the generation logic of the video generator to verify the video data stream, thereby verifying the correctness of the serial data path, which is more conducive to troubleshooting system errors and saves testing time.

[0074] Figure 6 A schematic flowchart illustrating the testing method for an image processing system is shown. See also... Figure 6 The testing method of this application includes the following steps:

[0075] Step S11: Set up the test environment;

[0076] The test environment includes a processor for processing video data streams; at least one serializer, each serializer including a video generator for simulating a camera to generate video data streams; and a deserializer for providing at least one frame synchronization signal to each serializer so that each video generator outputs a corresponding video data stream to the deserializer in test mode based on the first frame synchronization signal, and the deserializer provides multiple video data streams to the processor based on each video data stream.

[0077] Step S12: Provide at least one frame synchronization signal to each serializer;

[0078] In this step, at least one frame synchronization signal is provided to each data generator via the inverting channel of the serial data path. It should be noted that the deserializer simultaneously sends corresponding frame synchronization signals to each data generator.

[0079] Furthermore, in some embodiments, the frame synchronization signal is, for example, a pulse signal. The frame synchronization signal includes a first frame synchronization signal generated by the deserializer according to a configuration signal provided by the processor, and subsequent frame synchronization signals sent by the deserializer according to a preset period. In some embodiments, the deserializer provides a frame synchronization signal to each serializer after receiving a preset number of display frames from each video data stream. Taking a preset number of 1 as an example, the deserializer sends the next frame synchronization signal after a corresponding display frame from each video data stream has been written to the deserializer.

[0080] Step S13: Each video generator provides the corresponding video data stream based on the first frame synchronization signal;

[0081] Upon receiving the first frame synchronization signal, the video generator provides the corresponding video data stream according to the preset data generation logic, with the vertical blanking duration of each display frame being a preset duration. Specifically, the video generator can generate test patterns including solid color patterns, color bar patterns, grayscale patterns, and pseudo-random binary sequence patterns (PRBS patterns). Therefore, during the testing phase of the image processing system, no camera is required, nor is camera configuration necessary, which helps reduce testing costs, simplify the testing process, and improve testing efficiency.

[0082] Step S14: In each video generator, obtain the reception time interval between the (i+1)th frame synchronization signal and the ith frame synchronization signal;

[0083] In some embodiments, the reception time interval between two adjacent frame synchronization signals is obtained by counting the pixel clock cycles elapsed between receiving the (i+1)th frame synchronization signal and the ith frame synchronization signal. It should be noted that when converting the reception time interval to pixel clock cycles, clock misalignment may occur due to quantization errors. Therefore, in such cases, it is necessary to obtain an integer number of clock cycles, for example, by rounding up, to obtain the reception time interval between the two adjacent frame synchronization signals. Furthermore, it should be understood that the timing method is not limited to this; for example, in some embodiments, a timer can be used directly for timing. i is an integer greater than or equal to 1.

[0084] Step S15: Obtain the difference between the receiving time interval and the standard transmission interval;

[0085] In some embodiments, for example, the standard transmission interval between two adjacent frame synchronization signals can be obtained based on parameters such as the video data stream transmission frequency between the serializer and the deserializer, thereby obtaining the difference between the reception time interval between the (i+1)th frame synchronization signal and the i-th frame synchronization signal and the standard transmission interval.

[0086] Step S16: Does the difference exceed the preset adjustment range?

[0087] The difference between the received time interval of the (i+1)th adjacent frame synchronization signal and the ith frame synchronization signal and the standard transmission interval is used to determine whether the current video generator can correctly adjust the vertical blanking duration of the next display frame. For example, in some embodiments, a preset adjustment range is defined. When the difference is less than or equal to the preset adjustment range, it indicates that the video generator has adjustment capability, and steps S17 and S18 are continued; otherwise, it indicates that the video generator has lost adjustment capability, and step S19 is continued.

[0088] Step S17: Adjust the vertical blanking duration of the (j+1)th display frame according to the difference;

[0089] The vertical blanking duration of the (j+1)th display frame is adjusted according to the difference between the reception time interval between the (i+1)th adjacent frame synchronization signal and the ith frame synchronization signal and the standard transmission interval. The video generator receives the (i+1)th frame synchronization signal during the transmission of the jth display frame (that is, the display frame that the video generator is transmitting when it receives the (i+1)th frame synchronization signal is denoted as the jth display frame), where i and j are both integers greater than or equal to 1.

[0090] It should be noted that the terms 'i' and 'j' above are only used to characterize the correspondence between the display frame currently being sent by the video generator 240 and the currently received frame synchronization signal. That is, for ease of description, the display frame being sent by the video generator 240 when it receives the (i+1)th frame synchronization signal is denoted as the j-th display frame, and the display frame with its vertical blanking duration adjusted is the next display frame after the currently sent display frame, i.e., the (j+1)-th display frame. For example, the video generator 240 starts sending display frames one by one with a preset vertical blanking duration when it receives the first frame synchronization signal. After the deserializer receives the first display frame from each video data stream, it synchronously sends the second frame synchronization signal to each video generator. In some embodiments, when a video generator 240 is receiving the second frame synchronization signal (i.e., the (i+1)th frame synchronization signal is the second frame synchronization signal) and is transmitting the second display frame (i.e., the second display frame is denoted as the j-th display frame), then the vertical blanking duration of the third display frame (i.e., the (j+1)th display frame is the third display frame) is adjusted according to the reception time interval between the second frame synchronization signal and the first frame synchronization signal (i.e., the i-th frame synchronization signal is the first frame synchronization signal). In some other embodiments, when a video generator 240 is receiving the second frame synchronization signal (i.e., the (i+1)th frame synchronization signal is the second frame synchronization signal) and is transmitting the third display frame (i.e., the third display frame is denoted as the j-th display frame), then the vertical blanking duration of the fourth display frame (i.e., the (j+1)th display frame is the fourth display frame) is adjusted according to the reception time interval between the second frame synchronization signal and the first frame synchronization signal (i.e., the i-th frame synchronization signal is the first frame synchronization signal).

[0091] Furthermore, for example, regarding the adjustment of the vertical blanking duration of the display frame, the first adjustment is to a preset vertical blanking duration, and each subsequent adjustment is based on the result of the previous adjustment. For instance, after receiving the second frame synchronization signal, the video generator adjusts the preset vertical blanking duration according to the receiving time interval between the first and second frame synchronization signals to obtain the first adjustment result as the vertical blanking duration of the corresponding display frame to be sent; after receiving the third frame synchronization signal, it adjusts the first adjustment result according to the receiving time interval between the second and third frame synchronization signals to obtain the second adjustment result as the vertical blanking duration of the corresponding display frame to be sent, and so on.

[0092] Step S18: Verify that the video data stream is correct;

[0093] The correctness of the serial data path is verified by comparing the video data stream with the corresponding standard data.

[0094] In some embodiments, standard data corresponding to the video data stream can be built into the deserializer. In some other embodiments, standard data corresponding to each video data stream can also be generated in the deserializer according to the data generation logic of the video generator. If the video data stream matches the corresponding standard data, the serial data path is determined to be correct; if the video data stream does not match the corresponding standard data, the serial data path is determined to be incorrect, and the system reports an error.

[0095] Furthermore, in some embodiments, the first error signal also includes timing information generated based on the reception time of the display frame, to facilitate subsequent error finding and correction.

[0096] Step S19, system error reported;

[0097] When the difference exceeds the preset adjustment range, it indicates that the video generator cannot correctly adjust the vertical blanking duration of the next display frame, and the system reports an error.

[0098] Furthermore, it should be understood that the test method for the image processing apparatus provided in this application should also include, in its operation process, providing multiple video data streams to the processor by the deserializer based on the video data streams provided by each serializer; and processing the multiple video data streams via the processor.

[0099] According to the test method provided in this application, a video generator is set in the serializer to simulate a camera. During the test phase of the image processing system, each video generator generates a corresponding video data stream based on the first frame synchronization signal provided by the deserializer. The test process does not require the participation of the camera, nor does it require the configuration of the camera. Therefore, the test cost can be reduced, the test process can be simplified, and the test efficiency can be improved.

[0100] Furthermore, the video generator adjusts the vertical blanking duration of the next display frame to be sent based on the receiving time interval of the synchronization signals of two adjacent frames. This eliminates the time deviation of the corresponding display frames of each video generator arriving at the deserializer, avoids processor parsing and merging errors caused by misalignment of corresponding display frames, and improves the accuracy and reliability of the test results of the image processing system.

[0101] Furthermore, a preset adjustment range is defined. If the difference between the adjacent receiving time interval and the preset standard transmission interval exceeds the preset adjustment range, the output will stop and the system will report an error. This avoids system errors caused by over-range adjustment and improves system stability.

[0102] Furthermore, standard data is pre-stored in the deserializer or generated according to the generation logic of the video generator to verify the video data stream, thereby verifying the correctness of the serial data path, which is more conducive to troubleshooting system errors and saves testing time.

[0103] Furthermore, this application also provides an image processing system, including multiple cameras and the image processing apparatus described above. The image processing system is configured to, in test mode, generate video data streams by simulating the cameras using a video generator; and in operating mode, connect each serializer to a corresponding camera to acquire the corresponding video data stream via each camera. Since the system includes the aforementioned image processing apparatus, it also possesses the beneficial effects of any of the above-described embodiments, which will not be elaborated further here.

[0104] As described above, these embodiments of the present invention do not exhaustively describe all details, nor do they limit the invention to specific embodiments. Clearly, many modifications and variations can be made based on the above description. This specification selects and specifically describes these embodiments to better explain the principles and practical applications of the invention, thereby enabling those skilled in the art to effectively utilize the invention and its modifications. The scope of protection of this invention should be determined by the scope defined in the claims of this invention.

Claims

1. An image processing apparatus, wherein, The image processing device includes: A processor used to process multiple video data streams; At least one serializer, each of the serializers including a video generator for simulating a camera to generate the video data stream; and A deserializer provides at least one frame synchronization signal to each of the serializers, so that each of the video generators outputs a corresponding video data stream to the deserializer in test mode based on the first frame synchronization signal. The deserializer then provides the multiple video data streams to the processor based on the video data streams provided by each of the serializers. in, Each of the video data streams includes multiple display frames, and the transmission duration of each display frame includes the vertical blanking duration; The deserializer is also used to provide a frame synchronization signal to each of the serializers when a preset number of display frames are received from each of the video data streams; The video generator is further configured to adjust the vertical blanking duration of the (j+1)th display frame based on the reception time interval between receiving the (i+1)th frame synchronization signal and the i-th frame synchronization signal. The video generator receives the (i+1)th frame synchronization signal during the transmission of the j-th display frame, where i and j are both integers greater than or equal to 1.

2. The image processing apparatus according to claim 1, wherein, The video generator includes: The data generation module generates the corresponding video data stream based on the first frame synchronization signal; The timing module is used to obtain the reception time interval between receiving the (i+1)th frame synchronization signal and the ith frame synchronization signal; The adjustment module, communicatively connected to the timing module, adjusts the vertical blanking duration of the (j+1)th display frame according to the receiving time interval; and The sending module is used to send the video data stream, and the vertical blanking duration of the unadjusted display frame is a preset duration.

3. The image processing apparatus according to claim 2, wherein, The adjustment module is configured to adjust the vertical blanking duration of the (j+1)th display frame based on the difference between the reception time interval and the standard transmission interval between two adjacent frame synchronization signals.

4. The image processing apparatus according to claim 3, wherein, The video generator also includes: The detection module is communicatively connected to both the adjustment module and the sending module. The detection module is configured to control the sending module to stop sending the video data stream and report an error when the difference between the receiving time interval and the standard transmission interval is greater than a preset adjustment range.

5. The image processing apparatus according to claim 1, wherein, The deserializer provides the frame synchronization signal to each of the serializers via the reverse channel of the corresponding serial data path; Each of the serializers provides the corresponding video data stream to the deserializer via the forward channel of the corresponding serial data path.

6. The image processing apparatus according to claim 5, wherein, The deserializer includes: A buffer is provided for buffering the video data streams output by each of the video generators; and A signal generator is communicatively connected to both the processor and the buffer, and is used to generate the frame synchronization signals for each frame.

7. The image processing apparatus according to claim 6, wherein, The deserializer also includes: A detection unit, connected to the buffer, compares each video data stream with corresponding standard data to verify the serial data path.

8. The image processing apparatus according to claim 7, wherein, The detection unit pre-stores the standard data or generates the standard data corresponding to each of the video data streams according to the data generation logic of the video generator.

9. The image processing apparatus according to claim 1, wherein, The frame synchronization signal is a pulse signal.

10. An image processing system, wherein, The image processing system includes: the image processing apparatus as described in any one of claims 1 to 9. The image processing system is configured to, in test mode, generate the video data stream by simulating a camera through the video generator; and in operating mode, connect each of the serializers to the corresponding camera to acquire the corresponding video data stream via each of the cameras.

11. A test method for an image processing device, wherein, include: A test environment is set up, which includes a processor, a deserializer, and at least one serializer. The processor is used to process multiple video data streams, and each serializer includes a video generator, which is used to simulate a camera to generate the video data stream. Each of the serializers is provided with at least one frame synchronization signal; In each of the video generators, the corresponding video data stream is provided to the deserializer according to the first frame synchronization signal; as well as The deserializer provides the multi-channel video data stream to the processor based on the video data stream provided by each of the serializers. in, Each of the video data streams includes multiple display frames, and the transmission duration of each display frame includes the vertical blanking duration; The testing method also includes: The deserializer provides a frame synchronization signal to each of the serializers every time it receives a preset number of display frames from each of the video data streams; and In each of the video generators, the vertical blanking duration of the (j+1)th display frame is adjusted according to the reception time interval between receiving the (i+1)th frame synchronization signal and the i-th frame synchronization signal. The video generator receives the (i+1)th frame synchronization signal during the transmission of the j-th display frame, where i and j are both integers greater than or equal to 1.

12. The test method according to claim 11, wherein, The method for adjusting the vertical blanking duration of the (j+1)th display frame includes: Obtain the standard transmission interval between two adjacent frame synchronization signals; and The vertical blanking duration of the (j+1)th display frame is adjusted according to the difference between the receiving time interval and the standard transmission interval.

13. The test method according to claim 12, wherein, The testing method further includes, before adjusting the vertical blanking duration of the (j+1)th display frame: Determine whether the difference between the receiving time interval and the standard transmission interval is greater than a preset adjustment range; If the value is greater than the specified value, then stop sending the video data stream and report an error.

14. The test method according to claim 11, wherein, The testing method also includes: The frame synchronization signal is transmitted via the reverse channel of the corresponding serial data path; and The video data stream is transmitted via the forward channel of the corresponding serial data path.

15. The test method according to claim 14, wherein, The testing method also includes: The deserializer compares each of the video data streams with corresponding standard data to verify the serial data path.

16. The test method according to claim 15, wherein, The testing method also includes: The standard data is pre-stored in the deserializer when setting up the test environment; or The deserializer generates standard data corresponding to each of the video data streams according to the data generation logic of the video generator.

17. The test method according to claim 11, wherein, The frame synchronization signal is a pulse signal.

Citation Information

Patent Citations

  • Chip camera interface function testing method and chip camera interface function testing system

    CN102647611A

  • Video stream processing method and device

    CN113132552A