JP2004088722A - 動画像符号化方法および動画像復号化方法 - Google Patents
動画像符号化方法および動画像復号化方法 Download PDFInfo
- Publication number
- JP2004088722A JP2004088722A JP2003047936A JP2003047936A JP2004088722A JP 2004088722 A JP2004088722 A JP 2004088722A JP 2003047936 A JP2003047936 A JP 2003047936A JP 2003047936 A JP2003047936 A JP 2003047936A JP 2004088722 A JP2004088722 A JP 2004088722A
- Authority
- JP
- Japan
- Prior art keywords
- picture
- block
- motion vector
- decoding
- 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.)
- Withdrawn
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/107—Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/127—Prioritisation of hardware or computational resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/136—Incoming video signal characteristics or properties
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/16—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter for a given display mode, e.g. for interlaced or progressive display mode
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/172—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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 block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods 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/423—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/573—Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/577—Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/58—Motion compensation with long-term prediction, i.e. the reference frame for a current frame not being the temporally closest one
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Processing Or Creating Images (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
【課題】IピクチャまたはPピクチャ間に挿入されるBピクチャの枚数が多くなった場合でも、Bピクチャの符号化効率の劣化を回避することができ、かつダイレクトモードにおける符号化効率を向上させることができる動画像符号化方法および動画像復号化方法を提供する。
【解決手段】IピクチャまたはPピクチャ間に挟まれる複数の連続したBピクチャの符号化順序を、表示時間順で考えた場合に、既に符号化済みのピクチャから最も遠くなるピクチャを優先して決定し、各ピクチャを符号化を行う順に並び替える符号化制御部110と、ダイレクトモードにより符号化する際には、符号化対象ピクチャの後方参照ピクチャ中の、符号化対象ブロックと同じ位置にあるブロックの符号化の際に前方向動きベクトルを用いていた場合は、この前方向動きベクトルに対してスケーリングを行って、符号化対象ブロックの動きベクトルを生成するモード選択部109とを備える。
【選択図】 図1
【解決手段】IピクチャまたはPピクチャ間に挟まれる複数の連続したBピクチャの符号化順序を、表示時間順で考えた場合に、既に符号化済みのピクチャから最も遠くなるピクチャを優先して決定し、各ピクチャを符号化を行う順に並び替える符号化制御部110と、ダイレクトモードにより符号化する際には、符号化対象ピクチャの後方参照ピクチャ中の、符号化対象ブロックと同じ位置にあるブロックの符号化の際に前方向動きベクトルを用いていた場合は、この前方向動きベクトルに対してスケーリングを行って、符号化対象ブロックの動きベクトルを生成するモード選択部109とを備える。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、動画像符号化方法および動画像復号化方法に関し、特に処理対象ピクチャに対して、処理済みのピクチャを参照ピクチャとして用いるピクチャ間予測符号化処理及びピクチャ間予測復号化処理を施す方法に関するものである。
【0002】
【従来の技術】
動画像符号化処理では、一般に動画像が有する空間方向および時間方向の冗長性を利用して情報量の圧縮が行われる。ここで一般に、空間方向の冗長性を利用する方法としては、周波数領域への変換が用いられ、時間方向の冗長性を利用する方法としては、ピクチャ間予測符号化処理が用いられる。ピクチャ間予測符号化処理では、あるピクチャを符号化する際に、符号化処理の対象となる符号化対象ピクチャに対して表示時間順で前方または後方にある符号化処理済みのピクチャを、符号化対象ピクチャに対応する参照ピクチャとする。そして、その参照ピクチャに対する符号化対象ピクチャの動き量を検出し、この動き量に基づいて動き補償処理を行って得られた画像データと符号化対象ピクチャの画像データとの差分を取ることにより時間方向の冗長性を取り除く。さらに、この差分値に対して空間方向の冗長度を取り除くことにより、符号化対象ピクチャに対する情報量の圧縮を行う。
【0003】
現在標準化中のH.264と呼ばれる動画像符号化方式では、ピクチャ間予測符号化処理を行わない、すなわちピクチャ内符号化処理を行うピクチャをIピクチャと呼ぶ。また、表示時間順で符号化対象ピクチャの前方または後方にある既に処理済みの1つのピクチャを参照してピクチャ間予測符号化が行われるピクチャをPピクチャと呼び、表示時間順で符号化対象ピクチャの前方または後方にある既に処理済みの2つのピクチャを参照してピクチャ間予測符号化が行われるピクチャをBピクチャと呼ぶ(例えば、非特許文献1参照)。
【0004】
図20(a) は、上記の動画像符号化方式における、各ピクチャと、対応する参照ピクチャとの関係を示す図であり、図20(b) は符号化により生成された符号列の順序を示す図である。
【0005】
ピクチャI1はIピクチャであり、ピクチャP5、P9、P13は、Pピクチャであり、ピクチャB2,B3,B4、B6、B7、B8、B10、B11、B12は、Bピクチャである。つまり、PピクチャP5、P9、P13は、矢印で示すように、それぞれ、IピクチャI1、PピクチャP5,PピクチャP9を参照ピクチャとして用いてピクチャ間予測符号化が施されるものである。
【0006】
また、BピクチャB2、B3、B4はそれぞれ、矢印で示すように、IピクチャI1及びPピクチャP5を参照ピクチャとして用いてピクチャ間予測符号化が施されるもの、BピクチャB6、B7、B8はそれぞれ、矢印で示すように、PピクチャP5及びPピクチャB9を参照ピクチャとして用いてピクチャ間予測符号化が施されるもの、BピクチャB10、B11、B12はそれぞれ、矢印で示すように、PピクチャP9及びPピクチャP13を参照ピクチャとして用いてピクチャ間予測符号化が施されるものである。
【0007】
以上の符号化の際には、参照ピクチャとして用いられるピクチャは、そのピクチャを参照するピクチャよりも先行して符号化される。したがって、上記の符号化により生成された符号列は、図20(b) に示すようなピクチャの順序となる。
【0008】
ところで、H.264方式の動画像符号化方式では、Bピクチャの符号化において、ダイレクトモードと呼ぶ符号化モードを選択することができる。ダイレクトモードにおけるフレーム間予測方法を、図21を用いて説明する。図21はダイレクトモードにおける動きベクトルを示す説明図であり、ピクチャB6のブロックaをダイレクトモードで符号化する場合を示している。この場合、ピクチャB6の後方にある参照ピクチャであるピクチャP9中の、ブロックaと同じ位置にあるブロックbを符号化した際に用いた動きベクトルcを利用する。動きベクトルcは、ブロックbが符号化された際に用いられた動きベクトルであり、ピクチャP5を参照している。ブロックaは、動きベクトルcと平行な動きベクトルを用いて、前方向参照ピクチャであるピクチャP5と、後方向参照ピクチャであるピクチャP9とから参照ブロックを取得し、2方向予測を行って符号化される。すなわち、ブロックaを符号化する際に用いられる動きベクトルは、ピクチャP5に対しては動きベクトルd、ピクチャP9に対しては動きベクトルeとなる。
【0009】
【非特許文献1】
ISO/IEC 14496−2「Information technology −Coding of audio−visualobjects −Part2: Visual」pp.218−219
【0010】
【発明が解決しようとする課題】
しかしながら、上記のようにBピクチャに対してIピクチャやPピクチャを参照するピクチャ間予測符号化処理を施す際に、符号化対象ピクチャと参照ピクチャとの間の時間的距離が長くなる場合があり、このような場合には、符号化効率の低下を招くこととなる。特にBピクチャの挿入枚数、つまり、隣合うIピクチャとPピクチャとの間、あるいは最も近い位置にある2つのPピクチャの間に配置されるBピクチャの数が多くなった場合、符号化効率の低下が顕著となる。
【0011】
そこで、本発明は上記のような問題点を解決するためになされたものであり、IピクチャとPピクチャとの間、あるいはPピクチャ間に挿入されるBピクチャの枚数が多くなった場合でも、Bピクチャの符号化効率の劣化を回避することができる動画像符号化方法および動画像復号化方法を提供することを目的とする。また、ダイレクトモードにおける符号化効率を向上させることができる動画像符号化方法および動画像復号化方法を提供することを目的とする。
【0012】
【課題を解決するための手段】
上記目的を達成するために、本発明に係る動画像符号化方法は、動画像を構成する各ピクチャに対応する画像データを符号化して符号列を生成する動画像符号化方法であって、符号化の対象となる対象ピクチャが、ピクチャ内符号化を行うブロックのみを有するIピクチャ、既に符号化済みであるピクチャを第1参照ピクチャとして用いる1方向参照によるピクチャ間予測符号化を行うブロックを有するPピクチャ、既に符号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測符号化を行うブロックを有するBピクチャのいずれかとして符号化を行う符号化ステップを含み、前記符号化ステップは、前記IピクチャまたはPピクチャ間に挟まれる複数の連続した前記Bピクチャの符号化順序を、表示時間順とは異なる順序に決定する制御ステップを含むことを特徴とする。
【0013】
これによって、Bピクチャを符号化する際に、より表示時間順で近傍のピクチャを参照ピクチャとして用いることができるので、動き補償の際の予測効率を向上して、符号化効率を向上することができる。
【0014】
また、本発明に係る動画像符号化方法は、動画像を構成する各ピクチャに対応する画像データを符号化して符号列を生成する動画像符号化方法であって、符号化の対象となる対象ピクチャを、少なくとも、既に符号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測符号化を行うブロックを有するBピクチャとして符号化を行う符号化ステップを含み、前記符号化ステップでは、符号化対象であるBピクチャの符号化対象ブロックを、既に符号化済みであるブロックの有する動きベクトルに基づく、前記符号化対象ブロックの動きベクトルによって動き補償するダイレクトモードとして符号化する場合に、前記符号化対象ブロックと同一位置にある前記第2参照ピクチャ内のブロックを符号化した際に用いた当該ブロックが参照する第1参照ピクチャに基づく第1動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングすることにより、前記符号化対象ブロックを動き補償する際の動きベクトルを得ることを特徴とする。
【0015】
これによって、ダイレクトモードが選択された場合には、第2参照ピクチャの第1動きベクトルに対してスケーリングを行うので、動きベクトルの情報を符号列に付加する必要がなく、かつ予測効率を向上させることができる。
【0016】
また、符号化対象であるBピクチャの符号化対象ブロックをダイレクトモードとして符号化する場合に、前記符号化対象ブロックと同一位置にある前記第2参照ピクチャ内のブロックを符号化した際に用いた当該ブロックが参照する第2参照ピクチャに基づく第2動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングすることにより、前記符号化対象ブロックを動き補償する際の動きベクトルを得てもよい。
【0017】
これによって、ダイレクトモードが選択された場合には、第2参照ピクチャの第2動きベクトルに対してスケーリングを行うので、動きベクトルの情報を符号列に付加する必要がなく、かつ予測効率を向上させることができる。
【0018】
また、符号化対象であるBピクチャの符号化対象ブロックをダイレクトモードとして符号化する場合に、前記符号化対象ブロックと同一位置にある前記第2参照ピクチャ内のブロックがダイレクトモードで符号化されているときには、前記第2参照ピクチャ内のブロックを符号化する際に実質的に用いた当該ブロックが参照する第1参照ピクチャに基づく第1動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングを行うことにより、前記符号化対象ブロックを動き補償する際の動きベクトルを得てもよい。
【0019】
これによって、ダイレクトモードが選択された場合には、第2参照ピクチャの実質的に用いた第1動きベクトルに対してスケーリングを行うので、動きベクトルの情報を符号列に付加する必要がなく、かつ予測効率を向上させることができる。
【0020】
また、符号化対象であるBピクチャの符号化対象ブロックをダイレクトモードとして符号化する場合に、前記符号化対象ブロックと同一位置にある後方Pピクチャ内のブロックを符号化した際に用いた当該ブロックが参照する第1参照ピクチャに基づく第1動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングを行うことにより、前記符号化対象ブロックを動き補償する際の動きベクトルを得てもよい。
【0021】
これによって、ダイレクトモードが選択された場合には、後方Pピクチャの第1動きベクトルに対してスケーリングを行うので、動きベクトルの情報を符号列に付加する必要がなく、かつ予測効率を向上させることができる。
【0022】
また、符号化対象であるBピクチャの符号化対象ブロックをダイレクトモードとして符号化する場合に、前記符号化対象ブロックと同一位置にある前記第2参照ピクチャ内のブロックが少なくとも第1参照ピクチャに基づく第1動きベクトルを用いて符号化されている場合は、前記第1動きベクトルに対して、前記同一位置にある前記第2参照ピクチャ内のブロックが第2参照ピクチャに基づく第2動きベクトルのみを用いて符号化されている場合は、前記第2動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングすることにより、前記符号化対象ブロックを動き補償する際の動きベクトルを得てもよい。
【0023】
これによって、ダイレクトモードが選択された場合には、第2参照ピクチャが第1動きベクトルを有していれば、この第1動きベクトルに対してスケーリングを行い、また、第2参照ピクチャが第1動きベクトルを有さず第2動きベクトルのみを有していれば、この第2動きベクトルに対してスケーリングを行うので、動きベクトルの情報を符号列に付加する必要がなく、かつ予測効率を向上させることができる。
【0024】
また、本発明に係る動画像復号化方法は、動画像を構成する各ピクチャに対応する画像データを符号化して生成された符号列を復号化する動画像復号化方法であって、復号化の対象となる対象ピクチャを、既に復号化済みのピクチャを参照ピクチャとして用いてピクチャ間予測復号化を行う復号化ステップを含み、前記復号化ステップでは、既に復号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測復号化を行う際に、前記第1参照ピクチャおよび第2参照ピクチャとして、それぞれ表示時間順で最も近いピクチャを少なくとも含む符号列を復号化することを特徴とする。
【0025】
これによって、2方向参照によるピクチャ間予測符号化処理を行う際に第1参照ピクチャおよび第2参照ピクチャとして、表示時間順に近傍に位置するピクチャを用いて符号化されて生成された符号列を、復号化する際に正しく復号化処理を行うことができる。
【0026】
また、本発明に係る動画像復号化方法は、動画像を構成する各ピクチャに対応する画像データを符号化して生成された符号列を復号化する動画像復号化方法であって、復号化の対象となる対象ピクチャを、既に復号化済みのピクチャを参照ピクチャとして用いてピクチャ間予測復号化を行う復号化ステップを含み、前記復号化ステップでは、復号化対象ピクチャが、既に復号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測復号化を行うブロックを有するピクチャであり、かつ、復号化対象ブロックを既に復号化済みであるブロックの有する動きベクトルに基づく、前記復号化対象ブロックの動きベクトルによって動き補償するダイレクトモードとして復号化する場合に、前記復号化対象ブロックと同一位置にある前記第2参照ピクチャ内のブロックを復号化した際に用いた当該ブロックが参照する第1参照ピクチャに基づく第1動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングを行うことにより、前記復号化対象ブロックを動き補償する際の動きベクトルを得ることを特徴とする。
【0027】
これによって、ダイレクトモードが選択された場合には、第2参照ピクチャの第1動きベクトルに対してスケーリングを行うので、復号化する際に正しく復号化処理を行うことができる。
【0028】
また、復号化対象ピクチャが2方向参照によるピクチャ間予測復号化を行うブロックを有するピクチャであり、かつ、復号化対象ブロックをダイレクトモードとして復号化する場合に、前記復号化対象ブロックと同一位置にある前記第2参照ピクチャ内のブロックを復号化した際に用いた当該ブロックが参照する第2参照ピクチャに基づく第2動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングを行うことにより、前記復号化対象ブロックを動き補償する際の動きベクトルを得てもよい。
【0029】
これによって、ダイレクトモードが選択された場合には、第2参照ピクチャの第2動きベクトルに対してスケーリングを行うので、復号化する際に正しく復号化処理を行うことができる。
【0030】
また、復号化対象ピクチャが2方向参照によるピクチャ間予測復号化を行うブロックを有するピクチャであり、かつ、復号化対象ブロックをダイレクトモードとして復号化する場合に、前記復号化対象ブロックと同一位置にある前記第2参照ピクチャ内のブロックがダイレクトモードで復号化されているときには、前記第2参照ピクチャ内のブロックを復号化する際に実質的に用いた当該ブロックが参照する第1参照ピクチャに基づく第1動きベクトルに対して、参照ピクチャの表示順序を示す情報の差を用いてスケーリングを行うことにより、前記復号化対象ブロックを動き補償する際の動きベクトルを得てもよい。
【0031】
これによって、ダイレクトモードが選択された場合には、第2参照ピクチャの実質的に用いた第1動きベクトルに対してスケーリングを行うので、復号化する際に正しく復号化処理を行うことができる。
【0032】
また、復号化対象ピクチャが2方向参照によるピクチャ間予測復号化を行うブロックを有するピクチャであり、かつ、復号化対象ブロックをダイレクトモードとして復号化する場合に、表示時間順で後方に位置する、既に復号化済みであるピクチャを第1参照ピクチャとして用いる1方向参照によるピクチャ間予測復号化を行うピクチャ内の、前記復号化対象ブロックと同一位置にあるブロックを復号化した際に用いた当該ブロックが参照する第1参照ピクチャに基づく第1動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングを行うことにより、前記復号化対象ブロックを動き補償する際の動きベクトルを得てもよい。
【0033】
これによって、ダイレクトモードが選択された場合には、1方向参照によるピクチャ間予測復号化を行うピクチャの第1動きベクトルに対してスケーリングを行うので、復号化する際に正しく復号化処理を行うことができる。
【0034】
なお、本発明は、このような動画像符号化方法および動画像復号化方法として実現することができるだけでなく、このような動画像符号化方法および動画像復号化方法が含む特徴的なステップを手段として備える動画像符号化装置および動画像復号化装置として実現できる。また、動画像符号化方法により符号化した符号列として実現し、CD−ROM等の記録媒体やインターネット等の伝送媒体を介して配信することができる。
【0035】
【発明の実施の形態】
本発明の実施の形態について、図面を参照しながら説明する。
(実施の形態1)
図1は、本発明に係る動画像符号化方法を用いた動画像符号化装置の一実施の形態の構成を示すブロック図である。
【0036】
動画像符号化装置は、図1に示すように並べ替え用メモリ101、差分演算部102、予測誤差符号化部103、符号列生成部104、予測誤差復号化部105、加算演算部106、参照ピクチャ用メモリ107、動きベクトル検出部108、モード選択部109、符号化制御部110、スイッチ111〜115、および動きベクトル記憶部116を備えている。
【0037】
並べ替え用メモリ101は、表示時間順にピクチャ単位で入力された動画像を格納する。符号化制御部110は、並べ替え用メモリ101に格納された各ピクチャを符号化が行われる順に並び替えを行う。また、符号化制御部110は、動きベクトル記憶部116への動きベクトルの記憶動作を制御する。
【0038】
動きベクトル検出部108は、符号化済みの復号化画像データを参照ピクチャとして用いて、そのピクチャ内の探索領域において最適と予測される位置を示す動きベクトルの検出を行う。モード選択部109は、動きベクトル検出部108で検出された動きベクトルを用いて、マクロブロックの符号化モードを決定し、この符号化モードに基づいて予測画像データを生成する。差分演算部102は、並べ替え用メモリ101より読み出された画像データと、モード選択部109より入力された予測画像データとの差分を演算し、予測誤差画像データを生成する。
【0039】
予測誤差符号化部103は、入力された予測誤差画像データに対して周波数変換や量子化等の符号化処理を行い、符号化データを生成する。符号列生成部104は、入力された符号化データに対して可変長符号化等を行い、さらにモード選択部109から入力された動きベクトルの情報、符号化モードの情報、およびその他の関連情報等を付加することにより符号列を生成する。
【0040】
予測誤差復号化部105は、入力された符号化データに対して逆量子化や逆周波数変換等の復号化処理を行い、復号化差分画像データを生成する。加算演算部106は、予測誤差復号化部105より入力された復号化差分画像データと、モード選択部109より入力された予測画像データとを加算し、復号化画像データを生成する。参照ピクチャ用メモリ107は、生成された復号化画像データを格納する。
【0041】
図2はピクチャと相対インデックスの説明図である。相対インデックスは、参照ピクチャ用メモリ107に格納された参照ピクチャを一意に識別するために用いられ、図2に示すように各ピクチャに対応付けられている番号である。また、相対インデックスは、ブロックをピクチャ間予測により符号化する際に使用する参照ピクチャを指示するために使用される。
【0042】
図3は動画像符号化装置による動画像符号化信号フォーマットの概念図である。1ピクチャ分の符号化信号Picture は、ピクチャ先頭に含まれるヘッダ符号化信号Header、ダイレクトモードによるブロックの符号化信号Block1、ダイレクトモード以外のピクチャ間予測によるブロックの符号化信号Block2等から構成されている。また、ダイレクトモード以外のピクチャ間予測によるブロックの符号化信号Block2は、ピクチャ間予測に使用する2つの参照ピクチャを示すための第1相対インデックスRIdx1 および第2相対インデックスRIdx2 、第1動きベクトルMV1、第2動きベクトルMV2をこの順で有している。一方、ダイレクトモードによるブロックの符号化信号Block1は、第1相対インデックスRIdx1 、第2相対インデックスRIdx2 、第1動きベクトルMV1、第2動きベクトルMV2を有していない。第1相対インデックスRIdx1 、第2相対インデックスRIdx2 のいずれを使用するかは予測種別PredTypeにより判断することができる。また、第1相対インデックスRIdx1 は第1参照ピクチャを示し、第2相対インデックスRIdx2 は第2参照ピクチャを示している。すなわち、第1参照ピクチャであるか第2参照ピクチャであるかは、符号化列中のデータ位置で決まる。
【0043】
なお、表示時間順で前または後ろのいずれかにある、既に符号化済みであるピクチャを第1参照ピクチャとして用いる1方向参照によるピクチャ間予測符号化を行うピクチャがPピクチャであり、表示時間順で前または後ろのいずれかにある、既に符号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測符号化を行うピクチャがBピクチャであるが、本実施の形態では、第1参照ピクチャを前方向参照ピクチャとして、第2参照ピクチャを後方向参照ピクチャとして説明する。また、第1参照ピクチャおよび第2参照ピクチャそれぞれに対する動きベクトルである第1動きベクトル、第2動きベクトルを、それぞれ前方向動きベクトル、後方向動きベクトルとして説明する。
【0044】
次に、第1相対インデックス、第2相対インデックスの付与方法について図2(a) を用いて説明する。
第1相対インデックスの値には、まず、表示順序を示す情報において、符号化対象ピクチャより前の参照ピクチャに対し、符号化対象ピクチャに近い順より0から始まる値が割り当てられる。符号化対象より前の参照ピクチャ全てに対し0から始まる値が割り当てられたら、次に符号化対象ピクチャより後の参照ピクチャに対し、符号化対象ピクチャに近い順から続きの値が割り当てられる。
【0045】
第2相対インデックスの値には、まず、表示順序を示す情報において、符号化対象ピクチャより後の参照ピクチャに対し、符号化対象ピクチャに近い順より0から始まる値が割り当てられる。符号化対象より後の参照ピクチャ全てに対し0から始まる値が割り当てられたら、次に符号化対象ピクチャより前の参照ピクチャに対し、符号化対象ピクチャに近い順から続きの値が割り当てられる。
【0046】
例えば、図2(a) において、第1相対インデックスRIdx1が0で第2相対インデックスRidx2が1である場合、前方向参照ピクチャはピクチャ番号6のBピクチャであり、後方向参照ピクチャはピクチャ番号9のPピクチャである。ここでピクチャ番号は、表示順を示す番号である。
【0047】
ブロック中の相対インデックスは可変長符号語により表現され、値が小さいほど短い符号長のコードが割り当てられている。通常、ピクチャ間予測の参照ピクチャとして符号化対象ピクチャに最も近いピクチャが選択されるため、上記のように符号化対象ピクチャに近い順に相対インデックス値を割り当てれば符号化効率は高くなる。
【0048】
一方、符号化信号中のバッファ制御信号(図3に示すHeader内のRPSL)を用いて明示的に指示することにより、相対インデックスに対する参照ピクチャの割り当てを任意に変更することができる。この割り当ての変更により、第2相対インデックスが0の参照ピクチャを参照ピクチャ用メモリ107内の任意の参照ピクチャにすることも可能で、例えば、図2(b) に示すようにピクチャに対する相対インデックスの割り当てを変更することができる。
【0049】
次に、上記のように構成された動画像符号化装置の動作について説明する。
図4は、並べ替え用メモリ101におけるピクチャの順序を示す説明図であり、(a) 入力された順序、(b) 並び替えられた順序を示す説明図である。ここで、縦線はピクチャを示し、各ピクチャの右下に示す記号は、1文字目のアルファベットがピクチャタイプ(I、PまたはB)を示し、2文字目以降の数字が表示順を示すピクチャ番号を示している。
【0050】
入力画像は、例えば図4(a) に示すように表示時間順にピクチャ単位で並べ替え用メモリ101に入力される。並べ替え用メモリ101にピクチャが入力されると、符号化制御部110は、並べ替え用メモリ101内で入力された各ピクチャを、符号化が行われる順に並び替える。この符号化順への並び替えは、ピクチャ間予測符号化における参照関係に基づいて行われ、参照ピクチャとして用いられるピクチャが、参照ピクチャとして用いるピクチャよりも先に符号化されるように並び替えられる。
【0051】
ここで、Pピクチャは表示時間順で前方または後方にある、近傍の既に符号化済みのIまたはPピクチャを1つ参照するものとする。また、Bピクチャは表示時間順で前方または後方にある、近傍の既に符号化済みのピクチャを2つ参照するものとする。
【0052】
ピクチャの符号化順は、2つのPピクチャの間にあるBピクチャ(図4(a) の例では3枚)のうち、中央にあるピクチャから符号化を行い、その後Pピクチャに近いBピクチャを符号化するとする。例えばピクチャB6〜P9については、ピクチャP9、B7、B6、B8の順に符号化を行う。
【0053】
この場合、ピクチャB6〜P9の各ピクチャは、図4(a) に示す矢印の終点のピクチャが矢印に始点のピクチャを参照する。すなわち、ピクチャB7はピクチャP5、P9を、ピクチャB6はピクチャP5、B7を、ピクチャB8はピクチャB7、P9を参照する。またこの場合、符号化制御部110は、各ピクチャを図4(b) に示すように符号化が行われる順に並び替える。
【0054】
次に、並べ替え用メモリ101で並び替えが行われた各ピクチャは、動き補償の単位で読み出される。ここでは、動き補償の単位をマクロブロックと呼び、マクロブロックは水平16×垂直16画素の大きさであるとする。以下では、図4(a) に示すピクチャP9、B7、B6、B8の符号化処理について順に説明する。
【0055】
<ピクチャP9の符号化処理>
ピクチャP9はPピクチャであるので、表示時間順で前方または後方にある既に処理済みの1枚のピクチャを参照してピクチャ間予測符号化を行う。ピクチャP9の符号化においては、上記のように参照ピクチャはピクチャP5となる。ピクチャP5は、既に符号化が終了しており、復号化画像が参照ピクチャ用メモリ107に蓄積されている。Pピクチャの符号化においては、符号化制御部110は、スイッチ113、114、115がオンになるように各スイッチを制御する。これにより、並べ替え用メモリ101から読み出されたピクチャP9のマクロブロックは、まず動きベクトル検出部108、モード選択部109、および差分演算部102に入力される。
【0056】
動きベクトル検出部108は、参照ピクチャ用メモリ107に蓄積されたピクチャP5の復号化画像データを参照ピクチャとして用い、ピクチャP9のマクロブロックに対して、動きベクトルの検出を行う。そして、動きベクトル検出部108は、検出した動きベクトルをモード選択部109に対して出力する。
【0057】
モード選択部109は、動きベクトル検出部108で検出された動きベクトルを用いて、ピクチャP9のマクロブロックの符号化モードを決定する。ここで符号化モードとは、マクロブロックをどのような方法で符号化するかを示すものである。Pピクチャの場合には、例えば、ピクチャ内符号化、動きベクトルを用いたピクチャ間予測符号化、動きベクトルを用いない(動きを0として扱う)ピクチャ間予測符号化の中から、いずれの方法で符号化するかを決める。符号化モードの決定においては、一般的には、少ないビット量でより符号化誤差が小さくなるような方法を選択する。
【0058】
モード選択部109は、決定した符号化モードを符号列生成部104に対して出力する。このとき、モード選択部109で決定された符号化モードが、ピクチャ間予測符号化である場合には、そのピクチャ間予測符号化で用いられる動きベクトルを符号列生成部104に対して出力し、さらに動きベクトル記憶部116に記憶する。
【0059】
また、モード選択部109は、決定した符号化モードに基づいて予測画像データを生成し、この予測画像データを差分演算部102と加算演算部106とに出力する。但し、モード選択部109は、ピクチャ内符号化を選択した場合には、予測画像データを出力しない。また、モード選択部109は、ピクチャ内符号化を選択した場合には、スイッチ111をa側に、スイッチ112をc側に接続するように制御し、ピクチャ間予測符号化を選択した場合には、スイッチ111をb側に、スイッチ112をd側に接続するように制御する。以下では、モード選択部109でピクチャ間予測符号化が選択された場合について説明する。
【0060】
差分演算部102には、並べ替え用メモリ101から読み出されたピクチャP9のマクロブロックの画像データと、モード選択部109から出力された予測画像データとが入力される。差分演算部102は、ピクチャP9のマクロブロックの画像データと予測画像データとの差分を演算し、予測誤差画像データを生成して予測誤差符号化部103へ出力する。
【0061】
予測誤差符号化部103は、入力された予測誤差画像データに対して周波数変換や量子化等の符号化処理を施すことにより、符号化データを生成して符号列生成部104および予測誤差復号化部105へ出力する。ここで、周波数変換や量子化の処理は、例えば水平8×垂直8画素や、水平4×垂直4画素の単位で行うものとする。
【0062】
符号列生成部104は、入力された符号化データに対して、可変長符号化等を施し、さらに動きベクトルや符号化モード等の情報やヘッダ情報等を付加することにより符号列を生成し、出力する。
【0063】
一方、予測誤差復号化部105は、入力された符号化データに対して、逆量子化や逆周波数変換等の復号化処理を施し、復号化差分画像データを生成して加算演算部106へ出力する。加算演算部106は、復号化差分画像データと、モード選択部109より入力された予測画像データとを加算することにより、復号化画像データを生成し、参照ピクチャ用メモリ107に蓄積する。
【0064】
以上の処理により、ピクチャP9の1マクロブロックの処理が完結する。同様の処理により、ピクチャP9の残りのマクロブロックに対しても符号化処理が行われる。そして、ピクチャP9の全てのマクロブロックに対して処理が終わると、次にピクチャB7の符号化処理が行われる。
【0065】
<ピクチャB7の符号化処理>
ピクチャB7の参照画像は、前方向参照ピクチャがピクチャP5、後方向参照ピクチャがP9となる。ピクチャB7は、他のピクチャの符号化の際に、参照ピクチャとして用いられるので、符号化制御部110は、スイッチ113、114、115がオンになるように各スイッチを制御する。よって、並べ替え用メモリ101から読み出されたピクチャB7のマクロブロックは、動きベクトル検出部108、モード選択部109、および差分演算部102に入力される。
【0066】
動きベクトル検出部108は、参照ピクチャ用メモリ107に蓄積されたピクチャP5の復号化画像データを前方向参照ピクチャとして、ピクチャP9の復号化画像データを後方向参照ピクチャとして用い、ピクチャB7のマクロブロックに対して、前方向動きベクトルと後方向動きベクトルの検出を行う。そして、動きベクトル検出部108は、検出した動きベクトルをモード選択部109に対して出力する。
【0067】
モード選択部109は、動きベクトル検出部108で検出された動きベクトルを用いて、ピクチャB7のマクロブロックの符号化モードを決定する。ここで、Bピクチャの符号化モードは、例えば、ピクチャ内符号化、前方向動きベクトルを用いたピクチャ間予測符号化、後方向動きベクトルを用いたピクチャ間予測符号化、2方向動きベクトルを用いたピクチャ間予測符号化、ダイレクトモードから選択することができるとする。
【0068】
ここで、ダイレクトモードで符号化する場合の動作について、図5(a) を用いて説明する。図5(a) はダイレクトモードにおける動きベクトルを示す説明図であり、ピクチャB7のブロックaをダイレクトモードで符号化する場合を示している。この場合、ピクチャB7の後方にある参照ピクチャであるピクチャP9中の、ブロックaと同じ位置にあるブロックbを符号化した際に用いた動きベクトルcを利用する。動きベクトルcは、動きベクトル記憶部116に記憶されている。ブロックaは、動きベクトルcを利用して求めた動きベクトルを用いて、前方向参照ピクチャであるピクチャP5と、後方向参照ピクチャであるピクチャP9とから2方向予測を行う。例えば、動きベクトルcを利用する方法としては、動きベクトルcに平行な動きベクトルを生成する方法がある。この場合のブロックaを符号化する際に用いる動きベクトルは、ピクチャP5に対しては動きベクトルd、ピクチャP9に対しては動きベクトルeとなる。
【0069】
この場合、前方向動きベクトルである動きベクトルdの大きさをMVF、後方向動きベクトルである動きベクトルeの大きさをMVB、動きベクトルcの大きさをMV、現在のピクチャ(ピクチャB7)の後方向参照ピクチャ(ピクチャP9)と、その後方向参照ピクチャのブロックが参照しているピクチャ(ピクチャP5)との時間的距離をTRD、現在のピクチャ(ピクチャB7)と前方向参照ピクチャ(ピクチャP5)との時間的距離をTRFとすると、動きベクトルdの大きさMVF、動きベクトルeの大きさMVBは、それぞれ(式1)、(式2)で求められる。なお、各ピクチャ間の時間的距離については、例えば各ピクチャに付される表示順序(位置)を示す情報、またはその情報の差に基づいて決定することができる。
MVF=MV×TRF/TRD −−− 式1
MVB=(TRF−TRD)×MV/TRD −−− 式2
【0070】
ここで、MVF、MVBは、動きベクトルの水平成分、垂直成分のそれぞれを表現しており、正負符号は動きベクトルの方向を示すものとする。
【0071】
さて、符号化モードの選択においては、一般的に、少ないビット量でより符号化誤差が小さくなるような方法を選択する。モード選択部109は、決定した符号化モードを符号列生成部104に対して出力する。このとき、モード選択部109で決定された符号化モードが、ピクチャ間予測符号化である場合には、そのピクチャ間予測符号化で用いられる動きベクトルを符号列生成部104に対して出力し、さらに動きベクトル記憶部116に記憶する。また、ダイレクトモードが選択された場合には、(式1)、(式2)により計算し求めた、ダイレクトモードで用いた動きベクトルを動きベクトル記憶部116に記憶する。
【0072】
また、モード選択部109は、決定した符号化モードに基づいて予測画像データを生成し、この予測画像データを差分演算部102と加算演算部106とに出力する。但し、モード選択部109は、ピクチャ内符号化を選択した場合には、予測画像データを出力しない。また、モード選択部109は、ピクチャ内符号化を選択した場合には、スイッチ111をa側に、スイッチ112をc側に接続するように制御し、ピクチャ間予測符号化やダイレクトモードを選択した場合には、スイッチ111をb側に、スイッチ112をd側に接続するように制御する。以下では、モード選択部109でピクチャ間予測符号化やダイレクトモードが選択された場合について説明する。
【0073】
差分演算部102には、並べ替え用メモリ101から読み出されたピクチャB7のマクロブロックの画像データと、モード選択部109から出力された予測画像データが入力される。差分演算部102は、ピクチャB7のマクロブロックの画像データと予測画像データとの差分を演算し、予測誤差画像データを生成して予測誤差符号化部103へ出力する。
【0074】
予測誤差符号化部103は、入力された予測誤差画像データに対して周波数変換や量子化等の符号化処理を施すことにより、符号化データを生成して符号列生成部104および予測誤差復号化部105へ出力する。
【0075】
符号列生成部104は、入力された符号化データに対して、可変長符号化等を施し、さらに動きベクトルや符号化モード等の情報を付加することにより符号列を生成し、出力する。
【0076】
一方、予測誤差復号化部105は、入力された符号化データに対して、逆量子化や逆周波数変換等の復号化処理を施し、復号化差分画像データを生成して加算演算部106へ出力する。加算演算部106は、復号化差分画像データと、モード選択部109より入力された予測画像データとを加算することにより、復号化画像データを生成し、参照ピクチャ用メモリ107に蓄積する。
【0077】
以上の処理により、ピクチャB7の1マクロブロックの処理が完結する。同様の処理により、ピクチャB7の残りのマクロブロックに対して、符号化処理が行われる。そして、ピクチャB7の全てのマクロブロックに対する処理が終わると、次にピクチャB6の符号化処理が行われる。
【0078】
<ピクチャB6の符号化処理>
ピクチャB6はBピクチャであるので、表示時間順で前方または後方にある既に処理済みの2枚のピクチャを参照してピクチャ間予測符号化を行う。このピクチャB6の参照画像は、上記のように前方向参照ピクチャがピクチャP5、後方向参照ピクチャがB7となる。ピクチャB6は、他のピクチャの符号化を行う際に、参照ピクチャとして用いられない。よって、符号化制御部110は、スイッチ113をオンに、スイッチ114、115をオフにするように各スイッチを制御する。これにより、並べ替え用メモリ101から読み出されたピクチャB6のマクロブロックは、動きベクトル検出部108、モード選択部109、および差分演算部102に入力される。
【0079】
動きベクトル検出部108は、参照ピクチャ用メモリ107に蓄積されたピクチャP5の復号化画像データを前方向参照ピクチャとして、ピクチャB7の復号化画像データを後方向参照ピクチャとして用い、ピクチャB6のマクロブロックに対して、前方向動きベクトルと後方向動きベクトルの検出を行う。そして、動きベクトル検出部108は、検出した動きベクトルをモード選択部109に対して出力する。
【0080】
モード選択部109は、動きベクトル検出部108で検出された動きベクトルを用いて、ピクチャB6のマクロブロックの符号化モードを決定する。
ここで、ピクチャB6のマクロブロックに対して、ダイレクトモードを用いる場合の動作について、第一の例を図5(b) を用いて説明する。図5(b) はダイレクトモードにおける動きベクトルを示す説明図であり、ピクチャB6のブロックaをダイレクトモードで符号化する場合を示している。この場合、ピクチャB6の後方にある参照ピクチャであるピクチャB7中の、ブロックaと同じ位置にあるブロックbを符号化した際に用いた動きベクトルを利用する。ここではブロックbは、前方向参照のみ、または2方向参照により符号化されたとし、その前方向動きベクトルを動きベクトルcとする。この動きベクトルcは、動きベクトル記憶部116に記憶されているとする。ブロックaは、動きベクトルcを利用して生成した動きベクトルを用いて、前方向参照ピクチャであるピクチャP5と、後方向参照ピクチャであるピクチャB7とから2方向予測を行う。例えば、上記ピクチャB7の場合と同様に動きベクトルcに平行な動きベクトルを生成する方法を用いれば、ブロックaを符号化する際に用いる動きベクトルは、ピクチャP5に対しては動きベクトルd、ピクチャB7に対しては動きベクトルeとなる。
【0081】
この場合、前方向動きベクトルである動きベクトルdの大きさをMVF、後方向動きベクトルである動きベクトルeの大きさをMVB、動きベクトルcの大きさをMV、現在のピクチャ(ピクチャB6)の後方向参照ピクチャ(ピクチャB7)と、その後方向参照ピクチャのブロックbが参照しているピクチャ(ピクチャP5)との時間的距離をTRD、現在のピクチャ(ピクチャB6)と前方向参照ピクチャ(ピクチャP5)との時間的距離をTRFとすると、動きベクトルdの大きさMVF、動きベクトルeの大きさMVBは、それぞれ上記(式1)、(式2)で求められる。なお、各ピクチャ間の時間的距離については、例えば各ピクチャに付される表示順序を示す情報、またはその情報の差に基づいて決定することができる。
【0082】
このようにダイレクトモードにおいて、後方向参照ピクチャであるBピクチャの前方向動きベクトルに対してスケーリングを行うことにより、動きベクトルの情報を送る必要がなく、かつ動き予測効率を向上させることができる。これにより符号化効率を向上させることができる。さらに、前方向参照ピクチャおよび後方向参照ピクチャとして、利用可能な限り表示時間順で最近傍の参照ピクチャを用いることにより、符号化効率を向上させることができる。
【0083】
次に、ダイレクトモードを用いる場合の第二の例を図5(b) を用いて説明する。この場合、ピクチャB6の後方にある参照ピクチャであるピクチャB7中の、ブロックaと同じ位置にあるブロックbを符号化した際に用いられた動きベクトルを利用する。ここではブロックbは、ダイレクトモードで符号化されたとし、そのときに実質的に用いられた前方向動きベクトルを動きベクトルcとする。すなわち、動きベクトルcは、ピクチャB7が後方向参照するピクチャP9内で、ブロックbと同一位置にあるブロックiを符号化する際に用いた動きベクトルをスケーリングすることにより得られた動きベクトルである。この動きベクトルcは、動きベクトル記憶部116に記憶されているものを用いるか、またはブロックbをダイレクトモードで符号化する際に用いたピクチャP9内のブロックiの動きベクトルを動きベクトル記憶部116から読み出して計算して求める。なお、モード選択部109は、ピクチャB7のブロックbをダイレクトモードで符号化する際にスケーリング処理により求めた動きベクトルを、動きベクトル記憶部116に記憶する場合は、前方向動きベクトルだけを記憶すればよい。ブロックaは、動きベクトルcを利用して生成した動きベクトルを用いて、前方向参照ピクチャであるピクチャP5と、後方向参照ピクチャB7とから2方向予測を行う。例えば、上記第一の例の場合と同様に動きベクトルcに平行な動きベクトルを生成する方法を用いれば、ブロックaを符号化する際に用いる動きベクトルは、ピクチャP5に対しては動きベクトルd、ピクチャB7に対しては動きベクトルeとなる。
【0084】
この場合、ブロックaに対する前方向動きベクトルである動きベクトルdの大きさMVFと、後方向動きベクトルである動きベクトルeの大きさMVBとは、ダイレクトモードの第一の例と同様に、(式1)、(式2)を用いて求めることができる。
【0085】
このようにダイレクトモードにおいて、後方向参照ピクチャであるBピクチャのダイレクトモードで実質的に用いた前方向動きベクトルに対してスケーリングを行うので、動きベクトルの情報を送る必要がなく、かつ後方向参照ピクチャ内の同一位置のブロックがダイレクトモードで符号化されている場合でも、動き予測効率を向上させることができる。これにより符号化効率を向上させることができる。さらに、前方向および後方向の参照ピクチャとして、表示時間順で利用可能な最近傍の参照ピクチャを用いることにより、符号化効率を向上させることができる。
【0086】
次に、ダイレクトモードを用いる場合の第三の例を図5(c) を用いて説明する。図5(c) はダイレクトモードにおける動きベクトルを示す説明図であり、ピクチャB6のブロックaをダイレクトモードで符号化する場合を示している。この場合、ピクチャB6の後方にある参照ピクチャであるピクチャB7中の、ブロックaと同じ位置にあるブロックbを符号化する際に用いられた動きベクトルを利用する。ここでブロックbは、後方向動きベクトルのみを用いて符号化されているとし、その後方向動きベクトルが動きベクトルfであるとする。動きベクトルfは、動きベクトル記憶部116に記憶されているとする。ブロックaは、動きベクトルfを利用して生成した動きベクトルを用いて、前方向参照ピクチャであるピクチャP5と、後方向参照ピクチャであるピクチャB7とから2方向予測を行う。例えば、上記第一の例の場合と同様に動きベクトルfに平行な動きベクトルを生成する方法を用いれば、ブロックaを符号化する際に用いる動きベクトルは、ピクチャP5に対しては動きベクトルg、ピクチャB7に対しては動きベクトルhとなる。
【0087】
この場合、前方向動きベクトルである動きベクトルgの大きさをMVF、後方向動きベクトルである動きベクトルhの大きさをMVB、動きベクトルfの大きさをMV、現在のピクチャ(ピクチャB6)の後方向参照ピクチャ(ピクチャB7)と、その後方向参照ピクチャのブロックが参照しているピクチャ(ピクチャP9)との時間的距離をTRD、現在のピクチャ(ピクチャB6)と前方向参照ピクチャ(ピクチャP5)との時間的距離をTRF、現在のピクチャ(ピクチャB6)と後方向参照ピクチャ(ピクチャB7)との時間的距離をTRB、とすると、動きベクトルgの大きさMVF、動きベクトルhの大きさMVBは、それぞれ(式3)、(式4)で求められる。
MVF=−TRF×MV/TRD −−− 式3
MVB=TRB×MV/TRD −−− 式4
【0088】
このようにダイレクトモードにおいて、後方向参照ピクチャであるBピクチャの同一位置のブロックを符号化する際に用いた後方向動きベクトルに対してスケーリングを行うので、動きベクトルの情報を送る必要がなく、かつ後方向参照ピクチャ内の同一位置のブロックが後方向動きベクトルしか有さない場合でも、予測効率を向上させることができる。これにより、符号化効率を向上させることができる。さらに、前方向および後方向参照ピクチャとして、表示時間順で利用可能な最近傍の参照ピクチャを用いることにより、符号化効率を向上させることができる。
【0089】
次に、ダイレクトモードを用いる場合の第四の例を図5(d) を用いて説明する。図5(d) はダイレクトモードにおける動きベクトルを示す説明図であり、ピクチャB6のブロックaをダイレクトモードで符号化する場合を示している。この場合、ピクチャB6の後方にある参照ピクチャであるピクチャB7中の、ブロックaと同じ位置にあるブロックbを符号化する際に用いられた動きベクトルを利用する。ここでブロックbは、第三の例と同様に後方向動きベクトルのみを用いて符号化されているとし、その後方向動きベクトルが動きベクトルfであるとする。動きベクトルfは、動きベクトル記憶部116に記憶されているとする。ブロックaは、動きベクトルfを利用して生成した動きベクトルを用いて、動きベクトルfが参照するピクチャであるピクチャP9と、後方向参照ピクチャであるピクチャB7とから2方向予測を行う。例えば、上記第一の例の場合と同様に動きベクトルfに平行な動きベクトルを生成する方法を用いれば、ブロックaを符号化する際に用いる動きベクトルは、ピクチャP9に対しては動きベクトルg、ピクチャB7に対しては動きベクトルhとなる。
【0090】
この場合、前方向動きベクトルである動きベクトルgの大きさをMVF、後方向動きベクトルである動きベクトルhの大きさをMVB、動きベクトルfの大きさをMV、現在のピクチャ(ピクチャB6)の後方向参照ピクチャ(ピクチャB7)と、その後方向参照ピクチャのブロックが参照しているピクチャ(ピクチャP9)との時間的距離をTRD、現在のピクチャ(ピクチャB6)と、後方向参照ピクチャ(ピクチャB7)のブロックが参照しているピクチャ(ピクチャP9)との時間的距離をTRFとすると、動きベクトルgの大きさMVF、動きベクトルhの大きさMVBは、それぞれ(式1)、(式2)で求められる。
【0091】
このようにダイレクトモードにおいて、後方向参照ピクチャであるBピクチャの同一位置のブロックを符号化する際に用いた後方向動きベクトルに対してスケーリングを行うことにより、動きベクトルの情報を送る必要がなく、かつ後方向参照ピクチャ内の同一位置のブロックが後方向動きベクトルしか有さない場合でも、予測効率を向上させることができる。これにより、符号化効率を向上させることができる。さらに、前方向参照ピクチャとして後方向動きベクトルが参照しているピクチャを、後方向参照ピクチャとして表示時間順で利用可能な最近傍の参照ピクチャを用いることにより、符号化効率を向上させることができる。
【0092】
次に、ダイレクトモードを用いる場合の第五の例を図6(a) を用いて説明する。図6(a) はダイレクトモードにおける動きベクトルを示す説明図であり、ピクチャB6のブロックaをダイレクトモードで符号化する場合を示している。この場合、動きベクトルの大きさを0として、前方向参照ピクチャとしてピクチャP5を、後方向参照ピクチャとしてピクチャB7を用いて、2方向参照を行うことにより、動き補償を行う。
【0093】
このようにダイレクトモードにおいて、動きベクトルを強制的に0と置くことにより、ダイレクトモードが選択された場合には、動きベクトルの情報を送る必要がなく、かつ動きベクトルのスケーリング処理が不要となり処理量の削減を図ることができる。
【0094】
次に、ダイレクトモードを用いる場合の第六の例を図6(b) を用いて説明する。図6(b) はダイレクトモードにおける動きベクトルを示す説明図であり、ピクチャB6のブロックaをダイレクトモードで符号化する場合を示している。この場合、ピクチャB6の後方にあるPピクチャであるピクチャP9中の、ブロックaと同じ位置にあるブロックfを符号化する際に用いられた、動きベクトルgを利用する。動きベクトルgは、動きベクトル記憶部116に記憶されている。ブロックaは、動きベクトルgを利用して生成した動きベクトルを用いて、前方向参照ピクチャであるピクチャP5と、後方向参照ピクチャであるピクチャB7とから2方向予測を行う。例えば、上記第一の例の場合と同様に動きベクトルgに平行な動きベクトルを生成する方法を用いれば、ブロックaを符号化する際に用いる動きベクトルは、ピクチャP5に対しては動きベクトルh、ピクチャB7に対しては動きベクトルiとなる。
【0095】
この場合、前方向動きベクトルである動きベクトルhの大きさをMVF、後方向動きベクトルである動きベクトルiの大きさをMVB、動きベクトルgの大きさをMV、現在のピクチャ(ピクチャB6)に対して表示時間順で後方に位置するPピクチャ(ピクチャP9)と、このPピクチャのブロックfが参照しているピクチャ(ピクチャP5)との時間的距離をTRD、現在のピクチャ(ピクチャB6)と前方向参照ピクチャ(ピクチャP5)との時間的距離をTRF、現在のピクチャ(ピクチャB6)と後方向参照ピクチャ(ピクチャB7)との時間的距離をTRB、とすると、動きベクトルhの大きさMVF、動きベクトルiの大きさMVBは、それぞれ(式1)、(式5)で求められる。
【0096】
MVB=−TRB×MV/TRD −−− 式5
このようにダイレクトモードにおいて、表示時間順で後方に位置するPピクチャの動きベクトルに対してスケーリングを行うことにより、後方向参照ピクチャがBピクチャである場合に、そのBピクチャの動きベクトルを記憶しておく必要が無く、かつ動きベクトルの情報を送る必要がない。さらに、前方向および後方向参照ピクチャとして表示時間順で最近傍の参照ピクチャを用いることにより、符号化効率を向上させることができる。
【0097】
次に、ダイレクトモードを用いる場合の第七の例を図6(c) を用いて説明する。図6(c) はダイレクトモードにおける動きベクトルを示す説明図であり、ピクチャB6のブロックaをダイレクトモードで符号化する場合を示している。この例は、上記で説明したピクチャ番号に対する相対インデックスの割り当ての変更(リマッピング)が行われ、後方向参照ピクチャがピクチャP9となった場合である。この場合、ピクチャB7の後方向参照ピクチャであるピクチャP9中の、ブロックaと同じ位置にあるブロックfを符号化する際に用いられた動きベクトルgを利用する。動きベクトルgは、動きベクトル記憶部116に記憶されている。ブロックaは、動きベクトルgを利用して生成した動きベクトルを用いて、前方向参照ピクチャであるピクチャP5と、後方向参照ピクチャであるピクチャP9とから2方向予測を行う。例えば、上記第一の例の場合と同様に動きベクトルgに平行な動きベクトルを生成する方法を用いれば、ブロックaを符号化する際に用いる動きベクトルは、ピクチャP5に対しては動きベクトルh、ピクチャP9に対しては動きベクトルiとなる。
【0098】
この場合、前方向動きベクトルである動きベクトルhの大きさをMVF、後方向動きベクトルである動きベクトルiの大きさをMVB、動きベクトルgの大きさをMV、現在のピクチャ(ピクチャB6)の後方向参照ピクチャ(ピクチャP9)と、その後方向参照ピクチャのブロックが参照しているピクチャ(ピクチャP5)との時間的距離をTRD、現在のピクチャ(ピクチャB6)と前方向参照ピクチャ(ピクチャP5)との時間的距離をTRFとすると、動きベクトルhの大きさMVF、動きベクトルiの大きさMVBは、それぞれ(式1)、(式2)で求められる。
【0099】
このようにダイレクトモードにおいて、ピクチャ番号に対する相対インデックスの割り当ての変更が行われた場合であっても、符号化済みのピクチャの動きベクトルに対してスケーリングを行うことができ、かつダイレクトモードが選択された場合には、動きベクトルの情報を送る必要がない。
【0100】
なお、ピクチャB6のブロックaをダイレクトモードにより符号化する際には、ピクチャB6の後方参照ピクチャ中の、ブロックaと同じ位置にあるブロックが前方向参照のみ、2方向参照、またはダイレクトモードにより符号化され、この符号化の際に前方向動きベクトルを用いていた場合は、この前方向動きベクトルに対してスケーリングを行い、上記第一の例、第二の例または第七の例のようにブロックaをダイレクトモードにより符号化する。一方、ブロックaと同じ位置にあるブロックが後方向参照のみにより符号化され、この符号化の際に後方向動きベクトルを用いていた場合は、この後方向動きベクトルに対してスケーリングを行い、上記第三の例または第四の例のようにブロックaをダイレクトモードにより符号化する。
【0101】
以上のダイレクトモードにおいては、フレーム間の時間間隔が一定である場合だけでなく、可変フレーム間隔である場合についても適用可能である。
さて、モード選択部109は、決定した符号化モードを符号列生成部104に対して出力する。また、モード選択部109は、決定した符号化モードに基づいて予測画像データを生成し、この予測画像データを差分演算部102に出力する。但し、モード選択部109は、ピクチャ内符号化を選択した場合には、予測画像データを出力しない。また、モード選択部109は、ピクチャ内符号化を選択した場合には、スイッチ111をa側に、スイッチ112をc側に接続するように制御し、ピクチャ間予測符号化やダイレクトモードを選択した場合には、スイッチ111をb側に、スイッチ112をd側に接続するように制御する。また、モード選択部109は、決定した符号化モードが、ピクチャ間予測符号化である場合には、そのピクチャ間予測符号化で用いられる動きベクトルを符号列生成部104に対して出力する。ここでピクチャB6は他のピクチャの符号化時に参照ピクチャとして用いられないので、ピクチャ間予測符号化で用いられる動きベクトルは動きベクトル記憶部116に記憶する必要はない。以下では、モード選択部109でピクチャ間予測符号化やダイレクトモードが選択された場合について説明する。
【0102】
差分演算部102には、並べ替え用メモリ101から読み出されたピクチャB6のマクロブロックの画像データと、モード選択部109から出力された予測画像データが入力される。差分演算部102は、ピクチャB6のマクロブロックの画像データと予測画像データとの差分を演算し、予測誤差画像データを生成して予測誤差符号化部103へ出力する。予測誤差符号化部103は、入力された予測誤差画像データに対して周波数変換や量子化等の符号化処理を施すことにより、符号化データを生成して符号列生成部104へ出力する。
【0103】
符号列生成部104は、入力された符号化データに対して、可変長符号化等を施し、さらに動きベクトルや符号化モード等の情報を付加することにより符号列を生成し、出力する。
【0104】
以上の処理により、ピクチャB6の1マクロブロックに対する符号化処理が完了する。ピクチャB6の残りのマクロブロックに対する処理も同様に行われ、それが完了するとピクチャB8の符号化処理が行われる。
【0105】
<ピクチャB8の符号化処理>
ピクチャB8はBピクチャであるので、表示時間順で前方または後方にある既に処理済みの2枚のピクチャを参照してピクチャ間予測符号化を行う。このピクチャB8の参照画像は、上記のように前方向参照ピクチャがピクチャB7、後方向参照ピクチャがP9となる。ピクチャB8は、他のピクチャの符号化を行う際に、参照ピクチャとして用いられないので、符号化制御部110は、スイッチ113をオンに、スイッチ114、115をオフにするように各スイッチを制御する。よって、並べ替え用メモリ101から読み出されたピクチャB8のマクロブロックは、動きベクトル検出部108、モード選択部109、および差分演算部102に入力される。
【0106】
動きベクトル検出部108は、参照ピクチャ用メモリ107に蓄積されたピクチャB7の復号化画像データを前方向参照ピクチャとして、ピクチャP9の復号化画像データを後方向参照ピクチャとして用い、ピクチャB8のマクロブロックに対して、前方向動きベクトルと後方向動きベクトルの検出を行う。そして、動きベクトル検出部108は、検出された動きベクトルをモード選択部109に対して出力する。
【0107】
モード選択部109は、動きベクトル検出部108で検出された動きベクトルを用いて、ピクチャB8のマクロブロックの符号化モードを決定する。
ここで、ピクチャB8のマクロブロックに対して、ダイレクトモードを用いる場合の動作について、図6(d) を用いて説明する。図6(d) はダイレクトモードにおける動きベクトルを示す説明図であり、ピクチャB8のブロックaをダイレクトモードで符号化する場合を示している。この場合、ピクチャB8の後方にある参照ピクチャであるピクチャP9中の、ブロックaと同じ位置にあるブロックbを符号化した際に用いた動きベクトルを利用する。ここではブロックbは、前方向参照により符号化されたとし、その前方向動きベクトルを動きベクトルcとする。またこの動きベクトルcは、動きベクトル記憶部116に記憶されている。ブロックaは、動きベクトルcを利用して生成した動きベクトルを用いて、前方向参照ピクチャであるピクチャB7と、後方向参照ピクチャであるピクチャP9とから2方向予測を行う。例えば、上記ピクチャB7の場合と同様に動きベクトルcに平行な動きベクトルを生成する方法を用いれば、ブロックaを符号化する際に用いる動きベクトルは、ピクチャB7に対しては動きベクトルd、ピクチャP9に対しては動きベクトルeとなる。
【0108】
この場合、前方向動きベクトルである動きベクトルdの大きさをMVF、後方向動きベクトルである動きベクトルeの大きさをMVB、動きベクトルcの大きさをMV、現在のピクチャ(ピクチャB8)の後方向参照ピクチャ(ピクチャP9)と、その後方向参照ピクチャのブロックbが参照しているピクチャ(ピクチャP5)との時間的距離をTRD、現在のピクチャ(ピクチャB8)と前方向参照ピクチャ(ピクチャB7)との時間的距離をTRF、現在のピクチャ(ピクチャB8)と後方向参照ピクチャ(ピクチャP9)との時間的距離をTRBとすると、動きベクトルdの大きさMVF、動きベクトルeの大きさMVBは、それぞれ(式1)、(式5)で求められる。
【0109】
このようにダイレクトモードにおいて、後方向参照ピクチャの前方向動きベクトルに対してスケーリングを行うことにより、動きベクトルの情報を送る必要がなく、かつ予測効率を向上させることができる。これにより符号化効率を向上させることができる。さらに、前方向参照ピクチャおよび後方向参照ピクチャとして、利用可能な限り表示時間順で最近傍の参照ピクチャを用いることにより、符号化効率を向上させることができる。
【0110】
上記のダイレクトモードにおいては、フレーム間の時間間隔が一定である場合だけでなく、可変フレーム間隔である場合についても適用可能である。
さて、モード選択部109は、決定した符号化モードを符号列生成部104に対して出力する。また、モード選択部109は、決定した符号化モードに基づいて予測画像データを生成し、この予測画像データを差分演算部102に出力する。但し、モード選択部109は、ピクチャ内符号化を選択した場合には、予測画像データを出力しない。また、モード選択部109は、ピクチャ内符号化を選択した場合には、スイッチ111はa側に、スイッチ112はc側に接続するように制御し、ピクチャ間予測符号化やダイレクトモードを選択した場合には、スイッチ111はb側に、スイッチ112はd側に接続するように制御する。また、モード選択部109は、決定した符号化モードが、ピクチャ間予測符号化である場合には、そのピクチャ間予測符号化で用いられる動きベクトルを符号列生成部104に対して出力する。ここでピクチャB8は他のピクチャの符号化時に参照ピクチャとして用いられないので、ピクチャ間予測符号化で用いられる動きベクトルは動きベクトル記憶部116に記憶する必要はない。以下では、モード選択部109でピクチャ間予測符号化やダイレクトモードが選択された場合について説明する。
【0111】
差分演算部102には、並べ替え用メモリ101から読み出されたピクチャB8のマクロブロックの画像データと、モード選択部109から出力された予測画像データが入力される。差分演算部102は、ピクチャB8のマクロブロックの画像データと予測画像データとの差分を演算し、予測誤差画像データを生成して予測誤差符号化部103へ出力する。予測誤差符号化部103は、入力された予測誤差画像データに対して周波数変換や量子化等の符号化処理を施すことにより、符号化データを生成して符号列生成部104へ出力する。
【0112】
符号列生成部104は、入力された符号化データに対して、可変長符号化等を施し、さらに動きベクトルや符号化モード等の情報を付加することにより符号列を生成し、出力する。
【0113】
以上の処理により、ピクチャB8の1マクロブロックに対する符号化処理が完了する。ピクチャB8の残りのマクロブロックに対する処理も同様に行われる。以下、各ピクチャの符号化処理は、各ピクチャのピクチャタイプおよびピクチャの表示時間順の位置に応じた符号化方法で、ピクチャP9、B7、B6、B8と同様な方法により行われる。
【0114】
以上の実施の形態においては、図4(a) に示すピクチャ予測構造を用いた場合を例に、本発明に係る動画像符号化方法の動作を説明した。図10は、この場合のピクチャ予測構造を階層的に示す説明図である。図10において、矢印は予測関係を示しており、矢印の終点にあるピクチャが、始点にあるピクチャを参照することを示している。図4(a) に示すピクチャ予測構造においては、表示時間順で考えた場合に、図10に示すように既に符号化済みのピクチャから最も遠くなるピクチャを優先して符号化順序を決定している。例えば、IまたはPピクチャから最も遠くなるピクチャは、連続するBピクチャの中央に位置するピクチャである。したがって、例えばピクチャP5、P9が符号化済みである状態では、ピクチャB7が次の符号化対象ピクチャとなる。そして、ピクチャP5、B7、P9が符号化済みである状態では、ピクチャB6、B8が次の符号化対象ピクチャとなる。
【0115】
また、図4、図10に示すものとは異なるピクチャ予測構造を有する場合でも、本発明に係る動画像符号化方法と同様の方法を用いることができ、本発明の効果をもたらすことができる。他のピクチャ予測構造の例を図7〜図9に示す。
【0116】
図7は、IまたはPピクチャ間に挟まれるBピクチャの数が3枚であり、Bピクチャを符号化する順序として、既に符号化済みのピクチャから最も近いピクチャから選択して符号化する場合について示している。図7(a) は表示時間順で示した各ピクチャの予測関係を示す図であり、図7(b) が符号化順(符号列順)に並べ替えたピクチャ順を示す図である。また、図11は、図7(a) に対応するピクチャ予測構造の階層図である。図7(a) に示すピクチャ予測構造においては、表示時間順で考えた場合に、図11に示すように既に符号化済みのピクチャから最も近いピクチャから順に符号化を行っている。例えばピクチャP5、P9が符号化済みである状態では、ピクチャB6、B8が次の符号化対象ピクチャとなる。そして、ピクチャP5、B6、B8、P9が符号化済みである状態では、ピクチャB7が次の符号化対象ピクチャとなる。
【0117】
図8は、IまたはPピクチャ間に挟まれるBピクチャの数が5枚であり、Bピクチャを既に符号化済みのピクチャから最も遠いピクチャを優先して符号化する場合について示している。図8(a) は表示時間順で示した各ピクチャの予測関係を示す図であり、図8(b) は符号化順(符号列順)に並べ替えたピクチャ順を示す図である。また、図12は、図8(a) に対応するピクチャ予測構造の階層図である。図8(a) に示すピクチャ予測構造においては、表示時間順で考えた場合に、図12に示すように既に符号化済みのピクチャから最も遠くなるピクチャを優先して符号化順序を決定している。例えば、IまたはPピクチャから最も遠くなるピクチャは、連続するBピクチャの中央に位置するピクチャである。したがって、例えばピクチャP7、P13が符号化済みである状態では、ピクチャB10が次の符号化対象ピクチャとなる。そして、ピクチャP7、B10、P13が符号化済みである状態では、ピクチャB8、B9、B11、B12が次の符号化対象ピクチャとなる。
【0118】
図9は、IまたはPピクチャ間に挟まれるBピクチャの数が5枚であり、Bピクチャを既に符号化済みのピクチャから最も近いピクチャを優先して符号化する場合について示している。図9(a) は表示時間順で示した各ピクチャの予測関係を示す図であり、図9(b) は符号化順(符号列順)に並べ替えたピクチャ順を示す図である。また、図13は、図9(a) に対応するピクチャ予測構造の階層図である。図9(a) に示すピクチャ予測構造においては、表示時間順で考えた場合に、図13に示すように既に符号化済みのピクチャから最も近いピクチャから順に符号化を行っている。例えばピクチャP5、P9が符号化済みである状態では、ピクチャB8、B12が次の符号化対象ピクチャとなる。そして、ピクチャP5、B8、B12、P9が符号化済みである状態では、ピクチャB9、B11が次の符号化対象ピクチャとなる。さらに、ピクチャP5、B8、B9、B11、B12、P9が符号化済みである状態では、ピクチャB10が次の符号化対象ピクチャとなる。
【0119】
以上のように、本発明に係る動画像符号化方法では、2方向予測を用いてピクチャ間予測符号化処理を行うBピクチャを符号化する際に、IまたはPピクチャ間に挟まれる複数のBピクチャを表示時間順とは異なる順序で符号化する。その際には、可能な限り表示時間順で近傍に位置するピクチャを前方向および後方向の参照ピクチャとして用いる。この参照ピクチャとしては、Bピクチャが利用できる場合には、Bピクチャも用いる。また、IまたはPピクチャ間に挟まれる複数のBピクチャを表示時間順とは異なる順序で符号化する際には、既に符号化済みのピクチャから最も遠くなるピクチャから順に符号化する。または、IまたはPピクチャ間に挟まれる複数のBピクチャを表示時間順とは異なる順序で符号化する際には、既に符号化済みのピクチャから最も近いピクチャから順に符号化する。
【0120】
このような動作により、本発明に係る動画像符号化方法を用いることによって、Bピクチャを符号化する際に、より表示時間順で近傍のピクチャを参照ピクチャとして用いることができ、これにより動き補償の際の予測効率が向上するため、符号化効率を向上させることができる。
【0121】
また、本発明に係る動画像符号化方法において、後方向参照ピクチャとしてBピクチャとして符号化されたピクチャを参照し、Bピクチャ内のブロックをダイレクトモードにより符号化する際に、後方向参照ピクチャの同一位置のブロックが前方向参照または2方向参照により符号化されている場合には、その前方向動きベクトルをスケーリングすることにより得られる動きベクトルをダイレクトモードでの動きベクトルとして用いる。
【0122】
このようにダイレクトモードにおいて、後方向参照ピクチャであるBピクチャの前方向動きベクトルに対してスケーリングを行うことにより、動きベクトルの情報を送る必要がなく、かつ予測効率を向上させることができる。さらに、前方向参照ピクチャとして時間的に最近傍の参照ピクチャを用いることにより、符号化効率を向上させることができる。
【0123】
または、後方向参照ピクチャであるBピクチャの同一位置のブロックが、ダイレクトモードにより符号化されている場合には、ダイレクトモードにおいて実質的に用いられた前方向動きベクトルをスケーリングすることにより得られる動きベクトルをダイレクトモードでの動きベクトルとして用いる。
【0124】
このようにダイレクトモードにおいて、後方向参照ピクチャであるBピクチャのダイレクトモードで実質的に用いた前方向動きベクトルに対してスケーリングを行うことにより、動きベクトルの情報を送る必要がなく、かつ後方向参照ピクチャ内の同一位置のブロックがダイレクトモードで符号化されている場合でも、予測効率を向上させることができる。さらに、前方向参照ピクチャとして時間的に最近傍の参照ピクチャを用いることにより、符号化効率を向上させることができる。
【0125】
または、後方向参照ピクチャであるBピクチャの同一位置のブロックが、後方向参照により符号化されている場合には、その後方向動きベクトルをスケーリングすることにより得られる動きベクトルをダイレクトモードでの動きベクトルとして用いる。
【0126】
このようにダイレクトモードにおいて、後方向参照ピクチャであるBピクチャの同一位置のブロックを符号化する際に用いた後方向動きベクトルに対してスケーリングを行うことにより、動きベクトルの情報を送る必要がなく、かつ後方向参照ピクチャ内の同一位置のブロックが後方向動きベクトルしか有しない場合でも、予測効率を向上させることができる。さらに、前方向参照ピクチャとして時間的に最近傍の参照ピクチャを用いることにより、符号化効率を向上させることができる。
【0127】
または、後方向参照ピクチャであるBピクチャの同一位置のブロックが、後方向参照により符号化されている場合には、その際に用いた後方向動きベクトルをこの後方向動きベクトルが参照するピクチャと後方向参照ピクチャとを参照ピクチャとしてスケーリングすることにより得られる動きベクトルをダイレクトモードでの動きベクトルとして用いる。
【0128】
このようにダイレクトモードにおいて、後方向参照ピクチャであるBピクチャの同一位置のブロックを符号化する際に用いた後方向動きベクトルに対してスケーリングを行うことにより、動きベクトルの情報を送る必要がなく、かつ後方向参照ピクチャ内の同一位置のブロックが後方向動きベクトルしか有さない場合でも、予測効率を向上させることができる。これにより、符号化効率を向上させることができる。さらに、前方向参照ピクチャとして後方向動きベクトルが参照しているピクチャを、後方向参照ピクチャとして表示時間順で利用可能な最近傍の参照ピクチャを用いることにより、符号化効率を向上させることができる。
【0129】
またはダイレクトモードにおいて、強制的に大きさ0とした動きベクトルを用いる。
このようにダイレクトモードにおける動きベクトルを強制的に0と置くことにより、ダイレクトモードが選択された場合には、動きベクトルの情報を送る必要がなく、かつ動きベクトルのスケーリング処理が不要となり処理量の削減を図ることができる。
【0130】
また、本発明の動画像符号化方法において、後方向参照ピクチャとしてBピクチャとして符号化されたピクチャを参照し、Bピクチャ内のブロックをダイレクトモードを用いて符号化する際に、後方に位置するPピクチャ内の同一位置のブロックが符号化された際に用いた前方向動きベクトルをスケーリングすることにより得られる動きベクトルをダイレクトモードでの動きベクトルとして用いる。
【0131】
このようにダイレクトモードにおいて、後方Pピクチャの動きベクトルに対してスケーリングを行うことにより、後方向参照ピクチャがBピクチャである場合に、そのBピクチャの動きベクトルを記憶しておく必要が無く、かつ動きベクトルの情報を送る必要がなく、かつ予測効率を向上させることができる。さらに、前方向参照ピクチャとして時間的に最近傍の参照ピクチャを用いることにより、符号化効率を向上させることができる。
【0132】
また、ピクチャ番号に対する相対インデックスの割り当ての変更が行われ、後方向参照ピクチャの同一位置のブロックが前方向参照により符号化されている場合には、その前方向動きベクトルをスケーリングすることにより得られる動きベクトルをダイレクトモードでの動きベクトルとして用いる。
【0133】
このようにダイレクトモードにおいて、ピクチャ番号に対する相対インデックスの割り当ての変更が行われた場合であっても、符号化済みのピクチャの動きベクトルに対してスケーリングを行うことができ、かつ動きベクトルの情報を送る必要がない。
【0134】
なお、本実施の形態においては、動き補償は水平16×垂直16画素の単位で、予測誤差画像の符号化は水平8×垂直8画素や水平4×垂直4画素の単位で処理する場合について説明したが、これらの単位は別の画素数でも良い。
【0135】
また、本実施の形態では、連続するBピクチャの枚数が3枚または5枚である場合を例として説明したが、このBピクチャの枚数は他の枚数であっても良い。
また、本実施の形態では、Pピクチャの符号化モードは、ピクチャ内符号化、動きベクトルを用いたピクチャ間予測符号化、動きベクトルを用いないピクチャ間予測符号化から選択し、Bピクチャの符号化モードは、ピクチャ内符号化、前方向動きベクトルを用いたピクチャ間予測符号化、後方向動きベクトルを用いたピクチャ間予測符号化、2方向動きベクトルを用いたピクチャ間予測符号化、ダイレクトモードから選択する場合を例として説明したが、これらの符号化モードは他の方法であっても良い。
【0136】
また、本実施の形態では、ダイレクトモードにおいては、7つの例について説明したが、これは例えばマクロブロックやブロック毎に一意的に決定される一つの方法を用いても良いし、ブロックやマクロブロック毎に複数の方法から一つの方法を選択しても良い。複数の方法を用いる場合には、どのダイレクトモードを用いたかを示す情報を符号列中に記述する。
【0137】
また、本実施の形態では、Pピクチャは表示時間順で前方または後方に位置する符号化済みのIまたはPピクチャを1つ参照して符号化し、Bピクチャは表示時間順で前方または後方に位置する近傍の符号化済みのピクチャを2つ参照して符号化する場合について説明したが、これらはPピクチャの場合には、表示時間順で前方または後方に位置する、複数の符号化済みのIまたはPピクチャを参照ピクチャの候補とし、各ブロックで最大1つのピクチャを参照して符号化し、Bピクチャの場合には、表示時間順で前方または後方に位置する近傍の複数の符号化済みのピクチャを参照ピクチャの候補とし、各ブロックで最大2つのピクチャを参照して符号化しても良い。
【0138】
また、モード選択部109は、動きベクトル記憶部116に動きベクトルを記憶する際に、対象ブロックが2方向予測またはダイレクトモードにより符号化されている場合には、前方向および後方向の両方の動きベクトルを記憶しても良いし、前方向動きベクトルのみを記憶するようにしても良い。前方向動きベクトルのみを記憶すると、動きベクトル記憶部116のメモリ量を削減することができる。
【0139】
(実施の形態2)
図14は、本発明に係る動画像復号化方法を用いた動画像復号化装置の一実施の形態の構成を示すブロック図である。
【0140】
動画像復号化装置は、図14に示すように符号列解析部1401、予測誤差復号化部1402、モード復号部1403、フレームメモリ制御部1404、動き補償復号部1405、動きベクトル記憶部1406、フレームメモリ1407、加算演算部1408、およびスイッチ1409、1410を備えている。
【0141】
符号列解析部1401は、入力された符号列より符号化モードの情報および動きベクトルの情報等の各種データの抽出を行う。予測誤差復号化部1402は、符号列解析部1401より入力された予測誤差符号化データの復号化を行い、予測誤差画像データを生成する。モード復号部1403は、符号列より抽出された符号化モードの情報を参照し、スイッチ1409、1410の制御を行う。
【0142】
フレームメモリ制御部1404は、符号列解析部1401より入力されたピクチャの表示順序を示す情報に基づいて、フレームメモリ1407に格納された復号化画像データを出力画像として出力する。
【0143】
動き補償復号部1405は、参照ピクチャ番号と動きベクトルの情報の復号化処理を行い、復号化した参照ピクチャ番号と動きベクトルとに基づいて、フレームメモリ1407より動き補償画像データを取得する。動きベクトル記憶部1406は、動きベクトルを記憶する。
【0144】
加算演算部1408は、予測誤差復号化部1402より入力された予測誤差符号化データと、動き補償復号部1405より入力された動き補償画像データとを加算し、復号化画像データを生成する。フレームメモリ1407は、生成された復号化画像データを格納する。
【0145】
次に、上記のように構成された動画像復号化装置の動作について説明する。ここで、動画像復号化装置には、上記動画像符号化装置で生成された符号列が入力されるとする。すなわちここでは、Pピクチャは表示時間順で前方または後方にある、近傍の既に処理済みのIまたはPピクチャを1つ参照するものとする。また、Bピクチャは表示時間順で前方または後方にある、既に符号化済みの近傍のピクチャを2つ参照するものとする。
【0146】
この場合における符号列中のピクチャは、図4(b) に示すような順序となる。以下では、ピクチャP9、B7、B6、B8の復号化処理について順に説明する。
【0147】
<ピクチャP9の復号化処理>
ピクチャP9の符号列は符号列解析部1401に入力される。符号列解析部1401は、入力された符号列から、各種データの抽出を行う。ここで各種データとは、モード選択の情報や動きベクトル情報等である。抽出されたモード選択の情報は、モード復号部1403に対して出力される。また、抽出された動きベクトル情報は、動き補償復号部1405に対して出力される。さらに、予測誤差符号化データは予測誤差復号化部1402に対して出力される。
【0148】
モード復号部1403は、符号列から抽出された符号化モード選択の情報を参照し、スイッチ1409、1410の制御を行う。符号化モード選択がピクチャ内符号化である場合には、モード復号部1403は、スイッチ1409をa側に、スイッチ1410をc側に接続するように制御する。また、符号化モード選択がピクチャ間予測符号化である場合には、モード復号部1403は、スイッチ1409をb側に、スイッチ1410をd側に接続するように制御する。
【0149】
またモード復号部1403では、符号化モード選択の情報を動き補償復号部1405に対しても出力する。以下では、符号化モード選択がピクチャ間予測符号化である場合について説明する。予測誤差復号化部1402は、入力された予測誤差符号化データの復号化を行い、予測誤差画像データを生成する。そして、予測誤差復号化部1402は、生成した予測誤差画像データをスイッチ1409に対して出力する。ここでは、スイッチ1409はb側に接続されているので、予測誤差画像データは加算演算部1408に対して出力される。
【0150】
動き補償復号部1405は、入力された動きベクトルの情報等に基づいて、フレームメモリ1407から動き補償画像データを取得する。ピクチャP9は、ピクチャP5を参照して符号化されており、ピクチャP5は既に復号化されてフレームメモリ1407に保持されている。そこで、動き補償復号部1405は、動きベクトルの情報に基づいてフレームメモリ1407に保持されたピクチャP5の画像データから動き補償画像データを取得する。このようにして生成された動き補償画像データは加算演算部1408に対して出力される。
【0151】
また、動き補償復号部1405は、Pピクチャの復号化を行う場合には、動きベクトルの情報を動きベクトル記憶部1406に記憶する。
加算演算部1408は、入力された予測誤差画像データと動き補償画像データとを加算し、復号化画像データを生成する。生成された復号化画像データはスイッチ1410を介してフレームメモリ1407に対して出力される。
【0152】
以上のようにして、ピクチャP9の1マクロブロックの処理が完了する。同様の処理により、残りのマクロブロックも順に復号化される。ピクチャP9のマクロブロックが全て復号化されると、ピクチャB7の復号化が行われる。
【0153】
<ピクチャB7の復号化処理>
符号列解析部1401、モード復号化部1403、および予測誤差復号化部1402における予測誤差画像データの生成までの動作は、ピクチャP9の復号化処理の際と同様であるので、説明は省略する。
【0154】
動き補償復号部1405は、入力された動きベクトルの情報等に基づいて、動き補償画像データを生成する。ピクチャB7は、前方向参照ピクチャとしてピクチャP5を参照し、後方向参照ピクチャとしてP9を参照して符号化されており、これらのピクチャは既に復号化されてフレームメモリ1407に保持されている。
【0155】
モード選択が2方向予測のピクチャ間予測符号化である場合には、動き補償復号部1405は、前方向動きベクトルの情報に基づいて前方向参照画像データをフレームメモリ1407から取得する。また、後方向動きベクトルの情報に基づいて後方向参照画像データをフレームメモリ1407から取得する。そして、動き補償復号部1405は、前方向参照画像データと後方向参照画像データとを加算平均することにより、動き補償画像データを生成する。
【0156】
また、モード選択がダイレクトモードである場合には、動き補償復号部1405は、動きベクトル記憶部1406に記憶されているピクチャP9の動きベクトルを取得する。そして、動き補償復号部1405は、この動きベクトルを用いて、前方向参照画像データと後方向参照画像データとをフレームメモリ1407から取得する。そして、動き補償復号部1405は、前方向参照画像データと後方向参照画像データとを加算平均することにより、動き補償画像データを生成する。
【0157】
このモード選択がダイレクトモードである場合について、さらに図5(a) を用いて説明する。ここで、ピクチャB7のブロックaを復号化しているとし、ブロックaと同じ位置にあるピクチャP9のブロックをブロックbとする。そしてブロックbの動きベクトルが動きベクトルcであり、これはピクチャP5を参照している。この場合、前方向動きベクトルとして、動きベクトルcを利用して求めたピクチャP5を参照する動きベクトルdを用い、後方向動きベクトルとして、動きベクトルcを利用して求めたピクチャP9を参照する動きベクトルeを用いる。例えば、動きベクトルcを利用する方法としては、動きベクトルcに平行な動きベクトルを生成する方法がある。これらの動きベクトルに基づいて得られる前方向参照データと後方向参照データとを加算平均した画像データを動き補償画像データとする。
【0158】
この場合、前方向動きベクトルである動きベクトルdの大きさをMVF、後方向動きベクトルである動きベクトルeの大きさをMVB、動きベクトルcの大きさをMV、現在のピクチャ(ピクチャB7)の後方向参照ピクチャ(ピクチャP9)と、その後方向参照ピクチャのブロックbが参照しているピクチャ(ピクチャP5)との時間的距離をTRD、現在のピクチャ(ピクチャB7)と前方向参照ピクチャ(ピクチャP5)との時間的距離をTRFとすると、動きベクトルdの大きさMVF、動きベクトルeの大きさMVBは、それぞれ(式1)、(式2)で求められる。ここで、MVF、MVBは、動きベクトルの水平成分、垂直成分のそれぞれを表現しているものとする。なお、各ピクチャ間の時間的距離については、例えば各ピクチャに付される表示順序(位置)を示す情報、またはその情報の差に基づいて決定することができる。
【0159】
このようにして生成された動き補償画像データは加算演算部1408に対して出力される。また、動き補償復号部1405は、動きベクトルの情報を動きベクトル記憶部1406に記憶する。
【0160】
加算演算部1408は、入力された予測誤差画像データと動き補償画像データとを加算し、復号化画像データを生成する。生成された復号化画像データはスイッチ1410を介してフレームメモリ1407に対して出力される。
【0161】
以上のようにして、ピクチャB7の1マクロブロックの処理が完了する。同様の処理により、残りのマクロブロックも順に復号化される。ピクチャB7のマクロブロックが全て復号化されると、ピクチャB6の復号化が行われる。
【0162】
<ピクチャB6の復号化処理>
符号列解析部1401、モード復号化部1403、および予測誤差復号化部1402における予測誤差画像データの生成までの動作は、ピクチャP9の復号化処理の際と同様であるので、説明は省略する。
【0163】
動き補償復号部1405は、入力された動きベクトルの情報等に基づいて、動き補償画像データを生成する。ピクチャB6は、前方向参照ピクチャとしてピクチャP5を参照し、後方向参照ピクチャとしてB7を参照して符号化されており、これらのピクチャは既に復号化されてフレームメモリ1407に保持されている。
【0164】
モード選択が2方向予測のピクチャ間予測符号化である場合には、動き補償復号部1405は、前方向動きベクトルの情報に基づいて前方向参照画像データをフレームメモリ1407から取得する。また、後方向動きベクトルの情報に基づいて後方向参照画像データをフレームメモリ1407から取得する。そして、動き補償復号部1405は、前方向参照画像データと後方向参照画像データとを加算平均することにより、動き補償画像データを生成する。
【0165】
また、モード選択がダイレクトモードである場合には、動き補償復号部1405は、動きベクトル記憶部1406に記憶されているピクチャB7の動きベクトルを取得する。動き補償復号部1405は、この動きベクトルを用いて、前方向参照画像データと後方向参照画像データとをフレームメモリ1407から取得する。そして、動き補償復号部1405は、前方向参照画像データと後方向参照画像データとを加算平均することにより、動き補償画像データを生成する。
【0166】
このモード選択がダイレクトモードである場合の第一の例を図5(b) を用いて説明する。ここで、ピクチャB6のブロックaを復号化しているとし、ブロックaと同じ位置にあるピクチャB7のブロックをブロックbとする。そして、ブロックbは、前方向参照によるピクチャ間予測符号化または2方向参照によるピクチャ間予測符号化されているとし、ブロックbの前方向動きベクトルを動きベクトルcとする。この動きベクトルcはピクチャP5を参照している。この場合、ブロックaに対する前方向動きベクトルとして、動きベクトルcを利用して生成したピクチャP5を参照する動きベクトルdを用い、後方向動きベクトルとして、動きベクトルcを利用して生成したピクチャB7を参照する動きベクトルeを用いる。例えば、動きベクトルcを利用する方法としては、動きベクトルcに平行な動きベクトルを生成する方法がある。これらの動きベクトルに基づいて得られる前方向参照画像データと後方向参照画像データとを加算平均した画像データを動き補償画像データとする。
【0167】
この場合、前方向動きベクトルである動きベクトルdの大きさをMVF、後方向動きベクトルである動きベクトルeの大きさをMVB、動きベクトルcの大きさをMV、現在のピクチャ(ピクチャB6)の後方向参照ピクチャ(ピクチャB7)と、その後方向参照ピクチャのブロックbが参照しているピクチャ(ピクチャP5)との時間的距離をTRD、現在のピクチャ(ピクチャB6)と前方向参照ピクチャ(ピクチャP5)との時間的距離をTRFとすると、動きベクトルdの大きさMVF、動きベクトルeの大きさMVBは、それぞれ(式1)、(式2)で求められる。なお、各ピクチャ間の時間的距離については、例えば各ピクチャに付される表示順序(位置)を示す情報、またはその情報の差に基づいて決定することができる。または、TRD、TRFの値は、各ピクチャ毎に決められた所定値を用いても良い。この所定値は、ヘッダ情報として符号列中に記述されていても良い。
【0168】
また、モード選択がダイレクトモードである場合の第二の例を図5(b) を用いて説明する。
この場合、ピクチャB6の後方にある参照ピクチャであるピクチャB7中の、ブロックaと同じ位置にあるブロックbを復号化した際に用いられた動きベクトルを利用する。ここではブロックbは、ダイレクトモードを用いて符号化されていたとし、そのときに実質的に用いられた前方向動きベクトルを動きベクトルcとする。この動きベクトルcは、動きベクトル記憶部1406に記憶されているものを用いるか、またはブロックbをダイレクトモードで符号化する際に用いたピクチャP9の動きベクトルを動きベクトル記憶部1406から読み出した後、スケーリングの計算を行って求める。なお、動き補償復号部1405は、ピクチャB7のブロックbをダイレクトモードで復号化する際にスケーリング処理により求めた動きベクトルを、動きベクトル記憶部1406に記憶する場合は、前方向動きベクトルだけを記憶すればよい。
【0169】
この場合、ブロックaに対する前方向動きベクトルとして、動きベクトルcを利用して生成したピクチャP5を参照する動きベクトルdを用い、後方向動きベクトルとして、動きベクトルcを利用して生成したピクチャB7を参照する動きベクトルeを用いる。例えば、動きベクトルcを利用する方法としては、動きベクトルcに平行な動きベクトルを生成する方法がある。これらの動きベクトルに基づいて得られる前方向参照画像データと後方向参照画像データとを加算平均した画像データを動き補償画像データとする。
【0170】
この場合、前方向動きベクトルである動きベクトルdの大きさMVFと、後方向動きベクトルである動きベクトルeの大きさMVBとは、ダイレクトモードの第一の例と同様に、(式1)、(式2)を用いて求めることができる。
【0171】
次に、モード選択がダイレクトモードである場合の第三の例を図5(c) を用いて説明する。
ここで、ピクチャB6のブロックaを復号化しているとし、ブロックaと同じ位置にあるピクチャB7のブロックをブロックbとする。ブロックbは、後方向参照予測符号化されているとし、ブロックbの後方向動きベクトルを動きベクトルfとする。この動きベクトルfはピクチャP9を参照している。この場合、ブロックaに対する前方向動きベクトルとして、動きベクトルfを利用して求めたピクチャP5を参照する動きベクトルgを用い、後方向動きベクトルとして、動きベクトルfを利用して求めたピクチャB7を参照する動きベクトルhを用いる。例えば、動きベクトルfを利用する方法としては、動きベクトルfに平行な動きベクトルを生成する方法がある。これらの動きベクトルに基づいて得られる前方向参照画像データと後方向参照画像データとを加算平均した画像データを動き補償画像データとする。
【0172】
この場合、前方向動きベクトルである動きベクトルgの大きさをMVF、後方向動きベクトルである動きベクトルhの大きさをMVB、動きベクトルfの大きさをMV、現在のピクチャ(ピクチャB6)の後方向参照ピクチャ(ピクチャB7)と、その後方向参照ピクチャのブロックが参照しているピクチャ(ピクチャP9)との時間的距離をTRD、現在のピクチャ(ピクチャB6)と前方向参照ピクチャ(ピクチャP5)との時間的距離をTRF、現在のピクチャ(ピクチャB6)と後方向参照ピクチャ(ピクチャB7)との時間的距離をTRB、とすると、動きベクトルgの大きさMVF、動きベクトルhの大きさMVBは、それぞれ(式3)、(式4)で求められる。
【0173】
次に、モード選択がダイレクトモードである場合の第四の例を図5(d) を用いて説明する。
ここで、ピクチャB6のブロックaを復号化しているとし、ブロックaと同じ位置にあるピクチャB7のブロックをブロックbとする。ブロックbは、第三の例と同様に後方向参照予測符号化されているとし、ブロックbの後方向動きベクトルを動きベクトルfとする。この動きベクトルfはピクチャP9を参照している。この場合、ブロックaに対する前方向動きベクトルとして、動きベクトルfを利用して求めたピクチャP9を参照する動きベクトルgを用い、後方向動きベクトルとして、動きベクトルfを利用して求めたピクチャB7を参照する動きベクトルhを用いる。例えば、動きベクトルfを利用する方法としては、動きベクトルfに平行な動きベクトルを生成する方法がある。これらの動きベクトルに基づいて得られる前方向参照画像データと後方向参照画像データとを加算平均した画像データを動き補償画像データとする。
【0174】
この場合、前方向動きベクトルである動きベクトルgの大きさをMVF、後方向動きベクトルである動きベクトルhの大きさをMVB、動きベクトルfの大きさをMV、現在のピクチャ(ピクチャB6)の後方向参照ピクチャ(ピクチャB7)と、その後方向参照ピクチャのブロックが参照しているピクチャ(ピクチャP9)との時間的距離をTRD、現在のピクチャ(ピクチャB6)と、後方向参照ピクチャ(ピクチャB7)のブロックが参照しているピクチャ(ピクチャP9)との時間的距離をTRFとすると、動きベクトルgの大きさMVF、動きベクトルhの大きさMVBは、それぞれ(式1)、(式2)で求められる。
【0175】
また、モード選択がダイレクトモードである場合の第五の例を図6(a) を用いて説明する。ここで、ピクチャB6のブロックaをダイレクトモードにより復号化するとする。この場合、動きベクトルの大きさを0として、前方向参照ピクチャとしてピクチャP5を、後方向参照ピクチャとしてピクチャB7を用いて、2方向参照を行うことにより、動き補償を行う。
【0176】
次に、モード選択がダイレクトモードである場合の第六の例を図6(b) を用いて説明する。ここで、ピクチャB6のブロックaをダイレクトモードで復号化するとする。この場合、ピクチャB6の後方にあるPピクチャであるピクチャP9中の、ブロックaと同じ位置にあるブロックfを復号化する際に用いられた動きベクトルgを利用する。動きベクトルgは、動きベクトル記憶部1406に記憶されている。ブロックaは、動きベクトルgを利用して求めた動きベクトルを用いて、前方向参照ピクチャであるピクチャP5と、後方向参照ピクチャであるピクチャB7から2方向予測を行う。例えば、上記第一の例の場合と同様に動きベクトルgに平行な動きベクトルを生成する方法を用いれば、ブロックaの動き補償画像データを得るために用いる動きベクトルは、ピクチャP5に対しては動きベクトルh、ピクチャB7に対しては動きベクトルiとなる。
【0177】
この場合、前方向動きベクトルである動きベクトルhの大きさをMVF、後方向動きベクトルである動きベクトルiの大きさをMVB、動きベクトルgの大きさをMV、現在のピクチャ(ピクチャB6)の後方に位置するPピクチャ(ピクチャP9)と、その後に位置するピクチャのブロックfが参照しているピクチャ(ピクチャP5)との時間的距離をTRD、現在のピクチャ(ピクチャB6)と前方向参照ピクチャ(ピクチャP5)との時間的距離をTRF、現在のピクチャ(ピクチャB6)と後方向参照ピクチャ(ピクチャB7)との時間的距離をTRB、とすると、動きベクトルMVF、動きベクトルMVBは、それぞれ(式1)、(式5)で求められる。
【0178】
次に、モード選択がダイレクトモードである場合の第七の例を図6(c) を用いて説明する。ここで、ピクチャB6のブロックaをダイレクトモードで復号化するとする。この例は、上記で説明したピクチャ番号に対する相対インデックスの割り当ての変更(リマッピング)が行われ、後方向参照ピクチャがピクチャP9となった場合である。この場合、ピクチャB6の後方向参照ピクチャであるピクチャP9中の、ブロックaと同じ位置にあるブロックfを符号化する際に用いられた動きベクトルgを利用する。動きベクトルgは、動きベクトル記憶部1406に記憶されている。ブロックaは、動きベクトルgを利用して生成した動きベクトルを用いて、前方向参照ピクチャであるピクチャP5と、後方向参照ピクチャであるピクチャP9とから2方向予測を行う。例えば、上記第一の例の場合と同様に動きベクトルgに平行な動きベクトルを生成する方法を用いれば、ブロックaの動き補償画像データを得るために用いる動きベクトルは、ピクチャP5に対しては動きベクトルh、ピクチャP9に対しては動きベクトルiとなる。
【0179】
この場合、前方向動きベクトルである動きベクトルhの大きさをMVF、後方向動きベクトルである動きベクトルiの大きさをMVB、動きベクトルgの大きさをMV、現在のピクチャ(ピクチャB6)の後方向参照ピクチャ(ピクチャP9)と、その後方向参照ピクチャのブロックが参照しているピクチャ(ピクチャP5)との時間的距離をTRD、現在のピクチャ(ピクチャB6)と前方向参照ピクチャ(ピクチャP5)との時間的距離をTRFとすると、動きベクトルhの大きさMVF、動きベクトルiの大きさMVBは、それぞれ(式1)、(式2)で求められる。
【0180】
このようにして生成された動き補償画像データは加算演算部1408に対して出力される。加算演算部1408は、入力された予測誤差画像データと動き補償画像データとを加算し、復号化画像データを生成する。生成された復号化画像データはスイッチ1410を介してフレームメモリ1407に対して出力される。
【0181】
以上のようにして、ピクチャB6の1マクロブロックの処理が完了する。同様の処理により、残りのマクロブロックも順に復号化される。ピクチャB6のマクロブロックが全て復号化されると、ピクチャB8の復号化が行われる。
【0182】
<ピクチャB8の復号化処理>
符号列解析部1401、モード復号化部1403、および予測誤差復号化部1402における予測誤差画像データの生成までの動作は、ピクチャP9の復号化処理の際と同様であるので、説明は省略する。
【0183】
動き補償復号部1405は、入力された動きベクトルの情報等に基づいて、動き補償画像データを生成する。ピクチャB8は、前方向参照ピクチャとしてピクチャB7を参照し、後方向参照ピクチャとしてP9を参照して符号化されており、これらのピクチャは既に復号化されてフレームメモリ1407に保持されている。
【0184】
モード選択が2方向予測のピクチャ間予測符号化である場合には、動き補償復号部1405は、前方向動きベクトルの情報に基づいて前方向参照画像データをフレームメモリ1407から取得する。また、後方向動きベクトルの情報に基づいて後方向参照画像データをフレームメモリ1407から取得する。そして、動き補償復号部1405は、前方向参照画像データと後方向参照画像データとを加算平均することにより、動き補償画像データを生成する。
【0185】
また、モード選択がダイレクトモードである場合には、動き補償復号部1405は、動きベクトル記憶部1406に記憶されているピクチャP9の動きベクトルを取得する。動き補償復号部1405は、この動きベクトルを用いて、前方向参照画像データと後方向参照画像データとをフレームメモリ1407から取得する。そして、動き補償復号部1405は、前方向参照画像データと後方向参照画像データとを加算平均することにより、動き補償画像データを生成する。
【0186】
モード選択がダイレクトモードである場合の例を図6(d) を用いて説明する。ここで、ピクチャB8のブロックaを復号化しているとし、後方向参照ピクチャであるピクチャP9中の、ブロックaと同じ位置にあるブロックbとする。そして、ブロックbの前方向動きベクトルを動きベクトルcとする。この動きベクトルcはピクチャP5を参照している。この場合、ブロックaに対する前方向動きベクトルとして、動きベクトルcを利用して生成したピクチャB7を参照する動きベクトルdを用い、後方向動きベクトルとして、動きベクトルcを利用して生成したピクチャP9を参照する動きベクトルeを用いる。例えば、動きベクトルcを利用する方法としては、動きベクトルcに平行な動きベクトルを生成する方法がある。これらの動きベクトルに基づいて得られる前方向参照画像データと後方向参照画像データとを加算平均した画像データを動き補償画像データとする。
【0187】
この場合、前方向動きベクトルである動きベクトルdの大きさをMVF、後方向動きベクトルである動きベクトルeの大きさをMVB、動きベクトルcの大きさをMV、現在のピクチャ(ピクチャB8)の後方向参照ピクチャ(ピクチャP9)と、その後方向参照ピクチャのブロックbが参照しているピクチャ(ピクチャP5)との時間的距離をTRD、現在のピクチャ(ピクチャB8)と前方向参照ピクチャ(ピクチャB7)との時間的距離をTRF、現在のピクチャ(ピクチャB8)と後方向参照ピクチャ(ピクチャP9)との時間的距離をTRBとすると、動きベクトルdの大きさMVF、動きベクトルeの大きさMVBは、それぞれ(式1)、(式5)で求められる。
【0188】
このようにして生成された動き補償画像データは加算演算部1408に対して出力される。加算演算部1408は、入力された予測誤差画像データと動き補償画像データとを加算し、復号化画像データを生成する。生成された復号化画像データはスイッチ1410を介してフレームメモリ1407に対して出力される。
【0189】
以上のようにして、ピクチャB8の1マクロブロックの処理が完了する。同様の処理により、残りのマクロブロックも順に復号化される。以下、各ピクチャはピクチャタイプに応じた同様の処理によって復号化される。
【0190】
次に、フレームメモリ制御部1404は、上記のようにフレームメモリ1407に保持された各ピクチャの画像データを、図4(a) に示すように時間順に並び直して出力画像として出力する。
【0191】
以上のように、本発明に係る動画像復号化方法では、2方向予測を用いてピクチャ間予測符号化処理が行われているBピクチャを復号化する際に、前方向参照および後方向参照として用いるピクチャとして、既に復号化済みの表示時間順で近傍に位置するピクチャを用いて復号化する。
【0192】
また、Bピクチャで符号化モードとしてダイレクトモードが選択されている場合には、動きベクトル記憶部1406に保持している既に復号化済みの後方向参照ピクチャの動きベクトルを参照することにより、既に復号化済みの画像データから参照画像データを取得し、動き補償画像データを得る。
【0193】
このような動作により、2方向予測を用いてピクチャ間予測符号化処理を行うBピクチャを符号化する際に、前方向参照および後方向参照として用いるピクチャとして、表示時間順に近傍に位置するピクチャを用いて符号化されて生成された符号列を、復号化する際に正しく復号化処理を行うことができる。
【0194】
なお、本実施の形態では、ダイレクトモードにおいては、7つの例について説明したが、これは例えば、後方向参照ピクチャの同一位置のブロックの復号化方法等により、マクロブロックやブロック毎に一意的に決定される一つの方法を用いても良いし、ブロックやマクロブロック単位で複数の方法を切り替えて用いても良い。複数の方法を用いられている場合には、符号列中に記述されている、どのダイレクトモードを用いたかを示す情報を用いて、復号化を行う。この際には、動き補償復号化部1405の動作が、その情報によって変わることになる。例えば、動き補償のブロック単位でこの情報が付加されている場合、モード復号部1403でどのダイレクトモードが用いられて符号化されているかを決定し、それを動き補償復号部1405に伝える。そして、動き補償復号部1405は、どのダイレクトモードが用いられているかによって、本実施の形態で説明したような復号化方法を用いて復号化処理を行う。
【0195】
また、本実施の形態では、IまたはPピクチャ間に3枚のBピクチャが挟まれているピクチャ構成の場合について説明したが、このBピクチャの枚数は別の値、例えば4枚や5枚であっても良い。
【0196】
また、本実施の形態では、Pピクチャは表示時間順で前方または後方に位置する符号化済みのIまたはPピクチャを1つ参照して符号化され、Bピクチャは表示時間順で前方または後方に位置する近傍の符号化済みのピクチャを2つ参照して符号化されている符号列を復号化する場合について説明したが、これらはPピクチャの場合には、表示時間順で前方または後方に位置する、複数の符号化済みのIまたはPピクチャを参照ピクチャの候補とし、各ブロックで最大1つのピクチャを参照して符号化し、Bピクチャの場合には、表示時間順で前方または後方に位置する近傍の複数の符号化済みのピクチャを参照ピクチャの候補とし、各ブロックで最大2つのピクチャを参照して符号化された符号列であっても良い。
【0197】
また、動き補償復号部1405は、動きベクトル記憶部1406に動きベクトルを記憶する際に、対象ブロックが2方向予測またはダイレクトモードにより符号化されている場合には、前方向および後方向の両方の動きベクトルを記憶しても良いし、前方向動きベクトルのみを記憶するようにしても良い。前方向動きベクトルのみを記憶すると、動きベクトル記憶部1406のメモリ量を削減することができる。
【0198】
(実施の形態3)
さらに、上記各実施の形態で示した動画像符号化方法または動画像復号化方法の構成を実現するためのプログラムを、フレキシブルディスク等の記憶媒体に記録するようにすることにより、上記各実施の形態で示した処理を、独立したコンピュータシステムにおいて簡単に実施することが可能となる。
【0199】
図15は、上記各実施の形態の動画像符号化方法または動画像復号化方法を格納したフレキシブルディスクを用いて、コンピュータシステムにより実施する場合の説明図である。
【0200】
図15(b)は、フレキシブルディスクの正面からみた外観、断面構造、及びフレキシブルディスクを示し、図15(a)は、記録媒体本体であるフレキシブルディスクの物理フォーマットの例を示している。フレキシブルディスクFDはケースF内に内蔵され、該ディスクの表面には、同心円状に外周からは内周に向かって複数のトラックTrが形成され、各トラックは角度方向に16のセクタSeに分割されている。従って、上記プログラムを格納したフレキシブルディスクでは、上記フレキシブルディスクFD上に割り当てられた領域に、上記プログラムとしての動画像符号化方法が記録されている。
【0201】
また、図15(c)は、フレキシブルディスクFDに上記プログラムの記録再生を行うための構成を示す。上記プログラムをフレキシブルディスクFDに記録する場合は、コンピュータシステムCsから上記プログラムとしての動画像符号化方法または動画像復号化方法をフレキシブルディスクドライブを介して書き込む。また、フレキシブルディスク内のプログラムにより上記動画像符号化方法をコンピュータシステム中に構築する場合は、フレキシブルディスクドライブによりプログラムをフレキシブルディスクから読み出し、コンピュータシステムに転送する。
【0202】
なお、上記説明では、記録媒体としてフレキシブルディスクを用いて説明を行ったが、光ディスクを用いても同様に行うことができる。また、記録媒体はこれに限らず、ICカード、ROMカセット等、プログラムを記録できるものであれば同様に実施することができる。
【0203】
さらにここで、上記実施の形態で示した動画像符号化方法や動画像復号化方法の応用例とそれを用いたシステムを説明する。
図16は、コンテンツ配信サービスを実現するコンテンツ供給システムex100の全体構成を示すブロック図である。通信サービスの提供エリアを所望の大きさに分割し、各セル内にそれぞれ固定無線局である基地局ex107〜ex110が設置されている。
【0204】
このコンテンツ供給システムex100は、例えば、インターネットex101にインターネットサービスプロバイダex102および電話網ex104、および基地局ex107〜ex110を介して、コンピュータex111、PDA(personal digital assistant)ex112、カメラex113、携帯電話ex114、カメラ付きの携帯電話ex115などの各機器が接続される。
【0205】
しかし、コンテンツ供給システムex100は図16のような組合せに限定されず、いずれかを組み合わせて接続するようにしてもよい。また、固定無線局である基地局ex107〜ex110を介さずに、各機器が電話網ex104に直接接続されてもよい。
【0206】
カメラex113はデジタルビデオカメラ等の動画撮影が可能な機器である。また、携帯電話は、PDC(Personal Digital Communications)方式、CDMA(Code Division Multiple Access)方式、W−CDMA(Wideband−Code Division Multiple Access)方式、若しくはGSM(Global System for Mobile Communications)方式の携帯電話機、またはPHS(Personal Handyphone System)等であり、いずれでも構わない。
【0207】
また、ストリーミングサーバex103は、カメラex113から基地局ex109、電話網ex104を通じて接続されており、カメラex113を用いてユーザが送信する符号化処理されたデータに基づいたライブ配信等が可能になる。撮影したデータの符号化処理はカメラex113で行っても、データの送信処理をするサーバ等で行ってもよい。また、カメラex116で撮影した動画データはコンピュータex111を介してストリーミングサーバex103に送信されてもよい。カメラex116はデジタルカメラ等の静止画、動画が撮影可能な機器である。この場合、動画データの符号化はカメラex116で行ってもコンピュータex111で行ってもどちらでもよい。また、符号化処理はコンピュータex111やカメラex116が有するLSIex117において処理することになる。なお、動画像符号化・復号化用のソフトウェアをコンピュータex111等で読み取り可能な記録媒体である何らかの蓄積メディア(CD−ROM、フレキシブルディスク、ハードディスクなど)に組み込んでもよい。さらに、カメラ付きの携帯電話ex115で動画データを送信してもよい。このときの動画データは携帯電話ex115が有するLSIで符号化処理されたデータである。
【0208】
このコンテンツ供給システムex100では、ユーザがカメラex113、カメラex116等で撮影しているコンテンツ(例えば、音楽ライブを撮影した映像等)を上記実施の形態同様に符号化処理してストリーミングサーバex103に送信する一方で、ストリーミングサーバex103は要求のあったクライアントに対して上記コンテンツデータをストリーム配信する。クライアントとしては、上記符号化処理されたデータを復号化することが可能な、コンピュータex111、PDAex112、カメラex113、携帯電話ex114等がある。このようにすることでコンテンツ供給システムex100は、符号化されたデータをクライアントにおいて受信して再生することができ、さらにクライアントにおいてリアルタイムで受信して復号化し、再生することにより、個人放送をも実現可能になるシステムである。
【0209】
このシステムを構成する各機器の符号化、復号化には上記各実施の形態で示した動画像符号化装置あるいは動画像復号化装置を用いるようにすればよい。
その一例として携帯電話について説明する。
【0210】
図17は、上記実施の形態で説明した動画像符号化方法と動画像復号化方法を用いた携帯電話ex115を示す図である。携帯電話ex115は、基地局ex110との間で電波を送受信するためのアンテナex201、CCDカメラ等の映像、静止画を撮ることが可能なカメラ部ex203、カメラ部ex203で撮影した映像、アンテナex201で受信した映像等が復号化されたデータを表示する液晶ディスプレイ等の表示部ex202、操作キーex204群から構成される本体部、音声出力をするためのスピーカ等の音声出力部ex208、音声入力をするためのマイク等の音声入力部ex205、撮影した動画もしくは静止画のデータ、受信したメールのデータ、動画のデータもしくは静止画のデータ等、符号化されたデータまたは復号化されたデータを保存するための記録メディアex207、携帯電話ex115に記録メディアex207を装着可能とするためのスロット部ex206を有している。記録メディアex207はSDカード等のプラスチックケース内に電気的に書換えや消去が可能な不揮発性メモリであるEEPROM(Electrically Erasable and Programmable Read Only Memory)の一種であるフラッシュメモリ素子を格納したものである。
【0211】
さらに、携帯電話ex115について図18を用いて説明する。携帯電話ex115は表示部ex202及び操作キーex204を備えた本体部の各部を統括的に制御するようになされた主制御部ex311に対して、電源回路部ex310、操作入力制御部ex304、画像符号化部ex312、カメラインターフェース部ex303、LCD(Liquid Crystal Display)制御部ex302、画像復号化部ex309、多重分離部ex308、記録再生部ex307、変復調回路部ex306及び音声処理部ex305が同期バスex313を介して互いに接続されている。
【0212】
電源回路部ex310は、ユーザの操作により終話及び電源キーがオン状態にされると、バッテリパックから各部に対して電力を供給することによりカメラ付ディジタル携帯電話ex115を動作可能な状態に起動する。
【0213】
携帯電話ex115は、CPU、ROM及びRAM等でなる主制御部ex311の制御に基づいて、音声通話モード時に音声入力部ex205で集音した音声信号を音声処理部ex305によってディジタル音声データに変換し、これを変復調回路部ex306でスペクトラム拡散処理し、送受信回路部ex301でディジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex201を介して送信する。また携帯電話機ex115は、音声通話モード時にアンテナex201で受信した受信データを増幅して周波数変換処理及びアナログディジタル変換処理を施し、変復調回路部ex306でスペクトラム逆拡散処理し、音声処理部ex305によってアナログ音声データに変換した後、これを音声出力部ex208を介して出力する。
【0214】
さらに、データ通信モード時に電子メールを送信する場合、本体部の操作キーex204の操作によって入力された電子メールのテキストデータは操作入力制御部ex304を介して主制御部ex311に送出される。主制御部ex311は、テキストデータを変復調回路部ex306でスペクトラム拡散処理し、送受信回路部ex301でディジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex201を介して基地局ex110へ送信する。
【0215】
データ通信モード時に画像データを送信する場合、カメラ部ex203で撮像された画像データをカメラインターフェース部ex303を介して画像符号化部ex312に供給する。また、画像データを送信しない場合には、カメラ部ex203で撮像した画像データをカメラインターフェース部ex303及びLCD制御部ex302を介して表示部ex202に直接表示することも可能である。
【0216】
画像符号化部ex312は、本願発明で説明した動画像符号化装置を備えた構成であり、カメラ部ex203から供給された画像データを上記実施の形態で示した動画像符号化装置に用いた符号化方法によって圧縮符号化することにより符号化画像データに変換し、これを多重分離部ex308に送出する。また、このとき同時に携帯電話機ex115は、カメラ部ex203で撮像中に音声入力部ex205で集音した音声を音声処理部ex305を介してディジタルの音声データとして多重分離部ex308に送出する。
【0217】
多重分離部ex308は、画像符号化部ex312から供給された符号化画像データと音声処理部ex305から供給された音声データとを所定の方式で多重化し、その結果得られる多重化データを変復調回路部ex306でスペクトラム拡散処理し、送受信回路部ex301でディジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex201を介して送信する。
【0218】
データ通信モード時にホームページ等にリンクされた動画像ファイルのデータを受信する場合、アンテナex201を介して基地局ex110から受信した受信データを変復調回路部ex306でスペクトラム逆拡散処理し、その結果得られる多重化データを多重分離部ex308に送出する。
【0219】
また、アンテナex201を介して受信された多重化データを復号化するには、多重分離部ex308は、多重化データを分離することにより画像データのビットストリームと音声データのビットストリームとに分け、同期バスex313を介して当該符号化画像データを画像復号化部ex309に供給すると共に当該音声データを音声処理部ex305に供給する。
【0220】
次に、画像復号化部ex309は、本願発明で説明した動画像復号化装置を備えた構成であり、画像データのビットストリームを上記実施の形態で示した符号化方法に対応した復号化方法で復号することにより再生動画像データを生成し、これをLCD制御部ex302を介して表示部ex202に供給し、これにより、例えばホームページにリンクされた動画像ファイルに含まれる動画データが表示される。このとき同時に音声処理部ex305は、音声データをアナログ音声データに変換した後、これを音声出力部ex208に供給し、これにより、例えばホームページにリンクされた動画像ファイルに含まる音声データが再生される。
【0221】
なお、上記システムの例に限られず、最近は衛星、地上波によるディジタル放送が話題となっており、図19に示すようにディジタル放送用システムにも上記実施の形態の少なくとも動画像符号化装置または動画像復号化装置のいずれかを組み込むことができる。具体的には、放送局ex409では映像情報のビットストリームが電波を介して通信または放送衛星ex410に伝送される。これを受けた放送衛星ex410は、放送用の電波を発信し、この電波を衛星放送受信設備をもつ家庭のアンテナex406で受信し、テレビ(受信機)ex401またはセットトップボックス(STB)ex407などの装置によりビットストリームを復号化してこれを再生する。また、記録媒体であるCDやDVD等の蓄積メディアex402に記録したビットストリームを読み取り、復号化する再生装置ex403にも上記実施の形態で示した動画像復号化装置を実装することが可能である。この場合、再生された映像信号はモニタex404に表示される。また、ケーブルテレビ用のケーブルex405または衛星/地上波放送のアンテナex406に接続されたセットトップボックスex407内に動画像復号化装置を実装し、これをテレビのモニタex408で再生する構成も考えられる。このときセットトップボックスではなく、テレビ内に動画像復号化装置を組み込んでも良い。また、アンテナex411を有する車ex412で衛星ex410からまたは基地局ex107等から信号を受信し、車ex412が有するカーナビゲーションex413等の表示装置に動画を再生することも可能である。
【0222】
更に、画像信号を上記実施の形態で示した動画像符号化装置で符号化し、記録媒体に記録することもできる。具体例としては、DVDディスクex421に画像信号を記録するDVDレコーダや、ハードディスクに記録するディスクレコーダなどのレコーダex420がある。更にSDカードex422に記録することもできる。レコーダex420が上記実施の形態で示した動画像復号化装置を備えていれば、DVDディスクex421やSDカードex422に記録した画像信号を再生し、モニタex408で表示することができる。
【0223】
なお、カーナビゲーションex413の構成は例えば図18に示す構成のうち、カメラ部ex203とカメラインターフェース部ex303、画像符号化部ex312を除いた構成が考えられ、同様なことがコンピュータex111やテレビ(受信機)ex401等でも考えられる。
【0224】
また、上記携帯電話ex114等の端末は、符号化器・復号化器を両方持つ送受信型の端末の他に、符号化器のみの送信端末、復号化器のみの受信端末の3通りの実装形式が考えられる。
【0225】
このように、上記実施の形態で示した動画像符号化方法あるいは動画像復号化方法を上述したいずれの機器・システムに用いることは可能であり、そうすることで、上記実施の形態で説明した効果を得ることができる。
【0226】
また、本発明はかかる上記実施形態に限定されるものではなく、本発明の範囲を逸脱することなく種々の変形または修正が可能である。
【0227】
【発明の効果】
以上のように、本発明に係る動画像符号化方法によれば、Bピクチャを符号化する際に、より表示時間順で近傍のピクチャを参照ピクチャとして用いることができ、これにより動き補償の際の予測効率が向上するため、符号化効率が向上する。
【0228】
また、ダイレクトモードにおいて、第2参照ピクチャの第1動きベクトルに対してスケーリングを行うことにより、動きベクトルの情報を送る必要がなく、かつ予測効率を向上させることができる。
【0229】
また、ダイレクトモードにおいて、第2参照ピクチャのダイレクトモードで実質的に用いた第1動きベクトルに対してスケーリングを行うことにより、動きベクトルの情報を送る必要がなく、かつ第2参照ピクチャ内の同一位置のブロックがダイレクトモードで符号化されている場合でも、予測効率を向上させることができる。
【0230】
また、ダイレクトモードにおいて、第2参照ピクチャの同一位置のブロックを符号化する際に用いた第2動きベクトルに対してスケーリングを行うことにより、動きベクトルの情報を送る必要がなく、かつ第2参照ピクチャ内の同一位置のブロックが第2動きベクトルしか有しない場合でも、予測効率を向上させることができる。
【0231】
また、ダイレクトモードにおける動きベクトルを強制的に0と置くことにより、ダイレクトモードが選択された場合には、動きベクトルの情報を送る必要がなく、かつ動きベクトルのスケーリング処理が不要となり処理量の削減を図ることができる。
【0232】
また、ダイレクトモードにおいて、後方Pピクチャの動きベクトルに対してスケーリングを行うことにより、第2参照ピクチャがBピクチャである場合に、そのBピクチャの動きベクトルを記憶しておく必要が無い。また、動きベクトルの情報を送る必要がなく、かつ予測効率を向上させることができる。
【0233】
また、ダイレクトモードにおいて、第2参照ピクチャが第1動きベクトルを有していれば、この第1動きベクトルに対してスケーリングを行い、また、第2参照ピクチャが第1動きベクトルを有さず第2動きベクトルのみを有していれば、この第2動きベクトルに対してスケーリングを行うので、動きベクトルの情報を符号列に付加する必要がなく、かつ予測効率を向上させることができる。
【0234】
また、本発明に係る動画像復号化方法によれば、2方向予測を用いてピクチャ間予測符号化処理を行う際に第1参照および第2参照として用いるピクチャとして、表示時間順に近傍に位置するピクチャを用いて符号化されて生成された符号列を復号化する際に、正しく復号化処理を行うことができる。
【図面の簡単な説明】
【図1】本発明に係る動画像符号化方法を用いた動画像符号化装置の一実施の形態の構成を示すブロック図である。
【図2】本発明の実施の形態におけるピクチャ番号と相対インデックスの説明図である。
【図3】本発明の実施の形態における動画像符号化装置による画像符号化信号フォーマットの概念図である。
【図4】本発明の実施の形態の並べ替え用メモリにおけるピクチャの順序を示す模式図であり、(a) 入力された順序、(b) 並び替えられた順序を示す図である。
【図5】本発明の実施の形態でのダイレクトモードにおける動きベクトルを示す模式図であり、(a) 対象ブロックがピクチャB7である場合、(b) 対象ブロックaがピクチャB6である場合の第一および第二の例、(c) 対象ブロックaがピクチャB6である場合の第三の例、(d) 対象ブロックaがピクチャB6である場合の第四の例を示す図である。
【図6】本発明の実施の形態でのダイレクトモードにおける動きベクトルを示す模式図であり、(a) 対象ブロックaがピクチャB6である場合の第五の例、(b) 対象ブロックaがピクチャB6である場合の第六の例、(c) 対象ブロックaがピクチャB6である場合の第七の例、(d) 対象ブロックaがピクチャB8である場合を示す図である。
【図7】本発明の実施の形態におけるピクチャの予測関係および順序を示す模式図であり、(a) 表示時間順で示した各ピクチャの予測関係、(b) 符号化順(符号列順)に並べ替えたピクチャ順を示す図である。
【図8】本発明の実施の形態におけるピクチャの予測関係および順序を示す模式図であり、(a) 表示時間順で示した各ピクチャの予測関係、(b) 符号化順(符号列順)に並べ替えたピクチャ順を示す図である。
【図9】本発明の実施の形態におけるピクチャの予測関係および順序を示す模式図であり、(a) 表示時間順で示した各ピクチャの予測関係、(b) 符号化順(符号列順)に並べ替えたピクチャ順を示す図である。
【図10】本発明の実施の形態の図4に示すピクチャ予測構造を階層的に示す模式図である。
【図11】本発明の実施の形態の図7に示すピクチャ予測構造を階層的に示す模式図である。
【図12】本発明の実施の形態の図8に示すピクチャ予測構造を階層的に示す模式図である。
【図13】本発明の実施の形態の図9に示すピクチャ予測構造を階層的に示す模式図である。
【図14】本発明に係る動画像復号化方法を用いた動画像復号化装置の一実施の形態の構成を示すブロック図である。
【図15】実施の形態1の動画像符号化方法および動画像復号化方法をコンピュータシステムにより実現するためのプログラムを格納するための記録媒体についての説明図であり、(a) 記録媒体本体であるフレキシブルディスクの物理フォーマットの例を示した説明図、(b) フレキシブルディスクの正面からみた外観、断面構造、及びフレキシブルディスクを示した説明図、(c) フレキシブルディスクFDに上記プログラムの記録再生を行うための構成を示した説明図である。
【図16】コンテンツ配信サービスを実現するコンテンツ供給システムの全体構成を示すブロック図である。
【図17】携帯電話の一例を示す概略図である。
【図18】携帯電話の内部構成を示すブロック図である。
【図19】ディジタル放送用システムの全体構成を示すブロック図である。
【図20】従来の動画像符号化方法におけるピクチャの予測関係および順序を示す模式図であり、(a) 各ピクチャと対応する参照ピクチャとの関係、(b) 符号化により生成された符号列の順序を示す図である。
【図21】従来の動画像符号化方法でのダイレクトモードにおける動きベクトルを示す模式図である。
【符号の説明】
101 並べ替え用メモリ
102 差分演算部
103 予測誤差符号化部
104 符号列生成部
105 予測誤差復号化部
106 加算演算部
107 参照ピクチャ用メモリ
108 動きベクトル検出部
109 モード選択部
110 符号化制御部
116 動きベクトル記憶部
1401 符号列解析部
1402 予測誤差復号化部
1403 モード復号部
1404 フレームメモリ制御部
1405 動き補償復号部
1406 動きベクトル記憶部
1407 フレームメモリ
1408 加算演算部
【発明の属する技術分野】
本発明は、動画像符号化方法および動画像復号化方法に関し、特に処理対象ピクチャに対して、処理済みのピクチャを参照ピクチャとして用いるピクチャ間予測符号化処理及びピクチャ間予測復号化処理を施す方法に関するものである。
【0002】
【従来の技術】
動画像符号化処理では、一般に動画像が有する空間方向および時間方向の冗長性を利用して情報量の圧縮が行われる。ここで一般に、空間方向の冗長性を利用する方法としては、周波数領域への変換が用いられ、時間方向の冗長性を利用する方法としては、ピクチャ間予測符号化処理が用いられる。ピクチャ間予測符号化処理では、あるピクチャを符号化する際に、符号化処理の対象となる符号化対象ピクチャに対して表示時間順で前方または後方にある符号化処理済みのピクチャを、符号化対象ピクチャに対応する参照ピクチャとする。そして、その参照ピクチャに対する符号化対象ピクチャの動き量を検出し、この動き量に基づいて動き補償処理を行って得られた画像データと符号化対象ピクチャの画像データとの差分を取ることにより時間方向の冗長性を取り除く。さらに、この差分値に対して空間方向の冗長度を取り除くことにより、符号化対象ピクチャに対する情報量の圧縮を行う。
【0003】
現在標準化中のH.264と呼ばれる動画像符号化方式では、ピクチャ間予測符号化処理を行わない、すなわちピクチャ内符号化処理を行うピクチャをIピクチャと呼ぶ。また、表示時間順で符号化対象ピクチャの前方または後方にある既に処理済みの1つのピクチャを参照してピクチャ間予測符号化が行われるピクチャをPピクチャと呼び、表示時間順で符号化対象ピクチャの前方または後方にある既に処理済みの2つのピクチャを参照してピクチャ間予測符号化が行われるピクチャをBピクチャと呼ぶ(例えば、非特許文献1参照)。
【0004】
図20(a) は、上記の動画像符号化方式における、各ピクチャと、対応する参照ピクチャとの関係を示す図であり、図20(b) は符号化により生成された符号列の順序を示す図である。
【0005】
ピクチャI1はIピクチャであり、ピクチャP5、P9、P13は、Pピクチャであり、ピクチャB2,B3,B4、B6、B7、B8、B10、B11、B12は、Bピクチャである。つまり、PピクチャP5、P9、P13は、矢印で示すように、それぞれ、IピクチャI1、PピクチャP5,PピクチャP9を参照ピクチャとして用いてピクチャ間予測符号化が施されるものである。
【0006】
また、BピクチャB2、B3、B4はそれぞれ、矢印で示すように、IピクチャI1及びPピクチャP5を参照ピクチャとして用いてピクチャ間予測符号化が施されるもの、BピクチャB6、B7、B8はそれぞれ、矢印で示すように、PピクチャP5及びPピクチャB9を参照ピクチャとして用いてピクチャ間予測符号化が施されるもの、BピクチャB10、B11、B12はそれぞれ、矢印で示すように、PピクチャP9及びPピクチャP13を参照ピクチャとして用いてピクチャ間予測符号化が施されるものである。
【0007】
以上の符号化の際には、参照ピクチャとして用いられるピクチャは、そのピクチャを参照するピクチャよりも先行して符号化される。したがって、上記の符号化により生成された符号列は、図20(b) に示すようなピクチャの順序となる。
【0008】
ところで、H.264方式の動画像符号化方式では、Bピクチャの符号化において、ダイレクトモードと呼ぶ符号化モードを選択することができる。ダイレクトモードにおけるフレーム間予測方法を、図21を用いて説明する。図21はダイレクトモードにおける動きベクトルを示す説明図であり、ピクチャB6のブロックaをダイレクトモードで符号化する場合を示している。この場合、ピクチャB6の後方にある参照ピクチャであるピクチャP9中の、ブロックaと同じ位置にあるブロックbを符号化した際に用いた動きベクトルcを利用する。動きベクトルcは、ブロックbが符号化された際に用いられた動きベクトルであり、ピクチャP5を参照している。ブロックaは、動きベクトルcと平行な動きベクトルを用いて、前方向参照ピクチャであるピクチャP5と、後方向参照ピクチャであるピクチャP9とから参照ブロックを取得し、2方向予測を行って符号化される。すなわち、ブロックaを符号化する際に用いられる動きベクトルは、ピクチャP5に対しては動きベクトルd、ピクチャP9に対しては動きベクトルeとなる。
【0009】
【非特許文献1】
ISO/IEC 14496−2「Information technology −Coding of audio−visualobjects −Part2: Visual」pp.218−219
【0010】
【発明が解決しようとする課題】
しかしながら、上記のようにBピクチャに対してIピクチャやPピクチャを参照するピクチャ間予測符号化処理を施す際に、符号化対象ピクチャと参照ピクチャとの間の時間的距離が長くなる場合があり、このような場合には、符号化効率の低下を招くこととなる。特にBピクチャの挿入枚数、つまり、隣合うIピクチャとPピクチャとの間、あるいは最も近い位置にある2つのPピクチャの間に配置されるBピクチャの数が多くなった場合、符号化効率の低下が顕著となる。
【0011】
そこで、本発明は上記のような問題点を解決するためになされたものであり、IピクチャとPピクチャとの間、あるいはPピクチャ間に挿入されるBピクチャの枚数が多くなった場合でも、Bピクチャの符号化効率の劣化を回避することができる動画像符号化方法および動画像復号化方法を提供することを目的とする。また、ダイレクトモードにおける符号化効率を向上させることができる動画像符号化方法および動画像復号化方法を提供することを目的とする。
【0012】
【課題を解決するための手段】
上記目的を達成するために、本発明に係る動画像符号化方法は、動画像を構成する各ピクチャに対応する画像データを符号化して符号列を生成する動画像符号化方法であって、符号化の対象となる対象ピクチャが、ピクチャ内符号化を行うブロックのみを有するIピクチャ、既に符号化済みであるピクチャを第1参照ピクチャとして用いる1方向参照によるピクチャ間予測符号化を行うブロックを有するPピクチャ、既に符号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測符号化を行うブロックを有するBピクチャのいずれかとして符号化を行う符号化ステップを含み、前記符号化ステップは、前記IピクチャまたはPピクチャ間に挟まれる複数の連続した前記Bピクチャの符号化順序を、表示時間順とは異なる順序に決定する制御ステップを含むことを特徴とする。
【0013】
これによって、Bピクチャを符号化する際に、より表示時間順で近傍のピクチャを参照ピクチャとして用いることができるので、動き補償の際の予測効率を向上して、符号化効率を向上することができる。
【0014】
また、本発明に係る動画像符号化方法は、動画像を構成する各ピクチャに対応する画像データを符号化して符号列を生成する動画像符号化方法であって、符号化の対象となる対象ピクチャを、少なくとも、既に符号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測符号化を行うブロックを有するBピクチャとして符号化を行う符号化ステップを含み、前記符号化ステップでは、符号化対象であるBピクチャの符号化対象ブロックを、既に符号化済みであるブロックの有する動きベクトルに基づく、前記符号化対象ブロックの動きベクトルによって動き補償するダイレクトモードとして符号化する場合に、前記符号化対象ブロックと同一位置にある前記第2参照ピクチャ内のブロックを符号化した際に用いた当該ブロックが参照する第1参照ピクチャに基づく第1動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングすることにより、前記符号化対象ブロックを動き補償する際の動きベクトルを得ることを特徴とする。
【0015】
これによって、ダイレクトモードが選択された場合には、第2参照ピクチャの第1動きベクトルに対してスケーリングを行うので、動きベクトルの情報を符号列に付加する必要がなく、かつ予測効率を向上させることができる。
【0016】
また、符号化対象であるBピクチャの符号化対象ブロックをダイレクトモードとして符号化する場合に、前記符号化対象ブロックと同一位置にある前記第2参照ピクチャ内のブロックを符号化した際に用いた当該ブロックが参照する第2参照ピクチャに基づく第2動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングすることにより、前記符号化対象ブロックを動き補償する際の動きベクトルを得てもよい。
【0017】
これによって、ダイレクトモードが選択された場合には、第2参照ピクチャの第2動きベクトルに対してスケーリングを行うので、動きベクトルの情報を符号列に付加する必要がなく、かつ予測効率を向上させることができる。
【0018】
また、符号化対象であるBピクチャの符号化対象ブロックをダイレクトモードとして符号化する場合に、前記符号化対象ブロックと同一位置にある前記第2参照ピクチャ内のブロックがダイレクトモードで符号化されているときには、前記第2参照ピクチャ内のブロックを符号化する際に実質的に用いた当該ブロックが参照する第1参照ピクチャに基づく第1動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングを行うことにより、前記符号化対象ブロックを動き補償する際の動きベクトルを得てもよい。
【0019】
これによって、ダイレクトモードが選択された場合には、第2参照ピクチャの実質的に用いた第1動きベクトルに対してスケーリングを行うので、動きベクトルの情報を符号列に付加する必要がなく、かつ予測効率を向上させることができる。
【0020】
また、符号化対象であるBピクチャの符号化対象ブロックをダイレクトモードとして符号化する場合に、前記符号化対象ブロックと同一位置にある後方Pピクチャ内のブロックを符号化した際に用いた当該ブロックが参照する第1参照ピクチャに基づく第1動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングを行うことにより、前記符号化対象ブロックを動き補償する際の動きベクトルを得てもよい。
【0021】
これによって、ダイレクトモードが選択された場合には、後方Pピクチャの第1動きベクトルに対してスケーリングを行うので、動きベクトルの情報を符号列に付加する必要がなく、かつ予測効率を向上させることができる。
【0022】
また、符号化対象であるBピクチャの符号化対象ブロックをダイレクトモードとして符号化する場合に、前記符号化対象ブロックと同一位置にある前記第2参照ピクチャ内のブロックが少なくとも第1参照ピクチャに基づく第1動きベクトルを用いて符号化されている場合は、前記第1動きベクトルに対して、前記同一位置にある前記第2参照ピクチャ内のブロックが第2参照ピクチャに基づく第2動きベクトルのみを用いて符号化されている場合は、前記第2動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングすることにより、前記符号化対象ブロックを動き補償する際の動きベクトルを得てもよい。
【0023】
これによって、ダイレクトモードが選択された場合には、第2参照ピクチャが第1動きベクトルを有していれば、この第1動きベクトルに対してスケーリングを行い、また、第2参照ピクチャが第1動きベクトルを有さず第2動きベクトルのみを有していれば、この第2動きベクトルに対してスケーリングを行うので、動きベクトルの情報を符号列に付加する必要がなく、かつ予測効率を向上させることができる。
【0024】
また、本発明に係る動画像復号化方法は、動画像を構成する各ピクチャに対応する画像データを符号化して生成された符号列を復号化する動画像復号化方法であって、復号化の対象となる対象ピクチャを、既に復号化済みのピクチャを参照ピクチャとして用いてピクチャ間予測復号化を行う復号化ステップを含み、前記復号化ステップでは、既に復号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測復号化を行う際に、前記第1参照ピクチャおよび第2参照ピクチャとして、それぞれ表示時間順で最も近いピクチャを少なくとも含む符号列を復号化することを特徴とする。
【0025】
これによって、2方向参照によるピクチャ間予測符号化処理を行う際に第1参照ピクチャおよび第2参照ピクチャとして、表示時間順に近傍に位置するピクチャを用いて符号化されて生成された符号列を、復号化する際に正しく復号化処理を行うことができる。
【0026】
また、本発明に係る動画像復号化方法は、動画像を構成する各ピクチャに対応する画像データを符号化して生成された符号列を復号化する動画像復号化方法であって、復号化の対象となる対象ピクチャを、既に復号化済みのピクチャを参照ピクチャとして用いてピクチャ間予測復号化を行う復号化ステップを含み、前記復号化ステップでは、復号化対象ピクチャが、既に復号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測復号化を行うブロックを有するピクチャであり、かつ、復号化対象ブロックを既に復号化済みであるブロックの有する動きベクトルに基づく、前記復号化対象ブロックの動きベクトルによって動き補償するダイレクトモードとして復号化する場合に、前記復号化対象ブロックと同一位置にある前記第2参照ピクチャ内のブロックを復号化した際に用いた当該ブロックが参照する第1参照ピクチャに基づく第1動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングを行うことにより、前記復号化対象ブロックを動き補償する際の動きベクトルを得ることを特徴とする。
【0027】
これによって、ダイレクトモードが選択された場合には、第2参照ピクチャの第1動きベクトルに対してスケーリングを行うので、復号化する際に正しく復号化処理を行うことができる。
【0028】
また、復号化対象ピクチャが2方向参照によるピクチャ間予測復号化を行うブロックを有するピクチャであり、かつ、復号化対象ブロックをダイレクトモードとして復号化する場合に、前記復号化対象ブロックと同一位置にある前記第2参照ピクチャ内のブロックを復号化した際に用いた当該ブロックが参照する第2参照ピクチャに基づく第2動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングを行うことにより、前記復号化対象ブロックを動き補償する際の動きベクトルを得てもよい。
【0029】
これによって、ダイレクトモードが選択された場合には、第2参照ピクチャの第2動きベクトルに対してスケーリングを行うので、復号化する際に正しく復号化処理を行うことができる。
【0030】
また、復号化対象ピクチャが2方向参照によるピクチャ間予測復号化を行うブロックを有するピクチャであり、かつ、復号化対象ブロックをダイレクトモードとして復号化する場合に、前記復号化対象ブロックと同一位置にある前記第2参照ピクチャ内のブロックがダイレクトモードで復号化されているときには、前記第2参照ピクチャ内のブロックを復号化する際に実質的に用いた当該ブロックが参照する第1参照ピクチャに基づく第1動きベクトルに対して、参照ピクチャの表示順序を示す情報の差を用いてスケーリングを行うことにより、前記復号化対象ブロックを動き補償する際の動きベクトルを得てもよい。
【0031】
これによって、ダイレクトモードが選択された場合には、第2参照ピクチャの実質的に用いた第1動きベクトルに対してスケーリングを行うので、復号化する際に正しく復号化処理を行うことができる。
【0032】
また、復号化対象ピクチャが2方向参照によるピクチャ間予測復号化を行うブロックを有するピクチャであり、かつ、復号化対象ブロックをダイレクトモードとして復号化する場合に、表示時間順で後方に位置する、既に復号化済みであるピクチャを第1参照ピクチャとして用いる1方向参照によるピクチャ間予測復号化を行うピクチャ内の、前記復号化対象ブロックと同一位置にあるブロックを復号化した際に用いた当該ブロックが参照する第1参照ピクチャに基づく第1動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングを行うことにより、前記復号化対象ブロックを動き補償する際の動きベクトルを得てもよい。
【0033】
これによって、ダイレクトモードが選択された場合には、1方向参照によるピクチャ間予測復号化を行うピクチャの第1動きベクトルに対してスケーリングを行うので、復号化する際に正しく復号化処理を行うことができる。
【0034】
なお、本発明は、このような動画像符号化方法および動画像復号化方法として実現することができるだけでなく、このような動画像符号化方法および動画像復号化方法が含む特徴的なステップを手段として備える動画像符号化装置および動画像復号化装置として実現できる。また、動画像符号化方法により符号化した符号列として実現し、CD−ROM等の記録媒体やインターネット等の伝送媒体を介して配信することができる。
【0035】
【発明の実施の形態】
本発明の実施の形態について、図面を参照しながら説明する。
(実施の形態1)
図1は、本発明に係る動画像符号化方法を用いた動画像符号化装置の一実施の形態の構成を示すブロック図である。
【0036】
動画像符号化装置は、図1に示すように並べ替え用メモリ101、差分演算部102、予測誤差符号化部103、符号列生成部104、予測誤差復号化部105、加算演算部106、参照ピクチャ用メモリ107、動きベクトル検出部108、モード選択部109、符号化制御部110、スイッチ111〜115、および動きベクトル記憶部116を備えている。
【0037】
並べ替え用メモリ101は、表示時間順にピクチャ単位で入力された動画像を格納する。符号化制御部110は、並べ替え用メモリ101に格納された各ピクチャを符号化が行われる順に並び替えを行う。また、符号化制御部110は、動きベクトル記憶部116への動きベクトルの記憶動作を制御する。
【0038】
動きベクトル検出部108は、符号化済みの復号化画像データを参照ピクチャとして用いて、そのピクチャ内の探索領域において最適と予測される位置を示す動きベクトルの検出を行う。モード選択部109は、動きベクトル検出部108で検出された動きベクトルを用いて、マクロブロックの符号化モードを決定し、この符号化モードに基づいて予測画像データを生成する。差分演算部102は、並べ替え用メモリ101より読み出された画像データと、モード選択部109より入力された予測画像データとの差分を演算し、予測誤差画像データを生成する。
【0039】
予測誤差符号化部103は、入力された予測誤差画像データに対して周波数変換や量子化等の符号化処理を行い、符号化データを生成する。符号列生成部104は、入力された符号化データに対して可変長符号化等を行い、さらにモード選択部109から入力された動きベクトルの情報、符号化モードの情報、およびその他の関連情報等を付加することにより符号列を生成する。
【0040】
予測誤差復号化部105は、入力された符号化データに対して逆量子化や逆周波数変換等の復号化処理を行い、復号化差分画像データを生成する。加算演算部106は、予測誤差復号化部105より入力された復号化差分画像データと、モード選択部109より入力された予測画像データとを加算し、復号化画像データを生成する。参照ピクチャ用メモリ107は、生成された復号化画像データを格納する。
【0041】
図2はピクチャと相対インデックスの説明図である。相対インデックスは、参照ピクチャ用メモリ107に格納された参照ピクチャを一意に識別するために用いられ、図2に示すように各ピクチャに対応付けられている番号である。また、相対インデックスは、ブロックをピクチャ間予測により符号化する際に使用する参照ピクチャを指示するために使用される。
【0042】
図3は動画像符号化装置による動画像符号化信号フォーマットの概念図である。1ピクチャ分の符号化信号Picture は、ピクチャ先頭に含まれるヘッダ符号化信号Header、ダイレクトモードによるブロックの符号化信号Block1、ダイレクトモード以外のピクチャ間予測によるブロックの符号化信号Block2等から構成されている。また、ダイレクトモード以外のピクチャ間予測によるブロックの符号化信号Block2は、ピクチャ間予測に使用する2つの参照ピクチャを示すための第1相対インデックスRIdx1 および第2相対インデックスRIdx2 、第1動きベクトルMV1、第2動きベクトルMV2をこの順で有している。一方、ダイレクトモードによるブロックの符号化信号Block1は、第1相対インデックスRIdx1 、第2相対インデックスRIdx2 、第1動きベクトルMV1、第2動きベクトルMV2を有していない。第1相対インデックスRIdx1 、第2相対インデックスRIdx2 のいずれを使用するかは予測種別PredTypeにより判断することができる。また、第1相対インデックスRIdx1 は第1参照ピクチャを示し、第2相対インデックスRIdx2 は第2参照ピクチャを示している。すなわち、第1参照ピクチャであるか第2参照ピクチャであるかは、符号化列中のデータ位置で決まる。
【0043】
なお、表示時間順で前または後ろのいずれかにある、既に符号化済みであるピクチャを第1参照ピクチャとして用いる1方向参照によるピクチャ間予測符号化を行うピクチャがPピクチャであり、表示時間順で前または後ろのいずれかにある、既に符号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測符号化を行うピクチャがBピクチャであるが、本実施の形態では、第1参照ピクチャを前方向参照ピクチャとして、第2参照ピクチャを後方向参照ピクチャとして説明する。また、第1参照ピクチャおよび第2参照ピクチャそれぞれに対する動きベクトルである第1動きベクトル、第2動きベクトルを、それぞれ前方向動きベクトル、後方向動きベクトルとして説明する。
【0044】
次に、第1相対インデックス、第2相対インデックスの付与方法について図2(a) を用いて説明する。
第1相対インデックスの値には、まず、表示順序を示す情報において、符号化対象ピクチャより前の参照ピクチャに対し、符号化対象ピクチャに近い順より0から始まる値が割り当てられる。符号化対象より前の参照ピクチャ全てに対し0から始まる値が割り当てられたら、次に符号化対象ピクチャより後の参照ピクチャに対し、符号化対象ピクチャに近い順から続きの値が割り当てられる。
【0045】
第2相対インデックスの値には、まず、表示順序を示す情報において、符号化対象ピクチャより後の参照ピクチャに対し、符号化対象ピクチャに近い順より0から始まる値が割り当てられる。符号化対象より後の参照ピクチャ全てに対し0から始まる値が割り当てられたら、次に符号化対象ピクチャより前の参照ピクチャに対し、符号化対象ピクチャに近い順から続きの値が割り当てられる。
【0046】
例えば、図2(a) において、第1相対インデックスRIdx1が0で第2相対インデックスRidx2が1である場合、前方向参照ピクチャはピクチャ番号6のBピクチャであり、後方向参照ピクチャはピクチャ番号9のPピクチャである。ここでピクチャ番号は、表示順を示す番号である。
【0047】
ブロック中の相対インデックスは可変長符号語により表現され、値が小さいほど短い符号長のコードが割り当てられている。通常、ピクチャ間予測の参照ピクチャとして符号化対象ピクチャに最も近いピクチャが選択されるため、上記のように符号化対象ピクチャに近い順に相対インデックス値を割り当てれば符号化効率は高くなる。
【0048】
一方、符号化信号中のバッファ制御信号(図3に示すHeader内のRPSL)を用いて明示的に指示することにより、相対インデックスに対する参照ピクチャの割り当てを任意に変更することができる。この割り当ての変更により、第2相対インデックスが0の参照ピクチャを参照ピクチャ用メモリ107内の任意の参照ピクチャにすることも可能で、例えば、図2(b) に示すようにピクチャに対する相対インデックスの割り当てを変更することができる。
【0049】
次に、上記のように構成された動画像符号化装置の動作について説明する。
図4は、並べ替え用メモリ101におけるピクチャの順序を示す説明図であり、(a) 入力された順序、(b) 並び替えられた順序を示す説明図である。ここで、縦線はピクチャを示し、各ピクチャの右下に示す記号は、1文字目のアルファベットがピクチャタイプ(I、PまたはB)を示し、2文字目以降の数字が表示順を示すピクチャ番号を示している。
【0050】
入力画像は、例えば図4(a) に示すように表示時間順にピクチャ単位で並べ替え用メモリ101に入力される。並べ替え用メモリ101にピクチャが入力されると、符号化制御部110は、並べ替え用メモリ101内で入力された各ピクチャを、符号化が行われる順に並び替える。この符号化順への並び替えは、ピクチャ間予測符号化における参照関係に基づいて行われ、参照ピクチャとして用いられるピクチャが、参照ピクチャとして用いるピクチャよりも先に符号化されるように並び替えられる。
【0051】
ここで、Pピクチャは表示時間順で前方または後方にある、近傍の既に符号化済みのIまたはPピクチャを1つ参照するものとする。また、Bピクチャは表示時間順で前方または後方にある、近傍の既に符号化済みのピクチャを2つ参照するものとする。
【0052】
ピクチャの符号化順は、2つのPピクチャの間にあるBピクチャ(図4(a) の例では3枚)のうち、中央にあるピクチャから符号化を行い、その後Pピクチャに近いBピクチャを符号化するとする。例えばピクチャB6〜P9については、ピクチャP9、B7、B6、B8の順に符号化を行う。
【0053】
この場合、ピクチャB6〜P9の各ピクチャは、図4(a) に示す矢印の終点のピクチャが矢印に始点のピクチャを参照する。すなわち、ピクチャB7はピクチャP5、P9を、ピクチャB6はピクチャP5、B7を、ピクチャB8はピクチャB7、P9を参照する。またこの場合、符号化制御部110は、各ピクチャを図4(b) に示すように符号化が行われる順に並び替える。
【0054】
次に、並べ替え用メモリ101で並び替えが行われた各ピクチャは、動き補償の単位で読み出される。ここでは、動き補償の単位をマクロブロックと呼び、マクロブロックは水平16×垂直16画素の大きさであるとする。以下では、図4(a) に示すピクチャP9、B7、B6、B8の符号化処理について順に説明する。
【0055】
<ピクチャP9の符号化処理>
ピクチャP9はPピクチャであるので、表示時間順で前方または後方にある既に処理済みの1枚のピクチャを参照してピクチャ間予測符号化を行う。ピクチャP9の符号化においては、上記のように参照ピクチャはピクチャP5となる。ピクチャP5は、既に符号化が終了しており、復号化画像が参照ピクチャ用メモリ107に蓄積されている。Pピクチャの符号化においては、符号化制御部110は、スイッチ113、114、115がオンになるように各スイッチを制御する。これにより、並べ替え用メモリ101から読み出されたピクチャP9のマクロブロックは、まず動きベクトル検出部108、モード選択部109、および差分演算部102に入力される。
【0056】
動きベクトル検出部108は、参照ピクチャ用メモリ107に蓄積されたピクチャP5の復号化画像データを参照ピクチャとして用い、ピクチャP9のマクロブロックに対して、動きベクトルの検出を行う。そして、動きベクトル検出部108は、検出した動きベクトルをモード選択部109に対して出力する。
【0057】
モード選択部109は、動きベクトル検出部108で検出された動きベクトルを用いて、ピクチャP9のマクロブロックの符号化モードを決定する。ここで符号化モードとは、マクロブロックをどのような方法で符号化するかを示すものである。Pピクチャの場合には、例えば、ピクチャ内符号化、動きベクトルを用いたピクチャ間予測符号化、動きベクトルを用いない(動きを0として扱う)ピクチャ間予測符号化の中から、いずれの方法で符号化するかを決める。符号化モードの決定においては、一般的には、少ないビット量でより符号化誤差が小さくなるような方法を選択する。
【0058】
モード選択部109は、決定した符号化モードを符号列生成部104に対して出力する。このとき、モード選択部109で決定された符号化モードが、ピクチャ間予測符号化である場合には、そのピクチャ間予測符号化で用いられる動きベクトルを符号列生成部104に対して出力し、さらに動きベクトル記憶部116に記憶する。
【0059】
また、モード選択部109は、決定した符号化モードに基づいて予測画像データを生成し、この予測画像データを差分演算部102と加算演算部106とに出力する。但し、モード選択部109は、ピクチャ内符号化を選択した場合には、予測画像データを出力しない。また、モード選択部109は、ピクチャ内符号化を選択した場合には、スイッチ111をa側に、スイッチ112をc側に接続するように制御し、ピクチャ間予測符号化を選択した場合には、スイッチ111をb側に、スイッチ112をd側に接続するように制御する。以下では、モード選択部109でピクチャ間予測符号化が選択された場合について説明する。
【0060】
差分演算部102には、並べ替え用メモリ101から読み出されたピクチャP9のマクロブロックの画像データと、モード選択部109から出力された予測画像データとが入力される。差分演算部102は、ピクチャP9のマクロブロックの画像データと予測画像データとの差分を演算し、予測誤差画像データを生成して予測誤差符号化部103へ出力する。
【0061】
予測誤差符号化部103は、入力された予測誤差画像データに対して周波数変換や量子化等の符号化処理を施すことにより、符号化データを生成して符号列生成部104および予測誤差復号化部105へ出力する。ここで、周波数変換や量子化の処理は、例えば水平8×垂直8画素や、水平4×垂直4画素の単位で行うものとする。
【0062】
符号列生成部104は、入力された符号化データに対して、可変長符号化等を施し、さらに動きベクトルや符号化モード等の情報やヘッダ情報等を付加することにより符号列を生成し、出力する。
【0063】
一方、予測誤差復号化部105は、入力された符号化データに対して、逆量子化や逆周波数変換等の復号化処理を施し、復号化差分画像データを生成して加算演算部106へ出力する。加算演算部106は、復号化差分画像データと、モード選択部109より入力された予測画像データとを加算することにより、復号化画像データを生成し、参照ピクチャ用メモリ107に蓄積する。
【0064】
以上の処理により、ピクチャP9の1マクロブロックの処理が完結する。同様の処理により、ピクチャP9の残りのマクロブロックに対しても符号化処理が行われる。そして、ピクチャP9の全てのマクロブロックに対して処理が終わると、次にピクチャB7の符号化処理が行われる。
【0065】
<ピクチャB7の符号化処理>
ピクチャB7の参照画像は、前方向参照ピクチャがピクチャP5、後方向参照ピクチャがP9となる。ピクチャB7は、他のピクチャの符号化の際に、参照ピクチャとして用いられるので、符号化制御部110は、スイッチ113、114、115がオンになるように各スイッチを制御する。よって、並べ替え用メモリ101から読み出されたピクチャB7のマクロブロックは、動きベクトル検出部108、モード選択部109、および差分演算部102に入力される。
【0066】
動きベクトル検出部108は、参照ピクチャ用メモリ107に蓄積されたピクチャP5の復号化画像データを前方向参照ピクチャとして、ピクチャP9の復号化画像データを後方向参照ピクチャとして用い、ピクチャB7のマクロブロックに対して、前方向動きベクトルと後方向動きベクトルの検出を行う。そして、動きベクトル検出部108は、検出した動きベクトルをモード選択部109に対して出力する。
【0067】
モード選択部109は、動きベクトル検出部108で検出された動きベクトルを用いて、ピクチャB7のマクロブロックの符号化モードを決定する。ここで、Bピクチャの符号化モードは、例えば、ピクチャ内符号化、前方向動きベクトルを用いたピクチャ間予測符号化、後方向動きベクトルを用いたピクチャ間予測符号化、2方向動きベクトルを用いたピクチャ間予測符号化、ダイレクトモードから選択することができるとする。
【0068】
ここで、ダイレクトモードで符号化する場合の動作について、図5(a) を用いて説明する。図5(a) はダイレクトモードにおける動きベクトルを示す説明図であり、ピクチャB7のブロックaをダイレクトモードで符号化する場合を示している。この場合、ピクチャB7の後方にある参照ピクチャであるピクチャP9中の、ブロックaと同じ位置にあるブロックbを符号化した際に用いた動きベクトルcを利用する。動きベクトルcは、動きベクトル記憶部116に記憶されている。ブロックaは、動きベクトルcを利用して求めた動きベクトルを用いて、前方向参照ピクチャであるピクチャP5と、後方向参照ピクチャであるピクチャP9とから2方向予測を行う。例えば、動きベクトルcを利用する方法としては、動きベクトルcに平行な動きベクトルを生成する方法がある。この場合のブロックaを符号化する際に用いる動きベクトルは、ピクチャP5に対しては動きベクトルd、ピクチャP9に対しては動きベクトルeとなる。
【0069】
この場合、前方向動きベクトルである動きベクトルdの大きさをMVF、後方向動きベクトルである動きベクトルeの大きさをMVB、動きベクトルcの大きさをMV、現在のピクチャ(ピクチャB7)の後方向参照ピクチャ(ピクチャP9)と、その後方向参照ピクチャのブロックが参照しているピクチャ(ピクチャP5)との時間的距離をTRD、現在のピクチャ(ピクチャB7)と前方向参照ピクチャ(ピクチャP5)との時間的距離をTRFとすると、動きベクトルdの大きさMVF、動きベクトルeの大きさMVBは、それぞれ(式1)、(式2)で求められる。なお、各ピクチャ間の時間的距離については、例えば各ピクチャに付される表示順序(位置)を示す情報、またはその情報の差に基づいて決定することができる。
MVF=MV×TRF/TRD −−− 式1
MVB=(TRF−TRD)×MV/TRD −−− 式2
【0070】
ここで、MVF、MVBは、動きベクトルの水平成分、垂直成分のそれぞれを表現しており、正負符号は動きベクトルの方向を示すものとする。
【0071】
さて、符号化モードの選択においては、一般的に、少ないビット量でより符号化誤差が小さくなるような方法を選択する。モード選択部109は、決定した符号化モードを符号列生成部104に対して出力する。このとき、モード選択部109で決定された符号化モードが、ピクチャ間予測符号化である場合には、そのピクチャ間予測符号化で用いられる動きベクトルを符号列生成部104に対して出力し、さらに動きベクトル記憶部116に記憶する。また、ダイレクトモードが選択された場合には、(式1)、(式2)により計算し求めた、ダイレクトモードで用いた動きベクトルを動きベクトル記憶部116に記憶する。
【0072】
また、モード選択部109は、決定した符号化モードに基づいて予測画像データを生成し、この予測画像データを差分演算部102と加算演算部106とに出力する。但し、モード選択部109は、ピクチャ内符号化を選択した場合には、予測画像データを出力しない。また、モード選択部109は、ピクチャ内符号化を選択した場合には、スイッチ111をa側に、スイッチ112をc側に接続するように制御し、ピクチャ間予測符号化やダイレクトモードを選択した場合には、スイッチ111をb側に、スイッチ112をd側に接続するように制御する。以下では、モード選択部109でピクチャ間予測符号化やダイレクトモードが選択された場合について説明する。
【0073】
差分演算部102には、並べ替え用メモリ101から読み出されたピクチャB7のマクロブロックの画像データと、モード選択部109から出力された予測画像データが入力される。差分演算部102は、ピクチャB7のマクロブロックの画像データと予測画像データとの差分を演算し、予測誤差画像データを生成して予測誤差符号化部103へ出力する。
【0074】
予測誤差符号化部103は、入力された予測誤差画像データに対して周波数変換や量子化等の符号化処理を施すことにより、符号化データを生成して符号列生成部104および予測誤差復号化部105へ出力する。
【0075】
符号列生成部104は、入力された符号化データに対して、可変長符号化等を施し、さらに動きベクトルや符号化モード等の情報を付加することにより符号列を生成し、出力する。
【0076】
一方、予測誤差復号化部105は、入力された符号化データに対して、逆量子化や逆周波数変換等の復号化処理を施し、復号化差分画像データを生成して加算演算部106へ出力する。加算演算部106は、復号化差分画像データと、モード選択部109より入力された予測画像データとを加算することにより、復号化画像データを生成し、参照ピクチャ用メモリ107に蓄積する。
【0077】
以上の処理により、ピクチャB7の1マクロブロックの処理が完結する。同様の処理により、ピクチャB7の残りのマクロブロックに対して、符号化処理が行われる。そして、ピクチャB7の全てのマクロブロックに対する処理が終わると、次にピクチャB6の符号化処理が行われる。
【0078】
<ピクチャB6の符号化処理>
ピクチャB6はBピクチャであるので、表示時間順で前方または後方にある既に処理済みの2枚のピクチャを参照してピクチャ間予測符号化を行う。このピクチャB6の参照画像は、上記のように前方向参照ピクチャがピクチャP5、後方向参照ピクチャがB7となる。ピクチャB6は、他のピクチャの符号化を行う際に、参照ピクチャとして用いられない。よって、符号化制御部110は、スイッチ113をオンに、スイッチ114、115をオフにするように各スイッチを制御する。これにより、並べ替え用メモリ101から読み出されたピクチャB6のマクロブロックは、動きベクトル検出部108、モード選択部109、および差分演算部102に入力される。
【0079】
動きベクトル検出部108は、参照ピクチャ用メモリ107に蓄積されたピクチャP5の復号化画像データを前方向参照ピクチャとして、ピクチャB7の復号化画像データを後方向参照ピクチャとして用い、ピクチャB6のマクロブロックに対して、前方向動きベクトルと後方向動きベクトルの検出を行う。そして、動きベクトル検出部108は、検出した動きベクトルをモード選択部109に対して出力する。
【0080】
モード選択部109は、動きベクトル検出部108で検出された動きベクトルを用いて、ピクチャB6のマクロブロックの符号化モードを決定する。
ここで、ピクチャB6のマクロブロックに対して、ダイレクトモードを用いる場合の動作について、第一の例を図5(b) を用いて説明する。図5(b) はダイレクトモードにおける動きベクトルを示す説明図であり、ピクチャB6のブロックaをダイレクトモードで符号化する場合を示している。この場合、ピクチャB6の後方にある参照ピクチャであるピクチャB7中の、ブロックaと同じ位置にあるブロックbを符号化した際に用いた動きベクトルを利用する。ここではブロックbは、前方向参照のみ、または2方向参照により符号化されたとし、その前方向動きベクトルを動きベクトルcとする。この動きベクトルcは、動きベクトル記憶部116に記憶されているとする。ブロックaは、動きベクトルcを利用して生成した動きベクトルを用いて、前方向参照ピクチャであるピクチャP5と、後方向参照ピクチャであるピクチャB7とから2方向予測を行う。例えば、上記ピクチャB7の場合と同様に動きベクトルcに平行な動きベクトルを生成する方法を用いれば、ブロックaを符号化する際に用いる動きベクトルは、ピクチャP5に対しては動きベクトルd、ピクチャB7に対しては動きベクトルeとなる。
【0081】
この場合、前方向動きベクトルである動きベクトルdの大きさをMVF、後方向動きベクトルである動きベクトルeの大きさをMVB、動きベクトルcの大きさをMV、現在のピクチャ(ピクチャB6)の後方向参照ピクチャ(ピクチャB7)と、その後方向参照ピクチャのブロックbが参照しているピクチャ(ピクチャP5)との時間的距離をTRD、現在のピクチャ(ピクチャB6)と前方向参照ピクチャ(ピクチャP5)との時間的距離をTRFとすると、動きベクトルdの大きさMVF、動きベクトルeの大きさMVBは、それぞれ上記(式1)、(式2)で求められる。なお、各ピクチャ間の時間的距離については、例えば各ピクチャに付される表示順序を示す情報、またはその情報の差に基づいて決定することができる。
【0082】
このようにダイレクトモードにおいて、後方向参照ピクチャであるBピクチャの前方向動きベクトルに対してスケーリングを行うことにより、動きベクトルの情報を送る必要がなく、かつ動き予測効率を向上させることができる。これにより符号化効率を向上させることができる。さらに、前方向参照ピクチャおよび後方向参照ピクチャとして、利用可能な限り表示時間順で最近傍の参照ピクチャを用いることにより、符号化効率を向上させることができる。
【0083】
次に、ダイレクトモードを用いる場合の第二の例を図5(b) を用いて説明する。この場合、ピクチャB6の後方にある参照ピクチャであるピクチャB7中の、ブロックaと同じ位置にあるブロックbを符号化した際に用いられた動きベクトルを利用する。ここではブロックbは、ダイレクトモードで符号化されたとし、そのときに実質的に用いられた前方向動きベクトルを動きベクトルcとする。すなわち、動きベクトルcは、ピクチャB7が後方向参照するピクチャP9内で、ブロックbと同一位置にあるブロックiを符号化する際に用いた動きベクトルをスケーリングすることにより得られた動きベクトルである。この動きベクトルcは、動きベクトル記憶部116に記憶されているものを用いるか、またはブロックbをダイレクトモードで符号化する際に用いたピクチャP9内のブロックiの動きベクトルを動きベクトル記憶部116から読み出して計算して求める。なお、モード選択部109は、ピクチャB7のブロックbをダイレクトモードで符号化する際にスケーリング処理により求めた動きベクトルを、動きベクトル記憶部116に記憶する場合は、前方向動きベクトルだけを記憶すればよい。ブロックaは、動きベクトルcを利用して生成した動きベクトルを用いて、前方向参照ピクチャであるピクチャP5と、後方向参照ピクチャB7とから2方向予測を行う。例えば、上記第一の例の場合と同様に動きベクトルcに平行な動きベクトルを生成する方法を用いれば、ブロックaを符号化する際に用いる動きベクトルは、ピクチャP5に対しては動きベクトルd、ピクチャB7に対しては動きベクトルeとなる。
【0084】
この場合、ブロックaに対する前方向動きベクトルである動きベクトルdの大きさMVFと、後方向動きベクトルである動きベクトルeの大きさMVBとは、ダイレクトモードの第一の例と同様に、(式1)、(式2)を用いて求めることができる。
【0085】
このようにダイレクトモードにおいて、後方向参照ピクチャであるBピクチャのダイレクトモードで実質的に用いた前方向動きベクトルに対してスケーリングを行うので、動きベクトルの情報を送る必要がなく、かつ後方向参照ピクチャ内の同一位置のブロックがダイレクトモードで符号化されている場合でも、動き予測効率を向上させることができる。これにより符号化効率を向上させることができる。さらに、前方向および後方向の参照ピクチャとして、表示時間順で利用可能な最近傍の参照ピクチャを用いることにより、符号化効率を向上させることができる。
【0086】
次に、ダイレクトモードを用いる場合の第三の例を図5(c) を用いて説明する。図5(c) はダイレクトモードにおける動きベクトルを示す説明図であり、ピクチャB6のブロックaをダイレクトモードで符号化する場合を示している。この場合、ピクチャB6の後方にある参照ピクチャであるピクチャB7中の、ブロックaと同じ位置にあるブロックbを符号化する際に用いられた動きベクトルを利用する。ここでブロックbは、後方向動きベクトルのみを用いて符号化されているとし、その後方向動きベクトルが動きベクトルfであるとする。動きベクトルfは、動きベクトル記憶部116に記憶されているとする。ブロックaは、動きベクトルfを利用して生成した動きベクトルを用いて、前方向参照ピクチャであるピクチャP5と、後方向参照ピクチャであるピクチャB7とから2方向予測を行う。例えば、上記第一の例の場合と同様に動きベクトルfに平行な動きベクトルを生成する方法を用いれば、ブロックaを符号化する際に用いる動きベクトルは、ピクチャP5に対しては動きベクトルg、ピクチャB7に対しては動きベクトルhとなる。
【0087】
この場合、前方向動きベクトルである動きベクトルgの大きさをMVF、後方向動きベクトルである動きベクトルhの大きさをMVB、動きベクトルfの大きさをMV、現在のピクチャ(ピクチャB6)の後方向参照ピクチャ(ピクチャB7)と、その後方向参照ピクチャのブロックが参照しているピクチャ(ピクチャP9)との時間的距離をTRD、現在のピクチャ(ピクチャB6)と前方向参照ピクチャ(ピクチャP5)との時間的距離をTRF、現在のピクチャ(ピクチャB6)と後方向参照ピクチャ(ピクチャB7)との時間的距離をTRB、とすると、動きベクトルgの大きさMVF、動きベクトルhの大きさMVBは、それぞれ(式3)、(式4)で求められる。
MVF=−TRF×MV/TRD −−− 式3
MVB=TRB×MV/TRD −−− 式4
【0088】
このようにダイレクトモードにおいて、後方向参照ピクチャであるBピクチャの同一位置のブロックを符号化する際に用いた後方向動きベクトルに対してスケーリングを行うので、動きベクトルの情報を送る必要がなく、かつ後方向参照ピクチャ内の同一位置のブロックが後方向動きベクトルしか有さない場合でも、予測効率を向上させることができる。これにより、符号化効率を向上させることができる。さらに、前方向および後方向参照ピクチャとして、表示時間順で利用可能な最近傍の参照ピクチャを用いることにより、符号化効率を向上させることができる。
【0089】
次に、ダイレクトモードを用いる場合の第四の例を図5(d) を用いて説明する。図5(d) はダイレクトモードにおける動きベクトルを示す説明図であり、ピクチャB6のブロックaをダイレクトモードで符号化する場合を示している。この場合、ピクチャB6の後方にある参照ピクチャであるピクチャB7中の、ブロックaと同じ位置にあるブロックbを符号化する際に用いられた動きベクトルを利用する。ここでブロックbは、第三の例と同様に後方向動きベクトルのみを用いて符号化されているとし、その後方向動きベクトルが動きベクトルfであるとする。動きベクトルfは、動きベクトル記憶部116に記憶されているとする。ブロックaは、動きベクトルfを利用して生成した動きベクトルを用いて、動きベクトルfが参照するピクチャであるピクチャP9と、後方向参照ピクチャであるピクチャB7とから2方向予測を行う。例えば、上記第一の例の場合と同様に動きベクトルfに平行な動きベクトルを生成する方法を用いれば、ブロックaを符号化する際に用いる動きベクトルは、ピクチャP9に対しては動きベクトルg、ピクチャB7に対しては動きベクトルhとなる。
【0090】
この場合、前方向動きベクトルである動きベクトルgの大きさをMVF、後方向動きベクトルである動きベクトルhの大きさをMVB、動きベクトルfの大きさをMV、現在のピクチャ(ピクチャB6)の後方向参照ピクチャ(ピクチャB7)と、その後方向参照ピクチャのブロックが参照しているピクチャ(ピクチャP9)との時間的距離をTRD、現在のピクチャ(ピクチャB6)と、後方向参照ピクチャ(ピクチャB7)のブロックが参照しているピクチャ(ピクチャP9)との時間的距離をTRFとすると、動きベクトルgの大きさMVF、動きベクトルhの大きさMVBは、それぞれ(式1)、(式2)で求められる。
【0091】
このようにダイレクトモードにおいて、後方向参照ピクチャであるBピクチャの同一位置のブロックを符号化する際に用いた後方向動きベクトルに対してスケーリングを行うことにより、動きベクトルの情報を送る必要がなく、かつ後方向参照ピクチャ内の同一位置のブロックが後方向動きベクトルしか有さない場合でも、予測効率を向上させることができる。これにより、符号化効率を向上させることができる。さらに、前方向参照ピクチャとして後方向動きベクトルが参照しているピクチャを、後方向参照ピクチャとして表示時間順で利用可能な最近傍の参照ピクチャを用いることにより、符号化効率を向上させることができる。
【0092】
次に、ダイレクトモードを用いる場合の第五の例を図6(a) を用いて説明する。図6(a) はダイレクトモードにおける動きベクトルを示す説明図であり、ピクチャB6のブロックaをダイレクトモードで符号化する場合を示している。この場合、動きベクトルの大きさを0として、前方向参照ピクチャとしてピクチャP5を、後方向参照ピクチャとしてピクチャB7を用いて、2方向参照を行うことにより、動き補償を行う。
【0093】
このようにダイレクトモードにおいて、動きベクトルを強制的に0と置くことにより、ダイレクトモードが選択された場合には、動きベクトルの情報を送る必要がなく、かつ動きベクトルのスケーリング処理が不要となり処理量の削減を図ることができる。
【0094】
次に、ダイレクトモードを用いる場合の第六の例を図6(b) を用いて説明する。図6(b) はダイレクトモードにおける動きベクトルを示す説明図であり、ピクチャB6のブロックaをダイレクトモードで符号化する場合を示している。この場合、ピクチャB6の後方にあるPピクチャであるピクチャP9中の、ブロックaと同じ位置にあるブロックfを符号化する際に用いられた、動きベクトルgを利用する。動きベクトルgは、動きベクトル記憶部116に記憶されている。ブロックaは、動きベクトルgを利用して生成した動きベクトルを用いて、前方向参照ピクチャであるピクチャP5と、後方向参照ピクチャであるピクチャB7とから2方向予測を行う。例えば、上記第一の例の場合と同様に動きベクトルgに平行な動きベクトルを生成する方法を用いれば、ブロックaを符号化する際に用いる動きベクトルは、ピクチャP5に対しては動きベクトルh、ピクチャB7に対しては動きベクトルiとなる。
【0095】
この場合、前方向動きベクトルである動きベクトルhの大きさをMVF、後方向動きベクトルである動きベクトルiの大きさをMVB、動きベクトルgの大きさをMV、現在のピクチャ(ピクチャB6)に対して表示時間順で後方に位置するPピクチャ(ピクチャP9)と、このPピクチャのブロックfが参照しているピクチャ(ピクチャP5)との時間的距離をTRD、現在のピクチャ(ピクチャB6)と前方向参照ピクチャ(ピクチャP5)との時間的距離をTRF、現在のピクチャ(ピクチャB6)と後方向参照ピクチャ(ピクチャB7)との時間的距離をTRB、とすると、動きベクトルhの大きさMVF、動きベクトルiの大きさMVBは、それぞれ(式1)、(式5)で求められる。
【0096】
MVB=−TRB×MV/TRD −−− 式5
このようにダイレクトモードにおいて、表示時間順で後方に位置するPピクチャの動きベクトルに対してスケーリングを行うことにより、後方向参照ピクチャがBピクチャである場合に、そのBピクチャの動きベクトルを記憶しておく必要が無く、かつ動きベクトルの情報を送る必要がない。さらに、前方向および後方向参照ピクチャとして表示時間順で最近傍の参照ピクチャを用いることにより、符号化効率を向上させることができる。
【0097】
次に、ダイレクトモードを用いる場合の第七の例を図6(c) を用いて説明する。図6(c) はダイレクトモードにおける動きベクトルを示す説明図であり、ピクチャB6のブロックaをダイレクトモードで符号化する場合を示している。この例は、上記で説明したピクチャ番号に対する相対インデックスの割り当ての変更(リマッピング)が行われ、後方向参照ピクチャがピクチャP9となった場合である。この場合、ピクチャB7の後方向参照ピクチャであるピクチャP9中の、ブロックaと同じ位置にあるブロックfを符号化する際に用いられた動きベクトルgを利用する。動きベクトルgは、動きベクトル記憶部116に記憶されている。ブロックaは、動きベクトルgを利用して生成した動きベクトルを用いて、前方向参照ピクチャであるピクチャP5と、後方向参照ピクチャであるピクチャP9とから2方向予測を行う。例えば、上記第一の例の場合と同様に動きベクトルgに平行な動きベクトルを生成する方法を用いれば、ブロックaを符号化する際に用いる動きベクトルは、ピクチャP5に対しては動きベクトルh、ピクチャP9に対しては動きベクトルiとなる。
【0098】
この場合、前方向動きベクトルである動きベクトルhの大きさをMVF、後方向動きベクトルである動きベクトルiの大きさをMVB、動きベクトルgの大きさをMV、現在のピクチャ(ピクチャB6)の後方向参照ピクチャ(ピクチャP9)と、その後方向参照ピクチャのブロックが参照しているピクチャ(ピクチャP5)との時間的距離をTRD、現在のピクチャ(ピクチャB6)と前方向参照ピクチャ(ピクチャP5)との時間的距離をTRFとすると、動きベクトルhの大きさMVF、動きベクトルiの大きさMVBは、それぞれ(式1)、(式2)で求められる。
【0099】
このようにダイレクトモードにおいて、ピクチャ番号に対する相対インデックスの割り当ての変更が行われた場合であっても、符号化済みのピクチャの動きベクトルに対してスケーリングを行うことができ、かつダイレクトモードが選択された場合には、動きベクトルの情報を送る必要がない。
【0100】
なお、ピクチャB6のブロックaをダイレクトモードにより符号化する際には、ピクチャB6の後方参照ピクチャ中の、ブロックaと同じ位置にあるブロックが前方向参照のみ、2方向参照、またはダイレクトモードにより符号化され、この符号化の際に前方向動きベクトルを用いていた場合は、この前方向動きベクトルに対してスケーリングを行い、上記第一の例、第二の例または第七の例のようにブロックaをダイレクトモードにより符号化する。一方、ブロックaと同じ位置にあるブロックが後方向参照のみにより符号化され、この符号化の際に後方向動きベクトルを用いていた場合は、この後方向動きベクトルに対してスケーリングを行い、上記第三の例または第四の例のようにブロックaをダイレクトモードにより符号化する。
【0101】
以上のダイレクトモードにおいては、フレーム間の時間間隔が一定である場合だけでなく、可変フレーム間隔である場合についても適用可能である。
さて、モード選択部109は、決定した符号化モードを符号列生成部104に対して出力する。また、モード選択部109は、決定した符号化モードに基づいて予測画像データを生成し、この予測画像データを差分演算部102に出力する。但し、モード選択部109は、ピクチャ内符号化を選択した場合には、予測画像データを出力しない。また、モード選択部109は、ピクチャ内符号化を選択した場合には、スイッチ111をa側に、スイッチ112をc側に接続するように制御し、ピクチャ間予測符号化やダイレクトモードを選択した場合には、スイッチ111をb側に、スイッチ112をd側に接続するように制御する。また、モード選択部109は、決定した符号化モードが、ピクチャ間予測符号化である場合には、そのピクチャ間予測符号化で用いられる動きベクトルを符号列生成部104に対して出力する。ここでピクチャB6は他のピクチャの符号化時に参照ピクチャとして用いられないので、ピクチャ間予測符号化で用いられる動きベクトルは動きベクトル記憶部116に記憶する必要はない。以下では、モード選択部109でピクチャ間予測符号化やダイレクトモードが選択された場合について説明する。
【0102】
差分演算部102には、並べ替え用メモリ101から読み出されたピクチャB6のマクロブロックの画像データと、モード選択部109から出力された予測画像データが入力される。差分演算部102は、ピクチャB6のマクロブロックの画像データと予測画像データとの差分を演算し、予測誤差画像データを生成して予測誤差符号化部103へ出力する。予測誤差符号化部103は、入力された予測誤差画像データに対して周波数変換や量子化等の符号化処理を施すことにより、符号化データを生成して符号列生成部104へ出力する。
【0103】
符号列生成部104は、入力された符号化データに対して、可変長符号化等を施し、さらに動きベクトルや符号化モード等の情報を付加することにより符号列を生成し、出力する。
【0104】
以上の処理により、ピクチャB6の1マクロブロックに対する符号化処理が完了する。ピクチャB6の残りのマクロブロックに対する処理も同様に行われ、それが完了するとピクチャB8の符号化処理が行われる。
【0105】
<ピクチャB8の符号化処理>
ピクチャB8はBピクチャであるので、表示時間順で前方または後方にある既に処理済みの2枚のピクチャを参照してピクチャ間予測符号化を行う。このピクチャB8の参照画像は、上記のように前方向参照ピクチャがピクチャB7、後方向参照ピクチャがP9となる。ピクチャB8は、他のピクチャの符号化を行う際に、参照ピクチャとして用いられないので、符号化制御部110は、スイッチ113をオンに、スイッチ114、115をオフにするように各スイッチを制御する。よって、並べ替え用メモリ101から読み出されたピクチャB8のマクロブロックは、動きベクトル検出部108、モード選択部109、および差分演算部102に入力される。
【0106】
動きベクトル検出部108は、参照ピクチャ用メモリ107に蓄積されたピクチャB7の復号化画像データを前方向参照ピクチャとして、ピクチャP9の復号化画像データを後方向参照ピクチャとして用い、ピクチャB8のマクロブロックに対して、前方向動きベクトルと後方向動きベクトルの検出を行う。そして、動きベクトル検出部108は、検出された動きベクトルをモード選択部109に対して出力する。
【0107】
モード選択部109は、動きベクトル検出部108で検出された動きベクトルを用いて、ピクチャB8のマクロブロックの符号化モードを決定する。
ここで、ピクチャB8のマクロブロックに対して、ダイレクトモードを用いる場合の動作について、図6(d) を用いて説明する。図6(d) はダイレクトモードにおける動きベクトルを示す説明図であり、ピクチャB8のブロックaをダイレクトモードで符号化する場合を示している。この場合、ピクチャB8の後方にある参照ピクチャであるピクチャP9中の、ブロックaと同じ位置にあるブロックbを符号化した際に用いた動きベクトルを利用する。ここではブロックbは、前方向参照により符号化されたとし、その前方向動きベクトルを動きベクトルcとする。またこの動きベクトルcは、動きベクトル記憶部116に記憶されている。ブロックaは、動きベクトルcを利用して生成した動きベクトルを用いて、前方向参照ピクチャであるピクチャB7と、後方向参照ピクチャであるピクチャP9とから2方向予測を行う。例えば、上記ピクチャB7の場合と同様に動きベクトルcに平行な動きベクトルを生成する方法を用いれば、ブロックaを符号化する際に用いる動きベクトルは、ピクチャB7に対しては動きベクトルd、ピクチャP9に対しては動きベクトルeとなる。
【0108】
この場合、前方向動きベクトルである動きベクトルdの大きさをMVF、後方向動きベクトルである動きベクトルeの大きさをMVB、動きベクトルcの大きさをMV、現在のピクチャ(ピクチャB8)の後方向参照ピクチャ(ピクチャP9)と、その後方向参照ピクチャのブロックbが参照しているピクチャ(ピクチャP5)との時間的距離をTRD、現在のピクチャ(ピクチャB8)と前方向参照ピクチャ(ピクチャB7)との時間的距離をTRF、現在のピクチャ(ピクチャB8)と後方向参照ピクチャ(ピクチャP9)との時間的距離をTRBとすると、動きベクトルdの大きさMVF、動きベクトルeの大きさMVBは、それぞれ(式1)、(式5)で求められる。
【0109】
このようにダイレクトモードにおいて、後方向参照ピクチャの前方向動きベクトルに対してスケーリングを行うことにより、動きベクトルの情報を送る必要がなく、かつ予測効率を向上させることができる。これにより符号化効率を向上させることができる。さらに、前方向参照ピクチャおよび後方向参照ピクチャとして、利用可能な限り表示時間順で最近傍の参照ピクチャを用いることにより、符号化効率を向上させることができる。
【0110】
上記のダイレクトモードにおいては、フレーム間の時間間隔が一定である場合だけでなく、可変フレーム間隔である場合についても適用可能である。
さて、モード選択部109は、決定した符号化モードを符号列生成部104に対して出力する。また、モード選択部109は、決定した符号化モードに基づいて予測画像データを生成し、この予測画像データを差分演算部102に出力する。但し、モード選択部109は、ピクチャ内符号化を選択した場合には、予測画像データを出力しない。また、モード選択部109は、ピクチャ内符号化を選択した場合には、スイッチ111はa側に、スイッチ112はc側に接続するように制御し、ピクチャ間予測符号化やダイレクトモードを選択した場合には、スイッチ111はb側に、スイッチ112はd側に接続するように制御する。また、モード選択部109は、決定した符号化モードが、ピクチャ間予測符号化である場合には、そのピクチャ間予測符号化で用いられる動きベクトルを符号列生成部104に対して出力する。ここでピクチャB8は他のピクチャの符号化時に参照ピクチャとして用いられないので、ピクチャ間予測符号化で用いられる動きベクトルは動きベクトル記憶部116に記憶する必要はない。以下では、モード選択部109でピクチャ間予測符号化やダイレクトモードが選択された場合について説明する。
【0111】
差分演算部102には、並べ替え用メモリ101から読み出されたピクチャB8のマクロブロックの画像データと、モード選択部109から出力された予測画像データが入力される。差分演算部102は、ピクチャB8のマクロブロックの画像データと予測画像データとの差分を演算し、予測誤差画像データを生成して予測誤差符号化部103へ出力する。予測誤差符号化部103は、入力された予測誤差画像データに対して周波数変換や量子化等の符号化処理を施すことにより、符号化データを生成して符号列生成部104へ出力する。
【0112】
符号列生成部104は、入力された符号化データに対して、可変長符号化等を施し、さらに動きベクトルや符号化モード等の情報を付加することにより符号列を生成し、出力する。
【0113】
以上の処理により、ピクチャB8の1マクロブロックに対する符号化処理が完了する。ピクチャB8の残りのマクロブロックに対する処理も同様に行われる。以下、各ピクチャの符号化処理は、各ピクチャのピクチャタイプおよびピクチャの表示時間順の位置に応じた符号化方法で、ピクチャP9、B7、B6、B8と同様な方法により行われる。
【0114】
以上の実施の形態においては、図4(a) に示すピクチャ予測構造を用いた場合を例に、本発明に係る動画像符号化方法の動作を説明した。図10は、この場合のピクチャ予測構造を階層的に示す説明図である。図10において、矢印は予測関係を示しており、矢印の終点にあるピクチャが、始点にあるピクチャを参照することを示している。図4(a) に示すピクチャ予測構造においては、表示時間順で考えた場合に、図10に示すように既に符号化済みのピクチャから最も遠くなるピクチャを優先して符号化順序を決定している。例えば、IまたはPピクチャから最も遠くなるピクチャは、連続するBピクチャの中央に位置するピクチャである。したがって、例えばピクチャP5、P9が符号化済みである状態では、ピクチャB7が次の符号化対象ピクチャとなる。そして、ピクチャP5、B7、P9が符号化済みである状態では、ピクチャB6、B8が次の符号化対象ピクチャとなる。
【0115】
また、図4、図10に示すものとは異なるピクチャ予測構造を有する場合でも、本発明に係る動画像符号化方法と同様の方法を用いることができ、本発明の効果をもたらすことができる。他のピクチャ予測構造の例を図7〜図9に示す。
【0116】
図7は、IまたはPピクチャ間に挟まれるBピクチャの数が3枚であり、Bピクチャを符号化する順序として、既に符号化済みのピクチャから最も近いピクチャから選択して符号化する場合について示している。図7(a) は表示時間順で示した各ピクチャの予測関係を示す図であり、図7(b) が符号化順(符号列順)に並べ替えたピクチャ順を示す図である。また、図11は、図7(a) に対応するピクチャ予測構造の階層図である。図7(a) に示すピクチャ予測構造においては、表示時間順で考えた場合に、図11に示すように既に符号化済みのピクチャから最も近いピクチャから順に符号化を行っている。例えばピクチャP5、P9が符号化済みである状態では、ピクチャB6、B8が次の符号化対象ピクチャとなる。そして、ピクチャP5、B6、B8、P9が符号化済みである状態では、ピクチャB7が次の符号化対象ピクチャとなる。
【0117】
図8は、IまたはPピクチャ間に挟まれるBピクチャの数が5枚であり、Bピクチャを既に符号化済みのピクチャから最も遠いピクチャを優先して符号化する場合について示している。図8(a) は表示時間順で示した各ピクチャの予測関係を示す図であり、図8(b) は符号化順(符号列順)に並べ替えたピクチャ順を示す図である。また、図12は、図8(a) に対応するピクチャ予測構造の階層図である。図8(a) に示すピクチャ予測構造においては、表示時間順で考えた場合に、図12に示すように既に符号化済みのピクチャから最も遠くなるピクチャを優先して符号化順序を決定している。例えば、IまたはPピクチャから最も遠くなるピクチャは、連続するBピクチャの中央に位置するピクチャである。したがって、例えばピクチャP7、P13が符号化済みである状態では、ピクチャB10が次の符号化対象ピクチャとなる。そして、ピクチャP7、B10、P13が符号化済みである状態では、ピクチャB8、B9、B11、B12が次の符号化対象ピクチャとなる。
【0118】
図9は、IまたはPピクチャ間に挟まれるBピクチャの数が5枚であり、Bピクチャを既に符号化済みのピクチャから最も近いピクチャを優先して符号化する場合について示している。図9(a) は表示時間順で示した各ピクチャの予測関係を示す図であり、図9(b) は符号化順(符号列順)に並べ替えたピクチャ順を示す図である。また、図13は、図9(a) に対応するピクチャ予測構造の階層図である。図9(a) に示すピクチャ予測構造においては、表示時間順で考えた場合に、図13に示すように既に符号化済みのピクチャから最も近いピクチャから順に符号化を行っている。例えばピクチャP5、P9が符号化済みである状態では、ピクチャB8、B12が次の符号化対象ピクチャとなる。そして、ピクチャP5、B8、B12、P9が符号化済みである状態では、ピクチャB9、B11が次の符号化対象ピクチャとなる。さらに、ピクチャP5、B8、B9、B11、B12、P9が符号化済みである状態では、ピクチャB10が次の符号化対象ピクチャとなる。
【0119】
以上のように、本発明に係る動画像符号化方法では、2方向予測を用いてピクチャ間予測符号化処理を行うBピクチャを符号化する際に、IまたはPピクチャ間に挟まれる複数のBピクチャを表示時間順とは異なる順序で符号化する。その際には、可能な限り表示時間順で近傍に位置するピクチャを前方向および後方向の参照ピクチャとして用いる。この参照ピクチャとしては、Bピクチャが利用できる場合には、Bピクチャも用いる。また、IまたはPピクチャ間に挟まれる複数のBピクチャを表示時間順とは異なる順序で符号化する際には、既に符号化済みのピクチャから最も遠くなるピクチャから順に符号化する。または、IまたはPピクチャ間に挟まれる複数のBピクチャを表示時間順とは異なる順序で符号化する際には、既に符号化済みのピクチャから最も近いピクチャから順に符号化する。
【0120】
このような動作により、本発明に係る動画像符号化方法を用いることによって、Bピクチャを符号化する際に、より表示時間順で近傍のピクチャを参照ピクチャとして用いることができ、これにより動き補償の際の予測効率が向上するため、符号化効率を向上させることができる。
【0121】
また、本発明に係る動画像符号化方法において、後方向参照ピクチャとしてBピクチャとして符号化されたピクチャを参照し、Bピクチャ内のブロックをダイレクトモードにより符号化する際に、後方向参照ピクチャの同一位置のブロックが前方向参照または2方向参照により符号化されている場合には、その前方向動きベクトルをスケーリングすることにより得られる動きベクトルをダイレクトモードでの動きベクトルとして用いる。
【0122】
このようにダイレクトモードにおいて、後方向参照ピクチャであるBピクチャの前方向動きベクトルに対してスケーリングを行うことにより、動きベクトルの情報を送る必要がなく、かつ予測効率を向上させることができる。さらに、前方向参照ピクチャとして時間的に最近傍の参照ピクチャを用いることにより、符号化効率を向上させることができる。
【0123】
または、後方向参照ピクチャであるBピクチャの同一位置のブロックが、ダイレクトモードにより符号化されている場合には、ダイレクトモードにおいて実質的に用いられた前方向動きベクトルをスケーリングすることにより得られる動きベクトルをダイレクトモードでの動きベクトルとして用いる。
【0124】
このようにダイレクトモードにおいて、後方向参照ピクチャであるBピクチャのダイレクトモードで実質的に用いた前方向動きベクトルに対してスケーリングを行うことにより、動きベクトルの情報を送る必要がなく、かつ後方向参照ピクチャ内の同一位置のブロックがダイレクトモードで符号化されている場合でも、予測効率を向上させることができる。さらに、前方向参照ピクチャとして時間的に最近傍の参照ピクチャを用いることにより、符号化効率を向上させることができる。
【0125】
または、後方向参照ピクチャであるBピクチャの同一位置のブロックが、後方向参照により符号化されている場合には、その後方向動きベクトルをスケーリングすることにより得られる動きベクトルをダイレクトモードでの動きベクトルとして用いる。
【0126】
このようにダイレクトモードにおいて、後方向参照ピクチャであるBピクチャの同一位置のブロックを符号化する際に用いた後方向動きベクトルに対してスケーリングを行うことにより、動きベクトルの情報を送る必要がなく、かつ後方向参照ピクチャ内の同一位置のブロックが後方向動きベクトルしか有しない場合でも、予測効率を向上させることができる。さらに、前方向参照ピクチャとして時間的に最近傍の参照ピクチャを用いることにより、符号化効率を向上させることができる。
【0127】
または、後方向参照ピクチャであるBピクチャの同一位置のブロックが、後方向参照により符号化されている場合には、その際に用いた後方向動きベクトルをこの後方向動きベクトルが参照するピクチャと後方向参照ピクチャとを参照ピクチャとしてスケーリングすることにより得られる動きベクトルをダイレクトモードでの動きベクトルとして用いる。
【0128】
このようにダイレクトモードにおいて、後方向参照ピクチャであるBピクチャの同一位置のブロックを符号化する際に用いた後方向動きベクトルに対してスケーリングを行うことにより、動きベクトルの情報を送る必要がなく、かつ後方向参照ピクチャ内の同一位置のブロックが後方向動きベクトルしか有さない場合でも、予測効率を向上させることができる。これにより、符号化効率を向上させることができる。さらに、前方向参照ピクチャとして後方向動きベクトルが参照しているピクチャを、後方向参照ピクチャとして表示時間順で利用可能な最近傍の参照ピクチャを用いることにより、符号化効率を向上させることができる。
【0129】
またはダイレクトモードにおいて、強制的に大きさ0とした動きベクトルを用いる。
このようにダイレクトモードにおける動きベクトルを強制的に0と置くことにより、ダイレクトモードが選択された場合には、動きベクトルの情報を送る必要がなく、かつ動きベクトルのスケーリング処理が不要となり処理量の削減を図ることができる。
【0130】
また、本発明の動画像符号化方法において、後方向参照ピクチャとしてBピクチャとして符号化されたピクチャを参照し、Bピクチャ内のブロックをダイレクトモードを用いて符号化する際に、後方に位置するPピクチャ内の同一位置のブロックが符号化された際に用いた前方向動きベクトルをスケーリングすることにより得られる動きベクトルをダイレクトモードでの動きベクトルとして用いる。
【0131】
このようにダイレクトモードにおいて、後方Pピクチャの動きベクトルに対してスケーリングを行うことにより、後方向参照ピクチャがBピクチャである場合に、そのBピクチャの動きベクトルを記憶しておく必要が無く、かつ動きベクトルの情報を送る必要がなく、かつ予測効率を向上させることができる。さらに、前方向参照ピクチャとして時間的に最近傍の参照ピクチャを用いることにより、符号化効率を向上させることができる。
【0132】
また、ピクチャ番号に対する相対インデックスの割り当ての変更が行われ、後方向参照ピクチャの同一位置のブロックが前方向参照により符号化されている場合には、その前方向動きベクトルをスケーリングすることにより得られる動きベクトルをダイレクトモードでの動きベクトルとして用いる。
【0133】
このようにダイレクトモードにおいて、ピクチャ番号に対する相対インデックスの割り当ての変更が行われた場合であっても、符号化済みのピクチャの動きベクトルに対してスケーリングを行うことができ、かつ動きベクトルの情報を送る必要がない。
【0134】
なお、本実施の形態においては、動き補償は水平16×垂直16画素の単位で、予測誤差画像の符号化は水平8×垂直8画素や水平4×垂直4画素の単位で処理する場合について説明したが、これらの単位は別の画素数でも良い。
【0135】
また、本実施の形態では、連続するBピクチャの枚数が3枚または5枚である場合を例として説明したが、このBピクチャの枚数は他の枚数であっても良い。
また、本実施の形態では、Pピクチャの符号化モードは、ピクチャ内符号化、動きベクトルを用いたピクチャ間予測符号化、動きベクトルを用いないピクチャ間予測符号化から選択し、Bピクチャの符号化モードは、ピクチャ内符号化、前方向動きベクトルを用いたピクチャ間予測符号化、後方向動きベクトルを用いたピクチャ間予測符号化、2方向動きベクトルを用いたピクチャ間予測符号化、ダイレクトモードから選択する場合を例として説明したが、これらの符号化モードは他の方法であっても良い。
【0136】
また、本実施の形態では、ダイレクトモードにおいては、7つの例について説明したが、これは例えばマクロブロックやブロック毎に一意的に決定される一つの方法を用いても良いし、ブロックやマクロブロック毎に複数の方法から一つの方法を選択しても良い。複数の方法を用いる場合には、どのダイレクトモードを用いたかを示す情報を符号列中に記述する。
【0137】
また、本実施の形態では、Pピクチャは表示時間順で前方または後方に位置する符号化済みのIまたはPピクチャを1つ参照して符号化し、Bピクチャは表示時間順で前方または後方に位置する近傍の符号化済みのピクチャを2つ参照して符号化する場合について説明したが、これらはPピクチャの場合には、表示時間順で前方または後方に位置する、複数の符号化済みのIまたはPピクチャを参照ピクチャの候補とし、各ブロックで最大1つのピクチャを参照して符号化し、Bピクチャの場合には、表示時間順で前方または後方に位置する近傍の複数の符号化済みのピクチャを参照ピクチャの候補とし、各ブロックで最大2つのピクチャを参照して符号化しても良い。
【0138】
また、モード選択部109は、動きベクトル記憶部116に動きベクトルを記憶する際に、対象ブロックが2方向予測またはダイレクトモードにより符号化されている場合には、前方向および後方向の両方の動きベクトルを記憶しても良いし、前方向動きベクトルのみを記憶するようにしても良い。前方向動きベクトルのみを記憶すると、動きベクトル記憶部116のメモリ量を削減することができる。
【0139】
(実施の形態2)
図14は、本発明に係る動画像復号化方法を用いた動画像復号化装置の一実施の形態の構成を示すブロック図である。
【0140】
動画像復号化装置は、図14に示すように符号列解析部1401、予測誤差復号化部1402、モード復号部1403、フレームメモリ制御部1404、動き補償復号部1405、動きベクトル記憶部1406、フレームメモリ1407、加算演算部1408、およびスイッチ1409、1410を備えている。
【0141】
符号列解析部1401は、入力された符号列より符号化モードの情報および動きベクトルの情報等の各種データの抽出を行う。予測誤差復号化部1402は、符号列解析部1401より入力された予測誤差符号化データの復号化を行い、予測誤差画像データを生成する。モード復号部1403は、符号列より抽出された符号化モードの情報を参照し、スイッチ1409、1410の制御を行う。
【0142】
フレームメモリ制御部1404は、符号列解析部1401より入力されたピクチャの表示順序を示す情報に基づいて、フレームメモリ1407に格納された復号化画像データを出力画像として出力する。
【0143】
動き補償復号部1405は、参照ピクチャ番号と動きベクトルの情報の復号化処理を行い、復号化した参照ピクチャ番号と動きベクトルとに基づいて、フレームメモリ1407より動き補償画像データを取得する。動きベクトル記憶部1406は、動きベクトルを記憶する。
【0144】
加算演算部1408は、予測誤差復号化部1402より入力された予測誤差符号化データと、動き補償復号部1405より入力された動き補償画像データとを加算し、復号化画像データを生成する。フレームメモリ1407は、生成された復号化画像データを格納する。
【0145】
次に、上記のように構成された動画像復号化装置の動作について説明する。ここで、動画像復号化装置には、上記動画像符号化装置で生成された符号列が入力されるとする。すなわちここでは、Pピクチャは表示時間順で前方または後方にある、近傍の既に処理済みのIまたはPピクチャを1つ参照するものとする。また、Bピクチャは表示時間順で前方または後方にある、既に符号化済みの近傍のピクチャを2つ参照するものとする。
【0146】
この場合における符号列中のピクチャは、図4(b) に示すような順序となる。以下では、ピクチャP9、B7、B6、B8の復号化処理について順に説明する。
【0147】
<ピクチャP9の復号化処理>
ピクチャP9の符号列は符号列解析部1401に入力される。符号列解析部1401は、入力された符号列から、各種データの抽出を行う。ここで各種データとは、モード選択の情報や動きベクトル情報等である。抽出されたモード選択の情報は、モード復号部1403に対して出力される。また、抽出された動きベクトル情報は、動き補償復号部1405に対して出力される。さらに、予測誤差符号化データは予測誤差復号化部1402に対して出力される。
【0148】
モード復号部1403は、符号列から抽出された符号化モード選択の情報を参照し、スイッチ1409、1410の制御を行う。符号化モード選択がピクチャ内符号化である場合には、モード復号部1403は、スイッチ1409をa側に、スイッチ1410をc側に接続するように制御する。また、符号化モード選択がピクチャ間予測符号化である場合には、モード復号部1403は、スイッチ1409をb側に、スイッチ1410をd側に接続するように制御する。
【0149】
またモード復号部1403では、符号化モード選択の情報を動き補償復号部1405に対しても出力する。以下では、符号化モード選択がピクチャ間予測符号化である場合について説明する。予測誤差復号化部1402は、入力された予測誤差符号化データの復号化を行い、予測誤差画像データを生成する。そして、予測誤差復号化部1402は、生成した予測誤差画像データをスイッチ1409に対して出力する。ここでは、スイッチ1409はb側に接続されているので、予測誤差画像データは加算演算部1408に対して出力される。
【0150】
動き補償復号部1405は、入力された動きベクトルの情報等に基づいて、フレームメモリ1407から動き補償画像データを取得する。ピクチャP9は、ピクチャP5を参照して符号化されており、ピクチャP5は既に復号化されてフレームメモリ1407に保持されている。そこで、動き補償復号部1405は、動きベクトルの情報に基づいてフレームメモリ1407に保持されたピクチャP5の画像データから動き補償画像データを取得する。このようにして生成された動き補償画像データは加算演算部1408に対して出力される。
【0151】
また、動き補償復号部1405は、Pピクチャの復号化を行う場合には、動きベクトルの情報を動きベクトル記憶部1406に記憶する。
加算演算部1408は、入力された予測誤差画像データと動き補償画像データとを加算し、復号化画像データを生成する。生成された復号化画像データはスイッチ1410を介してフレームメモリ1407に対して出力される。
【0152】
以上のようにして、ピクチャP9の1マクロブロックの処理が完了する。同様の処理により、残りのマクロブロックも順に復号化される。ピクチャP9のマクロブロックが全て復号化されると、ピクチャB7の復号化が行われる。
【0153】
<ピクチャB7の復号化処理>
符号列解析部1401、モード復号化部1403、および予測誤差復号化部1402における予測誤差画像データの生成までの動作は、ピクチャP9の復号化処理の際と同様であるので、説明は省略する。
【0154】
動き補償復号部1405は、入力された動きベクトルの情報等に基づいて、動き補償画像データを生成する。ピクチャB7は、前方向参照ピクチャとしてピクチャP5を参照し、後方向参照ピクチャとしてP9を参照して符号化されており、これらのピクチャは既に復号化されてフレームメモリ1407に保持されている。
【0155】
モード選択が2方向予測のピクチャ間予測符号化である場合には、動き補償復号部1405は、前方向動きベクトルの情報に基づいて前方向参照画像データをフレームメモリ1407から取得する。また、後方向動きベクトルの情報に基づいて後方向参照画像データをフレームメモリ1407から取得する。そして、動き補償復号部1405は、前方向参照画像データと後方向参照画像データとを加算平均することにより、動き補償画像データを生成する。
【0156】
また、モード選択がダイレクトモードである場合には、動き補償復号部1405は、動きベクトル記憶部1406に記憶されているピクチャP9の動きベクトルを取得する。そして、動き補償復号部1405は、この動きベクトルを用いて、前方向参照画像データと後方向参照画像データとをフレームメモリ1407から取得する。そして、動き補償復号部1405は、前方向参照画像データと後方向参照画像データとを加算平均することにより、動き補償画像データを生成する。
【0157】
このモード選択がダイレクトモードである場合について、さらに図5(a) を用いて説明する。ここで、ピクチャB7のブロックaを復号化しているとし、ブロックaと同じ位置にあるピクチャP9のブロックをブロックbとする。そしてブロックbの動きベクトルが動きベクトルcであり、これはピクチャP5を参照している。この場合、前方向動きベクトルとして、動きベクトルcを利用して求めたピクチャP5を参照する動きベクトルdを用い、後方向動きベクトルとして、動きベクトルcを利用して求めたピクチャP9を参照する動きベクトルeを用いる。例えば、動きベクトルcを利用する方法としては、動きベクトルcに平行な動きベクトルを生成する方法がある。これらの動きベクトルに基づいて得られる前方向参照データと後方向参照データとを加算平均した画像データを動き補償画像データとする。
【0158】
この場合、前方向動きベクトルである動きベクトルdの大きさをMVF、後方向動きベクトルである動きベクトルeの大きさをMVB、動きベクトルcの大きさをMV、現在のピクチャ(ピクチャB7)の後方向参照ピクチャ(ピクチャP9)と、その後方向参照ピクチャのブロックbが参照しているピクチャ(ピクチャP5)との時間的距離をTRD、現在のピクチャ(ピクチャB7)と前方向参照ピクチャ(ピクチャP5)との時間的距離をTRFとすると、動きベクトルdの大きさMVF、動きベクトルeの大きさMVBは、それぞれ(式1)、(式2)で求められる。ここで、MVF、MVBは、動きベクトルの水平成分、垂直成分のそれぞれを表現しているものとする。なお、各ピクチャ間の時間的距離については、例えば各ピクチャに付される表示順序(位置)を示す情報、またはその情報の差に基づいて決定することができる。
【0159】
このようにして生成された動き補償画像データは加算演算部1408に対して出力される。また、動き補償復号部1405は、動きベクトルの情報を動きベクトル記憶部1406に記憶する。
【0160】
加算演算部1408は、入力された予測誤差画像データと動き補償画像データとを加算し、復号化画像データを生成する。生成された復号化画像データはスイッチ1410を介してフレームメモリ1407に対して出力される。
【0161】
以上のようにして、ピクチャB7の1マクロブロックの処理が完了する。同様の処理により、残りのマクロブロックも順に復号化される。ピクチャB7のマクロブロックが全て復号化されると、ピクチャB6の復号化が行われる。
【0162】
<ピクチャB6の復号化処理>
符号列解析部1401、モード復号化部1403、および予測誤差復号化部1402における予測誤差画像データの生成までの動作は、ピクチャP9の復号化処理の際と同様であるので、説明は省略する。
【0163】
動き補償復号部1405は、入力された動きベクトルの情報等に基づいて、動き補償画像データを生成する。ピクチャB6は、前方向参照ピクチャとしてピクチャP5を参照し、後方向参照ピクチャとしてB7を参照して符号化されており、これらのピクチャは既に復号化されてフレームメモリ1407に保持されている。
【0164】
モード選択が2方向予測のピクチャ間予測符号化である場合には、動き補償復号部1405は、前方向動きベクトルの情報に基づいて前方向参照画像データをフレームメモリ1407から取得する。また、後方向動きベクトルの情報に基づいて後方向参照画像データをフレームメモリ1407から取得する。そして、動き補償復号部1405は、前方向参照画像データと後方向参照画像データとを加算平均することにより、動き補償画像データを生成する。
【0165】
また、モード選択がダイレクトモードである場合には、動き補償復号部1405は、動きベクトル記憶部1406に記憶されているピクチャB7の動きベクトルを取得する。動き補償復号部1405は、この動きベクトルを用いて、前方向参照画像データと後方向参照画像データとをフレームメモリ1407から取得する。そして、動き補償復号部1405は、前方向参照画像データと後方向参照画像データとを加算平均することにより、動き補償画像データを生成する。
【0166】
このモード選択がダイレクトモードである場合の第一の例を図5(b) を用いて説明する。ここで、ピクチャB6のブロックaを復号化しているとし、ブロックaと同じ位置にあるピクチャB7のブロックをブロックbとする。そして、ブロックbは、前方向参照によるピクチャ間予測符号化または2方向参照によるピクチャ間予測符号化されているとし、ブロックbの前方向動きベクトルを動きベクトルcとする。この動きベクトルcはピクチャP5を参照している。この場合、ブロックaに対する前方向動きベクトルとして、動きベクトルcを利用して生成したピクチャP5を参照する動きベクトルdを用い、後方向動きベクトルとして、動きベクトルcを利用して生成したピクチャB7を参照する動きベクトルeを用いる。例えば、動きベクトルcを利用する方法としては、動きベクトルcに平行な動きベクトルを生成する方法がある。これらの動きベクトルに基づいて得られる前方向参照画像データと後方向参照画像データとを加算平均した画像データを動き補償画像データとする。
【0167】
この場合、前方向動きベクトルである動きベクトルdの大きさをMVF、後方向動きベクトルである動きベクトルeの大きさをMVB、動きベクトルcの大きさをMV、現在のピクチャ(ピクチャB6)の後方向参照ピクチャ(ピクチャB7)と、その後方向参照ピクチャのブロックbが参照しているピクチャ(ピクチャP5)との時間的距離をTRD、現在のピクチャ(ピクチャB6)と前方向参照ピクチャ(ピクチャP5)との時間的距離をTRFとすると、動きベクトルdの大きさMVF、動きベクトルeの大きさMVBは、それぞれ(式1)、(式2)で求められる。なお、各ピクチャ間の時間的距離については、例えば各ピクチャに付される表示順序(位置)を示す情報、またはその情報の差に基づいて決定することができる。または、TRD、TRFの値は、各ピクチャ毎に決められた所定値を用いても良い。この所定値は、ヘッダ情報として符号列中に記述されていても良い。
【0168】
また、モード選択がダイレクトモードである場合の第二の例を図5(b) を用いて説明する。
この場合、ピクチャB6の後方にある参照ピクチャであるピクチャB7中の、ブロックaと同じ位置にあるブロックbを復号化した際に用いられた動きベクトルを利用する。ここではブロックbは、ダイレクトモードを用いて符号化されていたとし、そのときに実質的に用いられた前方向動きベクトルを動きベクトルcとする。この動きベクトルcは、動きベクトル記憶部1406に記憶されているものを用いるか、またはブロックbをダイレクトモードで符号化する際に用いたピクチャP9の動きベクトルを動きベクトル記憶部1406から読み出した後、スケーリングの計算を行って求める。なお、動き補償復号部1405は、ピクチャB7のブロックbをダイレクトモードで復号化する際にスケーリング処理により求めた動きベクトルを、動きベクトル記憶部1406に記憶する場合は、前方向動きベクトルだけを記憶すればよい。
【0169】
この場合、ブロックaに対する前方向動きベクトルとして、動きベクトルcを利用して生成したピクチャP5を参照する動きベクトルdを用い、後方向動きベクトルとして、動きベクトルcを利用して生成したピクチャB7を参照する動きベクトルeを用いる。例えば、動きベクトルcを利用する方法としては、動きベクトルcに平行な動きベクトルを生成する方法がある。これらの動きベクトルに基づいて得られる前方向参照画像データと後方向参照画像データとを加算平均した画像データを動き補償画像データとする。
【0170】
この場合、前方向動きベクトルである動きベクトルdの大きさMVFと、後方向動きベクトルである動きベクトルeの大きさMVBとは、ダイレクトモードの第一の例と同様に、(式1)、(式2)を用いて求めることができる。
【0171】
次に、モード選択がダイレクトモードである場合の第三の例を図5(c) を用いて説明する。
ここで、ピクチャB6のブロックaを復号化しているとし、ブロックaと同じ位置にあるピクチャB7のブロックをブロックbとする。ブロックbは、後方向参照予測符号化されているとし、ブロックbの後方向動きベクトルを動きベクトルfとする。この動きベクトルfはピクチャP9を参照している。この場合、ブロックaに対する前方向動きベクトルとして、動きベクトルfを利用して求めたピクチャP5を参照する動きベクトルgを用い、後方向動きベクトルとして、動きベクトルfを利用して求めたピクチャB7を参照する動きベクトルhを用いる。例えば、動きベクトルfを利用する方法としては、動きベクトルfに平行な動きベクトルを生成する方法がある。これらの動きベクトルに基づいて得られる前方向参照画像データと後方向参照画像データとを加算平均した画像データを動き補償画像データとする。
【0172】
この場合、前方向動きベクトルである動きベクトルgの大きさをMVF、後方向動きベクトルである動きベクトルhの大きさをMVB、動きベクトルfの大きさをMV、現在のピクチャ(ピクチャB6)の後方向参照ピクチャ(ピクチャB7)と、その後方向参照ピクチャのブロックが参照しているピクチャ(ピクチャP9)との時間的距離をTRD、現在のピクチャ(ピクチャB6)と前方向参照ピクチャ(ピクチャP5)との時間的距離をTRF、現在のピクチャ(ピクチャB6)と後方向参照ピクチャ(ピクチャB7)との時間的距離をTRB、とすると、動きベクトルgの大きさMVF、動きベクトルhの大きさMVBは、それぞれ(式3)、(式4)で求められる。
【0173】
次に、モード選択がダイレクトモードである場合の第四の例を図5(d) を用いて説明する。
ここで、ピクチャB6のブロックaを復号化しているとし、ブロックaと同じ位置にあるピクチャB7のブロックをブロックbとする。ブロックbは、第三の例と同様に後方向参照予測符号化されているとし、ブロックbの後方向動きベクトルを動きベクトルfとする。この動きベクトルfはピクチャP9を参照している。この場合、ブロックaに対する前方向動きベクトルとして、動きベクトルfを利用して求めたピクチャP9を参照する動きベクトルgを用い、後方向動きベクトルとして、動きベクトルfを利用して求めたピクチャB7を参照する動きベクトルhを用いる。例えば、動きベクトルfを利用する方法としては、動きベクトルfに平行な動きベクトルを生成する方法がある。これらの動きベクトルに基づいて得られる前方向参照画像データと後方向参照画像データとを加算平均した画像データを動き補償画像データとする。
【0174】
この場合、前方向動きベクトルである動きベクトルgの大きさをMVF、後方向動きベクトルである動きベクトルhの大きさをMVB、動きベクトルfの大きさをMV、現在のピクチャ(ピクチャB6)の後方向参照ピクチャ(ピクチャB7)と、その後方向参照ピクチャのブロックが参照しているピクチャ(ピクチャP9)との時間的距離をTRD、現在のピクチャ(ピクチャB6)と、後方向参照ピクチャ(ピクチャB7)のブロックが参照しているピクチャ(ピクチャP9)との時間的距離をTRFとすると、動きベクトルgの大きさMVF、動きベクトルhの大きさMVBは、それぞれ(式1)、(式2)で求められる。
【0175】
また、モード選択がダイレクトモードである場合の第五の例を図6(a) を用いて説明する。ここで、ピクチャB6のブロックaをダイレクトモードにより復号化するとする。この場合、動きベクトルの大きさを0として、前方向参照ピクチャとしてピクチャP5を、後方向参照ピクチャとしてピクチャB7を用いて、2方向参照を行うことにより、動き補償を行う。
【0176】
次に、モード選択がダイレクトモードである場合の第六の例を図6(b) を用いて説明する。ここで、ピクチャB6のブロックaをダイレクトモードで復号化するとする。この場合、ピクチャB6の後方にあるPピクチャであるピクチャP9中の、ブロックaと同じ位置にあるブロックfを復号化する際に用いられた動きベクトルgを利用する。動きベクトルgは、動きベクトル記憶部1406に記憶されている。ブロックaは、動きベクトルgを利用して求めた動きベクトルを用いて、前方向参照ピクチャであるピクチャP5と、後方向参照ピクチャであるピクチャB7から2方向予測を行う。例えば、上記第一の例の場合と同様に動きベクトルgに平行な動きベクトルを生成する方法を用いれば、ブロックaの動き補償画像データを得るために用いる動きベクトルは、ピクチャP5に対しては動きベクトルh、ピクチャB7に対しては動きベクトルiとなる。
【0177】
この場合、前方向動きベクトルである動きベクトルhの大きさをMVF、後方向動きベクトルである動きベクトルiの大きさをMVB、動きベクトルgの大きさをMV、現在のピクチャ(ピクチャB6)の後方に位置するPピクチャ(ピクチャP9)と、その後に位置するピクチャのブロックfが参照しているピクチャ(ピクチャP5)との時間的距離をTRD、現在のピクチャ(ピクチャB6)と前方向参照ピクチャ(ピクチャP5)との時間的距離をTRF、現在のピクチャ(ピクチャB6)と後方向参照ピクチャ(ピクチャB7)との時間的距離をTRB、とすると、動きベクトルMVF、動きベクトルMVBは、それぞれ(式1)、(式5)で求められる。
【0178】
次に、モード選択がダイレクトモードである場合の第七の例を図6(c) を用いて説明する。ここで、ピクチャB6のブロックaをダイレクトモードで復号化するとする。この例は、上記で説明したピクチャ番号に対する相対インデックスの割り当ての変更(リマッピング)が行われ、後方向参照ピクチャがピクチャP9となった場合である。この場合、ピクチャB6の後方向参照ピクチャであるピクチャP9中の、ブロックaと同じ位置にあるブロックfを符号化する際に用いられた動きベクトルgを利用する。動きベクトルgは、動きベクトル記憶部1406に記憶されている。ブロックaは、動きベクトルgを利用して生成した動きベクトルを用いて、前方向参照ピクチャであるピクチャP5と、後方向参照ピクチャであるピクチャP9とから2方向予測を行う。例えば、上記第一の例の場合と同様に動きベクトルgに平行な動きベクトルを生成する方法を用いれば、ブロックaの動き補償画像データを得るために用いる動きベクトルは、ピクチャP5に対しては動きベクトルh、ピクチャP9に対しては動きベクトルiとなる。
【0179】
この場合、前方向動きベクトルである動きベクトルhの大きさをMVF、後方向動きベクトルである動きベクトルiの大きさをMVB、動きベクトルgの大きさをMV、現在のピクチャ(ピクチャB6)の後方向参照ピクチャ(ピクチャP9)と、その後方向参照ピクチャのブロックが参照しているピクチャ(ピクチャP5)との時間的距離をTRD、現在のピクチャ(ピクチャB6)と前方向参照ピクチャ(ピクチャP5)との時間的距離をTRFとすると、動きベクトルhの大きさMVF、動きベクトルiの大きさMVBは、それぞれ(式1)、(式2)で求められる。
【0180】
このようにして生成された動き補償画像データは加算演算部1408に対して出力される。加算演算部1408は、入力された予測誤差画像データと動き補償画像データとを加算し、復号化画像データを生成する。生成された復号化画像データはスイッチ1410を介してフレームメモリ1407に対して出力される。
【0181】
以上のようにして、ピクチャB6の1マクロブロックの処理が完了する。同様の処理により、残りのマクロブロックも順に復号化される。ピクチャB6のマクロブロックが全て復号化されると、ピクチャB8の復号化が行われる。
【0182】
<ピクチャB8の復号化処理>
符号列解析部1401、モード復号化部1403、および予測誤差復号化部1402における予測誤差画像データの生成までの動作は、ピクチャP9の復号化処理の際と同様であるので、説明は省略する。
【0183】
動き補償復号部1405は、入力された動きベクトルの情報等に基づいて、動き補償画像データを生成する。ピクチャB8は、前方向参照ピクチャとしてピクチャB7を参照し、後方向参照ピクチャとしてP9を参照して符号化されており、これらのピクチャは既に復号化されてフレームメモリ1407に保持されている。
【0184】
モード選択が2方向予測のピクチャ間予測符号化である場合には、動き補償復号部1405は、前方向動きベクトルの情報に基づいて前方向参照画像データをフレームメモリ1407から取得する。また、後方向動きベクトルの情報に基づいて後方向参照画像データをフレームメモリ1407から取得する。そして、動き補償復号部1405は、前方向参照画像データと後方向参照画像データとを加算平均することにより、動き補償画像データを生成する。
【0185】
また、モード選択がダイレクトモードである場合には、動き補償復号部1405は、動きベクトル記憶部1406に記憶されているピクチャP9の動きベクトルを取得する。動き補償復号部1405は、この動きベクトルを用いて、前方向参照画像データと後方向参照画像データとをフレームメモリ1407から取得する。そして、動き補償復号部1405は、前方向参照画像データと後方向参照画像データとを加算平均することにより、動き補償画像データを生成する。
【0186】
モード選択がダイレクトモードである場合の例を図6(d) を用いて説明する。ここで、ピクチャB8のブロックaを復号化しているとし、後方向参照ピクチャであるピクチャP9中の、ブロックaと同じ位置にあるブロックbとする。そして、ブロックbの前方向動きベクトルを動きベクトルcとする。この動きベクトルcはピクチャP5を参照している。この場合、ブロックaに対する前方向動きベクトルとして、動きベクトルcを利用して生成したピクチャB7を参照する動きベクトルdを用い、後方向動きベクトルとして、動きベクトルcを利用して生成したピクチャP9を参照する動きベクトルeを用いる。例えば、動きベクトルcを利用する方法としては、動きベクトルcに平行な動きベクトルを生成する方法がある。これらの動きベクトルに基づいて得られる前方向参照画像データと後方向参照画像データとを加算平均した画像データを動き補償画像データとする。
【0187】
この場合、前方向動きベクトルである動きベクトルdの大きさをMVF、後方向動きベクトルである動きベクトルeの大きさをMVB、動きベクトルcの大きさをMV、現在のピクチャ(ピクチャB8)の後方向参照ピクチャ(ピクチャP9)と、その後方向参照ピクチャのブロックbが参照しているピクチャ(ピクチャP5)との時間的距離をTRD、現在のピクチャ(ピクチャB8)と前方向参照ピクチャ(ピクチャB7)との時間的距離をTRF、現在のピクチャ(ピクチャB8)と後方向参照ピクチャ(ピクチャP9)との時間的距離をTRBとすると、動きベクトルdの大きさMVF、動きベクトルeの大きさMVBは、それぞれ(式1)、(式5)で求められる。
【0188】
このようにして生成された動き補償画像データは加算演算部1408に対して出力される。加算演算部1408は、入力された予測誤差画像データと動き補償画像データとを加算し、復号化画像データを生成する。生成された復号化画像データはスイッチ1410を介してフレームメモリ1407に対して出力される。
【0189】
以上のようにして、ピクチャB8の1マクロブロックの処理が完了する。同様の処理により、残りのマクロブロックも順に復号化される。以下、各ピクチャはピクチャタイプに応じた同様の処理によって復号化される。
【0190】
次に、フレームメモリ制御部1404は、上記のようにフレームメモリ1407に保持された各ピクチャの画像データを、図4(a) に示すように時間順に並び直して出力画像として出力する。
【0191】
以上のように、本発明に係る動画像復号化方法では、2方向予測を用いてピクチャ間予測符号化処理が行われているBピクチャを復号化する際に、前方向参照および後方向参照として用いるピクチャとして、既に復号化済みの表示時間順で近傍に位置するピクチャを用いて復号化する。
【0192】
また、Bピクチャで符号化モードとしてダイレクトモードが選択されている場合には、動きベクトル記憶部1406に保持している既に復号化済みの後方向参照ピクチャの動きベクトルを参照することにより、既に復号化済みの画像データから参照画像データを取得し、動き補償画像データを得る。
【0193】
このような動作により、2方向予測を用いてピクチャ間予測符号化処理を行うBピクチャを符号化する際に、前方向参照および後方向参照として用いるピクチャとして、表示時間順に近傍に位置するピクチャを用いて符号化されて生成された符号列を、復号化する際に正しく復号化処理を行うことができる。
【0194】
なお、本実施の形態では、ダイレクトモードにおいては、7つの例について説明したが、これは例えば、後方向参照ピクチャの同一位置のブロックの復号化方法等により、マクロブロックやブロック毎に一意的に決定される一つの方法を用いても良いし、ブロックやマクロブロック単位で複数の方法を切り替えて用いても良い。複数の方法を用いられている場合には、符号列中に記述されている、どのダイレクトモードを用いたかを示す情報を用いて、復号化を行う。この際には、動き補償復号化部1405の動作が、その情報によって変わることになる。例えば、動き補償のブロック単位でこの情報が付加されている場合、モード復号部1403でどのダイレクトモードが用いられて符号化されているかを決定し、それを動き補償復号部1405に伝える。そして、動き補償復号部1405は、どのダイレクトモードが用いられているかによって、本実施の形態で説明したような復号化方法を用いて復号化処理を行う。
【0195】
また、本実施の形態では、IまたはPピクチャ間に3枚のBピクチャが挟まれているピクチャ構成の場合について説明したが、このBピクチャの枚数は別の値、例えば4枚や5枚であっても良い。
【0196】
また、本実施の形態では、Pピクチャは表示時間順で前方または後方に位置する符号化済みのIまたはPピクチャを1つ参照して符号化され、Bピクチャは表示時間順で前方または後方に位置する近傍の符号化済みのピクチャを2つ参照して符号化されている符号列を復号化する場合について説明したが、これらはPピクチャの場合には、表示時間順で前方または後方に位置する、複数の符号化済みのIまたはPピクチャを参照ピクチャの候補とし、各ブロックで最大1つのピクチャを参照して符号化し、Bピクチャの場合には、表示時間順で前方または後方に位置する近傍の複数の符号化済みのピクチャを参照ピクチャの候補とし、各ブロックで最大2つのピクチャを参照して符号化された符号列であっても良い。
【0197】
また、動き補償復号部1405は、動きベクトル記憶部1406に動きベクトルを記憶する際に、対象ブロックが2方向予測またはダイレクトモードにより符号化されている場合には、前方向および後方向の両方の動きベクトルを記憶しても良いし、前方向動きベクトルのみを記憶するようにしても良い。前方向動きベクトルのみを記憶すると、動きベクトル記憶部1406のメモリ量を削減することができる。
【0198】
(実施の形態3)
さらに、上記各実施の形態で示した動画像符号化方法または動画像復号化方法の構成を実現するためのプログラムを、フレキシブルディスク等の記憶媒体に記録するようにすることにより、上記各実施の形態で示した処理を、独立したコンピュータシステムにおいて簡単に実施することが可能となる。
【0199】
図15は、上記各実施の形態の動画像符号化方法または動画像復号化方法を格納したフレキシブルディスクを用いて、コンピュータシステムにより実施する場合の説明図である。
【0200】
図15(b)は、フレキシブルディスクの正面からみた外観、断面構造、及びフレキシブルディスクを示し、図15(a)は、記録媒体本体であるフレキシブルディスクの物理フォーマットの例を示している。フレキシブルディスクFDはケースF内に内蔵され、該ディスクの表面には、同心円状に外周からは内周に向かって複数のトラックTrが形成され、各トラックは角度方向に16のセクタSeに分割されている。従って、上記プログラムを格納したフレキシブルディスクでは、上記フレキシブルディスクFD上に割り当てられた領域に、上記プログラムとしての動画像符号化方法が記録されている。
【0201】
また、図15(c)は、フレキシブルディスクFDに上記プログラムの記録再生を行うための構成を示す。上記プログラムをフレキシブルディスクFDに記録する場合は、コンピュータシステムCsから上記プログラムとしての動画像符号化方法または動画像復号化方法をフレキシブルディスクドライブを介して書き込む。また、フレキシブルディスク内のプログラムにより上記動画像符号化方法をコンピュータシステム中に構築する場合は、フレキシブルディスクドライブによりプログラムをフレキシブルディスクから読み出し、コンピュータシステムに転送する。
【0202】
なお、上記説明では、記録媒体としてフレキシブルディスクを用いて説明を行ったが、光ディスクを用いても同様に行うことができる。また、記録媒体はこれに限らず、ICカード、ROMカセット等、プログラムを記録できるものであれば同様に実施することができる。
【0203】
さらにここで、上記実施の形態で示した動画像符号化方法や動画像復号化方法の応用例とそれを用いたシステムを説明する。
図16は、コンテンツ配信サービスを実現するコンテンツ供給システムex100の全体構成を示すブロック図である。通信サービスの提供エリアを所望の大きさに分割し、各セル内にそれぞれ固定無線局である基地局ex107〜ex110が設置されている。
【0204】
このコンテンツ供給システムex100は、例えば、インターネットex101にインターネットサービスプロバイダex102および電話網ex104、および基地局ex107〜ex110を介して、コンピュータex111、PDA(personal digital assistant)ex112、カメラex113、携帯電話ex114、カメラ付きの携帯電話ex115などの各機器が接続される。
【0205】
しかし、コンテンツ供給システムex100は図16のような組合せに限定されず、いずれかを組み合わせて接続するようにしてもよい。また、固定無線局である基地局ex107〜ex110を介さずに、各機器が電話網ex104に直接接続されてもよい。
【0206】
カメラex113はデジタルビデオカメラ等の動画撮影が可能な機器である。また、携帯電話は、PDC(Personal Digital Communications)方式、CDMA(Code Division Multiple Access)方式、W−CDMA(Wideband−Code Division Multiple Access)方式、若しくはGSM(Global System for Mobile Communications)方式の携帯電話機、またはPHS(Personal Handyphone System)等であり、いずれでも構わない。
【0207】
また、ストリーミングサーバex103は、カメラex113から基地局ex109、電話網ex104を通じて接続されており、カメラex113を用いてユーザが送信する符号化処理されたデータに基づいたライブ配信等が可能になる。撮影したデータの符号化処理はカメラex113で行っても、データの送信処理をするサーバ等で行ってもよい。また、カメラex116で撮影した動画データはコンピュータex111を介してストリーミングサーバex103に送信されてもよい。カメラex116はデジタルカメラ等の静止画、動画が撮影可能な機器である。この場合、動画データの符号化はカメラex116で行ってもコンピュータex111で行ってもどちらでもよい。また、符号化処理はコンピュータex111やカメラex116が有するLSIex117において処理することになる。なお、動画像符号化・復号化用のソフトウェアをコンピュータex111等で読み取り可能な記録媒体である何らかの蓄積メディア(CD−ROM、フレキシブルディスク、ハードディスクなど)に組み込んでもよい。さらに、カメラ付きの携帯電話ex115で動画データを送信してもよい。このときの動画データは携帯電話ex115が有するLSIで符号化処理されたデータである。
【0208】
このコンテンツ供給システムex100では、ユーザがカメラex113、カメラex116等で撮影しているコンテンツ(例えば、音楽ライブを撮影した映像等)を上記実施の形態同様に符号化処理してストリーミングサーバex103に送信する一方で、ストリーミングサーバex103は要求のあったクライアントに対して上記コンテンツデータをストリーム配信する。クライアントとしては、上記符号化処理されたデータを復号化することが可能な、コンピュータex111、PDAex112、カメラex113、携帯電話ex114等がある。このようにすることでコンテンツ供給システムex100は、符号化されたデータをクライアントにおいて受信して再生することができ、さらにクライアントにおいてリアルタイムで受信して復号化し、再生することにより、個人放送をも実現可能になるシステムである。
【0209】
このシステムを構成する各機器の符号化、復号化には上記各実施の形態で示した動画像符号化装置あるいは動画像復号化装置を用いるようにすればよい。
その一例として携帯電話について説明する。
【0210】
図17は、上記実施の形態で説明した動画像符号化方法と動画像復号化方法を用いた携帯電話ex115を示す図である。携帯電話ex115は、基地局ex110との間で電波を送受信するためのアンテナex201、CCDカメラ等の映像、静止画を撮ることが可能なカメラ部ex203、カメラ部ex203で撮影した映像、アンテナex201で受信した映像等が復号化されたデータを表示する液晶ディスプレイ等の表示部ex202、操作キーex204群から構成される本体部、音声出力をするためのスピーカ等の音声出力部ex208、音声入力をするためのマイク等の音声入力部ex205、撮影した動画もしくは静止画のデータ、受信したメールのデータ、動画のデータもしくは静止画のデータ等、符号化されたデータまたは復号化されたデータを保存するための記録メディアex207、携帯電話ex115に記録メディアex207を装着可能とするためのスロット部ex206を有している。記録メディアex207はSDカード等のプラスチックケース内に電気的に書換えや消去が可能な不揮発性メモリであるEEPROM(Electrically Erasable and Programmable Read Only Memory)の一種であるフラッシュメモリ素子を格納したものである。
【0211】
さらに、携帯電話ex115について図18を用いて説明する。携帯電話ex115は表示部ex202及び操作キーex204を備えた本体部の各部を統括的に制御するようになされた主制御部ex311に対して、電源回路部ex310、操作入力制御部ex304、画像符号化部ex312、カメラインターフェース部ex303、LCD(Liquid Crystal Display)制御部ex302、画像復号化部ex309、多重分離部ex308、記録再生部ex307、変復調回路部ex306及び音声処理部ex305が同期バスex313を介して互いに接続されている。
【0212】
電源回路部ex310は、ユーザの操作により終話及び電源キーがオン状態にされると、バッテリパックから各部に対して電力を供給することによりカメラ付ディジタル携帯電話ex115を動作可能な状態に起動する。
【0213】
携帯電話ex115は、CPU、ROM及びRAM等でなる主制御部ex311の制御に基づいて、音声通話モード時に音声入力部ex205で集音した音声信号を音声処理部ex305によってディジタル音声データに変換し、これを変復調回路部ex306でスペクトラム拡散処理し、送受信回路部ex301でディジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex201を介して送信する。また携帯電話機ex115は、音声通話モード時にアンテナex201で受信した受信データを増幅して周波数変換処理及びアナログディジタル変換処理を施し、変復調回路部ex306でスペクトラム逆拡散処理し、音声処理部ex305によってアナログ音声データに変換した後、これを音声出力部ex208を介して出力する。
【0214】
さらに、データ通信モード時に電子メールを送信する場合、本体部の操作キーex204の操作によって入力された電子メールのテキストデータは操作入力制御部ex304を介して主制御部ex311に送出される。主制御部ex311は、テキストデータを変復調回路部ex306でスペクトラム拡散処理し、送受信回路部ex301でディジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex201を介して基地局ex110へ送信する。
【0215】
データ通信モード時に画像データを送信する場合、カメラ部ex203で撮像された画像データをカメラインターフェース部ex303を介して画像符号化部ex312に供給する。また、画像データを送信しない場合には、カメラ部ex203で撮像した画像データをカメラインターフェース部ex303及びLCD制御部ex302を介して表示部ex202に直接表示することも可能である。
【0216】
画像符号化部ex312は、本願発明で説明した動画像符号化装置を備えた構成であり、カメラ部ex203から供給された画像データを上記実施の形態で示した動画像符号化装置に用いた符号化方法によって圧縮符号化することにより符号化画像データに変換し、これを多重分離部ex308に送出する。また、このとき同時に携帯電話機ex115は、カメラ部ex203で撮像中に音声入力部ex205で集音した音声を音声処理部ex305を介してディジタルの音声データとして多重分離部ex308に送出する。
【0217】
多重分離部ex308は、画像符号化部ex312から供給された符号化画像データと音声処理部ex305から供給された音声データとを所定の方式で多重化し、その結果得られる多重化データを変復調回路部ex306でスペクトラム拡散処理し、送受信回路部ex301でディジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex201を介して送信する。
【0218】
データ通信モード時にホームページ等にリンクされた動画像ファイルのデータを受信する場合、アンテナex201を介して基地局ex110から受信した受信データを変復調回路部ex306でスペクトラム逆拡散処理し、その結果得られる多重化データを多重分離部ex308に送出する。
【0219】
また、アンテナex201を介して受信された多重化データを復号化するには、多重分離部ex308は、多重化データを分離することにより画像データのビットストリームと音声データのビットストリームとに分け、同期バスex313を介して当該符号化画像データを画像復号化部ex309に供給すると共に当該音声データを音声処理部ex305に供給する。
【0220】
次に、画像復号化部ex309は、本願発明で説明した動画像復号化装置を備えた構成であり、画像データのビットストリームを上記実施の形態で示した符号化方法に対応した復号化方法で復号することにより再生動画像データを生成し、これをLCD制御部ex302を介して表示部ex202に供給し、これにより、例えばホームページにリンクされた動画像ファイルに含まれる動画データが表示される。このとき同時に音声処理部ex305は、音声データをアナログ音声データに変換した後、これを音声出力部ex208に供給し、これにより、例えばホームページにリンクされた動画像ファイルに含まる音声データが再生される。
【0221】
なお、上記システムの例に限られず、最近は衛星、地上波によるディジタル放送が話題となっており、図19に示すようにディジタル放送用システムにも上記実施の形態の少なくとも動画像符号化装置または動画像復号化装置のいずれかを組み込むことができる。具体的には、放送局ex409では映像情報のビットストリームが電波を介して通信または放送衛星ex410に伝送される。これを受けた放送衛星ex410は、放送用の電波を発信し、この電波を衛星放送受信設備をもつ家庭のアンテナex406で受信し、テレビ(受信機)ex401またはセットトップボックス(STB)ex407などの装置によりビットストリームを復号化してこれを再生する。また、記録媒体であるCDやDVD等の蓄積メディアex402に記録したビットストリームを読み取り、復号化する再生装置ex403にも上記実施の形態で示した動画像復号化装置を実装することが可能である。この場合、再生された映像信号はモニタex404に表示される。また、ケーブルテレビ用のケーブルex405または衛星/地上波放送のアンテナex406に接続されたセットトップボックスex407内に動画像復号化装置を実装し、これをテレビのモニタex408で再生する構成も考えられる。このときセットトップボックスではなく、テレビ内に動画像復号化装置を組み込んでも良い。また、アンテナex411を有する車ex412で衛星ex410からまたは基地局ex107等から信号を受信し、車ex412が有するカーナビゲーションex413等の表示装置に動画を再生することも可能である。
【0222】
更に、画像信号を上記実施の形態で示した動画像符号化装置で符号化し、記録媒体に記録することもできる。具体例としては、DVDディスクex421に画像信号を記録するDVDレコーダや、ハードディスクに記録するディスクレコーダなどのレコーダex420がある。更にSDカードex422に記録することもできる。レコーダex420が上記実施の形態で示した動画像復号化装置を備えていれば、DVDディスクex421やSDカードex422に記録した画像信号を再生し、モニタex408で表示することができる。
【0223】
なお、カーナビゲーションex413の構成は例えば図18に示す構成のうち、カメラ部ex203とカメラインターフェース部ex303、画像符号化部ex312を除いた構成が考えられ、同様なことがコンピュータex111やテレビ(受信機)ex401等でも考えられる。
【0224】
また、上記携帯電話ex114等の端末は、符号化器・復号化器を両方持つ送受信型の端末の他に、符号化器のみの送信端末、復号化器のみの受信端末の3通りの実装形式が考えられる。
【0225】
このように、上記実施の形態で示した動画像符号化方法あるいは動画像復号化方法を上述したいずれの機器・システムに用いることは可能であり、そうすることで、上記実施の形態で説明した効果を得ることができる。
【0226】
また、本発明はかかる上記実施形態に限定されるものではなく、本発明の範囲を逸脱することなく種々の変形または修正が可能である。
【0227】
【発明の効果】
以上のように、本発明に係る動画像符号化方法によれば、Bピクチャを符号化する際に、より表示時間順で近傍のピクチャを参照ピクチャとして用いることができ、これにより動き補償の際の予測効率が向上するため、符号化効率が向上する。
【0228】
また、ダイレクトモードにおいて、第2参照ピクチャの第1動きベクトルに対してスケーリングを行うことにより、動きベクトルの情報を送る必要がなく、かつ予測効率を向上させることができる。
【0229】
また、ダイレクトモードにおいて、第2参照ピクチャのダイレクトモードで実質的に用いた第1動きベクトルに対してスケーリングを行うことにより、動きベクトルの情報を送る必要がなく、かつ第2参照ピクチャ内の同一位置のブロックがダイレクトモードで符号化されている場合でも、予測効率を向上させることができる。
【0230】
また、ダイレクトモードにおいて、第2参照ピクチャの同一位置のブロックを符号化する際に用いた第2動きベクトルに対してスケーリングを行うことにより、動きベクトルの情報を送る必要がなく、かつ第2参照ピクチャ内の同一位置のブロックが第2動きベクトルしか有しない場合でも、予測効率を向上させることができる。
【0231】
また、ダイレクトモードにおける動きベクトルを強制的に0と置くことにより、ダイレクトモードが選択された場合には、動きベクトルの情報を送る必要がなく、かつ動きベクトルのスケーリング処理が不要となり処理量の削減を図ることができる。
【0232】
また、ダイレクトモードにおいて、後方Pピクチャの動きベクトルに対してスケーリングを行うことにより、第2参照ピクチャがBピクチャである場合に、そのBピクチャの動きベクトルを記憶しておく必要が無い。また、動きベクトルの情報を送る必要がなく、かつ予測効率を向上させることができる。
【0233】
また、ダイレクトモードにおいて、第2参照ピクチャが第1動きベクトルを有していれば、この第1動きベクトルに対してスケーリングを行い、また、第2参照ピクチャが第1動きベクトルを有さず第2動きベクトルのみを有していれば、この第2動きベクトルに対してスケーリングを行うので、動きベクトルの情報を符号列に付加する必要がなく、かつ予測効率を向上させることができる。
【0234】
また、本発明に係る動画像復号化方法によれば、2方向予測を用いてピクチャ間予測符号化処理を行う際に第1参照および第2参照として用いるピクチャとして、表示時間順に近傍に位置するピクチャを用いて符号化されて生成された符号列を復号化する際に、正しく復号化処理を行うことができる。
【図面の簡単な説明】
【図1】本発明に係る動画像符号化方法を用いた動画像符号化装置の一実施の形態の構成を示すブロック図である。
【図2】本発明の実施の形態におけるピクチャ番号と相対インデックスの説明図である。
【図3】本発明の実施の形態における動画像符号化装置による画像符号化信号フォーマットの概念図である。
【図4】本発明の実施の形態の並べ替え用メモリにおけるピクチャの順序を示す模式図であり、(a) 入力された順序、(b) 並び替えられた順序を示す図である。
【図5】本発明の実施の形態でのダイレクトモードにおける動きベクトルを示す模式図であり、(a) 対象ブロックがピクチャB7である場合、(b) 対象ブロックaがピクチャB6である場合の第一および第二の例、(c) 対象ブロックaがピクチャB6である場合の第三の例、(d) 対象ブロックaがピクチャB6である場合の第四の例を示す図である。
【図6】本発明の実施の形態でのダイレクトモードにおける動きベクトルを示す模式図であり、(a) 対象ブロックaがピクチャB6である場合の第五の例、(b) 対象ブロックaがピクチャB6である場合の第六の例、(c) 対象ブロックaがピクチャB6である場合の第七の例、(d) 対象ブロックaがピクチャB8である場合を示す図である。
【図7】本発明の実施の形態におけるピクチャの予測関係および順序を示す模式図であり、(a) 表示時間順で示した各ピクチャの予測関係、(b) 符号化順(符号列順)に並べ替えたピクチャ順を示す図である。
【図8】本発明の実施の形態におけるピクチャの予測関係および順序を示す模式図であり、(a) 表示時間順で示した各ピクチャの予測関係、(b) 符号化順(符号列順)に並べ替えたピクチャ順を示す図である。
【図9】本発明の実施の形態におけるピクチャの予測関係および順序を示す模式図であり、(a) 表示時間順で示した各ピクチャの予測関係、(b) 符号化順(符号列順)に並べ替えたピクチャ順を示す図である。
【図10】本発明の実施の形態の図4に示すピクチャ予測構造を階層的に示す模式図である。
【図11】本発明の実施の形態の図7に示すピクチャ予測構造を階層的に示す模式図である。
【図12】本発明の実施の形態の図8に示すピクチャ予測構造を階層的に示す模式図である。
【図13】本発明の実施の形態の図9に示すピクチャ予測構造を階層的に示す模式図である。
【図14】本発明に係る動画像復号化方法を用いた動画像復号化装置の一実施の形態の構成を示すブロック図である。
【図15】実施の形態1の動画像符号化方法および動画像復号化方法をコンピュータシステムにより実現するためのプログラムを格納するための記録媒体についての説明図であり、(a) 記録媒体本体であるフレキシブルディスクの物理フォーマットの例を示した説明図、(b) フレキシブルディスクの正面からみた外観、断面構造、及びフレキシブルディスクを示した説明図、(c) フレキシブルディスクFDに上記プログラムの記録再生を行うための構成を示した説明図である。
【図16】コンテンツ配信サービスを実現するコンテンツ供給システムの全体構成を示すブロック図である。
【図17】携帯電話の一例を示す概略図である。
【図18】携帯電話の内部構成を示すブロック図である。
【図19】ディジタル放送用システムの全体構成を示すブロック図である。
【図20】従来の動画像符号化方法におけるピクチャの予測関係および順序を示す模式図であり、(a) 各ピクチャと対応する参照ピクチャとの関係、(b) 符号化により生成された符号列の順序を示す図である。
【図21】従来の動画像符号化方法でのダイレクトモードにおける動きベクトルを示す模式図である。
【符号の説明】
101 並べ替え用メモリ
102 差分演算部
103 予測誤差符号化部
104 符号列生成部
105 予測誤差復号化部
106 加算演算部
107 参照ピクチャ用メモリ
108 動きベクトル検出部
109 モード選択部
110 符号化制御部
116 動きベクトル記憶部
1401 符号列解析部
1402 予測誤差復号化部
1403 モード復号部
1404 フレームメモリ制御部
1405 動き補償復号部
1406 動きベクトル記憶部
1407 フレームメモリ
1408 加算演算部
Claims (35)
- 動画像を構成する各ピクチャに対応する画像データを符号化して符号列を生成する動画像符号化方法であって、
符号化の対象となる対象ピクチャが、ピクチャ内符号化を行うブロックのみを有するIピクチャ、既に符号化済みであるピクチャを第1参照ピクチャとして用いる1方向参照によるピクチャ間予測符号化を行うブロックを有するPピクチャ、既に符号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測符号化を行うブロックを有するBピクチャのいずれかとして符号化を行う符号化ステップを含み、
前記符号化ステップは、
前記IピクチャまたはPピクチャ間に挟まれる複数の連続した前記Bピクチャの符号化順序を、表示時間順とは異なる順序に決定する制御ステップ
を含むことを特徴とする動画像符号化方法。 - 前記符号化ステップは、さらに、前記Bピクチャを符号化する際に、前記第1参照ピクチャおよび第2参照ピクチャとして、それぞれ表示時間順で最も近いピクチャを少なくとも含むように選択する選択ステップ
を含むことを特徴とする請求項1記載の動画像符号化方法。 - 前記制御ステップでは、前記Bピクチャの符号化順序を、既に符号化済みであるピクチャからの表示時間順での時間的距離が、最も遠いピクチャから優先して符号化するように決定する
ことを特徴とする請求項1記載の動画像符号化方法。 - 前記制御ステップでは、前記Bピクチャの符号化順序を、既に符号化済みであるピクチャからの表示時間順での時間的距離が、最も近いピクチャから優先して符号化するように決定する
ことを特徴とする請求項1記載の動画像符号化方法。 - 前記時間的距離は、各ピクチャの表示順序を示す情報の差である
ことを特徴とする請求項3または請求項4記載の動画像符号化方法。 - 動画像を構成する各ピクチャに対応する画像データを符号化して符号列を生成する動画像符号化方法であって、
符号化の対象となる対象ピクチャを、少なくとも、既に符号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測符号化を行うブロックを有するBピクチャとして符号化を行う符号化ステップを含み、
前記符号化ステップでは、
符号化対象であるBピクチャの符号化対象ブロックを、既に符号化済みであるブロックの有する動きベクトルに基づく、前記符号化対象ブロックの動きベクトルによって動き補償するダイレクトモードとして符号化する場合に、
前記符号化対象ブロックと同一位置にある前記第2参照ピクチャ内のブロックを符号化した際に用いた当該ブロックが参照する第1参照ピクチャに基づく第1動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングすることにより、前記符号化対象ブロックを動き補償する際の動きベクトルを得る
ことを特徴とする動画像符号化方法。 - 動画像を構成する各ピクチャに対応する画像データを符号化して符号列を生成する動画像符号化方法であって、
符号化の対象となる対象ピクチャを、少なくとも、既に符号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測符号化を行うブロックを有するBピクチャとして符号化を行う符号化ステップを含み、
前記符号化ステップでは、
符号化対象であるBピクチャの符号化対象ブロックを、既に符号化済みであるブロックの有する動きベクトルに基づく、前記符号化対象ブロックの動きベクトルによって動き補償するダイレクトモードとして符号化する場合に、
前記符号化対象ブロックと同一位置にある前記第2参照ピクチャ内のブロックを符号化した際に用いた当該ブロックが参照する第2参照ピクチャに基づく第2動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングすることにより、前記符号化対象ブロックを動き補償する際の動きベクトルを得る
ことを特徴とする動画像符号化方法。 - 動画像を構成する各ピクチャに対応する画像データを符号化して符号列を生成する動画像符号化方法であって、
符号化の対象となる対象ピクチャを、少なくとも、既に符号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測符号化を行うブロックを有するBピクチャとして符号化を行う符号化ステップを含み、
前記符号化ステップでは、
符号化対象であるBピクチャの符号化対象ブロックを、既に符号化済みであるブロックの有する動きベクトルに基づく、前記符号化対象ブロックの動きベクトルによって動き補償するダイレクトモードとして符号化する場合に、
前記符号化対象ブロックと同一位置にある前記第2参照ピクチャ内のブロックがダイレクトモードで符号化されているときには、前記第2参照ピクチャ内のブロックを符号化する際に実質的に用いた当該ブロックが参照する第1参照ピクチャに基づく第1動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングを行うことにより、前記符号化対象ブロックを動き補償する際の動きベクトルを得る
ことを特徴とする動画像符号化方法。 - 動画像を構成する各ピクチャに対応する画像データを符号化して符号列を生成する動画像符号化方法であって、
符号化の対象となる対象ピクチャを、少なくとも、既に符号化済みであるピクチャを第1参照ピクチャとして用いる1方向参照によるピクチャ間予測符号化を行うブロックを有するPピクチャ、または既に符号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測符号化を行うブロックを有するBピクチャとして符号化を行う符号化ステップを含み、
前記符号化ステップでは、
符号化対象であるBピクチャの符号化対象ブロックを、既に符号化済みであるブロックの有する動きベクトルに基づく、前記符号化対象ブロックの動きベクトルによって動き補償するダイレクトモードとして符号化する場合に、
前記符号化対象ブロックと同一位置にある後方Pピクチャ内のブロックを符号化した際に用いた当該ブロックが参照する第1参照ピクチャに基づく第1動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングを行うことにより、前記符号化対象ブロックを動き補償する際の動きベクトルを得る
ことを特徴とする動画像符号化方法。 - 動画像を構成する各ピクチャに対応する画像データを符号化して符号列を生成する動画像符号化方法であって、
符号化の対象となる対象ピクチャを、少なくとも、既に符号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測符号化を行うブロックを有するBピクチャとして符号化を行う符号化ステップを含み、
前記符号化ステップでは、
符号化対象であるBピクチャの符号化対象ブロックを、既に符号化済みであるブロックの有する動きベクトルに基づく、前記符号化対象ブロックの動きベクトルによって動き補償するダイレクトモードとして符号化する場合に、
既に符号化済みのブロックから得られる動きベクトルの中から選択した動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングを行うことにより得られる動きベクトルを用いて動き補償を行い、前記選択した動きベクトルを示す情報を前記符号列中に付加する
ことを特徴とする動画像符号化方法。 - 動画像を構成する各ピクチャに対応する画像データを符号化して符号列を生成する動画像符号化方法であって、
符号化の対象となる対象ピクチャを、少なくとも、既に符号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測符号化を行うブロックを有するBピクチャとして符号化を行う符号化ステップを含み、
前記符号化ステップでは、
符号化対象であるBピクチャの符号化対象ブロックを、既に符号化済みであるブロックの有する動きベクトルに基づく、前記符号化対象ブロックの動きベクトルによって動き補償するダイレクトモードとして符号化する場合に、
前記符号化対象ブロックと同一位置にある前記第2参照ピクチャ内のブロックが少なくとも第1参照ピクチャに基づく第1動きベクトルを用いて符号化されている場合は、前記第1動きベクトルに対して、前記同一位置にある前記第2参照ピクチャ内のブロックが第2参照ピクチャに基づく第2動きベクトルのみを用いて符号化されている場合は、前記第2動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングすることにより、前記符号化対象ブロックを動き補償する際の動きベクトルを得る
ことを特徴とする動画像符号化方法。 - 前記符号化ステップでは、
前記符号化対象ブロックを、前記2方向参照によるピクチャ間予測符号化または前記ダイレクトモードにより符号化を行う場合、前記第1参照ピクチャに基づく第1動きベクトルのみを記憶する
ことを特徴とする請求項6〜請求項11のいずれか1項に記載の動画像符号化方法。 - 前記第1参照ピクチャは、参照ピクチャを特定するための第1相対インデックスにより特定され、前記第2参照ピクチャは、参照ピクチャを特定するための第2相対インデックスにより特定される
ことを特徴とする請求項1〜請求項12のいずれか1項に記載の動画像符号化方法。 - 動画像を構成する各ピクチャに対応する画像データを符号化して生成された符号列を復号化する動画像復号化方法であって、
復号化の対象となる対象ピクチャを、既に復号化済みのピクチャを参照ピクチャとして用いてピクチャ間予測復号化を行う復号化ステップを含み、
前記復号化ステップでは、
既に復号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測復号化を行う際に、前記第1参照ピクチャおよび第2参照ピクチャとして、それぞれ表示時間順で最も近いピクチャを少なくとも含む符号列を復号化する
ことを特徴とする動画像復号化方法。 - 動画像を構成する各ピクチャに対応する画像データを符号化して生成された符号列を復号化する動画像復号化方法であって、
復号化の対象となる対象ピクチャを、既に復号化済みのピクチャを参照ピクチャとして用いてピクチャ間予測復号化を行う復号化ステップを含み、
前記復号化ステップでは、
復号化対象ピクチャが、既に復号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測復号化を行うブロックを有するピクチャであり、かつ、復号化対象ブロックを既に復号化済みであるブロックの有する動きベクトルに基づく、前記復号化対象ブロックの動きベクトルによって動き補償するダイレクトモードとして復号化する場合に、
前記復号化対象ブロックと同一位置にある前記第2参照ピクチャ内のブロックを復号化した際に用いた当該ブロックが参照する第1参照ピクチャに基づく第1動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングを行うことにより、前記復号化対象ブロックを動き補償する際の動きベクトルを得る
ことを特徴とする動画像復号化方法。 - 動画像を構成する各ピクチャに対応する画像データを符号化して生成された符号列を復号化する動画像復号化方法であって、
復号化の対象となる対象ピクチャを、既に復号化済みのピクチャを参照ピクチャとして用いてピクチャ間予測復号化を行う復号化ステップを含み、
前記復号化ステップでは、
復号化対象ピクチャが、既に復号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測復号化を行うブロックを有するピクチャであり、かつ、復号化対象ブロックを既に復号化済みであるブロックの有する動きベクトルに基づく、前記復号化対象ブロックの動きベクトルによって動き補償するダイレクトモードとして復号化する場合に、
前記復号化対象ブロックと同一位置にある前記第2参照ピクチャ内のブロックを復号化した際に用いた当該ブロックが参照する第2参照ピクチャに基づく第2動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングを行うことにより、前記復号化対象ブロックを動き補償する際の動きベクトルを得る
ことを特徴とする動画像復号化方法。 - 動画像を構成する各ピクチャに対応する画像データを符号化して生成された符号列を復号化する動画像復号化方法であって、
復号化の対象となる対象ピクチャを、既に復号化済みのピクチャを参照ピクチャとして用いてピクチャ間予測復号化を行う復号化ステップを含み、
前記復号化ステップでは、
復号化対象ピクチャが、既に復号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測復号化を行うブロックを有するピクチャであり、かつ、復号化対象ブロックを既に復号化済みであるブロックの有する動きベクトルに基づく、前記復号化対象ブロックの動きベクトルによって動き補償するダイレクトモードとして復号化する場合に、
前記復号化対象ブロックと同一位置にある前記第2参照ピクチャ内のブロックがダイレクトモードで復号化されているときには、前記第2参照ピクチャ内のブロックを復号化する際に実質的に用いた当該ブロックが参照する第1参照ピクチャに基づく第1動きベクトルに対して、参照ピクチャの表示順序を示す情報の差を用いてスケーリングを行うことにより、前記復号化対象ブロックを動き補償する際の動きベクトルを得る
ことを特徴とする動画像復号化方法。 - 動画像を構成する各ピクチャに対応する画像データを符号化して生成された符号列を復号化する動画像復号化方法であって、
復号化の対象となる対象ピクチャを、既に復号化済みのピクチャを参照ピクチャとして用いてピクチャ間予測復号化を行う復号化ステップを含み、
前記復号化ステップでは、
復号化対象ピクチャが、既に復号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測復号化を行うブロックを有するピクチャであり、かつ、復号化対象ブロックを既に復号化済みであるブロックの有する動きベクトルに基づく、前記復号化対象ブロックの動きベクトルによって動き補償するダイレクトモードとして復号化する場合に、
表示時間順で後方に位置する、既に復号化済みであるピクチャを第1参照ピクチャとして用いる1方向参照によるピクチャ間予測復号化を行うピクチャ内の、前記復号化対象ブロックと同一位置にあるブロックを復号化した際に用いた当該ブロックが参照する第1参照ピクチャに基づく第1動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングを行うことにより、前記復号化対象ブロックを動き補償する際の動きベクトルを得る
ことを特徴とする動画像復号化方法。 - 動画像を構成する各ピクチャに対応する画像データを符号化して生成された符号列を復号化する動画像復号化方法であって、
復号化の対象となる対象ピクチャを、既に復号化済みのピクチャを参照ピクチャとして用いてピクチャ間予測復号化を行う復号化ステップを含み、
前記復号化ステップでは、
復号化対象ピクチャが、既に復号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測復号化を行うブロックを有するピクチャであり、かつ、復号化対象ブロックを既に復号化済みであるブロックの有する動きベクトルに基づく、前記復号化対象ブロックの動きベクトルによって動き補償するダイレクトモードとして復号化する場合に、
既に復号化済みのブロックから得られる動きベクトルの中から、いずれの動きベクトルを選択するかを示す情報を前記符号列中から取得し、前記情報に基づいて得られる動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングを行うことにより、前記復号化対象ブロックを動き補償する際の動きベクトルを得る
ことを特徴とする動画像復号化方法。 - 動画像を構成する各ピクチャに対応する画像データを符号化して生成された符号列を復号化する動画像復号化方法であって、
復号化の対象となる対象ピクチャを、既に復号化済みのピクチャを参照ピクチャとして用いてピクチャ間予測復号化を行う復号化ステップを含み、
前記復号化ステップでは、
復号化対象ピクチャが、既に復号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測復号化を行うブロックを有するピクチャであり、かつ、復号化対象ブロックを既に復号化済みであるブロックの有する動きベクトルに基づく、前記復号化対象ブロックの動きベクトルによって動き補償するダイレクトモードとして復号化する場合に、
前記復号化対象ブロックと同一位置にある前記第2参照ピクチャ内のブロックが少なくとも第1参照ピクチャに基づく第1動きベクトルを用いて復号化されている場合は、前記第1動きベクトルに対して、前記同一位置にある前記第2参照ピクチャ内のブロックが第2参照ピクチャに基づく第2動きベクトルのみを用いて復号化されている場合は、前記第2動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングすることにより、前記復号化対象ブロックを動き補償する際の動きベクトルを得る
ことを特徴とする動画像復号化方法。 - 前記復号化ステップでは、
前記復号化対象ブロックを、前記2方向参照によるピクチャ間予測復号化または前記ダイレクトモードにより復号化を行う場合、前記第1参照ピクチャに基づく第1動きベクトルのみを記憶する
ことを特徴とする請求項15〜請求項20のいずれか1項に記載の動画像復号化方法。 - 前記第1参照ピクチャは、参照ピクチャを特定するための第1相対インデックスにより特定され、前記第2参照ピクチャは、参照ピクチャを特定するための第2相対インデックスにより特定される
ことを特徴とする請求項14〜請求項21のいずれか1項に記載の動画像復号化方法。 - 動画像を構成する各ピクチャに対応する画像データを符号化して符号列を生成する動画像符号化装置であって、
符号化の対象となる対象ピクチャを、ピクチャ内符号化を行うブロックのみを有するIピクチャ、既に符号化済みであるピクチャを第1参照ピクチャとして用いる1方向参照によるピクチャ間予測符号化を行うブロックを有するPピクチャ、既に符号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測符号化を行うブロックを有するBピクチャのいずれかとして符号化を行う符号化手段を備え、
前記符号化手段は、
前記IピクチャまたはPピクチャ間に挟まれる複数の連続した前記Bピクチャの符号化順序を、表示時間順とは異なる順序に決定する制御部
を備えることを特徴とする動画像符号化装置。 - 動画像を構成する各ピクチャに対応する画像データを符号化して符号列を生成する動画像符号化装置であって、
符号化の対象となる対象ピクチャを、少なくとも、既に符号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測符号化を行うブロックを有するBピクチャとして符号化を行う符号化手段を備え、
前記符号化手段は、
符号化対象であるBピクチャの符号化対象ブロックを、既に符号化済みであるブロックの有する動きベクトルに基づく、前記符号化対象ブロックの動きベクトルによって動き補償するダイレクトモードとして符号化する場合に、
前記符号化対象ブロックと同一位置にある前記第2参照ピクチャ内のブロックを符号化した際に用いた当該ブロックが参照する第1参照ピクチャに基づく第1動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングすることにより、前記符号化対象ブロックを動き補償する際の動きベクトルを得る
ことを特徴とする動画像符号化装置。 - 動画像を構成する各ピクチャに対応する画像データを符号化して符号列を生成する動画像符号化装置であって、
符号化の対象となる対象ピクチャを、少なくとも、既に符号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測符号化を行うブロックを有するBピクチャとして符号化を行う符号化手段を備え、
前記符号化手段は、
符号化対象であるBピクチャの符号化対象ブロックを、既に符号化済みであるブロックの有する動きベクトルに基づく、前記符号化対象ブロックの動きベクトルによって動き補償するダイレクトモードとして符号化する場合に、
前記符号化対象ブロックと同一位置にある前記第2参照ピクチャ内のブロックを符号化した際に用いた当該ブロックが参照する第2参照ピクチャに基づく第2動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングすることにより、前記符号化対象ブロックを動き補償する際の動きベクトルを得る
ことを特徴とする動画像符号化装置。 - 動画像を構成する各ピクチャに対応する画像データを符号化して符号列を生成する動画像符号化装置であって、
符号化の対象となる対象ピクチャを、少なくとも、既に符号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測符号化を行うブロックを有するBピクチャとして符号化を行う符号化手段を備え、
前記符号化手段は、
符号化対象であるBピクチャの符号化対象ブロックを、既に符号化済みであるブロックの有する動きベクトルに基づく、前記符号化対象ブロックの動きベクトルによって動き補償するダイレクトモードとして符号化する場合に、
前記符号化対象ブロックと同一位置にある前記第2参照ピクチャ内のブロックがダイレクトモードで符号化されているときには、前記第2参照ピクチャ内のブロックを符号化する際に実質的に用いた当該ブロックが参照する第1参照ピクチャに基づく第1動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングを行うことにより、前記符号化対象ブロックを動き補償する際の動きベクトルを得る
ことを特徴とする動画像符号化装置。 - 動画像を構成する各ピクチャに対応する画像データを符号化して符号列を生成する動画像符号化装置であって、
符号化の対象となる対象ピクチャを、少なくとも、既に符号化済みであるピクチャを第1参照ピクチャとして用いる1参照によるピクチャ間予測符号化を行うブロックを有するPピクチャ、または既に符号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測符号化を行うブロックを有するBピクチャとして符号化を行う符号化手段を備え、
前記符号化手段は、
符号化対象であるBピクチャの符号化対象ブロックを、既に符号化済みであるブロックの有する動きベクトルに基づく、前記符号化対象ブロックの動きベクトルによって動き補償するダイレクトモードとして符号化する場合に、
前記符号化対象ブロックと同一位置にある後方Pピクチャ内のブロックを符号化した際に用いた当該ブロックが参照する第1参照ピクチャに基づく第1動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングを行うことにより、前記符号化対象ブロックを動き補償する際の動きベクトルを得る
ことを特徴とする動画像符号化装置。 - 動画像を構成する各ピクチャに対応する画像データを符号化して符号列を生成する動画像符号化装置であって、
符号化の対象となる対象ピクチャを、少なくとも、既に符号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測符号化を行うブロックを有するBピクチャとして符号化を行う符号化手段を備え、
前記符号化手段は、
符号化対象であるBピクチャの符号化対象ブロックを、既に符号化済みであるブロックの有する動きベクトルに基づく、前記符号化対象ブロックの動きベクトルによって動き補償するダイレクトモードとして符号化する場合に、
既に符号化済みのブロックから得られる動きベクトルの中から選択した動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングを行うことにより得られる動きベクトルを用いて動き補償を行い、前記選択した動きベクトルを示す情報を前記符号列中に付加する
ことを特徴とする動画像符号化装置。 - 動画像を構成する各ピクチャに対応する画像データを符号化して生成された符号列を復号化する動画像復号化装置であって、
復号化の対象となる対象ピクチャを、既に復号化済みのピクチャを参照ピクチャとして用いてピクチャ間予測復号化を行う復号化手段を備え、
前記復号化手段は、
既に復号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測復号化を行う際に、前記第1参照ピクチャおよび第2参照ピクチャとして、それぞれ表示時間順で最も近いピクチャを少なくとも含む符号列を復号化する
ことを特徴とする動画像復号化装置。 - 動画像を構成する各ピクチャに対応する画像データを符号化して生成された符号列を復号化する動画像復号化装置であって、
復号化の対象となる対象ピクチャを、既に復号化済みのピクチャを参照ピクチャとして用いてピクチャ間予測復号化を行う復号化手段を備え、
前記復号化手段は、
復号化対象ピクチャが、既に復号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測復号化を行うブロックを有するピクチャであり、かつ、復号化対象ブロックを既に復号化済みであるブロックの有する動きベクトルに基づく、前記復号化対象ブロックの動きベクトルによって動き補償するダイレクトモードとして復号化する場合に、
前記復号化対象ブロックと同一位置にある、前記第2参照ピクチャ内のブロックを復号化した際に用いた当該ブロックが参照する第1参照ピクチャに基づく第1動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングを行うことにより、前記復号化対象ブロックを動き補償する際の動きベクトルを得る
ことを特徴とする動画像復号化装置。 - 動画像を構成する各ピクチャに対応する画像データを符号化して生成された符号列を復号化する動画像復号化装置であって、
復号化の対象となる対象ピクチャを、既に復号化済みのピクチャを参照ピクチャとして用いてピクチャ間予測復号化を行う復号化手段を備え、
前記復号化手段は、
復号化対象ピクチャが、既に復号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測復号化を行うブロックを有するピクチャであり、かつ、復号化対象ブロックを既に復号化済みであるブロックの有する動きベクトルに基づく、前記復号化対象ブロックの動きベクトルによって動き補償するダイレクトモードとして復号化する場合に、
前記復号化対象ブロックと同一位置にある前記第2参照ピクチャ内のブロックを復号化した際に用いた当該ブロックが参照する第2参照ピクチャに基づく第2動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングを行うことにより、前記復号化対象ブロックを動き補償する際の動きベクトルを得る
ことを特徴とする動画像復号化装置。 - 動画像を構成する各ピクチャに対応する画像データを符号化して生成された符号列を復号化する動画像復号化装置であって、
復号化の対象となる対象ピクチャを、既に復号化済みのピクチャを参照ピクチャとして用いてピクチャ間予測復号化を行う復号化手段を備え、
前記復号化手段は、
復号化対象ピクチャが、既に復号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測復号化を行うブロックを有するピクチャであり、かつ、復号化対象ブロックを既に復号化済みであるブロックの有する動きベクトルに基づく、前記復号化対象ブロックの動きベクトルによって動き補償するダイレクトモードとして復号化する場合に、
前記復号化対象ブロックと同一位置にある前記第2参照ピクチャ内のブロックがダイレクトモードで復号化されているときには、前記第2参照ピクチャ内のブロックを復号化する際に実質的に用いた当該ブロックが参照する第1参照ピクチャに基づく第1動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングを行うことにより、前記復号化対象ブロックを動き補償する際の動きベクトルを得る
ことを特徴とする動画像復号化装置。 - 動画像を構成する各ピクチャに対応する画像データを符号化して生成された符号列を復号化する動画像復号化装置であって、
復号化の対象となる対象ピクチャを、既に復号化済みのピクチャを参照ピクチャとして用いてピクチャ間予測復号化を行う復号化手段を備え、
前記復号化手段は、
復号化対象ピクチャが、既に復号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測復号化を行うブロックを有するピクチャであり、かつ、復号化対象ブロックを既に復号化済みであるブロックの有する動きベクトルに基づく、前記復号化対象ブロックの動きベクトルによってを予測して動き補償するダイレクトモードとして復号化する場合に、
表示時間順で後方に位置する、既に復号化済みであるピクチャを第1参照ピクチャとして用いる1方向参照によるピクチャ間予測復号化を行うピクチャ内の、前記復号化対象ブロックと同一位置にあるブロックを復号化した際に用いた当該ブロックが参照する第1参照ピクチャに基づく第1動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングを行うことにより、前記復号化対象ブロックを動き補償する際の動きベクトルを得る
ことを特徴とする動画像復号化装置。 - 動画像を構成する各ピクチャに対応する画像データを符号化して生成された符号列を復号化する動画像復号化装置であって、
復号化の対象となる対象ピクチャを、既に復号化済みのピクチャを参照ピクチャとして用いてピクチャ間予測復号化を行う復号化手段を備え、
前記復号化手段は、
復号化対象ピクチャが、既に復号化済みであるピクチャを第1参照ピクチャおよび第2参照ピクチャとして用いる2方向参照によるピクチャ間予測復号化を行うブロックを有するピクチャであり、かつ、復号化対象ブロックを既に復号化済みであるブロックの有する動きベクトルに基づく、前記復号化対象ブロックの動きベクトルによって動き補償するダイレクトモードとして復号化する場合に、
既に復号化済みのブロックから得られる動きベクトルの中から、いずれの動きベクトルを選択するかを示す情報を前記符号列中から取得し、前記情報に基づいて得られる動きベクトルに対して、ピクチャの表示順序を示す情報の差を用いてスケーリングを行うことにより、前記復号化対象ブロックを動き補償する際の動きベクトルを得る
ことを特徴とする動画像復号化装置。 - 動画像を構成する各ピクチャに対応する画像データを符号化して生成された符号列を格納した記録媒体であって、
前記符号列は、請求項1から請求項13のいずれか1項に記載の動画像符号化方法により符号化された符号列であることを特徴とする記録媒体。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2003047936A JP2004088722A (ja) | 2002-03-04 | 2003-02-25 | 動画像符号化方法および動画像復号化方法 |
Applications Claiming Priority (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002056919 | 2002-03-04 | ||
| JP2002118598 | 2002-04-19 | ||
| JP2002193027 | 2002-07-02 | ||
| JP2003047936A JP2004088722A (ja) | 2002-03-04 | 2003-02-25 | 動画像符号化方法および動画像復号化方法 |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2006045668A Division JP2006187039A (ja) | 2002-03-04 | 2006-02-22 | 動画像符号化方法および動画像復号化方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2004088722A true JP2004088722A (ja) | 2004-03-18 |
| JP2004088722A5 JP2004088722A5 (ja) | 2006-04-13 |
Family
ID=27792038
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2003047936A Withdrawn JP2004088722A (ja) | 2002-03-04 | 2003-02-25 | 動画像符号化方法および動画像復号化方法 |
Country Status (18)
| Country | Link |
|---|---|
| US (5) | US7664180B2 (ja) |
| EP (9) | EP3051814B1 (ja) |
| JP (1) | JP2004088722A (ja) |
| KR (2) | KR100948714B1 (ja) |
| CN (1) | CN100474933C (ja) |
| AU (1) | AU2003211717C1 (ja) |
| BR (2) | BRPI0303342B1 (ja) |
| CA (3) | CA2443848C (ja) |
| CY (3) | CY1115427T1 (ja) |
| DK (6) | DK3054679T3 (ja) |
| ES (9) | ES2489490T3 (ja) |
| HU (6) | HUE042956T2 (ja) |
| MX (1) | MXPA03007628A (ja) |
| MY (1) | MY139955A (ja) |
| PT (6) | PT3054679T (ja) |
| SI (3) | SI2271107T1 (ja) |
| TW (2) | TWI324889B (ja) |
| WO (1) | WO2003075580A1 (ja) |
Cited By (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2003319403A (ja) * | 2002-04-09 | 2003-11-07 | Lg Electronics Inc | 改善されたダイレクトモードのブロック予測方法 |
| WO2006014057A1 (en) * | 2004-08-03 | 2006-02-09 | Daeyang Foundation | Method, medium, and apparatus predicting direct mode motion of a multi-angle moving picture |
| JP2007116355A (ja) * | 2005-10-19 | 2007-05-10 | Canon Inc | 画像処理装置及びその方法 |
| WO2007132647A1 (ja) * | 2006-05-12 | 2007-11-22 | Panasonic Corporation | 動画像復号化装置 |
| JP2008509617A (ja) * | 2004-08-10 | 2008-03-27 | テールズ | ビデオシーケンスのフレームを形成する方法 |
| JP2010219983A (ja) * | 2009-03-18 | 2010-09-30 | Sony Corp | 画像処理装置および方法 |
| JPWO2012042719A1 (ja) * | 2010-09-30 | 2014-02-03 | 三菱電機株式会社 | 動画像復号装置及び動画像復号方法 |
| WO2014174591A1 (ja) * | 2013-04-23 | 2014-10-30 | 富士通株式会社 | 画像符号化装置、画像符号化方法、及び撮像装置 |
Families Citing this family (54)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TR201802383T4 (tr) * | 2001-11-06 | 2018-03-21 | Panasonic Ip Corp America | Hareketli resim kodlama usulü ve hareketli resim kod çözme usulü. |
| WO2003090473A1 (fr) | 2002-04-19 | 2003-10-30 | Matsushita Electric Industrial Co., Ltd. | Procede de calcul de vecteurs de mouvement |
| KR100506864B1 (ko) * | 2002-10-04 | 2005-08-05 | 엘지전자 주식회사 | 모션벡터 결정방법 |
| KR100693669B1 (ko) * | 2003-03-03 | 2007-03-09 | 엘지전자 주식회사 | 피일드 매크로 블록의 레퍼런스 픽쳐 결정 방법 |
| US20060013305A1 (en) * | 2004-07-14 | 2006-01-19 | Sharp Laboratories Of America, Inc. | Temporal scalable coding using AVC coding tools |
| WO2006057182A1 (ja) * | 2004-11-26 | 2006-06-01 | Matsushita Electric Industrial Co., Ltd. | 復号化回路、復号化装置、及び復号化システム |
| WO2006112139A1 (ja) * | 2005-04-13 | 2006-10-26 | Sharp Kabushiki Kaisha | 動画像再生装置 |
| JP4712643B2 (ja) * | 2006-08-17 | 2011-06-29 | 富士通セミコンダクター株式会社 | フレーム間予測処理装置、フレーム間予測方法、画像符号化装置及び画像復号装置 |
| JP2008177907A (ja) * | 2007-01-19 | 2008-07-31 | Fujitsu Ltd | 動画データ復号装置、情報機器、動画データ復号方法および動画データ復号プログラム |
| JP5100311B2 (ja) * | 2007-10-29 | 2012-12-19 | キヤノン株式会社 | 動画像データ送信方法、通信装置、及びプログラム |
| US9001893B2 (en) * | 2009-05-13 | 2015-04-07 | Panasonic Intellectual Property Management Co., Ltd. | Image decoding apparatus, integrated circuit, image decoding method, and image decoding system |
| KR20110068792A (ko) | 2009-12-16 | 2011-06-22 | 한국전자통신연구원 | 적응적 영상 부호화 장치 및 방법 |
| US9036692B2 (en) * | 2010-01-18 | 2015-05-19 | Mediatek Inc. | Motion prediction method |
| EP3913923A1 (en) | 2010-01-19 | 2021-11-24 | Samsung Electronics Co., Ltd. | Method and apparatus for encoding/decoding images using a motion vector of a previous block as a motion vector for the current block |
| CN105025300B (zh) * | 2010-01-19 | 2018-05-04 | 三星电子株式会社 | 对图像进行编码/解码的方法和设备 |
| KR20120009861A (ko) * | 2010-07-22 | 2012-02-02 | 에스케이 텔레콤주식회사 | 확장된 스킵모드를 이용한 영상 부호화/복호화 방법 및 장치 |
| EP2645716A4 (en) | 2010-11-24 | 2016-04-13 | Panasonic Ip Corp America | METHOD FOR CALCULATING MOTION VECTORS, PICTURE CODING METHOD, PICTOR DECODING METHOD, DEVICE FOR CALCULATING MOTION VECTORS AND PICTURE CODING / DECODING DEVICE |
| CN106878742B (zh) * | 2011-01-12 | 2020-01-07 | 太阳专利托管公司 | 动态图像编解码装置 |
| JP5893570B2 (ja) | 2011-01-28 | 2016-03-23 | パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America | 画像符号化方法および画像復号化方法 |
| WO2012114694A1 (ja) * | 2011-02-22 | 2012-08-30 | パナソニック株式会社 | 動画像符号化方法、動画像符号化装置、動画像復号方法、および、動画像復号装置 |
| WO2012117728A1 (ja) | 2011-03-03 | 2012-09-07 | パナソニック株式会社 | 動画像符号化方法、動画像復号方法、動画像符号化装置、動画像復号装置、及び動画像符号化復号装置 |
| ES2685945T3 (es) | 2011-04-12 | 2018-10-15 | Sun Patent Trust | Procedimiento de codificación de video de movimiento, y aparato de codificación de video de movimiento |
| EP3751854B1 (en) | 2011-05-24 | 2023-05-10 | Sun Patent Trust | Image encoding method, image encoding apparatus, image decoding method, image decoding apparatus |
| JP5865366B2 (ja) | 2011-05-27 | 2016-02-17 | パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America | 画像符号化方法、画像符号化装置、画像復号方法、画像復号装置、および、画像符号化復号装置 |
| US9485518B2 (en) | 2011-05-27 | 2016-11-01 | Sun Patent Trust | Decoding method and apparatus with candidate motion vectors |
| SG194746A1 (en) | 2011-05-31 | 2013-12-30 | Kaba Gmbh | Image encoding method, image encoding device, image decoding method, image decoding device, and image encoding/decoding device |
| EP4270953A3 (en) | 2011-05-31 | 2023-11-22 | Sun Patent Trust | Video decoding method, video decoding device |
| JP5786478B2 (ja) * | 2011-06-15 | 2015-09-30 | 富士通株式会社 | 動画像復号装置、動画像復号方法、及び動画像復号プログラム |
| JP5807402B2 (ja) * | 2011-06-15 | 2015-11-10 | 富士通株式会社 | 動画像復号装置、動画像符号化装置、動画像復号方法、動画像符号化方法、動画像復号プログラム及び動画像符号化プログラム |
| USRE47366E1 (en) | 2011-06-23 | 2019-04-23 | Sun Patent Trust | Image decoding method and apparatus based on a signal type of the control parameter of the current block |
| PL4228264T3 (pl) | 2011-06-23 | 2024-12-02 | Sun Patent Trust | Urządzenie do dekodowania obrazów, urządzenie do kodowania obrazów |
| TWI581615B (zh) | 2011-06-24 | 2017-05-01 | Sun Patent Trust | A decoding method, a coding method, a decoding device, an encoding device, and a coding / decoding device |
| CA2833855C (en) | 2011-06-24 | 2018-08-28 | Panasonic Corporation | Image decoding method, image coding method, image decoding apparatus, image coding apparatus, and image coding and decoding apparatus |
| BR112013030347B1 (pt) | 2011-06-27 | 2022-06-28 | Sun Patent Trust | Método de decodificação de imagem, método de codificação de imagem, aparelho de decodificação de imagem, aparelho de codificação de imagem e aparelho de codificação e de decodificação de imagem |
| MX368350B (es) | 2011-06-28 | 2019-09-30 | Samsung Electronics Co Ltd | Metodo y aparato para codificar y decodificar imagenes utilizando intra-prediccion. |
| CA2837535C (en) | 2011-06-28 | 2018-09-04 | Panasonic Corporation | Image decoding method, image coding method, image decoding apparatus, image coding apparatus, and image coding and decoding apparatus |
| WO2013001767A1 (ja) | 2011-06-29 | 2013-01-03 | パナソニック株式会社 | 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置及び画像符号化復号装置 |
| JP6112418B2 (ja) * | 2011-06-29 | 2017-04-12 | サン パテント トラスト | 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置および画像符号化復号装置 |
| CN102256124B (zh) * | 2011-06-30 | 2013-05-15 | 杭州海康威视数字技术股份有限公司 | 一种图像分层编码方法和装置 |
| RU2597473C2 (ru) | 2011-06-30 | 2016-09-10 | Сан Пэтент Траст | Способ декодирования, способ кодирования, устройство декодирования, устройство кодирования, и устройство кодирования и декодирования |
| KR102060619B1 (ko) | 2011-06-30 | 2019-12-30 | 선 페이턴트 트러스트 | 화상 복호 방법, 화상 부호화 방법, 화상 복호 장치, 화상 부호화 장치 및 화상 부호화 복호 장치 |
| CN106851269B (zh) | 2011-06-30 | 2019-11-15 | 太阳专利托管公司 | 图像解码方法及装置、图像编码方法及装置、编解码装置 |
| RU2604680C2 (ru) | 2011-07-11 | 2016-12-10 | Сан Пэтент Траст | Способ декодирования изображений, способ кодирования изображений, устройство декодирования изображений, устройство кодирования изображений и устройство кодирования и декодирования изображений |
| WO2013009104A2 (ko) | 2011-07-12 | 2013-01-17 | 한국전자통신연구원 | 인터 예측 방법 및 그 장치 |
| CN103718558B (zh) | 2011-08-03 | 2017-04-19 | 太阳专利托管公司 | 运动图像编码方法及装置、解码方法及装置和编解码装置 |
| BR112014008403B1 (pt) | 2011-10-19 | 2022-05-10 | Sun Patent Trust | Método de codificação de imagem, aparelho de codificação de imagem, método de decodificação de imagem, e aparelho de decodificação de imagem |
| US20130177084A1 (en) * | 2012-01-10 | 2013-07-11 | Qualcomm Incorporated | Motion vector scaling in video coding |
| US10390041B2 (en) * | 2012-03-30 | 2019-08-20 | Sun Patent Trust | Predictive image coding and decoding using two reference pictures |
| US9819965B2 (en) | 2012-11-13 | 2017-11-14 | Intel Corporation | Content adaptive transform coding for next generation video |
| US9442904B2 (en) * | 2012-12-21 | 2016-09-13 | Vmware, Inc. | Systems and methods for applying a residual error image |
| KR20150058324A (ko) | 2013-01-30 | 2015-05-28 | 인텔 코포레이션 | 차세대 비디오용 콘텐츠 적응적 엔트로피 코딩 |
| KR101789954B1 (ko) * | 2013-12-27 | 2017-10-25 | 인텔 코포레이션 | 차세대 비디오 코딩을 위한 콘텐츠 적응적 이득 보상된 예측 |
| US20180288420A1 (en) * | 2017-03-30 | 2018-10-04 | Qualcomm Incorporated | Zero block detection using adaptive rate model |
| EP4409882A4 (en) * | 2021-09-29 | 2025-08-20 | Alibaba Damo Hangzhou Tech Co Ltd | ENHANCED TEMPORAL MERGE CANDIDATES IN MERGE CANDIDATE LISTS IN VIDEO CODING |
Family Cites Families (39)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0420088A (ja) | 1990-05-14 | 1992-01-23 | Victor Co Of Japan Ltd | フレーム間符号化装置 |
| JP3031638B2 (ja) | 1991-01-30 | 2000-04-10 | 富士通株式会社 | 蓄積用動画像符号化方式における補間フレームのベクトル探索方法 |
| JPH05137131A (ja) * | 1991-11-13 | 1993-06-01 | Sony Corp | フレーム間動き予測方法 |
| JPH0662391A (ja) * | 1992-08-10 | 1994-03-04 | Nippon Telegr & Teleph Corp <Ntt> | 動画像予測符号化方法 |
| US5329365A (en) * | 1993-07-07 | 1994-07-12 | Rca Thomson Licensing Corporation | Method and apparatus for providing compressed non-interlaced scanned video signal |
| JP3513277B2 (ja) | 1995-08-29 | 2004-03-31 | シャープ株式会社 | 映像符号化装置及び映像復号化装置 |
| US5724446A (en) * | 1995-04-18 | 1998-03-03 | Advanced Micro Devices, Inc. | Video decoder apparatus using non-reference frame as an additional prediction source and method therefor |
| US5809173A (en) * | 1995-04-18 | 1998-09-15 | Advanced Micro Devices, Inc. | Method and apparatus for improved video decompression using previous frame DCT coefficients |
| EP1274252A3 (en) * | 1995-08-29 | 2005-10-05 | Sharp Kabushiki Kaisha | Video coding device and video decoding device with a motion compensated interframe prediction |
| JP2001224036A (ja) | 1995-10-18 | 2001-08-17 | Sharp Corp | 動画像符号化装置 |
| JP3344577B2 (ja) | 1996-09-09 | 2002-11-11 | ソニー株式会社 | 画像符号化装置および画像符号化方法、画像復号化装置および画像復号化方法、並びに記録方法 |
| JP3263807B2 (ja) * | 1996-09-09 | 2002-03-11 | ソニー株式会社 | 画像符号化装置および画像符号化方法 |
| JPH10126787A (ja) | 1996-10-14 | 1998-05-15 | Nec Eng Ltd | Pピクチャの予測ベクトルをオフセットベクトルとした双方向予測ベクトル検出回路 |
| US5991447A (en) * | 1997-03-07 | 1999-11-23 | General Instrument Corporation | Prediction and coding of bi-directionally predicted video object planes for interlaced digital video |
| JP3776735B2 (ja) | 1997-04-09 | 2006-05-17 | 松下電器産業株式会社 | 画像予測復号化方法,画像予測復号化装置,画像予測符号化方法,画像予測符号化装置,及びデータ記憶媒体 |
| SG65064A1 (en) * | 1997-04-09 | 1999-05-25 | Matsushita Electric Industrial Co Ltd | Image predictive decoding method image predictive decoding apparatus image predictive coding method image predictive coding apparatus and data storage media |
| EP1819173B1 (en) | 1997-06-25 | 2009-07-29 | Nippon Telegraph and Telephone Corporation | Motion vector predictive encoding apparatus and decoding apparatus |
| JPH1169356A (ja) | 1997-08-25 | 1999-03-09 | Mitsubishi Electric Corp | 動画像符号化方式及び動画像復号方式 |
| US6807231B1 (en) * | 1997-09-12 | 2004-10-19 | 8×8, Inc. | Multi-hypothesis motion-compensated video image predictor |
| US6249318B1 (en) * | 1997-09-12 | 2001-06-19 | 8×8, Inc. | Video coding/decoding arrangement and method therefor |
| US6396874B1 (en) * | 1997-11-12 | 2002-05-28 | Sony Corporation | Decoding method and apparatus and recording method and apparatus for moving picture data |
| JP3523481B2 (ja) | 1998-02-23 | 2004-04-26 | シャープ株式会社 | 映像符号化装置及び映像復号化装置並びに映像符号化方法及び映像復号化方法 |
| JP3329768B2 (ja) | 1999-07-05 | 2002-09-30 | 日本電信電話株式会社 | 画像符号化データの再符号化方法およびそのプログラム記録媒体 |
| JP2001045475A (ja) | 1999-07-27 | 2001-02-16 | Matsushita Electric Ind Co Ltd | 映像信号階層化符号化装置と映像信号階層化復号化装置及びプログラム記録媒体 |
| JP3757088B2 (ja) * | 1999-10-26 | 2006-03-22 | 日本電気株式会社 | 動画像符号化装置および方法 |
| GB2362532B (en) | 2000-05-15 | 2004-05-05 | Nokia Mobile Phones Ltd | Video coding |
| US7027711B2 (en) * | 2000-06-26 | 2006-04-11 | Matsushita Electric Industrial Co., Ltd. | Editing apparatus for an optical disk, computer-readable storage medium, and computer program |
| JP4245790B2 (ja) | 2000-08-29 | 2009-04-02 | オリンパス株式会社 | 超音波処置具 |
| AUPR208000A0 (en) * | 2000-12-15 | 2001-01-11 | 80-20 Software Pty Limited | Method of document searching |
| WO2003003248A1 (en) * | 2001-06-26 | 2003-01-09 | Sealedmedia Limited | Search engine and digital rights management |
| US20030130993A1 (en) * | 2001-08-08 | 2003-07-10 | Quiver, Inc. | Document categorization engine |
| AU2002340138A1 (en) * | 2001-10-09 | 2003-04-22 | Joanna Sandorffy | System and method for conducting a financial transaction using a communication device |
| US6738980B2 (en) * | 2001-11-15 | 2004-05-18 | Industrial Technology Research Institute | Methods and systems for video streaming with VCR functionality |
| US6980596B2 (en) * | 2001-11-27 | 2005-12-27 | General Instrument Corporation | Macroblock level adaptive frame/field coding for digital video content |
| CA2468086C (en) * | 2001-11-21 | 2013-08-20 | General Instrument Corporation | Picture level adaptive frame/field coding for digital video content |
| PT1449385E (pt) * | 2001-11-21 | 2015-10-15 | Google Technology Holdings LLC | Codificação adaptativa de quadro/campo ao nível dos macroblocos para o conteúdo de vídeo digital |
| US7003035B2 (en) * | 2002-01-25 | 2006-02-21 | Microsoft Corporation | Video coding methods and apparatuses |
| KR100506864B1 (ko) * | 2002-10-04 | 2005-08-05 | 엘지전자 주식회사 | 모션벡터 결정방법 |
| JP5137131B2 (ja) | 2008-08-08 | 2013-02-06 | 東芝キヤリア株式会社 | 給湯装置 |
-
2003
- 2003-02-25 JP JP2003047936A patent/JP2004088722A/ja not_active Withdrawn
- 2003-02-26 CA CA2443848A patent/CA2443848C/en not_active Expired - Lifetime
- 2003-02-26 PT PT161563580T patent/PT3054679T/pt unknown
- 2003-02-26 DK DK16156358.0T patent/DK3054679T3/da active
- 2003-02-26 CA CA2762075A patent/CA2762075C/en not_active Expired - Lifetime
- 2003-02-26 ES ES03707082.8T patent/ES2489490T3/es not_active Expired - Lifetime
- 2003-02-26 HU HUE17177672A patent/HUE042956T2/hu unknown
- 2003-02-26 CA CA2762149A patent/CA2762149C/en not_active Expired - Lifetime
- 2003-02-26 HU HUE10182775A patent/HUE024411T2/en unknown
- 2003-02-26 EP EP16156344.0A patent/EP3051814B1/en not_active Expired - Lifetime
- 2003-02-26 EP EP17177671.9A patent/EP3253056B1/en not_active Expired - Lifetime
- 2003-02-26 ES ES16156358.0T patent/ES2644048T3/es not_active Expired - Lifetime
- 2003-02-26 AU AU2003211717A patent/AU2003211717C1/en not_active Expired
- 2003-02-26 DK DK16156344.0T patent/DK3051814T3/da active
- 2003-02-26 HU HUE03707082A patent/HUE024412T2/en unknown
- 2003-02-26 ES ES17177672T patent/ES2723725T3/es not_active Expired - Lifetime
- 2003-02-26 ES ES17177671T patent/ES2719216T3/es not_active Expired - Lifetime
- 2003-02-26 PT PT101827830T patent/PT2271108T/pt unknown
- 2003-02-26 ES ES18211538T patent/ES2829621T3/es not_active Expired - Lifetime
- 2003-02-26 KR KR1020077027477A patent/KR100948714B1/ko not_active Expired - Lifetime
- 2003-02-26 HU HUE17177671A patent/HUE044024T2/hu unknown
- 2003-02-26 PT PT3707082T patent/PT1406450E/pt unknown
- 2003-02-26 PT PT101827756T patent/PT2271107E/pt unknown
- 2003-02-26 HU HUE18211538A patent/HUE052192T2/hu unknown
- 2003-02-26 SI SI200332377T patent/SI2271107T1/sl unknown
- 2003-02-26 SI SI200332550T patent/SI3051814T1/sl unknown
- 2003-02-26 EP EP10182789.7A patent/EP2271109B1/en not_active Expired - Lifetime
- 2003-02-26 ES ES16156344.0T patent/ES2644448T3/es not_active Expired - Lifetime
- 2003-02-26 SI SI200332370T patent/SI1406450T1/sl unknown
- 2003-02-26 EP EP18211538.6A patent/EP3490254B1/en not_active Expired - Lifetime
- 2003-02-26 EP EP10182775.6A patent/EP2271107B1/en not_active Expired - Lifetime
- 2003-02-26 US US10/468,119 patent/US7664180B2/en not_active Expired - Lifetime
- 2003-02-26 PT PT161563440T patent/PT3051814T/pt unknown
- 2003-02-26 WO PCT/JP2003/002099 patent/WO2003075580A1/ja not_active Ceased
- 2003-02-26 PT PT101827897T patent/PT2271109E/pt unknown
- 2003-02-26 DK DK10182789.7T patent/DK2271109T3/da active
- 2003-02-26 BR BRPI0303342-2A patent/BRPI0303342B1/pt unknown
- 2003-02-26 DK DK10182775.6T patent/DK2271107T3/da active
- 2003-02-26 DK DK03707082.8T patent/DK1406450T3/da active
- 2003-02-26 HU HUE16156344A patent/HUE036491T2/hu unknown
- 2003-02-26 EP EP10182783.0A patent/EP2271108B1/en not_active Expired - Lifetime
- 2003-02-26 KR KR1020037011082A patent/KR100923380B1/ko not_active Expired - Lifetime
- 2003-02-26 CN CNB038053462A patent/CN100474933C/zh not_active Expired - Lifetime
- 2003-02-26 ES ES10182775.6T patent/ES2491094T3/es not_active Expired - Lifetime
- 2003-02-26 EP EP17177672.7A patent/EP3253057B1/en not_active Expired - Lifetime
- 2003-02-26 MX MXPA03007628A patent/MXPA03007628A/es active IP Right Grant
- 2003-02-26 EP EP16156358.0A patent/EP3054679B1/en not_active Expired - Lifetime
- 2003-02-26 DK DK10182783.0T patent/DK2271108T3/en active
- 2003-02-26 ES ES10182789.7T patent/ES2491095T3/es not_active Expired - Lifetime
- 2003-02-26 ES ES10182783.0T patent/ES2588179T3/es not_active Expired - Lifetime
- 2003-02-26 EP EP03707082.8A patent/EP1406450B1/en not_active Expired - Lifetime
- 2003-02-26 BR BR0303342-2A patent/BR0303342A/pt active IP Right Grant
- 2003-03-03 MY MYPI20030752A patent/MY139955A/en unknown
- 2003-03-03 TW TW095107763A patent/TWI324889B/zh not_active IP Right Cessation
- 2003-03-03 TW TW092104416A patent/TWI325281B/zh not_active IP Right Cessation
-
2007
- 2007-10-31 US US11/980,534 patent/US7742526B2/en not_active Expired - Lifetime
- 2007-10-31 US US11/980,557 patent/US7801219B2/en not_active Expired - Lifetime
- 2007-10-31 US US11/980,556 patent/US7856060B2/en not_active Expired - Lifetime
- 2007-10-31 US US11/980,558 patent/US8718141B2/en not_active Expired - Lifetime
-
2014
- 2014-08-04 CY CY20141100591T patent/CY1115427T1/el unknown
- 2014-08-08 CY CY20141100626T patent/CY1115440T1/el unknown
-
2017
- 2017-10-25 CY CY20171101107T patent/CY1119479T1/el unknown
Cited By (22)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8553774B2 (en) | 2002-04-09 | 2013-10-08 | Lg Electronics Inc. | Method for predicting an image |
| USRE47358E1 (en) | 2002-04-09 | 2019-04-16 | Lg Electronics Inc. | Method for predicting a bi-predictive block of a moving picture |
| US8902983B2 (en) | 2002-04-09 | 2014-12-02 | Lg Electronics Inc. | Method for predicting a bi-predictive block of a moving picture |
| JP2003319403A (ja) * | 2002-04-09 | 2003-11-07 | Lg Electronics Inc | 改善されたダイレクトモードのブロック予測方法 |
| US8902984B2 (en) | 2002-04-09 | 2014-12-02 | Lg Electronics Inc. | Method for predicting a bi-predictive block of a moving picture |
| US8553775B2 (en) | 2002-04-09 | 2013-10-08 | Lg Electronics Inc. | Method for predicting a bi-predictive block of a moving picture |
| US8553773B2 (en) | 2002-04-09 | 2013-10-08 | Lg Electronics Inc. | Method for predicting an image |
| US8548053B2 (en) | 2002-04-09 | 2013-10-01 | Lg Electronics Inc. | Method for predicting a bi-predictive block of a moving picture |
| US8548054B2 (en) | 2002-04-09 | 2013-10-01 | Lg Electronics Inc. | Method for predicting an image |
| WO2006014057A1 (en) * | 2004-08-03 | 2006-02-09 | Daeyang Foundation | Method, medium, and apparatus predicting direct mode motion of a multi-angle moving picture |
| JP2008509592A (ja) * | 2004-08-03 | 2008-03-27 | デーヤン ファウンデーション | 多視点映像のダイレクトモードの動き予測方法及び装置 |
| US7876828B2 (en) | 2004-08-03 | 2011-01-25 | Sejong Industry-Academy Cooperation Foundation | Method, medium, and apparatus predicting direct mode motion of a multi-angle moving picture |
| JP2008509617A (ja) * | 2004-08-10 | 2008-03-27 | テールズ | ビデオシーケンスのフレームを形成する方法 |
| JP2007116355A (ja) * | 2005-10-19 | 2007-05-10 | Canon Inc | 画像処理装置及びその方法 |
| JP5155157B2 (ja) * | 2006-05-12 | 2013-02-27 | パナソニック株式会社 | 動画像復号化装置 |
| US8270492B2 (en) | 2006-05-12 | 2012-09-18 | Panasonic Corporation | Moving picture decoding device |
| WO2007132647A1 (ja) * | 2006-05-12 | 2007-11-22 | Panasonic Corporation | 動画像復号化装置 |
| US8699581B2 (en) | 2009-03-18 | 2014-04-15 | Sony Corporation | Image processing device, image processing method, information processing device, and information processing method |
| JP2010219983A (ja) * | 2009-03-18 | 2010-09-30 | Sony Corp | 画像処理装置および方法 |
| JPWO2012042719A1 (ja) * | 2010-09-30 | 2014-02-03 | 三菱電機株式会社 | 動画像復号装置及び動画像復号方法 |
| WO2014174591A1 (ja) * | 2013-04-23 | 2014-10-30 | 富士通株式会社 | 画像符号化装置、画像符号化方法、及び撮像装置 |
| JPWO2014174591A1 (ja) * | 2013-04-23 | 2017-02-23 | 富士通株式会社 | 画像符号化装置、画像符号化方法、及び撮像装置 |
Also Published As
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR100948714B1 (ko) | 동화상 부호화 방법 및 동화상 복호화 방법 | |
| JP4130783B2 (ja) | 動きベクトル符号化方法および動きベクトル復号化方法 | |
| CN1685732B (zh) | 画像编码方法及装置、画像解码方法及装置 | |
| JP2004096705A (ja) | 動きベクトル符号化方法および動きベクトル復号化方法 | |
| WO2003098939A1 (en) | Moving image encoding method, moving image decoding method, and data recording medium | |
| JP2004048711A (ja) | 動画像の符号化方法および復号化方法およびデータ記録媒体 | |
| JP3878591B2 (ja) | 動画像符号化方法および動画像復号化方法 | |
| CN101431679B (zh) | 图像编码方法及图像编码装置 | |
| JP2004048632A (ja) | 動画像符号化方法および動画像復号化方法 | |
| JP2006187039A (ja) | 動画像符号化方法および動画像復号化方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060222 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060222 |
|
| A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20070614 |