Detailed Description
The present invention will be described in further detail with reference to the accompanying drawings and examples. It is to be understood that the specific embodiments described herein are merely illustrative of the invention and are not limiting of the invention. It should be further noted that, for the convenience of description, only some of the structures related to the present invention are shown in the drawings, not all of the structures.
Example one
Fig. 1 is a flowchart of a multidimensional data volume processing method according to an embodiment of the present invention, where this embodiment is applicable to a case where a large multidimensional data stream is cached in real time without consuming a large amount of hardware resources and guaranteeing signal quality, the method may be executed by a multidimensional data volume processing apparatus, the multidimensional data volume processing apparatus may be implemented by software and/or hardware, and the multidimensional data volume processing apparatus may be configured on a computing device, and specifically includes the following steps:
s110, obtaining an N-dimensional data stream, wherein N is a positive integer greater than or equal to 2.
Illustratively, the N-dimensional data stream may be, but is not limited to, an N-dimensional image data stream, an N-dimensional video data stream, an N-dimensional audio data stream, and an N-dimensional power data stream.
Optionally, the acquiring of the N-dimensional data stream may specifically be based on signal data acquired by a signal acquisition device array in an N-1-dimensional arrangement manner; and combining the signal data acquired by each signal acquisition device based on the arrangement mode and the acquisition time stamp of the signal acquisition device array to form an N-dimensional data stream.
For example, the acquisition timestamp can be an identification of the time at which the signal data was acquired by the signal acquisition array.
Taking an N-dimensional data stream as an example of a three-dimensional signal data stream, wherein the signal can be a solar signal, a wind signal and the like, a two-dimensional solar signal acquired by a solar signal collector array on a solar panel is combined with the acquisition time of the solar signal according to the arrangement mode of the solar signal collector array, and then the three-dimensional solar signal data stream can be formed.
And S120, sequentially writing the signal data in the N-dimensional data stream into an N-dimensional storage space, and looping back each M-dimensional data set which is written into the N-dimensional storage space based on a corresponding loopback cycle in the writing process of the signal data until the writing of the N-dimensional data stream is completed, wherein each M-dimensional data set comprises an M-dimensional data set corresponding to each integer value in an interval of M being [1, N-1 ].
Illustratively, the N-dimensional storage space may be an N-dimensional memory that can be used to store data, for example, an N-dimensional First-in First-out (FIFO) space.
The M-dimensional data set may be written signal data of each dimension in the N-dimensional storage space during writing of the signal data, where each M-dimensional data set includes M-dimensional data sets corresponding to each integer value in an interval where M is [1, N-1], for example, when N is 1, M is 1; when N is 2, then M is 1 and 2; when N is 3, then M is 1, 2 and 3.
Referring to fig. 2, which illustrates a schematic diagram of the corresponding relationship between the N-dimensional data stream and the M-dimensional data set, fig. 2 illustrates a three-dimensional image data stream of 8 × 8, in fig. 2, 12 transient diagrams of the three-dimensional storage space (e.g., three-dimensional FIFO) are listed, and the clock period corresponding to each state is (period factor X) × (period factor Y) -1, according to the above calculation formula, it can be easily found that: the 4 th and 5 th images in fig. 2 are at the same time, and the 8 th and 9 th images are at the same time, but they are represented differently. The detailed discussion is as follows:
(1) the 0 th, 2 th, 3 th, and 7 th pixel points in the three-dimensional image data stream with the processes of 8 × 8 in fig. 2 are sequentially pushed into the 1 st dimensional FIFO _00 at the 0 th, 2 th, 3 th, and 7 th clock cycles, respectively. In fig. 2, the 7 th pixel in the 4 th image is pushed into the 1 st dimension FIFO _00 at the 7 th clock cycle, which marks the completion of the first data loading of the 1 st dimension.
(2) The 5 th graph in fig. 2 represents that the first 8 pixel points described in (1) are regarded as a whole, that is, the first one-dimensional data set starts to load data into the 2 nd dimension of the three-dimensional FIFO. The processes of the 5 th to 8 th graphs in fig. 2 are that the 0 th, 1 st, 2 nd and 7 th one-dimensional data sets composed of the 0 th to 7 th, 8 th to 15 th, 16 th to 23 th and 24 th to 63 th pixel points are sequentially pressed into the 2 nd dimensional FIFO _ OX (FIFO _00 to 07) in the 7 th, 15 th, 23 th and 63 th clock cycles, respectively. Wherein, the 7 th one-dimensional data set in the 8 th drawing in FIG. 2 is pushed into FIFO _0X (FIFO _00 ~ 07) at the 63 rd cycle, which marks the completion of the first data loading of the 2 nd dimension.
(3) The 9 th diagram in fig. 2 represents that the first 8 "one-dimensional data sets" (64 pixels in total) described in (2) are regarded as a whole, i.e., the first "two-dimensional data set" starts to load data into the 3 rd dimension of the three-dimensional FIFO. The processes of the 9 th to 12 th graphs in fig. 2 are that the 0 th, 1 st, 2 nd and 7 th "two-dimensional data sets" respectively composed of the 0 th to 7 th, 8 th to 15 th, 16 th to 23 th and 24 th to 63 th "one-dimensional data sets" are sequentially pushed into the 3 rd dimensional FIFO _ XX (FIFO _0X to 7X) in the 55 th, 127 th, 199 th and 271 th clock cycles, respectively. In fig. 2, the 7 th "two-dimensional data set" in the 12 th drawing is pushed into FIFO _ XX (FIFO _0X to 7X) at the 271 th cycle, which marks the completion of the first data loading of the 3 rd dimension.
As can be seen from the above, each FIFO _ X in fig. 2 is called a "one-dimensional data set", 7 "one-dimensional data sets" are collectively called a two-dimensional data set, 7 "two-dimensional data sets" are collectively called a "three-dimensional data set", and when all of the 7 "two-dimensional data sets" are written, the writing of the three-dimensional image data stream marked 8 × 8 is completed.
The conventional writing manner of writing signal data in an N-dimensional data stream into an N-dimensional storage space (N is FIFO) is as follows:
first, taking a one-dimensional data stream as an example, fig. 3 is a schematic diagram of states of a logic block diagram of the one-dimensional data stream written into the one-dimensional FIFO in 5 different clock cycles. In fig. 1, the data stream to be input into the FIFO buffer in fig. 3 enters the interior of the FIFO through the data _ in port. After entering FIFO, the data stream is processed by pipeline quasi-parallel signal and then output from data _ out in the same code stream format. The FIFO can buffer 3 lines of data in a frame at the same time. This FIFO is a four tap output. Each tap is buffered for 4 beats, in turn AX0, AX1, AX2, AX3 (where: X ═ 0, 1, 2, 3). The read enable on time for each tap is 0, 3839, 7679, 11519, respectively. After the read enable is turned on, the data stream in the FIFO continues to be pushed to the right on the one hand, and is sequentially pushed into the 4 registers below the tap on the other hand.
The conventional writing method for writing the signal data in the one-dimensional data stream into the one-dimensional storage space (N is FIFO) is the same as the writing method of the embodiment of the present invention, and will not be described in detail here.
However, when the multidimensional data stream is written into the multidimensional storage space, the conventional writing manner is different from the scheme of the embodiment of the invention.
Referring to fig. 4, a schematic diagram of two-dimensional slicing performed along the Z axis for one frame of multi-dimensional data stream is shown, where a three-dimensional data stream of one frame 1920 × 1920 is taken as an example, the three-dimensional data stream of 1920 × 1920 is reduced in dimension in a two-dimensional slicing manner, each slice is 0 to 3686399, 3686400 to 7372799, 7372800 to 11059199, … …, 7066828800 to 7070515199, 7070515200 to 7074201599, 7074201600 to 7077007999, and each slice can be regarded as a two-dimensional subframe of a 1-frame three-dimensional code stream, and the signal data in the one-dimensional data stream is written into a one-dimensional storage space. However, since the three-dimensional code stream is reduced to two dimensions, the function body can only capture neighborhood data on the same two-dimensional plane, and cannot capture neighborhood data between different two-dimensional planes, the correlation between the 3 rd dimension and the previous two dimensions cannot be fully utilized, and thus a large part of signal processing quality is sacrificed.
In the scheme of the embodiment of the invention, each M-dimensional data set which is written in the N-dimensional storage space is looped back based on the corresponding loopback cycle, each M-dimensional data set has the corresponding preset loopback cycle, and each M-dimensional data set which is written in the N-dimensional storage space is looped back based on the corresponding loopback cycle by adjusting the FIFO data processing architecture and presetting the loopback cycle in the signal data writing process, so that the real-time caching of a large number of multidimensional data streams can be realized on the premise of not consuming a large number of hardware resources and ensuring the signal quality, and the defects of the traditional N-dimensional storage space in the process of processing the N-dimensional data streams are overcome. The specific loopback process is described in detail in the following embodiments.
It should be noted that, by writing the N-dimensional data stream into the N-dimensional storage space by using the conventional method and the scheme of the embodiment of the present invention, the result of comparing the effects shown in table 1 can be obtained, and as can be seen from table 1, by writing the N-dimensional data stream into the N-dimensional storage space by using the method of the embodiment of the present invention, the deficiency of the conventional N-dimensional storage space in processing the N-dimensional data stream is improved, and the effect of caching a large number of multidimensional data streams in real time is achieved without consuming a large amount of hardware resources and ensuring signal quality.
According to the technical scheme of the embodiment of the invention, the framework of the N-dimensional storage space is improved, the loopback cycle is preset, the signal data in the acquired N-dimensional data stream is sequentially written into the N-dimensional storage space, and in the writing process of the signal data, each M-dimensional data set which is written into the N-dimensional storage space is looped back based on the corresponding loopback cycle until the writing of the N-dimensional data stream is completed, so that the defects of the traditional N-dimensional storage space in the processing of the N-dimensional data stream are improved, and the effect of caching a large number of multidimensional data streams in real time on the premise of not consuming a large number of hardware resources and ensuring the quality of signals is realized.
Example two
Fig. 5 is a flowchart of a multidimensional data stream processing method according to a second embodiment of the present invention, and the second embodiment of the present invention may be combined with various alternatives in the foregoing embodiments. In this embodiment of the present invention, optionally, before the sequentially writing the signal data in the N-dimensional data stream into the N-dimensional storage space, the method further includes: and carrying out blocking processing on the N-dimensional data stream to obtain a plurality of N-dimensional data stream blocks. Correspondingly, the sequentially writing the signal data in the N-dimensional data stream into the N-dimensional storage space includes: and for any N-dimensional data stream block, sequentially writing the signal data in the current N-dimensional data stream block into the N-dimensional storage space.
As shown in fig. 5, the method of the embodiment of the present invention specifically includes the following steps:
s210, obtaining an N-dimensional data stream, wherein N is a positive integer greater than or equal to 2.
S220, partitioning the N-dimensional data stream to obtain a plurality of N-dimensional data stream blocks.
Illustratively, the N-dimensional data stream block may be obtained by partitioning the N-dimensional data stream. For the acquired N-dimensional data stream, when the data size of the N-dimensional data stream is large, the storage space of the N-dimensional storage space is limited, and all information data in the N-dimensional data stream cannot be written in, so that the N-dimensional data stream needs to be partitioned to obtain a plurality of N-dimensional data stream blocks, and thus when the N-dimensional data stream is written in the N-dimensional storage space, the N-dimensional data stream blocks can be sequentially written in the N-dimensional storage space according to the relevance of the plurality of N-dimensional data stream blocks. This ensures that the N-dimensional data streams with associations can be stored simultaneously in the N-dimensional storage space.
It should be noted that, when the N-dimensional data stream is partitioned, the partitioning may be performed according to the storage space of the N-dimensional storage space, for example, if the N-dimensional storage space can only hold 300 signal data, and a 3-dimensional data stream with 64 × 64 cannot be completely stored in the N-dimensional storage space, the 3-dimensional data stream with 64 × 64 may be partitioned into 8 3-dimensional data stream blocks.
And S230, for any N-dimensional data stream block, sequentially writing the signal data in the current N-dimensional data stream block into an N-dimensional storage space.
For example, the current N-dimensional data stream block may be an N-dimensional data stream block to which signal data writing is currently performed.
When signal data in a plurality of N-dimensional data stream blocks are written into an N-dimensional storage space in sequence, the signal data are stored according to the relevance of each N-dimensional data stream block. So that the N-dimensional data stream having the association can be stored into the N-dimensional storage space.
Optionally, for any N-dimensional data stream block, sequentially writing the signal data in the current N-dimensional data stream block into the N-dimensional storage space, which may specifically be: determining an associated N-dimensional data stream block having a correlation with a current N-dimensional data stream block; and synchronously writing the current N-dimensional data stream block and the associated N-dimensional data stream block into the N-dimensional storage space.
Illustratively, the associated N-dimensional data stream block may be an N-dimensional data stream block having a correlation with the current N-dimensional data stream block.
If a certain N-dimensional data stream block is a current N-dimensional data stream block, a related N-dimensional data stream block having a correlation with the current N-dimensional data stream block needs to be determined first, and the specific determination method may be: extracting any original signal data in the current N-dimensional data stream block, and determining coordinate information of associated signal data based on the coordinate information of the original signal data and the dimension number N of the data stream block, wherein the coordinate information of the associated signal data is at least one coordinate value and 2 in the coordinate information of the original signal dataNPerforming addition/subtraction operation to obtain; and determining the N-dimensional data stream block in which the associated signal data is positioned as an associated N-dimensional data stream block.
For example, taking an N-dimensional data stream block as a three-dimensional data stream block as an example, the determination diagram for associating the N-dimensional data stream block is described with reference to fig. 6. The structure block in fig. 6 represents a three-dimensional data stream, where a is a current three-dimensional data stream block, any original signal data in a is selected, and at least one coordinate value in the coordinate information of the signal data in a, for example, the coordinate value of the most boundary signal data in a and 2, is used3The addition/subtraction is performed, for example, if the coordinate value of the signal data at the top right corner of A is (1,1,1), the coordinate value is added to 23And performing addition/subtraction operation to obtain coordinate values (8,8,8), wherein a three-dimensional data stream block in which the signal data corresponding to the coordinate values is located is a related three-dimensional data stream block of a, that is, B, C and D in fig. 6 are both related N-dimensional data stream blocks having a correlation with a.
After an associated N-dimensional data stream block having a correlation with the current N-dimensional data stream block is determined, the current N-dimensional data stream block and the associated N-dimensional data stream block may be synchronously written into the N-dimensional storage space. Therefore, the data stream written into the N-dimensional storage space is ensured to be the data stream with correlation, and the effect of real-time caching of a large number of multidimensional data streams is realized on the premise of not consuming a large number of hardware resources and ensuring the signal quality.
S240, in the writing process of the signal data, performing loopback on each M-dimensional data set which is written in the N-dimensional storage space on the basis of a corresponding loopback cycle until the writing of the N-dimensional data stream is completed, wherein each M-dimensional data set comprises an M-dimensional data set corresponding to each integer numerical value in an interval of M being [1, N-1 ].
According to the technical scheme, the N-dimensional data stream is partitioned to obtain a plurality of N-dimensional data stream blocks, and signal data in the current N-dimensional data stream block are written into the N-dimensional storage space in sequence for any N-dimensional data stream block, so that the N-dimensional data stream blocks can be written into the N-dimensional storage space in sequence according to the relevance of the plurality of N-dimensional data stream blocks when the N-dimensional data stream block is written into the N-dimensional storage space. This ensures that the N-dimensional data streams with associations can be stored simultaneously in the N-dimensional storage space.
EXAMPLE III
Fig. 7 is a flowchart of a multidimensional data stream processing method provided in the third embodiment of the present invention, and the third embodiment of the present invention and various alternatives in the foregoing embodiments may be combined. In this embodiment of the present invention, optionally, sequentially writing the signal data in the current N-dimensional data stream block into the N-dimensional storage space includes: and in the process of writing the Nth-dimensional storage space, sequentially writing the signal data into the current M-dimensional storage space according to the writing sequence of the signal data in the data stream, adjusting the position of each M-dimensional storage space when the current M-dimensional storage space finishes writing, and writing the next looped M-dimensional storage space, wherein the current M-dimensional storage space belongs to the Nth-dimensional storage space. Performing loopback on each M-dimensional data set which is written in the N-dimensional storage space based on a corresponding loopback cycle, wherein the loopback comprises the following steps: and controlling the storage position of the M-1 dimensional data set to perform annular change according to the loopback period of the M dimensional data set, wherein the one-dimensional data set comprises a first preset number of signal data, and the M-1 dimensional data set of a second preset number forms the M dimensional data set. After the writing of the N-dimensional data stream is completed, the method further comprises: and performing at least one of compression, encoding and feature extraction on the signal data written in the N-dimensional storage space.
As shown in fig. 7, the method of the embodiment of the present invention specifically includes the following steps:
s310, obtaining an N-dimensional data stream, wherein N is a positive integer greater than or equal to 2.
And S320, partitioning the N-dimensional data stream to obtain a plurality of N-dimensional data stream blocks.
S330, for any N-dimensional data stream block, in the process of writing in the N-dimensional storage space, sequentially writing in the current M-dimensional storage space according to the writing sequence of signal data in the data stream, when the current M-dimensional storage space finishes writing, adjusting the position of each M-dimensional storage space, and writing in the next looped M-dimensional storage space, wherein the current M-dimensional storage space belongs to the N-dimensional storage space.
Illustratively, when any one N-dimensional data stream block is written into the N-dimensional storage space, in the process of writing into the N-dimensional storage space, the data stream block is sequentially written into the current M-dimensional storage space according to the writing sequence of the signal data in the data stream, and when the current M-dimensional storage space completes writing, the position of each M-dimensional storage space is adjusted according to a preset loopback rule, and the next loopback M-dimensional storage space is written. This achieves the effect of writing the N-dimensional data stream having the association into the N-dimensional storage space.
Optionally, the adjusting the position of each M-dimensional storage space and writing the next looped M-dimensional storage space includes: taking the unwritten M-dimensional storage space at the current tail position in the Nth-dimensional storage space as the next loopback M-dimensional storage space; and adjusting the next looped M-dimensional storage space to the head position in the Nth-dimensional storage space, and sequentially adjusting the positions of other M-dimensional storage spaces, wherein each M-dimensional storage space comprises a set of M-dimensional storage spaces corresponding to each integer value in an interval of M being [1, N-1 ].
For example, taking signal data of which the current data stream block is 8 × 8 and the N-dimensional storage space is an N-dimensional FIFO as an example, when writing into the 2 nd storage space, the signal data of the 2 nd storage space is written into the 1 st storage space, which is similar to the corresponding relationship between the N-dimensional data stream and the M-dimensional data set in fig. 2, where the N-dimensional storage space and the M-dimensional storage space are consistent with the corresponding relationship in fig. 2, and a preset number of M-dimensional storage spaces are combined together to form the N-dimensional storage space.
Referring to fig. 8, a schematic diagram of adjusting the positions of the memory spaces in the embodiment of the present invention is shown, in which the current data stream block is 8 × 8 signal data, and the N-dimensional memory space is an N-dimensional FIFO, where FIFO-0-FIFO-7 represent different memory spaces in the M-dimensional memory space, respectively.
As shown in diagram a of FIG. 8, before signal data is written into the FIFOs, the arrangement order of the FIFOs-0-7 is FIFO-7-FIFO-0. When the first signal data "0" in the current 8 x 8 three-dimensional data stream block is written into the first storage space FIFO-0 in the three-dimensional FIFO, FIFO-0 moves from the end to the head position, and FIFO-7-FIFO-1 sequentially moves down, as shown in diagram b in fig. 8. After the first signal data "0" in the three-dimensional data stream block of 8 by 8 is written into the first storage space FIFO-0 in the three-dimensional FIFO, when data "1" is input, "0" is pushed forward, and "1" is moved to the upper right corner position, as shown in the diagram c in fig. 8, data is written from the upper right corner when data is written. In the process of writing in the first storage space FIFO-0, the storage space of FIFO-1 which is not written in at the tail position in the current sequence is used as the storage space of the next loop, when the storage space in the storage space of FIFO-0 is filled up, the storage space FIFO-1 of the next loop is adjusted to the head position of the storage space of FIFO-0, and the other FIFOs-7-FIFO-2 are sequentially moved down, as shown in a diagram d in fig. 8. And the like, until the current 8 x 8 three-dimensional data stream block is completely written into the three-dimensional FIFO.
In addition, during the loop-back process between several storage spaces of FIFO-0-FIFO-7, the interior of each storage space of FIFO-0-FIFO-7 is also looped back, as shown in diagram d in FIG. 8, when the 9 th signal data "8" starts to be written into the storage space of FIFO-1, the 8 signal data "0-7" in the storage space of FIFO-0 is also looped back, when the signal data "8" is written into the storage space of FIFO-1, the signal data "0" in the storage space of FIFO-0 is looped back to the tail position of the storage space of FIFO-0, the signal data "1-7" move forward in turn, when the signal data "9" is written into the storage space of FIFO-1, the signal data "1" in the storage space of FIFO-0 is looped back to the tail position of the storage space of FIFO-0, the signal data "2-7" are sequentially moved forward. And so on until the storage space of the FIFO-1 is filled up.
In the prior art, referring to the schematic diagram of position adjustment of the storage space in the prior art in fig. 9, as shown in a diagram a in fig. 9, when signal data is written into the FIFO, the arrangement order of the FIFO-0-FIFO-7 is FIFO-7-FIFO-0. When the first signal data "0" in the current 8 x 8 three-dimensional data stream block is written into the first storage space FIFO-0 in the three-dimensional FIFO, the arrangement order of the FIFO-0-FIFO-7 is maintained, and the 8 signal data "0-7" are written into the storage space FIFO-0 in turn, as shown in the b diagram in fig. 9, and the data are written from the upper right corner when the data are written, as in fig. 8. When the storage space in the storage space of FIFO-0 is filled up, and the 8 signal data of "8-15" are continuously written, in the process, also written in FIFO-0, every time one data is written, the data going first in FIFO-0 will move to the next storage space first, i.e. when "8" is written, "0" is pushed to the last position in FIFO-1, when "9" is written, "1" is pushed to the last position in FIFO-1, "0" moves forward, and so on, but the arrangement order of FIFO-0-FIFO-7 remains unchanged, as shown in diagram c in fig. 9. And the like, until 8 x 8 three-dimensional data streams are written into the three-dimensional FIFO.
In this loop-back manner in the embodiment of the present invention, the N-dimensional data stream with the correlation can be written into the N-dimensional storage space.
S340, in the writing process of the signal data, controlling the storage position of the M-1 dimensional data set to change in a ring shape according to the loopback period of the M-dimensional data set, wherein the one-dimensional data set comprises a first preset number of signal data, and the M-1 dimensional data set comprises a second preset number of M-1 dimensional data sets.
Illustratively, the first preset number may be a preset number of 1-dimensional data sets.
The second preset number may be a preset number of M-1-dimensional data sets.
When M is greater than or equal to 2, taking M as an example, if the data stream block is a data stream block of 8 × 8, after the 8 one-dimensional data sets of signal data "0-63" in the three-dimensional data set of 8 × 8 are completely written in the manner in S330, the schematic diagram of the one-dimensional data set shown in fig. 10 is formed, and the 8 one-dimensional data sets are regarded as a combination to form a first two-dimensional data set, that is, a predetermined number of M-1-dimensional data sets form an M-dimensional data set.
After the 8 one-dimensional data sets are regarded as a combination to form the first two-dimensional data set, the signal data of "64 to 127" are written in sequence. When this two-dimensional data set of "64 to 127" is written into the N-dimensional FIFO in the manner described above in S330, the 8 one-dimensional data sets of "0 to 63" also undergo a circular change at their respective storage locations, and the loop-back is not stopped. That is, the currently looped two-dimensional data set also controls the previously written one-dimensional data set to change in a circular shape at its storage location.
It should be noted that, referring to fig. 11, the schematic diagram for determining that the one-dimensional data set is the preset number of signal data is described, taking a one-dimensional data stream composed of 8 signal data of "0 to 7" as an N-dimensional data stream as an example, where the first preset number is 8, that is, 8 signal data of "0 to 7". At this time, M is 1, and when only 1-dimensional data set exists, the 1-dimensional data set is the preset number of signal data, as shown in fig. 11, the 1-dimensional data set in the FIFO-0 is 8 signal data "0-7".
It should be noted that the loop-back period of the M-dimensional data set is a write period of the M-1-dimensional data set, and the loop-back period of the 1-dimensional data set is a write period of one signal data. For example, taking M as 3 as an example, if the data stream block is a data stream block of 8 × 8, after 8 one-dimensional data sets of signal data "0-63" in a three-dimensional data set of 8 × 8 are completely written, the 8 one-dimensional data sets are regarded as a combination to form a first two-dimensional data set, a loop-back period of the two-dimensional data set is a write period of the two-dimensional data set during writing, and the two-dimensional data set is a one-dimensional data set during writing, and the 8 one-dimensional data sets constitute the two-dimensional data set. Therefore, the loop-back period of the two-dimensional data set is the write period of the one-dimensional data set. The loop-back period of the 1-dimensional data set is the write-in period of one signal data.
Thus, the N-dimensional data streams with the relevance are written into the N-dimensional storage space and are positioned together in the N-dimensional storage space, so that the N-dimensional data streams with the relevance can be calculated subsequently.
And S350, performing at least one of compression, encoding and feature extraction on the signal data written in the N-dimensional storage space.
Illustratively, after writing the N-dimensional data stream into the N-dimensional storage space, at least one of compression, encoding and feature extraction may be performed on the signal data written in the N-dimensional storage space according to a user requirement.
Referring to fig. 12, a schematic diagram of an embodiment of the present invention and a prior art scheme after storing an N-dimensional data stream is shown, where in fig. 12, a two-dimensional data stream with N being 2 and a single-frame signal data being 8 × 8 and a two-dimensional data stream block with a block size of 4 × 4 are shown as an example, and as can be seen from fig. 12, signal data 5, 6, 7, 20, … …, 33, 34, 35, 48 are correlated, and similarly, 20-31, 48-51 are correlated, and after the above storage manner of the embodiment of the present invention, the signal data with correlation may be stored together, for example, all stored in one rectangle, such as a rectangle surrounded by 5, 6, 7, 20, … …, 33, 34, 35, 48, a rectangle surrounded by 20-31, 48-51, and the like. Therefore, when the characteristics are extracted, the signal data with the correlation can be conveniently extracted for subsequent calculation, and if the prior technical scheme is utilized, the signal data with the correlation are not together and even are far away, so that the signal data with the correlation cannot be well extracted. Making subsequent calculations difficult.
The N-dimensional data stream is written into the N-dimensional storage space in the above manner, and the features thus extracted are signal data having a correlation, so that the signal data having a correlation can be subsequently subjected to calculation processing.
It should be noted that the signal data written in the N-dimensional memory space may be subjected to at least one of compression, encoding, and feature extraction, or may be performed during the process of writing the N-dimensional data stream in the N-dimensional memory space. And are not limited herein.
According to the technical scheme of the embodiment of the invention, for any N-dimensional data stream block, in the process of writing in the N-dimensional storage space, the signal data in the data stream are sequentially written in the current M-dimensional storage space according to the writing sequence of the signal data in the data stream, when the current M-dimensional storage space finishes writing, the position of each M-dimensional storage space is adjusted, and the M-dimensional storage space of the next loop is written, so that the effect of writing the N-dimensional data stream with relevance into the N-dimensional storage space can be realized. In the writing process of the signal data, according to the loopback cycle of the M-dimensional data set, the storage position of the M-1-dimensional data set is controlled to change in a ring shape, at least one of compression, encoding and feature extraction is carried out on the signal data written in the N-dimensional storage space, so that the N-dimensional data streams with the relevance are written in the N-dimensional storage space and are together in the N-dimensional storage space, and the N-dimensional data streams with the relevance are calculated in the subsequent process.
Example four
Fig. 13 is a schematic structural diagram of a multidimensional data stream processing apparatus according to a fourth embodiment of the present invention, as shown in fig. 13, the apparatus includes: an N-dimensional data stream acquisition module 31 and a data writing module 32.
The N-dimensional data stream obtaining module 31 is configured to obtain an N-dimensional data stream, where N is a positive integer greater than or equal to 2;
a data writing module 32, configured to sequentially write signal data in the N-dimensional data stream into an N-dimensional storage space, and in a writing process of the signal data, perform loopback on each M-dimensional data set that has been written into the N-dimensional storage space based on a corresponding loopback cycle until the writing of the N-dimensional data stream is completed, where each M-dimensional data set includes an M-dimensional data set corresponding to each integer value in an interval where M is [1, N-1 ].
On the basis of the technical scheme of the embodiment, the device further comprises:
and the blocking module is used for carrying out blocking processing on the N-dimensional data stream to obtain a plurality of N-dimensional data stream blocks.
On the basis of the technical solution of the above embodiment, the data writing module 32 includes:
the first data writing unit is used for sequentially writing signal data in a current N-dimensional data stream block into an N-dimensional storage space for any N-dimensional data stream block, and in the writing process of the signal data, looping back each M-dimensional data set which is written into the N-dimensional storage space on the basis of a corresponding looping cycle until the writing of the N-dimensional data stream is completed, wherein each M-dimensional data set comprises an M-dimensional data set corresponding to each integer value in an interval of M being [1, N-1 ].
On the basis of the technical solution of the above embodiment, the data writing module 32 further includes:
an associated N-dimensional data stream block determination unit for determining an associated N-dimensional data stream block having a correlation with the current N-dimensional data stream block;
and the second data writing unit is used for synchronously writing the current N-dimensional data stream block and the associated N-dimensional data stream block into the N-dimensional storage space.
On the basis of the technical solution of the above embodiment, the associated N-dimensional data stream block determining unit is specifically configured to:
extracting any original signal data in the current N-dimensional data stream block, and determining coordinate information of associated signal data based on the coordinate information of the original signal data and the dimension number N of the data stream block, wherein the coordinate information of the associated signal data is at least one coordinate value and 2 in the coordinate information of the original signal dataNPerforming addition/subtraction operation to obtain;
and determining the N-dimensional data stream block in which the related signal data is positioned as a related N-dimensional data stream block.
On the basis of the technical solution of the above embodiment, the first data writing unit includes:
and the storage space adjusting subunit is used for sequentially writing the signal data into the current M-dimensional storage space according to the writing sequence of the signal data in the data stream in the writing process of the Nth-dimensional storage space for any N-dimensional data stream block, adjusting the position of each M-dimensional storage space when the current M-dimensional storage space finishes writing, and writing the next looped M-dimensional storage space, wherein the current M-dimensional storage space belongs to the Nth-dimensional storage space.
On the basis of the technical solution of the above embodiment, the storage space adjusting subunit is specifically configured to:
taking the unwritten M-dimensional storage space at the current tail position in the Nth-dimensional storage space as the next loopback M-dimensional storage space;
and adjusting the next loopback M-dimensional storage space to the head position in the Nth-dimensional storage space, and sequentially adjusting the positions of other M-dimensional storage spaces, wherein each M-dimensional storage space comprises a set of M-dimensional storage spaces corresponding to each integer value in an interval M of [1, N-1 ].
On the basis of the technical solution of the above embodiment, the first data writing unit further includes:
and the loopback control subunit is used for controlling the storage position of the M-1 dimensional data set to perform annular change according to the loopback period of the M dimensional data set, wherein the one dimensional data set comprises a first preset number of signal data, and the M dimensional data set is formed by a second preset number of M-1 dimensional data sets.
Optionally, the loopback period of the M-dimensional data set is a write-in period of the M-1-dimensional data set, where the loopback period of the one-dimensional data set is a write-in period of one signal data.
On the basis of the technical solution of the above embodiment, the N-dimensional data stream obtaining module 31 is specifically configured to:
acquiring signal data by a signal acquisition device array based on an N-1-dimensional arrangement mode;
and combining the signal data acquired by each signal acquisition device based on the arrangement mode and the acquisition time stamp of the signal acquisition device array to form an N-dimensional data stream.
Optionally, the N-dimensional data stream includes: an N-dimensional image data stream, an N-dimensional video data stream, an N-dimensional audio data stream, and an N-dimensional signal data stream.
Optionally, the N-dimensional storage space is an N-dimensional first-in first-out queue space.
On the basis of the technical scheme of the embodiment, the device further comprises:
and the data processing module is used for performing at least one of compression, coding and feature extraction on the signal data written in the N-dimensional storage space.
The multidimensional data stream processing device provided by the embodiment of the invention can execute the multidimensional data stream processing method provided by any embodiment of the invention, and has corresponding functional modules and beneficial effects of the execution method.
EXAMPLE five
Fig. 14 is a schematic structural diagram of an apparatus according to a fifth embodiment of the present invention, as shown in fig. 14, the apparatus includes a processor 70, a memory 71, an input device 72, and an output device 73; the number of processors 70 in the device may be one or more, and one processor 70 is taken as an example in fig. 14; the processor 70, the memory 71, the input device 72 and the output device 73 of the apparatus may be connected by a bus or other means, as exemplified by the bus connection in fig. 14.
The memory 71 is a computer-readable storage medium, and can be used for storing software programs, computer-executable programs, and modules, such as program instructions/modules (for example, the N-dimensional data stream acquisition module 31 and the data writing module 32) corresponding to the multidimensional data stream processing method in the embodiment of the present invention. The processor 70 executes various functional applications of the device and data processing, i.e. implements the above-mentioned multidimensional data stream processing method, by running software programs, instructions and modules stored in the memory 71.
The memory 71 may mainly include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application program required for at least one function; the storage data area may store data created according to the use of the terminal, and the like. Further, the memory 71 may include high speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other non-volatile solid state storage device. In some examples, the memory 71 may further include memory located remotely from the processor 70, which may be connected to the device over a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The input device 72 may be used to receive entered numeric or character information and to generate key signal inputs relating to user settings and function controls of the apparatus. The output device 73 may include a display device such as a display screen.
EXAMPLE six
An embodiment of the present invention also provides a storage medium containing computer-executable instructions, which when executed by a computer processor, perform a method for processing a multidimensional data stream.
Of course, the storage medium provided by the embodiment of the present invention contains computer-executable instructions, and the computer-executable instructions are not limited to the method operations described above, and may also perform related operations in the multidimensional data stream processing method provided by any embodiment of the present invention.
From the above description of the embodiments, it is obvious for those skilled in the art that the present invention can be implemented by software and necessary general hardware, and certainly, can also be implemented by hardware, but the former is a better embodiment in many cases. Based on such understanding, the technical solutions of the present invention may be embodied in the form of a software product, which can be stored in a computer-readable storage medium, such as a floppy disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a FLASH Memory (FLASH), a hard disk or an optical disk of a computer, and includes several instructions for enabling a computer device (which may be a personal computer, a server, or a network device) to execute the methods according to the embodiments of the present invention.
It should be noted that, in the embodiment of the multidimensional data stream processing apparatus, the included units and modules are only divided according to functional logic, but are not limited to the above division as long as the corresponding functions can be implemented; in addition, specific names of the functional units are only for convenience of distinguishing from each other, and are not used for limiting the protection scope of the present invention.
It is to be noted that the foregoing is only illustrative of the preferred embodiments of the present invention and the technical principles employed. It will be understood by those skilled in the art that the present invention is not limited to the particular embodiments described herein, but is capable of various obvious changes, rearrangements and substitutions as will now become apparent to those skilled in the art without departing from the scope of the invention. Therefore, although the present invention has been described in greater detail by the above embodiments, the present invention is not limited to the above embodiments, and may include other equivalent embodiments without departing from the spirit of the present invention, and the scope of the present invention is determined by the scope of the appended claims.