JP2006254320A - 情報処理装置および同装置で用いられるプログラム - Google Patents

情報処理装置および同装置で用いられるプログラム Download PDF

Info

Publication number
JP2006254320A
JP2006254320A JP2005071108A JP2005071108A JP2006254320A JP 2006254320 A JP2006254320 A JP 2006254320A JP 2005071108 A JP2005071108 A JP 2005071108A JP 2005071108 A JP2005071108 A JP 2005071108A JP 2006254320 A JP2006254320 A JP 2006254320A
Authority
JP
Japan
Prior art keywords
screen
deblocking filter
transmittance
moving image
computer
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.)
Pending
Application number
JP2005071108A
Other languages
English (en)
Inventor
Noriaki Kitada
典昭 北田
Kosuke Uchida
耕輔 内田
Satoshi Hoshina
聡 保科
Yoshihiro Kikuchi
義浩 菊池
Yuji Kawashima
裕司 川島
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2005071108A priority Critical patent/JP2006254320A/ja
Priority to EP20060110777 priority patent/EP1703738A2/en
Priority to US11/374,103 priority patent/US20060203910A1/en
Priority to CNA2006100679658A priority patent/CN1835593A/zh
Publication of JP2006254320A publication Critical patent/JP2006254320A/ja
Pending legal-status Critical Current

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/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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/117Filters, e.g. for pre-processing or post-processing
    • 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
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods 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

Abstract

【課題】動画像ストリームのデコードをスムーズに実行することが可能な情報処理装置を実現する。
【解決手段】ビデオ再生アプリケーションプログラムは、動画像ストリームに含まれる画面に対してブレンド処理が施されるか否かを判別し(S101)、ブレンド処理が施される場合には、CPUに実行させるべきデコード処理として特殊デコード処理を選択し、指定されている透過率に応じた制御モードを選定する(S103)。そして、ビデオ再生アプリケーションプログラムは、選定した制御モードに従ってデブロッキングフィルタ処理の処理量を低減させるデコード処理をCPU上で実行する(S104)。
【選択図】図8

Description

本発明はパーソナルコンピュータのような情報処理装置および同装置で用いられるデコード用のプログラムに関する。
近年、DVD(Digital Versatile Disc)プレーヤ、TV装置のようなオーディオ・ビデオ(AV)機器と同様のAV機能を備えたパーソナルコンピュータが開発されている。
このようなパーソナルコンピュータにおいては、圧縮符号化された動画像ストリームをソフトウェアによってデコードするソフトウェアデコーダが用いられている。ソフトウェアデコーダの使用により、専用のハードウェアを設けることなく、圧縮符号化された動画像ストリームをプロセッサ(CPU)によってデコードすることが可能になる。
ソフトウェアデコーダを用いたシステムとしては、MPEG2、MPEG4のような動き補償フレーム間予測符号化によって符号化されたストリームをデコードした後に、そのデコードによって得られた出力画像信号に対して画質改善のためのポストフィルタ処理を施すシステムが知られている(例えば、特許文献1参照)。このシステムにおいては、コマ落ちの発生を防止するために、ポストフィルタ処理で実行されるべきフィルタ処理を変更してポストフィルタ処理に要する時間を削減する技術が利用されている。
特開2001−245294号公報
しかし、ポストフィルタ処理はデコーダの外側で行われる処理である。このため、もしソフトウェアデコーダのデコード処理自体に遅れが生じた場合には、たとえポストフィルタ処理に要する時間を低減しても、コマ落ちの発生を防止することはできない。
ところで、最近では、次世代の動画像圧縮符号化技術として、H.264/AVC(AVC:Advanced Video Coding)規格が注目されている。H.264/AVC規格は、MPEG2、MPEG4のような従来の圧縮符号化技術よりも高能率の圧縮符号化技術である。このため、H.264/AVC規格に対応するエンコード処理およびデコード処理の各々においては、MPEG2、MPEG4のような従来の圧縮符号化技術よりも多くの処理量が必要とされる。
したがって、H.264/AVC規格で圧縮符号化された動画像ストリームをソフトウェアによってデコードするように設計されたパーソナルコンピュータにおいては、システムの負荷が増大すると、デコード処理自体に遅れが生じ、これによってスムーズな動画再生を実行できなくなる危険がある。
本発明は上述の事情を考慮してなされたものであり、動画像ストリームのデコードをスムーズに実行することが可能な情報処理装置およびプログラムを提供することを目的とする。
本発明に係る情報処理装置は、圧縮符号化された動画像ストリームをデコードする情報処理装置であって、前記動画像ストリームに含まれる画面に対してブロック歪みを低減するためのデブロッキングフィルタ処理を施す手段と、指定された透過率で第1の画面上に第2の画面を重畳させるブレンド処理を施す手段と、前記動画像ストリームに含まれる画面に対して前記ブレンド処理が施されるか否かを判定し、当該ブレンド処理が施される場合に、前記透過率に応じて、前記第1の画面および前記第2の画面の少なくとも一方に対する前記デブロッキングフィルタ処理の処理量を変化させる制御手段とを具備することを特徴とする。
本発明に係るプログラムは、圧縮符号化された動画像ストリームをデコードするデコード処理をコンピュータに実行させるプログラムであって、前記動画像ストリームに含まれる画面に対してブロック歪みを低減するためのデブロッキングフィルタ処理を施す処理を、前記コンピュータに実行させる手順と、指定された透過率で第1の画面上に第2の画面を重畳させるブレンド処理が前記動画像ストリームに含まれる画面に対して施されるか否かを判定する処理を、前記コンピュータに実行させる手順と、前記ブレンド処理が施される場合に、前記透過率に応じて、前記第1の画面および前記第2の画面の少なくとも一方に対する前記デブロッキングフィルタ処理の処理量を変化させる処理を、前記コンピュータに実行させる手順とを具備することを特徴とする。
本発明によれば、動画像ストリームのデコードをスムーズに実行することが可能となる。
以下、図面を参照して、本発明の実施形態を説明する。
まず、図1および図2を参照して、本発明の一実施形態に係る情報処理装置の構成について説明する。この情報処理装置は、例えば、ノートブック型パーソナルコンピュータ10として実現されている。
図1はノートブック型パーソナルコンピュータ10のディスプレイユニットを開いた状態における正面図である。本コンピュータ10は、コンピュータ本体11と、ディスプレイユニット12とから構成されている。ディスプレイユニット12にはLCD(Liquid Crystal Display)17から構成される表示装置が組み込まれており、そのLCD17の表示画面はディスプレイユニット12のほぼ中央に位置されている。
ディスプレイユニット12は、コンピュータ本体11に対して開放位置と閉塞位置との間を回動自在に取り付けられている。コンピュータ本体11は薄い箱形の筐体を有しており、その上面にはキーボード13、本コンピュータ1を電源オン/オフするためのパワーボタン14、入力操作パネル15、およびタッチパッド16などが配置されている。
入力操作パネル15は、押されたボタンに対応するイベントを入力する入力装置であり、複数の機能をそれぞれ起動するための複数のボタンを備えている。これらボタン群には、TV起動ボタン15A、DVD(Digital Versatile Disc)起動ボタン15Bも含まれている。TV起動ボタン15Aは、デジタルTV放送番組のような放送番組データの再生及び記録を行うためのTV機能を起動するためのボタンである。TV起動ボタン15Aがユーザによって押下された時、TV機能を実行するためのアプリケーションプログラムが自動的に起動される。DVD起動ボタン15Bは、DVDに記録されたビデオコンテンツを再生するためのボタンである。DVD起動ボタン15Bがユーザによって押下された時、ビデオコンテンツを再生するためのアプリケーションプログラムが自動的に起動される。
次に、図2を参照して、本コンピュータ10のシステム構成について説明する。
本コンピュータ10は、図2に示されているように、CPU111、ノースブリッジ112、主メモリ113、グラフィクスコントローラ114、サウスブリッジ119、BIOS−ROM120、ハードディスクドライブ(HDD)121、光ディスクドライブ(ODD)122、デジタルTV放送チューナ123、エンベデッドコントローラ/キーボードコントローラIC(EC/KBC)124、およびネットワークコントローラ125等を備えている。
CPU111は本コンピュータ10の動作を制御するために設けられたプロセッサであり、ハードディスクドライブ(HDD)121から主メモリ113にロードされる、オペレーティングシステム(OS)、およびビデオ再生アプリケーションプログラム201のような各種アプリケーションプログラムを実行する。
ビデオ再生アプリケーションプログラム201は、圧縮符号化された動画像データをデコードおよび再生するためのソフトウェアである。このビデオ再生アプリケーションプログラム201は、H.264/AVC規格に対応するソフトウェアデコーダである。ビデオ再生アプリケーションプログラム201は、H.264/AVC規格で定義された符号化方式で圧縮符号化されている動画像ストリーム(例えば、デジタルTV放送チューナ123によって受信されたデジタルTV放送番組、光ディスクドライブ(ODD)122から読み出されるHD(High Definition)規格のビデオコンテンツ、など)をデコードするための機能を有している。
このビデオ再生アプリケーションプログラム201は、図3に示すように、デコード制御モジュール211、デコード実行モジュール212およびブレンド処理部213を備えている。
デコード実行モジュール212は、H.264/AVC規格で定義されたデコード処理を実行するデコーダである。ブレンド処理部213は、デコード実行モジュール212によってデコードされた2つの画像を重ね合わせるためのブレンド処理を実行する。ブレンド処理は、重ねる側(上側)の画像データに付随するアルファデータに基づき、2つの画像データを画素単位で重ね合わせるものである(アルファブレンディング)。アルファデータは、重ねる側(上側)の画像データの各画素の透明度(透過率)または不透明度を示す係数である。なお、ここでは、重ねる側(上側)および重ねられる側(下側)の双方ともデコード実行モジュール212によってデコードされた画像を例に説明するが、これに限られるものではなく、いずれか一方を、例えばユーザインタフェース用に予め用意されたメニュー画面等の描画(グラフィックス)とした重ね合わせも可能である。
そして、デコード制御モジュール211は、デコード実行モジュール212によってデコードされた画像がブレンド処理部213によるブレンド処理に用いられるか否かで、デコード実行モジュール212によって実行されるデコード処理の内容を制御する。
具体的には、デコード制御モジュール211は、デコード実行モジュール212によってデコードされた画像がブレンド処理部213によるブレンド処理に用いられない場合、H.264/AVC規格で定義されたデコード処理がCPU111によって実行されるように、デコード実行モジュール212によって実行すべきデコード処理の内容を制御する。一方、ブレンド処理部213によるブレンド処理に用いられる場合には、デコード制御モジュール211は、H.264/AVC規格で定義されたデコード処理の一部が簡略または省略された処理に置換されるように、デコード実行モジュール212によって実行すべきデコード処理の内容を制御する。
ビデオ再生アプリケーションプログラム201によってデコードされた動画像データは、表示ドライバ202を介してグラフィクスコントローラ114のビデオメモリ114Aに順次書き込まれる。これにより、デコードされた動画像データはLCD17に表示される。表示ドライバ202はグラフィクスコントローラ114を制御するためのソフトウェアである。
また、CPU111は、BIOS−ROM120に格納されたシステムBIOS(Basic Input Output System)も実行する。システムBIOSはハードウェア制御のためのプログラムである。
ノースブリッジ112はCPU111のローカルバスとサウスブリッジ119との間を接続するブリッジデバイスである。ノースブリッジ112には、主メモリ113をアクセス制御するメモリコントローラも内蔵されている。また、ノースブリッジ112は、AGP(Accelerated Graphics Port)バスなどを介してグラフィクスコントローラ114との通信を実行する機能も有している。
グラフィクスコントローラ114は本コンピュータ10のディスプレイモニタとして使用されるLCD17を制御する表示コントローラである。このグラフィクスコントローラ114はビデオメモリ(VRAM)114Aに書き込まれた画像データからLCD17に送出すべき表示信号を生成する。
サウスブリッジ119は、LPC(Low Pin Count)バス上の各デバイス、およびPCI(Peripheral Component Interconnect)バス上の各デバイスを制御する。また、サウスブリッジ119は、HDD121、ODD122を制御するためのIDE(Integrated Drive Electronics)コントローラを内蔵している。さらに、サウスブリッジ119は、デジタルTV放送チューナ123を制御する機能、およびBIOS−ROM120をアクセス制御するための機能も有している。
HDD121は、各種ソフトウェア及びデータを格納する記憶装置である。光ディスクドライブ(ODD)123は、ビデオコンテンツが格納されたDVDなどの記憶メディアを駆動するためのドライブユニットである。デジタルTV放送チューナ123は、デジタルTV放送番組のような放送番組データを外部から受信するための受信装置である。
エンベデッドコントローラ/キーボードコントローラIC(EC/KBC)124は、電力管理のためのエンベデッドコントローラと、キーボード(KB)13およびタッチパッド16を制御するためのキーボードコントローラとが集積された1チップマイクロコンピュータである。このエンベデッドコントローラ/キーボードコントローラIC(EC/KBC)124は、ユーザによるパワーボタン14の操作に応じて本コンピュータ10をパワーオン/パワーオフする機能を有している。さらに、エンベデッドコントローラ/キーボードコントローラIC(EC/KBC)124は、ユーザによるTV起動ボタン15A、DVD起動ボタン15Bの操作に応じて、本コンピュータ10をパワーオンすることもできる。ネットワークコントローラ125は、例えばインターネットなどの外部ネットワークとの通信を実行する通信装置である。
次に、図4を参照して、ビデオ再生アプリケーションプログラム201によって実現されるソフトウェアデコーダの機能構成を説明する。
ビデオ再生アプリケーションプログラム201のデコード実行モジュール212は、H.264/AVC規格に対応しており、図示のように、エントロピー復号部301、逆量子化部302、逆DCT部(DCT:Discrete Cosine Transform)303、加算部304、デブロッキングフィルタ部305、フレームメモリ306、動きベクトル予測部307、補間予測部308、重み付き予測部309、イントラ予測部310、およびモード切替スイッチ部311を含む。H.264の直交変換は整数精度であり、従来のDCTとは異なるが、ここではDCTと称することとする。
各画面(ピクチャ)の符号化は、たとえば16x16画素のマクロブロック単位で実行される。各マクロブロックごとに、フレーム内符号化モード(イントラ符号化モード)および動き補償フレーム間予測符号化モード(インター符号化モード)のいずれか一方が選択される。
動き補償フレーム間予測符号化モードにおいては、既に符号化された画面(ピクチャ)からの動きを推定することによって、符号化対象画面に対応する動き補償フレーム間予測信号が定められた形状単位で生成される。そして、符号化対象画面(ピクチャ)から動き補償フレーム間予測信号を引いた予測誤差信号が、直交変換(DCT)、量子化、およびエントロピー符号化によって、符号化される。また、イントラ符号化モードにおいては、符号化対象画面(ピクチャ)から予測信号が生成され、その予測信号が直交変換(DCT)、量子化、およびエントロピー符号化によって、符号化される。
H.264/AVC規格に対応するコーデックは、さらに圧縮率を高めるために、
(1)従来のMPEGよりも高い画素精度(1/4画素精度)の動き補償
(2)フレーム内符号化を効率的に行うためのフレーム内予測
(3)ブロック歪みを低減するためのデブロッキングフィルタ
(4)4x4画素単位の整数DCT
(5)任意の位置の複数の画面(ピクチャ)を参照画面として使用可能なマルチリファレンスフレーム
(6)重み付け予測
等の技術を利用する。
以下、図4のソフトウェアデコーダの動作を説明する。
H.264/AVC規格にしたがって圧縮符号化された動画像ストリームは、まず、エントロピー復号部301に入力される。圧縮符号化された動画像ストリームには、符号化された画像情報の他に、動き補償フレーム間予測符号化(インター予測符号化)で用いられた動きベクトル情報、フレーム内予測符号化(イントラ予測符号化)で用いられたフレーム内予測情報、予測モード(インター予測符号化/イントラ予測符号化)を示すモード情報等が含まれている。
デコード処理は、たとえば16x16画素のマクロブロック単位で実行される。エントロピー復号部301は動画像ストリームに対して可変長復号のようなエントロピー復号処理を施して、動画像ストリームから、量子化DCT係数、動きベクトル情報(動きベクトル差分情報)、フレーム内予測情報、およびモード情報を分離する。この場合、例えば、デコード対象画面(ピクチャ)内の各マクロブロックは4x4画素(または8x8画素)のブロック毎にエントロピー復号処理され、各ブロックは4x4(または8x8画素)の量子化DCT係数に変換される。以下では、各ブロックが4x4である場合を想定する。
動きベクトル情報は、動きベクトル予測部307に送られる。フレーム内予測情報は、イントラ予測部310に送られる。モード情報はモード切替スイッチ部311に送られる。
各デコード対象ブロックの4x4の量子化DCT係数は、逆量子化部302による逆量子化処理により4x4のDCT係数(直交変換係数)に変換される。この4x4のDCT係数は、逆DCT部303による逆整数DCT(逆直交変換)処理によって、周波数情報から、4x4の画素値に変換される。この4x4の画素値は、デコード対象ブロックに対応する予測誤差信号である。この予測誤差信号は加算部304に送られ、そこでデコード対象ブロックに対応する予測信号(動き補償フレーム間予測信号またはフレーム内予測信号)が加算され、これによってデコード対象ブロックに対応する4x4の画素値がデコードされる。
イントラ予測モードにおいては、モード切替スイッチ部311によってイントラ予測部310が選択され、これによってイントラ予測部310からのフレーム内予測信号が予測誤差信号に加算される。インター予測モードにおいては、モード切替スイッチ部311によって重み付き予測部309が選択され、これによって、動きベクトル予測部307、補間予測部308、および重み付き予測部309によって得られる動き補償フレーム間予測信号が予測誤差信号に加算される。
このように、デコード対象画面に対応する予測誤差信号に予測信号(動き補償フレーム間予測信号またはフレーム内予測信号)を加算してデコード対象画面をデコードする処理が所定のブロック単位で実行される。
デコードされた各画面(ピクチャ)は、デブロッキングフィルタ部305によってデブロッキングフィルタ処理が施された後に、フレームメモリ306に格納される。このデブロッキングフィルタ部305は、例えば4x4画素のブロック単位で、デコードされた各画面に対してブロックノイズを低減するためのデブロッキングフィルタ処理を施す。このデブロッキングフィルタ処理は、ブロック歪みが参照画像に含まれてしまい、これによってブロック歪みが復号画像に伝搬してしまうことを防止する。デブロッキングフィルタ処理のための処理量は膨大であり、ソフトウェアデコーダの全処理量の50パーセントを占める場合もある。デブロッキングフィルタ処理は、ブロック歪みが生じやすい箇所に対してはより強いフィリタリングが施され、ブロック歪みが生じにくい箇所に対しては弱いフィリタリングが施されるように、適応的に実行される。デブロッキングフィルタ処理はループフィルタ処理によって実現されている。
そして、デブロッキングフィルタ処理された各画面は、フレームメモリ306から出力画像フレーム(または出力画像フィールド)として読み出される。また、動き補償フレーム間予測のための参照画像として使用されるべき各画面(参照画面)は、フレームメモリ306内に一定期間保持される。H.264/AVC規格の動き補償フレーム間予測符号化においては、複数の画面を参照画面として使用することができる。このため、フレームメモリ306は、複数画面分の画像を記憶するための複数個のフレームメモリ部を備えている。
動きベクトル予測部307は、デコード対象ブロックに対応する動きベクトル差分情報に基づいて、動きベクトル情報を生成する。補間予測部308は、デコード対象ブロックに対応する動きベクトル情報に基づいて、参照画面内の、整数精度の画素群および1/4画素精度の予測補間画素群から、動き補償フレーム間予測信号を生成する。1/4画素精度の予測補間画素の生成においては、まず6タップフィルタ(入力6つ、出力1つ)を用いて1/2画素を生成し、続いて2タップフィルタを用いることにより実現される。このため、高周波成分まで考慮した高精度の予測補間処理を実行できるが、その分、動き補償には多くの処理量が必要となる。
重み付け予測部309は、動き補償フレーム間予測信号に対して重み係数を乗じる処理を動き補償ブロック単位で実行することにより、重み付けされた動き補償フレーム間予測信号を生成する。この重み付け予測は、デコード対象画面の明るさを予測する処理である。この重み付け予測処理により、フェード・イン、フェード・アウトのように、明るさが時間の経過と共に変化する画像の画質を向上することができる。しかし、その分、ソフトウェアデコードに必要な処理量は増大する。
イントラ予測部310は、デコード対象画面からその画面内に含まれるデコード対象ブロックのフレーム内予測信号を生成するものである。このイントラ予測部310は、上述のフレーム内予測情報に従って画面内予測処理を実行して、デコード対象ブロックと同一画面内に存在する、当該デコード対象ブロックに近接する既にデコードされた他のブロック内の画素値からフレーム内予測信号を生成する。このフレーム内予測(イントラ予測)は、ブロック間の画素相関を利用して圧縮率を高める技術である。このフレーム内予測においては、例えば16x16画素の場合、フレーム内予測情報に従って、垂直予測(予測モード0)、水平予測(予測モード1)、平均値予測(予測モード2)、平面予測(予測モード3)を含む4種類の予測モードの内の一つが、フレーム内予測ブロック単位で選択される。平面予測が選択される頻度は他のフレーム内予測モードよりも低いが、平面予測のために必要とされる処理量は、他のどのフレーム内予測モードの処理量よりも多い。
本実施形態においては、ブレンド処理部213によるブレンド処理が行われる場合、そのブレンド処理に用いられる画像のデコード処理について、図4で説明したデコード処理(以下、通常デコード処理と称する)と、特殊デコード処理とを選択的に実行する。特殊デコード処理は、デブロッキングフィルタ処理を簡略または省略したデコード処理であり、当該デブロッキングフィルタ処理の処理量(もしくは演算量)を低減させることができる(例えば、ブレンド処理が施される場合に、指定されている透過率が所定の基準値よりも大きければ、後述する非参照画面に対するデブロッキングフィルタ処理の強度を小さくする等)。なお、具体的な制御方法については、後で述べる。
また、本実施形態においては、デブロッキングフィルタ処理の処理量の低減の対象となるのは、主として動画であり、ブレンド処理に使用されるアルファデータを備えた重ねる側(上側)の画面だけであってもよいし、重ねられる側(下側)の画面だけであってもよいし、重ねる側(上側)の画面および重ねられる側(下側)の画面の双方であってもよい。以下では、説明の複雑化を避けるため、アルファデータを備えた重ねる側(上側)の画面(動画)がデブロッキングフィルタ処理の処理量の低減の対象である場合について説明する。
ここでブレンド処理部213によって実行されるブレンド処理(アルファブレンディング)について簡単に説明する。
第1の画像(下側)上に第2の画像(上側)を画素単位で重ね合わせる場合、ブレンド処理部213は、次の(1)式によって、この重ね合わせ後の合成画像の各画素の値を演算する。
V=α×B+(1−α)A …(1)式
ここで、Vはアルファブレンディングで得られる合成画像の各画素の値で、αは第2の画像の各画素に対応するアルファデータで0〜1の値をとる。Bは第2の画像の各画素の値で、Aは第1の画像の各画素の値である。
いま、図5に示すように、1920×1080画素の第1の画面(a1)上に720×480画素の第2の画面(a2)を重ね合わせた合成画面(a3)をブレンド処理(アルファブレンディング)で生成する場合を考える。
この場合、1920×1080画素の第1の画面(a1)のうち、720×480画素の第2の画面(a2)が重畳されない領域の各画素のアルファデータは0である。そのため、720×480画素の第2の画面(a2)が重畳されない領域は透明となるので、合成画面(a3)上における当該領域には第1の画面(a1)の画像データが100%の不透明度で表示される。また、720×480画素の第2の画面(a2)の画像データの各画素は、合成画面(a3)上において、第2の画面(a2)の画像データに対応するアルファデータで指定される透明度で第1の画面(a1)の画像データ上に表示される。例えば、アルファデータ=1の第2の画面(a2)の画像データの画素は100%の不透明度で表示され、当該画素位置に対応する第1の画面(a1)の画像データの画素は表示されないことになる。
次に、図6を参照して、動画像ストリームに含まれる参照画面および非参照画面について説明する。
デコード処理前の動画像ストリームに含まれる各種の画面は、所定の順序でソフトウェアデコーダ(図4)に入力されて動き補償フレーム間予測やフレーム内予測などの処理が施される。ここでは、画面(Iピクチャ)401,画面(Bピクチャ)402,画面(Bピクチャ)403,画面(Bピクチャ)404,画面(Pピクチャ405)がこの順序でソフトウェアデコーダに入力されて処理される場合を考える。
なお、Pピクチャは、1つの画面を参照することによって動き補償フレーム間予測を行うための画面である。Bピクチャは、2つの画面を参照することによって動き補償フレーム間予測を行うための画面である。Iピクチャは、他の画面を参照することなく当該画面内(イントラ)だけで独立してフレーム内予測を行うための画面である。
図6中に示される画面401は、他の画面を参照することはないが、画面402,画面403,および画面405から参照される。また、画面403は、画面401および画面405を参照し、画面402および画面404から参照される。また、画面405は、画面401を参照し、画面403および画面404から参照される。このように画面間予測に際して他の画面から参照される画面401,画面403,および画面405は、参照画面に該当する。
一方、図6中に示される画面402は、画面401および画面403を参照するが、他の画面からは参照されない。また、画面404は、画面403および画面405を参照するが、他の画面からは参照されない。このように画面間予測に際して他の画面から参照されない画面402および画面404は、非参照画面に該当する。
前述の特殊デコード処理においてデブロッキングフィルタ処理の処理量を低減させる制御方法としては、以下のような3つの方法が挙げられる。
制御方法1: ある条件が成立したときに、非参照画面に対するデブロッキングフィルタ処理を無効(disable)にする。なお、対象の画像が参照画面であるか非参照画面であるかは、後述するNAL(Network Abstraction Layer)ユニットに含まれるnal_ref_idcの値を参照することで判別することができる。例えばnal_ref_idcの値が0の場合、その画像は非参照画面である。
制御方法2: ある条件が成立したときに、非参照画面もしくは全画像に対するデブロッキングフィルタ処理のフィルタ強度を小さくする。なお、フィルタ強度は、フィルタ処理の対象となる画素の属性から求まるbS(Boundary Strength)によって決定される。bSは、0,1,2,3,4のいずれかの値を示す。例えば、bSの値が0の場合、フィルタ処理は行われない。一方、bSの値が4の場合は、最も強いフィルタ処理が行われ、それに伴い、演算量も増大する。この制御方法2では、例えば、実際のbSの値が1,2,3の場合には、bS値=0に対応する強度でフィルタ処理が行われるように(即ち、フィルタ強度が小さくなるように)制御し、また、実際のbSの値が4の場合には、bS値=4に対応する強度でフィルタ処理が行われるように(即ち、フィルタ強度がそのまま維持されるように)制御する。
制御方法3: ある条件が成立したときに、全画面に対するデブロッキングフィルタ処理を無効(disable)にする。
上述の制御方法1〜3を適宜組み合わせることにより、例えば、画像のブレンド処理が施される場合に指定されている透過率が小さい画素に対してはデコード後の画像の品質を劣化させない制御を行い、上記透過率が小さい画素に対してはデブロッキングフィルタ処理の演算量が低減されるような制御を行うことができる。
図7は、上述の制御方法1〜3を組み合わせて実現される制御の一例を説明するための図である。
この例においては、動画像ストリームに含まれる画面に対してブレンド処理が施される場合に、指定されている透過率に応じて、デブロッキングフィルタ処理の処理量(もしくは演算量)が段階的に変化するように制御される。
例えば、画像のブレンド処理が施される際、指定されている透過率が60%を超える場合には、非参照画面を対象としてデブロッキングフィルタ処理の強度を小さくするための制御モードC1が適用される。また、指定されている透過率が70%を超える場合には、非参照画面を対象としてデブロッキングフィルタ処理を省略するための制御モードC2が適用される。また、指定されている透過率が80%を超える場合には、全画面を対象としてデブロッキングフィルタ処理の強度を小さくための制御モードC3が適用される。また、指定されている透過率が90%を超える場合には、全画面を対象としてデブロッキングフィルタ処理を省略するための制御モードC4が適用される。
以下、図8のフローチャートを参照して、ビデオ再生アプリケーションプログラム201によって実行されるデコード処理の手順を説明する。
ビデオ再生アプリケーションプログラム201は、デコード処理の実行期間中、ブレンド処理部213によるアルファブレンディングの実行有無を監視し(ステップS101)、アルファブレンディングが行われていなければ(ステップS101のNO)、CPU111に実行させるべきデコード処理として上述の通常デコード処理を選択し、これによって図4で説明した一連の処理をCPU111上で実行する(ステップS102)。
一方、アルファブレンディングが行われていれば(ステップS101のYES)、ビデオ再生アプリケーションプログラム201は、CPU111に実行させるべきデコード処理として上述の特殊デコード処理を選択し、指定されている透過率に応じた制御モード(図7)を選定する(ステップS103)。
例えば、指定されている透過率が60%を超える場合には、非参照画面を対象としてデブロッキングフィルタ処理の強度を小さくするための制御モードC1が適用される。また、指定されている透過率が70%を超える場合には、非参照画面を対象としてデブロッキングフィルタ処理を省略するための制御モードC2が適用される。また、指定されている透過率が80%を超える場合には、全画面を対象としてデブロッキングフィルタ処理の強度を小さくための制御モードC3が適用される。また、指定されている透過率が90%を超える場合には、全画面を対象としてデブロッキングフィルタ処理を省略するための制御モードC4が適用される。
上記制御モードの選定に際し、ビデオ再生アプリケーションプログラム201は、必要に応じて、動画像ストリームに含まれるシンタックス情報を解析することにより、符号化対象画面が非参照画面であるか否かを判別する。このシンタックス情報は、動画像ストリームのシーケンス構造を示す情報である。上述の動きベクトル情報、フレーム内予測情報、およびモード情報等もシンタックス情報の一部である。ビデオ再生アプリケーションプログラム201は、エントロピー復号された後のシンタックス情報に基づいて、動画像ストリームに含まれる符号化画面群の中から非参照画面群を検出することができる。
具体的には、H.264のシーケンスの構造は、図9のように複数のアクセスユニット(AU)から構成されている。各アクセスユニットは1つの画面に対応している。各アクセスユニットは複数のNALユニットから構成されている。各NALユニットは図10に示すようにヘッダ部とデータ部に分かれている。NALユニットは32種類あり、NALヘッダ部を解析することによってその種類を判別することができる。このNALヘッダ部には、前述のnal_ref_idcが含まれている。従って、このnal_ref_idcの値を参照することにより、対象の画像が参照画面であるか非参照画面であるかを判別することができる。例えばnal_ref_idcの値が0の場合、その画像は非参照画面であることが判かる。
そして、ビデオ再生アプリケーションプログラム201は、選定した制御モードに従ってデブロッキングフィルタ処理の処理量を低減させるデコード処理をCPU111上で実行する(ステップS104)。
動画像ストリーム全てのデコードが完了するまで、上述のステップS101〜S104の処理は繰り返し実行される(ステップS105)。
このように画像のブレンド処理が施される場合に、指定されている透過率に応じた制御モードが選定され、デブロッキングフィルタ処理の処理量が適切な分だけ低減された特殊デコード処理が行われる。
なお、本実施形態では、デブロッキングフィルタ処理の処理量の低減の対象が重ねる側(上側)の画面である場合を例にとって説明したが、代わりに、その対象が重ねられる側(下側)の画面であってもよいし、重ねる側(上側)の画面および重ねられる側(下側)の画面の双方であってもよい。その場合の制御方法や動作については、前述の図7や図8を用いて説明した内容と同様となる。
以上のように、本実施形態によれば、デコード処理の対象となる画面がアルファブレンディングされる場合、指定されている透過率に応じて段階的にデコード処理を低減させるような制御が可能となるため、視聴者に対してデコード後の画像の画質が急激に劣化するような印象を与えることを回避することができ、また、デコード遅延によるフレームドロップを可能な限り回避することができ、スムーズな動画再生を実現することができる。
なお、上述のデコード制御処理は全てコンピュータプログラムによって実現されているので、このコンピュータプログラムをコンピュータ読み取り可能な記憶媒体を通じて通常のコンピュータに導入するだけで、本実施形態と同様の効果を容易に実現することができる。
また、本実施形態のソフトウェアデコーダは、パーソナルコンピュータに限らず、PDA、携帯型電話機等にも適用することができる。
また、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に構成要素を適宜組み合わせてもよい。
本発明の一実施形態に係るコンピュータの概観を示す斜視図。 図1のコンピュータのシステム構成を示すブロック図。 図1のコンピュータで用いられるビデオ再生アプリケーションプログラムの機能構成を示すブロック図。 図3のビデオ再生アプリケーションプログラムによって実現されるソフトウェアデコーダの構成を示すブロック図。 ブレンド処理(アルファブレンディング)の一例を説明するための図。 動画像ストリームに含まれる参照画面および非参照画面を説明するための図。 図3のビデオ再生アプリケーションプログラムによってデブロッキングフィルタ処理の処理量を低減させる制御の一例を説明するための図。 図3のビデオ再生アプリケーションプログラムによって実行されるデコード処理の手順を示すフローチャート。 図3のビデオ再生アプリケーションプログラムによってデコードされる動画像ストリームの構造を示す図。 図9の動画像ストリームのアクセスユニットの構造を示す図。
符号の説明
10…コンピュータ、111…CPU、113…メモリ、114…グラフィクスコントローラ、201…ビデオ再生アプリケーション、211…デコード制御モジュール、212…デコード実行モジュール、213…ブレンド処理部、301…エントロピー復号部、302…逆量子化部、303…逆DCT部、304…加算部、305…デブロッキングフィルタ部、306…フレームメモリ、307…動きベクトル予測部、308…補間予測部、309…重み付き予測部、310…イントラ予測部、311…モード切替スイッチ部、401〜405…画面。

Claims (9)

  1. 圧縮符号化された動画像ストリームをデコードする情報処理装置であって、
    前記動画像ストリームに含まれる画面に対してブロック歪みを低減するためのデブロッキングフィルタ処理を施す手段と、
    指定された透過率で第1の画面上に第2の画面を重畳させるブレンド処理を施す手段と、
    前記動画像ストリームに含まれる画面に対して前記ブレンド処理が施されるか否かを判定し、当該ブレンド処理が施される場合に、前記透過率に応じて、前記第1の画面および前記第2の画面の少なくとも一方に対する前記デブロッキングフィルタ処理の処理量を変化させる制御手段とを具備することを特徴とする情報処理装置。
  2. 前記制御手段は、前記ブレンド処理が施される場合に、前記第1の画面および前記第2の画面のうち、動画に相当する画面に対するデブロッキングフィルタ処理の処理量を変化させることを特徴とする請求項2記載の情報処理装置。
  3. 前記制御手段は、前記ブレンド処理が施される場合に、前記透過率に応じて、前記デブロッキングフィルタ処理の強度を変化させることを特徴とする請求項1又は2記載の情報処理装置。
  4. 前記制御手段は、前記ブレンド処理が施される場合に、前記透過率が所定の基準値よりも大きければ、前記デブロッキングフィルタ処理の強度を小さくすることを特徴とする請求項3記載の情報処理装置。
  5. 前記制御手段は、前記ブレンド処理が施される場合に、前記透過率に応じて、前記デブロッキングフィルタ処理の処理量変化の対象とされるべき画面を変えることを特徴とする請求項1乃至4のいずれかに記載の情報処理装置。
  6. 前記制御手段は、前記ブレンド処理が施される場合に、前記透過率が所定の基準値よりも大きければ、前記動画像ストリームに含まれる画面群のうち、画面間予測に際して他の画面から参照されない非参照画面に対するデブロッキングフィルタ処理の強度を小さくすることを特徴とする請求項5記載の情報処理装置。
  7. 圧縮符号化された動画像ストリームをデコードするデコード処理をコンピュータに実行させるプログラムであって、
    前記動画像ストリームに含まれる画面に対してブロック歪みを低減するためのデブロッキングフィルタ処理を施す処理を、前記コンピュータに実行させる手順と、
    指定された透過率で第1の画面上に第2の画面を重畳させるブレンド処理が前記動画像ストリームに含まれる画面に対して施されるか否かを判定する処理を、前記コンピュータに実行させる手順と、
    前記ブレンド処理が施される場合に、前記透過率に応じて、前記第1の画面および前記第2の画面の少なくとも一方に対する前記デブロッキングフィルタ処理の処理量を変化させる処理を、前記コンピュータに実行させる手順とを具備することを特徴とするプログラム。
  8. 前記デブロッキングフィルタ処理の処理量を変化させる処理を前記コンピュータに実行させる手順は、前記ブレンド処理が施される場合に、前記透過率が所定の基準値よりも大きければ、前記デブロッキングフィルタ処理の強度を小さくする処理を前記コンピュータに実行させる手順を含むことを特徴とする請求項7記載のプログラム。
  9. 前記デブロッキングフィルタ処理の処理量を変化させる処理を前記コンピュータに実行させる手順は、前記ブレンド処理が施される場合に、前記透過率が所定の基準値よりも大きければ、前記動画像ストリームに含まれる画面群のうち、画面間予測に際して他の画面から参照されない非参照画面に対するデブロッキングフィルタ処理の強度を小さくする処理を前記コンピュータに実行させる手順を含むことを特徴とする請求項7記載のプログラム。
JP2005071108A 2005-03-14 2005-03-14 情報処理装置および同装置で用いられるプログラム Pending JP2006254320A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2005071108A JP2006254320A (ja) 2005-03-14 2005-03-14 情報処理装置および同装置で用いられるプログラム
EP20060110777 EP1703738A2 (en) 2005-03-14 2006-03-07 Deblocking method and apparatus for blended images
US11/374,103 US20060203910A1 (en) 2005-03-14 2006-03-14 Information processing apparatus and decoding method
CNA2006100679658A CN1835593A (zh) 2005-03-14 2006-03-14 信息处理设备和解码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005071108A JP2006254320A (ja) 2005-03-14 2005-03-14 情報処理装置および同装置で用いられるプログラム

Publications (1)

Publication Number Publication Date
JP2006254320A true JP2006254320A (ja) 2006-09-21

Family

ID=36581801

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005071108A Pending JP2006254320A (ja) 2005-03-14 2005-03-14 情報処理装置および同装置で用いられるプログラム

Country Status (4)

Country Link
US (1) US20060203910A1 (ja)
EP (1) EP1703738A2 (ja)
JP (1) JP2006254320A (ja)
CN (1) CN1835593A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008167449A (ja) * 2006-12-28 2008-07-17 Samsung Electronics Co Ltd 映像の符号化、復号化方法及び装置
JP2010507286A (ja) * 2006-10-13 2010-03-04 クゥアルコム・インコーポレイテッド 動き補償予測のための適応フィルタリングを備えたビデオ符号化
JP2015521445A (ja) * 2012-06-01 2015-07-27 アルカテル−ルーセント ビデオストリームを符号化するための方法および装置

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5030495B2 (ja) * 2006-07-14 2012-09-19 ソニー株式会社 再生装置、再生方法、プログラム、および記録媒体
JP4875007B2 (ja) * 2007-02-09 2012-02-15 パナソニック株式会社 動画像符号化装置、動画像符号化方法、及び、動画像復号化装置
US8878996B2 (en) * 2009-12-11 2014-11-04 Motorola Mobility Llc Selective decoding of an input stream
KR101341993B1 (ko) * 2010-10-06 2013-12-16 에스케이텔레콤 주식회사 고정밀 필터를 이용한 영상 부호화/복호화 방법 및 장치
CN112702598A (zh) * 2020-12-03 2021-04-23 浙江智慧视频安防创新中心有限公司 基于位移操作进行编解码的方法、装置、电子设备及介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6466226B1 (en) * 2000-01-10 2002-10-15 Intel Corporation Method and apparatus for pixel filtering using shared filter resource between overlay and texture mapping engines
JP4230636B2 (ja) * 2000-02-29 2009-02-25 株式会社東芝 動画像再生方法および動画像再生装置
JP3882651B2 (ja) * 2002-03-20 2007-02-21 富士ゼロックス株式会社 画像処理装置およびプログラム
JP2006254232A (ja) * 2005-03-11 2006-09-21 Toshiba Corp 情報処理装置およびプログラム

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010507286A (ja) * 2006-10-13 2010-03-04 クゥアルコム・インコーポレイテッド 動き補償予測のための適応フィルタリングを備えたビデオ符号化
JP2014039289A (ja) * 2006-10-13 2014-02-27 Qualcomm Incorporated 動き補償予測のための適応フィルタリングを備えたビデオ符号化
US9014280B2 (en) 2006-10-13 2015-04-21 Qualcomm Incorporated Video coding with adaptive filtering for motion compensated prediction
JP2008167449A (ja) * 2006-12-28 2008-07-17 Samsung Electronics Co Ltd 映像の符号化、復号化方法及び装置
JP2015521445A (ja) * 2012-06-01 2015-07-27 アルカテル−ルーセント ビデオストリームを符号化するための方法および装置

Also Published As

Publication number Publication date
US20060203910A1 (en) 2006-09-14
CN1835593A (zh) 2006-09-20
EP1703738A2 (en) 2006-09-20

Similar Documents

Publication Publication Date Title
JP4643453B2 (ja) 情報処理装置及び情報処理装置の動画像復号方法
JP2006254230A (ja) 情報処理装置およびプログラム
US8040951B2 (en) Information processing apparatus and program for use in the same
JP4825524B2 (ja) 動画像復号装置および動画像復号方法
JP2007174196A (ja) 情報処理装置、制御方法およびプログラム
JP2006254232A (ja) 情報処理装置およびプログラム
JP2008072647A (ja) 情報処理装置、デコーダおよび再生装置の動作制御方法
JP2006254320A (ja) 情報処理装置および同装置で用いられるプログラム
JP2006254231A (ja) 情報処理装置および同装置で用いられるプログラム
JP4649347B2 (ja) 情報処理装置及び情報処理装置の動画像復号方法
JP2009038501A (ja) 復号化装置および復号方法
JP2007318615A (ja) 動画再生装置、動画再生方法およびプログラム
JP2006101322A (ja) 情報処理装置および同装置で用いられるプログラム
JP2006101406A (ja) 情報処理装置および同装置で用いられるプログラム
JP2006101405A (ja) 情報処理装置および同装置で用いられるプログラム
JP2006101321A (ja) 情報処理装置および同装置で用いられるプログラム
JP5066232B2 (ja) 情報処理装置および画像処理方法
JP4282582B2 (ja) 情報処理装置および同装置で用いられるプログラム
JP2008311784A (ja) 動画像復号装置および動画像復号方法
JP2006101404A (ja) 情報処理装置および同装置で用いられるプログラム
JP2009182891A (ja) 情報処理装置およびプログラム
JP2006101323A (ja) 情報処理装置および同装置で用いられるプログラム
JP2013031018A (ja) 動画像復号装置及び動画像復号方法
JP2006101402A (ja) 情報処理装置および同装置で用いられるプログラム
JP2008085868A (ja) 情報処理装置および情報処理方法