CN100508613C - Motion image coding apparatus, and control method and program of the apparatus - Google Patents

Motion image coding apparatus, and control method and program of the apparatus Download PDF

Info

Publication number
CN100508613C
CN100508613C CNB2004800382636A CN200480038263A CN100508613C CN 100508613 C CN100508613 C CN 100508613C CN B2004800382636 A CNB2004800382636 A CN B2004800382636A CN 200480038263 A CN200480038263 A CN 200480038263A CN 100508613 C CN100508613 C CN 100508613C
Authority
CN
China
Prior art keywords
frame data
encoded
motion
encoding apparatus
picture encoding
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.)
Expired - Fee Related
Application number
CNB2004800382636A
Other languages
Chinese (zh)
Other versions
CN1898964A (en
Inventor
前田充
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Publication of CN1898964A publication Critical patent/CN1898964A/en
Application granted granted Critical
Publication of CN100508613C publication Critical patent/CN100508613C/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/156Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/527Global motion vector estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/57Motion estimation characterised by a search window with variable size or shape
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Abstract

A motion detector detects the motion of an imaging device. On the basis of the detected motion information, a selector selects, from a plurality of frame memories for storing a plurality of frame data, a frame memory for storing reference frame data to be referred to when frame data to be coded is coded. A motion estimator estimates a motion vector on the basis of the reference frame data stored in the selected frame memory and the frame data to be coded. The frame data to be coded is coded by using the estimated motion vector, and the coded data is output.

Description

The control method of motion picture encoding apparatus and this equipment
Technical field
The present invention relates to a kind ofly frame data that will be encoded be carried out the encode control method and the program of motion picture encoding apparatus and this equipment of this moving image of motion compensation by a plurality of frame data in the reference motion image.
Background technology
Recently, H.264 coding method just receives publicity as a kind of new dynamic image encoding method.This coding method is ITU-T and ISO collaborative development.This new standard the summer in 2003 by standardization.
Different with the MPEG-4 coding method with traditional MPEG-1, MPEG-2, the feature of this new coding method is to use 4 * 4 integer transforms, and prepares a plurality of infra-frame predictions (intra predictions).And, use filter (intra-loop filter) in the ring, and carry out motion compensation by seven seed block (sub-block).In addition, the pixel precision of this motion compensation is identical with the MPEG-4 coding method,, can carry out motion compensation by 1/4 pixel precision that is.In addition, general variable-length (variable-length) coding or front and back self adaptation (context adaptive) variable length code are used as entropy coding.
Prior feature is as follows.That is, MPEG-1, MPEG-2 and MPEG-4 coding method are by using before the frame that will be encoded and two reference pictures (frame) afterwards carry out motion compensation.Yet this new coding method can be used the more reference picture of big figure.The num_ref_frames sign indicating number that is included in the head of bit stream (bit stream) can adopt and is 16 value to the maximum.
More particularly, in motion compensation, before the frame that will be encoded and 16 frames afterwards can be used as the reference picture reference.The macro block (macroblock) that will be encoded is carried out following processing.As mentioned above,, seven seed block are calculated predicated error, and select the macro block of predicated error minimum with 1/4 pixel precision about having the image of maximum 16 frames.This has improved code efficiency greatly.
The configuration of the conventional motion image encoding apparatus that uses H.264 coding method is described with reference to Figure 13.List of references 1 (" Overview of the is Video CodingStandard H.264/AVC " (IEEE TRANSACTIONS ON CIRCUITS ANDSYSTEMS FOR VIDEO TECHNOLOGY, JULY 2003)) or list of references 2 (also this configuration is illustrated in " Now Starts H.264; Outrivaling Slow-GoingMPEG-4 " (Nikkei Electronics 2003.7.7, pp.65-74)).
Figure 13 is the block diagram that the configuration of this conventional motion image encoding apparatus is shown.
By macro block ground view data is input to this motion picture encoding apparatus.Whether 1000 pairs of selectors carry out intraframe coding switches.If the execution intraframe coding then is input to intra predictor generator 1001 with this view data.Intra predictor generator 1001 is predicted with nine patterns, and is calculated predicated error.
If the coding of carrying out is not intraframe coding, then this view data is input to difference unit 1002, calculate difference with the image of being predicted as predicated error at difference unit 1002.
Transformer/quantizer 1003 is transformed to the integer of 4 * 4 block of pixels with the predicated error of being calculated, and quantizes the coefficient that obtained.As the variable length code of quantization parameter through carrying out of this quantized result, and be output to output unit 1014 by entropy coder 1004.Simultaneously, quantized result is input to quantizer/inverse transformer 1005 recovering this predicated error, and by the image addition of adder 1006 with this predicated error and prediction.The result suitably is stored in the frame memory 1007 to 1010 as decoded picture.
Exercise estimator 1011 will be stored in the decoded picture in the frame memory 1007 to 1010 and the image imported compares, and with 1/4 pixel precision to each sub-piece calculating kinematical vector.These motion vectors and selected frame number are input to motion compensator 1012, and load reference picture from the frame memory of correspondence.Selection has the reference picture of minimum predicated error and this reference picture is outputed to difference unit 1002 as predicted picture.
This motion vector and selected frame number also are imported into motion encoder 1013 and are encoded, and the data after will encoding output to output unit 1014.Output unit 1014 carries out shaping according to the data of form after to this coding, and the data behind the output Shaping.
Regrettably, following problem is arranged as the coding method of a plurality of frames of reference of above-mentioned H.264 coding method: the searching motion vector in order to carry out motion compensation, and along with the reference picture number increases, it is very big that amount of calculation becomes.
In addition, special when using H.264 coding method in image picking-up apparatus such as video camera, whenever about video camera or fluctuate, entire image just has very big change.Therefore, although reduce with reference to the data frequency of the two field picture that separates in time, these data must be held.
Summary of the invention
The present invention considers that above-mentioned situation makes, and its objective is that providing a kind of can efficiently utilize the memory that is used for moving image encoding and can carry out efficiently the motion picture encoding apparatus of motion-vector search and the control method and the program of this equipment.
According to the present invention, by being provided, a kind of motion picture encoding apparatus realizes above-mentioned purpose, it carries out motion compensation this moving image of encoding by a plurality of frame data in the reference motion image to frame data that will be encoded, this motion picture encoding apparatus comprises: detection part is used to detect the motion of camera head; A plurality of memory units are used to store described a plurality of frame data; Alternative pack is used for based on by the detected movable information of described detection part, selects to be used to from described a plurality of memory units to store when the memory unit to the reference frame data of time institute's reference that the frame data that are encoded are encoded; Estimation section is used for coming estimated motion vector based on the reference frame data that is stored in the described memory unit of being selected by described alternative pack with the frame data that are encoded; Addressable part is used for by using by described estimation section estimated movement vector the frame data that are encoded are encoded; And output block, be used to export coded data through described addressable part coding.
In a preferred embodiment, described detection part detects the motion of described camera head based on the moving image of being taken by described camera head.
In a preferred embodiment, described alternative pack comprises control assembly, and this control assembly is used for based on controlling writing/reading and powering described a plurality of memory units by the detected movable information of described detection part.
In a preferred embodiment, also comprise parts are set, be used to be provided with the image taking pattern of described camera head, wherein, described alternative pack comprises control assembly, and this control assembly is used for based on controlling writing/reading and powering described a plurality of memory units by the described image taking pattern that the parts setting is set.
In a preferred embodiment, described control assembly stops the memory unit of not selected by described alternative pack is powered.
In a preferred embodiment, this equipment also comprises the hunting zone control assembly, is used for coming based on the moving image control that is detected by described detection part the motion vector search ranges of described estimation section.
According to the present invention, by being provided, a kind of motion picture encoding apparatus realizes above-mentioned purpose, it carries out motion compensation this moving image of encoding by a plurality of frame data in the reference motion image to frame data that will be encoded, this motion picture encoding apparatus comprises: parts are set, are used to be provided with the image taking pattern of camera head; A plurality of memory units are used to store described a plurality of frame data; Alternative pack is used for based on by described the image taking pattern that parts are provided with being set, and selects to be used to from described a plurality of memory units to store when the memory unit to the reference frame data of time institute's reference that the frame data that are encoded are encoded; Estimation section is used for coming estimated motion vector based on the reference frame data that is stored in the described memory unit of being selected by described alternative pack with the frame data that are encoded; Addressable part is used for by using by described estimation section estimated movement vector the frame data that are encoded are encoded; And output block, be used to export coded data through described addressable part coding.
In a preferred embodiment, described alternative pack comprises control assembly, and this control assembly is used to control writing/reading and powering described a plurality of memory units.
In a preferred embodiment, described control assembly stops the memory unit of not selected by described alternative pack is powered.
In a preferred embodiment, described detection part detects the motion of described camera head based on the moving image of being taken by described camera head.
According to the present invention, by being provided, a kind of motion picture encoding apparatus realizes above-mentioned purpose, it carries out motion compensation this moving image of encoding by a plurality of frame data in the reference motion image to frame data that will be encoded, this motion picture encoding apparatus comprises: input block is used to import by carrying out the movable information of the camera head that received camera head control command obtains; Memory unit is used to store the moving image of being taken by described camera head; Parts are set, are used for described movable information based on described camera head and are provided with when number to the reference frame data of time institute's reference that the frame data that are encoded are encoded; Obtain parts, be used to obtain with by the described corresponding reference frame data of number that the reference frame data that parts are provided with is set; Estimation section is used for based on being obtained reference frame data that parts obtain and the frame data that are encoded are come estimated motion vector by described; Addressable part is used for by using to be come the frame data that are encoded are encoded by described estimation section estimated movement vector; And output block, be used to export coded data through described addressable part coding.
In a preferred embodiment, this equipment also comprises the hunting zone control assembly, is used for controlling based on described movable information the motion vector search ranges of described estimation section.
According to the present invention, realize above-mentioned purpose by the control method that a kind of motion picture encoding apparatus is provided, this motion picture encoding apparatus comprises a plurality of memory cell of a plurality of frame data that are used for storing moving image, and by frame data that will be encoded being carried out motion compensation this moving image of encoding with reference to the frame data that are stored in described a plurality of memory cell, described control method comprises: detect step, be used to detect the motion of camera head; Select step, be used for based at the detected movable information of described detection step, from described a plurality of memory cell, select to be used to store when memory cell to the reference frame data of time institute's reference that the frame data that are encoded are encoded; Estimating step is used for coming estimated motion vector based on the described reference frame data of the memory cell that is stored in described selection step selection with the frame data that are encoded; Coding step is used for by using the described motion vector of estimating in described estimating step to the frame data that are encoded are encoded; And the output step, be used for exporting the coded data that is encoded at described coding step.
According to the present invention, realize above-mentioned purpose by the control method that a kind of motion picture encoding apparatus is provided, this motion picture encoding apparatus comprises a plurality of memory cell of a plurality of frame data that are used for storing moving image, and by frame data that will be encoded being carried out motion compensation this moving image of encoding with reference to the frame data that are stored in described a plurality of memory cell, described control method comprises: step is set, is used to be provided with the image taking pattern of camera head; Select step, be used for, from described a plurality of memory cell, select to be used to store when memory cell to the reference frame data of time institute's reference that the frame data that are encoded are encoded based on the image taking pattern that step is provided with being set described; Estimating step is used for coming estimated motion vector based on the described reference frame data of the memory cell that is stored in described selection step selection with the frame data that are encoded; Coding step is used for by using the described motion vector of estimating in described estimating step to the frame data that are encoded are encoded; And the output step, be used for exporting the coded data that is encoded at described coding step.
According to the present invention, realize above-mentioned purpose by the control method that a kind of motion picture encoding apparatus is provided, this motion picture encoding apparatus comprises the memory cell that is used for storing moving image, and by frame data that will be encoded being carried out motion compensation this moving image of encoding with reference to the frame data that are stored in the described memory cell, described control method comprises: input step is used to import by carrying out the movable information of the camera head that received camera head control command obtains; Step is set, is used for described movable information based on described camera head and is provided with when number to the reference frame data of time institute's reference that the frame data that are encoded are encoded; Obtaining step, be used for obtaining with at the described corresponding reference frame data of number that the described reference frame data that step is provided with is set; Estimating step is used for coming estimated motion vector based on the described reference frame data that obtains at described obtaining step with the frame data that are encoded; Coding step is used for by using in described estimating step estimated movement vector the frame data that are encoded are encoded; And the output step, be used for exporting the coded data that is encoded at described coding step.
According to the present invention, by providing a kind of being used for that the program that motion picture encoding apparatus is implemented to control is realized above-mentioned purpose, this motion picture encoding apparatus comprises a plurality of memory cell of a plurality of frame data that are used for storing moving image, and by frame data that will be encoded being carried out motion compensation this moving image of encoding with reference to the frame data that are stored in described a plurality of memory cell, the program code that described program comprises the following steps: detect step, be used to detect the motion of camera head; Select step, be used for based at the detected movable information of described detection step, from described a plurality of memory cell, select to be used to store when memory cell to the reference frame data of time institute's reference that the frame data that are encoded are encoded; Estimating step is used for coming estimated motion vector based on the described reference frame data of the memory cell that is stored in described selection step selection with the frame data that are encoded; Coding step is used for by using the described motion vector of estimating in described estimating step to the frame data that are encoded are encoded; And the output step, be used for exporting the coded data that is encoded at described coding step.
According to the present invention, by providing a kind of being used for that the program that motion picture encoding apparatus is implemented to control is realized above-mentioned purpose, this motion picture encoding apparatus comprises a plurality of memory cell of a plurality of frame data that are used for storing moving image, and by frame data that will be encoded being carried out motion compensation this moving image of encoding with reference to the frame data that are stored in described a plurality of memory cell, the program code that described program comprises the following steps: step is set, is used to be provided with the image taking pattern of camera head; Select step, be used for, from described a plurality of memory cell, select to be used to store when memory cell to the reference frame data of time institute's reference that the frame data that are encoded are encoded based on the image taking pattern that step is provided with being set described; Estimating step is used for coming estimated motion vector based on the described reference frame data of the memory cell that is stored in described selection step selection with the frame data that are encoded; Coding step is used for by using the described motion vector of estimating in described estimating step to the frame data that are encoded are encoded; And the output step, be used for exporting the coded data that is encoded at described coding step.
According to the present invention, by providing a kind of being used for that the program that motion picture encoding apparatus is implemented to control is realized above-mentioned purpose, this motion picture encoding apparatus comprises the memory cell that is used for storing moving image, and by frame data that will be encoded being carried out motion compensation this moving image of encoding with reference to the frame data that are stored in the described memory cell, the program code that described program comprises the following steps: input step is used to import the control information of control camera head; Step is set, be used for movable information based on described camera head and be provided with when the number to the reference frame data of time institute's reference that the frame data that are encoded are encoded, the movable information of wherein said camera head is based on the control information of importing in the described input step and obtains; Obtaining step, be used for obtaining with at the described corresponding reference frame data of number that the described reference frame data that step is provided with is set; Estimating step is used for coming estimated motion vector based on the described reference frame data that obtains at described obtaining step with the frame data that are encoded; Coding step is used for by using in described estimating step estimated movement vector the frame data that are encoded are encoded; And the output step, be used for exporting the coded data that is encoded at described coding step.
By below in conjunction with the description of the drawings, other features and advantages of the present invention will be clearly, and wherein in institute's drawings attached, same Reference numeral is represented identical or similar part.
Description of drawings
Be included in the specification and constitute the accompanying drawing of the part of specification, show embodiments of the invention, and be used for explaining principle of the present invention with specification.
Fig. 1 is the block diagram that illustrates according to the configuration of the motion picture encoding apparatus of first embodiment of the invention;
Fig. 2 illustrates the flow chart of being handled by the moving image encoding of motion picture encoding apparatus execution according to first embodiment of the invention;
Fig. 3 is the block diagram that illustrates according to the configuration of the motion picture encoding apparatus of second embodiment of the invention;
Fig. 4 illustrates the flow chart of being handled by the moving image encoding of motion picture encoding apparatus execution according to second embodiment of the invention;
Fig. 5 illustrates the flow chart of controlling the details of M according to the frame memory of second embodiment of the invention;
Fig. 6 illustrates the flow chart of controlling the details of N according to the frame memory of second embodiment of the invention;
Fig. 7 is the block diagram that illustrates according to the configuration of the motion picture encoding apparatus of third embodiment of the invention;
Fig. 8 illustrates the flow chart of being handled by the moving image encoding of motion picture encoding apparatus execution according to third embodiment of the invention;
Fig. 9 is the block diagram that illustrates according to the configuration of the motion picture encoding apparatus of fourth embodiment of the invention;
Figure 10 is the figure that illustrates according to the data structure of the memory of fourth embodiment of the invention;
Figure 11 illustrates according to the flow chart of fourth embodiment of the invention by the processing of motion picture encoding apparatus execution;
Figure 12 is the flow chart that illustrates according to the details of the processing of fourth embodiment of the invention in step S305; And
Figure 13 is the block diagram of the configuration of conventional motion image encoding apparatus.
Embodiment
To be described with reference to the accompanying drawings the preferred embodiments of the present invention.
First embodiment
Fig. 1 is the block diagram that illustrates according to the configuration of the motion picture encoding apparatus of first embodiment of the invention.
To adopt field camera first embodiment to be described below as the example of motion picture encoding apparatus.
In first embodiment, will adopt H.264 coding method that the coding method of being used by motion picture encoding apparatus is described as an example.Yet coding method is not limited to this method.In addition, for the purpose of simplifying the description, will adopt forward prediction (forward prediction) as an example, wherein, the frame in prediction reference past forward.In addition, for the purpose of simplifying the description, the maximum number of reference frame is set to 5, but this number is not limited to 5.
With reference to figure 1, camera head 1 is cooperated with the optical unit that is made of camera lens etc. and is generated the digital signal of image.Frame memory 2 these digital signals of storage.Selector 3 according to coding mode be in the frame (intra-frame) coding still the selection of interframe (inter-frame) coding from the output of frame memory 2.
Intra predictor generator 4 passes through H.264 coding method and carries out infra-frame prediction.Difference unit 5 calculates motion prediction error.Transformer/quantizer 6 is carried out the integer type orthogonal transforms, and quantizes the coefficient that obtained.Go quantizer/inverse transformer 10 to remove to quantize the coefficient that this is quantized, and carry out the integer type inverse orthogonal transformation.
7 pairs of quantized result from transformer/quantizer 6 of entropy coder are encoded.Data after register 8 will be encoded are recorded on the recording medium 9.Data behind recording medium 9 record codings.Adder 11 will be by predicated error of going quantizer/inverse transformer 10 to obtain and value (image of the being predicted) addition of being predicted.
The frame of frame memory 12,13,14,15,16 and the local decoded image data of 17 storages.Selector 18 control input and output.
Exercise estimator 19 extracts optimum movement vector based on input picture and decoded picture from the frame of correspondence.Motion compensator 20 is according to motion vector of being calculated by exercise estimator 19 and corresponding frame information generation forecast image.
Motion encoder 21 is encoded to movable information based on motion vector of being calculated and corresponding frame information.Motion detector 22 detects the motion of motion picture encoding apparatus by using gyroscope, transducer etc.The movement velocity that motion determinant 23 is judged by motion detector 22 detected motion picture encoding apparatus.
Motion picture encoding apparatus shown in Figure 1 also comprises: CPU is used to control entire equipment; ROM is used to store the various control programs of this equipment of control; And RAM, with working region that acts on the various data of carrying out various control operations and temporary transient storage area.
The moving image encoding operation of motion picture encoding apparatus shown in Figure 1 will be described below.
Before coding, entropy coder 7 generates that for example comprise can be by the header of the number of the frame of reference, and by register 8 this header is recorded on the recording medium 9.
The view data of the frame of being taken by camera head 1 is stored in the frame memory 2, and is imported into selector 3.The selection operation of selector 3 is controlled so as to predetermined interval and carries out intraframe coding, and carries out interframe encode with section At All Other Times.
At first illustrate below the intraframe coding of first frame execution of frame to start with.
The incoming frame data are input to intra predictor generator 4 with pursuing macro block, and intra predictor generator 4 is carried out infra-frame prediction to each piece.To predict the outcome is input to transformer/quantizer 6, and transformer/quantizer 6 is carried out the integer type orthogonal transform, and the coefficient that is obtained is quantized.This coefficient that is quantized is input to entropy coder 7 and goes quantizer/inverse transformer 10 as quantized result.
7 pairs of quantized result of being imported of entropy coder are carried out entropy coding, and the data after will encoding by register 8 are recorded on the recording medium 9.
Go quantizer/inverse transformer 10 to obtain decoded picture, and this decoded picture is input to adder 11 from the quantized result of input.Predicted picture is not used in intraframe coding.Therefore, adder 11 adds predicted value 0, and is stored in this image in the empty frame memory or is stored in the frame memory of the view data the earliest of having stored the reference picture that is write down in the frame memory.At first, there is not image data storage in frame memory 12 to 17, so this image is stored in the memory 12.
The interframe encode that second frame is subsequently carried out will be described below.
Motion detector 22 detects the motion of motion picture encoding apparatus itself.For example, motion detector 22 calculates vertical and horizontal motion vector MVx and MVy, and the quadratic sum of these vectors is defined as the motion amplitude of motion picture encoding apparatus.Motion determinant 23 judges that whether the motion amplitude of motion picture encoding apparatus is greater than predetermined value.
If the motion amplitude of motion picture encoding apparatus is greater than predetermined value, then motion determinant 23 control selectors 18 are selected output from frame memory 12 to 17, make and will go up up-to-date frame as reference picture from two times of frame memory 12 to 17.If the motion amplitude of motion picture encoding apparatus is equal to or less than predetermined value, then motion determinant 23 control selectors 18 are selected all output from frame memory 12 to 17.
Exercise estimator 19 is read the content of selected frame memory, and calculating kinematical vector.Motion compensator 20 generation forecast images, and this image is input to difference unit 5.Selector 3 selects difference unit 5 as output.Difference unit 5 calculates predicated error.Result of calculation is input to transformer/quantizer 6.Quantize in transformer/quantizer 6 execution integer type orthogonal transforms and to the coefficient that is obtained.Coefficient after quantizing is input to entropy coder 7 and goes quantizer/inverse transformer 10 as quantized result.
7 pairs of quantized result of being imported of entropy coder are carried out entropy coding, and the data after will encoding by register 8 are recorded on the recording medium 9.In addition, encode, and the data after will encoding by register 8 are recorded on the recording medium 9 by the motion vector that 21 pairs of exercise estimators 19 of motion encoder are calculated.
Go quantizer/inverse transformer 10 from the quantized result of being imported, to obtain predicated error, and this predicated error is input to adder 11.The predicted picture (predicted value) of adder 11 autokinesis in the future compensators 20 is added to this predicated error, and will be stored in the empty frame memory or be stored in the frame memory of the view data the earliest of having stored the reference picture that is write down in the frame memory.
Below with reference to the handling process of Fig. 2 explanation according to the moving image encoding processing of the motion picture encoding apparatus of first embodiment.
Fig. 2 illustrates the flow chart of handling according to the moving image encoding of the motion picture encoding apparatus of first embodiment of the invention.
At first, at step S1, generate and delivery information.At step S2, judge whether to have finished coding to all frames.If coding is finished ("Yes" among the step S2), then termination.If coding is not finished ("No" among the step S2), then flow process advances to step S3.
At step S3, input is with the frame data that are encoded.At step S4, detect the motion of motion picture encoding apparatus.
At step S5, the amplitude of the motion of detected motion picture encoding apparatus is compared with predetermined value.If motion amplitude is equal to or less than predetermined value ("No" among the step S5), then flow process advances to step S6, is set to M (being 5 in the case) with the number of reference frame.If motion amplitude is greater than predetermined value ("Yes" among the step S5), then flow process advances to step S7, is set to N (being 2 in the case) with the number of reference frame.In the present embodiment, always keep M〉N.
At step S8, judge the coding mode of the frame data that will be encoded.
If coding mode is intraframe coding, then flow process advances to step S9, carries out intraframe coding with the frame data to input.Afterwards, flow process advances to step S11.
If coding mode is an interframe encode, then flow process advances to step S10, with in the first-class image in the frame memory of reference frame of reference number, carries out interframe encode by carrying out motion compensation.Afterwards, flow process advances to step S11.
At step S11, be stored in decoded picture in the empty frame memory or be stored in the frame memory of having stored in the frame memory on the time view data the earliest.
At step S12, the data behind the coding are recorded on the recording medium 9.Then, flow process turns back to step S2, to handle next frame.
In above-mentioned first embodiment, if the motion of camera head very big (acutely), the reference frequency of the frame that then separates in time sharply descends, so these frames are not by reference.This greatly reduces the calculation process amount relevant with motion compensation.As a result, can improve processing speed.
In first embodiment, the maximum number of reference frame is set to 5.Yet, obviously can also by use must number frame memory use the reference frame of any number.
And in first embodiment, the number of the reference frame when motion is very big is not limited to number above-mentioned.In addition, the number with selecteed frame also can change according to motion amplitude.For example, can determine inversely and can perhaps can also be used some other standards with the motion amplitude of motion picture encoding apparatus by the number of the frame of reference.
In first embodiment, detect the motion of camera head 1 by motion detector 22 (transducer).Yet, also can detect the motion of camera head 1 based on the view data of input.For example, the rough motion vector of (reduced) image detection that can also dwindle by generation, the perhaps motion of the some spots of detected image and use of the motion of this testing result as camera head 1.
By only adopting forward prediction that first embodiment has been described as an example.Yet, by use must number frame memory can also carry out back forecast or bi-directional predicted.
Certainly, can also be with software description some or all according to the various elements of the motion picture encoding apparatus of first embodiment, and by arithmetic element for example CPU carry out and handle.
Second embodiment
Fig. 3 is the block diagram that illustrates according to the configuration of the motion picture encoding apparatus of second embodiment of the invention.
In Fig. 3 with Fig. 1 of first embodiment in identical Reference numeral represent to have the part of identical function, and omit its explanation.
Referring to Fig. 3, exercise estimator 100 is with reference to input picture with from can be by the frame data of reference in the decode image data of frame memory 12 to 17, and extracts optimum movement vector from the frame data of correspondence.
Motion compensator 101 is according to motion vector of being calculated by exercise estimator 100 and corresponding frame information generation forecast image.Frame memory controller 102 control frame memories 12 to 17.That is frame memory controller 102 controls writing, reading and powering, to frame memory 12 to 17.
The moving image encoding operation of motion picture encoding apparatus shown in Figure 3 will be described below.
At first, with identical among first embodiment, generate header and header is recorded on the recording medium 9 by register 8.
Then, with identical among first embodiment, the view data of the frame of being taken by camera head 1 is stored in the frame memory 2 and is imported into selector 3.
In the time will carrying out intraframe coding, handle with first embodiment in identical, and the data behind the coding that is generated are recorded on the recording medium 9 by register 8.
In addition, according to the instruction from frame memory controller 102, decoded picture is stored in the empty frame memory or is stored in the frame memory of the view data the earliest of having stored the reference picture that is write down in the frame memory.That is, but the power supply of frame memory controller 102 in untapped frame memory is set to write state with it, but the frame memory that perhaps has frame the earliest in the frame memory is set to write state.
The following describes the execution of interframe encode.
With identical among first embodiment, motion detector 22 detects the motion of motion picture encoding apparatus itself.For example, motion detector 22 calculates vertical and horizontal motion vector MVx and MVy, and the quadratic sum of these vectors is defined as the motion amplitude of motion picture encoding apparatus.Motion determinant 23 judges that whether the motion amplitude of motion picture encoding apparatus is greater than predetermined value.
If the motion amplitude of motion picture encoding apparatus is greater than predetermined value, then motion determinant 23 is very big to the 102 notice motion picture encoding apparatus motions of frame memory controller.When receiving this notice, frame memory controller 102 is set to the state of can read with two in the frame memory 12 to 17, and but another frame memory is set to write state, so that from frame memory 12 to 17, select output, make two selected conducts of up-to-date in time frame with reference to image.In addition, frame memory controller 102 stops to other frame memory power supply.
If the motion amplitude of motion picture encoding apparatus is equal to or less than predetermined value, then motion determinant 23 does not have big motion to frame memory controller 102 notice motion picture encoding apparatus.When receiving this notice, the frame memory that frame memory controller 102 is stored these frame data is set to the state of can read.And, the power supply of frame memory controller 102 in untapped frame memory, but be set to write state with it, but the frame memory that perhaps has frame the earliest in the frame memory is set to write state.
Exercise estimator 100 is read the content of the frame memory that is set to the state of can read, and calculating kinematical vector.Motion compensator 101 generation forecast images, and this image is input to difference unit 5.Afterwards,, carry out interframe encode, and the data after will encoding by register 8 are recorded on the recording medium 9 with identical among first embodiment.
Go quantizer/inverse transformer 10 from the quantized result of input, to obtain predicated error, and this predicated error is input to adder 11.The predicted picture and the predicated error addition of adder 11 autokinesis in the future compensators 101, but and addition result is stored in the frame memory that is set to write state.
Below with reference to the handling process of Fig. 4 to Fig. 6 explanation according to the moving image encoding processing of the motion picture encoding apparatus of second embodiment.
Fig. 4 illustrates the flow chart of handling according to the moving image encoding of the motion picture encoding apparatus of second embodiment of the invention.
In Fig. 4 with Fig. 2 of first embodiment in identical Reference numeral represent to have the step of identical function, and omit its explanation.
With identical among first embodiment, after the processing of step S1 to S4, at step S5, if motion amplitude is equal to or less than predetermined value ("No" among the step S5), then flow process advances to step S100 to carry out frame memory control M.If motion amplitude is greater than predetermined value ("Yes" among the step S5), then flow process advances to step S101, to carry out frame memory control N.In the present embodiment, always keep M〉N.
Details below with reference to frame memory control M among Fig. 5 description of step S100.
Fig. 5 illustrates the flow chart of controlling the details of M according to the frame memory of second embodiment of the invention.
At step S102, the number of reference frame is set to M (being 5) under this situation.At step S103, judge the existence be not powered the untapped frame memory that is not used/do not exist.If there is not untapped frame memory ("No" among the step S103), then flow process advances to step S104, with stored in time the earliest view data (reference frame) but frame memory be set to write state.
On the other hand, if there is the not frame memory of usefulness ("Yes" among the step S103), then flow process advances to step S105, to select a not frame memory of usefulness and available by to its power supply it being become.At step S106, be set to write state but in step S105, become this available frame memory.
At step S107, maximum M up-to-date in time in remaining frame memory frame memories are set to the state of can read.Like this, finish the sequence of frame memory control M, flow process advances to the step S8 among Fig. 4.
Details below with reference to frame memory control N among Fig. 6 description of step S101.
Fig. 6 illustrates the flow chart of controlling the details of N according to the frame memory of second embodiment of the invention.
At step S110, the number of reference frame is set to N (being 2 in the case).
At step S111, N up-to-date in time in remaining frame memory frame memory is set to the state of can read.At step S112, but be set to write state with one in the remaining frame memory.
At step S113, stop to remaining frame memory power supply still, because they are the frame memories that are not used.Like this, finish the sequence of memory control N, flow process advances to step S8.
Turn back to Fig. 4, identical with among first embodiment after the processing in step S8 to S10, at step S102, is stored in decoded picture in the frame memory in the writeable frame memory.At step S12, the data behind this coding are recorded on the recording medium 9, flow process turns back to step S2 to handle next frame.
In aforesaid second embodiment, in first embodiment the illustrated effect, by stopping to reduce power consumption to untapped frame memory power supply.Therefore, coming to prolong the running time of equipment in the environment of operational outfit by limited power supply especially.
In a second embodiment, the maximum number of reference frame is set to 5.Yet, obviously can also by use must number frame memory use the reference frame of any number.
And in a second embodiment, the number of the reference frame when motion is big is not limited to number above-mentioned.In addition, the number with selecteed frame also can change according to motion amplitude.For example, can determine inversely and can perhaps can also be used some other standards with the motion amplitude of motion picture encoding apparatus by the number of the frame of reference.
By only adopting forward prediction that second embodiment has been described as an example.Yet, can also by use must number frame memory carry out back forecast or bi-directional predicted.
Certainly, can also be with software description some or all according to the various elements of the motion picture encoding apparatus of second embodiment, and by arithmetic element for example CPU carry out and handle.
The 3rd embodiment
Fig. 7 is the block diagram that illustrates according to the configuration of the motion picture encoding apparatus of third embodiment of the invention.
Among Fig. 7 with Fig. 3 of second embodiment in identical Reference numeral represent to have the part of identical function, and omit its explanation.
Referring to Fig. 7, image taking mode setting unit 200 is provided with the image taking pattern of motion picture encoding apparatus.The example of image taking pattern has " automatic mode ", " landscape " pattern that is used to take " motor pattern " of the image with high-speed subject and is used to take the image of landscape such as mountain, sea as standard.Yet the image taking pattern is not limited to these examples.
Frame memory controller 201 control frame memories 12 to 17.According to the image taking pattern, frame memory controller 201 controls writing, reading and powering to frame memory 12 to 17.Camera head 202 can be according to from the commands for controlling shutter speed of image taking mode setting unit 200, f-number etc.
The following describes the moving image encoding operation of the motion picture encoding apparatus shown in Fig. 7.
At first, before the beginning image taking, the user is provided with the image taking pattern of camera head 202 by using image taking mode setting unit 200.Set image taking pattern is input to camera head 202 and frame memory controller 201.Shutter speed and the F value (F-number) that is suitable for set image taking pattern selected and be provided with to camera head 202.
When having selected " automatic mode ", the number of frame memory controller 201 reference frames is set to 3, and stops frame memory 16 and 17 power supplies are not used they are remained.When having selected " motor pattern ", the number of frame memory controller 201 reference frames is set to 1, and stops frame memory 14 to 17 power supplies they are remained use.When having selected " landscape configuration ", the number of frame memory controller 201 reference frames is set to 5.
Afterwards, the frame memory that is powered by use is carried out intraframe coding or interframe encode to each frame.
In the time will carrying out intraframe coding, but the frame memory of the frame memory hollow that frame memory controller 201 is powered in order or the frame memory of having stored in time frame the earliest are set to write state, and the storage decoded picture.
In the time will carrying out interframe encode, but the frame memory of the frame memory hollow that frame memory controller 201 is powered in order or the frame memory of having stored in time frame the earliest are set to write state, and other frame memory is set to the state of can read.
Note, in interframe encode, each image taking pattern is provided with the number of reference frame.Therefore, according to the number of reference frame, calculating kinematical vector, and carry out motion compensation.By register 8 data behind the coding that is generated are recorded on the recording medium 9.But decoded picture is stored in the frame memory that is set to write state.
Below with reference to the handling process of Fig. 8 explanation according to the moving image encoding processing of the motion picture encoding apparatus of the 3rd embodiment.
Fig. 8 illustrates the flow chart of handling according to the moving image encoding of the motion picture encoding apparatus of third embodiment of the invention.
Among Fig. 8 with Fig. 2 of first embodiment in identical Reference numeral represent to have the step of identical function, and will omit its explanation.
At step S200, the image taking pattern is set.
Suppose that in Fig. 8 " motor pattern ", " landscape configuration " and " automatic mode " are the image taking patterns.
At step S201, judge whether the image taking pattern is " motor pattern ".If the image taking pattern is " motor pattern " ("Yes" among the step S201), then flow process advances to step S202, is set to N (being 1 in the case) with the number of reference frame.At step S203, stop untapped frame memory power supply.Afterwards, flow process advances to step S1.
Whether if the image taking pattern is not " motor pattern " ("No" among the step S201) in step S201, then flow process advances to step S204, be " landscape configuration " to judge the image taking pattern.If the image taking pattern is " landscape configuration ", then flow process advances to step S205, is set to P (being 5 in the case) with the number of reference frame.Afterwards, flow process advances to step S1.
If the image taking pattern is not " landscape configuration " ("No" among the step S204), then flow process advances to step S206, is set to M (being 3 in the case) with the number of reference frame.At step S207, stop untapped frame memory power supply.Flow process advances to step S1 then.In the present embodiment, remain P 〉=M 〉=N.
Afterwards, with identical among first embodiment, based on execution in step S1 to S3 among number P, M and the N of set reference frame and the processing among the S8 to S12.
In above-mentioned the 3rd embodiment, based on the number of controlling reference frame by the motion amplitude with the moving image that is encoded of image taking pattern expection.Therefore, can carry out optimization process according to this motion.
In addition, owing to number, so can carry out optimal reference based on image taking pattern preset reference frame.In addition, by stopping to reduce power consumption to untapped frame memory power supply.Therefore, special in environment by limited power supply operational outfit, can prolong the running time of equipment.
In the 3rd embodiment, the maximum number of reference frame is set to 5.Yet, obviously can also use the reference frame of arbitrary number by using requisite number purpose frame memory.
In addition, only adopt forward prediction that the 3rd embodiment has been described as an example.Yet, by use must number frame memory can also carry out back forecast or bi-directional predicted.
Certainly, can also be with software description some or all according to the various elements of the motion picture encoding apparatus of the 3rd embodiment, and by arithmetic element for example CPU carry out and handle.
The 4th embodiment
Fig. 9 is the block diagram that illustrates according to the configuration of the motion picture encoding apparatus of fourth embodiment of the invention.
Referring to Fig. 9, CPU (CPU) 300 control entire equipment are also carried out various processing.Memory 301 provides storage area for the control necessary operating system of this equipment (OS), software and arithmetic operation.Bus 302 is interconnected to form the various elements of this motion picture encoding apparatus, and transmits data and control signal.
Terminal 303 is used to start this equipment, various conditions are set and carry out play-back command.Storage device 304 storing softwares.Storage device 305 memory encodings stream.Storage device 304 and 305 can also be can be from motion picture encoding apparatus separately and the portable storage media of moving.
Camera (camera head) but 307 frame by frame taking moving images.The camera The Cloud Terrace (panhead) 306 of camera 307 is controlled by software, and has the function that the states from the state of the view data of camera 307, camera 307 and camera The Cloud Terrace 306 itself is outputed to bus 302.
Monitor 308 display images.Order wire 310 is for example LAN, public line, radio channel or broadcasts radio waves.Communication interface (I/F) 309 sends and receives stream by order wire 310.
Memory 301 storage is used to the OS that controls entire equipment and move various softwares, and the storage software that will be moved.In addition, memory 301 has the image-region that is used for storing image data, is used to store the coding region of the data behind the coding that is generated and is used to store for example various arithmetic operations and coding with the working region of parameter.
To illustrate below that in above-mentioned configuration the moving image after encoding and will encode by order wire 310 from exterior terminal control camera The Cloud Terrace 306 and camera 307, to camera 307 captured moving images by order wire 310 sends to the processing of exterior terminal.
In the 4th embodiment, will adopt H.264 coding method that the coding method of being used by motion picture encoding apparatus is described as an example.Yet, can use any coding method, as long as with reference to two frames or more multiframe image is encoded.And, for the purpose of simplifying the description, with reference to three frames before the frame that will be encoded and three frames afterwards.Yet the number of reference frame is unrestricted.
Before this was handled, terminal 303 indication entire equipment started, thus each element of initialization.Therefore, the software that is stored in the storage device 304 is deployed on the memory 301 by bus 302, and is activated.
The data structure of memory 301 is described below with reference to Figure 10.
Figure 10 is the figure that illustrates according to the data structure of the memory of fourth embodiment of the invention.
As shown in figure 10, the memory 301 storage OS, the moving image encoding software that is used to carry out H.264 coding method that are used to control entire equipment and move various softwares, be used to the camera Control Software controlling the communication software of communication and be used to control camera The Cloud Terrace 306.Memory 301 also has the image-region 1 to 7 that is used for storing image data, be used for the coding region and the working region of the data behind the memory encoding.
Below with reference to Figure 11 the CPU 300 controls mode of the motion picture encoding apparatus of configuration as mentioned above is described.
Figure 11 is the flow chart that illustrates by the processing of carrying out according to the motion picture encoding apparatus of fourth embodiment of the invention.
In step S300, CPU 300 startup camera Control Software are with the initialization various piece and begin the taking moving image.At step S301, CPU 300 starts communication softwares receiving the camera control informations by order wire 310, thereby prepares for the data behind the output encoder.
At step S302, CPU 300 judges whether that having imported processing from terminal 303 stops.If imported termination ("Yes" among the step S302), then flow process advances to step S307, and CPU 300 stops communication software.At step S308, CPU 300 stops the camera Control Software, stops entire process then.
On the other hand, if input does not stop ("No" among the step S302) in step S302, then flow process advances to step S303, and CPU 300 judges whether to have imported camera control request and moving image transmission request by communication interface 309 from order wire 310.If do not import this request ("No" among the step S303), then flow process turns back to step S302, and CPU 300 waits for, up to having imported these requests.If these requests are transfused to ("Yes" among the step S303), then flow process advances to step S304.
At step S304, CPU 300 starts moving image encoding software.At step S305, the data after CPU 300 carries out coding and sends coding.The back will describe this processing in detail.When this communication was finished, flow process advanced to step S306.At step S306, CPU 300 stops encoding software.Then, flow process turns back to step S302, and CPU 300 waits for next indication.
Describe processing among the step S305 in detail below with reference to Figure 12.
Figure 12 is the flow chart that illustrates according to the processing details among the step S305 of fourth embodiment of the invention.
At first,, generate header, and this header is stored in the coding region on the memory 301 at step S351.When the data behind the coding were stored in the coding region, communication software sent to order wire 310 by communication interface 309 with data, and after sending, emptied the correspondence district of coding region.To not specify the transmission of the data behind the coding in the coding region in the following description.
At step S352, the existence of CPU 300 judgement communication termination requests/do not exist.Have ("Yes" among the step S352) if communication stops request, then CPU 300 stops this processing.Do not have ("No" among the step S352) if communication stops request, then flow process advances to step S353.
At step S353, if receive the camera control command that is used to control camera by communication interface 309 from order wire 310, then CPU 300 is input to camera The Cloud Terrace 306 with this order.Based on this camera control command, camera The Cloud Terrace 306 for example rocks from side to side, swings up and down and zoom operation.
At step S354, the frame data that CPU 300 is taken by camera 307 by 306 inputs of camera The Cloud Terrace, and with the image-region 1 of this storage on memory 301.
At step S355, CPU 300 obtains data about the motion of camera 307 by camera The Cloud Terrace 306.That is, camera The Cloud Terrace 306 is being received operate camera 307 after the camera control command, and can obtain the data relevant with the motion of camera 307 by the state of monitoring motor etc.CPU 300 is with in the working region on the writing data into memory 301 that is obtained.
At step S356, CPU 300 data (amplitude of motion) and the predetermined value that the motion with camera 307 that is obtained is relevant compares.
If the amplitude of motion is equal to or less than predetermined value ("No" among the step S356), then flow process advances to step S357, and CPU 300 numbers preceding and back reference frame are set to M (being 3 in the case).Then, in step S358, CPU 300 is provided with the hunting zone (back will illustrate) of the motion vector that m * m uses when carrying out motion compensation during interframe encode.In the case, m is 32 pixels for example.Afterwards, flow process advances to step S361.
If the amplitude of motion is greater than predetermined value ("Yes" among the step S356), then flow process advances to step S359, and CPU 300 numbers preceding and back reference frame are set to N (being 1 in the case).In the present embodiment, remain M〉N.At step S360, CPU 300 is provided with the hunting zone (back will illustrate) of the motion vector that n * n uses when carrying out motion compensation during interframe encode.In the case, n is for example 55 pixels.Afterwards, flow process advances to step S361.
At step S361, CPU 300 judges the coding mode of the frame data that will be encoded.
If coding mode is intraframe coding, then flow process advances to step S362, and 300 pairs of frame data of being imported of CPU are carried out intraframe coding.Then, CPU 300 is with in the coding region of the storage behind the coding that is generated on memory 301, and flow process advances to step S364.
If coding mode is an interframe encode, then flow process advances to step S363, CPU 300 carries out interframe encode by the motion vector execution motion compensation of searching in the set scope in reference to the image in the image-region of the reference frame with set number.CPU 300 is with in the coding region of the storage behind the coding that is generated on memory 301 then, and flow process advances to step S364.
At step S364, CPU 300 is stored in decoded picture in the image-region of the sky on the memory 301 or is stored in the image-region of having stored in time view data the earliest in the image-region.At step S365, CPU 300 sends to order wire 310 by the data that communication interface 309 will be stored in behind the coding in the coding region, and flow process turns back to step S352 to handle next frame.
In aforesaid the 4th embodiment, if the motion of camera very big (acutely), then not with reference to the frame that separates in time, because the reference frequency of these frames sharply descends.Like this, can significantly reduce the calculation process amount of motion compensation.Therefore, can improve processing speed.
In addition, if the motion of camera very big (acutely) then wide by making motion vector search ranges contrast the hunting zone of camera motion hour, can be carried out motion-vector search accurately.That is, when the number of reference frame when 5 reduce to 2, even motion vector search ranges expands (3025 (55 * 55))/1024 (32 * 32) to) 1/2, still can keep identical arithmetical operation amount.This make can be under the situation that does not increase the CPU burden effective search motion vector.
In the 4th embodiment, reference frame was three frames before the frame that will be encoded, and was three frames after it.Yet the image-region of necessary amounts that obviously can also be by guaranteeing to be used for storage of reference frames uses the reference frame of any number.
In the 4th embodiment, data are sent to order wire 310 via communication interface 309 by starting communication software.Yet, can also be in storage device 305 with storage.
In addition, the image of input needs not to be the photographic images from camera.Can also use the motion image data that is stored in the storage device 305, and when judging the motion amplitude of frame, change the number of reference frame.And, if detect scene variation etc., can also change the number of reference frame.
Certainly, can also be according to using or the configuration of purpose by independent assortment first to fourth embodiment realizes embodiment.
Owing under the situation that does not break away from the spirit and scope of the present invention, can make many visibly different embodiment, therefore, should be appreciated that except being defined by the following claims, the present invention is not limited to specific embodiment.
Priority request
The application requires the priority of the Japanese patent application 2003-425826 of submission on December 22nd, 2003, is incorporated herein this application as a reference.

Claims (14)

1. motion picture encoding apparatus, it carries out motion compensation this moving image of encoding by a plurality of frame data in the reference motion image to the frame data that will be encoded, and this motion picture encoding apparatus comprises:
Detection part is used to detect the motion of camera head;
A plurality of memory units are used to store described a plurality of frame data;
Alternative pack is used for based on by the detected movable information of described detection part, selects to be used to from described a plurality of memory units to store when the memory unit to the reference frame data of time institute's reference that the frame data that are encoded are encoded;
Estimation section is used for coming estimated motion vector based on the reference frame data that is stored in the described memory unit of being selected by described alternative pack with the frame data that are encoded;
Addressable part is used for by using by described estimation section estimated movement vector the frame data that are encoded are encoded; And
Output block is used to export the coded data through described addressable part coding.
2. motion picture encoding apparatus according to claim 1 is characterized in that, described detection part detects the motion of described camera head based on the moving image of being taken by described camera head.
3. motion picture encoding apparatus according to claim 1, it is characterized in that, described alternative pack comprises control assembly, and this control assembly is used for based on controlling writing/reading and powering described a plurality of memory units by the detected movable information of described detection part.
4. motion picture encoding apparatus according to claim 1 is characterized in that, also comprises parts are set, and is used to be provided with the image taking pattern of described camera head,
Wherein, described alternative pack comprises control assembly, and this control assembly is used for based on controlling writing/reading and powering described a plurality of memory units by the described image taking pattern that the parts setting is set.
5. according to claim 3 or 4 described motion picture encoding apparatus, it is characterized in that described control assembly stops the memory unit of not selected by described alternative pack is powered.
6. motion picture encoding apparatus according to claim 1 is characterized in that, also comprises the hunting zone control assembly, is used for coming based on the movable information control that is detected by described detection part the motion vector search ranges of described estimation section.
7. motion picture encoding apparatus, it carries out motion compensation this moving image of encoding by a plurality of frame data in the reference motion image to the frame data that will be encoded, and this motion picture encoding apparatus comprises:
Parts are set, are used to be provided with the image taking pattern of camera head;
A plurality of memory units are used to store described a plurality of frame data;
Alternative pack is used for based on by described the image taking pattern that parts are provided with being set, and selects to be used to from described a plurality of memory units to store when the memory unit to the reference frame data of time institute's reference that the frame data that are encoded are encoded;
Estimation section is used for coming estimated motion vector based on the reference frame data that is stored in the described memory unit of being selected by described alternative pack with the frame data that are encoded;
Addressable part is used for by using by described estimation section estimated movement vector the frame data that are encoded are encoded; And
Output block is used to export the coded data through described addressable part coding.
8. motion picture encoding apparatus according to claim 7 is characterized in that described alternative pack comprises control assembly, and this control assembly is used to control writing/reading and powering described a plurality of memory units.
9. motion picture encoding apparatus according to claim 8 is characterized in that, described control assembly stops the memory unit of not selected by described alternative pack is powered.
10. motion picture encoding apparatus, it carries out motion compensation this moving image of encoding by a plurality of frame data in the reference motion image to the frame data that will be encoded, and this motion picture encoding apparatus comprises:
Input block is used to import by carrying out the movable information of the camera head that received camera head control command obtains;
Memory unit is used to store the moving image of being taken by described camera head;
Parts are set, are used for described movable information based on described camera head and are provided with when number to the reference frame data of time institute's reference that the frame data that are encoded are encoded;
Obtain parts, be used to obtain with by the described corresponding reference frame data of number that the reference frame data that parts are provided with is set;
Estimation section is used for based on being obtained reference frame data that parts obtain and the frame data that are encoded are come estimated motion vector by described;
Addressable part is used for by using to be come the frame data that are encoded are encoded by described estimation section estimated movement vector; And
Output block is used to export the coded data through described addressable part coding.
11. motion picture encoding apparatus according to claim 10 is characterized in that, also comprises the hunting zone control assembly, is used for controlling based on described movable information the motion vector search ranges of described estimation section.
12. the control method of a motion picture encoding apparatus, this motion picture encoding apparatus comprises a plurality of memory cell of a plurality of frame data that are used for storing moving image, and by with reference to the frame data that are stored in described a plurality of memory cell frame data that will be encoded being carried out motion compensation this moving image of encoding, described control method comprises:
Detect step, be used to detect the motion of camera head;
Select step, be used for based at the detected movable information of described detection step, from described a plurality of memory cell, select to be used to store when memory cell to the reference frame data of time institute's reference that the frame data that are encoded are encoded;
Estimating step is used for coming estimated motion vector based on the described reference frame data of the memory cell that is stored in described selection step selection with the frame data that are encoded;
Coding step is used for by using the described motion vector of estimating in described estimating step to the frame data that are encoded are encoded; And
The output step is used for exporting the coded data that is encoded at described coding step.
13. the control method of a motion picture encoding apparatus, this motion picture encoding apparatus comprises a plurality of memory cell of a plurality of frame data that are used for storing moving image, and by with reference to the frame data that are stored in described a plurality of memory cell frame data that will be encoded being carried out motion compensation this moving image of encoding, described control method comprises:
Step is set, is used to be provided with the image taking pattern of camera head;
Select step, be used for, from described a plurality of memory cell, select to be used to store when memory cell to the reference frame data of time institute's reference that the frame data that are encoded are encoded based on the image taking pattern that step is provided with being set described;
Estimating step is used for coming estimated motion vector based on the described reference frame data of the memory cell that is stored in described selection step selection with the frame data that are encoded;
Coding step is used for by using the described motion vector of estimating in described estimating step to the frame data that are encoded are encoded; And
The output step is used for exporting the coded data that is encoded at described coding step.
14. the control method of a motion picture encoding apparatus, this motion picture encoding apparatus comprises the memory cell that is used for storing moving image, and by with reference to the frame data that are stored in the described memory cell frame data that will be encoded being carried out motion compensation this moving image of encoding, described control method comprises:
Input step is used to import by carrying out the movable information of the camera head that received camera head control command obtains;
Step is set, is used for described movable information based on described camera head and is provided with when number to the reference frame data of time institute's reference that the frame data that are encoded are encoded;
Obtaining step, be used for obtaining with at the described corresponding reference frame data of number that the described reference frame data that step is provided with is set;
Estimating step is used for coming estimated motion vector based on the described reference frame data that obtains at described obtaining step with the frame data that are encoded;
Coding step is used for by using in described estimating step estimated movement vector the frame data that are encoded are encoded; And
The output step is used for exporting the coded data that is encoded at described coding step.
CNB2004800382636A 2003-12-22 2004-12-08 Motion image coding apparatus, and control method and program of the apparatus Expired - Fee Related CN100508613C (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP425826/2003 2003-12-22
JP2003425826A JP4591657B2 (en) 2003-12-22 2003-12-22 Moving picture encoding apparatus, control method therefor, and program

Publications (2)

Publication Number Publication Date
CN1898964A CN1898964A (en) 2007-01-17
CN100508613C true CN100508613C (en) 2009-07-01

Family

ID=34708832

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004800382636A Expired - Fee Related CN100508613C (en) 2003-12-22 2004-12-08 Motion image coding apparatus, and control method and program of the apparatus

Country Status (7)

Country Link
US (1) US8064521B2 (en)
EP (1) EP1700481B1 (en)
JP (1) JP4591657B2 (en)
KR (1) KR100808717B1 (en)
CN (1) CN100508613C (en)
RU (1) RU2335859C2 (en)
WO (1) WO2005062624A1 (en)

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4612797B2 (en) * 2004-03-11 2011-01-12 キヤノン株式会社 Encoding device and encoding method
JP4702928B2 (en) * 2004-03-12 2011-06-15 キヤノン株式会社 Moving picture encoding apparatus and decoding apparatus, control method therefor, computer program, and computer-readable storage medium
JP2005295505A (en) * 2004-03-12 2005-10-20 Canon Inc Moving image coding apparatus, moving image decoding apparatus, control method therefor, computer program, and computer-readable storage medium
JP4570532B2 (en) * 2005-08-02 2010-10-27 パナソニック株式会社 Motion detection device, motion detection method, integrated circuit, and program
JP4804423B2 (en) * 2006-08-08 2011-11-02 キヤノン株式会社 Motion vector detection apparatus and motion vector detection method
CN100576919C (en) * 2006-08-08 2009-12-30 佳能株式会社 Apparatus for determining motion vectors and motion vector detecting method
US7777751B2 (en) * 2006-11-27 2010-08-17 Lsi Corporation Tiled memory array for full search motion estimation
JP4842899B2 (en) * 2007-08-15 2011-12-21 Kddi株式会社 Moving picture coding apparatus, moving picture coding method, and program
KR100930163B1 (en) 2007-11-29 2009-12-07 주식회사 창해에너지어링 Flash Detection Encoding Method
US20090180701A1 (en) * 2008-01-10 2009-07-16 Seungyeob Choi Video Data Encoding System
US20090238268A1 (en) * 2008-03-20 2009-09-24 Mediatek Inc. Method for video coding
KR100939280B1 (en) * 2008-06-02 2010-01-28 한양대학교 산학협력단 Video coding method using multiple reference frame and computer readable medium recording the method
KR100989003B1 (en) * 2008-08-14 2010-10-20 연세대학교 산학협력단 Method and system for motion estimation for multi reference frame
KR101483459B1 (en) 2008-09-03 2015-01-16 동부대우전자 주식회사 Broadcasting reception apparatus and its broadcasting program play method
JP5163409B2 (en) * 2008-10-03 2013-03-13 ソニー株式会社 Imaging apparatus, imaging method, and program
US8934548B2 (en) * 2009-05-29 2015-01-13 Mitsubishi Electric Corporation Image encoding device, image decoding device, image encoding method, and image decoding method
WO2010146314A1 (en) * 2009-06-19 2010-12-23 France Telecom Encoding motion vectors using competition between predictors
KR101522850B1 (en) 2010-01-14 2015-05-26 삼성전자주식회사 Method and apparatus for encoding/decoding motion vector
KR101623062B1 (en) * 2010-02-23 2016-05-20 니폰덴신뎅와 가부시키가이샤 Motion vector estimation method, multiview image encoding method, multiview image decoding method, motion vector estimation device, multiview image encoding device, multiview image decoding device, motion vector estimation program, multiview image encoding program and multiview image decoding program
JP2011199396A (en) * 2010-03-17 2011-10-06 Ntt Docomo Inc Moving image prediction encoding device, moving image prediction encoding method, moving image prediction encoding program, moving image prediction decoding device, moving image prediction decoding method, and moving image prediction decoding program
CN103813163B (en) * 2010-04-08 2017-03-01 株式会社东芝 Picture decoding method and picture decoding apparatus
JP5368631B2 (en) 2010-04-08 2013-12-18 株式会社東芝 Image encoding method, apparatus, and program
WO2012008039A1 (en) * 2010-07-15 2012-01-19 株式会社 東芝 Image encoding method and image decoding method
JP5682168B2 (en) * 2010-07-30 2015-03-11 ソニー株式会社 Camera device, camera system, control device, and program
US8824558B2 (en) * 2010-11-23 2014-09-02 Mediatek Inc. Method and apparatus of spatial motion vector prediction
KR20120088488A (en) 2011-01-31 2012-08-08 한국전자통신연구원 method for storing temporal motion vector and apparatus using the same
JP5698644B2 (en) * 2011-10-18 2015-04-08 株式会社Nttドコモ Video predictive encoding method, video predictive encoding device, video predictive encoding program, video predictive decoding method, video predictive decoding device, and video predictive decode program
MX2013012223A (en) 2011-10-28 2013-11-01 Panasonic Corp Image encoding method, image decoding method, image encoding device, and image decoding device.
JP5379933B2 (en) 2011-10-28 2013-12-25 パナソニック株式会社 Motion vector deriving method and motion vector deriving apparatus
EP3703371B1 (en) * 2011-12-16 2021-08-04 JVCKENWOOD Corporation Dynamic image encoding device, dynamic image encoding method, dynamic image encoding program, dynamic image decoding device, dynamic image decoding method, and dynamic image decoding program
BR112014023948B1 (en) * 2012-03-28 2021-05-25 JVC Kenwood Corporation image decoding device
US9538172B2 (en) * 2012-04-11 2017-01-03 Qualcomm Incorporated Grouping bypass coded syntax elements in video coding
JP6114404B2 (en) * 2013-01-08 2017-04-12 エルジー エレクトロニクス インコーポレイティド Video signal processing method and apparatus
CN105659602B (en) 2013-10-14 2019-10-08 微软技术许可有限责任公司 Coder side option for the intra block duplication prediction mode that video and image encode
JP6359101B2 (en) 2013-10-14 2018-07-18 マイクロソフト テクノロジー ライセンシング,エルエルシー Features of intra block copy prediction mode for video and image encoding and decoding
JP6234188B2 (en) * 2013-11-27 2017-11-22 シャープ株式会社 Translation display device, translation display method, and control program
US10390034B2 (en) * 2014-01-03 2019-08-20 Microsoft Technology Licensing, Llc Innovations in block vector prediction and estimation of reconstructed sample values within an overlap area
RU2669005C2 (en) 2014-01-03 2018-10-05 МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи Block vector prediction in video and image coding/decoding
US11284103B2 (en) 2014-01-17 2022-03-22 Microsoft Technology Licensing, Llc Intra block copy prediction with asymmetric partitions and encoder-side search patterns, search ranges and approaches to partitioning
KR102311815B1 (en) 2014-06-19 2021-10-13 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 Unified intra block copy and inter prediction modes
EP3202150B1 (en) 2014-09-30 2021-07-21 Microsoft Technology Licensing, LLC Rules for intra-picture prediction modes when wavefront parallel processing is enabled
KR102264840B1 (en) * 2014-11-27 2021-06-15 삼성전자주식회사 Video frame encoding circuit, encoding method thereof and video data transmitting and receiving system including the same
CN107852508A (en) * 2015-07-31 2018-03-27 深圳市大疆创新科技有限公司 The method for changing region of search
EP3214833B1 (en) * 2016-03-01 2018-02-28 Axis AB A method and device for controlling a camera capable of pan and tilt control
RU2666275C1 (en) * 2017-11-13 2018-09-06 ДжейВиСи КЕНВУД КОРПОРЕЙШН Device and method of coding moving image, long term data-storage computer recorded medium which image coding program is recorded on
US10986349B2 (en) 2017-12-29 2021-04-20 Microsoft Technology Licensing, Llc Constraints on locations of reference blocks for intra block copy prediction
WO2019176579A1 (en) * 2018-03-15 2019-09-19 ソニー株式会社 Device and method for processing image
CN113438476B (en) * 2021-08-26 2022-01-25 杭州博雅鸿图视频技术有限公司 Video encoding method, system and storage medium

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1330493A (en) * 2000-06-28 2002-01-09 三星电子株式会社 Decoder with digital image stability function and image stability method

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5473379A (en) 1993-11-04 1995-12-05 At&T Corp. Method and apparatus for improving motion compensation in digital video coding
KR0164074B1 (en) * 1995-12-29 1998-12-15 김주용 Power supply device
JP3628810B2 (en) * 1996-06-28 2005-03-16 三菱電機株式会社 Image encoding device
JP2861971B2 (en) * 1996-10-28 1999-02-24 日本電気株式会社 Motion vector prediction device
FR2756399B1 (en) * 1996-11-28 1999-06-25 Thomson Multimedia Sa VIDEO COMPRESSION METHOD AND DEVICE FOR SYNTHESIS IMAGES
JP3592025B2 (en) * 1997-03-11 2004-11-24 キヤノン株式会社 Captured image recording device
JP3604864B2 (en) * 1997-04-25 2004-12-22 シャープ株式会社 Video encoding device
JP3588564B2 (en) * 1999-03-31 2004-11-10 株式会社東芝 Video data recording device
JP3531532B2 (en) * 1999-05-18 2004-05-31 日本電気株式会社 Video encoding apparatus and method
JP4181705B2 (en) * 1999-09-14 2008-11-19 キヤノン株式会社 Imaging apparatus, image processing method, and computer-readable storage medium
US6983388B2 (en) * 2000-10-25 2006-01-03 Agere Systems Inc. Method and apparatus for reducing leakage power in a cache memory by using a timer control signal that removes power to associated cache lines
US6782052B2 (en) 2001-03-16 2004-08-24 Sharp Laboratories Of America, Inc. Reference frame prediction and block mode prediction for fast motion searching in advanced video coding
JP4119269B2 (en) * 2002-02-01 2008-07-16 松下電器産業株式会社 Video encoding method and video decoding method
WO2003065733A1 (en) * 2002-02-01 2003-08-07 Matsushita Electric Industrial Co., Ltd. Moving image coding method and moving image decoding method
JP2004221744A (en) 2003-01-10 2004-08-05 Nippon Hoso Kyokai <Nhk> Dynamic image encoding instrument, its method and program, dynamic image decoding instrument, and its method and program
JP4612797B2 (en) * 2004-03-11 2011-01-12 キヤノン株式会社 Encoding device and encoding method
JP4702928B2 (en) * 2004-03-12 2011-06-15 キヤノン株式会社 Moving picture encoding apparatus and decoding apparatus, control method therefor, computer program, and computer-readable storage medium
US7529417B2 (en) * 2004-07-09 2009-05-05 Canon Kabushiki Kaisha Apparatus, method and storage medium for image encoding/decoding using shape-based coefficient interpolation

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1330493A (en) * 2000-06-28 2002-01-09 三星电子株式会社 Decoder with digital image stability function and image stability method

Also Published As

Publication number Publication date
EP1700481A4 (en) 2008-07-16
EP1700481A1 (en) 2006-09-13
JP4591657B2 (en) 2010-12-01
CN1898964A (en) 2007-01-17
US8064521B2 (en) 2011-11-22
JP2005184694A (en) 2005-07-07
RU2006126660A (en) 2008-01-27
EP1700481B1 (en) 2012-02-22
RU2335859C2 (en) 2008-10-10
WO2005062624A1 (en) 2005-07-07
KR100808717B1 (en) 2008-02-29
KR20060123499A (en) 2006-12-01
US20070098073A1 (en) 2007-05-03

Similar Documents

Publication Publication Date Title
CN100508613C (en) Motion image coding apparatus, and control method and program of the apparatus
US9060175B2 (en) System and method for motion estimation and mode decision for low-complexity H.264 decoder
US7292634B2 (en) Image coding method and apparatus
CN1910934B (en) Encoder with adaptive rate control
CN101009843B (en) Signal processing device, image capturing device, network camera system and video system
CN102036067B (en) Moving image encoding apparatus and control method thereof
CN101267562A (en) Video processing system and device with encoding and decoding modes and method for use therewith
US20070092006A1 (en) Scalable motion estimation for video encoding
CN103650504A (en) Control of video encoding based on image capture parameters
CN101605256A (en) A kind of method of coding and decoding video and device
CN101325710A (en) Motion refinement engine with a plurality of cost calculation methods for use in video encoding and methods for use therewith
JP2004266731A (en) Moving picture encoding method and apparatus
EP1642464B1 (en) Method of encoding for handheld apparatuses
JP2002531018A (en) Digital image frame high resolution method
CN101325709A (en) Motion refinement engine with selectable partitionings for use in video encoding and methods for use therewith
US20080063065A1 (en) Fast Motion Estimation for Multiple Reference Pictures
CN102300091B (en) Code device, electronic equipment, imaging device and imaging system
JP2007325119A (en) Image processing apparatus and method
JP2007228101A (en) Dynamic-image coding equipment
JP2009033652A (en) Moving image encoding method
KR0166719B1 (en) Image encoding apparatus and method for digital camera
JP2003189311A (en) Image encoder and image encoding method
JP2005167720A (en) Image processor, image processing method, program, and storage medium
JPH0750841A (en) Motion vector detector and its method
CN117956181A (en) Inter-frame prediction method, video encoding and decoding method and related devices

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090701

Termination date: 20171208