JP4557440B2 - 画像処理装置及び画像符号化装置及び画像復号装置 - Google Patents
画像処理装置及び画像符号化装置及び画像復号装置 Download PDFInfo
- Publication number
- JP4557440B2 JP4557440B2 JP2001007824A JP2001007824A JP4557440B2 JP 4557440 B2 JP4557440 B2 JP 4557440B2 JP 2001007824 A JP2001007824 A JP 2001007824A JP 2001007824 A JP2001007824 A JP 2001007824A JP 4557440 B2 JP4557440 B2 JP 4557440B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- pixel data
- pixel
- propagation
- shift register
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Image Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
【発明の属する技術分野】
本発明は、画像データをその属性データに基づいて処理する画像処理装置及び画像符号化装置及び画像復号装置に関する。
【0002】
【従来の技術】
画像(特に動画像)は、そのデータ量が非常に大きい。従って、画像を蓄積・伝送する際には、そのデータ量を大幅に削減するための圧縮処理が不可欠である。動画像を圧縮(符号化)する処理として、既にMPEG−1、MPEG−2などの国際標準が定められているが、これらはテレビカメラ等で撮影した矩形領域の画像のみを対象としている。
【0003】
画像の特徴は様々であるが、背景とその背景より手前にある被写体(オブジェクト)とからなる画像が数多く存在する。一般的に、背景となる画像は、激しい動きを伴なわず、撮影に使用するカメラの動きに合わせて全体が移動したり、背景中の様々なものが各々細かい動きをしたりする。それに対して、オブジェクトは、激しい動きを伴なう場合がある。このように、オブジェクトと背景とは異なる性質を有する。
【0004】
MPEG−1、MPEG−2に続いて標準化が進められているMPEG−4では、オブジェクトと背景とを別々に取り扱えるようにし、有用なオブジェクトを他で再利用することにより、動画コンテンツの生産性を高めたり、画像を見る側でオブジェクトを操作することができる枠組みを用意することで、画像に対して能動的な関係を築き、新しい表現ができるように考えられている。
【0005】
しかしながら、オブジェクトの形状は矩形ではなく任意であるため、従来のMPEG−1、MPEG−2で用いられてきた圧縮手法をそのまま適用することはできない。
【0006】
動画圧縮では、更にフレーム間の相関を利用してデータ量を減らす。フレーム間の相関を利用するということは、オブジェクトの現フレームのデータを符号化する際に、他のフレームにおける相関の強い領域を参照し、その差分値を符号化することである。
【0007】
オブジェクトが任意の形状であると、当然、参照される他のフレームにおけるオブジェクトの形状も任意であり、オブジェクトの外の領域においては値が無い状態である。これでは、ブロック単位の動きベクトル情報を求めることが出来ない。
【0008】
そこで、参照されるオブジェクトにパディング処理を施して矩形領域に広げた上でブロック単位の動きベクトル探索を行なう。
【0009】
2次元的な広がりを持つ画像データのパディング処理は、1次元のパディング処理を、横方向と縦方向に対して順に行なうことで実現する。1次元のパディング処理は以下のように行なうことができる。
【0010】
複数のオブジェクトで挟まれたオブジェクト外の領域(行または列)は、該領域の両端のオブジェクト内の画素データの平均値に置き換え、その他のオブジェクト外の領域は、該領域に接するオブジェクト内の画素データに置き換える。
【0011】
図1は、上記のパディング処理の一例を示す図である。図1では、水平(横)方向パディング処理を説明するため、ブロック内の1行分の2値形状情報(属性データ)と画素データとが示されている。但し、オブジェクト外の領域の画素データは、他の値で置き換えられるため、元の値は殆ど意味が無い。従って、オブジェクト外の領域の画素データの値は省略されている。
【0012】
図1(a)は2値形状情報、(b)はオブジェクト領域内の画素データを示している。この例では、ブロック内の1行分の画素数は16である。この16画素の中には、オブジェクト外の領域が4つある。具体的には、オブジェクト外の領域は、画素値”78”の画素の左の1画素からなる領域、画素値”74”の画素と画素値”56”の画素で挟まれた4画素からなる領域、画素値”64”の画素と画素値”42”の画素で挟まれた2画素からなる領域、画素値”42”の画素の右側の3画素からなる領域の4つである。
【0013】
両端の領域は、該領域に接するオブジェクト内の画素データで置き換えられるため、左端の1画素は画素値”78”の画素に置き換えられ、右端の3画素は画素値”42”の画素に置き換えられる。
【0014】
残りの2つの領域は、両側のオブジェクト内の画素に挟まれているので、左側の4画素は画素値”74”と”56”の平均値”65”の画素に置き換えられ、右側の2画素は画素値”64”と”42”の平均値”53”の画素に置き換えられる。その結果、図1(c)に示すような画素データが、パディング処理の結果として得られる。
【0015】
ブロックデータは、複数の行データからなり、それぞれの行データに水平方向パディング処理を施すことにより、図2(a)に示すオブジェクト領域内の画素データは、図2(b)のように広がる。ここで、斜線部は、オブジェクト内の領域及びパディング処理によってデータが補充された画素の領域を示す。
【0016】
水平方向パディング処理の次は、垂直方向パディング処理が実行される。垂直方向パディング処理は、処理の単位が横1行から縦1列に変わる点を除いて、処理方法は、水平方向パディング処理と同様である。垂直パディング処理の後には、図2(c)のようにブロック内の全てが有効な画素データで埋め尽くされる。
【0017】
【発明が解決しようとする課題】
本発明は、上記の背景に鑑みてなされたものであり、例えば、パディング処理を実行するための新規な画像処理装置を提供することを目的とする。
【0018】
【課題を解決するための手段】
本発明に係る画像処理装置は、入力した画像データをパディング処理し、出力する画像処理装置であって、
パディング処理対象の画像データ中の一次元に配列された画素データから、1サイクル毎に1画素データを入力しつつ1画素データずつシフトし、n個の画素データを記憶保持可能な第1のシフトレジスタと、
前記第1のシフトレジスタに保持されるn個の画素データに対し、各々がオブジェクト内、オブジェクト外のいずれに属するかを示す属性データを、前記1サイクル毎に1属性データを入力しつつ1属性データずつシフトするか、又は、n個の属性データを並列にロードして記憶保持することが可能な第2のシフトレジスタと、
前記第2のシフトレジスタに保持された属性データに基づき、前記第1のシフトレジスタに保持された画素データを、当該第1のシフトレジスタの終端から入力端に向かう方向に伝搬処理させる第1の伝搬手段と、
前記第2のシフトレジスタに保持された属性データに基づき、前記第1のシフトレジスタに保持された画素データを、当該第1のシフトレジスタの入力端から終端に向かう方向に伝搬処理させる第2の伝搬手段と、
前記第1の伝搬手段による、1つ前のサイクルにて、前記第1のシフトレジスタの終端の画素データに対する伝搬処理にて得られた画素データを、現サイクルの終端位置の伝搬対象の画素データとして補充するデータ補充手段と、
前記第2のシフトレジスタの終端の属性データが、当該属性データに対応する終端の画素データがオブジェクト内にあることを示している場合、前記第1の伝搬手段によって得られた終端の画素データと、前記第2の伝搬手段によって得られた終端の画素データの平均値を算出し、算出後の画素データをパディング処理結果の画素データとして出力し、
前記第2のシフトレジスタの終端の属性データが、当該属性データに対応する画素がオブジェクト外にあることを示している場合、前記データ補充手段から補充された画素データと、前記第2の伝搬手段によって得られた終端画素位置における伝搬画素データの平均値を算出し、算出後の画素データをパディング処理結果の画素データとして出力する演算手段とを備え、
前記第1の伝搬手段は、n個の第1の選択手段で構成され、
前記第2の伝搬手段は、n個の第2の選択手段で構成され、
前記第1又は第2のシフトレジスタの入力端から終端に向かう方向に並ぶ、前記n個の第1の選択手段をS1 1 乃至S1 n 、前記n個の第2の選択手段をS2 1 乃至S2 n 、前記第1のシフトレジスタの入力端子から終端に向かう第i番目の画素データをP i 、前記第i番目の画素データに対応する前記第2の保持手段に保持された第i番目の属性データをA i としたとき、
第i番目の前記第1の選択手段S1 i は、
(1)前記属性データA i が、画素データP i がオブジェクト内にあることを示している場合、前記画素データP i を選択出力し、
(2)前記属性データA i が、画素データP i がオブジェクト外にあることを示している場合であって、i<nの場合には前記第1の選択手段S1 i+1 からの画素データを選択出力し、i=nの場合には前記データ補充手段から補充された画素データを選択出力し、
第i番目の前記第2の選択手段S2 i は、
(3)前記属性データA i が、画素データP i がオブジェクト内にあることを示している場合、前記画素データP i を選択出力し、
(4)前記属性データA i が、画素データP i がオブジェクト外にあることを示している場合、前記第2の選択手段S2 i-1 からの画素データを選択出力することを特徴とする。
【0022】
本発明に係る画像処理装置において、前記第1の伝搬手段の第1の選択手段S1 1 の出力端子は、前記第2の伝搬手段の第2の選択手段S2 1 の入力端子に連結されていることが好ましい。
【0023】
本発明に係る画像処理装置において、前記第1の伝搬手段の第1選択手段S1 1 は、前記第2の伝搬手段の第2選択手段S2 1 に連結されており、前記第2のシフトレジスタには、前記第1及び第2の伝搬手段中を無効な画素データが伝搬しないように制御するデータが、前記属性データに続けて供給されることが好ましい。
【0025】
本発明に係る画像処理装置は、例えば、1つの一次元の画像データと次の一次元の画像データとを連続的に処理するように、前記第1及び第2の伝搬手段を制御する制御手段を更に備えることが好ましい。
【0026】
前記制御手段は、例えば、1つの一次元の画像データと次の一次元の画像データとの区切りを特定する区切り情報に基づいて、前記第1及び第2の伝搬手段を制御することが好ましい。
【0027】
前記制御手段は、例えば、1つの一次元の画像データの処理と次の一次元の画像データの処理とが干渉しないように、前記第1及び第2の伝搬手段を制御することが好ましい。
【0028】
本発明に係る画像処理装置は、例えば、前記第1の伝搬手段と前記演算手段との間及び前記第2の伝搬手段と前記演算手段との間に各々レジスタを更に備え、前記演算手段は、該レジスタを介して前記第1及び第2の伝搬手段から供給される画素データを入力として演算処理を実行することが好ましい。
【0033】
【発明の実施の形態】
まず、本出願人が他の出願において開示したパディング処理回路について説明する。
【0034】
本出願人が他の出願において開示したパディング処理回路は、1行が10画素のデータに対して1次元方向のパディング処理を施すが、この原理は、例えば、任意の数の画素データに対する1次元方向のパディング処理に拡張することができる。
【0035】
図3は、本出願人が他の出願において開示したパディング処理用の画像処理部の構成を示す図である。図3において、301は、パディング処理を施すべき一次元の画像データを構成する複数の画素データを入力する端子群、303は、一次元の画像データを構成する複数の画素データを保持するレジスタ群、305は、一次元の画像データを構成する各画素データに係る画素がオブジェクト内の画素であるか、オブジェクト外の画素であるかを表わす属性データとしての形状情報(ここでは、各画素に対して1ビット)を入力する端子群、307は、形状情報を保持するレジスタ群、321は、形状情報に基づいて該当する画素データを左方向に伝搬させるための左伝搬処理部、323は、形状情報に基づいて該当する画素データを右方向に伝搬させるための右伝搬処理部、325a〜jは、左伝搬処理部321を構成するセレクタ群、327a〜jは、右伝搬処理部323を構成するセレクタ群、331a〜jは、2つの画素データ間の平均値を演算するための演算器群である。
【0036】
パディング処理を施すべき画素データ、該画素データに対する2値形状情報は、1個ずつ或いは10個同時に端子301、305から各々入力され、レジスタ303、307に各々保持される。形状情報(2値)の“1”は、当該画素がオブジェクト内の画素であることを表わし、“0”は、当該画素がオブジェクト外の画素であることを表わす。
【0037】
レジスタ群303に保持された複数の画素データは、各々左伝搬処理部321、右伝搬処理部323内の対応するセレクタに入力される。レジスタ群307に保持された形状情報は、各々左伝搬処理部321、右伝搬処理部323内の対応するセレクタの制御信号として入力される。
【0038】
各セレクタは、該制御信号が“1”の時はレジスタ群303から入力される画素データを選択し、“0”の時は前段のセレクタで選択された画素データを選択する。これにより、オブジェクト外の画素をオブジェクト内の画素データで置き換えるように、画素データが伝搬する。
【0039】
左伝搬処理部321では、オブジェクト内の画素データが図3の左方向に伝搬し、右伝搬処理部323では、オブジェクト内の画素データが図3の右方向に伝搬する。
【0040】
各々のセレクタで選択された画素データは演算器群331の該当する演算器に送られる。演算器群331の各演算器は、対応するセレクタから供給される2つの画素データの平均値を求めて出力する。
【0041】
図4は、図3に示す画像処理部における処理の具体例を示す図である。図4の(a)は、2値の形状情報、(b)は、入力画素データ(オブジェクト外は意味が無いので省略されている)、(c)は、左伝搬処理部321におけるセレクタの出力値、(d)は、右伝搬処理部323におけるセレクタの出力値、(e)は、演算器群331の平均値出力を表わす。
【0042】
各画素位置では、各々2つのセレクタがあり、形状情報が“1”(オブジェクト内)の画素については入力画素データが選択され、形状情報が“0”の画素についてはオブジェクト内の画素データを左又は右に伝搬させた値が選択される。
【0043】
演算器群331は、各画素ごとに選択された2つの値の平均値を演算して、パディング処理の結果として出力する。オブジェクト内の画素(形状情報”1”に対応する画素)については、演算器に供給される2つの値が同じ値(入力画素データ)であり、演算結果は、該2つの値と同じである。
【0044】
オブジェクトに挟まれた領域の画素(形状情報が”0”に対応する画素)については、対応する演算器に供給される左伝搬画素データの値と右伝搬画素データの値とが異なるため、左伝搬画素データの値と右伝搬画素データの値との平均値が各画素ごと演算され、パディング処理の結果として出力される。
【0045】
以上の処理により、オブジェクトで挟まれたオブジェクト外の領域は、該領域の両端のオブジェクト内の画素データの平均値に置き換えられ、その他のオブジェクト外の領域は、該領域に接するオブジェクト内の画素データに置き換えられる。
【0046】
上記と同一構成で、10画素未満の任意の画素数についてのパディング処理が可能である。これは、画素入力の無い端子に対応する形状情報を“0”に固定することによって実現される。
【0047】
以上のように、パディング処理は、並列処理に適しており、1行あるいは1列単位(以下では、1行あるいは1列を単に1行と記す)で並列に処理すると、上述の画素伝搬処理を高速かつ効率的に行なうことができる。しかし、他の処理、例えば、DCT変換後の量子化処理やジグザグスキャン変換処理、可変長符号化処理などは、1サイクル当たり1画素あるいは1シンボルを処理するのが一般的であり、その方が回路規模を小さくすることができ、回路を効率的に使用することができる。
【0048】
よって、上記の如きパディング処理回路を採用する場合、他の処理回路との間で画素データの直並列変換処理や並直列変換処理等を実行する必要が生じる場合がある。また、他の処理が並列処理を実行しないにも拘らず、パディング処理回路だけが並列処理を実行すると、両回路の間で処理能力にミスマッチが生じ、パディング処理回路はフル稼働せずに間欠動作することになる。
【0049】
そこで、他の処理と同じように、1サイクルで1画素ずつパディング処理の結果を出力するような構成が望まれる。
【0050】
[第1の実施の形態]
本発明の第1の実施の形態では、1サイクルで1画素ずつパディング処理の結果を出力するパディング処理回路を提供する。
【0051】
図5は、本発明の第1の実施の形態に係る画像処理部の構成を示す図である。この画像処理部500は、例えば、コンピュータ等の画像処理装置の一部として好適に使用され得る。図5において、501は、パディング処理を施こすべき画素データを1画素ずつ入力する端子、503は、画素データを保持し、それを1サイクルの処理毎にシフトさせる8ビット幅のシフトレジスタ、505は、形状情報(属性データ)を1ビットずつ入力する端子、507は形状情報を保持し、それを1サイクルの処理毎にシフトさせる1ビット幅のシフトレジスタ、511は、伝搬データを保持するレジスタ(データ補充レジスタ)、513は、必要に応じてレジスタ511の出力を選択するセレクタである。
【0052】
その他の構成要素は、図3における同一番号の構成要素と同様である。
【0053】
この実施の形態に係る画像処理部500は、1サイクル毎にシフトレジスタ503に保持された画素データを右側に1画素分ずつシフトさせて、該シフトレジスタ503中の一番右の画素データに対応するパディング処理後の画素データを出力する。
【0054】
パディング処理された最初の画素データが出力されるまでに、パディング処理すべき1行分の画素データが端子501から入力され、シフトレジスタ503に保持される。この規模の回路でパディング処理可能な1行の画素数は、最大10画素である。
【0055】
シフトレジスタ503に画素データが入力されると同時に、端子505にも形状情報が入力され、シフトレジスタ507に該形状情報が保持される。
【0056】
セレクタ513は、1行の画像データを構成する最初の画素データをパディング処理する時のみ、右伝搬処理部323から出力さる画素データを選択し、2画素目以降の処理では、レジスタ511から出力される画素データを選択する。左伝搬処理部321及び右伝搬処理部323に対する入力信号及びこれらの内部状態は、図3に示す画像処理部と同様であり、従って、演算器331aに供給される画素データも図3に示す画像処理部と同様である。
【0057】
以上の手順に従って、演算器331aからパディング処理された最初の画素データが出力される。なお、セレクタ325aの出力端子は、レジスタ511の入力端子にも接続されている。
【0058】
次の処理サイクル(2画素目の処理サイクル)に移ると、シフトレジスタ503及び507に保持されているデータは各々右方向に1つシフトされ、これと同時に、レジスタ511は前回のサイクルでセレクタ325aから出力されていたデータを取り込む。
【0059】
1行分の画素データ及び形状情報が入力された後は、端子505には“0”が入力される。しかし、端子501に対する入力は無視されるので、ここでは、端子501には、次にパディング処理すべき行の画像データを構成する画素データが入力される。
【0060】
レジスタ511に取り込まれたデータは、セレクタ513で選択されて左伝搬処理部321に入力される。よって、現サイクルにおけるセレクタ325aには、1サイクル前における該セレクタ325aの出力と、1サイクル前におけるシフトレジスタ503,507のそれぞれの右から2つ目のデータ(現サイクルにおけるシフトレジスタ503,507のそれぞれの右端のデータ)が入力される。従って、セレクタ325aの出力は、1サイクル前のセレクタ325bの出力と同一、言い換えると、図3に示すセレクタ325bの出力と同一である。
【0061】
一方、端子505から入力された値が“0”の形状情報により、セレクタ325j,327jはそれぞれ前段のセレクタ出力を選択して画素データを伝搬するように動作するので、該セレクタ325j,327jの存在は無視することができ、右伝搬処理部323のセレクタ327aの入出力は、1サイクル前のセレクタ327bの入出力と同一になる。左及び右伝搬処理部内321及び323の他のセレクタの入出力も、1サイクル前の左側のセレクタの入出力と同一である。
【0062】
よって、現サイクルにおける演算器331aの入力は、1サイクル前の図3における演算器331bの入力と同一になるため、演算器331aから出力される画素データは、行データの2番目の画素のパディング処理結果となる。
【0063】
さらに次のサイクル(3画素目の処理サイクル)に移ると、シフトレジスタ503,507の内容が右方向に1つシフトし、それに伴ない、左及び右伝搬処理部321及び323の各セレクタの入出力状態も1つ右にシフトする。
【0064】
よって、このサイクルでは3番目の画素データのパディング処理結果が演算器331aから出力され、さらに次のサイクルでは4番目の画素データのパディング処理結果が演算器331aから出力される。このようにして、1サイクル毎に1画素についてのパディング処理結果が出力され、1行分、即ち10画素目までのパディング処理の結果が連続して出力される。
【0065】
次のサイクル(1行分の画像データのパディング処理が完了した後のサイクル)では、シフトレジスタ503には、次に処理すべき1行分の画素データが格納されているが、シフトレジスタ507には全て“0”が保持されている。
【0066】
そこで、シフトレジスタ503の内容を保持したまま、形状情報のみをシフトレジスタ507にシフト入力して、次の行のパディング処理の準備がなされる。
【0067】
ここで、形状情報は2バイト程度の情報量であるので、端子505の前段にバッファ(シフトレジスタ)を設け、該バッファに形状情報を1サイクルでロードし、該バッファから1ビットシリアルで高速に読み出しながら端子505に供給することで、高速に形状情報をシフトレジスタ507に転送することが好ましい。
【0068】
[第2の実施の形態]
この実施の形態に係る画像処理部では、シフトレジスタ507に対する形状情報の格納処理をより高速に実行する。第1の実施の形態では、シフトレジスタ503への画素データの入力は、無駄なく連続的に行なうことができるが、シフトレジスタ507への形状情報の入力は、1行分のパディング処理がすべて終了した後でなければ次の行の形状情報を入力することができない。前述のように、パディング処理中は“0”を入力しなければならないからである。
【0069】
図6は、本発明の第2の実施の形態に係る画像処理部の構成を示す図である。この画像処理部600は、例えば、コンピュータ等の画像処理装置の一部として好適に使用され得る。この実施の形態では、シフトレジスタ507にパラレルロード機能を設けた新たなシフトレジスタ607を第1の実施の形態におけるシフトレジスタ507の代わりに設けて、1行の画像データに対応する形状情報を並列に入力するための端子305(図3参照)を設ける。その他は、第1の実施の形態と同様である。
【0070】
この実施の形態では、形状情報は端子305からシフトレジスタ607に並列に入力され、端子505は“0”に固定される。1行分の画像データを構成する最後の画素データがシフトレジスタ503に入力されるタイミングで、端子305に並列に入力される形状情報をシフトレジスタ607に取り込み(ロード)、該1行分の画素データをパディング処理する間は、1サイクル毎に形状情報を右方向へシフトさせると共に端子505から“0”が入力される。
【0071】
端子305からシフトレジスタ607に形状情報を取り込むことを除けば、処理タイミング、内部状態、及び出力データは、第1の実施の形態と同様である。
【0072】
1行分のパディング処理が終了して、次の行のパディング処理に移る場合、次の行の画像データを構成する最後の画素データがシフトレジスタ501に入力されるのと同時に、該画像データに対応する形状情報が端子305からシフトレジスタ607にロードされる。
【0073】
これにより、形状情報のみを後でシフト入力することによる時間のロスが無くなり、連続的にパディング処理を実行することができる。
【0074】
図6の構成では、1行当たり最大10画素までのパディング処理を実行することができるが、上記の説明は1行当たり10画素の場合に関する。10画素未満の画素数の画像データをパディング処理する場合には、以下のような制御となる。
【0075】
例えば、1行当たり8画素からなる画像データのパディング処理を実行する場合は、まず、第1行の8つの画素データが端子501から入力され、続けて次の行の画素データが入力される。即ち、画素データに関しては、行と行との間で無駄なデータを挿入することなく、処理すべき画素データのみが端子501に連続して入力される。
【0076】
第1行の先頭の画素データが、シフトレジスタ503の一番右へシフトされる時、それと同時に、形状情報が端子305からシフトレジスタ607に取り込まれる。入力される形状情報は、右側の8ビットが有効な情報で、左側の2ビットは“0”である。
【0077】
これにより、シフトレジスタ503,607の右側の8画素分のレジスタには、処理すべき画素データとそれに対応する形状情報が格納されるので、前述の説明と同様に、1行分の画素データのパディング処理を滞り無く実行することができる。
【0078】
1行の画像データを構成する画素データのパディング処理が終わるサイクルの次のサイクルから新しい行のパディング処理が開始される。それに合わせて、新しい行の形状情報が端子305からシフトレジスタ607に取り込まれる。
【0079】
以上のように1行当たりの画素数に応じてシフトレジスタ607への形状情報の取り込みタイミングを変更することにより、1行が任意の画素数で構成される画像データのパディング処理についても連続して実行することができる。
【0080】
[第3の実施の形態]
この実施の形態では、第1の実施の形態における形状情報の入力の問題(時間のロス)が第2の実施の形態とは別の方法で解決されている。
【0081】
図7は、本発明の第3の実施の形態に係る画像処理部の構成を示す図である。この画像処理部700は、例えば、コンピュータ等の画像処理装置の一部として好適に使用され得る。
【0082】
この実施の形態に係る画像処理部700では、図5に示す画像処理部500に対して、シフトレジスタ507と同様の1ビット幅のシフトレジスタ707が追加されている。シフトレジスタ707には、1行分の画素データの境界を表わす区切り情報が他の情報(画素データ、形状情報)と対応するように端子701から入力される。
【0083】
この区切り情報により、左及び右伝搬処理部内の画像データの伝搬が制御される。これに応じて、この画像処理部700では、図3、図5及び図6で採用されている左及び右伝搬処理部321及び323とは異なる構成を有する画素伝搬処理部711及び713を使用する。
【0084】
比較のため、図5に示す画像処理部500の一部(2画素分)の構成を図8に示す。503cと503dは、8ビット幅のシフトレジスタ503を構成する個々のレジスタであり、507cと507dは、1ビット幅のシフトレジスタ507を構成する個々のレジスタである。325cと325dは、左伝搬処理部321を構成する個々のセレクタであり、327cと327dは右伝搬処理部323を構成する個々のセレクタである。
【0085】
図9は、図7に示す画像処理部700の一部(2画素分)の構成を示す図である。シフトレジスタ707を構成するレジスタ707cには、シフトレジスタ503を構成するレジスタ503c及び503dに各々保持されている画素データが同一行に属する画素データであるか否かを示す区切り情報が保持される。この2つの画素データが同一行に属する場合には、レジスタ707cにはその旨を示す“0”が保持され、この2つの画素データが異なる行に属する場合には、レジスタ707cには行の区切りを示す“1”が保持される。
【0086】
セレクタ群325(325c、325d等)の間にはセレクタ群715が、セレクタ群327(327c、327d等)の間にはセレクタ群717が追加されている。この実施の形態で、前述の実施の形態に対して追加されたセレクタの総数は(10−1)×2=18個であり、これらの追加に係るセレクタを2個を1組として、各組のセレクタが1つの区切り情報により切り替え制御される。
【0087】
よって、シフトレジスタ707のレジスタ長は最低9ビットであり、9ビット長を超えるレジスタは遅延回路として働く。
【0088】
区切り情報は、形状情報や画素データと同期してシフトさせる必要があり、行データの区切りを示す“1”という値は、シフトレジスタ長が9ビットの場合は、先頭の画素データと同時に入力する必要があり、シフトレジスタ長が10ビットの場合は終端の画素データと同時に入力する必要がある。
【0089】
ここで、区切り情報は空間的に画素データの位置とは一致せず、画素データと画素データとの間に位置するため、区切り情報を画素データと時間的に同時に入力しようとすれば、両側の画素データのいずれか一方の入力に同期させる必要があるので、上記のようなことが生じる。
【0090】
以下、具体的な動作を説明する。レジスタ503cと503dに保持されている画素データが異なる行に属する画素データである場合、レジスタ707cは値“1”を保持しており、該値はセレクタ715cと717cの切替制御信号として使用される。
【0091】
セレクタ715cは、右伝搬処理部のセレクタ327dから供給される画素データを選択し、選択された画素データは左伝搬処理部(325d等)で左方向に伝搬される。同様に、セレクタ717cは、左伝搬処理部のセレクタ325cから供給される画素データを選択し、選択された画素データは右伝搬処理部(327c等)で右方向に伝搬される。
【0092】
ここで、レジスタ507cと507dに保持されている形状情報が両方とも“0”である場合は、簡単に記述すると、図10のように、右伝搬処理部の左側から入力された画素データは、セレクタ715cを経由して、左伝搬処理部を左方向に伝搬する。また、この場合、左伝搬処理部の右側から入力された画素データは、セレクタ717cを経由して、右伝搬処理部を右方向に伝搬する。
【0093】
このように、同一の区切り情報によって制御される1組のセレクタ715c及び717cの左右の画素データは、互いに干渉すること無く伝搬される。
【0094】
従って、左伝搬処理部内のセレクタ325aの出力と右伝搬処理部内のセレクタ327aの出力との平均値を演算器331aで演算することにより、第1及び第2の実施の形態と同様に、1画素ずつパディング処理結果を出力することができる。
【0095】
また、この実施の形態においても、第2の実施の形態と同様に、1行当たり10画素以下の任意の画素数の画像データについてパディング処理を実行することができる。
【0096】
区切り情報は、1つの1行分の画素データと次の1行分の画素データとの区切りを示すだけでなく、有効な画素データ(処理対象の画素データ)と無効な画素データとの区別するために用いることもできる。従って、この画像処理部700では、シフトレジスタ503に無効な画素データを取り込んでも、それに対応する区切り情報を使用することにより、適正な処理を実行することができる。また、該無効なデータと同時に入力する形状情報は、“0”及び“1”のいずれであっても差し支えない。
【0097】
[第4の実施の形態]
この実施の形態は、第1の実施の形態の変形例に関する。この実施の形態に係る画像処理部は、レジスタ511とセレクタ513の配置が第1の実施の形態と異なる。
【0098】
図11は、本発明の第4の実施の形態に係る画像処理部と図5に示す画像処理部の構成(第1の実施の形態)との相違部分を説明するために、右側の2画素分の処理部のみを示した図である。
【0099】
第1の実施の形態との主な構成上の違いは、レジスタ511への入力をセレクタ325aの出力からセレクタ325bの出力に変更した点と、セレクタ513の配置をセレクタ325aの入力側から出力側に変更した点である。
【0100】
レジスタ511の出力をセレクタ513が選択するタイミングは第1の実施の形態と同様である。すなわち、セレクタ513は、各行データの先頭の1画素だけはレジスタ511の出力ではなくセレクタ325aの出力を選択し、2画素目以降ではレジスタ511の出力を選択する。
【0101】
この実施の形態では、セレクタ325aの出力は必ずセレクタ327aの出力と一致するので、セレクタ327aの出力を直接セレクタ513に入力することで、セレクタ325aを省略してもよい。
【0102】
先頭の1画素目におけるセレクタ513経由の演算器331aへの入力は、第1の実施の形態と同様であり、セレクタ327aの出力と同じである。
【0103】
1サイクル後(2画素目の処理)に演算器331aに供給するために必要なデータは、現時点(1画素目の処理)でセレクタ325bから出力されているので、これをレジスタ511で1サイクル遅延させた後にセレクタ513経由で演算器331aに入力することにより、目的のデータを演算器331aに供給することができる。
【0104】
セレクタ513の出力をさらにセレクタ325bに供給することにより、次のサイクルで演算器331aに供給するために必要なデータが、該セレクタ325bから再び出力される。
【0105】
よって、第2サイクル以降、セレクタ513にレジスタ511の出力を選択させることにより、演算器331aに供給するために必要なデータの1つを得ることができる。演算器331aに供給すべきもう1つデータは、セレクタ327aの出力データである。
【0106】
[第5の実施の形態]
この実施の形態は、第1及び第4の実施の形態の変形例である。図12は、本発明の第5の実施の形態に係る画像処理部と図5に示す画像処理部の構成(第1の実施の形態)との相違部分を説明するために、右側の2画素分の処理部のみを示した図である。
【0107】
この実施の形態の係る画像処理部では、演算器331aの後段に設けたセレクタ1201により、先頭の画素のパディング処理結果と2画素目以降のパディング処理結果とを切り替えて出力するのに加え、レジスタ511及び1203により、演算器331aに供給すべき2つのデータを該レジスタから直接供給することにより、処理遅延を小さくして高速化が図られている。
【0108】
まず、第4の実施の形態に係る画像処理部では、パディング処理後の先頭の画素データについても演算器331aにより生成するため、セレクタ513の出力を該演算器331aに供給する必要がある。一方、この実施の形態に係る画像処理部では、パディング処理後の先頭の画素データについては、演算器331aで生成せず、別系統のパスを通して生成することにより、レジスタ511の出力を演算器331aに直接供給することができる。
【0109】
また、この実施の形態では、第4の実施の形態で補足的に述べたように、セレクタ325aが省略されている。
【0110】
演算器331aに供給すべきもう一方のデータは、新たに設けたレジスタ1203から直接供給される。該レジスタ1203には、次のサイクルで演算器331aに供給すべき画素データが供給さるため、該レジスタ1203でこれを1サイクル遅延させることにより、演算器331aに供給すべきデータを得ることができる。
【0111】
この実施の形態では、画素伝搬処理部と演算器とをレジスタで分離しているため、動作周波数を上げることが容易である。より詳細には、
先頭画素の処理遅延時間 =画素伝搬処理部による遅延+セレクタ1201による遅延
2画素目以降の処理遅延時間=演算器331aによる遅延+セレクタ1201による遅延
となり、他の実施の形態における処理遅延時間(画素伝搬処理部による遅延+演算器331aによる遅延)よりも明らかに処理遅延時間が短く、高速化に適している。
【0112】
[第6の実施の形態]
図13は本発明の第6の実施の形態に係る画像符号化部の構成を示すブロック図である。
【0113】
図13において、1は1フレーム分の画像データを格納し、MPEG-4の手順に従ってマクロブロック単位に出力するフレームメモリであり、2は後述する予測値を減算する減算器である。3はDCT変換を施すDCT変換器であり、4は変換係数をそれぞれ量子化する量子化器である。5は量子化結果をエントロピー符号化するエントロピー符号化器である。6は量子化結果を変換係数に戻す逆量子化器であり、7は変換係数から画素データを復元する逆DCT器である。8は予測値を加算する加算器であり、9は再生画像を格納するフレームメモリである。
【0114】
10は入力されたマクロブロックの画素データとフレームメモリ9に格納された画素データから動きベクトルを検出する動きベクトル検出器である。11は検出された動きベクトルに従ってマクロブロック毎の予測値を算出する動き補償器であり、12は動きベクトルを符号化する動きベクトル符号化器である。13は2値の形状情報1フレーム分を格納し、MPEG-4の手順に従ってマクロブロック単位に切出して出力する2値のフレームメモリである。形状情報は各画素がオブジェクトの外か内かを示すデータである。14はマクロブロック単位で形状情報を算術符号化する形状符号化器である。15は前記再生画像に対応した形状情報を格納するフレームメモリである。16は該当するマクロブロックについて動きベクトル検出器10から動きベクトルを入力し、入力されたマクロブロックの形状情報とフレームメモリ15の形状情報を比較して形状情報の動きベクトルを算出して動き補償を行う動き補償器である。
【0115】
20、21は形状情報からパディングを制御するパディング制御器である。17はパディング制御器20からの制御と形状情報に従って、フレームメモリ1のオブジェクト外の画素データを補填するパディング器である。18はパディング制御器21からの制御と形状情報に従って、フレームメモリ9のオブジェクト外の画素データを補填するパディング器である。19は拡張パディングを実行する拡張パディング器である。
【0116】
上記の構成において、動画像の各フレームの符号化動作について述べる。
【0117】
まず、1フレーム分の画素データと形状情報がそれぞれフレームメモリ1とフレームメモリ13に格納される。
【0118】
入力された符号化対象のフレームがフレーム内符号化の対象であった場合はパディング制御器20とパディング器17が動作し、動き補償を伴うフレーム間符号化の対象であった場合はパディング制御器20、21、パディング器17、18及び拡張パディング器19が動作する。
【0119】
パディング器17及びパディング制御器20は、フレーム内符号化時には低域成分外挿法と呼ばれている方法でパディング処理を行ない、フレーム間符号化時には特に処理はせず、減算器2から出力される予測誤差の内、オブジェクト領域外の予測誤差の値をパディング制御器からの信号に基づいて“0”に置き換える。
【0120】
前記低域成分外挿法とは、オブジェクト内の画素の平均値でオブジェクト外の領域を埋めた後に、オブジェクト外の画素を該画素の上下左右4画素の平均値で置き換えるものである。パディング器18には、前記第1〜第5の実施形態で説明した1次元のパディング処理ユニットを2つ又は1つ用いる。2つのパディング処理ユニットを用いる場合は、一方で水平方向のパディング処理を行ない、もう一方で垂直方向のパディング処理をする。1つのパディング処理ユニットで処理する場合は、水平方向のパディング処理をした後、同じユニットで垂直方向のパディング処理を行なう。
【0121】
フレーム内符号化が選択された場合、パディング器17は符号化に先行してパディング処理を行う。パディング制御器20はフレーメモリ13に格納された形状情報からオブジェクトの境界を含むマクロブロックを検出しそのマクロブロックの位置と形状情報をパディング器17に入力する。パディング器17はオブジェクトの境界を含むマクロブロックの画素データをフレームメモリ1から読み出して、前記低域成分外挿法によりオブジェクト外の画素データをオブジェクト内の画素データから算出する。
【0122】
フレーム間符号化が選択された場合、パディング器18は符号化に先行してパディング処理を行う。パディング制御器21はフレーメモリ15に格納された形状情報からオブジェクトの境界を含むマクロブロックを検出しそのマクロブロックの位置と形状情報をパディング器18に供給する。パディング器18はオブジェクトの境界を含むマクロブロックの画素データをフレームメモリ9から読み出して、オブジェクト外の画素データをオブジェクト内の画素データから生成する。
【0123】
上記パディング処理と平行して、パディング制御器21はフレーメモリ15に格納された形状情報から左右上下がオブジェクト内部の画素を含むマクロブロックと接しているマクロブロックを検出し、マクロブロックの位置を拡張パディング器19に供給する。拡張パディング器19はMPEG-4符号化方式の拡張パディングの手順に従って、隣接するマクロブロックの画素データをコピーする。
【0124】
符号化するブロックのパディング処理が終了したら、フレーム内符号化の場合は、マクロブロック単位に画素データをフレームメモリ1から読み出し、減算器2で予測値0を引き、DCT器3でDCT変換し、その変換係数を量子化器4で量子化する。
【0125】
量子化結果はエントロピ符号化器5にて符号化し、外部に出力する。と同時に量子化結果は逆量子化器6にも送られ、DCT変換係数が再生され、逆DCT器7にて画素データを再生して加算器8で予測値0を加えた後、フレームメモリ9に格納する。
【0126】
これと平行して、フレームメモリ13の2値形状情報は符号化器14にて、オブジェクト外のマクロブロックに関してはTransparentとして符号化し、境界を含むマクロブロックに関してはその形状を算術符号化し、完全にオブジェクト内に含まれる場合はOpaqueとして符号化して、外部に出力する。また該2値形状情報をフレームメモリ15にも格納し、次の形状情報の符号化に使用する。
【0127】
エントロピ符号化器5と形状符号化器14の出力が外部でMPEG-4の書式に必要なヘッダ情報等の符号化データと多重化されてMPEG-4符号化データとして出力される。
【0128】
フレーム間符号化の場合は、マクロブロック単位に画素データがフレームメモリ1から読み出され、動き検出器10に入力される。動き検出器10は入力されたマクロブロックの画素データとフレームメモリ9に格納されている再生画像データの部分画像と逐次比較し、該再生画像中の最も類似度の高い領域を特定し、その偏差を動きベクトルとして出力する。
【0129】
出力された動きベクトルは動きベクトル符号化器12で符号化され、外部に出力される。と同時に、動きベクトルは動き補償器11、16にも供給される。動き補償器11では動きベクトルに従って、フレームメモリ9から予測値を読み出し、減算器2に供給する。減算器2では符号化するマクロブロックの画素データから、前記入力された予測値を減算する。
【0130】
減算結果はDCT器3でDCT変換され、その変換係数を量子化器4で量子化される。量子化結果はエントロピ符号化器5で符号化され、外部に出力される。と同時に量子化結果は逆量子化器6に供給され、DCT変換係数を再生し、逆DCT器7で画素データを再生して加算器8で動き補償器11からの予測値を加え、フレームメモリ9に格納する。
【0131】
これと平行して、動き補償器16に動き検出器10で算出した動きベクトルを供給する。動き補償器16は、該動きベクトルを基準としてフレームメモリ15の形状情報と符号化マクロブロックの形状情報とを比較して形状情報の動きベクトルを算出し、動きベクトルと該動きベクトルが示す形状情報を予測値として形状符号化器14に入力する。
【0132】
フレームメモリ13の形状情報は形状符号化器14にて、オブジェクト外のマクロブロックに関してはTransparentとして符号化し、完全にオブジェクト内に含まれる場合はOpaqueとして符号化して、外部に出力する。
【0133】
境界を含むマクロブロックに関しては、インターモードにおいては形状情報の動きベクトルを符号化した後、その形状を動き補償器16からの予測値も参照して算術符号化し、外部に出力する。イントラモードでは動き補償器16からの予測値を参照せずに算術符号化し、外部に出力する。また形状情報はフレームメモリ15に格納し、次の形状情報の符号化に使用する。
【0134】
エントロピ符号化器5と形状符号化器14と動きベクトル符号化器12出力が外部でMPEG-4の書式に必要な情報等の符号化データと多重化されてMPEG-4符号化データとして出力される。
【0135】
拡張パディング器19は実際にはフレームメモリとそのメモリコントロールの機能で実現されるので、特別に設けなくても実現が可能な場合も有る。
【0136】
[第7の実施の形態]
図14は本発明の第7の実施の形態に係る画像復号部の構成を示すブロック図である。
【0137】
図14において、50は符号化データを入力し、量子化結果を再生するエントロピー復号器である。51は量子化結果を変換係数に戻す逆量子化器であり、52は変換係数から予測差分画素データを復元する逆DCT器である。53は予測値を加算する加算器であり、54はMPEG-4の手順に従ってマクロブロック単位に画像データを1フレーム分、格納するフレームメモリである。55は再生画像を格納するフレームメモリである。56は動きベクトルを復号して再生する動きベクトル復号器である。
【0138】
57は復号された動きベクトルに従ってマクロブロック毎の予測値を算出する動き補償器である。58はマクロブロック単位で形状データを復号する形状復号器である。
【0139】
59、60は復号された2値形状情報を格納する2値のフレームメモリである。61は該当するマクロブロックについて動きベクトル復号器56から動きベクトルを入力し、動きベクトルと形状復号器58で復号された形状情報の動きベクトルにしたがってフレームメモリ59から形状情報を読み出す動き補償器である。
【0140】
62は形状情報に従ってパディングを制御するパディング制御器である。63はフレームメモリ59の形状情報に従って、フレームメモリ55のオブジェクト外の画素データを補填するパディング器である。64は拡張パディングを実行する拡張パディング器である。
【0141】
上記の構成において、動画像の各フレームの復号動作について述べる。
【0142】
まず、フレーム内符号化されたフレームの復号から説明する。マクロブロック単位で形状情報の符号化データを形状復号器58に入力して、形状情報を復号する。
【0143】
形状復号器58は、マクロブロックのモードがTransparentの場合は形状情報としてすべて“0”を出力する。このモードの形状情報に対応したマクロブロックの画素データは存在しないので、復号処理は行なわない。
【0144】
マクロブロックのモードがOpaqueであれば、形状情報としてすべて“1” を出力する。算術符号化されている場合はこれを復号し、オブジェクトの境界の形状情報を再生する。再生された形状情報はフレームメモリ59とフレームメモリ60に格納される。
【0145】
マクロブロックの形状情報のモードがOpaqueか算術符号化であれば、マクロブロック単位で符号化データがエントロピ復号器50に入力される。エントロピ復号器50では符号化データを復号処理して量子化結果を再生する。該量子化結果を逆量子化器51に入力して、DCT変換係数を再生し、逆DCT器52で画素データを再生して加算器53で予測値“0”を加え、フレームメモリ54とフレームメモリ55に格納する。
【0146】
1フレーム分の処理が終了したら、フレームメモリ54およびフレームメモリ59の内容が外部に出力され、適宜合成される。
【0147】
次にフレーム間符号化されたフレームの復号を説明する。
【0148】
パディング器63は境界パディングの処理を行う。パディング制御器62はフレーメモリ60に格納された2値形状情報からオブジェクトの境界を含むマクロブロックを検出し、該マクロブロックのオブジェクトの境界を含むマクロブロックの画素データをフレームメモリ55から読み出して、該画素データと形状情報をパディング器63に供給する。
【0149】
パディング器63には、前記第1〜第5の実施形態で説明した1次元のパディング処理ユニットを2つ又は1つ用いて、第6の実施形態で説明したようにパディング処理する。そして、入力された画素データと2値形状情報からオブジェクト外部の画素データを生成する。
【0150】
続けて、パディング制御器62はフレーメモリ60に格納された2値形状情報から、オブジェクト内部の画素を含むマクロブロックと左右上下で接しているマクロブロックを検出し、マクロブロックの位置を拡張パディング器64に入力する。拡張パディング器64はMPEG-4符号化方式の拡張パディングの手順に従って、隣接するマクロブロックの画素データをコピーする。
【0151】
上記復号化処理と平行して、マクロブロック単位で形状情報の符号化データを形状復号器58に入力して、2値形状情報を復号する。
【0152】
マクロブロックのモードがTransparentの場合は形状情報としてすべて“0”を出力する。このモードの形状情報に対応したマクロブロックの画素データは存在しないので、復号処理は行なわない。
【0153】
マクロブロックのモードがOpaqueであれば、形状情報としてすべて“1”を出力する。イントラモードで算術符号化されている場合はこれを復号し、オブジェクトの境界の形状情報を再生し、フレームメモリ59に格納する。
【0154】
動き補償されているマクロブロックでは、まず動きベクトル復号器56にて動きベクトルを復号し、復号した動きベクトルは動き補償器57、61に入力する。
【0155】
形状情報がインターモードで算術符号化されていれば、形状復号器58は形状情報のための動きベクトルを算出するデータを復号し、動き補償器61はこの動きベクトルを用いて、フレームメモリ60から形状情報の予測値を読み出す。この予測値を参照して形状復号器58は形状情報を復号し、2値のフレームメモリ59に格納する。
【0156】
マクロブロックがフレーム内符号化されている場合は前述のフレーム内符号化データの復号動作によって復号を行いフレームメモリ54、55に画素データを格納する。
【0157】
マクロブロックがフレーム間符号化されている場合はマクロブロックの形状情報のモードがOpaqueか算術符号化であれば、マクロブロック単位で符号化データをエントロピ復号器50に入力し、該エントロピ復号器50で復号処理して量子化結果を再生する。
【0158】
量子化結果を逆量子化器51に入力してDCT変換係数を再生し、逆DCT器52にて変換係数から予測差分画素データを再生して加算器53に送る。
【0159】
平行して、動き補償器57は動きベクトル復号器56で復号された動きベクトルに基づき、フレームメモリ55から予測値を読み出し加算器53に入力する。加算器53にて前記予測差分画素データに該予測値を加え、フレームメモリ54、55に格納する。
【0160】
フレーム内符号化の場合は前述のフレーム内符号化データの復号と同様に処理される。1フレーム分の処理が終了したら、フレームメモリ54およびフレームメモリ59の内容が外部に出力され、適宜合成される。
【0161】
[その他]
なお、本発明は、複数の機器から構成されるシステムに適用しても、一つの機器からなる装置に適用してもよい。
【0162】
【発明の効果】
本発明によれば、例えば、逐次的なパディング処理を効率良く実行することができる。
【図面の簡単な説明】
【図1】入力画素データとパディング処理後の画素データを示す図である。
【図2】パディング処理によってブロック内の画素データが処理される様子を示す図である。
【図3】本出願人が他の出願において開示したパディング処理回路を示す図である。
【図4】パディング処理の一例を示す図である。
【図5】本発明の第1の実施の形態に係る画像処理部の構成を示す図である。
【図6】本発明の第2の実施の形態に係る画像処理部の構成を示す図である。
【図7】本発明の第3の実施の形態に係る画像処理部の構成を示す図である。
【図8】図5における画像処理部の一部を詳細に示す図である。
【図9】本発明の第3の実施の形態に係る画像処理部の一部を詳細に示す図である。
【図10】本発明の第3の実施の形態に係る画素伝搬処理部における画素データの流れを示す図である。
【図11】本発明の第4の実施の形態に係る画像処理部の一部を詳細に示す図である。
【図12】本発明の第5の実施の形態に係る画像処理部の一部を詳細に示す図である。
【図13】第6の実施の形態に係る画像符号化装置の構成を示す図である。
【図14】第7の実施の形態に係る画像復号装置の構成を示す図である。
【符号の説明】
303,307 レジスタ群
325a〜j,327a〜j セレクタ
321,711 左伝搬処理部
323,713 右伝搬処理部
331a〜j 加算器
503,507,607,707 シフトレジスタ
511,1203 レジスタ
513,1201 セレクタ
601,701,703,705 セレクタ群
Claims (11)
- 入力した画像データをパディング処理し、出力する画像処理装置であって、
パディング処理対象の画像データ中の一次元に配列された画素データから、1サイクル毎に1画素データを入力しつつ1画素データずつシフトし、n個の画素データを記憶保持可能な第1のシフトレジスタと、
前記第1のシフトレジスタに保持されるn個の画素データに対し、各々がオブジェクト内、オブジェクト外のいずれに属するかを示す属性データを、前記1サイクル毎に1属性データを入力しつつ1属性データずつシフトするか、又は、n個の属性データを並列にロードして記憶保持することが可能な第2のシフトレジスタと、
前記第2のシフトレジスタに保持された属性データに基づき、前記第1のシフトレジスタに保持された画素データを、当該第1のシフトレジスタの終端から入力端に向かう方向に伝搬処理させる第1の伝搬手段と、
前記第2のシフトレジスタに保持された属性データに基づき、前記第1のシフトレジスタに保持された画素データを、当該第1のシフトレジスタの入力端から終端に向かう方向に伝搬処理させる第2の伝搬手段と、
前記第1の伝搬手段による、1つ前のサイクルにて、前記第1のシフトレジスタの終端の画素データに対する伝搬処理にて得られた画素データを、現サイクルの終端位置の伝搬対象の画素データとして補充するデータ補充手段と、
前記第2のシフトレジスタの終端の属性データが、当該属性データに対応する終端の画素データがオブジェクト内にあることを示している場合、前記第1の伝搬手段によって得られた終端の画素データと、前記第2の伝搬手段によって得られた終端の画素データの平均値を算出し、算出後の画素データをパディング処理結果の画素データとして出力し、
前記第2のシフトレジスタの終端の属性データが、当該属性データに対応する画素がオブジェクト外にあることを示している場合、前記データ補充手段から補充された画素データと、前記第2の伝搬手段によって得られた終端画素位置における伝搬画素データの平均値を算出し、算出後の画素データをパディング処理結果の画素データとして出力する演算手段とを備え、
前記第1の伝搬手段は、n個の第1の選択手段で構成され、
前記第2の伝搬手段は、n個の第2の選択手段で構成され、
前記第1又は第2のシフトレジスタの入力端から終端に向かう方向に並ぶ、前記n個の第1の選択手段をS1 1 乃至S1 n 、前記n個の第2の選択手段をS2 1 乃至S2 n 、前記第1のシフトレジスタの入力端子から終端に向かう第i番目の画素データをP i 、前記第i番目の画素データに対応する前記第2の保持手段に保持された第i番目の属性データをA i としたとき、
第i番目の前記第1の選択手段S1 i は、
(1)前記属性データA i が、画素データP i がオブジェクト内にあることを示している場合、前記画素データP i を選択出力し、
(2)前記属性データA i が、画素データP i がオブジェクト外にあることを示している場合であって、i<nの場合には前記第1の選択手段S1 i+1 からの画素データを選択出力し、i=nの場合には前記データ補充手段から補充された画素データを選択出力し、
第i番目の前記第2の選択手段S2 i は、
(3)前記属性データA i が、画素データP i がオブジェクト内にあることを示している場合、前記画素データP i を選択出力し、
(4)前記属性データA i が、画素データP i がオブジェクト外にあることを示している場合、前記第2の選択手段S2 i-1 からの画素データを選択出力する
ことを特徴とする画像処理装置。 - 前記データ補充手段は、前記一次元の画像データを構成する先頭の画素データを処理する際は、前記第1の伝搬手段の第1選択手段S1 n に、前記第2の伝搬手段の第2選択手段S2 n から出力される画素データを補充することを特徴とする請求項1に記載の画像処理装置。
- 前記第1の伝搬手段の第1の選択手段S1 1 の出力端子は、前記第2の伝搬手段の第2の選択手段S2 1 の入力端子に連結されていることを特徴とする請求項1又は2に記載の画像処理装置。
- 前記第1の伝搬手段の第1選択手段S1 1 は、前記第2の伝搬手段の第2選択手段S2 1 に連結されており、前記第2のシフトレジスタには、前記第1及び第2の伝搬手段中を無効な画素データが伝搬しないように制御するデータが、前記属性データに続けて供給されることを特徴とする請求項1乃至3のいずれか1項に記載の画像処理装置。
- 1つの一次元の画像データと次の一次元の画像データとを連続的に処理するように、前記第1及び第2の伝搬手段を制御する制御手段を更に備えることを特徴とする請求項1乃至4のいずれか1項に記載の画像処理装置。
- 1つの一次元の画像データと次の一次元の画像データとを連続的に処理するように、前記第1及び第2の伝搬手段を制御する制御手段を更に備え、
前記制御手段は、1つの一次元の画像データと次の一次元の画像データとの区切りを特定する区切り情報に基づいて、前記第1及び第2の伝搬手段を制御することを特徴とする請求項1に記載の画像処理装置。 - 前記制御手段は、1つの一次元の画像データの処理と次の一次元の画像データの処理とが干渉しないように、前記第1及び第2の伝搬手段を制御することを特徴とする請求項5又は6に記載の画像処理装置。
- 前記第1の伝搬手段と前記演算手段との間及び前記第2の伝搬手段と前記演算手段との間に各々レジスタを更に備え、前記演算手段は、該レジスタを介して前記第1及び第2の伝搬手段から供給される画素データを入力として演算処理を実行することを特徴とする請求項1乃至7のいずれか1項に記載の画像処理装置。
- 前記属性データは、各画素データについて1ビットのデータであることを特徴とする請求項1乃至8のいずれか1項に記載の画像処理装置。
- 請求項1に記載の画像処理装置を有することを特徴とする画像符号化装置。
- 請求項1に記載の画像処理装置を有することを特徴とする画像復号装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001007824A JP4557440B2 (ja) | 2000-02-24 | 2001-01-16 | 画像処理装置及び画像符号化装置及び画像復号装置 |
US09/791,545 US6952501B2 (en) | 2000-02-24 | 2001-02-26 | Image processing apparatus, image encoding apparatus, and image decoding apparatus |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000048149 | 2000-02-24 | ||
JP2000-48149 | 2000-02-24 | ||
JP2001007824A JP4557440B2 (ja) | 2000-02-24 | 2001-01-16 | 画像処理装置及び画像符号化装置及び画像復号装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001313945A JP2001313945A (ja) | 2001-11-09 |
JP4557440B2 true JP4557440B2 (ja) | 2010-10-06 |
Family
ID=26586036
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001007824A Expired - Fee Related JP4557440B2 (ja) | 2000-02-24 | 2001-01-16 | 画像処理装置及び画像符号化装置及び画像復号装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4557440B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5195674B2 (ja) * | 2009-07-13 | 2013-05-08 | 富士通株式会社 | 画像符号化装置 |
IE20120388A1 (en) * | 2012-09-07 | 2014-03-12 | Odenberg Engineering Ltd | Method and apparatus for handling harvested root crops |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000023190A (ja) * | 1998-06-26 | 2000-01-21 | Sony Corp | 動きベクトル生成方法、画像符号化装置、動き補償方法、動き補償装置、及び提供媒体 |
-
2001
- 2001-01-16 JP JP2001007824A patent/JP4557440B2/ja not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000023190A (ja) * | 1998-06-26 | 2000-01-21 | Sony Corp | 動きベクトル生成方法、画像符号化装置、動き補償方法、動き補償装置、及び提供媒体 |
Also Published As
Publication number | Publication date |
---|---|
JP2001313945A (ja) | 2001-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8000388B2 (en) | Parallel processing apparatus for video compression | |
JP5100015B2 (ja) | 画面間又は画面内符号化モードの動画像符号化方法及び装置 | |
US9872018B2 (en) | Random access point (RAP) formation using intra refreshing technique in video coding | |
KR101336204B1 (ko) | 다시점 비디오에서 전역변이를 이용하여 상이한 시점의 화면들을 압축 또는 복호하는 인코더와 인코딩하는 방법 및디코더와 디코딩하는 방법 | |
Akiyama et al. | MPEG2 video codec using image compression DSP | |
JP2005092252A (ja) | 演算処理装置 | |
JP2009267689A (ja) | 動画像符号化装置、及び動画像符号化方法 | |
US6952501B2 (en) | Image processing apparatus, image encoding apparatus, and image decoding apparatus | |
JP2006157925A (ja) | パイプラインデブロッキングフィルタ | |
JPWO2009063646A1 (ja) | 画像復号装置及び画像復号方法 | |
JP2008182527A (ja) | 画像符号化装置及び方法、並びに撮像システム | |
JP2013115583A (ja) | 動画像符号化装置及びその制御方法並びにプログラム | |
KR20070035958A (ko) | 화상 처리 장치 | |
JP4264571B2 (ja) | ディジタル画像復号装置及び方法、並びに記録媒体 | |
JP4557440B2 (ja) | 画像処理装置及び画像符号化装置及び画像復号装置 | |
JP5195674B2 (ja) | 画像符号化装置 | |
JP2016103707A (ja) | 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム | |
WO2014127961A1 (en) | Combined parallel and pipelined video encoder | |
JP2005184829A (ja) | ビデオ圧縮用低パワー高性能変換コプロセッサ | |
CN102238385A (zh) | 编码器和/或解码器中垂直和/或水平高速缓存设备和方法 | |
JP2008289105A (ja) | 画像処理装置およびそれを搭載した撮像装置 | |
JP4574021B2 (ja) | 画像処理装置及び方法、並びに画像符号化装置及び画像復号装置 | |
JP4574019B2 (ja) | 画像処理装置及び画像処理方法及びメモリ媒体、並びに画像符号化装置及び画像復号装置 | |
JP4574020B2 (ja) | 画像処理装置及び画像符号化装置及び画像復号装置 | |
JP2007259247A (ja) | 符号化装置、復号化装置、データ処理システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080109 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20091119 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091124 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100125 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100427 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100430 |
|
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: 20100716 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100720 |
|
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: 20130730 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |