JP2009272886A - 画像処理装置、画像処理方法 - Google Patents
画像処理装置、画像処理方法 Download PDFInfo
- Publication number
- JP2009272886A JP2009272886A JP2008121643A JP2008121643A JP2009272886A JP 2009272886 A JP2009272886 A JP 2009272886A JP 2008121643 A JP2008121643 A JP 2008121643A JP 2008121643 A JP2008121643 A JP 2008121643A JP 2009272886 A JP2009272886 A JP 2009272886A
- Authority
- JP
- Japan
- Prior art keywords
- prediction
- encoding
- unit
- data
- pixels
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
【課題】 勧告されている標準化技術に従った予測符号化を、より高速に行うための技術を提供すること。
【解決手段】 画像を構成する各画素ブロックのデータを順次入力し、入力画像バッファ100に格納する。ブロック制御部101は、画像処理装置の処理能力を示す能力情報を取得し、能力情報が示す処理能力が、設定された処理能力以上を示すか否かの判定を行い、この判定の結果に応じて、予測符号化単位を決定する。予測方向演算部102は、決定した予測符号化単位分のデータを入力画像バッファ100から読み出し、読み出したデータを用いて、決定した予測符号化単位のサイズに応じて決まる全ての予測符号化方向について予測残差を求める。そして、全ての予測符号化方向のうち、最も小さい予測残差が求まった予測符号化方向に従って、予測残差の符号化を行う。
【選択図】 図1
【解決手段】 画像を構成する各画素ブロックのデータを順次入力し、入力画像バッファ100に格納する。ブロック制御部101は、画像処理装置の処理能力を示す能力情報を取得し、能力情報が示す処理能力が、設定された処理能力以上を示すか否かの判定を行い、この判定の結果に応じて、予測符号化単位を決定する。予測方向演算部102は、決定した予測符号化単位分のデータを入力画像バッファ100から読み出し、読み出したデータを用いて、決定した予測符号化単位のサイズに応じて決まる全ての予測符号化方向について予測残差を求める。そして、全ての予測符号化方向のうち、最も小さい予測残差が求まった予測符号化方向に従って、予測残差の符号化を行う。
【選択図】 図1
Description
本発明は、予測符号化技術に関するものである。
1つの画像内で予測を行う符号化方法を採用している画像符号化方式としてMPEG―4やH.264が知られている。最新の符号化方式のH.264の画面内予測は、MPEG−4の画面内予測を発展させたもので、より効率的に符号化を行うことができる。MPEG−4とH.264の画面内予測符号化の主な違いとしては、予測を行うデータ数の増加、参照するブロックの数、予測方向の符号化、予測するブロック単位の種類の増加等が挙げられる。
以下、図8、図7を用いてH.264の画面内予測符号化の予測方向について説明する。
図8は、輝度信号について4×4画素単位の画面内予測符号化を行う際の予測方向を示した図である。図8中の斜線で塗りつぶされている画素は予測に用いる画素、白抜きの画素は符号化対象ブロックの画素、矢印は予測方向を示す。
予測に用いるブロックは、左上、上、右上、左方向の4つである。予測方向は予測モードとして表され、予測モード0は、隣接する上方向の画素を予測に用いた縦方向の予測である。予測モード1は、隣接する左方向の画素を用いた横方向の予測である。予測モード2は、隣接する左上の1画素、上、左方向の画素の平均値を用いた平均値予測である。予測モード3は、隣接する上、右上方向の画素を用いた予測である。予測モード4は、隣接する左上、上、左方向の画素を用いた予測である。予測モード5は、隣接する左上、上方向の画素を用いた予測である。予測モード6は、隣接する左上、左方向の画素を用いた予測である。予測モード7は、隣接する上、右上方向の画素を用いた予測である。予測モード8は、左方向の画素を用いた予測である。
図7は、輝度信号について16×16画素単位の画面内予測符号化を行う際の予測方向を示した図である。予測に用いるブロックは左上、上、右上、左方向の4つである。16×16画素は、4×4画素よりも予測方向が少なく、図7に示すようにモード0からモード3の4種類しかない。当然、予測する方向数が多い方が演算コストが高くなるので、4×4画素単位のブロック演算の方が16×16画素単位のブロック演算よりも処理が複雑になる。回路の場合、4×4画素単位の演算を高速に処理するためには全てのモードの演算を並列に行うか動作周波数を上げる必要がある。しかしながら、4×4画素の場合、隣接するブロックの画素を参照画素として使用するため、並列に動作させることが困難である。
この問題に対応するための技術が特許文献1に開示されている。特許文献1によれば、4×4ブロックの符号化順序を変更することで並列処理を可能にし、高速な処理を実現する。
特開2004−140473号公報
特許文献1に開示の技術を用いることで、高速処理は可能となる。しかしながら、符号化順序を変更することで、係る技術はH.264の勧告外となってしまう。さらに、特許文献1では高速化のために参照画素数を制限したり、参照画素の符号化前に規定値を参照画素として用いたりして符号化対象ブロックの符号化を行う。このように独自の仕様で符号化を施すため、専用の復号器を具備することになり、結果として、H.264の勧告に準拠した復号器では復号できない。
また、単に動作周波数を上げる方法でも、消費電力の増加や回路規模の増大につながり、組み込むシステムによっては搭載不可能な装置になってしまう可能性がある。そのため、搭載可能、かつ、許容される動作時間内に符号化を完了させるために最初から予測方向の種類を絞る場合も考えられる。例えば、4×4画素ブロック単位での予測方向は勧告では9種類あるが、回路規模・動作速度の面から3種類に絞らざるをえない状況も考え得る。しかしながら、時間的に余裕のあるシステムに組み込む場合、余裕があるにも関わらず性能が制限されることにつながってしまう、という問題もあった。
本発明は以上の問題に鑑みてなされたものであり、勧告されている標準化技術に従った予測符号化を、より高速に行うための技術を提供することを目的とする。
本発明の目的を達成するために、例えば、本発明の画像処理装置は以下の構成を備える。
即ち、予測符号化処理を行う画像処理装置であって、
画像を構成する各画素ブロックのデータを順次入力し、メモリに格納する入力手段と、
前記画像処理装置の処理能力を示す能力情報を取得する手段と、
前記能力情報が示す処理能力が、設定された処理能力以上を示すか否かの判定を行い、当該判定の結果に応じて、予測符号化単位を決定する決定手段と、
前記決定手段が決定した予測符号化単位分のデータを前記メモリから読み出し、読み出したデータを用いて、前記決定手段が決定した予測符号化単位のサイズに応じて決まる全ての予測符号化方向について予測残差を求める計算手段と、
前記全ての予測符号化方向のうち、最も小さい予測残差が求まった予測符号化方向に従って、当該予測残差の符号化を行う符号化手段と
ことを特徴とする。
画像を構成する各画素ブロックのデータを順次入力し、メモリに格納する入力手段と、
前記画像処理装置の処理能力を示す能力情報を取得する手段と、
前記能力情報が示す処理能力が、設定された処理能力以上を示すか否かの判定を行い、当該判定の結果に応じて、予測符号化単位を決定する決定手段と、
前記決定手段が決定した予測符号化単位分のデータを前記メモリから読み出し、読み出したデータを用いて、前記決定手段が決定した予測符号化単位のサイズに応じて決まる全ての予測符号化方向について予測残差を求める計算手段と、
前記全ての予測符号化方向のうち、最も小さい予測残差が求まった予測符号化方向に従って、当該予測残差の符号化を行う符号化手段と
ことを特徴とする。
本発明の目的を達成するために、例えば、本発明の画像処理方法は以下の構成を備える。
即ち、予測符号化処理を行う画像処理装置が行う画像処理方法であって、
画像を構成する各画素ブロックのデータを順次入力し、メモリに格納する入力工程と、
前記画像処理装置の処理能力を示す能力情報を取得する工程と、
前記能力情報が示す処理能力が、設定された処理能力以上を示すか否かの判定を行い、当該判定の結果に応じて、予測符号化単位を決定する決定工程と、
前記決定工程で決定した予測符号化単位分のデータを前記メモリから読み出し、読み出したデータを用いて、前記決定工程で決定した予測符号化単位のサイズに応じて決まる全ての予測符号化方向について予測残差を求める計算工程と、
前記全ての予測符号化方向のうち、最も小さい予測残差が求まった予測符号化方向に従って、当該予測残差の符号化を行う符号化工程と
ことを特徴とする。
画像を構成する各画素ブロックのデータを順次入力し、メモリに格納する入力工程と、
前記画像処理装置の処理能力を示す能力情報を取得する工程と、
前記能力情報が示す処理能力が、設定された処理能力以上を示すか否かの判定を行い、当該判定の結果に応じて、予測符号化単位を決定する決定工程と、
前記決定工程で決定した予測符号化単位分のデータを前記メモリから読み出し、読み出したデータを用いて、前記決定工程で決定した予測符号化単位のサイズに応じて決まる全ての予測符号化方向について予測残差を求める計算工程と、
前記全ての予測符号化方向のうち、最も小さい予測残差が求まった予測符号化方向に従って、当該予測残差の符号化を行う符号化工程と
ことを特徴とする。
本発明の構成によれば、勧告されている標準化技術に従った予測符号化を、より高速に行うことができる。
以下、添付図面を参照し、本発明の好適な実施形態について説明する。なお、以下説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載の構成の具体的な実施例の1つである。
[第1の実施形態]
図1は、1つの画像内(フレーム内)で予測符号化(イントラ予測符号化)を行う、本実施形態に係る画像処理装置の機能構成例を示すブロック図である。なお、イントラ予測符号化処理は、インター予測符号化処理と併用して行うのが一般的であるが、本実施形態は、イントラ予測符号化に係るものであるので、図1では、インター予測符号化に係る構成については省略している。
図1は、1つの画像内(フレーム内)で予測符号化(イントラ予測符号化)を行う、本実施形態に係る画像処理装置の機能構成例を示すブロック図である。なお、イントラ予測符号化処理は、インター予測符号化処理と併用して行うのが一般的であるが、本実施形態は、イントラ予測符号化に係るものであるので、図1では、インター予測符号化に係る構成については省略している。
入力画像バッファ100には、1フレーム分の画像(入力画像)が、画素ブロック(マクロブロック)毎に入力され、それぞれの画素ブロックのデータは、この入力画像バッファ100に格納(順次入力)される。本実施形態では、係る画素ブロックのサイズを16画素×16画素とするが、以下の説明は、係るサイズに限定したものではない。
ブロック制御部101には、画像処理装置の処理能力を示す能力情報が入力される。係る能力情報が示す処理能力については、画像処理装置の動作クロック周波数や、データバスの混雑度など、様々なものが考えられるが、本実施形態では一例として、能力情報は画像処理装置の動作クロック周波数を示すものとする。
そしてブロック制御部101は、係る能力情報が示す処理能力が、設定された処理能力以上を示すか否かの判定を行い、この判定の結果に応じて、予測符号化の単位(予測符号化単位)を決定する。そして決定した内容を、予測方向演算部102、参照画素制御部111、に通知する。
参照画素制御部111は、ブロック制御部101から通知された予測符号化単位に基づいて、係る予測符号化単位の符号化に必要な参照画素のデータを参照画素バッファ110から読み出し、読み出した参照画素のデータを予測方向演算部102に送出する。
予測方向演算部102は、ブロック制御部101から通知された予測符号化単位に基づいて、係る予測符号化単位分の画素データを入力画像バッファ100から読み出す。即ち、予測方向演算部102は、ブロック制御部101から通知された予測符号化単位毎に、入力画像バッファ100から画素データを読み出すことになる。
そして予測方向演算部102は、読み出した画素データと、参照画素制御部111から送出された参照画素のデータと、を用いて、ブロック制御部101から通知された予測符号化単位で決まる全ての予測符号化方向について、予測残差を求める計算処理を行う。そして予測方向演算部102は、それぞれの予測符号化方向について求めた予測残差のデータを、後段の予測モード判定部103に送出する。
予測モード判定部103は、予測方向演算部102がそれぞれの予測符号化方向について求めた予測残差のうち、最も小さい予測残差(最小予測残差)を特定し、特定した予測残差を求めた予測符号化方向(最適予測符号化方向)を特定する。そして、特定した予測符号化方向を予測モードとして設定する。例えば、予測符号化単位が4画素×4画素で、直上の画素を用いて求めた予測残差が最も小さい場合には、予測モード0を設定することになる。
そして予測方向演算部102は、設定した予測モードを示すデータを、符号化データバッファ107に送出すると共に、最小予測残差のデータを、後段の整数変換部104に送出する。
整数変換部104は、最小予測残差のデータについて整数変換処理を行い、整数変換処理結果のデータを、後段の量子化部105に送出する。
量子化部105は、整数変換部104から受けた整数変換処理結果のデータに対して量子化処理を行い、量子化処理結果のデータを、逆量子化部108、エントロピー符号化部106に送出する。
エントロピー符号化部106は、量子化部105から受けた量子化処理結果のデータに対してエントロピー符号化を行い、エントロピー符号化結果のデータを、後段の符号化データバッファ107に送出する。なお、係る符号化処理結果のデータは、予測モード判定部103から符号化データバッファ107に送出された「予測モードを示すデータ」と共に、符号化データバッファ107に格納されることになる。そして、符号化データバッファ107に1マクロブロック分のデータが蓄積されると、この1マクロブロック分のデータが符号化ストリームとして、符号化データバッファ107から外部に送出される。符号化ストリームの送出先については特に限定するものではない。
一方、逆量子化部108は、量子化部105から受けた量子化処理結果のデータに対して逆量子化処理を行うことで、整数変換部104による整数変換処理結果のデータを復元する。そして逆量子化部108は、この復元した整数変換処理結果のデータを、後段の逆整数変換部109に送出する。
逆整数変換部109は、逆量子化部108から受けた整数変換処理結果のデータに対して、逆整数変換処理を行うことで、予測残差のデータを復元する。そして、逆整数変換部109は、復元した予測残差のデータのうち、次に予測方向演算部102にて参照画素のデータとして用いる予測残差のデータのみを、参照画素バッファ110に送出する。
次に、予測方向演算部102についてより詳細に説明する。
図2は、予測方向演算部102の機能構成例を示すブロック図である。
200は入力画像選択スイッチであり、ブロック制御部101から通知された予測符号化単位に応じて、端子a、端子bの何れかを選択する。ブロック制御部101から通知された予測符号化単位が16画素×16画素である場合には、入力画像選択スイッチ200は端子aを選択する。これにより、入力画像バッファ100から16画素×16画素のサイズ(第2のサイズ)の画素データが、この端子aを介して後段の16×16予測モード演算部201に入力されることになる。一方、ブロック制御部101から通知された予測符号化単位が4画素×4画素である場合には、入力画像選択スイッチ200は端子bを選択する。これにより、入力画像バッファ100から4画素×4画素のサイズ(第1のサイズ)の画素データが、この端子bを介して後段の4×4予測モード演算部202に入力されることになる。
16×16予測モード演算部201は、端子aを介して入力画像バッファ100から入力された16画素×16画素の画素データと、参照画素制御部111から受けた参照画素のデータとを取得する。そしてこれらのデータを用いて、図7に示したような4つの予測符号化方向のそれぞれについて、予測残差を求める処理を行う。
4×4予測モード演算部202は、端子bを介して入力画像バッファ100から入力された4画素×4画素の画素データと、参照画素制御部111から受けた参照画素のデータとを取得する。そしてこれらのデータを用いて、図8に示したような9つの予測符号化方向のそれぞれについて、予測残差を求める処理を行う。
203は、予測画像選択スイッチであり、入力画像選択スイッチ200が端子aを選択した場合には、端子cを選択するように動作する。また入力画像選択スイッチ200が端子bを選択した場合には、予測画像選択スイッチ203は、端子dを選択するように動作する。
従って、16×16予測モード演算部201が求めた4つの予測残差のデータは、端子cを介して後段の予測モード判定部103に送出される。また、4×4予測モード演算部202が求めた9つの予測残差のデータは、端子dを介して後段の予測モード判定部103に送出される。もちろん、16×16予測モード演算部201、4×4予測モード演算部202は何れか一方のみが動作するので、予測画像選択スイッチ203からは、上記4つの予測残差のデータ、上記9つの予測残差のデータの何れかが出力されることになる。
なお、上述の説明からも分かるように、予測方向演算部102は、H.264勧告に準拠した動作を行っている。
図3は、本実施形態に係る画像処理装置が行う予測符号化処理のフローチャートである。
先ず、ステップS301では、ブロック制御部101は、能力情報を取得する。取得形態については特に限定しないが、ユーザがキーボードやマウスなどを用いて手動で入力したものを取得するようにしても良いし、予めメモリに記録されているものを読み出すことで取得するようにしても良い。
次に、ステップS302では、入力画像バッファ100は、入力された16画素×16画素のサイズのマクロブロックのデータを格納する。
次に、ステップS303では、ブロック制御部101は、ステップS301で取得した能力情報が示す処理能力が、設定された処理能力以上を示すか否かの判定を行う。例えば、現フレームの画像を4画素×4画素の予測符号化単位で符号化するために要する処理サイクル数を現フレームの画像を符号化する為に与えられた時間で割った結果xが、画像処理装置の動作クロック周波数y以上であるのか否かを判断する。係る判断の結果、x≧yである場合、規定時間内に現フレームの画像の符号化を完了させるためには符号化速度を上げなくてはいけないので、予測符号化単位を16画素×16画素に設定する。一方、x<yである場合、処理時間に余裕があると見なし、予測符号化単位を4画素×4画素に設定する。しかし、処理時間に余裕がある場合の予測符号化単位は、画像の性質によっては、16画素×16画素であっても良い。
なお、画像処理装置の能力に基づいて予測符号化単位を16画素×16画素にするのか4画素×4画素にするのかを判断するための処理内容については適宜変形しうるものであるし、そもそも、係る判定のために用いる情報として、能力情報以外を用いても良い。
例えば、現在の動作クロック周波数が、時間内に予測方向演算に必要な最大サイクル数を満たすかどうかを判定する。ここで最大サイクル数とは、入力画像が全て最も演算コストの高い状態、すなわち4画素×4画素の単位で予測残差を求める処理を行ったときに必要なサイクル数のことである。
何れにせよ、ステップS303において、能力情報が示す処理能力が、設定された処理能力以上を示す場合には処理をステップS305に進めるし、能力情報が示す処理能力が、設定された処理能力よりも低い場合には、処理をステップS304に進める。
ステップS305では、ブロック制御部101は、予測符号化単位として4画素×4画素(第1のサイズ)を設定する。そして、ブロック制御部101は、係る予測符号化単位を、予測方向演算部102、参照画素制御部111、に通知する。
一方、ステップS304では、ブロック制御部101は、予測符号化単位として16画素×16画素(第2のサイズ)を設定する。そして、ブロック制御部101は、係る予測符号化単位を、予測方向演算部102、参照画素制御部111、に通知する。
次に、ステップS306では、予測方向演算部102は、ブロック制御部101から通知された予測符号化単位に基づいて、係る予測符号化単位分の画素データを入力画像バッファ100から読み出す。一方、参照画素制御部111は、ブロック制御部101から通知された予測符号化単位に基づいて、係る予測符号化単位の符号化に必要な参照画素のデータを参照画素バッファ110から読み出し、読み出した参照画素のデータを予測方向演算部102に送出する。そして予測方向演算部102は、読み出した画素データと、参照画素制御部111から送出された参照画素のデータと、を用いて、ブロック制御部101から通知された予測符号化単位で決まる全ての予測符号化方向について、予測残差を求める計算処理を行う。
より詳しくはステップS306では、予測符号化単位が16画素×16画素である場合、予測方向演算部102は、入力画像バッファ100から読み出した16画素×16画素の画素データと、参照画素制御部111から受けた参照画素のデータとを取得する。そして予測方向演算部102は、これらのデータを用いて、図7に示したような4つの予測符号化方向のそれぞれについて、予測残差を求める処理を行う。一方、予測符号化単位が4画素×4画素である場合、ステップS306では、予測方向演算部102は、入力画像バッファ100から読み出した4画素×4画素の画素データと、参照画素制御部111から受けた参照画素のデータとを取得する。そして予測方向演算部102は、これらのデータを用いて、図8に示したような9つの予測符号化方向のそれぞれについて、予測残差を求める処理を行う。
そして予測方向演算部102は、それぞれの予測符号化方向について求めた予測残差のデータを、後段の予測モード判定部103に送出する。
ステップS307では、予測モード判定部103は、予測方向演算部102がそれぞれの予測符号化方向について求めた予測残差のうち、最も小さい予測残差(最小予測残差)を特定し、特定した予測残差を求めた予測符号化方向を特定する。そして、特定した予測符号化方向を予測モードとして設定する。そして予測方向演算部102は、設定した予測モードを示すデータを、符号化データバッファ107に送出すると共に、最小予測残差のデータを、後段の整数変換部104に送出する。
ステップS308では、整数変換部104は、最小予測残差のデータについて整数変換処理を行い、整数変換処理結果のデータを、後段の量子化部105に送出する。
ステップS309では、量子化部105は、整数変換部104から受けた整数変換処理結果のデータに対して量子化処理を行い、量子化処理結果のデータを、逆量子化部108、エントロピー符号化部106に送出する。
ステップS310では、エントロピー符号化部106は、量子化部105から受けた量子化処理結果のデータに対してエントロピー符号化を行い、エントロピー符号化結果のデータを、後段の符号化データバッファ107に送出する。なお、係る符号化処理結果のデータは、予測モード判定部103から符号化データバッファ107に送出された「予測モードを示すデータ」と共に、符号化データバッファ107に格納されることになる。
一方、ステップS312では、逆量子化部108は、量子化部105から受けた量子化処理結果のデータに対して逆量子化処理を行うことで、整数変換部104による整数変換処理結果のデータを復元する。そして逆量子化部108は、この復元した整数変換処理結果のデータを、後段の逆整数変換部109に送出する。
次に、ステップS313では、逆整数変換部109は、逆量子化部108から受けた整数変換処理結果のデータに対して、逆整数変換処理を行うことで、予測残差のデータを復元する。そして、逆整数変換部109は、復元した予測残差のデータのうち、次に予測方向演算部102にて参照画素のデータとして用いる予測残差のデータのみを、参照画素バッファ110に送出する。
次に、現フレームの画像を構成する全てのマクロブロックについて符号化が終了したのであれば、ステップS314を介して本フローチャートに従った処理は終了する。一方、まだ符号化されていないマクロブロックがあるのであれば、ステップS314を介してステップS302に処理を戻し、次のマクロブロックについて以降の処理を行う。なお、能力情報が示す処理能力が、画像処理装置の動作状況に応じて適宜変化しうるものである場合には、処理はステップS301に戻し、定期的、若しくは不定期的に能力情報を取得する必要がある。
[第2の実施形態]
本実施形態は、予測符号化単位を4画素×4画素にするのか16画素×16画素にするのかの判定基準のみが第1の実施形態とは異なる。
本実施形態は、予測符号化単位を4画素×4画素にするのか16画素×16画素にするのかの判定基準のみが第1の実施形態とは異なる。
図4は、本実施形態に係る予測符号化処理のフローチャートである。
図4は、上記ステップS303の代わりに、ステップS401における判断処理を行う点のみが図3とは異なる。本実施形態では、ステップS401において、残りの処理許容時間と、残りのマクロブロックを全て4画素×4画素の予測符号化行った場合に費やす時間と、を比較し、間に合うかどうかを判断する。
ステップS401では、現フレームについて与えられた規定時間内で全てのマクロブロックを符号化すべく、残り全てを4画素×4画素の予測符号化単位で符号化した場合でも処理時間的に余裕があるところまでは4画素×4画素の予測符号化単位で符号化する。そして、全てを4画素×4画素の予測符号化単位で符号化した場合に処理時間が間に合わなくなるときに16画素×16画素の予測符号化単位で符号化する。
しかし、処理時間に余裕がある場合の予測符号化単位は、画像の性質によっては、16画素×16画素であっても良い。
[第3の実施形態]
本実施形態は、予測符号化単位を4画素×4画素にするのか16画素×16画素にするのかの判定基準のみが第1の実施形態とは異なる。本実施形態では、画像の中央部付近を4画素×4画素の予測符号化単位で符号化し、画像の端部付近を16画素×16画素の予測符号化単位で符号化する。即ち、本実施形態では、上記能力情報の代わりに、符号化対象の領域の位置情報を用いることになる。
本実施形態は、予測符号化単位を4画素×4画素にするのか16画素×16画素にするのかの判定基準のみが第1の実施形態とは異なる。本実施形態では、画像の中央部付近を4画素×4画素の予測符号化単位で符号化し、画像の端部付近を16画素×16画素の予測符号化単位で符号化する。即ち、本実施形態では、上記能力情報の代わりに、符号化対象の領域の位置情報を用いることになる。
図5は、本実施形態で行う予測符号化対象の画像500において、4画素×4画素の予測符号化単位で符号化する領域502と、16画素×16画素の予測符号化単位で符号化する領域501とを示す図である。図5に示す如く、領域502の上下端は、画像500の上下端から距離Hだけ内側に位置しており、領域502の左右端は、画像500の左右端から距離Wだけ内側に位置している。しかし、領域502の予測符号化単位は、画像の性質によっては、16画素×16画素であっても良い。
このような場合、予測方向演算部102は、入力画像バッファ100から読み出そうとする領域のデータが、領域502に該当するのか、領域501に該当するのかを判断する。そして、領域501に該当すると判断した場合には、16画素×16画素の予測符号化単位で入力画像バッファ100からデータを読み出す。一方、領域502に該当すると判断した場合には、4画素×4画素の予測符号化単位で入力画像バッファ100からデータを読み出す。
なお、領域502の予測符号化単位は、画像の性質によっては、16画素×16画素であっても良い。この場合、予測方向演算部102は、入力画像バッファ100から読み出そうとする領域のデータが、領域502に該当すると判断した場合には、16画素×16画素の予測符号化単位で入力画像バッファ100からデータを読み出す。
通常、撮影者は意図して写したいと思ったものを画面の中央に持ってくる。そこで、画面の中央部の解像度がなるべく高くできるように画面の端の部分の解像度を落とす。以上のように制御することで、画面内の重要なものに対して、効率よく予測方向演算を行うことが可能となる。
なお、第1,2の実施形態では、能力情報の一例として動作クロック周波数を挙げたが、上述の通り、これに限定するものではない。例えば、最近のカメラは画面上で複数のAFエリアをもつものがあるが、それらの情報を利用して、合焦する部分を強制的に4画素×4画素単位に符号化するという逆の使い方も可能である。また、肌色を検出し、人物に対する予測方向の解像度を上げることも考えられる。
なお、上述した各実施形態の内容は適宜組み合わせて用いても良い。
[第4の実施形態]
図1に示した各部は全て、ハードウェアでもって構成しても良いが、一部をソフトウェアでもって構成しても良い。例えば、入力画像バッファ100、参照画素バッファ110、符号化データバッファ107をメモリでもって構成し、それ以外の各部をソフトウェアでもって構成しても良い。この場合、係るメモリと、係るソフトウェアを実行するCPUと、を有するコンピュータに係るソフトウェアをインストールし、このCPUがこのソフトウェアを実行することで、このコンピュータは上記画像処理装置として機能することになる。即ち、係るコンピュータは、上記実施形態に係る画像処理装置に適用することができる。
図1に示した各部は全て、ハードウェアでもって構成しても良いが、一部をソフトウェアでもって構成しても良い。例えば、入力画像バッファ100、参照画素バッファ110、符号化データバッファ107をメモリでもって構成し、それ以外の各部をソフトウェアでもって構成しても良い。この場合、係るメモリと、係るソフトウェアを実行するCPUと、を有するコンピュータに係るソフトウェアをインストールし、このCPUがこのソフトウェアを実行することで、このコンピュータは上記画像処理装置として機能することになる。即ち、係るコンピュータは、上記実施形態に係る画像処理装置に適用することができる。
図6は、上記実施形態に係る画像処理装置に適用可能なコンピュータのハードウェア構成例を示すブロック図である。
CPU601は、RAM602やROM603に格納されているコンピュータプログラムやデータを用いて、コンピュータ全体の制御を行うと共に、上記実施形態に係る画像処理装置が行うものとして上述した各処理を実行する。
RAM602は、外部記憶装置606からロードされたプログラムやデータ、I/F(インターフェース)607を介して外部から取得したデータ等を一時的に記憶するためのエリアを有する。更に、RAM602は、CPU601が各種の処理を実行する際に用いるワークエリアをも有する。即ち、RAM602は、各種のエリアを適宜提供することができる。例えば、RAM602は、入力画像バッファ100や参照画素バッファ110、符号化データバッファ107としても機能する。
ROM603には、ブートプログラムや、本コンピュータの設定データなどが格納されている。
操作部604は、キーボードやマウスなどにより構成されており、本コンピュータの操作者が操作することで、各種の指示をCPU601に対して入力することができる。
表示部605は、CRTや液晶画面等により構成されており、CPU601による処理結果を画像や文字などでもって表示することができる。
外部記憶装置606は、ハードディスクドライブ装置に代表される、大容量情報記憶装置である。外部記憶装置606には、OS(オペレーティングシステム)や、上記実施形態に係る画像処理装置が行うものとして上述した各処理をCPU601に実行させるためのコンピュータプログラムやデータが保存されている。係るコンピュータプログラムには以下の各部の機能をCPU601に実行させるためのコンピュータプログラム(換言すれば、以下の各部に相当するコンピュータプログラム)が含まれている。
・ ブロック制御部101
・ 予測方向演算部102
・ 参照画素制御部111
・ 予測モード判定部103
・ 整数変換部104
・ 量子化部105
・ エントロピー符号化部106
・ 逆整数変換部109
・ 逆量子化部108
また、係るデータには、上記説明において、既知の情報として説明しているものが含まれている。
・ 予測方向演算部102
・ 参照画素制御部111
・ 予測モード判定部103
・ 整数変換部104
・ 量子化部105
・ エントロピー符号化部106
・ 逆整数変換部109
・ 逆量子化部108
また、係るデータには、上記説明において、既知の情報として説明しているものが含まれている。
外部記憶装置606に保存されているコンピュータプログラムやデータは、CPU601による制御に従って適宜RAM602にロードされ、CPU601による処理対象となる。
I/F607は、外部装置とのデータ通信を可能にするものであり、例えば、上記能力情報をこのI/F607を介して取得しても良い。
608は上述の各部を繋ぐバスである。
[その他の実施形態]
また、本発明の目的は、以下のようにすることによって達成されることはいうまでもない。即ち、前述した実施形態の機能を実現するソフトウェアのプログラムコード(コンピュータプログラム)を記録した記録媒体(または記憶媒体)を、システムあるいは装置に供給する。係る記憶媒体は言うまでもなく、コンピュータ読み取り可能な記憶媒体である。そして、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読み出し実行する。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
また、本発明の目的は、以下のようにすることによって達成されることはいうまでもない。即ち、前述した実施形態の機能を実現するソフトウェアのプログラムコード(コンピュータプログラム)を記録した記録媒体(または記憶媒体)を、システムあるいは装置に供給する。係る記憶媒体は言うまでもなく、コンピュータ読み取り可能な記憶媒体である。そして、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読み出し実行する。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
また、コンピュータが読み出したプログラムコードを実行することにより、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行う。その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれたとする。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
Claims (8)
- 予測符号化処理を行う画像処理装置であって、
画像を構成する各画素ブロックのデータを順次入力し、メモリに格納する入力手段と、
前記画像処理装置の処理能力を示す能力情報を取得する手段と、
前記能力情報が示す処理能力が、設定された処理能力以上を示すか否かの判定を行い、当該判定の結果に応じて、予測符号化単位を決定する決定手段と、
前記決定手段が決定した予測符号化単位分のデータを前記メモリから読み出し、読み出したデータを用いて、前記決定手段が決定した予測符号化単位のサイズに応じて決まる全ての予測符号化方向について予測残差を求める計算手段と、
前記全ての予測符号化方向のうち、最も小さい予測残差が求まった予測符号化方向に従って、当該予測残差の符号化を行う符号化手段と
ことを特徴とする画像処理装置。 - 前記能力情報は、前記画像処理装置の動作クロック周波数を示す情報であることを特徴とする請求項1に記載の画像処理装置。
- 前記決定手段は、前記能力情報が示す処理能力が、設定された処理能力以上を示す場合には、予測符号化単位のサイズを第1のサイズに設定し、前記能力情報が示す処理能力が、設定された処理能力よりも低い場合には、予測符号化単位のサイズを前記第1のサイズよりも大きい第2のサイズに設定することを特徴とする請求項1に記載の画像処理装置。
- 前記決定手段は、定期的、若しくは不定期的に前記判定を行い、画像を符号化する為に与えられた時間内に前記符号化手段による符号化が完了しないと判断した場合には、予測符号化単位のサイズを前記第2のサイズに設定することを特徴とする請求項3に記載の画像処理装置。
- 更に、前記符号化手段による符号化結果と共に、予測符号化方向を示す情報を、出力する出力手段を備えることを特徴とする請求項1に記載の画像処理装置。
- 予測符号化処理を行う画像処理装置が行う画像処理方法であって、
画像を構成する各画素ブロックのデータを順次入力し、メモリに格納する入力工程と、
前記画像処理装置の処理能力を示す能力情報を取得する工程と、
前記能力情報が示す処理能力が、設定された処理能力以上を示すか否かの判定を行い、当該判定の結果に応じて、予測符号化単位を決定する決定工程と、
前記決定工程で決定した予測符号化単位分のデータを前記メモリから読み出し、読み出したデータを用いて、前記決定工程で決定した予測符号化単位のサイズに応じて決まる全ての予測符号化方向について予測残差を求める計算工程と、
前記全ての予測符号化方向のうち、最も小さい予測残差が求まった予測符号化方向に従って、当該予測残差の符号化を行う符号化工程と
ことを特徴とする画像処理方法。 - コンピュータに請求項に記載の画像処理装置が有する各手段として機能させるためのコンピュータプログラム。
- 請求項に記載のコンピュータプログラムを格納した、コンピュータ読み取り可能な記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008121643A JP2009272886A (ja) | 2008-05-07 | 2008-05-07 | 画像処理装置、画像処理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008121643A JP2009272886A (ja) | 2008-05-07 | 2008-05-07 | 画像処理装置、画像処理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009272886A true JP2009272886A (ja) | 2009-11-19 |
Family
ID=41439039
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008121643A Withdrawn JP2009272886A (ja) | 2008-05-07 | 2008-05-07 | 画像処理装置、画像処理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009272886A (ja) |
-
2008
- 2008-05-07 JP JP2008121643A patent/JP2009272886A/ja not_active Withdrawn
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9979979B2 (en) | Image coding apparatus, method for coding image, program therefor, image decoding apparatus, method for decoding image, and program therefor | |
CN107295347B (zh) | 用于解码合并模式下的运动信息的装置 | |
JP5620641B2 (ja) | 適応型走査を用いる動画の符号化/復号化装置及びその方法 | |
JP4519933B2 (ja) | 動画像符号化装置および動画像符号化方法 | |
JP6376719B2 (ja) | 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム | |
JP2009302776A (ja) | 画像符号化装置、その制御方法、及びコンピュータプログラム | |
US20140185688A1 (en) | Coding system transform apparatus, coding system transform method, and storage medium | |
US20140029671A1 (en) | Image encoding or decoding apparatus, system, method, and storage medium for encoding or decoding a plurality of images in parallel | |
CN106028031B (zh) | 视频编码装置和方法、视频解码装置和方法 | |
JP6077811B2 (ja) | 画像符号化装置、画像符号化方法およびプログラム | |
JP6985546B2 (ja) | 画像復号装置、画像復号方法及びプログラム | |
CN107071406B (zh) | 运动图像解码方法和编码方法 | |
JP5378939B2 (ja) | 画像符号化方法、画像復号化方法、画像符号化装置、及び画像復号化装置、並びにプログラム | |
JP2009089267A (ja) | イントラ予測符号化装置、イントラ予測符号化方法及びプログラム | |
CN102905125B (zh) | 运动图像编码设备和运动图像编码方法 | |
JP6652068B2 (ja) | 動画像符号化装置、動画像符号化方法および動画像符号化プログラム | |
WO2020255667A1 (ja) | 画像符号化装置、画像復号装置、画像符号化方法、画像復号方法 | |
TWI782853B (zh) | 圖像編碼裝置、圖像編碼方法、圖像解碼裝置、圖像解碼方法 | |
JP2009272886A (ja) | 画像処理装置、画像処理方法 | |
JP2017073602A (ja) | 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム | |
US20130107971A1 (en) | Image encoding apparatus, image encoding method and program, image decoding apparatus, image decoding method and program | |
JP2021002774A (ja) | 画像符号化装置、画像復号装置、画像符号化方法、画像復号方法 | |
US20210377533A1 (en) | Image encoding apparatus, image encoding method, image decoding apparatus, image decoding method, and non-transitory computer-readable storage medium | |
US20240163441A1 (en) | Image encoding apparatus, image encoding method, image decoding apparatus, image decoding method, and non-transitory computer-readable storage medium | |
US20240163440A1 (en) | Image encoding apparatus, image encoding method, image decoding apparatus, image decoding method, and non-transitory computer-readable storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20110802 |