A method for dynamic image display
By building a partition tree and performing image slicing and interpolation processing, the problem of insufficient smoothness of the image dynamic display is solved, and a higher detail display effect and smoothness are achieved.
Patent Information
- Application Number
- CN202411108356.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-13
- Publication Date
- 2025-05-20
- Estimated Expiration
- 2044-08-13
AI Technical Summary
The prior art is difficult to improve the smoothness of the dynamic display of images through interpolation and buffering, resulting in blurring, tearing or smearing when the image moves quickly.
By building a partition tree and embedding the initial node, the received image is divided into a single frame graph, decomposed into a left subtree, an intermediate backbone and a right subtree, a data stack is created in the intermediate backbone, the transmission order of the single frame graph in several blocks, and an intermediate frame graph is generated through optical flow algorithm and interpolation method for interpolation.
It improves the detail display effect and fluency of dynamic images, reduces lags and pauses during dynamic image display, improves user experience, and improves image processing efficiency.
Smart Images

Figure CN118984360B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of image display, and particularly to an image dynamic display method and system. Background Art
[0002] Image dynamic display refers to a technology in computer graphics and multimedia applications that achieves animation effects or real-time display by continuously updating and changing the image content. It is widely used in fields such as games, video playback, data visualization, virtual reality, and augmented reality. To obtain high-quality and stable dynamic images, it is necessary to analyze and process the data source. For example, low refresh rates and high response times may cause blurring, tearing, or ghosting phenomena when the image moves quickly; low resolution will affect the clarity and detail presentation of the image and also reduce the smoothness of the dynamic image. By performing frame interpolation and buffering on the data source, the above problems can be well solved.
[0003] Therefore, "how to improve the smoothness of image dynamic display through frame interpolation and buffering" is the technical problem to be solved by the present invention. Summary of the Invention
[0004] The purpose of the present invention is to provide an image dynamic display method and system to solve the problem of "how to improve the smoothness of image dynamic display through frame interpolation and buffering" proposed in the above background art.
[0005] To achieve the above purpose, the present invention provides the following technical solutions:
[0006] An image dynamic display method, the method includes:
[0007] S100: Construct a partition tree, embed an initial node, transmit the received image to the initial node, and divide it into several single-frame images;
[0008] S200: Decompose the partition tree into a left subtree, a middle main trunk, and a right subtree, create a data stack in the middle main trunk, and hang four groups of data blocks under the data stack, where the four groups of data blocks are two buffer blocks arranged on the upper side of the data stack and two processing blocks arranged on the lower side of the data stack, and configure the transmission order of the single-frame images in the data blocks;
[0009] S300: Integrate a trigger at the top of the data stack, activate the trigger, pop the buffer blocks into the left subtree, and pop the processing blocks into the right subtree;
[0010] S400: Import the previous and the next single-frame images into two sets of processing blocks in the right subtree respectively, compare the differences between the two single-frame images to determine the active part, calculate the pixel movement of the two single-frame images based on a preset optical flow algorithm, draw the motion vector diagram of the pixels, perform motion compensation, generate an intermediate frame image using a preset interpolation method, insert the intermediate frame image between the two sets of processing blocks, and transfer the single-frame images and the intermediate frame image in the two sets of processing blocks to the buffer block according to the transmission order;
[0011] S500: Build a data transmission link between the left subtree and a preset terminal, and process the buffer block popped up to the left subtree, where the processing includes: decoding, resizing, color conversion, and rendering, and after the processing, transfer it to the data transmission link.
[0012] Further, the S100 includes:
[0013] Locate the entrance of the partition tree, embed an initial node into the entrance, use the initial node as the receiving end to build an image receiving channel, and after verification, open the channel to a preset terminal;
[0014] After the channel transmits the image to the initial node, in the initial node, split the image and export each frame as a single picture to obtain a single-frame image;
[0015] Collect the attributes of the single-frame image and number them.
[0016] Further, the S200 includes:
[0017] Collect the display requirements of the image, set several data stacks at the middle main trunk, where each data stack is mounted with four groups of data blocks, and mark the arrangement order of the data blocks;
[0018] Build a play queue in the left subtree, and include all buffer blocks in the play queue, where the buffer blocks are arranged in the play queue according to the numbers;
[0019] Process the buffer blocks in the play queue in parallel.
[0020] Further, the S300 includes:
[0021] Based on the trigger, assign different trigger strategies to the buffer block and the processing block;
[0022] Among them, the trigger strategy is:
[0023] When the buffer block crosses the trigger and enters the left subtree, start the play queue and add the buffer block;
[0024] After the processing block crosses the trigger and enters the right subtree, initialize the processing block, and use the initial node to import two adjacent single-frame images with consecutive numbers into the processing block;
[0025] After the playback and import are completed, push the buffer block and the processing block back into the data stack in the order of arrangement.
[0026] Further, the S400 includes:
[0027] Build a computing platform for intermediate frames, integrate the optical flow algorithm and the interpolation method into the computing platform to generate intermediate frame images;
[0028] Determine the number of the intermediate frame images, link two groups of processing blocks and intermediate frame images using a serial data bus, and update the numbering.
[0029] Further, the S500 includes:
[0030] Insert a side chain into the playback queue and use the side chain as the entry of the playback queue;
[0031] Build an image processing pipeline in the side chain;
[0032] Cross the data transmission link and the playback queue, and use the pre-constructed frame rate control strategy to dynamically display the single-frame images.
[0033] Further, the method further includes:
[0034] In the right subtree, build a hierarchical recognition model and input the single-frame images into the trained hierarchical recognition model;
[0035] Output at least three display levels, where the display levels include: foreground, middle ground, and background;
[0036] Compare the display levels that change between two consecutive single-frame images and define them as differences.
[0037] Further, the method further includes:
[0038] Mark the initialized data blocks in the partition tree as empty blocks and build a recycling strategy for the empty blocks;
[0039] When all data blocks are incorporated into the data stack, transfer the single-frame images following the transfer order.
[0040] Further, the system includes:
[0041] A splitting module, configured to build a partition tree, embed an initial node, transmit the received image to the initial node, and split it into a plurality of single-frame images;
[0042] A configuration module, which is used to decompose the partition tree into a left subtree, a middle main trunk, and a right subtree, create a data stack within the middle main trunk, and hang four groups of data blocks under the data stack. Among them, the four groups of data blocks are two buffer blocks arranged on the upper side of the data stack and two processing blocks arranged on the lower side of the data stack, and configure the transmission order of the single-frame image in the data blocks;
[0043] A pop-up module, which is used to integrate a trigger at the top of the data stack, activate the trigger, pop the buffer blocks into the left subtree, and pop the processing blocks into the right subtree;
[0044] A transfer module, which is used to import two consecutive single-frame images into two processing blocks in the right subtree respectively, compare the differences between the two single-frame images to determine the active part, calculate the pixel motion of the two single-frame images based on a preset optical flow algorithm, draw a motion vector map of the pixels, and perform motion compensation. Using a preset interpolation method, generate an intermediate frame image, and insert the intermediate frame image between the two processing blocks. According to the transmission order, transfer the single-frame images and the intermediate frame image in the two processing blocks to the buffer blocks;
[0045] A transfer-in module, which is used to build a data transmission link between the left subtree and a preset terminal, and process the buffer blocks popped into the left subtree. The processing includes: decoding, resizing, color conversion, and rendering, and after the processing, transfer into the data transmission link.
[0046] Further, the splitting module includes:
[0047] An open unit, which is used to locate the inlet of the partition tree, embed an initial node into the inlet, use the initial node as the receiving end to build an image receiving channel, and after verification, open the channel to the preset terminal;
[0048] An export unit, which is used to split the image in the initial node after the image is transmitted to the initial node through the channel, export each frame as a single picture to obtain a single-frame image;
[0049] A numbering unit, which is used to collect the attributes of the single-frame image and number them.
[0050] Compared with the prior art, the beneficial effects of the present invention are:
[0051] 1. By splitting an image into single-frame images, the image can be analyzed more precisely, thereby realizing the preprocessing and caching of the image, reducing the computational amount during the dynamic display of the image. By constructing a right subtree, frame interpolation of the single-frame images is achieved, greatly improving the detail display effect of the dynamic image and further enhancing the smoothness of the dynamic display of the image. By constructing a left subtree and data blocks, buffering of the image is realized, reducing the lag and pause during the dynamic display of the image and greatly improving the user experience. By integrating the left subtree and the right subtree and constructing a partition tree, parallel processing of frame interpolation and buffering is achieved, greatly improving the processing efficiency of the image and also making the dynamic display effect of the image better and the smoothness higher.
[0052] 2. By identifying the display level and initializing empty blocks, the data processing amount of the partition tree is reduced, thereby making the processing efficiency of the partition tree higher and the dynamic display effect of the image better. Brief Description of the Drawings
[0053] To more clearly illustrate the technical solutions in the embodiments of the present invention, the following will briefly introduce the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings in the following description are only some embodiments of the present invention.
[0054] Figure 1 It is a flowchart of the method for dynamically displaying an image provided by an embodiment of the present invention;
[0055] Figure 2 It is the first sub-flowchart of the method for dynamically displaying an image provided by an embodiment of the present invention;
[0056] Figure 3 It is the second sub-flowchart of the method for dynamically displaying an image provided by an embodiment of the present invention;
[0057] Figure 4 It is the third sub-flowchart of the method for dynamically displaying an image provided by an embodiment of the present invention;
[0058] Figure 5 It is the fourth sub-flowchart of the method for dynamically displaying an image provided by an embodiment of the present invention;
[0059] Figure 6 It is the fifth sub-flowchart of the method for dynamically displaying an image provided by an embodiment of the present invention;
[0060] Figure 7 It is a block diagram of the composition of the system for dynamically displaying an image provided by an embodiment of the present invention;
[0061] Figure 8 It is a block diagram of the composition of the splitting module in the system for dynamically displaying an image provided by an embodiment of the present invention;
[0062] Figure 9The block diagram of the configuration module in the image dynamic display system provided by the embodiment of the present invention;
[0063] Figure 10 The block diagram of the pop-up module in the image dynamic display system provided by the embodiment of the present invention;
[0064] Figure 11 The block diagram of the transfer module in the image dynamic display system provided by the embodiment of the present invention;
[0065] Figure 12 The block diagram of the transfer-in module in the image dynamic display system provided by the embodiment of the present invention. Detailed implementation manners
[0066] In order to make the objectives, technical solutions and advantages of the present invention clearer, the present invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention, and are not used to limit the present invention.
[0067] In Embodiment 1, Figure 1 The implementation process of the image dynamic display method provided by the embodiment of the present invention is shown, and the details are as follows:
[0068] S100: Construct a partition tree, embed an initial node, transmit the received image to the initial node, and divide it into several single-frame images.
[0069] Construct a partition tree and embed an initial node into the partition tree. The partition tree is a tree-like data structure, similar to a tree in nature, which is divided into three parts: left, middle, and right, corresponding to the left subtree, the middle main trunk, and the right subtree in the present application respectively. These three parts are independent of each other and connected to each other; an initial node is embedded at a position similar to the root of the tree. The initial node is used to receive and preprocess the image entering the partition tree, and the initial node can also overall manage the left subtree, the right subtree, and the data blocks, etc.; use the initial node to divide the image into several single-frame images, and the specific quantity should be determined according to the dynamic display requirements of the image.
[0070] S200: Decompose the partition tree into a left subtree, a middle main trunk, and a right subtree, create a data stack in the middle main trunk, and hang four groups of data blocks under the data stack. The four groups of data blocks are two buffer blocks arranged on the upper side of the data stack and two processing blocks arranged on the lower side of the data stack, and configure the transmission order of the single-frame images in the data blocks.
[0071] Create a data stack within the intermediate backbone, where the data stack is a data structure for storing and managing data; the data stack in this embodiment is mainly used to arrange and manage data blocks. The data blocks follow the principle of "last in, first out" within the data stack, and the data blocks are arranged in the data stack in a specific order. The specific order is that within the data stack, there are two sets of buffer blocks and two sets of processing blocks arranged sequentially from top to bottom. The data blocks are used to analyze and process single-frame images, and two adjacent single-frame images are stored in the two sets of processing blocks respectively.
[0072] For example, buffer block one, buffer block two, processing block one, and processing block two are arranged sequentially from top to bottom in the data stack. The single-frame image in processing block one will enter buffer block one via buffer block two in the transmission order, and the data block in buffer block two will enter buffer block two via processing block one.
[0073] S300: Integrate a trigger at the top of the data stack, activate the trigger, pop the buffer block into the left subtree, and pop the processing block into the right subtree.
[0074] Integrate a trigger at the top of the data stack. When single-frame images are stored in both sets of buffer blocks simultaneously, activate the trigger, pop the two sets of buffer blocks from the data stack into the left subtree, and pop the two sets of processing blocks from the data stack into the right subtree.
[0075] It should be noted that continuing with the above example, when the single-frame images in processing block one and two enter buffer block one and two, there are no single-frame images in processing block one and two at this time.
[0076] S400: Import the two adjacent single-frame images into the two sets of processing blocks in the right subtree respectively, compare the differences between the two single-frame images to determine the active part, based on a preset optical flow algorithm, calculate the pixel movement of the two single-frame images, draw the motion vector diagram of the pixels, and perform motion compensation. Use a preset interpolation method to generate an intermediate frame image, and insert the intermediate frame image between the two sets of processing blocks. Transfer the single-frame images and the intermediate frame image in the two sets of processing blocks to the buffer block in the transmission order.
[0077] Since there are no single-frame images in the two sets of processing blocks, at this time, the two adjacent single-frame images before and after can be imported into the two sets of processing blocks in the right subtree, compare the differences between the two single-frame images to determine the active part, use the optical flow algorithm in the prior art to determine the corresponding pixels of the differences, calculate the pixel movement in the two single-frame images, draw the motion vector diagram of the pixels, and perform motion compensation. Then use the interpolation method in the prior art to generate an intermediate frame image, and insert the intermediate frame image between the two sets of processing blocks; after completing the above operations, after the two sets of buffer blocks enter the data stack, push the two sets of processing blocks containing the intermediate frame image into the data stack.
[0078] S500: Establish a data transmission link between the left subtree and a preset terminal, and process the buffer blocks popped into the left subtree. The processing includes: decoding, resizing, color conversion, and rendering. After the processing, transfer the data to the data transmission link.
[0079] Establish a data transmission link between the left subtree and a preset terminal. The preset terminal can be a display terminal or other data processing terminals. Process two sets of buffer blocks in parallel, and transfer the single-frame images in the two sets of processed buffer blocks to the data transmission link. Then, play them sequentially in the preset terminal via the data transmission link.
[0080] In Embodiment 2, Figure 2 The implementation process of the image dynamic display method provided by the embodiment of the present invention is shown. The following details S100 as follows:
[0081] S101: Locate the inlet of the partition tree, embed an initial node into the inlet, use the initial node as the receiving end to establish an image receiving channel, and after verification, open the channel to the preset terminal.
[0082] Locate the inlet of the partition tree and embed the inlet into the initial node. That is, use the initial node to receive images and establish an image receiving channel with the initial node as the receiving end. The channel will only be opened after verification, where the preset terminal is the source of the images.
[0083] S102: After the channel transmits the image to the initial node, split the image within the initial node, and export each frame as a single picture to obtain single-frame images.
[0084] When the image is transmitted to the initial node through the channel, use the initial node to preprocess the image. The preprocessing is to split the image into several single-frame images.
[0085] S103: Collect the attributes of the single-frame images and number them.
[0086] Determine the attributes of the single-frame images. The attributes include: pixel size, format, generation time, etc. of the single-frame images, and number the single-frame images according to their positions in the image.
[0087] In Embodiment 3, Figure 3 The implementation process of the image dynamic display method provided by the embodiment of the present invention is shown. The following details S200 as follows:
[0088] S201: Collect the display requirements of the image, set several data stacks at the middle backbone, where each data stack is mounted with four groups of data blocks, and mark the arrangement order of the data blocks.
[0089] To improve the smoothness of dynamic image display, multiple buffer blocks and corresponding data stacks are created; several data stacks are set in the middle main trunk. Each data stack has the same data structure, and four groups of blocks are mounted in it. At the same time, the arrangement order of the blocks is also the same; however, it should be noted that the arrangement order here is the specific order in Embodiment 1.
[0090] S202: Build a playback queue in the left subtree and classify all buffer blocks into the playback queue, where the buffer blocks are arranged according to their numbers in the playback queue.
[0091] After creating multiple groups of buffer blocks, a corresponding playback queue for arranging all buffer blocks should be continued to be built; using the playback queue and the data transmission link, single-frame images in the buffer blocks are played in sequence, so as to achieve the dynamic display of the image.
[0092] In the playback queue, they are arranged in the order of the numbers of single-frame images in the buffer blocks. The advantage of doing this is to avoid frame skipping.
[0093] S203: Process the buffer blocks in the playback queue in parallel.
[0094] Processing the buffer blocks in the playback queue in parallel, the specific processing steps can be to fuse single-frame images in adjacent buffer blocks, or other processing methods.
[0095] In Embodiment 4, Figure 4 The implementation process of the image dynamic display method provided by the embodiment of the present invention is shown. The following details S300 as follows:
[0096] S301: Based on the trigger, different trigger strategies are assigned to the buffer block and the processing block;
[0097] The trigger strategy is:
[0098] When the buffer block crosses the trigger and enters the left subtree, the playback queue is opened and the buffer block is added;
[0099] When the processing block crosses the trigger and enters the right subtree, the processing block is initialized, and two adjacent-numbered single-frame images are imported into the processing block using the initial node. Here, "cross" means passing through.
[0100] Using the trigger to process the buffer block and the processing block differently. When the buffer block passes through the trigger and enters the left subtree, the playback queue is opened, and the buffer block containing the single-frame image is added to the playback queue; when the processing block passes through the trigger and enters the right subtree, at this time, there are no single-frame images in both groups of processing blocks; the processing block is initialized, and after the initialization is completed, two adjacent-numbered single-frame images are imported into the processing block, and comparison and frame interpolation are continued.
[0101] S302: After the playback and import are completed, push the buffer blocks and processing blocks back into the data stack in the described arrangement order.
[0102] After the playback is completed, push two sets of buffer blocks into the data stack. After the frame interpolation of the two sets of processing blocks is completed, also push them into the data stack, and arrange them below the two sets of buffer blocks in the specific order in Embodiment 1.
[0103] In Embodiment 5, Figure 5 The implementation process of the image dynamic display method provided by the embodiment of the present invention is shown. The following details S400 as follows:
[0104] S401: Build a computing platform for the intermediate frames, integrate the optical flow algorithm and the interpolation method into the computing platform, and generate intermediate frame images.
[0105] Build a computing platform for the intermediate frames, integrate the optical flow algorithm and the interpolation method into the computing platform, input two adjacent single-frame images into the computing platform, and output intermediate frame images.
[0106] S402: Determine the number of the intermediate frame images, link two sets of processing blocks and the intermediate frame images by using a serial data bus, and update the number.
[0107] Determine the number of the intermediate frame images. For two single-frame images with small differences and small pixel movement, a smaller number of intermediate frame images can be determined. For two single-frame images with large differences and large pixel movement, a larger number of intermediate frame images can be determined. Determining different numbers of intermediate frame images can improve the detail display effect of the dynamic image and ensure the smooth transition of the intermediate frame images.
[0108] Link the processing blocks storing two adjacent single-frame images and the corresponding intermediate frame images by using a serial data bus, and assign corresponding numbers to the intermediate frame images. The advantage of doing this is that it can further ensure the smooth transition between the single-frame images and the intermediate frame images, and at the same time avoid frame skipping.
[0109] In Embodiment 6, Figure 6 The implementation process of the image dynamic display method provided by the embodiment of the present invention is shown. The following details S500 as follows:
[0110] S501: Insert a side chain into the playback queue, and use the side chain as the entry of the playback queue.
[0111] Insert a side chain into the playback queue, and use the side chain as the entry of the playback queue. That is to say, before the single-frame image enters the playback queue, it needs to be processed by the side chain first.
[0112] S502: Build an image processing pipeline in the side chain.
[0113] The image processing pipeline does not have special practical significance. It is only a general term for processing steps such as decoding, resizing, color conversion, and rendering. The image processing pipeline is used to process a single-frame image in the side chain, and after the processing is completed, the single-frame image is transferred to the playback queue.
[0114] S503: Across the data transmission link and the playback queue, use the pre-constructed frame rate control strategy to dynamically display the single-frame image.
[0115] After the processed single-frame image is transferred to the playback queue, use the frame rate control strategy to dynamically display the single-frame image across the data transmission link and the playback queue; "across" here means through (the same as in Embodiment 4), where the frame rate control strategy is determined by the staff according to the actual dynamic display requirements of the image.
[0116] In Embodiment 7, different from Embodiment 1, in the embodiment of the present invention, the method further includes:
[0117] In the right subtree, construct a hierarchical recognition model and input the single-frame image into the trained hierarchical recognition model.
[0118] Output at least three display levels, where the display levels include: foreground, middle ground, and background.
[0119] Compare the changed display levels in the two consecutive single-frame images and define them as differences.
[0120] Construct a hierarchical recognition model in the right subtree and train it using the existing data set to improve the accuracy of the hierarchical recognition model; input the single-frame image into the hierarchical recognition model, and the output display levels include: foreground, middle ground, and background.
[0121] Compare the display levels of the two consecutive single-frame images, find the changed display levels among them, and define them as differences.
[0122] In Embodiment 8, different from Embodiment 1, in the embodiment of the present invention, the method further includes:
[0123] Mark the initialized data blocks in the partition tree as empty blocks and construct a recycling strategy for the empty blocks.
[0124] When all the data blocks are included in the data stack, transfer the single-frame image following the transfer order.
[0125] Mark the initialized data blocks in the partition tree as empty blocks, and construct a recycling strategy for the empty blocks. The recycling strategy means that after the data blocks are initialized, they can be used as empty blocks again. Fill the empty blocks with two adjacent single-frame images to obtain processed blocks. After the data blocks are incorporated into the data stack, transfer the single-frame images according to the transmission order.
[0126] Figure 7 The block diagram showing the composition structure of the image dynamic display system provided by the embodiment of the present invention, the image dynamic display system 1 includes:
[0127] The splitting module 11 is used to construct a partition tree, embed an initial node, transmit the received image into the initial node, and split it into several single-frame images;
[0128] The configuration module 12 is used to decompose the partition tree into a left subtree, a middle main trunk, and a right subtree, create a data stack in the middle main trunk, and hang four groups of data blocks under the data stack. Among them, the four groups of data blocks are two groups of buffer blocks arranged on the upper side of the data stack and two groups of processed blocks arranged on the lower side of the data stack, and configure the transmission order of the single-frame images in the data blocks;
[0129] The pop-up module 13 is used to integrate a trigger at the top of the data stack, activate the trigger, pop the buffer blocks into the left subtree, and pop the processed blocks into the right subtree;
[0130] The transfer module 14 is used to import two adjacent single-frame images into two groups of processed blocks in the right subtree respectively, compare the differences between the two single-frame images to determine the active part, calculate the pixel movement of the two single-frame images based on a preset optical flow algorithm, draw the movement vector diagram of the pixels, and perform motion compensation. Use a preset interpolation method to generate an intermediate frame image, and insert the intermediate frame image between the two groups of processed blocks. Transfer the single-frame images and the intermediate frame images in the two groups of processed blocks to the buffer blocks according to the transmission order;
[0131] The transfer-in module 15 is used to build a data transmission link between the left subtree and a preset terminal, and process the buffer blocks popped into the left subtree. The processing includes: decoding, resizing, color conversion, and rendering, and after processing, transfer into the data transmission link.
[0132] Figure 8 The block diagram showing the composition structure of the image dynamic display system provided by the embodiment of the present invention, the splitting module 11 includes:
[0133] The open unit 111 is used to locate the inlet of the partition tree, embed an initial node into the inlet, use the initial node as the receiving end to build an image receiving channel, and after verification, open the channel to a preset terminal;
[0134] An export unit 112, configured to split the image within the initial node after transmitting the image to the initial node through the channel, and export each frame as a single picture to obtain single-frame images;
[0135] A numbering unit 113, configured to collect the attributes of the single-frame images and number them.
[0136] Figure 9 The block diagram shows the composition structure of the image dynamic display system provided by an embodiment of the present invention. The configuration module 12 includes:
[0137] A marking unit 121, configured to collect the display requirements of the image, set a plurality of data stacks at the intermediate backbone, where each data stack is mounted with four groups of data blocks, and mark the arrangement order of the data blocks;
[0138] An arranging unit 122, configured to construct a play queue in the left subtree, and incorporate all buffer blocks into the play queue, where the buffer blocks are arranged in the play queue according to their numbers;
[0139] A parallel processing unit 123, configured to process the buffer blocks in the play queue in parallel.
[0140] Figure 10 The block diagram shows the composition structure of the image dynamic display system provided by an embodiment of the present invention. The pop-up module 13 includes:
[0141] An assigning unit 131, configured to assign different trigger strategies to the buffer blocks and processing blocks according to the trigger;
[0142] The trigger strategy is as follows:
[0143] When a buffer block crosses the trigger and enters the left subtree, the play queue is started and the buffer block is added;
[0144] When a processing block crosses the trigger and enters the right subtree, the processing block is initialized, and using the initial node, two adjacent numbered single-frame images are imported into the processing block;
[0145] A pushing unit 132, configured to, after the play and import are completed, push the buffer blocks and processing blocks back into the data stack according to the arrangement order.
[0146] Figure 11 The block diagram shows the composition structure of the image dynamic display system provided by an embodiment of the present invention. The transfer module 14 includes:
[0147] A generating unit 141, configured to construct a computing platform for intermediate frames, integrate the optical flow algorithm and the interpolation method into the computing platform, and generate intermediate-frame images;
[0148] An update unit 142 is configured to determine the number of the intermediate frame images, link two sets of processing blocks and the intermediate frame images by using a serial data bus, and update the numbering.
[0149] Figure 12 The following shows a structural block diagram of a composition of an image dynamic display system provided by an embodiment of the present invention. The transfer module 15 includes:
[0150] An insertion unit 151 is configured to insert a side chain into the playback queue and use the side chain as an entry of the playback queue.
[0151] A construction unit 152 is configured to construct an image processing pipeline in the side chain.
[0152] A spanning unit 153 is configured to span the data transmission link and the playback queue and perform dynamic display on a single frame image by using a pre-constructed frame rate control strategy.
[0153] The technical features of the above-described embodiments can be combined arbitrarily. For the sake of concise description, not all possible combinations of the technical features in the above-described embodiments are described. However, as long as there is no contradiction in the combination of these technical features, it should be considered as the scope recorded in this specification.
[0154] The above-described embodiments only represent several implementation manners of the present invention. The description thereof is relatively specific and detailed, but it should not be construed as a limitation on the scope of the patent of the present invention. It should be noted that for those of ordinary skill in the art, without departing from the concept of the present invention, several deformations and improvements can be made, and these all belong to the protection scope of the present invention. Therefore, the protection scope of the patent of the present invention should be subject to the appended claims.
[0155] The above is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent replacements, and improvements made within the spirit and principle of the present invention shall be included in the protection scope of the present invention.
Claims
1. A method for dynamic image display, characterized in that: The method comprises: S100: construct a partition tree and embed it into an initial node, transfer the received image to the initial node, and divide it into several single-frame images; S200: decomposing the partition tree into a left subtree, a middle trunk and a right subtree, creating a data stack in the middle trunk, and hanging four groups of blocks in the data stack, wherein the four groups of blocks are respectively two groups of buffer blocks arranged on the upper side of the data stack and two groups of processing blocks arranged on the lower side of the data stack, and configuring the transmission order of the single frame image in the blocks; S300: Integrate a trigger at the top of the data stack, activate the trigger, pop the buffer block into the left subtree, and pop the processing block into the right subtree; S400: importing the two single-frame images before and after into two groups of processing blocks in the right subtree respectively, and comparing the difference between the two single-frame images, determining the active part, calculating the pixel motion of the two single-frame images based on a preset optical flow algorithm, drawing a motion vector map of the pixels, and performing motion compensation, generating an intermediate frame image by using a preset interpolation method, and inserting the intermediate frame image between the two groups of processing blocks, and transferring the single-frame images and the intermediate frame images in the two groups of processing blocks to the buffer block according to the transmission order; S500: Building a data transmission link between the left subtree and a preset terminal, processing the buffer block popped into the left subtree, wherein the processing includes: decoding, resizing, color conversion and rendering, and after processing, transferring to the data transmission link; The S100 includes: Locate the entrance of the partition tree, embed an initial node into the entrance, use the initial node as a receiving end, build an image receiving channel, and after verification, open the channel to a preset terminal; After the channel transmits the image to the initial node, the image is split in the initial node, and each frame is exported as a single picture to obtain a single frame image; Collect the properties of a single frame and number them; The S200 includes: Collect the display requirements of the image, set up a number of data stacks at the middle trunk, wherein each of the data stacks is mounted with four groups of blocks, and the arrangement order of the blocks is marked; Constructing a play queue in the left subtree, and putting all buffer blocks into the play queue, wherein the buffer blocks are arranged in the play queue according to the numbers; Processing the buffer blocks in the play queue in parallel; The S300 includes: Based on the trigger, assigning different trigger strategies to the buffer block and the processing block; The triggering strategy is: When the buffer block crosses the trigger and enters the left subtree, the play queue is opened and the buffer block is added; When the processing block crosses the trigger and enters the right subtree, the processing block is initialized, and two single-frame images with adjacent numbers are imported into the processing block using the initial node; After the playback and importing are completed, the buffer blocks and the processing blocks are pushed back into the data stack according to the arrangement order; The S500 includes: Inserting a side chain into the play queue and using the side chain as an entry to the play queue; Building an image processing pipeline in the side chain; Across the data transmission link and the play queue, a single frame image is dynamically displayed using a pre-built frame rate control strategy.
Citation Information
Patent Citations
Three-dimensional visualization simulation method directed at boundary element analysis
CN102902848A
Image processing method and device, electronic equipment and computer readable storage medium
CN112596843A