(57)【要約】【課題】  勧告されている標準化技術に従った予測符号化を、より高速に行うための技術を提供すること。【解決手段】  画像を構成する各画素ブロックのデータを順次入力し、入力画像バッファ１００に格納する。ブロック制御部１０１は、画像処理装置の処理能力を示す能力情報を取得し、能力情報が示す処理能力が、設定された処理能力以上を示すか否かの判定を行い、この判定の結果に応じて、予測符号化単位を決定する。予測方向演算部１０２は、決定した予測符号化単位分のデータを入力画像バッファ１００から読み出し、読み出したデータを用いて、決定した予測符号化単位のサイズに応じて決まる全ての予測符号化方向について予測残差を求める。そして、全ての予測符号化方向のうち、最も小さい予測残差が求まった予測符号化方向に従って、予測残差の符号化を行う。【選択図】  図１
2009272886.tif 000002
【特許請求の範囲】
【請求項１】
予測符号化処理を行う画像処理装置であって、
画像を構成する各画素ブロックのデータを順次入力し、メモリに格納する入力手段と、
前記画像処理装置の処理能力を示す能力情報を取得する手段と、
前記能力情報が示す処理能力が、設定された処理能力以上を示すか否かの判定を行い、当該判定の結果に応じて、予測符号化単位を決定する決定手段と、
前記決定手段が決定した予測符号化単位分のデータを前記メモリから読み出し、読み出したデータを用いて、前記決定手段が決定した予測符号化単位のサイズに応じて決まる全ての予測符号化方向について予測残差を求める計算手段と、
前記全ての予測符号化方向のうち、最も小さい予測残差が求まった予測符号化方向に従って、当該予測残差の符号化を行う符号化手段と
ことを特徴とする画像処理装置。
【請求項２】
前記能力情報は、前記画像処理装置の動作クロック周波数を示す情報であることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記決定手段は、前記能力情報が示す処理能力が、設定された処理能力以上を示す場合には、予測符号化単位のサイズを第１のサイズに設定し、前記能力情報が示す処理能力が、設定された処理能力よりも低い場合には、予測符号化単位のサイズを前記第１のサイズよりも大きい第２のサイズに設定することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記決定手段は、定期的、若しくは不定期的に前記判定を行い、画像を符号化する為に与えられた時間内に前記符号化手段による符号化が完了しないと判断した場合には、予測符号化単位のサイズを前記第２のサイズに設定することを特徴とする請求項３に記載の画像処理装置。
【請求項５】
更に、前記符号化手段による符号化結果と共に、予測符号化方向を示す情報を、出力する出力手段を備えることを特徴とする請求項１に記載の画像処理装置。
【請求項６】
予測符号化処理を行う画像処理装置が行う画像処理方法であって、
画像を構成する各画素ブロックのデータを順次入力し、メモリに格納する入力工程と、
前記画像処理装置の処理能力を示す能力情報を取得する工程と、
前記能力情報が示す処理能力が、設定された処理能力以上を示すか否かの判定を行い、当該判定の結果に応じて、予測符号化単位を決定する決定工程と、
前記決定工程で決定した予測符号化単位分のデータを前記メモリから読み出し、読み出したデータを用いて、前記決定工程で決定した予測符号化単位のサイズに応じて決まる全ての予測符号化方向について予測残差を求める計算工程と、
前記全ての予測符号化方向のうち、最も小さい予測残差が求まった予測符号化方向に従って、当該予測残差の符号化を行う符号化工程と
ことを特徴とする画像処理方法。
【請求項７】
コンピュータに請求項に記載の画像処理装置が有する各手段として機能させるためのコンピュータプログラム。
【請求項８】
請求項に記載のコンピュータプログラムを格納した、コンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、予測符号化技術に関するものである。
【背景技術】
【０００２】
１つの画像内で予測を行う符号化方法を採用している画像符号化方式としてＭＰＥＧ―４やＨ．２６４が知られている。最新の符号化方式のＨ．２６４の画面内予測は、ＭＰＥＧ−４の画面内予測を発展させたもので、より効率的に符号化を行うことができる。ＭＰＥＧ−４とＨ．２６４の画面内予測符号化の主な違いとしては、予測を行うデータ数の増加、参照するブロックの数、予測方向の符号化、予測するブロック単位の種類の増加等が挙げられる。
【０００３】
以下、図８、図７を用いてＨ．２６４の画面内予測符号化の予測方向について説明する。
【０００４】
図８は、輝度信号について４×４画素単位の画面内予測符号化を行う際の予測方向を示した図である。図８中の斜線で塗りつぶされている画素は予測に用いる画素、白抜きの画素は符号化対象ブロックの画素、矢印は予測方向を示す。
【０００５】
予測に用いるブロックは、左上、上、右上、左方向の４つである。予測方向は予測モードとして表され、予測モード０は、隣接する上方向の画素を予測に用いた縦方向の予測である。予測モード１は、隣接する左方向の画素を用いた横方向の予測である。予測モード２は、隣接する左上の１画素、上、左方向の画素の平均値を用いた平均値予測である。予測モード３は、隣接する上、右上方向の画素を用いた予測である。予測モード４は、隣接する左上、上、左方向の画素を用いた予測である。予測モード５は、隣接する左上、上方向の画素を用いた予測である。予測モード６は、隣接する左上、左方向の画素を用いた予測である。予測モード７は、隣接する上、右上方向の画素を用いた予測である。予測モード８は、左方向の画素を用いた予測である。
【０００６】
図７は、輝度信号について１６×１６画素単位の画面内予測符号化を行う際の予測方向を示した図である。予測に用いるブロックは左上、上、右上、左方向の４つである。１６×１６画素は、４×４画素よりも予測方向が少なく、図７に示すようにモード０からモード３の４種類しかない。当然、予測する方向数が多い方が演算コストが高くなるので、４×４画素単位のブロック演算の方が１６×１６画素単位のブロック演算よりも処理が複雑になる。回路の場合、４×４画素単位の演算を高速に処理するためには全てのモードの演算を並列に行うか動作周波数を上げる必要がある。しかしながら、４×４画素の場合、隣接するブロックの画素を参照画素として使用するため、並列に動作させることが困難である。
【０００７】
この問題に対応するための技術が特許文献１に開示されている。特許文献１によれば、４×４ブロックの符号化順序を変更することで並列処理を可能にし、高速な処理を実現する。
【特許文献１】特開２００４−１４０４７３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
特許文献１に開示の技術を用いることで、高速処理は可能となる。しかしながら、符号化順序を変更することで、係る技術はＨ．２６４の勧告外となってしまう。さらに、特許文献１では高速化のために参照画素数を制限したり、参照画素の符号化前に規定値を参照画素として用いたりして符号化対象ブロックの符号化を行う。このように独自の仕様で符号化を施すため、専用の復号器を具備することになり、結果として、Ｈ．２６４の勧告に準拠した復号器では復号できない。
【０００９】
また、単に動作周波数を上げる方法でも、消費電力の増加や回路規模の増大につながり、組み込むシステムによっては搭載不可能な装置になってしまう可能性がある。そのため、搭載可能、かつ、許容される動作時間内に符号化を完了させるために最初から予測方向の種類を絞る場合も考えられる。例えば、４×４画素ブロック単位での予測方向は勧告では９種類あるが、回路規模・動作速度の面から３種類に絞らざるをえない状況も考え得る。しかしながら、時間的に余裕のあるシステムに組み込む場合、余裕があるにも関わらず性能が制限されることにつながってしまう、という問題もあった。
【００１０】
本発明は以上の問題に鑑みてなされたものであり、勧告されている標準化技術に従った予測符号化を、より高速に行うための技術を提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明の目的を達成するために、例えば、本発明の画像処理装置は以下の構成を備える。
【００１２】
即ち、予測符号化処理を行う画像処理装置であって、
画像を構成する各画素ブロックのデータを順次入力し、メモリに格納する入力手段と、
前記画像処理装置の処理能力を示す能力情報を取得する手段と、
前記能力情報が示す処理能力が、設定された処理能力以上を示すか否かの判定を行い、当該判定の結果に応じて、予測符号化単位を決定する決定手段と、
前記決定手段が決定した予測符号化単位分のデータを前記メモリから読み出し、読み出したデータを用いて、前記決定手段が決定した予測符号化単位のサイズに応じて決まる全ての予測符号化方向について予測残差を求める計算手段と、
前記全ての予測符号化方向のうち、最も小さい予測残差が求まった予測符号化方向に従って、当該予測残差の符号化を行う符号化手段と
ことを特徴とする。
【００１３】
本発明の目的を達成するために、例えば、本発明の画像処理方法は以下の構成を備える。
【００１４】
即ち、予測符号化処理を行う画像処理装置が行う画像処理方法であって、
画像を構成する各画素ブロックのデータを順次入力し、メモリに格納する入力工程と、
前記画像処理装置の処理能力を示す能力情報を取得する工程と、
前記能力情報が示す処理能力が、設定された処理能力以上を示すか否かの判定を行い、当該判定の結果に応じて、予測符号化単位を決定する決定工程と、
前記決定工程で決定した予測符号化単位分のデータを前記メモリから読み出し、読み出したデータを用いて、前記決定工程で決定した予測符号化単位のサイズに応じて決まる全ての予測符号化方向について予測残差を求める計算工程と、
前記全ての予測符号化方向のうち、最も小さい予測残差が求まった予測符号化方向に従って、当該予測残差の符号化を行う符号化工程と
ことを特徴とする。
【発明の効果】
【００１５】
本発明の構成によれば、勧告されている標準化技術に従った予測符号化を、より高速に行うことができる。
【発明を実施するための最良の形態】
【００１６】
以下、添付図面を参照し、本発明の好適な実施形態について説明する。なお、以下説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載の構成の具体的な実施例の１つである。
【００１７】
［第１の実施形態］
図１は、１つの画像内（フレーム内）で予測符号化（イントラ予測符号化）を行う、本実施形態に係る画像処理装置の機能構成例を示すブロック図である。なお、イントラ予測符号化処理は、インター予測符号化処理と併用して行うのが一般的であるが、本実施形態は、イントラ予測符号化に係るものであるので、図１では、インター予測符号化に係る構成については省略している。
【００１８】
入力画像バッファ１００には、１フレーム分の画像（入力画像）が、画素ブロック（マクロブロック）毎に入力され、それぞれの画素ブロックのデータは、この入力画像バッファ１００に格納（順次入力）される。本実施形態では、係る画素ブロックのサイズを１６画素×１６画素とするが、以下の説明は、係るサイズに限定したものではない。
【００１９】
ブロック制御部１０１には、画像処理装置の処理能力を示す能力情報が入力される。係る能力情報が示す処理能力については、画像処理装置の動作クロック周波数や、データバスの混雑度など、様々なものが考えられるが、本実施形態では一例として、能力情報は画像処理装置の動作クロック周波数を示すものとする。
【００２０】
そしてブロック制御部１０１は、係る能力情報が示す処理能力が、設定された処理能力以上を示すか否かの判定を行い、この判定の結果に応じて、予測符号化の単位（予測符号化単位）を決定する。そして決定した内容を、予測方向演算部１０２、参照画素制御部１１１、に通知する。
【００２１】
参照画素制御部１１１は、ブロック制御部１０１から通知された予測符号化単位に基づいて、係る予測符号化単位の符号化に必要な参照画素のデータを参照画素バッファ１１０から読み出し、読み出した参照画素のデータを予測方向演算部１０２に送出する。
【００２２】
予測方向演算部１０２は、ブロック制御部１０１から通知された予測符号化単位に基づいて、係る予測符号化単位分の画素データを入力画像バッファ１００から読み出す。即ち、予測方向演算部１０２は、ブロック制御部１０１から通知された予測符号化単位毎に、入力画像バッファ１００から画素データを読み出すことになる。
【００２３】
そして予測方向演算部１０２は、読み出した画素データと、参照画素制御部１１１から送出された参照画素のデータと、を用いて、ブロック制御部１０１から通知された予測符号化単位で決まる全ての予測符号化方向について、予測残差を求める計算処理を行う。そして予測方向演算部１０２は、それぞれの予測符号化方向について求めた予測残差のデータを、後段の予測モード判定部１０３に送出する。
【００２４】
予測モード判定部１０３は、予測方向演算部１０２がそれぞれの予測符号化方向について求めた予測残差のうち、最も小さい予測残差（最小予測残差）を特定し、特定した予測残差を求めた予測符号化方向（最適予測符号化方向）を特定する。そして、特定した予測符号化方向を予測モードとして設定する。例えば、予測符号化単位が４画素×４画素で、直上の画素を用いて求めた予測残差が最も小さい場合には、予測モード０を設定することになる。
【００２５】
そして予測方向演算部１０２は、設定した予測モードを示すデータを、符号化データバッファ１０７に送出すると共に、最小予測残差のデータを、後段の整数変換部１０４に送出する。
【００２６】
整数変換部１０４は、最小予測残差のデータについて整数変換処理を行い、整数変換処理結果のデータを、後段の量子化部１０５に送出する。
【００２７】
量子化部１０５は、整数変換部１０４から受けた整数変換処理結果のデータに対して量子化処理を行い、量子化処理結果のデータを、逆量子化部１０８、エントロピー符号化部１０６に送出する。
【００２８】
エントロピー符号化部１０６は、量子化部１０５から受けた量子化処理結果のデータに対してエントロピー符号化を行い、エントロピー符号化結果のデータを、後段の符号化データバッファ１０７に送出する。なお、係る符号化処理結果のデータは、予測モード判定部１０３から符号化データバッファ１０７に送出された「予測モードを示すデータ」と共に、符号化データバッファ１０７に格納されることになる。そして、符号化データバッファ１０７に１マクロブロック分のデータが蓄積されると、この１マクロブロック分のデータが符号化ストリームとして、符号化データバッファ１０７から外部に送出される。符号化ストリームの送出先については特に限定するものではない。
【００２９】
一方、逆量子化部１０８は、量子化部１０５から受けた量子化処理結果のデータに対して逆量子化処理を行うことで、整数変換部１０４による整数変換処理結果のデータを復元する。そして逆量子化部１０８は、この復元した整数変換処理結果のデータを、後段の逆整数変換部１０９に送出する。
【００３０】
逆整数変換部１０９は、逆量子化部１０８から受けた整数変換処理結果のデータに対して、逆整数変換処理を行うことで、予測残差のデータを復元する。そして、逆整数変換部１０９は、復元した予測残差のデータのうち、次に予測方向演算部１０２にて参照画素のデータとして用いる予測残差のデータのみを、参照画素バッファ１１０に送出する。
【００３１】
次に、予測方向演算部１０２についてより詳細に説明する。
【００３２】
図２は、予測方向演算部１０２の機能構成例を示すブロック図である。
【００３３】
２００は入力画像選択スイッチであり、ブロック制御部１０１から通知された予測符号化単位に応じて、端子ａ、端子ｂの何れかを選択する。ブロック制御部１０１から通知された予測符号化単位が１６画素×１６画素である場合には、入力画像選択スイッチ２００は端子ａを選択する。これにより、入力画像バッファ１００から１６画素×１６画素のサイズ（第２のサイズ）の画素データが、この端子ａを介して後段の１６×１６予測モード演算部２０１に入力されることになる。一方、ブロック制御部１０１から通知された予測符号化単位が４画素×４画素である場合には、入力画像選択スイッチ２００は端子ｂを選択する。これにより、入力画像バッファ１００から４画素×４画素のサイズ（第１のサイズ）の画素データが、この端子ｂを介して後段の４×４予測モード演算部２０２に入力されることになる。
【００３４】
１６×１６予測モード演算部２０１は、端子ａを介して入力画像バッファ１００から入力された１６画素×１６画素の画素データと、参照画素制御部１１１から受けた参照画素のデータとを取得する。そしてこれらのデータを用いて、図７に示したような４つの予測符号化方向のそれぞれについて、予測残差を求める処理を行う。
【００３５】
４×４予測モード演算部２０２は、端子ｂを介して入力画像バッファ１００から入力された４画素×４画素の画素データと、参照画素制御部１１１から受けた参照画素のデータとを取得する。そしてこれらのデータを用いて、図８に示したような９つの予測符号化方向のそれぞれについて、予測残差を求める処理を行う。
【００３６】
２０３は、予測画像選択スイッチであり、入力画像選択スイッチ２００が端子ａを選択した場合には、端子ｃを選択するように動作する。また入力画像選択スイッチ２００が端子ｂを選択した場合には、予測画像選択スイッチ２０３は、端子ｄを選択するように動作する。
【００３７】
従って、１６×１６予測モード演算部２０１が求めた４つの予測残差のデータは、端子ｃを介して後段の予測モード判定部１０３に送出される。また、４×４予測モード演算部２０２が求めた９つの予測残差のデータは、端子ｄを介して後段の予測モード判定部１０３に送出される。もちろん、１６×１６予測モード演算部２０１、４×４予測モード演算部２０２は何れか一方のみが動作するので、予測画像選択スイッチ２０３からは、上記４つの予測残差のデータ、上記９つの予測残差のデータの何れかが出力されることになる。
【００３８】
なお、上述の説明からも分かるように、予測方向演算部１０２は、Ｈ．２６４勧告に準拠した動作を行っている。
【００３９】
図３は、本実施形態に係る画像処理装置が行う予測符号化処理のフローチャートである。
【００４０】
先ず、ステップＳ３０１では、ブロック制御部１０１は、能力情報を取得する。取得形態については特に限定しないが、ユーザがキーボードやマウスなどを用いて手動で入力したものを取得するようにしても良いし、予めメモリに記録されているものを読み出すことで取得するようにしても良い。
【００４１】
次に、ステップＳ３０２では、入力画像バッファ１００は、入力された１６画素×１６画素のサイズのマクロブロックのデータを格納する。
【００４２】
次に、ステップＳ３０３では、ブロック制御部１０１は、ステップＳ３０１で取得した能力情報が示す処理能力が、設定された処理能力以上を示すか否かの判定を行う。例えば、現フレームの画像を４画素×４画素の予測符号化単位で符号化するために要する処理サイクル数を現フレームの画像を符号化する為に与えられた時間で割った結果ｘが、画像処理装置の動作クロック周波数ｙ以上であるのか否かを判断する。係る判断の結果、ｘ≧ｙである場合、規定時間内に現フレームの画像の符号化を完了させるためには符号化速度を上げなくてはいけないので、予測符号化単位を１６画素×１６画素に設定する。一方、ｘ＜ｙである場合、処理時間に余裕があると見なし、予測符号化単位を４画素×４画素に設定する。しかし、処理時間に余裕がある場合の予測符号化単位は、画像の性質によっては、１６画素×１６画素であっても良い。
【００４３】
なお、画像処理装置の能力に基づいて予測符号化単位を１６画素×１６画素にするのか４画素×４画素にするのかを判断するための処理内容については適宜変形しうるものであるし、そもそも、係る判定のために用いる情報として、能力情報以外を用いても良い。
【００４４】
例えば、現在の動作クロック周波数が、時間内に予測方向演算に必要な最大サイクル数を満たすかどうかを判定する。ここで最大サイクル数とは、入力画像が全て最も演算コストの高い状態、すなわち４画素×４画素の単位で予測残差を求める処理を行ったときに必要なサイクル数のことである。
【００４５】
何れにせよ、ステップＳ３０３において、能力情報が示す処理能力が、設定された処理能力以上を示す場合には処理をステップＳ３０５に進めるし、能力情報が示す処理能力が、設定された処理能力よりも低い場合には、処理をステップＳ３０４に進める。
【００４６】
ステップＳ３０５では、ブロック制御部１０１は、予測符号化単位として４画素×４画素（第１のサイズ）を設定する。そして、ブロック制御部１０１は、係る予測符号化単位を、予測方向演算部１０２、参照画素制御部１１１、に通知する。
【００４７】
一方、ステップＳ３０４では、ブロック制御部１０１は、予測符号化単位として１６画素×１６画素（第２のサイズ）を設定する。そして、ブロック制御部１０１は、係る予測符号化単位を、予測方向演算部１０２、参照画素制御部１１１、に通知する。
【００４８】
次に、ステップＳ３０６では、予測方向演算部１０２は、ブロック制御部１０１から通知された予測符号化単位に基づいて、係る予測符号化単位分の画素データを入力画像バッファ１００から読み出す。一方、参照画素制御部１１１は、ブロック制御部１０１から通知された予測符号化単位に基づいて、係る予測符号化単位の符号化に必要な参照画素のデータを参照画素バッファ１１０から読み出し、読み出した参照画素のデータを予測方向演算部１０２に送出する。そして予測方向演算部１０２は、読み出した画素データと、参照画素制御部１１１から送出された参照画素のデータと、を用いて、ブロック制御部１０１から通知された予測符号化単位で決まる全ての予測符号化方向について、予測残差を求める計算処理を行う。
【００４９】
より詳しくはステップＳ３０６では、予測符号化単位が１６画素×１６画素である場合、予測方向演算部１０２は、入力画像バッファ１００から読み出した１６画素×１６画素の画素データと、参照画素制御部１１１から受けた参照画素のデータとを取得する。そして予測方向演算部１０２は、これらのデータを用いて、図７に示したような４つの予測符号化方向のそれぞれについて、予測残差を求める処理を行う。一方、予測符号化単位が４画素×４画素である場合、ステップＳ３０６では、予測方向演算部１０２は、入力画像バッファ１００から読み出した４画素×４画素の画素データと、参照画素制御部１１１から受けた参照画素のデータとを取得する。そして予測方向演算部１０２は、これらのデータを用いて、図８に示したような９つの予測符号化方向のそれぞれについて、予測残差を求める処理を行う。
【００５０】
そして予測方向演算部１０２は、それぞれの予測符号化方向について求めた予測残差のデータを、後段の予測モード判定部１０３に送出する。
【００５１】
ステップＳ３０７では、予測モード判定部１０３は、予測方向演算部１０２がそれぞれの予測符号化方向について求めた予測残差のうち、最も小さい予測残差（最小予測残差）を特定し、特定した予測残差を求めた予測符号化方向を特定する。そして、特定した予測符号化方向を予測モードとして設定する。そして予測方向演算部１０２は、設定した予測モードを示すデータを、符号化データバッファ１０７に送出すると共に、最小予測残差のデータを、後段の整数変換部１０４に送出する。
【００５２】
ステップＳ３０８では、整数変換部１０４は、最小予測残差のデータについて整数変換処理を行い、整数変換処理結果のデータを、後段の量子化部１０５に送出する。
【００５３】
ステップＳ３０９では、量子化部１０５は、整数変換部１０４から受けた整数変換処理結果のデータに対して量子化処理を行い、量子化処理結果のデータを、逆量子化部１０８、エントロピー符号化部１０６に送出する。
【００５４】
ステップＳ３１０では、エントロピー符号化部１０６は、量子化部１０５から受けた量子化処理結果のデータに対してエントロピー符号化を行い、エントロピー符号化結果のデータを、後段の符号化データバッファ１０７に送出する。なお、係る符号化処理結果のデータは、予測モード判定部１０３から符号化データバッファ１０７に送出された「予測モードを示すデータ」と共に、符号化データバッファ１０７に格納されることになる。
【００５５】
一方、ステップＳ３１２では、逆量子化部１０８は、量子化部１０５から受けた量子化処理結果のデータに対して逆量子化処理を行うことで、整数変換部１０４による整数変換処理結果のデータを復元する。そして逆量子化部１０８は、この復元した整数変換処理結果のデータを、後段の逆整数変換部１０９に送出する。
【００５６】
次に、ステップＳ３１３では、逆整数変換部１０９は、逆量子化部１０８から受けた整数変換処理結果のデータに対して、逆整数変換処理を行うことで、予測残差のデータを復元する。そして、逆整数変換部１０９は、復元した予測残差のデータのうち、次に予測方向演算部１０２にて参照画素のデータとして用いる予測残差のデータのみを、参照画素バッファ１１０に送出する。
【００５７】
次に、現フレームの画像を構成する全てのマクロブロックについて符号化が終了したのであれば、ステップＳ３１４を介して本フローチャートに従った処理は終了する。一方、まだ符号化されていないマクロブロックがあるのであれば、ステップＳ３１４を介してステップＳ３０２に処理を戻し、次のマクロブロックについて以降の処理を行う。なお、能力情報が示す処理能力が、画像処理装置の動作状況に応じて適宜変化しうるものである場合には、処理はステップＳ３０１に戻し、定期的、若しくは不定期的に能力情報を取得する必要がある。
【００５８】
［第２の実施形態］
本実施形態は、予測符号化単位を４画素×４画素にするのか１６画素×１６画素にするのかの判定基準のみが第１の実施形態とは異なる。
【００５９】
図４は、本実施形態に係る予測符号化処理のフローチャートである。
【００６０】
図４は、上記ステップＳ３０３の代わりに、ステップＳ４０１における判断処理を行う点のみが図３とは異なる。本実施形態では、ステップＳ４０１において、残りの処理許容時間と、残りのマクロブロックを全て４画素×４画素の予測符号化行った場合に費やす時間と、を比較し、間に合うかどうかを判断する。
【００６１】
ステップＳ４０１では、現フレームについて与えられた規定時間内で全てのマクロブロックを符号化すべく、残り全てを４画素×４画素の予測符号化単位で符号化した場合でも処理時間的に余裕があるところまでは４画素×４画素の予測符号化単位で符号化する。そして、全てを４画素×４画素の予測符号化単位で符号化した場合に処理時間が間に合わなくなるときに１６画素×１６画素の予測符号化単位で符号化する。
【００６２】
しかし、処理時間に余裕がある場合の予測符号化単位は、画像の性質によっては、１６画素×１６画素であっても良い。
【００６３】
［第３の実施形態］
本実施形態は、予測符号化単位を４画素×４画素にするのか１６画素×１６画素にするのかの判定基準のみが第１の実施形態とは異なる。本実施形態では、画像の中央部付近を４画素×４画素の予測符号化単位で符号化し、画像の端部付近を１６画素×１６画素の予測符号化単位で符号化する。即ち、本実施形態では、上記能力情報の代わりに、符号化対象の領域の位置情報を用いることになる。
【００６４】
図５は、本実施形態で行う予測符号化対象の画像５００において、４画素×４画素の予測符号化単位で符号化する領域５０２と、１６画素×１６画素の予測符号化単位で符号化する領域５０１とを示す図である。図５に示す如く、領域５０２の上下端は、画像５００の上下端から距離Ｈだけ内側に位置しており、領域５０２の左右端は、画像５００の左右端から距離Ｗだけ内側に位置している。しかし、領域５０２の予測符号化単位は、画像の性質によっては、１６画素×１６画素であっても良い。
【００６５】
このような場合、予測方向演算部１０２は、入力画像バッファ１００から読み出そうとする領域のデータが、領域５０２に該当するのか、領域５０１に該当するのかを判断する。そして、領域５０１に該当すると判断した場合には、１６画素×１６画素の予測符号化単位で入力画像バッファ１００からデータを読み出す。一方、領域５０２に該当すると判断した場合には、４画素×４画素の予測符号化単位で入力画像バッファ１００からデータを読み出す。
【００６６】
なお、領域５０２の予測符号化単位は、画像の性質によっては、１６画素×１６画素であっても良い。この場合、予測方向演算部１０２は、入力画像バッファ１００から読み出そうとする領域のデータが、領域５０２に該当すると判断した場合には、１６画素×１６画素の予測符号化単位で入力画像バッファ１００からデータを読み出す。
【００６７】
通常、撮影者は意図して写したいと思ったものを画面の中央に持ってくる。そこで、画面の中央部の解像度がなるべく高くできるように画面の端の部分の解像度を落とす。以上のように制御することで、画面内の重要なものに対して、効率よく予測方向演算を行うことが可能となる。
【００６８】
なお、第１，２の実施形態では、能力情報の一例として動作クロック周波数を挙げたが、上述の通り、これに限定するものではない。例えば、最近のカメラは画面上で複数のAFエリアをもつものがあるが、それらの情報を利用して、合焦する部分を強制的に４画素×４画素単位に符号化するという逆の使い方も可能である。また、肌色を検出し、人物に対する予測方向の解像度を上げることも考えられる。
【００６９】
なお、上述した各実施形態の内容は適宜組み合わせて用いても良い。
【００７０】
［第４の実施形態］
図１に示した各部は全て、ハードウェアでもって構成しても良いが、一部をソフトウェアでもって構成しても良い。例えば、入力画像バッファ１００、参照画素バッファ１１０、符号化データバッファ１０７をメモリでもって構成し、それ以外の各部をソフトウェアでもって構成しても良い。この場合、係るメモリと、係るソフトウェアを実行するＣＰＵと、を有するコンピュータに係るソフトウェアをインストールし、このＣＰＵがこのソフトウェアを実行することで、このコンピュータは上記画像処理装置として機能することになる。即ち、係るコンピュータは、上記実施形態に係る画像処理装置に適用することができる。
【００７１】
図６は、上記実施形態に係る画像処理装置に適用可能なコンピュータのハードウェア構成例を示すブロック図である。
【００７２】
ＣＰＵ６０１は、ＲＡＭ６０２やＲＯＭ６０３に格納されているコンピュータプログラムやデータを用いて、コンピュータ全体の制御を行うと共に、上記実施形態に係る画像処理装置が行うものとして上述した各処理を実行する。
【００７３】
ＲＡＭ６０２は、外部記憶装置６０６からロードされたプログラムやデータ、Ｉ／Ｆ（インターフェース）６０７を介して外部から取得したデータ等を一時的に記憶するためのエリアを有する。更に、ＲＡＭ６０２は、ＣＰＵ６０１が各種の処理を実行する際に用いるワークエリアをも有する。即ち、ＲＡＭ６０２は、各種のエリアを適宜提供することができる。例えば、ＲＡＭ６０２は、入力画像バッファ１００や参照画素バッファ１１０、符号化データバッファ１０７としても機能する。
【００７４】
ＲＯＭ６０３には、ブートプログラムや、本コンピュータの設定データなどが格納されている。
【００７５】
操作部６０４は、キーボードやマウスなどにより構成されており、本コンピュータの操作者が操作することで、各種の指示をＣＰＵ６０１に対して入力することができる。
【００７６】
表示部６０５は、ＣＲＴや液晶画面等により構成されており、ＣＰＵ６０１による処理結果を画像や文字などでもって表示することができる。
【００７７】
外部記憶装置６０６は、ハードディスクドライブ装置に代表される、大容量情報記憶装置である。外部記憶装置６０６には、ＯＳ（オペレーティングシステム）や、上記実施形態に係る画像処理装置が行うものとして上述した各処理をＣＰＵ６０１に実行させるためのコンピュータプログラムやデータが保存されている。係るコンピュータプログラムには以下の各部の機能をＣＰＵ６０１に実行させるためのコンピュータプログラム（換言すれば、以下の各部に相当するコンピュータプログラム）が含まれている。
【００７８】
・  ブロック制御部１０１
・  予測方向演算部１０２
・  参照画素制御部１１１
・  予測モード判定部１０３
・  整数変換部１０４
・  量子化部１０５
・  エントロピー符号化部１０６
・  逆整数変換部１０９
・  逆量子化部１０８
また、係るデータには、上記説明において、既知の情報として説明しているものが含まれている。
【００７９】
外部記憶装置６０６に保存されているコンピュータプログラムやデータは、ＣＰＵ６０１による制御に従って適宜ＲＡＭ６０２にロードされ、ＣＰＵ６０１による処理対象となる。
【００８０】
Ｉ／Ｆ６０７は、外部装置とのデータ通信を可能にするものであり、例えば、上記能力情報をこのＩ／Ｆ６０７を介して取得しても良い。
【００８１】
６０８は上述の各部を繋ぐバスである。
【００８２】
［その他の実施形態］
また、本発明の目的は、以下のようにすることによって達成されることはいうまでもない。即ち、前述した実施形態の機能を実現するソフトウェアのプログラムコード（コンピュータプログラム）を記録した記録媒体（または記憶媒体）を、システムあるいは装置に供給する。係る記憶媒体は言うまでもなく、コンピュータ読み取り可能な記憶媒体である。そして、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行する。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
【００８３】
また、コンピュータが読み出したプログラムコードを実行することにより、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行う。その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００８４】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれたとする。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００８５】
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【００８６】
【図１】１つの画像内（フレーム内）で予測符号化（イントラ予測符号化）を行う、本発明の第１の実施形態に係る画像処理装置の機能構成例を示すブロック図である。
【図２】予測方向演算部１０２の機能構成例を示すブロック図である。
【図３】本発明の第１の実施形態に係る画像処理装置が行う予測符号化処理のフローチャートである。
【図４】本発明の第２の実施形態に係る予測符号化処理のフローチャートである。
【図５】本発明の第３の実施形態で行う予測符号化対象の画像５００において、４画素×４画素の予測符号化単位で符号化する領域５０２と、１６画素×１６画素の予測符号化単位で符号化する領域５０１とを示す図である。
【図６】本発明の各実施形態に係る画像処理装置に適用可能なコンピュータのハードウェア構成例を示すブロック図である。
【図７】輝度信号について１６×１６画素単位の画面内予測符号化を行う際の予測方向を示した図である。
【図８】輝度信号について４×４画素単位の画面内予測符号化を行う際の予測方向を示した図である。
【図１】
2009272886.tif 000003
【図２】
2009272886.tif 000004
【図３】
2009272886.tif 000005
【図４】
2009272886.tif 000006
【図５】
2009272886.tif 000007
【図６】
2009272886.tif 000008
【図７】
2009272886.tif 000009
【図８】
2009272886.tif 000010