CN105338359A - Method and device for processing video data - Google Patents
Method and device for processing video data Download PDFInfo
- Publication number
- CN105338359A CN105338359A CN201510734237.7A CN201510734237A CN105338359A CN 105338359 A CN105338359 A CN 105338359A CN 201510734237 A CN201510734237 A CN 201510734237A CN 105338359 A CN105338359 A CN 105338359A
- Authority
- CN
- China
- Prior art keywords
- pixel
- binary number
- data
- axis
- coordinate
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 63
- 230000008569 process Effects 0.000 claims description 23
- 230000007704 transition Effects 0.000 claims description 6
- 230000006870 function Effects 0.000 description 5
- 230000000903 blocking effect Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- PCTMTFRHKVHKIS-BMFZQQSSSA-N (1s,3r,4e,6e,8e,10e,12e,14e,16e,18s,19r,20r,21s,25r,27r,30r,31r,33s,35r,37s,38r)-3-[(2r,3s,4s,5s,6r)-4-amino-3,5-dihydroxy-6-methyloxan-2-yl]oxy-19,25,27,30,31,33,35,37-octahydroxy-18,20,21-trimethyl-23-oxo-22,39-dioxabicyclo[33.3.1]nonatriaconta-4,6,8,10 Chemical compound C1C=C2C[C@@H](OS(O)(=O)=O)CC[C@]2(C)[C@@H]2[C@@H]1[C@@H]1CC[C@H]([C@H](C)CCCC(C)C)[C@@]1(C)CC2.O[C@H]1[C@@H](N)[C@H](O)[C@@H](C)O[C@H]1O[C@H]1/C=C/C=C/C=C/C=C/C=C/C=C/C=C/[C@H](C)[C@@H](O)[C@@H](C)[C@H](C)OC(=O)C[C@H](O)C[C@H](O)CC[C@@H](O)[C@H](O)C[C@H](O)C[C@](O)(C[C@H](O)[C@H]2C(O)=O)O[C@H]2C1 PCTMTFRHKVHKIS-BMFZQQSSSA-N 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 229920006395 saturated elastomer Polymers 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Abstract
The invention provides a method and a device for processing video data, wherein the method comprises the following steps: dividing N positions of the N-bit binary number into M data layers in advance, wherein the positions in each data layer are adjacent, P positions in each layer form P-bit binary numbers, and N is a positive integer M multiplied by P, and N, M, P is a positive integer; converting each pixel of video data to be processed into binary number, and acquiring the pixel binary number corresponding to each pixel; converting the pixel binary number corresponding to each pixel into a pixel binary number with N bits; dividing the numerical value of each position of each N-bit pixel binary number into the corresponding position of the corresponding data layer to obtain P-bit pixel binary number of each pixel in each data layer; threads are assigned to each data layer, and all P-bit pixel binary numbers in each data layer are processed in parallel by each thread. The invention provides a method and a device for processing video data, which can improve the efficiency of processing the video data.
Description
Technical field
The present invention relates to technical field of image processing, particularly a kind of method of processing video data and device.
Background technology
Along with the fast development of express network and computer software and hardware equipment, traditional low resolution, low video code flow video capture technology by high definition or ultra high-definition video capture technology eliminate.But improving constantly along with video quality, the volume of video file is also in continuous increase, and the hardware requirement of coding and decoding video is also improving constantly, but traditional encoding and decoding technique does not but obtain the breakthrough of essence all the time.
In prior art, a large amount of coding and decoding video work can only obtain support by the method promoting level of hardware, even if like this, the time that Video Rendering, editor, coding work will expend still is improving constantly.Trace it to its cause, the increase except data flow improves except the requirement to hardware handles level really, and more chief reason is because traditional encoding and decoding technique cannot break through the multiple threads bottleneck in units of frame of video all the time.When encoding and decoding being carried out to video in prior art, can be processed by multiple thread simultaneously, but, cooperation between different threads can only wait for the synchronous of other threads by the mode of blocking, this is saturated with regard to making the utilance of computer resource be difficult to, and makes the efficiency of processing video data lower.
Summary of the invention
In view of this, the invention provides a kind of method and device of processing video data, the efficiency of processing video data can be improved.
On the one hand, the invention provides a kind of method of processing video data, comprising: in advance N number of position of N bit is divided into M data Layer, wherein, the position in each data Layer is adjacent, and P position in every layer forms P bit, N=M × P, N, M, P are positive integer; Also comprise:
S1: each pixel transitions of pending video data is become binary number, obtains the pixel binary number that each pixel is corresponding;
S2: pixel binary number pixel binary number corresponding for each pixel being converted to N position;
S3: by the numerical division on each position of the pixel binary number of each N position in the correspondence position of the data Layer of correspondence, obtain the pixel binary number of the P position of each pixel in each data Layer;
S4: be each data allocation thread, by the pixel binary number of P position corresponding to all pixels in each data Layer of thread parallel process that each data Layer is corresponding.
Further, described S1 comprises:
Be loaded into described pending video data, decode the original video flow data of described pending video data, described original video stream data transaction is become binary number, obtain the pixel binary number that each pixel is corresponding.
Further, before described S1, also comprise:
Set up three-dimensional system of coordinate in advance, X-axis and Y-axis are the position coordinates axle of each pixel, and Z axis is data Layer reference axis, Z axis comprise M coordinate figure, wherein, and the coordinate figure of Z axis and data Layer one_to_one corresponding, the corresponding P bit of each coordinate points;
After described S3, also comprise: the coordinate determining the X-axis that each pixel is corresponding and Y-axis according to the position of each pixel;
According to the X-axis of each pixel and the coordinate of Y-axis, the pixel binary number of the P position of each pixel is carried out corresponding with coordinate points;
Described S4, comprise: using data Layer corresponding for each Z axis coordinate figure as this Z axis coordinate figure graph of a correspondence data structure, the pixel binary number of corresponding P position is carried in the coordinate points of each graphic data structure, for each graphic data structure distributes thread, by the thread parallel process graph of a correspondence data structure that each graphic data structure is corresponding.
Further, described S1 comprises:
Convert the color-values of each pixel of described pending video data to binary number, obtain the binary number of the color-values of each pixel, using the binary number of the color-values of each pixel as pixel binary number corresponding to each pixel.
Further, the described color-values by each pixel of described pending video data converts binary number to, obtains the binary number of the color-values of each pixel, comprising:
By the image data frame that described pending video data restoration is RGB standard;
Obtain the color-values of each pixel of the image data frame of described RGB standard, convert the color-values of each pixel of the image data frame of described RGB standard to binary number, obtain the binary number of the color-values of each pixel.
On the other hand, the invention provides a kind of device of processing video data, comprising:
First layer unit, for N number of position of N bit is divided into M data Layer, wherein, the position in each data Layer is adjacent, and P position in every layer forms P bit, and N=M × P, N, M, P are positive integer;
First converting unit, for each pixel transitions of pending video data is become binary number, obtains the pixel binary number that each pixel is corresponding;
Second converting unit, for being converted to the pixel binary number of N position by pixel binary number corresponding for each pixel;
Second delaminating units, the numerical division on each position of the pixel binary number by each N position, in the correspondence position of the data Layer of correspondence, obtains the pixel binary number of the P position of each pixel in each data Layer;
Processing unit, for being each data allocation thread, by the pixel binary number of P position corresponding to all pixels in each data Layer of thread parallel process that each data Layer is corresponding.
Further, described first converting unit, for being loaded into described pending video data, decodes the original video flow data of described pending video data, described original video stream data transaction is become binary number, obtains the pixel binary number that each pixel is corresponding.
Further, this device also comprises: described coordinate system unit, for setting up three-dimensional system of coordinate, X-axis and Y-axis are the position coordinates axle of each pixel, Z axis is data Layer reference axis, Z axis comprises M coordinate figure, wherein, the coordinate figure of Z axis and data Layer one_to_one corresponding, the corresponding P bit of each coordinate points;
Also comprise: corresponding unit, for determining the coordinate of the X-axis that each pixel is corresponding and Y-axis according to the position of each pixel, according to the X-axis of each pixel and the coordinate of Y-axis, the pixel binary number of the P position of each pixel is carried out corresponding with coordinate points;
Described processing unit, for using data Layer corresponding for each Z axis coordinate figure as this Z axis coordinate figure graph of a correspondence data structure, the pixel binary number of corresponding P position is carried in the coordinate points of each graphic data structure, for each graphic data structure distributes thread, by the thread parallel process graph of a correspondence data structure that each graphic data structure is corresponding.
Further, described first converting unit, color-values for each pixel by described pending video data converts binary number to, obtains the binary number of the color-values of each pixel, using the binary number of the color-values of each pixel as pixel binary number corresponding to each pixel.
Further, described first converting unit, converts binary number in the described color-values by each pixel of described pending video data of execution, when obtaining the binary number of the color-values of each pixel, specifically performs:
By the image data frame that described pending video data restoration is RGB standard, obtain the color-values of each pixel of the image data frame of described RGB standard, convert the color-values of each pixel of the image data frame of described RGB standard to binary number, obtain the binary number of the color-values of each pixel.
The method of a kind of processing video data provided by the invention, pending video data is converted to the data of binary number, pixel binary number corresponding for each pixel is divided into the pixel binary number of M P position, parallel processing is carried out to the pixel binary number of the P position in every layer, the processing procedure of each thread is independent of each other, there is not the restriction of mutually blocking, improve the efficiency of processing video data.
Accompanying drawing explanation
In order to be illustrated more clearly in the embodiment of the present invention or technical scheme of the prior art, be briefly described to the accompanying drawing used required in embodiment or description of the prior art below, apparently, accompanying drawing in the following describes is some embodiments of the present invention, for those of ordinary skill in the art, under the prerequisite not paying creative work, other accompanying drawing can also be obtained according to these accompanying drawings.
Fig. 1 is the flow chart of the method for a kind of processing video data that one embodiment of the invention provides;
Fig. 2 is the flow chart of the method for the another kind of processing video data that one embodiment of the invention provides;
Fig. 3 is the schematic diagram of the device of a kind of processing video data that one embodiment of the invention provides;
Fig. 4 is the schematic diagram of the device of the another kind of processing video data that one embodiment of the invention provides.
Embodiment
For making the object of the embodiment of the present invention, technical scheme and advantage clearly; below in conjunction with the accompanying drawing in the embodiment of the present invention; technical scheme in the embodiment of the present invention is clearly and completely described; obviously; described embodiment is the present invention's part embodiment, instead of whole embodiments, based on the embodiment in the present invention; the every other embodiment that those of ordinary skill in the art obtain under the prerequisite not making creative work, all belongs to the scope of protection of the invention.
As shown in Figure 1, embodiments provide a kind of method of processing video data, the method can comprise the following steps:
S0: in advance N number of position of N bit is divided into M data Layer, wherein, the position in each data Layer is adjacent, and P position in every layer forms P bit, and N=M × P, N, M, P are positive integer;
S1: each pixel transitions of pending video data is become binary number, obtains the pixel binary number that each pixel is corresponding;
S2: pixel binary number pixel binary number corresponding for each pixel being converted to N position;
S3: by the numerical division on each position of the pixel binary number of each N position in the correspondence position of the data Layer of correspondence, obtain the pixel binary number of the P position of each pixel in each data Layer;
S4: be each data allocation thread, by the pixel binary number of P position corresponding to all pixels in each data Layer of thread parallel process that each data Layer is corresponding.
The method of a kind of processing video data provided by the embodiment of the present invention, pending video data is converted to the data of binary number, pixel binary number corresponding for each pixel is divided into the pixel binary number of M P position, parallel processing is carried out to the pixel binary number of the P position in every layer, the processing procedure of each thread is independent of each other, there is not the restriction of mutually blocking, improve the efficiency of processing video data.
The relative position of the bits per inch in each data Layer and the relative position of original N bit constant, such as: N bit is ABCDEFGH, after being divided into 2 data Layers, be ABCD and EFGH respectively.
Above-mentioned N, M, P are preset value, and N, M, P can determine according to the hardware device of processing video data.For example, hardware device can be used for 4 roads or 8 roads and processes simultaneously, then M can be set to 4 or 8.
For the embodiment of the present invention, to suppose have N to be 8, M be 2, P is 4, and pixel binary number corresponding to pixel A is 10100110, and pixel binary number corresponding to pixel B is 1010101, and because N is 8, then the pixel binary number of 8 that pixel B is corresponding is 01010101.First data Layer is front tetrad position, second data Layer is rear tetrad position, 4 pixel binary numbers that then in first data Layer, pixel A is corresponding are 1010,4 pixel binary numbers corresponding to pixel B are 0101,4 pixel binary numbers that in second data Layer, pixel A is corresponding are 0110, and 4 pixel binary numbers corresponding to pixel B are 0101.
In a kind of possible implementation, described S1 comprises:
Be loaded into described pending video data, decode the original video flow data of described pending video data, described original video stream data transaction is become binary number, obtain the pixel binary number that each pixel is corresponding.
For the ease of process, the pixel binary number of the P position of each pixel can be converted to the coordinate points in coordinate system, in a kind of possible implementation, before described S1, also comprise:
Set up three-dimensional system of coordinate in advance, X-axis and Y-axis are the position coordinates axle of each pixel, and Z axis is data Layer reference axis, Z axis comprise M coordinate figure, wherein, and the coordinate figure of Z axis and data Layer one_to_one corresponding, the corresponding P bit of each coordinate points;
After described S3, also comprise: the coordinate determining the X-axis that each pixel is corresponding and Y-axis according to the position of each pixel;
According to the X-axis of each pixel and the coordinate of Y-axis, the pixel binary number of the P position of each pixel is carried out corresponding with coordinate points;
Described S4, comprise: using data Layer corresponding for each Z axis coordinate figure as this Z axis coordinate figure graph of a correspondence data structure, the pixel binary number of corresponding P position is carried in the coordinate points of each graphic data structure, for each graphic data structure distributes thread, by the thread parallel process graph of a correspondence data structure that each graphic data structure is corresponding.
In this implementation, the identical all coordinate points of Z axis coordinate in same data Layer, namely in same graphic data structure, for each pixel, corresponding M the coordinate points of this pixel, the X-axis of this M coordinate points is all identical with Y-axis coordinate, only has the coordinate of Z axis different.Realization the pixel binary number of the P position of each pixel and coordinate points carried out to time corresponding by the position of pixel corresponding to the pixel binary number of P position, the coordinate of X-axis and Y-axis can be determined, according to the data Layer at the pixel binary number place of P position, the coordinate of Z axis can be determined, and then the coordinate points that the pixel binary number of P position of each pixel is corresponding can be determined.
Can be processed as independently frame by each graphic data structure, in each graphic data structure, the figure place of data is than few before segmentation, and therefore when process, complexity also can reduce, and the speed of process can be faster.
In a kind of possible implementation, described S1 comprises:
Convert the color-values of each pixel of described pending video data to binary number, obtain the binary number of the color-values of each pixel, using the binary number of the color-values of each pixel as pixel binary number corresponding to each pixel.
In a kind of possible implementation, the described color-values by each pixel of described pending video data converts binary number to, obtains the binary number of the color-values of each pixel, comprising:
Obtaining the essential information of described pending video data, is the image data frame of RGB standard by described pending video data restoration according to described essential information;
Obtain the color-values of each pixel of the image data frame of described RGB standard, convert the color-values of each pixel of the image data frame of described RGB standard to binary number, obtain the binary number of the color-values of each pixel.
In this implementation, pixel binary number corresponding to each pixel is the binary number of the color-values of each pixel.Such as: the color-values of pixel C is 03H, then the pixel binary number that form A is corresponding is 0011.Standard due to pending video data may not be RGB standard, directly cannot obtain the color-values of pixel, therefore needs to convert RGB standard to.Such as: the data data transaction of YUV standard being become RGB standard.
When converting the image data frame of RGB standard to, the essential information of pending video data may be needed, analyzing the essential information of pending video data, judge how to generate corresponding image data frame according to essential information.Wherein, essential information comprises: resolution, standard, coded format etc.
For making the object, technical solutions and advantages of the present invention clearly, below in conjunction with drawings and the specific embodiments, the present invention is described in further detail.
In this embodiment, two pixels are had to be that to be set to 2, N be 8, P is 4 for pixel 1 and pixel 2, M respectively in pending video data.In this embodiment, treat processing video data to encode.
As shown in Figure 2, embodiments provide a kind of method of processing video data, the method can comprise the following steps:
Step 201: in advance 8 of 8 bits positions are divided into 2 data Layers, respectively: the first data Layer and the second data Layer, wherein, the position in each data Layer is adjacent, and 4 positions in every layer form 4 bits.
Step 202: set up three-dimensional system of coordinate in advance, X-axis and Y-axis are the position coordinates axle of each pixel, Z axis is data Layer reference axis, Z axis comprises 2 coordinate figures, is Z1 respectively, Z2, wherein, the coordinate figure of Z axis and data Layer one_to_one corresponding, corresponding first data Layer of Z1, corresponding second data Layer of Z2, the corresponding P bit of each coordinate points.
Particularly, be 4 bits according to the binary number in each data Layer, then the unit length of Z axis can be set to 4.
Step 203: the image data frame by pending video data restoration being RGB standard, obtain the color-values of each pixel of the image data frame of RGB standard, convert the color-values of each pixel of the image data frame of RGB standard to binary number, obtain the binary number of the color-values of each pixel, using the binary number of the color-values of each pixel as pixel binary number corresponding to each pixel, the pixel binary number obtaining pixel 1 is 10110101, and the pixel binary number of pixel 2 is 1011001.
Particularly, MDV_VedioInfo () can be called, obtain the essential information of pending video data, these essential information resolution, standard, coded format etc.Call function MDV_VedioParallelAnalyze (), analyze the essential information of pending video data, judge how to generate corresponding image data frame according to the essential information such as color format, resolution, as: the need of being RGB by YUV system conversion.Call function MDV_VedioToLayer (), decodes original video flow data, and is reduced to the image data frame of RGB standard.
Step 204: pixel binary number pixel binary number corresponding for each pixel being converted to 8, the pixel binary number obtaining pixel 2 is 01011001.
Step 205: by the numerical division on each position of the pixel binary number of each 8 in the correspondence position of the data Layer of correspondence, obtains the pixel binary number H of 4 of pixel 1 in the first data Layer
11be 1011, the pixel binary number H of 4 of pixel 1 in the second data Layer
12be 0101, the pixel binary number H of 4 of pixel 2 in the first data Layer
21be 0101, the pixel binary number H of 4 of pixel 2 in the second data Layer
22be 1001.
Step 206: the coordinate determining the X-axis that each pixel is corresponding and Y-axis according to the position of each pixel.
For example, the X-axis of acquisition pixel 1 correspondence and the coordinate of Y-axis are X1, Y1 respectively.The X-axis of acquisition pixel 2 correspondence and the coordinate of Y-axis are X2, Y2 respectively.
Step 207: according to the X-axis of each pixel and the coordinate of Y-axis, carries out corresponding by the pixel binary number of 4 of each pixel with coordinate points, obtains H
11the coordinate of the first corresponding coordinate points is (X1, Y1, Z1), H
12the coordinate of the second corresponding coordinate points is (X1, Y1, Z2), H
21the coordinate of corresponding three-dimensional point is (X2, Y2, Z1), H
22the coordinate of corresponding 4-coordinate point is (X2, Y2, Z2).
Step 208: using the first corresponding for Z1 data Layer as the first graphic data structure corresponding to Z1, using the second corresponding for Z2 data Layer as second graph data structure corresponding to Z2.
Step 209: difference H in first coordinate points and three-dimensional point of the first graphic data structure
11and H
21.
Step 210: be that the first graphic data structure and second graph data structure distribute the first thread and the second thread, parallel running first thread and the second thread are encoded to the first graphic data structure and second graph data structure respectively.
Wherein, the data obtained after each thread output encoder, then, the Data Integration that all threads can be exported is a video file.
By the method that the embodiment of the present invention provides, by 32 long binary data, 4 group of 8 bit binary data can be divided into, at this moment just can meet the requirement of 4 road parallel encodings.In like manner, the binary data of 8 groups 4 can also be divided into, at this moment just can be met the requirement of 8 road parallel encodings.
In addition, in the method that the embodiment of the present invention provides, all right: call function MDV_VedioToMultiDimension (), automatically distribute the length of the color-values in each data Layer, to set the number of threads of multidiameter delayization coding.All right, call function MDV_InitVedioParallelEncoder () carries out initialization.Call function MDV_LoadVedioFile (), is loaded into video to be encoded.
As shown in Figure 3, Figure 4, a kind of device of processing video data is embodiments provided.Device embodiment can pass through software simulating, also can be realized by the mode of hardware or software and hardware combining.Say from hardware view; as shown in Figure 3; a kind of hardware structure diagram of the device place equipment of a kind of processing video data provided for the embodiment of the present invention; except the processor shown in Fig. 3, internal memory, network interface and nonvolatile memory; in embodiment, the equipment at device place can also comprise other hardware usually, as the forwarding chip etc. of responsible process message.For software simulating, as shown in Figure 4, as the device on a logical meaning, be by the CPU of its place equipment, computer program instructions corresponding in nonvolatile memory is read operation in internal memory to be formed.The device of a kind of processing video data that the present embodiment provides, comprising:
First layer unit 401, for N number of position of N bit is divided into M data Layer, wherein, the position in each data Layer is adjacent, and P position in every layer forms P bit, and N=M × P, N, M, P are positive integer;
First converting unit 402, for each pixel transitions of pending video data is become binary number, obtains the pixel binary number that each pixel is corresponding;
Second converting unit 403, for being converted to the pixel binary number of N position by pixel binary number corresponding for each pixel;
Second delaminating units 404, the numerical division on each position of the pixel binary number by each N position, in the correspondence position of the data Layer of correspondence, obtains the pixel binary number of the P position of each pixel in each data Layer;
Processing unit 405, for being each data allocation thread, by the pixel binary number of P position corresponding to all pixels in each data Layer of thread parallel process that each data Layer is corresponding.
In a kind of possible implementation, described first converting unit 402, for being loaded into described pending video data, decodes the original video flow data of described pending video data, described original video stream data transaction is become binary number, obtains the pixel binary number that each pixel is corresponding.
In a kind of possible implementation, this device also comprises: described coordinate system unit, for setting up three-dimensional system of coordinate, X-axis and Y-axis are the position coordinates axle of each pixel, Z axis is data Layer reference axis, Z axis comprises M coordinate figure, wherein, the coordinate figure of Z axis and data Layer one_to_one corresponding, the corresponding P bit of each coordinate points;
Also comprise: corresponding unit, for determining the coordinate of the X-axis that each pixel is corresponding and Y-axis according to the position of each pixel, according to the X-axis of each pixel and the coordinate of Y-axis, the pixel binary number of the P position of each pixel is carried out corresponding with coordinate points;
Described processing unit 405, for using data Layer corresponding for each Z axis coordinate figure as this Z axis coordinate figure graph of a correspondence data structure, the pixel binary number of corresponding P position is carried in the coordinate points of each graphic data structure, for each graphic data structure distributes thread, by the thread parallel process graph of a correspondence data structure that each graphic data structure is corresponding.
In a kind of possible implementation, described first converting unit 402, color-values for each pixel by described pending video data converts binary number to, obtain the binary number of the color-values of each pixel, using the binary number of the color-values of each pixel as pixel binary number corresponding to each pixel.
In a kind of possible implementation, described first converting unit 402, converts binary number in the described color-values by each pixel of described pending video data of execution, when obtaining the binary number of the color-values of each pixel, specifically performs:
By the image data frame that described pending video data restoration is RGB standard, obtain the color-values of each pixel of the image data frame of described RGB standard, convert the color-values of each pixel of the image data frame of described RGB standard to binary number, obtain the binary number of the color-values of each pixel.
The content such as information interaction, implementation between each unit in said apparatus, due to the inventive method embodiment based on same design, particular content can see in the inventive method embodiment describe, repeat no more herein.
The process to video data in above-described embodiment can be coding, decoding etc. to video data.
The method of a kind of processing video data that the embodiment of the present invention provides and device, have following beneficial effect:
The method of a kind of processing video data 1, provided by the embodiment of the present invention and device, pending video data is converted to the data of binary number, pixel binary number corresponding for each pixel is divided into the pixel binary number of M P position, parallel processing is carried out to the pixel binary number of the P position in every layer, the processing procedure of each thread is independent of each other, there is not the restriction of mutually blocking, improve the efficiency of processing video data.
The method of a kind of processing video data 2, provided by the embodiment of the present invention and device, each graphic data structure can process as independently frame, in each graphic data structure, the figure place of data is than few before segmentation, and therefore when processing, complexity also can reduce, and the speed of process can be faster.
The method of a kind of processing video data 3, provided by the embodiment of the present invention and device, processing video data is divided in different data Layers, achieve and pending video data is distributed in different dimensions, separate between dimension, to each dimension parallel processing, improve the efficiency of Video processing, significantly decrease the Video processing time.
It should be noted that, in this article, the relational terms of such as first and second and so on is only used for an entity or operation to separate with another entity or operating space, and not necessarily requires or imply the relation that there is any this reality between these entities or operation or sequentially.And, term " comprises ", " comprising " or its any other variant are intended to contain comprising of nonexcludability, thus make to comprise the process of a series of key element, method, article or equipment and not only comprise those key elements, but also comprise other key elements clearly do not listed, or also comprise by the intrinsic key element of this process, method, article or equipment.When not more restrictions, the key element " being comprised a 〃 〃 〃 〃 〃 〃 " limited by statement, and be not precluded within process, method, article or the equipment comprising described key element and also there is other identical factor.
One of ordinary skill in the art will appreciate that: all or part of step realizing said method embodiment can have been come by the hardware that program command is relevant, aforesaid program can be stored in the storage medium of embodied on computer readable, this program, when performing, performs the step comprising said method embodiment; And aforesaid storage medium comprises: ROM, RAM, magnetic disc or CD etc. various can be program code stored medium in.
Finally it should be noted that: the foregoing is only preferred embodiment of the present invention, only for illustration of technical scheme of the present invention, be not intended to limit protection scope of the present invention.All any amendments done within the spirit and principles in the present invention, equivalent replacement, improvement etc., be all included in protection scope of the present invention.
Claims (10)
1. a method for processing video data, is characterized in that, comprising: in advance N number of position of N bit is divided into M data Layer, wherein, the position in each data Layer is adjacent, and P position in every layer forms P bit, N=M × P, N, M, P are positive integer; Also comprise:
S1: each pixel transitions of pending video data is become binary number, obtains the pixel binary number that each pixel is corresponding;
S2: pixel binary number pixel binary number corresponding for each pixel being converted to N position;
S3: by the numerical division on each position of the pixel binary number of each N position in the correspondence position of the data Layer of correspondence, obtain the pixel binary number of the P position of each pixel in each data Layer;
S4: be each data allocation thread, by the pixel binary number of P position corresponding to all pixels in each data Layer of thread parallel process that each data Layer is corresponding.
2. method according to claim 1, is characterized in that, described S1 comprises:
Be loaded into described pending video data, decode the original video flow data of described pending video data, described original video stream data transaction is become binary number, obtain the pixel binary number that each pixel is corresponding.
3. method according to claim 1, is characterized in that, before described S1, also comprises:
Set up three-dimensional system of coordinate in advance, X-axis and Y-axis are the position coordinates axle of each pixel, and Z axis is data Layer reference axis, Z axis comprise M coordinate figure, wherein, and the coordinate figure of Z axis and data Layer one_to_one corresponding, the corresponding P bit of each coordinate points;
After described S3, also comprise: the coordinate determining the X-axis that each pixel is corresponding and Y-axis according to the position of each pixel;
According to the X-axis of each pixel and the coordinate of Y-axis, the pixel binary number of the P position of each pixel is carried out corresponding with coordinate points;
Described S4, comprise: using data Layer corresponding for each Z axis coordinate figure as this Z axis coordinate figure graph of a correspondence data structure, the pixel binary number of corresponding P position is carried in the coordinate points of each graphic data structure, for each graphic data structure distributes thread, by the thread parallel process graph of a correspondence data structure that each graphic data structure is corresponding.
4. method according to claim 1, is characterized in that, described S1 comprises:
Convert the color-values of each pixel of described pending video data to binary number, obtain the binary number of the color-values of each pixel, using the binary number of the color-values of each pixel as pixel binary number corresponding to each pixel.
5. method according to claim 4, is characterized in that, the described color-values by each pixel of described pending video data converts binary number to, obtains the binary number of the color-values of each pixel, comprising:
By the image data frame that described pending video data restoration is RGB standard;
Obtain the color-values of each pixel of the image data frame of described RGB standard, convert the color-values of each pixel of the image data frame of described RGB standard to binary number, obtain the binary number of the color-values of each pixel.
6. a device for processing video data, is characterized in that, comprising:
First layer unit, for N number of position of N bit is divided into M data Layer, wherein, the position in each data Layer is adjacent, and P position in every layer forms P bit, and N=M × P, N, M, P are positive integer;
First converting unit, for each pixel transitions of pending video data is become binary number, obtains the pixel binary number that each pixel is corresponding;
Second converting unit, for being converted to the pixel binary number of N position by pixel binary number corresponding for each pixel;
Second delaminating units, the numerical division on each position of the pixel binary number by each N position, in the correspondence position of the data Layer of correspondence, obtains the pixel binary number of the P position of each pixel in each data Layer;
Processing unit, for being each data allocation thread, by the pixel binary number of P position corresponding to all pixels in each data Layer of thread parallel process that each data Layer is corresponding.
7. device according to claim 6, it is characterized in that, described first converting unit, for being loaded into described pending video data, decode the original video flow data of described pending video data, described original video stream data transaction is become binary number, obtains the pixel binary number that each pixel is corresponding.
8. device according to claim 6, it is characterized in that, also comprise: described coordinate system unit, for setting up three-dimensional system of coordinate, X-axis and Y-axis are the position coordinates axle of each pixel, and Z axis is data Layer reference axis, Z axis comprises M coordinate figure, wherein, the coordinate figure of Z axis and data Layer one_to_one corresponding, the corresponding P bit of each coordinate points;
Also comprise: corresponding unit, for determining the coordinate of the X-axis that each pixel is corresponding and Y-axis according to the position of each pixel, according to the X-axis of each pixel and the coordinate of Y-axis, the pixel binary number of the P position of each pixel is carried out corresponding with coordinate points;
Described processing unit, for using data Layer corresponding for each Z axis coordinate figure as this Z axis coordinate figure graph of a correspondence data structure, the pixel binary number of corresponding P position is carried in the coordinate points of each graphic data structure, for each graphic data structure distributes thread, by the thread parallel process graph of a correspondence data structure that each graphic data structure is corresponding.
9. device according to claim 6, it is characterized in that, described first converting unit, color-values for each pixel by described pending video data converts binary number to, obtain the binary number of the color-values of each pixel, using the binary number of the color-values of each pixel as pixel binary number corresponding to each pixel.
10. device according to claim 9, it is characterized in that, described first converting unit, convert binary number in the described color-values by each pixel of described pending video data of execution, when obtaining the binary number of the color-values of each pixel, specifically perform:
By the image data frame that described pending video data restoration is RGB standard, obtain the color-values of each pixel of the image data frame of described RGB standard, convert the color-values of each pixel of the image data frame of described RGB standard to binary number, obtain the binary number of the color-values of each pixel.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510734237.7A CN105338359B (en) | 2015-11-02 | 2015-11-02 | A kind of method and device of processing video data |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510734237.7A CN105338359B (en) | 2015-11-02 | 2015-11-02 | A kind of method and device of processing video data |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105338359A true CN105338359A (en) | 2016-02-17 |
CN105338359B CN105338359B (en) | 2018-10-16 |
Family
ID=55288591
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510734237.7A Active CN105338359B (en) | 2015-11-02 | 2015-11-02 | A kind of method and device of processing video data |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105338359B (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101064009A (en) * | 2006-04-28 | 2007-10-31 | 夏普株式会社 | Image processing apparatus, image forming apparatus, image reading apparatus and image processing method |
CN101827191A (en) * | 2009-03-03 | 2010-09-08 | 富士施乐株式会社 | Image processing apparatus and image processing method |
US20110255791A1 (en) * | 2010-04-15 | 2011-10-20 | Microsoft Corporation | Accelerating Bitmap Remoting By Identifying And Extracting Patterns From Source Bitmaps Through Parallel Processing Techniques |
-
2015
- 2015-11-02 CN CN201510734237.7A patent/CN105338359B/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101064009A (en) * | 2006-04-28 | 2007-10-31 | 夏普株式会社 | Image processing apparatus, image forming apparatus, image reading apparatus and image processing method |
CN101827191A (en) * | 2009-03-03 | 2010-09-08 | 富士施乐株式会社 | Image processing apparatus and image processing method |
US20110255791A1 (en) * | 2010-04-15 | 2011-10-20 | Microsoft Corporation | Accelerating Bitmap Remoting By Identifying And Extracting Patterns From Source Bitmaps Through Parallel Processing Techniques |
Also Published As
Publication number | Publication date |
---|---|
CN105338359B (en) | 2018-10-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10110936B2 (en) | Web-based live broadcast | |
CN105163127A (en) | Video analysis method and device | |
US10511858B2 (en) | Bit packing for delta color compression | |
CN104272740A (en) | Color buffer and depth buffer compression | |
CN103067715A (en) | Encoding and decoding methods and encoding and decoding device of range image | |
US8441491B2 (en) | Method for performing undo and redo operations on a graphics processing unit | |
US20180184096A1 (en) | Method and apparatus for encoding and decoding lists of pixels | |
CN105187845A (en) | Video data decoding device and method | |
US20240119641A1 (en) | In-tree geometry quantization of point clouds | |
CN105516540A (en) | Compression method and device of binary image | |
CN104424498A (en) | Method and device for transforming two-dimensional codes at high speed | |
CN101626504B (en) | Method for high speed JPEG decoding | |
CN111726615B (en) | Point cloud coding and decoding method and coder-decoder | |
EP3791593A2 (en) | Method and apparatus for encoding and decoding volumetric video data | |
US11263786B2 (en) | Decoding data arrays | |
CN1151679C (en) | Method for compressing image data | |
CN117014618A (en) | Image compression-based blocking method and system and electronic equipment | |
CN101436306A (en) | Method, apparatus and video display card for implementing image special effect | |
CN105338359A (en) | Method and device for processing video data | |
US11080928B2 (en) | Methods and apparatus for visibility stream management | |
CN107358571A (en) | Watermark embedding method and device | |
CN107172425B (en) | Thumbnail generation method and device and terminal equipment | |
CN116883691B (en) | High-frame-rate multipath target detection method for edge equipment | |
AU2013248237A1 (en) | Image scaling process and apparatus | |
CN112839226B (en) | Image coding and decoding method, related device and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20180824 Address after: 215100 818 Wusong Road, Wusong River Industrial Park, Wuzhong development area, Suzhou, Jiangsu Applicant after: Tide Financial Information Technology Co Ltd Address before: 250100 Ji'nan hi tech Zone No. 2877, Shandong Province Applicant before: Inspur Group Co., Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |