JPWO2010067624A1 - トランスコード装置、トランスコード方法及びデジタルレコーダー - Google Patents

トランスコード装置、トランスコード方法及びデジタルレコーダー Download PDF

Info

Publication number
JPWO2010067624A1
JPWO2010067624A1 JP2010542039A JP2010542039A JPWO2010067624A1 JP WO2010067624 A1 JPWO2010067624 A1 JP WO2010067624A1 JP 2010542039 A JP2010542039 A JP 2010542039A JP 2010542039 A JP2010542039 A JP 2010542039A JP WO2010067624 A1 JPWO2010067624 A1 JP WO2010067624A1
Authority
JP
Japan
Prior art keywords
unit
cost value
prediction
image data
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.)
Granted
Application number
JP2010542039A
Other languages
English (en)
Other versions
JP5205471B2 (ja
Inventor
千葉 琢麻
琢麻 千葉
津田 賢治郎
賢治郎 津田
重里 達郎
達郎 重里
裕樹 小林
裕樹 小林
増野 貴司
貴司 増野
賀津雄 西郷
賀津雄 西郷
征永 関
征永 関
島崎 浩昭
浩昭 島崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2010542039A priority Critical patent/JP5205471B2/ja
Publication of JPWO2010067624A1 publication Critical patent/JPWO2010067624A1/ja
Application granted granted Critical
Publication of JP5205471B2 publication Critical patent/JP5205471B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

少なくともイントラ予測が適用された符号化ストリームからイントラ予測及びインター予測が適用された符号化ストリームにトランスコードする際に、処理量を低減する。少なくとも一部にイントラ予測が適用された第1符号化ストリームを、イントラ予測及びインター予測が適用された第2符号化ストリームに変換するトランスコード装置(100)であって、第1符号化ストリームを復号することで、復号画像データを生成する復号部(200)と、復号する際に適用されたイントラ予測の予測モードを取得する予測モード取得部(101)と、イントラ予測又はインター予測を適用して復号画像データを符号化することで、第2符号化ストリームを生成する符号化部(300)と、符号化部(300)がイントラ予測を適用する場合、予測モード取得部(101)によって取得された予測モードを用いるように、符号化部(300)を制御する制御部(103)とを備える。

Description

本発明は、動画像に関する符号化データのトランスコードに関し、特に、H.264/AVC符号化方式に従って符号化された符号化データのトランスコードに関する。
H.264/AVC符号化方式の普及とともに、MPEG−2で符号化されているデジタル放送の番組をレコーダー等へ長時間記録する目的で、MPEG−2からH.264/AVCにトランスコードすることが行われるようになっている。
しかし、トランスコードする際は、MPEG−2で符号化された符号化ストリームを復号することで復号画像データを生成し、生成した復号画像データをH.264/AVC符号化形式に従って再符号化するという方式が行われている。この方式は、確実な方法ではあるが、復号と符号化との2つの処理を行わなければならないため、処理量が大きいという課題がある。
この課題に対し、MPEG−2で符号化された符号化データをトランスコードする際、符号化データ内の動きベクトルを再利用して、再符号化する際の処理量を削減する方法が示されている(例えば、特許文献1を参照)。
特開2006−295734号公報
しかしながら、上記従来技術では、イントラ予測が適用された符号化ストリームをトランスコードする際には、処理量を低減することができないという課題がある。
特許文献1で示される従来技術は、動きベクトルを利用する技術であるため、画面間符号化から画面間符号化のトランスコードを行うときにしか使用することができない。このため、H.264/AVC符号化方式などのイントラ予測を用いた符号化方式からイントラ予測及びインター予測を用いた符号化方式にトランスコードする際には適用できない。
そこで、本発明は、少なくともイントラ予測が適用された符号化ストリームからイントラ予測及びインター予測が適用された符号化ストリームにトランスコードを行う際に、処理量を低減することができるトランスコード装置及びトランスコード方法を提供することを目的とする。
上記目的を達成するために、本発明に係るトランスコード装置は、少なくとも一部にイントラ予測が適用された第1符号化ストリームを、イントラ予測及びインター予測が適用された第2符号化ストリームに変換するトランスコード装置であって、前記第1符号化ストリームを所定の単位毎に復号することで、復号画像データを生成する復号部と、前記復号部が前記第1符号化ストリームを復号する際に適用されたイントラ予測の予測モードを取得する予測モード取得部と、前記所定の単位毎にイントラ予測又はインター予測を適用して前記復号画像データを符号化することで、前記第2符号化ストリームを生成する符号化部と、前記符号化部がイントラ予測を適用する場合、前記予測モード取得部によって取得された予測モードを用いるように、前記符号化部を制御する制御部とを備える。
この構成により、符号化ストリームを復号する際に適用されたイントラ予測の予測モードを取得し、符号化部において再符号化する際に、当該予測モードを利用して符号化することで、符号化部においてイントラ予測の予測モードを決定するための処理を行う必要がなくなるので、処理量を低減することができる。
また、前記トランスコード装置は、さらに、前記復号部による復号過程において生成される復号情報に基づいて、イントラ予測を適用した場合の符号化効率を表す第1コスト値を前記所定の単位毎に生成する第1コスト値生成部を備え、前記制御部は、さらに、前記符号化部が前記復号画像データを符号化する際、前記所定の単位毎に前記第1コスト値に応じてイントラ予測又はインター予測を適用するように、前記符号化部を制御してもよい。
この構成により、復号処理過程において生成される復号情報を基に第1コスト値を生成するため、符号化時に第1コスト値を生成する必要がなく、トランスコード装置全体の処理量を減らすことが可能となる。例えば、符号化時にイントラ予測画像データを生成し、生成したイントラ予測画像データと復号画像データとの差分を算出する処理を省略することができる。
また、前記第1コスト値生成部は、イントラ予測を適用した場合の符号化効率が良いほど小さい値になる前記第1コスト値を生成し、前記制御部は、前記第1コスト値が第1閾値よりも小さい場合、イントラ予測を適用するように、前記符号化部を制御してもよい。
この構成により、符号化時において適用する予測方式を簡略的に選択することができるため、トランスコード装置全体の処理量を減らすことが可能となる。
また、前記符号化部は、前記所定の単位毎に前記復号画像データにインター予測を適用することで、インター予測画像データを生成するインター予測部と、前記インター予測画像データに基づいて、インター予測を適用した場合の符号化効率を表す第2コスト値を、前記所定の単位毎に生成する第2コスト値生成部と、前記予測モードを用いて、前記所定の単位毎にイントラ予測を適用することで、イントラ予測画像データを生成するイントラ予測部と、前記イントラ予測画像データに基づいて、イントラ予測を適用した場合の符号化効率を表す第3コスト値を前記所定の単位毎に生成する第3コスト値生成部とを備え、前記制御部は、前記第1コスト値が前記第1閾値以上である場合、前記第2コスト値と前記第3コスト値とを比較し、比較結果に基づいてイントラ予測又はインター予測を適用するように、前記符号化部を制御してもよい。
この構成により、符号化時に再度、イントラ予測を行った場合の符号化効率を表す第3コスト値を生成し、生成した第3コスト値に基づいて予測方式を選択することが可能となる。そのため、より最適な予測方式を適用し、トランスコードを行うことが可能となる。
また、前記制御部は、前記第1コスト値が前記第1閾値以上であると判定した後に、前記第2コスト値を生成し、かつ、当該第2コスト値と前記第3コスト値とを比較するように、前記符号化部を制御してもよい。
この構成により、符号化時において、イントラ予測の符号化効率を表す第1コスト値と閾値との比較を行った後に、インター予測を行った場合の符号化効率を表すコスト値を生成することが可能となるため、トランスコード動作の効率化を図ることが可能となる。例えば、第1コスト値が第1閾値より小さい場合には、インター予測を行うための動きベクトル検出処理及び動き補償処理を省略することができる。
また、前記制御部は、前記第2コスト値と前記第3コスト値とを比較し、前記第2コスト値が表す符号化効率よりも前記第3コスト値が表す符号化効率が良い場合に、イントラ予測を適用するように、前記符号化部を制御してもよい。
この構成により、トランスコード中に符号化を行う際、より最適な予測方式を適用して復号画像データを符号化することが可能となる。
また、前記トランスコード装置は、さらに、前記第1コスト値に基づいて、動き検出の探索範囲と参照画像の枚数との少なくとも1つを設定するための符号化パラメータを生成する符号化パラメータ生成部を備えてもよい。
この構成により、符号化時において、1フレーム内のMB毎に生成される第1コスト値を基に生成された符号化パラメータが使用できるため、符号化効率を向上させることが可能となる。
また、前記符号化パラメータ生成部は、前記第1コスト値と前記第1閾値との比較結果を計数し、計数結果に従って前記符号化パラメータを生成してもよい。
この構成により、符号化時において、1フレーム内のMB毎に生成される第1コスト値を基に生成された符号化パラメータが使用できるため、さらに符号化効率を向上させることが可能となる。
また、前記符号化部は、前記予測モードを用いて、前記所定の単位毎にイントラ予測を適用することで、イントラ予測画像データを生成するイントラ予測部と、前記イントラ予測画像データに基づいて、イントラ予測を適用した場合の符号化効率が良いほど小さい値となる第3コスト値を前記所定の単位毎に生成する第3コスト値生成部と、前記所定の単位毎に前記復号画像データにインター予測を適用することで、インター予測画像データを生成するインター予測部と、前記インター予測画像データに基づいて、インター予測を適用した場合の符号化効率を表す第2コスト値を、前記所定の単位毎に生成する第2コスト値生成部とを備え、前記制御部は、前記第3コスト値が第2閾値以上であると判定した後に、前記インター予測画像データと前記第2コスト値とを生成するように、前記符号化部を制御してもよい。
また、本発明は、上記トランスコード装置を備えるデジタルレコーダーとしても実現することができる。
また、本発明は、トランスコード装置として実現できるだけではなく、当該トランスコード装置を構成する処理部をステップとする方法として実現することもできる。
例えば、本発明に係るトランスコード方法は、少なくとも一部にイントラ予測が適用された第1符号化ストリームを、イントラ予測及びインター予測が適用された第2符号化ストリームに変換するトランスコード方法であって、前記第1符号化ストリームを所定の単位毎に復号することで、復号画像データを生成する復号ステップと、前記復号ステップにおいて前記第1符号化ストリームを復号する際に適用されたイントラ予測の予測モードを取得する予測モード取得ステップと、前記所定の単位毎にイントラ予測又はインター予測を適用して前記復号画像データを符号化することで、前記第2符号化ストリームを生成する符号化ステップとを含み、前記符号化ステップでは、イントラ予測を適用する場合、前記予測モード取得ステップにおいて取得した予測モードを用いる。
また、これらステップをコンピュータに実行させるプログラムとして実現してもよい。さらに、当該プログラムを記録したコンピュータ読み取り可能なCD−ROM(Compact Disc−Read Only Memory)などの記録媒体、並びに、当該プログラムを示す情報、データ又は信号として実現してもよい。そして、それらプログラム、情報、データ及び信号は、インターネットなどの通信ネットワークを介して配信してもよい。
本発明によれば、少なくともイントラ予測が適用された符号化ストリームから、イントラ予測及びインター予測が適用された符号化ストリームにトランスコードを行う際に、再符号化する際の処理量を低減することができる。
図1は、本発明の実施の形態1に係るトランスコード装置の構成を示すブロック図である。 図2は、H.264/AVC符号化規格における4×4サブブロックに適用される予測モードの種類を示す図である。 図3は、H.264/AVC符号化規格における16×16サブブロックに適用される予測モードの種類を示す図である。 図4は、H.264/AVC符号化規格におけるマクロブロックとサブブロックとの関係を示す図である。 図5は、H.264/AVC符号化規格におけるサブブロックと予測モードとを対応付けたテーブルの一例を示す図である。 図6は、本発明の実施の形態1に係る復号部の具体的な構成を示すブロック図である。 図7は、本発明の実施の形態1に係る符号化部の具体的な構成を示すブロック図である。 図8は、本発明の実施の形態1に係るトランスコード装置全体の具体的動作を示すフローチャートである。 図9は、本発明の実施の形態1に係る復号部の具体的動作を示すフローチャートである。 図10は、本発明の実施の形態1に係る符号化部の具体的動作を示すフローチャートである。 図11は、本発明の実施の形態2に係る符号化部の具体的動作を示すフローチャートである。 図12は、本発明の実施の形態3に係るトランスコード装置の構成を示すブロック図である。 図13は、本発明の実施の形態3に係る復号部の具体的な構成を示すブロック図である。 図14は、H.264/AVC符号化規格におけるサブブロックと予測モードと第1コスト値とを対応付けたテーブルの一例を示す図である。 図15は、本発明の実施の形態3に係る符号化部の具体的な構成を示すブロック図である。 図16は、本発明の実施の形態3に係る符号化部の具体的動作を示すフローチャートである。 図17は、本発明の実施の形態3に係る符号化部の変形例の構成を示すブロック図である。 図18は、本発明の実施の形態4に係るトランスコード装置の構成を示すブロック図である。
以下では、本発明に係るトランスコード装置及びトランスコード方法について、実施の形態に基づいて図面を参照しながら詳細に説明する。
(実施の形態1)
実施の形態1に係るトランスコード装置は、少なくとも一部にイントラ予測が適用された第1符号化ストリームを、イントラ予測及びインター予測が適用された第2符号化ストリームに変換するトランスコード装置であって、第1符号化ストリームを所定の単位毎に復号することで、復号画像データを生成する復号部と、復号部が前記第1符号化ストリームを復号する際に適用されたイントラ予測の予測モードを取得する予測モード取得部と、所定の単位毎にイントラ予測又はインター予測を適用して復号画像データを符号化することで、第2符号化ストリームを生成する符号化部と、符号化部がイントラ予測を適用する場合、予測モード取得部によって取得された予測モードを用いるように、符号化部を制御する制御部とを備えることを特徴とする。
図1は、実施の形態1に係るトランスコード装置100の構成を示すブロック図である。
図1に示すようにトランスコード装置100は、予測モード取得部101と、メモリ102と、制御部103と、復号部200と、符号化部300とを備える。トランスコード装置100は、記録媒体400からAストリームを読み出し、読み出したAストリームを復号部200にて復号画像データに復号し、符号化部300にて当該復号画像データをBストリームに再符号化する。
ここで、記録媒体400は、例えば、図1に示すようにトランスコード装置100の外部に設けられたBD(Blu−ray Disc)などの記録媒体である。また、記録媒体400は、トランスコード装置100が内部に備えるHDD(Hard Disk Drive)などの記録媒体であってもよい。
なお、Aストリームは、トランスコード装置100が記録媒体400から読み出す第1符号化ストリームの一例であり、一例として、イントラ予測のみが適用されて符号化されたストリームである。また、Bストリームは、トランスコード装置100から出力される第2符号化ストリームの一例であり、イントラ予測及びインター予測の少なくとも一方が適用されて符号化されたストリームである。
また、復号部200と符号化部300とにおいては、16×16画素で構成されるマクロブロック(以下、MBと称す)単位、又は、当該MBをさらに細分化したサブブロック単位毎に処理を行う構成とする。なお、通常は、輝度信号及び色差信号から構成される入力信号がトランスコード装置100において処理されるが、説明の便宜上、以下の実施の形態では輝度信号のみの説明を行う。
復号部200は、記録媒体400から読み出したAストリームを所定の単位毎に復号することで、復号画像データを生成する。具体的な構成については後で記載する。ここで、所定の単位は、MB、又は、当該復号部200内の各処理毎に設定される、MBを細分化したサブブロックを示す。
また、復号部200は、Aストリームを復号するときに、当該Aストリームからシーケンス全体の情報(Sequence Parameter Set等)と、ピクチャ全体の情報(Picture Parameter Set等)と、スライス情報(Slice header)と、輝度情報を含む1つのMBに対応する符号化データであるMB情報とを抽出する。復号部200は、抽出した情報に基づいて入力されたAストリームを復号することで、復号画像データを生成する。
符号化部300は、所定の単位毎にイントラ予測又はインター予測を適用して復号画像データを符号化することで、Bストリームを生成する。
具体的には、符号化部300は、復号部200が生成した復号画像データを、イントラ予測又はインター予測を適用して予測画像を生成し、生成した予測画像と復号画像データとの差分を算出する。そして、符号化部300は、算出された差分データを直交変換し、量子化し、可変長符号化を行うことで、動きベクトル等を含む符号化情報と符号化画像とを含むBストリームを生成する。実施の形態1に係る符号化部300は、イントラ予測を適用する場合、予測モード取得部101において取得される予測モードを利用し、符号化処理を行うことを特徴とする。
予測モード取得部101は、復号部200がAストリームを復号する際に適用されたイントラ予測の予測モードを取得する。具体的には、予測モード取得部101は、復号部200が記録媒体400から読み出したAストリームを可変長復号した際に生成されるMB情報を基に、イントラ予測が適用されたMBの予測モードを所定の単位毎に取得する。ここで、イントラ予測とは、画面内の符号化済み画素を用いて、MB内の画素値を予測する方法である。また、イントラ予測の予測モードとは、イントラ予測を適用する場合の予測方向を示している。
なお、所定の単位とは、輝度信号の場合、16×16画素で構成される16×16サブブロック、8×8画素で構成される8×8サブブロック、及び、4×4画素で構成される4×4サブブロックである。
また、予測モードは、4×4サブブロック及び8×8サブブロックに対し、それぞれ9種類の予測モードが用意されている。具体的には、4×4サブブロックに対しては、図2に示すように予測モード0から予測モード8までの9種類の予測モードが用意されている。なお、8×8サブブロックに対しては、図2に示す予測モードを8×8画素に拡張したものとなっている。また、予測モードは、16×16サブブロックに対し、4種類の予測モードが用意されている。具体的には、16×16サブブロックに対しては、図3に示すように予測モード0から予測モード3までの4種類の予測モードが用意されている。
メモリ102は、フラッシュメモリ、DRAM、強誘電体メモリ、HDD等の記録可能な手段で構成される。メモリ102は、制御部103による制御に基づいて、復号部200から出力される復号画像データと、予測モード取得部101から取得されるMB毎に取得した予測モードとの記録及び読み出しが可能な構成となっている。
制御部103は、トランスコード装置100全体を制御する。例えば、制御部103は、復号部200及び符号化部300において、各処理を行うタイミングの制御を行う。また、制御部103は、メモリ102に復号画像データと予測モードとを記録及び読み出しを行う。なお、制御部103は、復号画像データと予測モードとを対応付けて管理するものとする。
例えば、制御部103は、メモリ102に書き込む際には、図4に示すように、4×4サブブロックを番号によって識別可能とした場合、図5に示すようにサブブロックの番号と予測モードとを対応付けて書き込みを行うものとする。つまり、1つのMBにおいて4×4サブブロック毎に予測モードが設定されている場合、16個のブロック番号と予測モードとが対応付けられることになる。
なお、図5においては、4×4サブブロックについて記載したが、例えば、1つのMBにおいて8×8サブブロック毎に予測モードが設定されている場合は、4個のブロック番号と予測モードとが対応付けられることになる。なお、1つのMB(すなわち、16×16サブブロック)に予測モードが設定されている場合も同様に管理することが可能である。
なお、予測モードの管理方法は上記の方法に限定されるものではなく、例えば、メモリアドレスをブロックの番号とし、当該メモリアドレスに対応するように予測モードを記憶する等、ブロック番号と予測モードとが対応付けられる方法であれば、どのようなものを使用しても構わない。
また、制御部103は、半導体素子等で実現可能であり、ハードウェアのみで構成してもよく、あるいは、ハードウェアとソフトウェアとを組み合わせることにより実現しても構わない。また、制御部103は、複数のデバイスで構成しても構わない。なお、制御部103をソフトウェアで実装する場合は、マイクロプロセッサを用いることによって実現可能となる。
以下、復号部200の具体的な構成に関して、図面を参照しながら説明する。
図6は、本発明の実施の形態1に係る復号部200の具体的な構成を示すブロック図である。
復号部200は、可変長復号部201と、逆量子化部202と、逆直交変換部203と、加算器204と、デブロッキングフィルタ部205と、イントラ予測部206とを備える。
可変長復号部201は、可変長符号化された符号化ストリームをMB毎に可変長復号することにより、当該MBに対応する量子化係数(輝度情報)を含む上記MB情報を生成する。可変長復号部201は、生成した量子化係数を逆量子化部202に出力する。
MB情報は、当該MBにイントラ予測が使用されている場合、予測モードを規定する予測モード情報を含む。予測モード取得部101は、MB情報に含まれる予測モード情報を取得することで、当該MBに適用されている予測モードを取得することが可能となる。例えば、可変長復号部201が図4に示す4×4サブブロック毎にイントラ予測が適用されたMBを可変長復号することによって、予測モード取得部101は、16個の予測モードを取得する。
逆量子化部202は、可変長復号部201から出力される量子化係数を逆量子化することで、DCT(Discrete Cosine Transform)係数に復元し、復元されたDCT係数を逆直交変換部203に出力する。
逆直交変換部203は、逆量子化部202から出力されるDCT係数を逆直交変換することで残差画像データに復元し、復元された残差画像データを加算器204に出力する。
加算器204は、逆直交変換部203から出力される残差画像データと、イントラ予測部206から出力される予測画像データとを加算することで復号画像データを生成し、生成した復号画像データをデブロッキングフィルタ部205に出力する。
デブロッキングフィルタ部205は、加算器204から出力される復号画像データをデブロッキングフィルタ処理し、外部装置(ここでは、メモリ102)に出力する。
イントラ予測部206は、可変長復号部201から出力されるMB情報を基に、イントラ予測を行うために必要となる予測モードを取得する。そして、イントラ予測部206は、取得した予測モードを基に予測画像データを生成し、生成した予測画像データを加算器204に出力する。
なお、予測モードを取得できない場合は、イントラ予測部206は、デブロッキングフィルタ部205から出力される復号画像データに対してイントラ予測を行い、予測画像データを生成してもよい。また、イントラ予測部206は、予測モード取得部101で取得した予測モードを利用してもよい。
以下、符号化部300の具体的な構成に関して、図面を参照しながら説明する。
図7は、本発明の実施の形態1に係る符号化部300の具体的な構成を示すブロック図である。
符号化部300は、減算器301と、直交変換部302と、量子化部303と、可変長符号化部304と、逆量子化部305と、逆直交変換部306と、加算器307と、デブロッキングフィルタ部308と、フレームメモリ309と、動きベクトル検出部310と、動き補償部311と、イントラ予測部312と、第3コスト値生成部313と、第2コスト値生成部314と、予測方式選択部315とを備える。なお、動きベクトル検出部310と動き補償部311とは、インター予測部320に含まれる。
減算器301は、メモリ102から読み出された復号画像データと、予測方式選択部315から出力される、イントラ予測部312又は動き補償部311にて生成された予測画像データとの差分をMB毎に算出することで、残差画像データを生成する。生成された残差画像データは、直交変換部302に出力される。
直交変換部302は、減算器301から出力される残差画像データを直交変換することでDCT係数を生成し、生成したDCT係数を量子化部303に出力する。
量子化部303は、直交変換部302から出力されるDCT係数を量子化することで量子化係数を生成し、生成した量子化係数を可変長符号化部304及び逆量子化部305に出力する。
可変長符号化部304は、量子化部303から出力される量子化係数を可変長符号化することにより、符号化画像データを生成し、生成した符号化画像データをBストリームとして外部装置に出力する。
逆量子化部305は、量子化部303から出力される量子化係数を逆量子化することでDCT係数に復元し、復元されたDCT係数を逆直交変換部306に出力する。
逆直交変換部306は、逆量子化部305から出力されるDCT係数を逆直交変換することで残差画像データに復元し、復元された残差画像データを加算器307に出力する。
加算器307は、逆直交変換部306から出力された残差画像データと、予測方式選択部315から出力される、イントラ予測部312又は動き補償部311にて生成された予測画像データとを加算することで復号画像データを生成し、デブロッキングフィルタ部308及びイントラ予測部312に出力する。
デブロッキングフィルタ部308は、加算器307から出力される復号画像データのデブロッキングフィルタ処理を行い、デブロッキングフィルタ処理された復号画像データをフレームメモリ309に出力する。
フレームメモリ309は、デブロッキングフィルタ部308から出力される復号画像データを蓄積する。フレームメモリ309は、フラッシュメモリ、DRAM、強誘電体メモリ等の記録可能な手段で構成される。
動きベクトル検出部310は、現在符号化対象であるMBを基に、フレームメモリ309に蓄積されている復号画像データに対する動きベクトルを検出する。なお、動きベクトル検出部310において処理されるMBの処理サイズは、例えば、H.264/AVC規格であれば、16×16、16×8、8×16、8×8、8×4、4×8及び4×4画素サイズのサブブロックが7種類規定されている。動きベクトル検出部310は、この7種類からMB毎に1つを選択する。
動き補償部311は、動きベクトル検出部310によって検出した動きベクトルを基に、フレームメモリ309に蓄積される復号画像データに対して動き補償を行った予測画像データを生成する。
なお、図7に示すようにインター予測部320は、動きベクトル検出部310と動き補償部311とを備えることで、復号画像データのMB毎にインター予測を適用することで、インター予測画像を予測画像データとして生成する。
イントラ予測部312は、メモリ102に蓄積される符号化対象であるMBに対応付けされた予測モードを基に、加算器307から出力される復号画像データに対してイントラ予測を適用して、予測画像データを生成する。言い換えると、イントラ予測部312は、予測モード取得部101によって取得された予測モードを用いて、復号画像データのMB毎にイントラ予測を適用することで、イントラ予測画像を予測画像データとして生成する。
第3コスト値生成部313は、イントラ予測部312から出力される予測画像データと、復号画像データとの差分絶対値和(SAD:Sum of Absolute Difference)を第3コスト値として算出し、算出した第3コスト値を予測方式選択部315に出力する。したがって、第3コスト値が小さいほど、SADが小さく、すなわち、予測画像データと復号画像とが類似しており、符号化効率が良くなることを示している。つまり、第3コスト値生成部313は、イントラ予測画像データに基づいて、イントラ予測を適用した場合の符号化効率が良いほど値が小さくなる第3コスト値を、復号画像データのMB毎に生成する。
第2コスト値生成部314は、動き補償部311から出力される動き補償を行った予測画像データと、復号画像データとのSADを第2コスト値として算出し、算出した第2コスト値を予測方式選択部315に出力する。第2コスト値も、符号化効率が良いほど、値が小さくなる。
なお、第3コスト値及び第2コスト値を算出する方法はSADに限定されるものではなく、MAD(Mean absolute Difference)等、符号化効率を示す値であればどのようなものを利用しても構わない。また、第3コスト値生成部313及び第2コスト値生成部314は、符号化効率が良いほど値が大きくなるようなコスト値を、第3コスト値及び第2コスト値として生成してもよい。
予測方式選択部315は、第3コスト値生成部313及び第2コスト値生成部314から入力される第3コスト値と第2コスト値とに基づいて、イントラ予測部312及び動き補償部311のうち一方から出力される予測画像データを減算器301に出力する。つまり、予測方式選択部315は、イントラ予測を用いた場合の符号化効率を示す第3コスト値と、インター予測を用いた場合の符号化効率を示す第2コスト値とを比較し、比較結果に基づいてイントラ予測画像及びインター予測画像のいずれか一方を選択し、選択した予測画像データを減算器301と加算器307とに出力する。
具体的には、第3コスト値が示す符号化効率が、第2コスト値が示す符号化効率より高い場合は、予測方式選択部315は、イントラ予測画像を選択する。逆に、第3コスト値が示す符号化効率が、第2コスト値が示す符号化効率より低い場合は、予測方式選択部315は、インター予測画像を選択する。本実施の形態では、第3コスト値及び第2コスト値は、符号化効率が良いほど小さい値となるので、例えば、第3コスト値が第2コスト値より小さい場合に、予測方式選択部315は、イントラ予測画像を選択する。
以下、トランスコード装置100の具体的動作に関して、図面を参照しながら説明する。
図8は、本発明の実施の形態1に係るトランスコード装置100全体の具体的動作を示すフローチャートである。
まず、トランスコード装置100は、記録媒体400から符号化ストリーム(Aストリーム)を読み出す(S1001)。
次に、復号部200は、読み出した符号化ストリームをMB単位で復号する。復号を行う際に、予測モード取得部101は、処理しているMBの予測モードを取得する(S1002)。
復号部200は、復号処理によって生成される復号画像データをメモリ102に記録し、予測モード取得部101は、予測モードをメモリ102に記録する。ここで、制御部103は、復号部200及び予測モード取得部101を、復号画像データと予測モードとをMB毎に記録するよう制御する(S1003)。例えば、図5に示すように、予測モードは、サブブロック毎に対応付けてメモリ102に記録される。
そして、符号化部300は、メモリ102からMB毎に管理された復号画像データと予測モードとを、メモリ102から読み出す(S1004)。
次に、符号化部300は、読み出した復号画像データの符号化を行う(S1005)。このとき、符号化部300は、符号化処理においてイントラ予測を用いる場合は、読み出した予測モードを使用する。詳細な動作に関しては後で記述する。
制御部103は、符号化部300において処理しているMBが最後のMBであるか否かを判定する(S1006)。もし、最後のMBである場合、そのまま動作を終了し、まだ処理すべきMBが残っている場合は、ステップS1001に戻る。
以上に示すように、本実施の形態に係るトランスコード装置100は、MB毎に符号化ストリームを復号し、再符号化する。なお、メモリ102の容量が充分に確保できる場合などは、スライス又はピクチャ毎に符号化ストリームを復号し、再符号化してもよい。つまり、例えば、復号部200が1ピクチャ分の符号化ストリームを復号することで、1ピクチャ分の復号画像データをメモリ102に記録した後、符号化部300が1ピクチャ分の復号画像データを符号化してもよい。
以下、復号部200の具体的動作に関して、図面を参照しながら説明する。
図9は、本発明の実施の形態1に係る復号部200の具体的動作を示すフローチャートである。なお、図9に示すフローチャートは、図8のステップS1001〜S1003の処理の一例を詳細に示す図である。
まず、復号部200は、記録媒体400からAストリームを読み出す(S2001)。
次に、可変長復号部201は、MB毎にAストリームを可変長復号することで、量子化係数を生成する(S2002)。
次に、逆量子化部202及び逆直交変換部203は、生成された量子化係数に対して逆量子化及び逆直交変換を行うことで、残差画像データを生成する(S2003)。
そして、加算器204は、逆量子化部202及び逆直交変換部203によって生成された残差画像データに、前もってイントラ予測部206において生成した予測画像データを加算することで、復号画像データを生成する(S2004)。
次に、デブロッキングフィルタ部205は、生成された復号画像データに対してデブロッキングフィルタ処理を行う(S2005)。
一方、予測モード取得部101は、可変長復号部201がAストリームを可変長復号した際に生成されるMB情報から処理対象であるMBの予測モードを取得する(S2006)。なお、Aストリームがイントラ予測だけではなく、インター予測も適用されたストリームである場合、予測モード取得部101は、処理対象であるMBが、イントラ予測が適用されたMBである場合に、予測モードを取得する。
そして、制御部103は、デブロッキングフィルタ部205及び予測モード取得部101を制御することで、デブロッキングフィルタ処理が行われた復号画像データと、取得した予測モードとをメモリ102に対応付けして記録する(S2007)。なお、デブロッキングフィルタ処理がなされる前の復号画像データと、取得した予測モードとを対応付けして記録する構成にしても構わない。
なお、図9に示すフローチャートでは、予測モード取得部101が行う予測モードの取得処理(S2006)と、逆量子化部202からデブロッキングフィルタ部205が行う復号処理(S2003〜S2005)とを並列処理で行っているが、シーケンシャルに行ってもよい。
以下、符号化部300の具体的動作に関して、図面を参照しながら説明する。
図10は、本発明の実施の形態1に係る符号化部300の具体的動作を示すフローチャートである。なお、図10に示すフローチャートは、図8のステップS1004及びS1005の処理の一例を詳細に示す図である。
まず、符号化部300は、メモリ102から復号画像データをMB毎に読み出し、さらに、当該MBに対応付けされた予測モードを読み出す(S3001)。
次に、動きベクトル検出部310は、フレームメモリ309に蓄積された復号画像データを基に、制御部103において設定されるブロックサイズ毎に動きベクトルを検出し、動き補償部311に出力する(S3002)。
次に、動き補償部311は、動きベクトル検出部310が検出した動きベクトルと、フレームメモリ309に蓄積される復号画像データとを基に動き補償を行うことで、動き補償された予測画像データ、すなわち、インター予測画像データを生成する。そして、動き補償部311は、生成したインター予測画像データを予測方式選択部315と第2コスト値生成部314とに出力する(S3003)。
第2コスト値生成部314は、インター予測画像データを基に第2コスト値を生成し、生成した第2コスト値を予測方式選択部315に出力する(S3004)。
一方、イントラ予測部312は、加算器307から出力される復号画像データのうち、処理対象であるMB又はMBを細分化したサブブロックに隣接する画素情報を用いて、読み出した予測モードを基にイントラ予測を行うことで、イントラ予測画像データを生成する。そして、イントラ予測部312は、生成したイントラ予測画像データを第3コスト値生成部313と予測方式選択部315とに出力する(S3005)。
第3コスト値生成部313は、イントラ予測画像データを基に、第3コスト値を生成し、生成した第3コスト値を予測方式選択部315に出力する(S3006)。
予測方式選択部315は、第3コスト値と第2コスト値とに基づいて、減算器301及び加算器307に出力する予測画像データを選択する(S3007)。具体的には、予測方式選択部315は、第2コスト値が表す符号化効率よりも第3コスト値が表す符号化効率が良い場合、すなわち、第3コスト値が第2コスト値よりも小さい場合、イントラ予測画像データを選択する。
さらに、減算器301は、読み出した復号画像データと、予測方式選択部315が出力する予測画像データとの差分を算出することで、残差画像データを生成する(S3008)。
次に、直交変換部302及び量子化部303は、生成された残差画像データに直交変換及び量子化を行うことで、量子化係数を生成する(S3009)。
さらに、可変長符号化部304は、生成された量子化係数を可変長符号化することで、符号化された符号化データを生成し、生成した符号化データをBストリームの一部として出力する(S3010)。
一方、逆量子化部305及び逆直交変換部306は、量子化部303によって生成された量子化係数に、逆量子化及び逆直交変換を行うことで、残差画像データを復元し、復元した残差画像データを加算器307に出力する(S3011)。
次に、加算器307は、逆直交変換部306によって復元された残差画像データと、予測方式選択部315から出力される予測画像データとを加算することで、復号画像データを復元する、そして、デブロッキングフィルタ部308は、復元された復号画像データに対し、デブロッキングフィルタ処理を行い、フィルタ処理後の復号画像データをフレームメモリ309に出力する(S3012)。なお、加算器307は、イントラ予測部312にも復元された復号画像データを出力する。
そして、フレームメモリ309は、入力される復号画像データを蓄積する(S3013)。
以上のように、本実施の形態に係るトランスコード装置100によれば、イントラ予測が適用された符号化データのトランスコードを行う場合、復号部200が可変長復号をする際に生成される、処理対象となるMB又は当該MBを細分化したサブブロック毎に適用された予測モードを予測モード取得部101が取得し、符号化時に利用することを特徴とする。この構成により、符号化時において、イントラ予測を用いる際に予測モードを算出する必要がなくなるため、トランスコード装置100全体の処理量を低減することが可能となる。
なお、図10に示すフローチャートでは、イントラ予測(S3005)及び第3コスト値の生成処理(S3006)と、インター予測(S3002及びS3003)及び第2コスト値の生成処理(S3004)とを並列処理で行っているが、シーケンシャルに行ってもよい。また、可変長符号化(S3010)と、予測画像データを生成する際に参照される参照画像の生成処理(S3011〜S3013)とを並列処理で行っているが、シーケンシャルに行ってもよい。
なお、従来のように、予測モード取得部101によって取得された予測モードを符号化部300が利用しない場合は、符号化部300のイントラ予測部312は、復号画像データと、加算器307から入力される復元された復号画像データとを利用して、イントラ予測の予測モードを決定する。すなわち、イントラ予測部312は、例えば、図2に示す9種類の予測モードのそれぞれに対応するイントラ予測画像を生成する。そして、イントラ予測部312は、生成した9種類のイントラ予測画像の中から最も符号化効率の良い画像を、イントラ予測画像として予測方式選択部315に出力する。
このように、従来では、イントラ予測部312が予測モードを決定するための処理が必要であった。これに対して、本実施の形態に係るトランスコード装置100によれば、イントラ予測部312は、復号部200によって生成された予測モードを利用するので、予測モードを決定するための処理を行う必要がなく、処理量を低減することができる。
(実施の形態2)
実施の形態1におけるトランスコード装置100は、復号時に復号対象であるMBから予測モードを取得し、当該MBの符号化時に利用する。このため、トランスコード装置100全体の処理量を削減することができる。しかし、符号化時において、予測方式選択部315がイントラ予測を選択した場合であっても、イントラ予測又はインター予測を選択するために第2コスト値を生成する必要がある。そこで、本実施の形態2においては、第2コスト値を生成せずとも、第3コスト値のみを用い、イントラ予測又はインター予測を簡略的に選択することで、トランスコード装置100全体の処理量をさらに削減している。
以下、本発明の実施の形態2におけるトランスコード装置を、図面を参照しながら説明する。なお、実施の形態2におけるトランスコード装置の構成は、実施の形態1におけるトランスコード装置100の構成と同様であるため、説明を省略する。また、実施の形態2に係る復号部及び予測モード取得部の動作についても、実施の形態1に係る復号部200及び予測モード取得部101の動作と同様であるので、説明を省略する。
以下、実施の形態2における符号化部300の予測方式の選択動作について図面を参照しながら説明する。
図11は、本発明の実施の形態2に係る符号化部300の具体的動作を示すフローチャートである。具体的には、図11は、第3コスト値によって簡略的にイントラ予測及びインター予測の選択を行う動作を示す。
符号化部300は、メモリ102から復号画像データをMB毎に読み出す。その際、符号化部300は、復号画像データに含まれるMB、又は、当該MBを細分化したサブブロック毎に対応付けされた予測モードも同時に読み出す(S4001)。
次に、イントラ予測部312は、加算器307から出力される復号画像データのうち、処理対象であるMBに隣接する画素情報を用いて、読み出した予測モードに従ってイントラ予測を適用することで、イントラ予測画像データを生成する。そして、イントラ予測部312は、生成したイントラ予測画像を第3コスト値生成部313と予測方式選択部315とに出力する(S4002)。
第3コスト値生成部313は、イントラ予測画像データを基に、第3コスト値を生成し、生成した第3コスト値を予測方式選択部315に出力する(S4003)。
そして、制御部103は、第3コスト値が所定の閾値よりも小さいか否かを判定する(S4004)。所定の閾値よりも小さい場合は(S4004でYES)、制御部103は、予測方式選択部315にイントラ予測画像を選択させるための制御を行う。また、所定の閾値よりも大きい場合は(S4004でNO)、制御部103は、予測方式選択部315にインター予測画像を選択させるための制御を行う。なお、所定の閾値は、例えば、H.264/AVCの規格上の制限値から設定される値でも構わないし、復号処理過程において生成される復号情報を基に設定される値であっても構わない。
第3コスト値が所定の閾値よりも小さいと判定された場合(S4004でYES)、制御部103は、動きベクトル検出部310と動き補償部311とにおいて処理しないよう制御を行う(S4005)。つまり、制御部103は、動きベクトル検出部310と動き補償部311との起動を抑制する。
次に、予測方式選択部315は、イントラ予測部312によって生成されたイントラ予測画像データを減算器301と加算器307とに出力する(S4006)。
一方、第3コスト値が所定の閾値よりも大きいと判定された場合(S4004でNO)、動きベクトル検出部310は、フレームメモリ309に蓄積された復号画像データを基に、動きベクトルを検出し、検出した動きベクトルを動き補償部311に出力する(S4007)。
そして、動き補償部311は、動きベクトル検出部310が検出した動きベクトルと、フレームメモリ309に蓄積される復号画像データとを基に、インター予測を行う。そして、動き補償部311は、動き補償された予測画像データ(インター予測画像データ)を生成し、生成したインター予測画像データを予測方式選択部315と第2コスト値生成部314とに出力する(S4008)。
次に、第2コスト値生成部314は、動き補償された予測画像データを基に第2コスト値を生成し、生成した第2コスト値を予測方式選択部315に出力する(S4009)。
さらに、予測方式選択部315は、第3コスト値と第2コスト値とを基に、減算器301と加算器307とに出力する予測画像データを選択し、選択した予測画像データを減算器301と加算器307とに出力する(S4010)。
そして、減算器301は、予測画像データと復号画像データとを基に残差画像データを生成する。そして、符号化部300は、当該残差画像データを基に残りの符号化処理を行う(S4011)。具体的には、符号化部300は、直交変換、量子化、可変長符号化、及び、次の符号化処理に用いられる参照画像の生成処理(逆量子化、逆直交変換、加算)を行う。
以上のように、本実施の形態に係るトランスコード装置によれば、制御部103は、第3コスト値が所定の閾値以上であるか否かを判定し、第3コスト値が閾値以上であると判定した後に、インター予測画像と第2コスト値とを生成するように、符号化部300を制御する。具体的には、本実施の形態に係るトランスコード装置は、イントラ予測が適用された符号化データのトランスコードを行う場合、符号化部300において符号化対象のMBに適用する予測方式を選択する際、インター予測を行う前に、イントラ予測の符号化効率を示す第3コスト値を生成する。そして、第3コスト値が所定の閾値よりも小さい場合は、インター予測に関わる処理を行わないことで、インター予測に関わる処理量を低減することができる。
なお、特に、動きベクトル検出部310における処理量は、非常に大きい。そのため、必要に応じて動きベクトル検出部310を起動することで、トランスコード装置100の消費電力を削減することが可能となり、本実施の形態に係るトランスコード装置は非常に有用である。
(実施の形態3)
上述したように、トランスコード装置100の符号化時において第3コスト値を生成するためには、加算器307から出力される復号画像データのうち、処理対象であるMBに隣接する画素情報を用いて、読み出した予測モードでイントラ予測を行い、イントラ予測画像データを生成する必要がある。そこで、本実施の形態3においては、復号時の復号処理過程において生成される復号情報を基に、イントラ予測を適用した場合の符号化効率を表す第1コスト値を生成し、符号化部に出力することで、トランスコード装置100全体の処理量をさらに削減している。
以下、本実施の形態3におけるトランスコード装置を、図面を参照しながら説明する。なお、実施の形態3において実施の形態1と同様の部分は同じ番号を付与し、その説明を省略する。
図12は、本発明の実施の形態3に係るトランスコード装置500の構成を示すブロック図である。トランスコード装置500は、実施の形態1及び2に係るトランスコード装置100と比べて、第1コスト値生成部501をさらに備え、符号化部300の代わりに符号化部600を備え、さらに、制御部103の代わりに制御部502を備える点が異なっている。以下では、実施の形態1と同じ点は説明を省略し、異なる点を中心に説明する。
第1コスト値生成部501は、復号部200の復号処理過程において生成される復号情報を用いて、イントラ予測を行った場合の符号化効率を表す第1コスト値を所定の単位毎に(例えば、MB毎)生成する。復号情報は、復号部200内で可変長復号した際に生成される量子化係数であってもよく、あるいは、当該量子化係数を逆量子化し、逆直交変換することで生成される残差画像データであってもよい。
例えば、第1コスト値生成部501は、量子化係数の値、又は、残差画像データの画素値をサブブロック毎に加算することで、サブブロック毎の加算値を第1コスト値として生成する。なお、残差画像データの画素値の和は、実施の形態1で示した復号画像データとイントラ予測画像データとの差分絶対値和(第3コスト値)に相当する。
符号化部600が、当該第1コスト値に相当する第3コスト値を生成するためには、イントラ予測画像データを生成し、生成したイントラ予測画像データと復号画像データとの差分絶対値和を算出する必要がある。本実施の形態に係るトランスコード装置500によれば、イントラ予測画像データと復号画像データとの差分絶対値和の算出処理を省略することが可能となるので、符号化部600の処理量を低減することができる。
ここで、図13は、本発明の実施の形態3に係る復号部200の具体的な構成を示すブロック図である。
図13に示すように、第1コスト値生成部501は、逆直交変換部203から出力される残差画像データに基づいて、第1コスト値を生成する。なお、上述したように、第1コスト値生成部501は、可変長復号部201から出力される量子化係数、又は、逆量子化部202から出力される逆量子化後の変換係数に基づいて、第1コスト値を生成してもよい。
制御部502は、実施の形態1及び2における制御部103の機能に加え、メモリ102に、復号画像データと予測モードと第1コスト値とをMB毎に対応付けして管理し、記録及び読み出しを行う機能を備える。具体的には、メモリ102は、予測モードと第1コスト値とをサブブロック毎に対応付けて記憶する。例えば、図4に示すように、4×4サブブロックを番号によって識別可能とした場合、制御部502は、図14に示すようにサブブロックの番号と予測モードと第1コスト値とを対応付けして、メモリ102に書き込みを行うものとする。
なお、上記の第1コスト値生成部501において、サブブロック毎に第1コスト値が生成されるが、符号化部600には、イントラ予測の場合の符号化効率をMB単位で表す値が第1コスト値として入力される。例えば、符号化部600に入力される第1コスト値は、図14に示すc0からc15の合計値となる。なお、符号化部600に入力される第1コスト値は、合計値に限定されるものではなく、c0からc15のうち一部の値を合計したものでも構わない。
図15は、本発明の実施の形態3に係る符号化部600の具体的な構成を示すブロック図である。
符号化部600は、実施の形態1及び2に係る符号化部300の構成と比較して、予測方式選択部315に代えて予測方式選択部601を備える点が異なっている。
予測方式選択部601は、メモリ102から読み出される第1コスト値と、第3コスト値生成部313から入力される第3コスト値と、第2コスト値生成部314から入力される第2コスト値とに基づいて、イントラ予測画像データ及びインター予測画像データのいずれかを選択する。予測方式選択部601は、選択した予測画像データを減算器301と加算器307とに出力する。
以下、実施の形態3における符号化部600の符号化動作について図面を参照しながら説明する。
図16は、本発明の実施の形態3に係る符号化部600の具体的動作を示すフローチャートである。具体的には、図16は、第1コスト値によって簡略的にイントラ予測及びインター予測の選択を行う動作を示す。
まず、符号化部600は、メモリ102から復号画像データをMB毎に読み出し、さらに当該MBを細分化したサブブロック毎に対応付けられた予測モード及び第1コスト値を読み出す(S5001)。
次に、制御部502は、読み出した第1コスト値が所定の閾値よりも小さいか否かを判定する(S5002)。所定の閾値より小さい場合は(S5002でYES)、制御部502は、予測方式選択部601にイントラ予測画像を選択させるための制御を行う。所定の閾値以上である場合は(S5002でNO)、制御部502は、予測方式選択部601にインター予測画像を選択させるための制御を行う。なお、所定の閾値は、例えば、H.264/AVCの規格上の制限値から設定される値でも構わないし、復号処理過程において生成される復号情報を基に設定される値であっても構わない。
第1コスト値が所定の閾値よりも小さいと判定された場合(S5002でYES)、制御部502は、動きベクトル検出部310と動き補償部311とにおいて処理しないよう制御を行う(S5003)。つまり、制御部502は、動きベクトル検出部310と動き補償部311との起動を抑制する。
次に、イントラ予測部312は、加算器307から出力される復号画像データのうち、処理対象であるMBに隣接する画素情報を用いて、読み出した予測モードを用いてイントラ予測を行うことで、イントラ予測画像データを生成する(S5004)。そして、イントラ予測部312は、生成したイントラ予測画像データを予測方式選択部601に出力する。予測方式選択部601は、イントラ予測画像データを減算器301と加算器307とに出力する。
一方、第1コスト値が所定の閾値よりも大きいと判定された場合(S5002でNO)、イントラ予測部312は、加算器307から出力される復号画像データのうち、処理対象であるMB、又は、MBを細分化したサブブロックに隣接する画素情報を用いて、読み出した予測モードを基にイントラ予測を行い、イントラ予測画像データを生成する(S5005)。そして、イントラ予測部312は、生成したイントラ予測画像データを第3コスト値生成部313と予測方式選択部601とに出力する。
そして、第3コスト値生成部313は、イントラ予測画像データを基に、第3コスト値を生成し、生成した第3コスト値を予測方式選択部601に出力する(S5006)。
また、イントラ予測画像データの生成処理(S5005)及び第3コスト値の生成処理(S5006)と並行して、動きベクトル検出部310は、フレームメモリ309に蓄積された復号画像データを基に、動きベクトルを検出し、検出した動きベクトルを動き補償部311に出力する(S5007)。
そして、動き補償部311は、動きベクトル検出部310が検出した動きベクトルと、フレームメモリ309に蓄積される復号画像データとを基に、インター予測を行い、動き補償された予測画像データ(インター予測画像データ)を生成する。そして、動き補償部311は、生成したインター予測画像データを、予測方式選択部601と第2コスト値生成部314とに出力する(S5008)。
次に、第2コスト値生成部314は、インター予測画像データを基に第2コスト値を生成し、生成した第2コスト値を予測方式選択部601に出力する(S5009)。
そして、予測方式選択部601は、第3コスト値生成部313によって生成された第3コスト値と、第2コスト値生成部314によって生成した第2コスト値とを基に、減算器301及び加算器307に出力する予測画像データを選択し、選択した予測画像データを減算器301及び加算器307に出力する(S5010)。
次に、減算器301は、予測画像データと復号画像データとを基に残差画像データを生成する。そして、符号化部600は、当該残差画像データを基に残りの符号化処理を行う(S5011)。具体的には、符号化部600は、直交変換、量子化、可変長符号化、及び、次の符号化処理に用いられる参照画像の生成処理(逆量子化、逆直交変換、加算)を行う。
以上のように、本実施の形態に係るトランスコード装置500によれば、イントラ予測が適用された符号化データのトランスコードを行う場合、復号部200の復号処理過程において生成される復号情報に基づいて第1コスト値を生成する。そして、トランスコード装置500は、生成した第1コスト値を符号化する際に利用することで、符号化時にイントラ予測を行った予測画像データを作成せずとも、簡略的に符号化対象のMBに適用する予測方式を選択することが可能となる。この構成により、トランスコード装置100全体の処理量をさらに削減することが可能となる。
なお、本実施の形態に係るトランスコード装置500では、第1コスト値が閾値より大きい場合であっても、符号化部600において、第3コスト値が第2コスト値より小さい場合は、予測方式選択部601は、イントラ予測画像データを予測画像データとして選択する。
これにより、本実施の形態に係るトランスコード装置500によれば、第1コスト値が閾値より小さい場合には、処理量を低減することができるという効果を奏する。さらに、本実施の形態に係るトランスコード装置500によれば、第1コスト値が閾値より大きい場合には、さらに、第2コスト値と第3コスト値との比較を行うことで、精度の良い予測画像データを生成することができ、符号化効率を高めることができるという効果も奏する。
なお、本実施の形態に係るトランスコード装置500では、図17に示す符号化部600aのように、イントラ予測を行った場合の符号化効率を表す第3コスト値を生成しなくてもよい。
図17に示す符号化部600aは、図15に示す符号化部600と比較して、第3コスト値生成部313を備えない点と、予測方式選択部601の代わりに予測方式選択部601aを備える点とが異なっている。
予測方式選択部601aは、メモリ102から読み出した第1コスト値と、所定の閾値とを比較し、第1コスト値が所定の閾値より小さい場合に、イントラ予測部312によって生成されるイントラ予測画像データを選択する。このとき、制御部502によって、動きベクトル検出部310と動き補償部311との起動を抑制することで、符号化部600aの処理量を削減することができる。
さらに、予測方式選択部601aは、第1コスト値が所定の閾値以上である場合に、第1コスト値と、第2コスト値生成部314とを比較し、比較結果に基づいてイントラ予測画像データと、動き補償部311によって生成されたインター予測画像データとを選択する。具体的には、予測方式選択部601aは、第1コスト値が第2コスト値より小さい場合に、イントラ予測画像データを選択し、イントラ予測画像データを減算器301と加算器307とに出力する。また、予測方式選択部601aは、第1コスト値が第2コスト値以上である場合に、インター予測画像データを選択し、インター予測画像データを減算器301と加算器307とに出力する。
以上の構成により、本実施の形態に係るトランスコード装置500の変形例によれば、第3コスト値を生成するための処理を削減することができるので、符号化部600における処理量を低減することができる。
(実施の形態4)
上記の実施の形態におけるトランスコード装置100及び500は、復号処理過程において生成される復号情報を用い、符号化時におけるイントラ予測処理を省略することで、トランスコード装置全体の処理量を低減することを目的としていた。この実施の形態4においては、さらに、トランスコード処理のうち符号化処理の効率を向上させるために、復号時において生成される第1コスト値を基に、符号化パラメータを生成する。
なお、符号化パラメータとは、符号化時に設定されるパラメータであって、例えば、動き補償を行うために設定される動き検出の探索範囲、又は、インター予測を行う際に参照される参照画像の枚数等である。
以下、本発明の実施の形態4におけるトランスコード装置を、図面を参照しながら説明する。なお、実施の形態4において上記実施の形態1から実施の形態3と同様の部分は同じ番号を付与し、その説明を省略する。
図18は、本発明の実施の形態4に係るトランスコード装置700の概要を説明するための模式図である。図18に示すトランスコード装置700は、実施の形態3に係るトランスコード装置500に比べて、さらに、符号化パラメータ生成部701を備え、符号化部600の代わりに符号化部800を備える点が異なっている。
符号化パラメータ生成部701は、第1コスト値生成部501によって生成された第1コスト値を基に、符号化部800において符号化を行う際に使用される符号化パラメータを生成し、生成した符号化パラメータをメモリ102に出力する。なお、メモリ102に出力する際は、制御部502によってサブブロックの番号と予測モードと当該符号化パラメータとを対応付けて記録される。
ここで、符号化パラメータ生成部701の具体的動作について説明する。
符号化パラメータ生成部701は、第1コスト値生成部501から出力される第1コスト値が所定の閾値よりも小さいか否かを、MB単位毎に判定する。その際、第1コスト値が所定の閾値よりも小さい場合は、符号化パラメータ生成部701が有するカウンタのカウンタ値をインクリメントする。すなわち、符号化パラメータ生成部701は、カウンタを利用して、第1コスト値が所定の閾値より小さいと判定されたMBの数を計数する。そして、符号化パラメータ生成部701は、計数結果に基づいて符号化パラメータを設定する。
上記のような第1コスト値の判定と、カウンタ値のインクリメントとが1フレーム分終了した段階で、当該カウンタ値に基づいて当該フレームを符号化する際に適用する符号化パラメータを生成する。例えば、カウンタ値が1フレームに含まれる全MB数に対して、過半数を超えている場合、当該フレームを符号化した際の処理量が小さいと判断できる。
このため、符号化パラメータ生成部701は、通常よりも広い範囲の動き検出の探索範囲を示すパラメータを生成する。さらに、符号化パラメータ生成部701は、符号化時にインター予測を行う際に設定される参照画像の枚数についても通常よりも多い枚数となるパラメータを生成する。そして、符号化パラメータ生成部701は、生成した動き検出の探索範囲を示すパラメータと、参照画像の枚数に関するパラメータとを符号化パラメータとしてメモリ102に出力する動作となっている。
なお、本実施の形態4においては、第1コスト値が所定の閾値よりも小さいか否かを判定したが、その逆の大きいか否かを判定する構成でも構わない。そして、符号化パラメータ生成部701は、第1コスト値が所定の閾値より大きいと判定した場合、符号化パラメータ生成部701は、通常よりも狭い動き検出の探索範囲を示すパラメータと、通常よりも少ない枚数を参照するようなパラメータとを生成する。また、フレームを符号化した際の処理量が小さいと判断するための閾値は設計者の意図に合わせて変更可能な値であることが好ましい。
また、カウンタ値に応じて、リニアに探索範囲を変更する構成としてもよい。具体的には、カウンタ値と探索範囲との関係を、(式1)、(式2)、(式3)のように設定しても構わない。ただし、“a”は定数とする。
(式1)(探索範囲)=clip(MIN,MAX,a×(カウンタ値))
(式2)a×(カウンタの値)<MINのとき、(探索範囲)=MIN
(式3)a×(カウンタの値)>MAXのとき、(探索範囲)=MAX
符号化部800は、復号部200が生成した復号画像データを、メモリ102に記録される第1コスト値と予測モードと符号化パラメータとを基にイントラ予測又はインター予測を適用することで予測画像データを生成し、生成した予測画像データと復号画像データとの差分を算出する。そして、符号化部800は、算出された差分データを直交変換し、量子化し、可変長符号化することで、動きベクトル等を含む符号化情報と符号化画像データとを含むBストリームを生成する。
以上のように、本実施の形態4によれば、イントラ予測が適用された符号化データのトランスコードを行う場合、復号処理過程において生成される復号情報を基に第1コスト値を生成し、当該第1コスト値から符号化する際に設定される符号化パラメータを生成し、生成した符号化パラメータを符号化時に利用することを特徴としている。この構成により、符号化時において、1フレーム内のMB毎に生成される第1コスト値を基に生成された符号化パラメータが使用できるため、符号化効率を向上させることが可能となる。
以上、本発明に係るトランスコード装置及びトランスコード方法について、実施の形態に基づいて説明したが、本発明は、これらの実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を当該実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、本発明の範囲内に含まれる。
なお、本発明においてAストリームは、イントラフレームのみを用いて符号化された符号化ストリームとしたが、この構成に限定されるものではなく、符号化ストリームの少なくとも一部にイントラ予測が適用された符号化ストリームでもよい。つまり、本発明に係るトランスコード装置は、少なくとも一部にイントラ予測が適用されたAストリームを、イントラ予測及びインター予測が適用されたBストリームに変換してもよい。
この場合、本発明に係るトランスコード装置は、Aストリームを復号する際に、イントラ予測が適用されたブロックの予測モードを取得し、符号化部で使用する構成となる。つまり、符号化部は、符号化対象のブロックについて予測モードが取得されている場合、メモリに格納されている予測モードを利用して符号化を行う。
また、復号部は、インター予測を復号するための動きベクトル検出部及び動き補償部を備えることになる。なお、この構成により、例えば、H.264/AVCからH.264/AVCへ符号化条件を変更してトランスコードを行う場合でも、トランスコード装置全体の処理量を低減することが可能となる。
なお、本発明は、イントラ予測を用いて符号化ストリームを生成可能なカメラ又はデジタルレコーダー等、符号化ストリームを記録可能なAV機器であればどのようなものでも適用することができる。
また、本発明は、上述したように、トランスコード装置及びトランスコード方法として実現できるだけではなく、本実施の形態のトランスコード方法をコンピュータに実行させるためのプログラムとして実現してもよい。また、当該プログラムを記録するコンピュータ読み取り可能なCD−ROMなどの記録媒体として実現してもよい。さらに、当該プログラムを示す情報、データ又は信号として実現してもよい。そして、これらプログラム、情報、データ及び信号は、インターネットなどの通信ネットワークを介して配信されてもよい。
また、本発明は、トランスコード装置を構成する構成要素の一部又は全部を、1個のシステムLSI(Large Scale Integration)から構成してもよい。システムLSIは、複数の構成部を1個のチップ上に集積して製造された超多機能LSIであり、具体的には、マイクロプロセッサ、ROM及びRAMなどを含んで構成されるコンピュータシステムである。
本発明は、少なくともイントラ予測が適用された符号化ストリームを、イントラ予測及びインター予測を用いた符号化ストリームにトランスコードする際に、再符号化にかかる処理を低減することができるという効果を奏し、デジタルカメラ、デジタルレコーダー/プレーヤーなどのAV機器に利用することができる。
100、500、700 トランスコード装置
101 予測モード取得部
102 メモリ
103、502 制御部
200 復号部
201 可変長復号部
202、305 逆量子化部
203、306 逆直交変換部
204、307 加算器
205、308 デブロッキングフィルタ部
206、312 イントラ予測部
300、600、600a、800 符号化部
301 減算器
302 直交変換部
303 量子化部
304 可変長符号化部
309 フレームメモリ
310 動きベクトル検出部
311 動き補償部
313 第3コスト値生成部
314 第2コスト値生成部
315、601、601a 予測方式選択部
320 インター予測部
400 記録媒体
501 第1コスト値生成部
701 符号化パラメータ生成部
本発明は、動画像に関する符号化データのトランスコードに関し、特に、H.264/AVC符号化方式に従って符号化された符号化データのトランスコードに関する。
H.264/AVC符号化方式の普及とともに、MPEG−2で符号化されているデジタル放送の番組をレコーダー等へ長時間記録する目的で、MPEG−2からH.264/AVCにトランスコードすることが行われるようになっている。
しかし、トランスコードする際は、MPEG−2で符号化された符号化ストリームを復号することで復号画像データを生成し、生成した復号画像データをH.264/AVC符号化形式に従って再符号化するという方式が行われている。この方式は、確実な方法ではあるが、復号と符号化との2つの処理を行わなければならないため、処理量が大きいという課題がある。
この課題に対し、MPEG−2で符号化された符号化データをトランスコードする際、符号化データ内の動きベクトルを再利用して、再符号化する際の処理量を削減する方法が示されている(例えば、特許文献1を参照)。
特開2006−295734号公報
しかしながら、上記従来技術では、イントラ予測が適用された符号化ストリームをトランスコードする際には、処理量を低減することができないという課題がある。
特許文献1で示される従来技術は、動きベクトルを利用する技術であるため、画面間符号化から画面間符号化のトランスコードを行うときにしか使用することができない。このため、H.264/AVC符号化方式などのイントラ予測を用いた符号化方式からイントラ予測及びインター予測を用いた符号化方式にトランスコードする際には適用できない。
そこで、本発明は、少なくともイントラ予測が適用された符号化ストリームからイントラ予測及びインター予測が適用された符号化ストリームにトランスコードを行う際に、処理量を低減することができるトランスコード装置及びトランスコード方法を提供することを目的とする。
上記目的を達成するために、本発明に係るトランスコード装置は、少なくとも一部にイントラ予測が適用された第1符号化ストリームを、イントラ予測及びインター予測が適用された第2符号化ストリームに変換するトランスコード装置であって、前記第1符号化ストリームを所定の単位毎に復号することで、復号画像データを生成する復号部と、前記復号部が前記第1符号化ストリームを復号する際に適用されたイントラ予測の予測モードを取得する予測モード取得部と、前記所定の単位毎にイントラ予測又はインター予測を適用して前記復号画像データを符号化することで、前記第2符号化ストリームを生成する符号化部と、前記符号化部がイントラ予測を適用する場合、前記予測モード取得部によって取得された予測モードを用いるように、前記符号化部を制御する制御部とを備える。
この構成により、符号化ストリームを復号する際に適用されたイントラ予測の予測モードを取得し、符号化部において再符号化する際に、当該予測モードを利用して符号化することで、符号化部においてイントラ予測の予測モードを決定するための処理を行う必要がなくなるので、処理量を低減することができる。
また、前記トランスコード装置は、さらに、前記復号部による復号過程において生成される復号情報に基づいて、イントラ予測を適用した場合の符号化効率を表す第1コスト値を前記所定の単位毎に生成する第1コスト値生成部を備え、前記制御部は、さらに、前記符号化部が前記復号画像データを符号化する際、前記所定の単位毎に前記第1コスト値に応じてイントラ予測又はインター予測を適用するように、前記符号化部を制御してもよい。
この構成により、復号処理過程において生成される復号情報を基に第1コスト値を生成するため、符号化時に第1コスト値を生成する必要がなく、トランスコード装置全体の処理量を減らすことが可能となる。例えば、符号化時にイントラ予測画像データを生成し、生成したイントラ予測画像データと復号画像データとの差分を算出する処理を省略することができる。
また、前記第1コスト値生成部は、イントラ予測を適用した場合の符号化効率が良いほど小さい値になる前記第1コスト値を生成し、前記制御部は、前記第1コスト値が第1閾値よりも小さい場合、イントラ予測を適用するように、前記符号化部を制御してもよい。
この構成により、符号化時において適用する予測方式を簡略的に選択することができるため、トランスコード装置全体の処理量を減らすことが可能となる。
また、前記符号化部は、前記所定の単位毎に前記復号画像データにインター予測を適用することで、インター予測画像データを生成するインター予測部と、前記インター予測画像データに基づいて、インター予測を適用した場合の符号化効率を表す第2コスト値を、前記所定の単位毎に生成する第2コスト値生成部と、前記予測モードを用いて、前記所定の単位毎にイントラ予測を適用することで、イントラ予測画像データを生成するイントラ予測部と、前記イントラ予測画像データに基づいて、イントラ予測を適用した場合の符号化効率を表す第3コスト値を前記所定の単位毎に生成する第3コスト値生成部とを備え、前記制御部は、前記第1コスト値が前記第1閾値以上である場合、前記第2コスト値と前記第3コスト値とを比較し、比較結果に基づいてイントラ予測又はインター予測を適用するように、前記符号化部を制御してもよい。
この構成により、符号化時に再度、イントラ予測を行った場合の符号化効率を表す第3コスト値を生成し、生成した第3コスト値に基づいて予測方式を選択することが可能となる。そのため、より最適な予測方式を適用し、トランスコードを行うことが可能となる。
また、前記制御部は、前記第1コスト値が前記第1閾値以上であると判定した後に、前記第2コスト値を生成し、かつ、当該第2コスト値と前記第3コスト値とを比較するように、前記符号化部を制御してもよい。
この構成により、符号化時において、イントラ予測の符号化効率を表す第1コスト値と閾値との比較を行った後に、インター予測を行った場合の符号化効率を表すコスト値を生成することが可能となるため、トランスコード動作の効率化を図ることが可能となる。例えば、第1コスト値が第1閾値より小さい場合には、インター予測を行うための動きベクトル検出処理及び動き補償処理を省略することができる。
また、前記制御部は、前記第2コスト値と前記第3コスト値とを比較し、前記第2コスト値が表す符号化効率よりも前記第3コスト値が表す符号化効率が良い場合に、イントラ予測を適用するように、前記符号化部を制御してもよい。
この構成により、トランスコード中に符号化を行う際、より最適な予測方式を適用して復号画像データを符号化することが可能となる。
また、前記トランスコード装置は、さらに、前記第1コスト値に基づいて、動き検出の探索範囲と参照画像の枚数との少なくとも1つを設定するための符号化パラメータを生成する符号化パラメータ生成部を備えてもよい。
この構成により、符号化時において、1フレーム内のMB毎に生成される第1コスト値を基に生成された符号化パラメータが使用できるため、符号化効率を向上させることが可能となる。
また、前記符号化パラメータ生成部は、前記第1コスト値と前記第1閾値との比較結果を計数し、計数結果に従って前記符号化パラメータを生成してもよい。
この構成により、符号化時において、1フレーム内のMB毎に生成される第1コスト値を基に生成された符号化パラメータが使用できるため、さらに符号化効率を向上させることが可能となる。
また、前記符号化部は、前記予測モードを用いて、前記所定の単位毎にイントラ予測を適用することで、イントラ予測画像データを生成するイントラ予測部と、前記イントラ予測画像データに基づいて、イントラ予測を適用した場合の符号化効率が良いほど小さい値となる第3コスト値を前記所定の単位毎に生成する第3コスト値生成部と、前記所定の単位毎に前記復号画像データにインター予測を適用することで、インター予測画像データを生成するインター予測部と、前記インター予測画像データに基づいて、インター予測を適用した場合の符号化効率を表す第2コスト値を、前記所定の単位毎に生成する第2コスト値生成部とを備え、前記制御部は、前記第3コスト値が第2閾値以上であると判定した後に、前記インター予測画像データと前記第2コスト値とを生成するように、前記符号化部を制御してもよい。
また、本発明は、上記トランスコード装置を備えるデジタルレコーダーとしても実現することができる。
また、本発明は、トランスコード装置として実現できるだけではなく、当該トランスコード装置を構成する処理部をステップとする方法として実現することもできる。
例えば、本発明に係るトランスコード方法は、少なくとも一部にイントラ予測が適用された第1符号化ストリームを、イントラ予測及びインター予測が適用された第2符号化ストリームに変換するトランスコード方法であって、前記第1符号化ストリームを所定の単位毎に復号することで、復号画像データを生成する復号ステップと、前記復号ステップにおいて前記第1符号化ストリームを復号する際に適用されたイントラ予測の予測モードを取得する予測モード取得ステップと、前記所定の単位毎にイントラ予測又はインター予測を適用して前記復号画像データを符号化することで、前記第2符号化ストリームを生成する符号化ステップとを含み、前記符号化ステップでは、イントラ予測を適用する場合、前記予測モード取得ステップにおいて取得した予測モードを用いる。
また、これらステップをコンピュータに実行させるプログラムとして実現してもよい。さらに、当該プログラムを記録したコンピュータ読み取り可能なCD−ROM(Compact Disc−Read Only Memory)などの記録媒体、並びに、当該プログラムを示す情報、データ又は信号として実現してもよい。そして、それらプログラム、情報、データ及び信号は、インターネットなどの通信ネットワークを介して配信してもよい。
本発明によれば、少なくともイントラ予測が適用された符号化ストリームから、イントラ予測及びインター予測が適用された符号化ストリームにトランスコードを行う際に、再符号化する際の処理量を低減することができる。
図1は、本発明の実施の形態1に係るトランスコード装置の構成を示すブロック図である。 図2は、H.264/AVC符号化規格における4×4サブブロックに適用される予測モードの種類を示す図である。 図3は、H.264/AVC符号化規格における16×16サブブロックに適用される予測モードの種類を示す図である。 図4は、H.264/AVC符号化規格におけるマクロブロックとサブブロックとの関係を示す図である。 図5は、H.264/AVC符号化規格におけるサブブロックと予測モードとを対応付けたテーブルの一例を示す図である。 図6は、本発明の実施の形態1に係る復号部の具体的な構成を示すブロック図である。 図7は、本発明の実施の形態1に係る符号化部の具体的な構成を示すブロック図である。 図8は、本発明の実施の形態1に係るトランスコード装置全体の具体的動作を示すフローチャートである。 図9は、本発明の実施の形態1に係る復号部の具体的動作を示すフローチャートである。 図10は、本発明の実施の形態1に係る符号化部の具体的動作を示すフローチャートである。 図11は、本発明の実施の形態2に係る符号化部の具体的動作を示すフローチャートである。 図12は、本発明の実施の形態3に係るトランスコード装置の構成を示すブロック図である。 図13は、本発明の実施の形態3に係る復号部の具体的な構成を示すブロック図である。 図14は、H.264/AVC符号化規格におけるサブブロックと予測モードと第1コスト値とを対応付けたテーブルの一例を示す図である。 図15は、本発明の実施の形態3に係る符号化部の具体的な構成を示すブロック図である。 図16は、本発明の実施の形態3に係る符号化部の具体的動作を示すフローチャートである。 図17は、本発明の実施の形態3に係る符号化部の変形例の構成を示すブロック図である。 図18は、本発明の実施の形態4に係るトランスコード装置の構成を示すブロック図である。
以下では、本発明に係るトランスコード装置及びトランスコード方法について、実施の形態に基づいて図面を参照しながら詳細に説明する。
(実施の形態1)
実施の形態1に係るトランスコード装置は、少なくとも一部にイントラ予測が適用された第1符号化ストリームを、イントラ予測及びインター予測が適用された第2符号化ストリームに変換するトランスコード装置であって、第1符号化ストリームを所定の単位毎に復号することで、復号画像データを生成する復号部と、復号部が前記第1符号化ストリームを復号する際に適用されたイントラ予測の予測モードを取得する予測モード取得部と、所定の単位毎にイントラ予測又はインター予測を適用して復号画像データを符号化することで、第2符号化ストリームを生成する符号化部と、符号化部がイントラ予測を適用する場合、予測モード取得部によって取得された予測モードを用いるように、符号化部を制御する制御部とを備えることを特徴とする。
図1は、実施の形態1に係るトランスコード装置100の構成を示すブロック図である。
図1に示すようにトランスコード装置100は、予測モード取得部101と、メモリ102と、制御部103と、復号部200と、符号化部300とを備える。トランスコード装置100は、記録媒体400からAストリームを読み出し、読み出したAストリームを復号部200にて復号画像データに復号し、符号化部300にて当該復号画像データをBストリームに再符号化する。
ここで、記録媒体400は、例えば、図1に示すようにトランスコード装置100の外部に設けられたBD(Blu−ray Disc)などの記録媒体である。また、記録媒体400は、トランスコード装置100が内部に備えるHDD(Hard Disk Drive)などの記録媒体であってもよい。
なお、Aストリームは、トランスコード装置100が記録媒体400から読み出す第1符号化ストリームの一例であり、一例として、イントラ予測のみが適用されて符号化されたストリームである。また、Bストリームは、トランスコード装置100から出力される第2符号化ストリームの一例であり、イントラ予測及びインター予測の少なくとも一方が適用されて符号化されたストリームである。
また、復号部200と符号化部300とにおいては、16×16画素で構成されるマクロブロック(以下、MBと称す)単位、又は、当該MBをさらに細分化したサブブロック単位毎に処理を行う構成とする。なお、通常は、輝度信号及び色差信号から構成される入力信号がトランスコード装置100において処理されるが、説明の便宜上、以下の実施の形態では輝度信号のみの説明を行う。
復号部200は、記録媒体400から読み出したAストリームを所定の単位毎に復号することで、復号画像データを生成する。具体的な構成については後で記載する。ここで、所定の単位は、MB、又は、当該復号部200内の各処理毎に設定される、MBを細分化したサブブロックを示す。
また、復号部200は、Aストリームを復号するときに、当該Aストリームからシーケンス全体の情報(Sequence Parameter Set等)と、ピクチャ全体の情報(Picture Parameter Set等)と、スライス情報(Slice header)と、輝度情報を含む1つのMBに対応する符号化データであるMB情報とを抽出する。復号部200は、抽出した情報に基づいて入力されたAストリームを復号することで、復号画像データを生成する。
符号化部300は、所定の単位毎にイントラ予測又はインター予測を適用して復号画像データを符号化することで、Bストリームを生成する。
具体的には、符号化部300は、復号部200が生成した復号画像データを、イントラ予測又はインター予測を適用して予測画像を生成し、生成した予測画像と復号画像データとの差分を算出する。そして、符号化部300は、算出された差分データを直交変換し、量子化し、可変長符号化を行うことで、動きベクトル等を含む符号化情報と符号化画像とを含むBストリームを生成する。実施の形態1に係る符号化部300は、イントラ予測を適用する場合、予測モード取得部101において取得される予測モードを利用し、符号化処理を行うことを特徴とする。
予測モード取得部101は、復号部200がAストリームを復号する際に適用されたイントラ予測の予測モードを取得する。具体的には、予測モード取得部101は、復号部200が記録媒体400から読み出したAストリームを可変長復号した際に生成されるMB情報を基に、イントラ予測が適用されたMBの予測モードを所定の単位毎に取得する。ここで、イントラ予測とは、画面内の符号化済み画素を用いて、MB内の画素値を予測する方法である。また、イントラ予測の予測モードとは、イントラ予測を適用する場合の予測方向を示している。
なお、所定の単位とは、輝度信号の場合、16×16画素で構成される16×16サブブロック、8×8画素で構成される8×8サブブロック、及び、4×4画素で構成される4×4サブブロックである。
また、予測モードは、4×4サブブロック及び8×8サブブロックに対し、それぞれ9種類の予測モードが用意されている。具体的には、4×4サブブロックに対しては、図2に示すように予測モード0から予測モード8までの9種類の予測モードが用意されている。なお、8×8サブブロックに対しては、図2に示す予測モードを8×8画素に拡張したものとなっている。また、予測モードは、16×16サブブロックに対し、4種類の予測モードが用意されている。具体的には、16×16サブブロックに対しては、図3に示すように予測モード0から予測モード3までの4種類の予測モードが用意されている。
メモリ102は、フラッシュメモリ、DRAM、強誘電体メモリ、HDD等の記録可能な手段で構成される。メモリ102は、制御部103による制御に基づいて、復号部200から出力される復号画像データと、予測モード取得部101から取得されるMB毎に取得した予測モードとの記録及び読み出しが可能な構成となっている。
制御部103は、トランスコード装置100全体を制御する。例えば、制御部103は、復号部200及び符号化部300において、各処理を行うタイミングの制御を行う。また、制御部103は、メモリ102に復号画像データと予測モードとを記録及び読み出しを行う。なお、制御部103は、復号画像データと予測モードとを対応付けて管理するものとする。
例えば、制御部103は、メモリ102に書き込む際には、図4に示すように、4×4サブブロックを番号によって識別可能とした場合、図5に示すようにサブブロックの番号と予測モードとを対応付けて書き込みを行うものとする。つまり、1つのMBにおいて4×4サブブロック毎に予測モードが設定されている場合、16個のブロック番号と予測モードとが対応付けられることになる。
なお、図5においては、4×4サブブロックについて記載したが、例えば、1つのMBにおいて8×8サブブロック毎に予測モードが設定されている場合は、4個のブロック番号と予測モードとが対応付けられることになる。なお、1つのMB(すなわち、16×16サブブロック)に予測モードが設定されている場合も同様に管理することが可能である。
なお、予測モードの管理方法は上記の方法に限定されるものではなく、例えば、メモリアドレスをブロックの番号とし、当該メモリアドレスに対応するように予測モードを記憶する等、ブロック番号と予測モードとが対応付けられる方法であれば、どのようなものを使用しても構わない。
また、制御部103は、半導体素子等で実現可能であり、ハードウェアのみで構成してもよく、あるいは、ハードウェアとソフトウェアとを組み合わせることにより実現しても構わない。また、制御部103は、複数のデバイスで構成しても構わない。なお、制御部103をソフトウェアで実装する場合は、マイクロプロセッサを用いることによって実現可能となる。
以下、復号部200の具体的な構成に関して、図面を参照しながら説明する。
図6は、本発明の実施の形態1に係る復号部200の具体的な構成を示すブロック図である。
復号部200は、可変長復号部201と、逆量子化部202と、逆直交変換部203と、加算器204と、デブロッキングフィルタ部205と、イントラ予測部206とを備える。
可変長復号部201は、可変長符号化された符号化ストリームをMB毎に可変長復号することにより、当該MBに対応する量子化係数(輝度情報)を含む上記MB情報を生成する。可変長復号部201は、生成した量子化係数を逆量子化部202に出力する。
MB情報は、当該MBにイントラ予測が使用されている場合、予測モードを規定する予測モード情報を含む。予測モード取得部101は、MB情報に含まれる予測モード情報を取得することで、当該MBに適用されている予測モードを取得することが可能となる。例えば、可変長復号部201が図4に示す4×4サブブロック毎にイントラ予測が適用されたMBを可変長復号することによって、予測モード取得部101は、16個の予測モードを取得する。
逆量子化部202は、可変長復号部201から出力される量子化係数を逆量子化することで、DCT(Discrete Cosine Transform)係数に復元し、復元されたDCT係数を逆直交変換部203に出力する。
逆直交変換部203は、逆量子化部202から出力されるDCT係数を逆直交変換することで残差画像データに復元し、復元された残差画像データを加算器204に出力する。
加算器204は、逆直交変換部203から出力される残差画像データと、イントラ予測部206から出力される予測画像データとを加算することで復号画像データを生成し、生成した復号画像データをデブロッキングフィルタ部205に出力する。
デブロッキングフィルタ部205は、加算器204から出力される復号画像データをデブロッキングフィルタ処理し、外部装置(ここでは、メモリ102)に出力する。
イントラ予測部206は、可変長復号部201から出力されるMB情報を基に、イントラ予測を行うために必要となる予測モードを取得する。そして、イントラ予測部206は、取得した予測モードを基に予測画像データを生成し、生成した予測画像データを加算器204に出力する。
なお、予測モードを取得できない場合は、イントラ予測部206は、デブロッキングフィルタ部205から出力される復号画像データに対してイントラ予測を行い、予測画像データを生成してもよい。また、イントラ予測部206は、予測モード取得部101で取得した予測モードを利用してもよい。
以下、符号化部300の具体的な構成に関して、図面を参照しながら説明する。
図7は、本発明の実施の形態1に係る符号化部300の具体的な構成を示すブロック図である。
符号化部300は、減算器301と、直交変換部302と、量子化部303と、可変長符号化部304と、逆量子化部305と、逆直交変換部306と、加算器307と、デブロッキングフィルタ部308と、フレームメモリ309と、動きベクトル検出部310と、動き補償部311と、イントラ予測部312と、第3コスト値生成部313と、第2コスト値生成部314と、予測方式選択部315とを備える。なお、動きベクトル検出部310と動き補償部311とは、インター予測部320に含まれる。
減算器301は、メモリ102から読み出された復号画像データと、予測方式選択部315から出力される、イントラ予測部312又は動き補償部311にて生成された予測画像データとの差分をMB毎に算出することで、残差画像データを生成する。生成された残差画像データは、直交変換部302に出力される。
直交変換部302は、減算器301から出力される残差画像データを直交変換することでDCT係数を生成し、生成したDCT係数を量子化部303に出力する。
量子化部303は、直交変換部302から出力されるDCT係数を量子化することで量子化係数を生成し、生成した量子化係数を可変長符号化部304及び逆量子化部305に出力する。
可変長符号化部304は、量子化部303から出力される量子化係数を可変長符号化することにより、符号化画像データを生成し、生成した符号化画像データをBストリームとして外部装置に出力する。
逆量子化部305は、量子化部303から出力される量子化係数を逆量子化することでDCT係数に復元し、復元されたDCT係数を逆直交変換部306に出力する。
逆直交変換部306は、逆量子化部305から出力されるDCT係数を逆直交変換することで残差画像データに復元し、復元された残差画像データを加算器307に出力する。
加算器307は、逆直交変換部306から出力された残差画像データと、予測方式選択部315から出力される、イントラ予測部312又は動き補償部311にて生成された予測画像データとを加算することで復号画像データを生成し、デブロッキングフィルタ部308及びイントラ予測部312に出力する。
デブロッキングフィルタ部308は、加算器307から出力される復号画像データのデブロッキングフィルタ処理を行い、デブロッキングフィルタ処理された復号画像データをフレームメモリ309に出力する。
フレームメモリ309は、デブロッキングフィルタ部308から出力される復号画像データを蓄積する。フレームメモリ309は、フラッシュメモリ、DRAM、強誘電体メモリ等の記録可能な手段で構成される。
動きベクトル検出部310は、現在符号化対象であるMBを基に、フレームメモリ309に蓄積されている復号画像データに対する動きベクトルを検出する。なお、動きベクトル検出部310において処理されるMBの処理サイズは、例えば、H.264/AVC規格であれば、16×16、16×8、8×16、8×8、8×4、4×8及び4×4画素サイズのサブブロックが7種類規定されている。動きベクトル検出部310は、この7種類からMB毎に1つを選択する。
動き補償部311は、動きベクトル検出部310によって検出した動きベクトルを基に、フレームメモリ309に蓄積される復号画像データに対して動き補償を行った予測画像データを生成する。
なお、図7に示すようにインター予測部320は、動きベクトル検出部310と動き補償部311とを備えることで、復号画像データのMB毎にインター予測を適用することで、インター予測画像を予測画像データとして生成する。
イントラ予測部312は、メモリ102に蓄積される符号化対象であるMBに対応付けされた予測モードを基に、加算器307から出力される復号画像データに対してイントラ予測を適用して、予測画像データを生成する。言い換えると、イントラ予測部312は、予測モード取得部101によって取得された予測モードを用いて、復号画像データのMB毎にイントラ予測を適用することで、イントラ予測画像を予測画像データとして生成する。
第3コスト値生成部313は、イントラ予測部312から出力される予測画像データと、復号画像データとの差分絶対値和(SAD:Sum of Absolute Difference)を第3コスト値として算出し、算出した第3コスト値を予測方式選択部315に出力する。したがって、第3コスト値が小さいほど、SADが小さく、すなわち、予測画像データと復号画像とが類似しており、符号化効率が良くなることを示している。つまり、第3コスト値生成部313は、イントラ予測画像データに基づいて、イントラ予測を適用した場合の符号化効率が良いほど値が小さくなる第3コスト値を、復号画像データのMB毎に生成する。
第2コスト値生成部314は、動き補償部311から出力される動き補償を行った予測画像データと、復号画像データとのSADを第2コスト値として算出し、算出した第2コスト値を予測方式選択部315に出力する。第2コスト値も、符号化効率が良いほど、値が小さくなる。
なお、第3コスト値及び第2コスト値を算出する方法はSADに限定されるものではなく、MAD(Mean absolute Difference)等、符号化効率を示す値であればどのようなものを利用しても構わない。また、第3コスト値生成部313及び第2コスト値生成部314は、符号化効率が良いほど値が大きくなるようなコスト値を、第3コスト値及び第2コスト値として生成してもよい。
予測方式選択部315は、第3コスト値生成部313及び第2コスト値生成部314から入力される第3コスト値と第2コスト値とに基づいて、イントラ予測部312及び動き補償部311のうち一方から出力される予測画像データを減算器301に出力する。つまり、予測方式選択部315は、イントラ予測を用いた場合の符号化効率を示す第3コスト値と、インター予測を用いた場合の符号化効率を示す第2コスト値とを比較し、比較結果に基づいてイントラ予測画像及びインター予測画像のいずれか一方を選択し、選択した予測画像データを減算器301と加算器307とに出力する。
具体的には、第3コスト値が示す符号化効率が、第2コスト値が示す符号化効率より高い場合は、予測方式選択部315は、イントラ予測画像を選択する。逆に、第3コスト値が示す符号化効率が、第2コスト値が示す符号化効率より低い場合は、予測方式選択部315は、インター予測画像を選択する。本実施の形態では、第3コスト値及び第2コスト値は、符号化効率が良いほど小さい値となるので、例えば、第3コスト値が第2コスト値より小さい場合に、予測方式選択部315は、イントラ予測画像を選択する。
以下、トランスコード装置100の具体的動作に関して、図面を参照しながら説明する。
図8は、本発明の実施の形態1に係るトランスコード装置100全体の具体的動作を示すフローチャートである。
まず、トランスコード装置100は、記録媒体400から符号化ストリーム(Aストリーム)を読み出す(S1001)。
次に、復号部200は、読み出した符号化ストリームをMB単位で復号する。復号を行う際に、予測モード取得部101は、処理しているMBの予測モードを取得する(S1002)。
復号部200は、復号処理によって生成される復号画像データをメモリ102に記録し、予測モード取得部101は、予測モードをメモリ102に記録する。ここで、制御部103は、復号部200及び予測モード取得部101を、復号画像データと予測モードとをMB毎に記録するよう制御する(S1003)。例えば、図5に示すように、予測モードは、サブブロック毎に対応付けてメモリ102に記録される。
そして、符号化部300は、メモリ102からMB毎に管理された復号画像データと予測モードとを、メモリ102から読み出す(S1004)。
次に、符号化部300は、読み出した復号画像データの符号化を行う(S1005)。このとき、符号化部300は、符号化処理においてイントラ予測を用いる場合は、読み出した予測モードを使用する。詳細な動作に関しては後で記述する。
制御部103は、符号化部300において処理しているMBが最後のMBであるか否かを判定する(S1006)。もし、最後のMBである場合、そのまま動作を終了し、まだ処理すべきMBが残っている場合は、ステップS1001に戻る。
以上に示すように、本実施の形態に係るトランスコード装置100は、MB毎に符号化ストリームを復号し、再符号化する。なお、メモリ102の容量が充分に確保できる場合などは、スライス又はピクチャ毎に符号化ストリームを復号し、再符号化してもよい。つまり、例えば、復号部200が1ピクチャ分の符号化ストリームを復号することで、1ピクチャ分の復号画像データをメモリ102に記録した後、符号化部300が1ピクチャ分の復号画像データを符号化してもよい。
以下、復号部200の具体的動作に関して、図面を参照しながら説明する。
図9は、本発明の実施の形態1に係る復号部200の具体的動作を示すフローチャートである。なお、図9に示すフローチャートは、図8のステップS1001〜S1003の処理の一例を詳細に示す図である。
まず、復号部200は、記録媒体400からAストリームを読み出す(S2001)。
次に、可変長復号部201は、MB毎にAストリームを可変長復号することで、量子化係数を生成する(S2002)。
次に、逆量子化部202及び逆直交変換部203は、生成された量子化係数に対して逆量子化及び逆直交変換を行うことで、残差画像データを生成する(S2003)。
そして、加算器204は、逆量子化部202及び逆直交変換部203によって生成された残差画像データに、前もってイントラ予測部206において生成した予測画像データを加算することで、復号画像データを生成する(S2004)。
次に、デブロッキングフィルタ部205は、生成された復号画像データに対してデブロッキングフィルタ処理を行う(S2005)。
一方、予測モード取得部101は、可変長復号部201がAストリームを可変長復号した際に生成されるMB情報から処理対象であるMBの予測モードを取得する(S2006)。なお、Aストリームがイントラ予測だけではなく、インター予測も適用されたストリームである場合、予測モード取得部101は、処理対象であるMBが、イントラ予測が適用されたMBである場合に、予測モードを取得する。
そして、制御部103は、デブロッキングフィルタ部205及び予測モード取得部101を制御することで、デブロッキングフィルタ処理が行われた復号画像データと、取得した予測モードとをメモリ102に対応付けして記録する(S2007)。なお、デブロッキングフィルタ処理がなされる前の復号画像データと、取得した予測モードとを対応付けして記録する構成にしても構わない。
なお、図9に示すフローチャートでは、予測モード取得部101が行う予測モードの取得処理(S2006)と、逆量子化部202からデブロッキングフィルタ部205が行う復号処理(S2003〜S2005)とを並列処理で行っているが、シーケンシャルに行ってもよい。
以下、符号化部300の具体的動作に関して、図面を参照しながら説明する。
図10は、本発明の実施の形態1に係る符号化部300の具体的動作を示すフローチャートである。なお、図10に示すフローチャートは、図8のステップS1004及びS1005の処理の一例を詳細に示す図である。
まず、符号化部300は、メモリ102から復号画像データをMB毎に読み出し、さらに、当該MBに対応付けされた予測モードを読み出す(S3001)。
次に、動きベクトル検出部310は、フレームメモリ309に蓄積された復号画像データを基に、制御部103において設定されるブロックサイズ毎に動きベクトルを検出し、動き補償部311に出力する(S3002)。
次に、動き補償部311は、動きベクトル検出部310が検出した動きベクトルと、フレームメモリ309に蓄積される復号画像データとを基に動き補償を行うことで、動き補償された予測画像データ、すなわち、インター予測画像データを生成する。そして、動き補償部311は、生成したインター予測画像データを予測方式選択部315と第2コスト値生成部314とに出力する(S3003)。
第2コスト値生成部314は、インター予測画像データを基に第2コスト値を生成し、生成した第2コスト値を予測方式選択部315に出力する(S3004)。
一方、イントラ予測部312は、加算器307から出力される復号画像データのうち、処理対象であるMB又はMBを細分化したサブブロックに隣接する画素情報を用いて、読み出した予測モードを基にイントラ予測を行うことで、イントラ予測画像データを生成する。そして、イントラ予測部312は、生成したイントラ予測画像データを第3コスト値生成部313と予測方式選択部315とに出力する(S3005)。
第3コスト値生成部313は、イントラ予測画像データを基に、第3コスト値を生成し、生成した第3コスト値を予測方式選択部315に出力する(S3006)。
予測方式選択部315は、第3コスト値と第2コスト値とに基づいて、減算器301及び加算器307に出力する予測画像データを選択する(S3007)。具体的には、予測方式選択部315は、第2コスト値が表す符号化効率よりも第3コスト値が表す符号化効率が良い場合、すなわち、第3コスト値が第2コスト値よりも小さい場合、イントラ予測画像データを選択する。
さらに、減算器301は、読み出した復号画像データと、予測方式選択部315が出力する予測画像データとの差分を算出することで、残差画像データを生成する(S3008)。
次に、直交変換部302及び量子化部303は、生成された残差画像データに直交変換及び量子化を行うことで、量子化係数を生成する(S3009)。
さらに、可変長符号化部304は、生成された量子化係数を可変長符号化することで、符号化された符号化データを生成し、生成した符号化データをBストリームの一部として出力する(S3010)。
一方、逆量子化部305及び逆直交変換部306は、量子化部303によって生成された量子化係数に、逆量子化及び逆直交変換を行うことで、残差画像データを復元し、復元した残差画像データを加算器307に出力する(S3011)。
次に、加算器307は、逆直交変換部306によって復元された残差画像データと、予測方式選択部315から出力される予測画像データとを加算することで、復号画像データを復元する、そして、デブロッキングフィルタ部308は、復元された復号画像データに対し、デブロッキングフィルタ処理を行い、フィルタ処理後の復号画像データをフレームメモリ309に出力する(S3012)。なお、加算器307は、イントラ予測部312にも復元された復号画像データを出力する。
そして、フレームメモリ309は、入力される復号画像データを蓄積する(S3013)。
以上のように、本実施の形態に係るトランスコード装置100によれば、イントラ予測が適用された符号化データのトランスコードを行う場合、復号部200が可変長復号をする際に生成される、処理対象となるMB又は当該MBを細分化したサブブロック毎に適用された予測モードを予測モード取得部101が取得し、符号化時に利用することを特徴とする。この構成により、符号化時において、イントラ予測を用いる際に予測モードを算出する必要がなくなるため、トランスコード装置100全体の処理量を低減することが可能となる。
なお、図10に示すフローチャートでは、イントラ予測(S3005)及び第3コスト値の生成処理(S3006)と、インター予測(S3002及びS3003)及び第2コスト値の生成処理(S3004)とを並列処理で行っているが、シーケンシャルに行ってもよい。また、可変長符号化(S3010)と、予測画像データを生成する際に参照される参照画像の生成処理(S3011〜S3013)とを並列処理で行っているが、シーケンシャルに行ってもよい。
なお、従来のように、予測モード取得部101によって取得された予測モードを符号化部300が利用しない場合は、符号化部300のイントラ予測部312は、復号画像データと、加算器307から入力される復元された復号画像データとを利用して、イントラ予測の予測モードを決定する。すなわち、イントラ予測部312は、例えば、図2に示す9種類の予測モードのそれぞれに対応するイントラ予測画像を生成する。そして、イントラ予測部312は、生成した9種類のイントラ予測画像の中から最も符号化効率の良い画像を、イントラ予測画像として予測方式選択部315に出力する。
このように、従来では、イントラ予測部312が予測モードを決定するための処理が必要であった。これに対して、本実施の形態に係るトランスコード装置100によれば、イントラ予測部312は、復号部200によって生成された予測モードを利用するので、予測モードを決定するための処理を行う必要がなく、処理量を低減することができる。
(実施の形態2)
実施の形態1におけるトランスコード装置100は、復号時に復号対象であるMBから予測モードを取得し、当該MBの符号化時に利用する。このため、トランスコード装置100全体の処理量を削減することができる。しかし、符号化時において、予測方式選択部315がイントラ予測を選択した場合であっても、イントラ予測又はインター予測を選択するために第2コスト値を生成する必要がある。そこで、本実施の形態2においては、第2コスト値を生成せずとも、第3コスト値のみを用い、イントラ予測又はインター予測を簡略的に選択することで、トランスコード装置100全体の処理量をさらに削減している。
以下、本発明の実施の形態2におけるトランスコード装置を、図面を参照しながら説明する。なお、実施の形態2におけるトランスコード装置の構成は、実施の形態1におけるトランスコード装置100の構成と同様であるため、説明を省略する。また、実施の形態2に係る復号部及び予測モード取得部の動作についても、実施の形態1に係る復号部200及び予測モード取得部101の動作と同様であるので、説明を省略する。
以下、実施の形態2における符号化部300の予測方式の選択動作について図面を参照しながら説明する。
図11は、本発明の実施の形態2に係る符号化部300の具体的動作を示すフローチャートである。具体的には、図11は、第3コスト値によって簡略的にイントラ予測及びインター予測の選択を行う動作を示す。
符号化部300は、メモリ102から復号画像データをMB毎に読み出す。その際、符号化部300は、復号画像データに含まれるMB、又は、当該MBを細分化したサブブロック毎に対応付けされた予測モードも同時に読み出す(S4001)。
次に、イントラ予測部312は、加算器307から出力される復号画像データのうち、処理対象であるMBに隣接する画素情報を用いて、読み出した予測モードに従ってイントラ予測を適用することで、イントラ予測画像データを生成する。そして、イントラ予測部312は、生成したイントラ予測画像を第3コスト値生成部313と予測方式選択部315とに出力する(S4002)。
第3コスト値生成部313は、イントラ予測画像データを基に、第3コスト値を生成し、生成した第3コスト値を予測方式選択部315に出力する(S4003)。
そして、制御部103は、第3コスト値が所定の閾値よりも小さいか否かを判定する(S4004)。所定の閾値よりも小さい場合は(S4004でYES)、制御部103は、予測方式選択部315にイントラ予測画像を選択させるための制御を行う。また、所定の閾値よりも大きい場合は(S4004でNO)、制御部103は、予測方式選択部315にインター予測画像を選択させるための制御を行う。なお、所定の閾値は、例えば、H.264/AVCの規格上の制限値から設定される値でも構わないし、復号処理過程において生成される復号情報を基に設定される値であっても構わない。
第3コスト値が所定の閾値よりも小さいと判定された場合(S4004でYES)、制御部103は、動きベクトル検出部310と動き補償部311とにおいて処理しないよう制御を行う(S4005)。つまり、制御部103は、動きベクトル検出部310と動き補償部311との起動を抑制する。
次に、予測方式選択部315は、イントラ予測部312によって生成されたイントラ予測画像データを減算器301と加算器307とに出力する(S4006)。
一方、第3コスト値が所定の閾値よりも大きいと判定された場合(S4004でNO)、動きベクトル検出部310は、フレームメモリ309に蓄積された復号画像データを基に、動きベクトルを検出し、検出した動きベクトルを動き補償部311に出力する(S4007)。
そして、動き補償部311は、動きベクトル検出部310が検出した動きベクトルと、フレームメモリ309に蓄積される復号画像データとを基に、インター予測を行う。そして、動き補償部311は、動き補償された予測画像データ(インター予測画像データ)を生成し、生成したインター予測画像データを予測方式選択部315と第2コスト値生成部314とに出力する(S4008)。
次に、第2コスト値生成部314は、動き補償された予測画像データを基に第2コスト値を生成し、生成した第2コスト値を予測方式選択部315に出力する(S4009)。
さらに、予測方式選択部315は、第3コスト値と第2コスト値とを基に、減算器301と加算器307とに出力する予測画像データを選択し、選択した予測画像データを減算器301と加算器307とに出力する(S4010)。
そして、減算器301は、予測画像データと復号画像データとを基に残差画像データを生成する。そして、符号化部300は、当該残差画像データを基に残りの符号化処理を行う(S4011)。具体的には、符号化部300は、直交変換、量子化、可変長符号化、及び、次の符号化処理に用いられる参照画像の生成処理(逆量子化、逆直交変換、加算)を行う。
以上のように、本実施の形態に係るトランスコード装置によれば、制御部103は、第3コスト値が所定の閾値以上であるか否かを判定し、第3コスト値が閾値以上であると判定した後に、インター予測画像と第2コスト値とを生成するように、符号化部300を制御する。具体的には、本実施の形態に係るトランスコード装置は、イントラ予測が適用された符号化データのトランスコードを行う場合、符号化部300において符号化対象のMBに適用する予測方式を選択する際、インター予測を行う前に、イントラ予測の符号化効率を示す第3コスト値を生成する。そして、第3コスト値が所定の閾値よりも小さい場合は、インター予測に関わる処理を行わないことで、インター予測に関わる処理量を低減することができる。
なお、特に、動きベクトル検出部310における処理量は、非常に大きい。そのため、必要に応じて動きベクトル検出部310を起動することで、トランスコード装置100の消費電力を削減することが可能となり、本実施の形態に係るトランスコード装置は非常に有用である。
(実施の形態3)
上述したように、トランスコード装置100の符号化時において第3コスト値を生成するためには、加算器307から出力される復号画像データのうち、処理対象であるMBに隣接する画素情報を用いて、読み出した予測モードでイントラ予測を行い、イントラ予測画像データを生成する必要がある。そこで、本実施の形態3においては、復号時の復号処理過程において生成される復号情報を基に、イントラ予測を適用した場合の符号化効率を表す第1コスト値を生成し、符号化部に出力することで、トランスコード装置100全体の処理量をさらに削減している。
以下、本実施の形態3におけるトランスコード装置を、図面を参照しながら説明する。なお、実施の形態3において実施の形態1と同様の部分は同じ番号を付与し、その説明を省略する。
図12は、本発明の実施の形態3に係るトランスコード装置500の構成を示すブロック図である。トランスコード装置500は、実施の形態1及び2に係るトランスコード装置100と比べて、第1コスト値生成部501をさらに備え、符号化部300の代わりに符号化部600を備え、さらに、制御部103の代わりに制御部502を備える点が異なっている。以下では、実施の形態1と同じ点は説明を省略し、異なる点を中心に説明する。
第1コスト値生成部501は、復号部200の復号処理過程において生成される復号情報を用いて、イントラ予測を行った場合の符号化効率を表す第1コスト値を所定の単位毎に(例えば、MB毎)生成する。復号情報は、復号部200内で可変長復号した際に生成される量子化係数であってもよく、あるいは、当該量子化係数を逆量子化し、逆直交変換することで生成される残差画像データであってもよい。
例えば、第1コスト値生成部501は、量子化係数の値、又は、残差画像データの画素値をサブブロック毎に加算することで、サブブロック毎の加算値を第1コスト値として生成する。なお、残差画像データの画素値の和は、実施の形態1で示した復号画像データとイントラ予測画像データとの差分絶対値和(第3コスト値)に相当する。
符号化部600が、当該第1コスト値に相当する第3コスト値を生成するためには、イントラ予測画像データを生成し、生成したイントラ予測画像データと復号画像データとの差分絶対値和を算出する必要がある。本実施の形態に係るトランスコード装置500によれば、イントラ予測画像データと復号画像データとの差分絶対値和の算出処理を省略することが可能となるので、符号化部600の処理量を低減することができる。
ここで、図13は、本発明の実施の形態3に係る復号部200の具体的な構成を示すブロック図である。
図13に示すように、第1コスト値生成部501は、逆直交変換部203から出力される残差画像データに基づいて、第1コスト値を生成する。なお、上述したように、第1コスト値生成部501は、可変長復号部201から出力される量子化係数、又は、逆量子化部202から出力される逆量子化後の変換係数に基づいて、第1コスト値を生成してもよい。
制御部502は、実施の形態1及び2における制御部103の機能に加え、メモリ102に、復号画像データと予測モードと第1コスト値とをMB毎に対応付けして管理し、記録及び読み出しを行う機能を備える。具体的には、メモリ102は、予測モードと第1コスト値とをサブブロック毎に対応付けて記憶する。例えば、図4に示すように、4×4サブブロックを番号によって識別可能とした場合、制御部502は、図14に示すようにサブブロックの番号と予測モードと第1コスト値とを対応付けして、メモリ102に書き込みを行うものとする。
なお、上記の第1コスト値生成部501において、サブブロック毎に第1コスト値が生成されるが、符号化部600には、イントラ予測の場合の符号化効率をMB単位で表す値が第1コスト値として入力される。例えば、符号化部600に入力される第1コスト値は、図14に示すc0からc15の合計値となる。なお、符号化部600に入力される第1コスト値は、合計値に限定されるものではなく、c0からc15のうち一部の値を合計したものでも構わない。
図15は、本発明の実施の形態3に係る符号化部600の具体的な構成を示すブロック図である。
符号化部600は、実施の形態1及び2に係る符号化部300の構成と比較して、予測方式選択部315に代えて予測方式選択部601を備える点が異なっている。
予測方式選択部601は、メモリ102から読み出される第1コスト値と、第3コスト値生成部313から入力される第3コスト値と、第2コスト値生成部314から入力される第2コスト値とに基づいて、イントラ予測画像データ及びインター予測画像データのいずれかを選択する。予測方式選択部601は、選択した予測画像データを減算器301と加算器307とに出力する。
以下、実施の形態3における符号化部600の符号化動作について図面を参照しながら説明する。
図16は、本発明の実施の形態3に係る符号化部600の具体的動作を示すフローチャートである。具体的には、図16は、第1コスト値によって簡略的にイントラ予測及びインター予測の選択を行う動作を示す。
まず、符号化部600は、メモリ102から復号画像データをMB毎に読み出し、さらに当該MBを細分化したサブブロック毎に対応付けられた予測モード及び第1コスト値を読み出す(S5001)。
次に、制御部502は、読み出した第1コスト値が所定の閾値よりも小さいか否かを判定する(S5002)。所定の閾値より小さい場合は(S5002でYES)、制御部502は、予測方式選択部601にイントラ予測画像を選択させるための制御を行う。所定の閾値以上である場合は(S5002でNO)、制御部502は、予測方式選択部601にインター予測画像を選択させるための制御を行う。なお、所定の閾値は、例えば、H.264/AVCの規格上の制限値から設定される値でも構わないし、復号処理過程において生成される復号情報を基に設定される値であっても構わない。
第1コスト値が所定の閾値よりも小さいと判定された場合(S5002でYES)、制御部502は、動きベクトル検出部310と動き補償部311とにおいて処理しないよう制御を行う(S5003)。つまり、制御部502は、動きベクトル検出部310と動き補償部311との起動を抑制する。
次に、イントラ予測部312は、加算器307から出力される復号画像データのうち、処理対象であるMBに隣接する画素情報を用いて、読み出した予測モードを用いてイントラ予測を行うことで、イントラ予測画像データを生成する(S5004)。そして、イントラ予測部312は、生成したイントラ予測画像データを予測方式選択部601に出力する。予測方式選択部601は、イントラ予測画像データを減算器301と加算器307とに出力する。
一方、第1コスト値が所定の閾値よりも大きいと判定された場合(S5002でNO)、イントラ予測部312は、加算器307から出力される復号画像データのうち、処理対象であるMB、又は、MBを細分化したサブブロックに隣接する画素情報を用いて、読み出した予測モードを基にイントラ予測を行い、イントラ予測画像データを生成する(S5005)。そして、イントラ予測部312は、生成したイントラ予測画像データを第3コスト値生成部313と予測方式選択部601とに出力する。
そして、第3コスト値生成部313は、イントラ予測画像データを基に、第3コスト値を生成し、生成した第3コスト値を予測方式選択部601に出力する(S5006)。
また、イントラ予測画像データの生成処理(S5005)及び第3コスト値の生成処理(S5006)と並行して、動きベクトル検出部310は、フレームメモリ309に蓄積された復号画像データを基に、動きベクトルを検出し、検出した動きベクトルを動き補償部311に出力する(S5007)。
そして、動き補償部311は、動きベクトル検出部310が検出した動きベクトルと、フレームメモリ309に蓄積される復号画像データとを基に、インター予測を行い、動き補償された予測画像データ(インター予測画像データ)を生成する。そして、動き補償部311は、生成したインター予測画像データを、予測方式選択部601と第2コスト値生成部314とに出力する(S5008)。
次に、第2コスト値生成部314は、インター予測画像データを基に第2コスト値を生成し、生成した第2コスト値を予測方式選択部601に出力する(S5009)。
そして、予測方式選択部601は、第3コスト値生成部313によって生成された第3コスト値と、第2コスト値生成部314によって生成した第2コスト値とを基に、減算器301及び加算器307に出力する予測画像データを選択し、選択した予測画像データを減算器301及び加算器307に出力する(S5010)。
次に、減算器301は、予測画像データと復号画像データとを基に残差画像データを生成する。そして、符号化部600は、当該残差画像データを基に残りの符号化処理を行う(S5011)。具体的には、符号化部600は、直交変換、量子化、可変長符号化、及び、次の符号化処理に用いられる参照画像の生成処理(逆量子化、逆直交変換、加算)を行う。
以上のように、本実施の形態に係るトランスコード装置500によれば、イントラ予測が適用された符号化データのトランスコードを行う場合、復号部200の復号処理過程において生成される復号情報に基づいて第1コスト値を生成する。そして、トランスコード装置500は、生成した第1コスト値を符号化する際に利用することで、符号化時にイントラ予測を行った予測画像データを作成せずとも、簡略的に符号化対象のMBに適用する予測方式を選択することが可能となる。この構成により、トランスコード装置100全体の処理量をさらに削減することが可能となる。
なお、本実施の形態に係るトランスコード装置500では、第1コスト値が閾値より大きい場合であっても、符号化部600において、第3コスト値が第2コスト値より小さい場合は、予測方式選択部601は、イントラ予測画像データを予測画像データとして選択する。
これにより、本実施の形態に係るトランスコード装置500によれば、第1コスト値が閾値より小さい場合には、処理量を低減することができるという効果を奏する。さらに、本実施の形態に係るトランスコード装置500によれば、第1コスト値が閾値より大きい場合には、さらに、第2コスト値と第3コスト値との比較を行うことで、精度の良い予測画像データを生成することができ、符号化効率を高めることができるという効果も奏する。
なお、本実施の形態に係るトランスコード装置500では、図17に示す符号化部600aのように、イントラ予測を行った場合の符号化効率を表す第3コスト値を生成しなくてもよい。
図17に示す符号化部600aは、図15に示す符号化部600と比較して、第3コスト値生成部313を備えない点と、予測方式選択部601の代わりに予測方式選択部601aを備える点とが異なっている。
予測方式選択部601aは、メモリ102から読み出した第1コスト値と、所定の閾値とを比較し、第1コスト値が所定の閾値より小さい場合に、イントラ予測部312によって生成されるイントラ予測画像データを選択する。このとき、制御部502によって、動きベクトル検出部310と動き補償部311との起動を抑制することで、符号化部600aの処理量を削減することができる。
さらに、予測方式選択部601aは、第1コスト値が所定の閾値以上である場合に、第1コスト値と、第2コスト値生成部314とを比較し、比較結果に基づいてイントラ予測画像データと、動き補償部311によって生成されたインター予測画像データとを選択する。具体的には、予測方式選択部601aは、第1コスト値が第2コスト値より小さい場合に、イントラ予測画像データを選択し、イントラ予測画像データを減算器301と加算器307とに出力する。また、予測方式選択部601aは、第1コスト値が第2コスト値以上である場合に、インター予測画像データを選択し、インター予測画像データを減算器301と加算器307とに出力する。
以上の構成により、本実施の形態に係るトランスコード装置500の変形例によれば、第3コスト値を生成するための処理を削減することができるので、符号化部600における処理量を低減することができる。
(実施の形態4)
上記の実施の形態におけるトランスコード装置100及び500は、復号処理過程において生成される復号情報を用い、符号化時におけるイントラ予測処理を省略することで、トランスコード装置全体の処理量を低減することを目的としていた。この実施の形態4においては、さらに、トランスコード処理のうち符号化処理の効率を向上させるために、復号時において生成される第1コスト値を基に、符号化パラメータを生成する。
なお、符号化パラメータとは、符号化時に設定されるパラメータであって、例えば、動き補償を行うために設定される動き検出の探索範囲、又は、インター予測を行う際に参照される参照画像の枚数等である。
以下、本発明の実施の形態4におけるトランスコード装置を、図面を参照しながら説明する。なお、実施の形態4において上記実施の形態1から実施の形態3と同様の部分は同じ番号を付与し、その説明を省略する。
図18は、本発明の実施の形態4に係るトランスコード装置700の概要を説明するための模式図である。図18に示すトランスコード装置700は、実施の形態3に係るトランスコード装置500に比べて、さらに、符号化パラメータ生成部701を備え、符号化部600の代わりに符号化部800を備える点が異なっている。
符号化パラメータ生成部701は、第1コスト値生成部501によって生成された第1コスト値を基に、符号化部800において符号化を行う際に使用される符号化パラメータを生成し、生成した符号化パラメータをメモリ102に出力する。なお、メモリ102に出力する際は、制御部502によってサブブロックの番号と予測モードと当該符号化パラメータとを対応付けて記録される。
ここで、符号化パラメータ生成部701の具体的動作について説明する。
符号化パラメータ生成部701は、第1コスト値生成部501から出力される第1コスト値が所定の閾値よりも小さいか否かを、MB単位毎に判定する。その際、第1コスト値が所定の閾値よりも小さい場合は、符号化パラメータ生成部701が有するカウンタのカウンタ値をインクリメントする。すなわち、符号化パラメータ生成部701は、カウンタを利用して、第1コスト値が所定の閾値より小さいと判定されたMBの数を計数する。そして、符号化パラメータ生成部701は、計数結果に基づいて符号化パラメータを設定する。
上記のような第1コスト値の判定と、カウンタ値のインクリメントとが1フレーム分終了した段階で、当該カウンタ値に基づいて当該フレームを符号化する際に適用する符号化パラメータを生成する。例えば、カウンタ値が1フレームに含まれる全MB数に対して、過半数を超えている場合、当該フレームを符号化した際の処理量が小さいと判断できる。
このため、符号化パラメータ生成部701は、通常よりも広い範囲の動き検出の探索範囲を示すパラメータを生成する。さらに、符号化パラメータ生成部701は、符号化時にインター予測を行う際に設定される参照画像の枚数についても通常よりも多い枚数となるパラメータを生成する。そして、符号化パラメータ生成部701は、生成した動き検出の探索範囲を示すパラメータと、参照画像の枚数に関するパラメータとを符号化パラメータとしてメモリ102に出力する動作となっている。
なお、本実施の形態4においては、第1コスト値が所定の閾値よりも小さいか否かを判定したが、その逆の大きいか否かを判定する構成でも構わない。そして、符号化パラメータ生成部701は、第1コスト値が所定の閾値より大きいと判定した場合、符号化パラメータ生成部701は、通常よりも狭い動き検出の探索範囲を示すパラメータと、通常よりも少ない枚数を参照するようなパラメータとを生成する。また、フレームを符号化した際の処理量が小さいと判断するための閾値は設計者の意図に合わせて変更可能な値であることが好ましい。
また、カウンタ値に応じて、リニアに探索範囲を変更する構成としてもよい。具体的には、カウンタ値と探索範囲との関係を、(式1)、(式2)、(式3)のように設定しても構わない。ただし、“a”は定数とする。
(式1)(探索範囲)=clip(MIN,MAX,a×(カウンタ値))
(式2)a×(カウンタの値)<MINのとき、(探索範囲)=MIN
(式3)a×(カウンタの値)>MAXのとき、(探索範囲)=MAX
符号化部800は、復号部200が生成した復号画像データを、メモリ102に記録される第1コスト値と予測モードと符号化パラメータとを基にイントラ予測又はインター予測を適用することで予測画像データを生成し、生成した予測画像データと復号画像データとの差分を算出する。そして、符号化部800は、算出された差分データを直交変換し、量子化し、可変長符号化することで、動きベクトル等を含む符号化情報と符号化画像データとを含むBストリームを生成する。
以上のように、本実施の形態4によれば、イントラ予測が適用された符号化データのトランスコードを行う場合、復号処理過程において生成される復号情報を基に第1コスト値を生成し、当該第1コスト値から符号化する際に設定される符号化パラメータを生成し、生成した符号化パラメータを符号化時に利用することを特徴としている。この構成により、符号化時において、1フレーム内のMB毎に生成される第1コスト値を基に生成された符号化パラメータが使用できるため、符号化効率を向上させることが可能となる。
以上、本発明に係るトランスコード装置及びトランスコード方法について、実施の形態に基づいて説明したが、本発明は、これらの実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を当該実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、本発明の範囲内に含まれる。
なお、本発明においてAストリームは、イントラフレームのみを用いて符号化された符号化ストリームとしたが、この構成に限定されるものではなく、符号化ストリームの少なくとも一部にイントラ予測が適用された符号化ストリームでもよい。つまり、本発明に係るトランスコード装置は、少なくとも一部にイントラ予測が適用されたAストリームを、イントラ予測及びインター予測が適用されたBストリームに変換してもよい。
この場合、本発明に係るトランスコード装置は、Aストリームを復号する際に、イントラ予測が適用されたブロックの予測モードを取得し、符号化部で使用する構成となる。つまり、符号化部は、符号化対象のブロックについて予測モードが取得されている場合、メモリに格納されている予測モードを利用して符号化を行う。
また、復号部は、インター予測を復号するための動きベクトル検出部及び動き補償部を備えることになる。なお、この構成により、例えば、H.264/AVCからH.264/AVCへ符号化条件を変更してトランスコードを行う場合でも、トランスコード装置全体の処理量を低減することが可能となる。
なお、本発明は、イントラ予測を用いて符号化ストリームを生成可能なカメラ又はデジタルレコーダー等、符号化ストリームを記録可能なAV機器であればどのようなものでも適用することができる。
また、本発明は、上述したように、トランスコード装置及びトランスコード方法として実現できるだけではなく、本実施の形態のトランスコード方法をコンピュータに実行させるためのプログラムとして実現してもよい。また、当該プログラムを記録するコンピュータ読み取り可能なCD−ROMなどの記録媒体として実現してもよい。さらに、当該プログラムを示す情報、データ又は信号として実現してもよい。そして、これらプログラム、情報、データ及び信号は、インターネットなどの通信ネットワークを介して配信されてもよい。
また、本発明は、トランスコード装置を構成する構成要素の一部又は全部を、1個のシステムLSI(Large Scale Integration)から構成してもよい。システムLSIは、複数の構成部を1個のチップ上に集積して製造された超多機能LSIであり、具体的には、マイクロプロセッサ、ROM及びRAMなどを含んで構成されるコンピュータシステムである。
本発明は、少なくともイントラ予測が適用された符号化ストリームを、イントラ予測及びインター予測を用いた符号化ストリームにトランスコードする際に、再符号化にかかる処理を低減することができるという効果を奏し、デジタルカメラ、デジタルレコーダー/プレーヤーなどのAV機器に利用することができる。
100、500、700 トランスコード装置
101 予測モード取得部
102 メモリ
103、502 制御部
200 復号部
201 可変長復号部
202、305 逆量子化部
203、306 逆直交変換部
204、307 加算器
205、308 デブロッキングフィルタ部
206、312 イントラ予測部
300、600、600a、800 符号化部
301 減算器
302 直交変換部
303 量子化部
304 可変長符号化部
309 フレームメモリ
310 動きベクトル検出部
311 動き補償部
313 第3コスト値生成部
314 第2コスト値生成部
315、601、601a 予測方式選択部
320 インター予測部
400 記録媒体
501 第1コスト値生成部
701 符号化パラメータ生成部

Claims (15)

  1. 少なくとも一部にイントラ予測が適用された第1符号化ストリームを、イントラ予測及びインター予測が適用された第2符号化ストリームに変換するトランスコード装置であって、
    前記第1符号化ストリームを所定の単位毎に復号することで、復号画像データを生成する復号部と、
    前記復号部が前記第1符号化ストリームを復号する際に適用されたイントラ予測の予測モードを取得する予測モード取得部と、
    前記所定の単位毎にイントラ予測又はインター予測を適用して前記復号画像データを符号化することで、前記第2符号化ストリームを生成する符号化部と、
    前記符号化部がイントラ予測を適用する場合、前記予測モード取得部によって取得された予測モードを用いるように、前記符号化部を制御する制御部とを備える
    トランスコード装置。
  2. 前記トランスコード装置は、さらに、
    前記復号部による復号過程において生成される復号情報に基づいて、イントラ予測を適用した場合の符号化効率を表す第1コスト値を前記所定の単位毎に生成する第1コスト値生成部を備え、
    前記制御部は、さらに、前記符号化部が前記復号画像データを符号化する際、前記所定の単位毎に前記第1コスト値に応じてイントラ予測又はインター予測を適用するように、前記符号化部を制御する
    請求項1記載のトランスコード装置。
  3. 前記第1コスト値生成部は、イントラ予測を適用した場合の符号化効率が良いほど小さい値になる前記第1コスト値を生成し、
    前記制御部は、前記第1コスト値が第1閾値よりも小さい場合、イントラ予測を適用するように、前記符号化部を制御する
    請求項2記載のトランスコード装置。
  4. 前記符号化部は、
    前記所定の単位毎に前記復号画像データにインター予測を適用することで、インター予測画像データを生成するインター予測部と、
    前記インター予測画像データに基づいて、インター予測を適用した場合の符号化効率を表す第2コスト値を、前記所定の単位毎に生成する第2コスト値生成部と、
    前記予測モードを用いて、前記所定の単位毎にイントラ予測を適用することで、イントラ予測画像データを生成するイントラ予測部と、
    前記イントラ予測画像データに基づいて、イントラ予測を適用した場合の符号化効率を表す第3コスト値を前記所定の単位毎に生成する第3コスト値生成部とを備え、
    前記制御部は、前記第1コスト値が前記第1閾値以上である場合、前記第2コスト値と前記第3コスト値とを比較し、比較結果に基づいてイントラ予測又はインター予測を適用するように、前記符号化部を制御する
    請求項3記載のトランスコード装置。
  5. 前記制御部は、前記第1コスト値が前記第1閾値以上であると判定した後に、前記第2コスト値を生成し、かつ、当該第2コスト値と前記第3コスト値とを比較するように、前記符号化部を制御する
    請求項4記載のトランスコード装置。
  6. 前記制御部は、前記第2コスト値と前記第3コスト値とを比較し、前記第2コスト値が表す符号化効率よりも前記第3コスト値が表す符号化効率が良い場合に、イントラ予測を適用するように、前記符号化部を制御する
    請求項4記載のトランスコード装置。
  7. 前記トランスコード装置は、さらに、
    前記第1コスト値に基づいて、動き検出の探索範囲と参照画像の枚数との少なくとも1つを設定するための符号化パラメータを生成する符号化パラメータ生成部を備える
    請求項2記載のトランスコード装置。
  8. 前記符号化パラメータ生成部は、前記第1コスト値と前記第1閾値との比較結果を計数し、計数結果に従って前記符号化パラメータを生成する
    請求項7記載のトランスコード装置。
  9. 前記符号化部は、
    前記予測モードを用いて、前記所定の単位毎にイントラ予測を適用することで、イントラ予測画像データを生成するイントラ予測部と、
    前記イントラ予測画像データに基づいて、イントラ予測を適用した場合の符号化効率が良いほど小さい値となる第3コスト値を前記所定の単位毎に生成する第3コスト値生成部と、
    前記所定の単位毎に前記復号画像データにインター予測を適用することで、インター予測画像データを生成するインター予測部と、
    前記インター予測画像データに基づいて、インター予測を適用した場合の符号化効率を表す第2コスト値を、前記所定の単位毎に生成する第2コスト値生成部とを備え、
    前記制御部は、前記第3コスト値が第2閾値以上であると判定した後に、前記インター予測画像データと前記第2コスト値とを生成するように、前記符号化部を制御する
    請求項1記載のトランスコード装置。
  10. 少なくとも一部にイントラ予測が適用された第1符号化ストリームを、イントラ予測及びインター予測が適用された第2符号化ストリームに変換するトランスコード方法であって、
    前記第1符号化ストリームを所定の単位毎に復号することで、復号画像データを生成する復号ステップと、
    前記復号ステップにおいて前記第1符号化ストリームを復号する際に適用されたイントラ予測の予測モードを取得する予測モード取得ステップと、
    前記所定の単位毎にイントラ予測又はインター予測を適用して前記復号画像データを符号化することで、前記第2符号化ストリームを生成する符号化ステップとを含み、
    前記符号化ステップでは、
    イントラ予測を適用する場合、前記予測モード取得ステップにおいて取得した予測モードを用いる
    トランスコード方法。
  11. 前記トランスコード方法は、さらに、
    前記復号部による復号過程において生成される復号情報に基づいて、イントラ予測を適用した場合の符号化効率を表す第1コスト値を前記所定の単位毎に生成する第1コスト値生成ステップを含み、
    前記符号化ステップでは、前記復号画像データを符号化する際、前記所定の単位毎に前記第1コスト値に応じてイントラ予測又はインター予測を適用する
    請求項10記載のトランスコード方法。
  12. 前記トランスコード方法は、さらに、
    前記第1コスト値に基づいて、動き検出の探索範囲と参照画像の枚数との少なくとも1つを設定するための符号化パラメータを生成する符号化パラメータ生成ステップを含む
    請求項11記載のトランスコード方法。
  13. 前記符号化ステップは、
    前記予測モードを用いて、前記所定の単位毎にイントラ予測を適用することで、イントラ予測画像データを生成するイントラ予測ステップと、
    前記イントラ予測画像データに基づいて、イントラ予測を適用した場合の符号化効率が良いほど小さい値となる第3コスト値を前記所定の単位毎に生成する第3コスト値生成ステップと、
    前記第3コスト値が第2閾値以上であるか否かを判定する判定ステップと、
    前記判定ステップにおいて前記第3コスト値が前記第2閾値以上であると判定された後に、前記所定の単位毎に前記復号画像データにインター予測を適用することで、インター予測画像データを生成するインター予測ステップと、
    前記インター予測画像データに基づいて、インター予測を適用した場合の符号化効率を表す第2コスト値を、前記所定の単位毎に生成する第2コスト値生成ステップとを含む
    請求項10記載のトランスコード方法。
  14. 少なくとも一部にイントラ予測が適用された第1符号化ストリームを、イントラ予測及びインター予測が適用された第2符号化ストリームに変換するデジタルレコーダーであって、
    前記第1符号化ストリームを所定の単位毎に復号することで、復号画像データを生成する復号部と、
    前記復号部が前記第1符号化ストリームを復号する際に適用されたイントラ予測の予測モードを取得する予測モード取得部と、
    前記所定の単位毎にイントラ予測又はインター予測を適用して前記復号画像データを符号化することで、前記第2符号化ストリームを生成する符号化部と、
    前記符号化部がイントラ予測を適用する場合、前記予測モード取得部によって取得された予測モードを用いるように、前記符号化部を制御する制御部とを備える
    デジタルレコーダー。
  15. 少なくとも一部にイントラ予測が適用された第1符号化ストリームを、イントラ予測及びインター予測が適用された第2符号化ストリームに変換するトランスコード方法をコンピュータに実行させるためのプログラムであって、
    前記トランスコード方法は、
    前記第1符号化ストリームを所定の単位毎に復号することで、復号画像データを生成する復号ステップと、
    前記復号ステップにおいて前記第1符号化ストリームを復号する際に適用されたイントラ予測の予測モードを取得する予測モード取得ステップと、
    前記所定の単位毎にイントラ予測又はインター予測を適用して前記復号画像データを符号化することで、前記第2符号化ストリームを生成する符号化ステップとを含み、
    前記符号化ステップでは、
    イントラ予測を適用する場合、前記予測モード取得ステップにおいて取得した予測モードを用いる
    プログラム。
JP2010542039A 2008-12-12 2009-12-11 トランスコード装置、トランスコード方法及びデジタルレコーダー Active JP5205471B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010542039A JP5205471B2 (ja) 2008-12-12 2009-12-11 トランスコード装置、トランスコード方法及びデジタルレコーダー

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2008316362 2008-12-12
JP2008316362 2008-12-12
PCT/JP2009/006818 WO2010067624A1 (ja) 2008-12-12 2009-12-11 トランスコード装置、トランスコード方法及びデジタルレコーダー
JP2010542039A JP5205471B2 (ja) 2008-12-12 2009-12-11 トランスコード装置、トランスコード方法及びデジタルレコーダー

Publications (2)

Publication Number Publication Date
JPWO2010067624A1 true JPWO2010067624A1 (ja) 2012-05-17
JP5205471B2 JP5205471B2 (ja) 2013-06-05

Family

ID=42242616

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010542039A Active JP5205471B2 (ja) 2008-12-12 2009-12-11 トランスコード装置、トランスコード方法及びデジタルレコーダー

Country Status (3)

Country Link
US (1) US8675979B2 (ja)
JP (1) JP5205471B2 (ja)
WO (1) WO2010067624A1 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5050158B2 (ja) * 2008-06-02 2012-10-17 株式会社メガチップス トランスコーダ
US8625837B2 (en) * 2009-05-29 2014-01-07 Microsoft Corporation Protocol and format for communicating an image from a camera to a computing environment
JP5328629B2 (ja) * 2009-12-17 2013-10-30 株式会社メガチップス エンコーダおよび画像変換装置
HUE064571T2 (hu) 2010-09-27 2024-03-28 Lg Electronics Inc Eljárás blokk particionálásra és dekódoló készülék
KR101885885B1 (ko) * 2012-04-10 2018-09-11 한국전자통신연구원 비디오 데이터의 병렬 인트라 예측 방법
US20130322516A1 (en) * 2012-05-31 2013-12-05 Broadcom Corporation Systems and methods for generating multiple bitrate streams using a single encoding engine
US9426498B2 (en) * 2012-07-10 2016-08-23 Broadcom Corporation Real-time encoding system of multiple spatially scaled video based on shared video coding information
JP6164840B2 (ja) * 2012-12-28 2017-07-19 キヤノン株式会社 符号化装置、符号化方法、及びプログラム
US9172966B2 (en) * 2013-05-13 2015-10-27 Broadcom Corporation System and method for adaptive coding tree mode decision
WO2015115644A1 (ja) 2014-02-03 2015-08-06 三菱電機株式会社 画像符号化装置、画像復号装置、符号化ストリーム変換装置、画像符号化方法、及び画像復号方法
US10298941B2 (en) 2014-02-10 2019-05-21 Nec Corporation Video encoding device, video encoding method, and program

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1618744B1 (en) * 2003-04-17 2007-09-05 Koninklijke Philips Electronics N.V. Video transcoding
DE10343220B3 (de) * 2003-09-18 2005-05-25 Siemens Ag Verfahren und Vorrichtung zur Transcodierung eines Datenstroms, der ein oder mehrere codierte digitalisierte Bilder umfasst
KR100987765B1 (ko) * 2003-09-30 2010-10-13 삼성전자주식회사 동영상 부호화기에서의 예측 수행 방법 및 장치
US20050276493A1 (en) * 2004-06-01 2005-12-15 Jun Xin Selecting macroblock coding modes for video encoding
EP1628484B1 (en) * 2004-08-18 2019-04-03 STMicroelectronics Srl Method for transcoding compressed video signals, related apparatus and computer program product therefor
KR101147744B1 (ko) * 2005-02-22 2012-05-25 엘지전자 주식회사 비디오 트랜스 코딩 방법 및 장치와 이를 이용한 pvr
JP4604805B2 (ja) 2005-04-12 2011-01-05 Kddi株式会社 ビデオ情報変換装置及びプログラム
JP2006295734A (ja) 2005-04-13 2006-10-26 Pioneer Electronic Corp 再符号化装置、再符号化方法、および再符号化用プログラム
US7782955B2 (en) * 2005-09-28 2010-08-24 Avisonic Technology Corporation Transcoder and transcoding method operating in a transform domain for video coding schemes possessing different transform kernels
JP4813328B2 (ja) 2006-11-10 2011-11-09 シャープ株式会社 符号化装置、符号化方法、及びプログラム

Also Published As

Publication number Publication date
WO2010067624A1 (ja) 2010-06-17
US20110032988A1 (en) 2011-02-10
US8675979B2 (en) 2014-03-18
JP5205471B2 (ja) 2013-06-05

Similar Documents

Publication Publication Date Title
JP5205471B2 (ja) トランスコード装置、トランスコード方法及びデジタルレコーダー
US8275035B2 (en) Video coding apparatus
JP4361613B2 (ja) 可変ビットレートビデオ符号化方法及び対応するビデオ符号化装置
KR101608426B1 (ko) 영상의 인트라 예측 부호화/복호화 방법 및 그 장치
EP2503781B1 (en) Devices, methods, and programs for INTRA-prediction in image coding
KR100772391B1 (ko) 직교 변환 및 벡터 양자화에 기반한 동영상 부호화 및복호화 방법과 이를 이용한 장치
US20090238271A1 (en) Apparatus and method for encoding and decoding using alternative converter accoding to the correlation of residual signal
US20090232211A1 (en) Method and apparatus for encoding/decoding image based on intra prediction
JP2009529845A (ja) 最適の予測モードを適応的に適用して動画を符号化する方法及び装置、動画を復号化する方法及び装置
JP2013510482A (ja) ハイブリッド映像符号化
JP5594841B2 (ja) 画像符号化装置及び画像復号装置
US8228985B2 (en) Method and apparatus for encoding and decoding based on intra prediction
KR101375667B1 (ko) 영상의 부호화, 복호화 방법 및 장치
JP2007336468A (ja) 再符号化装置、再符号化方法およびプログラム
JP2011518527A (ja) 映像の復号化
JP2009535881A (ja) エンコード/トランスコード及びデコードのための方法及び装置
KR101581399B1 (ko) 동화상 예측 부호화 방법, 동화상 예측 부호화 장치, 동화상 예측 부호화 프로그램, 동화상 예측 복호 방법, 동화상 예측 복호 장치 및 동화상 예측 복호 프로그램
JP2006511164A (ja) 弾性記憶
JP2006246277A (ja) 再符号化装置、再符号化方法、および再符号化用プログラム
JP6313614B2 (ja) 動画像符号化装置及びその制御方法
JP2008042660A (ja) 映像信号再符号化装置及び映像信号再符号化方法
US20110228850A1 (en) Method of processing a video sequence and associated device
JP4857152B2 (ja) 直交変換・量子化装置
KR20160053848A (ko) 영상의 인트라 예측 부호화/복호화 방법 및 그 장치
JP5943757B2 (ja) 画像符号化装置及びその方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120814

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121010

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130205

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130218

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160222

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250