JP3417684B2 - 画像処理装置 - Google Patents

画像処理装置

Info

Publication number
JP3417684B2
JP3417684B2 JP21916894A JP21916894A JP3417684B2 JP 3417684 B2 JP3417684 B2 JP 3417684B2 JP 21916894 A JP21916894 A JP 21916894A JP 21916894 A JP21916894 A JP 21916894A JP 3417684 B2 JP3417684 B2 JP 3417684B2
Authority
JP
Japan
Prior art keywords
length
code
writing
data
bank
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
Application number
JP21916894A
Other languages
English (en)
Other versions
JPH0883347A (ja
Inventor
中 秀 治 道
友 吾 一 大
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP21916894A priority Critical patent/JP3417684B2/ja
Publication of JPH0883347A publication Critical patent/JPH0883347A/ja
Application granted granted Critical
Publication of JP3417684B2 publication Critical patent/JP3417684B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Image Processing (AREA)

Description

【発明の詳細な説明】 【0001】 【産業上の利用分野】本発明は、画像処理装置の処理速
度の高速化に関するものであり、より詳細には、圧縮画
像データを伸長する画像処理装置のバッファメモリおよ
び復号化器の処理速度の高速化に関するものである。 【0002】 【従来の技術】従来より、画像処理装置として、画像デ
ータを圧縮/伸長するものが知られている。 【0003】画像データを圧縮する画像処理装置として
は、例えば、DCT(離散コサイン変換)、量子化、ラ
ンレングス符号化および可変長・固定長符号化を組み合
わせたものが知られている。このような画像処理装置で
は、まず、画像データを小ブロック(例えば8×8画素
のブロック)に分割し、各ブロック単位で二次元DCT
等の直交変換を施したのち、各画素ごとに量子化を行
う。次に、各ブロックについて「0」が連続する頻度が
高くなるように変換したのち(スキャン順序変換)、一
次元に並べ、先行する「0」の数(以下「ゼロラン」と
記す)と「0」以外の値(以下「レベル」と記す)とを
組にして表現することでシンボル数を減らす(ランレン
グス符号化)。そして、このデータを可変長符号、固定
長符号および区切り符号からなるデータに変換して(可
変長・固定長符号化)出力する。 【0004】ここで、上述のスキャン順序変換およびラ
ンレングス符号化について、図7を用いて、さらに詳し
く説明する。図7(a)は、直交変換(DCT等)およ
び量子化を施した後のブロックを示している。二次元D
CT等の直交変換を施したデータは、視覚的に高周波成
分の解像度が高くないことを利用して、この高周波成分
にあたるデータに大きい量子化幅を与えることにより、
「0」が出現する頻度を高くしている。次に、これらの
画素データについて、図7(a)に矢印で示したよう
に、8×8のマトリクスを形成する各画素をジグザグに
読み取る。これにより、図7(b)に示したようなデー
タ列を得る。そして、このデータ列をランレングス符号
化することにより、図7(c)に示したようなデータ
(ランレングス符号)を得る。なお、図7(c)におい
て、各括弧内の左側の値はゼロランであり、右側の値は
レベルである。このようにして生成されたランレングス
符号は、可変長・固定長符号化されて、出力される。こ
こで、図7(a)に示したように、画素ブロックの画素
をジグザグに読み取ることとしたのは、各ゼロランの値
の偏りが大きい方が、ランレングス符号を可変長符号化
する際に圧縮率が高くなるからである。 【0005】次に、このようにして圧縮処理された画像
データを伸長する画像処理装置について説明する。図8
は、かかる画像処理装置の構成を概略的に示すブロック
図である。同図に示したように、画像処理装置に入力さ
れた圧縮画像データは、バッファ81を介して、可変長
・固定長復号化器82に取り込まれ、図7(c)に示し
たようなデータ列(ランレングス符号)に復号化され
る。この可変長・固定長復号化器82の出力データは、
次に、ランレングス復号化・スキャン順序変換器83に
入力される。 【0006】ここで、ランレングス復号化およびスキャ
ン順序変換は、ランレングス復号化により図7(b)に
示したデータ列を生成した後にスキャン順序変換を行っ
て図7(a)に示したような8×8画素ブロックのデー
タを生成することとしてもよいが、ここでは、後述する
ようなバッファメモリを用いてランレングス復号化とス
キャン順序変換とを同時に行うものとする。 【0007】その後、ランレングス復号化およびスキャ
ン順序変換が施された画像データは、逆量子化器85お
よび逆直交変換器86により逆量子化および逆離散コサ
イン変換が行われた後、伸長画像データとして出力され
る。 【0008】ここで、可変長・固定長復号化器82での
処理(可変長・固定長復号化)について、より詳細に説
明する。なお、ここでは、可変長・固定長符号化方法と
してMPEG(Moving Pictures Expert Group)方式を採
った場合を例にとって説明する。 【0009】可変長・固定長復号化器82に入力される
画像データ(圧縮画像データ)は、区切りの無い連続し
たデータ列によって構成されている(後述の図10
(a)の「被解読符号」参照)。ここで、このデータ列
には、データの区切りを示すコードであるスタートコー
ドが含まれている。このスタートコードとしては、例え
ば、一画面分の画像データの開始を示すスタートコード
(picture start code)等がある(後述の図10(b)参
照)。このスタートコードは、データ列の途中から解読
を開始した場合でも他のデータやフラグと間違えて解読
(復号化)することがなく、また、他のデータやフラグ
をどのように組み合わせてもスタートコードと間違えて
解読してしまうことがないように、定められている。し
たがって、解読を開始する位置の決定や、解読エラーが
発生した場合の解読復帰位置の決定に使用される。 【0010】以下、可変長・固定長復号化器82の動作
について、図9〜図11を用いて説明する。 【0011】図9は、可変長・固定長復号化器82の内
部構成を概略的に示すブロック図である。同図におい
て、符号解読部92は、まず、頭出しシフト部91から
被解読符号D91を32ビット入力し、このうちの最初の
24ビットについて、この被解読符号D91の値が「00
0001H」(「H」は16進数表示であることを示
す。以下同じ)と一致するか否かを判断する(図11の
S111)。そして、被解読符号D91が「000001
H」でなければ、頭出しシフト部91に被解読符号D91
を1ビット分だけシフトさせる(同図S112)。次
に、シフト後の24ビットの被解読符号D91について
(すなわち最初の入力符号から数えて2ビットめから2
5ビットめまでについて)、「000001H」と一致
するか否かを判断する(同図S111)。以下、「00
0001H」が検出されるまで、同様の動作を繰り返
す。 【0012】ここで、図10(b)に示すように、スタ
ートコードの上位6ビット(2進数では24ビット)
は、常に「000001H」である。したがって、符号
解読部92が「000001H」を検出した場合は、い
ずれかのスタートコードが存在していることがわかる。 【0013】「000001H」が検出されると、符号
解読部92は、この「000001H」に該当する部分
を切り出すために、被解読符号D91を24ビット(16
進数の6桁に該当する)だけシフトする(図11のS1
13)。そして、検出されたスタートコードの残りの桁
を切り出すために、入力符号をさらに8ビット(16進
数の2桁に該当する)だけシフトする(図11のS11
4)。 【0014】続いて、符号解読部92は、このスタート
コードに続く可変長・固定長符号の解読(復号化)を行
う。図10(a)のにおいて、被解読符号の最初の3
桁は「101」であり、この可変長符号は「3」の該当
する(図10(C)参照)。したがって、符号解読部9
2は、解読結果(ランレングス符号)として「3」を出
力し、さらに、可変長符号のパターン長(桁数)である
「3」を、頭出しシフト量情報D92として出力する。頭
出しシフト部91は、この頭出しシフト量情報D92を入
力すると、被解読符号D91を3ビットだけシフトさせ
る。これにより、このシフト後に符号解読部92が入力
する被解読符号D91は、図10(b)のに示すような
値となる。そして、符号解読部92は、この被解読符号
91の最初の2桁「01」が「2」に該当すると識別
し、解読結果として「2」を出力するとともに、パター
ン長「2」を頭出しシフト量情報D92として出力する。
以下、同様にして、スタートコードの検出および可変長
・固定長符号の解読が続行される。 【0015】このようにして生成された解読結果のデー
タ列(ランレングス符号)は、ランレングス復号化・ス
キャン順序変換器83(図8参照)に送られる。 【0016】ここで、可変長・固定長符号の解読中に、
可変長符号テーブル(図10(c)参照)や固定長符号
テーブル(図示せず)に無い符号パターンが現れた場合
には、符号解読部92は、何等かの解読エラーが発生し
たものと判断する。可変長符号を含む符号の復号化の場
合には、解読エラーに起因して解読開始位置が一旦ずれ
てしまうとそのまま残りの入力符号の解読を続行して
も、無意味である。したがって、符号解読部92は、可
変長・固定長符号の解読を中止して、次のスタートコー
ドの検出を行う(図11参照)。そして、スタートコー
ドが検出されると、上述したような可変長・固定長符号
の解読を再開する(図10(a)参照)。 【0017】次に、図8に示した画像処理装置の、ラン
レングス復号化・スキャン順序変換器83での処理(ラ
ンレングス復号化およびスキャン順序変換)について、
より詳細に説明する。 【0018】図12は、ランレングス復号化・スキャン
順序変換器83の内部構成を概略的に示すブロック図で
ある。同図に示すように、このランレングス復号化・ス
キャン順序変換器83としては、バッファメモリが使用
されている。 【0019】図12において、メモリ部121内のバン
クメモリ121a,121bは、8×8画素(すなわち
1ブロック)に相当する書き込み領域を有している。そ
して、これらの書き込み領域は、データの書き込みが行
われる前には、すべてゼロに初期化される。 【0020】書き込みアドレス発生部122は、加算器
122aとレジスタ122bとを備えている。ここで、
レジスタ122bの出力は、データの書き込みが行われ
る前には、「0」に初期化される。加算器122aは、
レジスタ122bの出力と、可変長・固定長復号化器8
2から入力したデータ列(ランレングス符号)のゼロラ
ンとを入力する。そして、このレジスタ出力とゼロラン
とを加算した結果を、書き込みアドレスとして、メモリ
部121に送る。これにより、ランレングス符号の「レ
ベル」信号を、バンクメモリ121aまたはバンクメモ
リ121bのいずれか(コントローラ124によって指
定される)の該当番地に順次書き込むことができる。そ
して、上述のように「レベル」信号が書き込まれた番地
以外は「0」に初期化されているので、この書き込みに
よってランレングス復号化を行うことができる。 【0021】読み出しアドレス発生部123は、カウン
タ123aとアドレス変換器123bとを備えている。
これにより、バンクメモリ121aまたはバンクメモリ
121b(コントローラ124によって指定される)に
書き込まれたデータ列をスキャン順序変換しながら読み
出すことができ、図7(a)に示したような量子化DC
T係数を得ることができる。また、この読み出しの際
に、読み出しアドレスSR を書き込みアドレスSR ′と
して使用し、順次「0」を書き込むことにより、次回の
書き込みのための初期化を行うことができる。 【0022】コントローラ124は、上述のように、デ
ータの書き込み/読み出しを行うバンクメモリを選択す
るほか、可変長・固定長復号化器82に対する書き込み
禁止信号の出力および可変長・固定長復号化器82から
の書き込み終了信号の入力により、書き込みタイミング
の制御を行う。 【0023】 【発明が解決しようとする課題】図8に示したような従
来の画像処理装置(画像データ伸長用の画像処理装置)
は、処理速度が十分ではなかった。 【0024】ここで、可変長・固定長復号化器82(図
9参照)においては、区切り符号の検出に多くの時間を
要しており、このことが処理速度を遅くさせる原因の一
つとなっていた。すなわち、従来の可変長・固定長復号
化器82では、被解読符号を1ビット/サイクルの速度
で1ビットずつシフトさせながら区切り符号の検出を行
っていたので、解読の開始やエラー復帰に多くの時間が
必要であった。 【0025】また、従来の可変長・固定長復号化器82
には、区切り符号の一部が誤解読に使用された後で解読
エラーの発生が検出された場合に、エラー復帰の位置が
さらに次の区切り符号となってしまうので、解読エラー
の発生時に捨てられる画像データが多くなってしまうと
いう欠点もあった。 【0026】一方、ランレングス復号化・スキャン順序
変換器83(図12参照)においては、バンクメモリ1
21a,121bの書き込み/読み出しに要する時間が
実際には一定していないにも拘らず、書き込みを行うバ
ンクメモリと読み出しを行うバンクメモリとを切り替え
る時間間隔を一定にしており、このことが処理速度を遅
くさせる原因の一つとなっていた。以下、この理由につ
いて説明する。 【0027】バンクメモリ121a,121bの書き込
み/読み出しに要する時間が常に一定であれば、バンク
メモリを切り替える時間間隔は、書き込み/読み出しの
いずれか遅い方にあわせて決定すればよい。ここで、例
えば1ブロック分のデータ列(8×8=64画素)の中
に固定長・可変長符号が常に16個あるものとし、且
つ、ランレングス復号化に要する時間(すなわちバンク
メモリへの書き込みに要する時間)をデータ1個あたり
3クロックとすると、1ブロック分のデータ列の書き込
みに要する時間は16×3=48クロックとなる。これ
に対して、バンクメモリからのデータの読み出しに要す
る時間を1データあたり1クロックとすると、1ブロッ
ク分のデータ列の読み出しに要する時間は64クロック
である。したがって、書き込みを行うバンクメモリと読
み出しを行うバンクメモリとの切り替えは、図13に示
したように64クロック毎に行えばよく、処理時間の無
駄は生じないので高速の処理を行うことができる。 【0028】しかし、画像データでは、そのブロックに
対応する画像がエッジなどの複雑な部分であるときは情
報量を多くし、変化がほとんどない単純な画像であると
きは情報量を少なくするのが一般的である。このため、
1ブロック分のデータ列の中に含まれる固定長・可変長
符号の個数は一定せず、画像の複雑さに応じて増減す
る。ここで、1ブロック分のデータ列の中に含まれるデ
ータがすべて固定長・可変長符号であった場合を考える
と、書き込みに要する時間は64×3=192クロック
となる。したがって、書き込みを行うバンクメモリと読
み出しを行うバンクメモリとの切り替えも、図14に示
したように、198クロック毎に行わなければならな
い。 【0029】画像データ全体で考えた場合には、1ブロ
ック分のデータ列の大部分が固定長・可変長符号で占め
られる確率はほとんどない。それにも拘らず、従来のラ
ンレングス復号化・スキャン順序変換器83では、書き
込みに要する時間が最長である場合(すなわち1ブロッ
ク分のデータ列中に含まれるデータがすべて固定長・可
変長符号である場合)にあわせてバンクメモリを切り替
える時間間隔を設定しなければならず、このことが処理
速度を遅くする原因となっていたのである。 【0030】本発明は、このような従来技術の欠点に鑑
みてなされたものであり、高速処理が可能な画像処理装
置を提供することを目的とする。 【0031】 【課題を解決するための手段】上記課題を解決するた
め、本発明の基本構成に係る画像処理装置は、複数のバ
ンクメモリと、これらのバンクメモリの読み出しおよび
書き込みを制御する制御回路とを備えたバッファメモリ
を有する画像処理装置において、前記制御回路が、 い
ずれかのバンクメモリに対する書き込みが終了した時点
で、既に読み出しが終了した他のバンクメモリが存在す
る場合には、当該他のバンクメモリに対して次の書き込
みを行なわせ、既に読み出しが終了した他のバンクメモ
リが存在しない場合には、いずれかのバンクメモリの読
み出しが終了するまで待機した後に当該読み出しが終了
したバンクメモリに対して書き込みを行なわせると共に
当該待機の期間中書き込みを禁止する書き込み制御手段
と、いずれかのバンクメモリからの読み出しが終了した
時点で、既に書き込みが終了した他のバンクメモリが存
在する場合には、当該他のバンクメモリに対して書き込
みが行なわれた順序にしたがって次の読み出しを行なわ
せ、既に書き込みが終了したバンクメモリが存在しない
場合には、いずれかのバンクメモリの書き込みが終了す
るまで待機した後に当該書き込みが終了したバンクメモ
リに対して読み出しを行なわせると共に当該待機の期間
中読み出しを禁止する読み出し制御手段と、を備え
記制御回路は、少なくとも可変長符号と区切り符号とを
有する圧縮画像データを復号化する復号化器が復号化し
た画像データを前記バンクメモリに書き込む書き込み動
作と、この書き込まれた画像データを前記バンクメモリ
より読み出す読み出し動作とを制御すると共に、前記復
号化器は、前記圧縮画像データと頭出しシフト量データ
とを入力しこの頭出しシフト量データにしたがって前記
圧縮画像データをシフトさせることにより被解読データ
を生成する頭出しシフト部と、この頭出しシフト部から
取り込んだ前記被解読データを切り出すことにより解読
データを生成する符号解読部と、前記頭出しシフト部か
ら取り込んだ前記被解読データからの前記区切り符号の
検出を複数の先頭ビット位置について同時に行ってこの
検出結果に基いて前記シフト量データを生成する並列区
切り符号検出部と、を備えることを特徴としている。 【0032】 【作用】上記基本構成に係る画像処理装置によれば、バ
ンクメモリの切り替え制御を、書き込みに対しては、い
ずれかのバンクメモリに対する書き込みが終了した時に
読み出しが終了したバンクメモリがある場合にはそのバ
ンクメモリへの書き込みを行うとともに読み出しが終了
したバンクメモリがない場合には読み出しが終了するま
で待機した後に書き込みを行うこととした。また、読み
出しに対しては、いずれかのバンクメモリからの読み出
しが終了した時に書き込みが終了したバンクメモリがあ
る場合には書き込みの順序にしたがって次の読み出しを
行うとともに書き込みが終了したバンクメモリがない場
合には書き込みが終了するまで待機した後に読み出しを
行うこととした。このように作用するので、書き込みも
読み出しも行なわれない時間を低減させることができ
る。そして、このようにして動作効率を向上させること
により、処理速度を向上させることができる。また、上
記基本構成に加えてさらに上記構成の復号化器を備える
画像処理装置によれば、並列区切り符号検出部が、頭出
しシフト部から被解読データを取り込んで、複数の先頭
ビット位置についての区切り符号の検出を同時に行うこ
ととしたので、この区切り符号の検出に要する時間を短
縮することができる。 【0033】 【実施例】以下、本発明の一実施例に係わる画像処理装
置について説明する。 【0034】本実施例に係わる画像処理装置の全体構成
は、図8に示した従来の画像処理装置と同様であるが、
可変長・固定長復号化器およびランレングス復号化・ス
キャン順序変換器の構成が、従来の装置と異なってい
る。 【0035】まず、本実施例に係る可変長・固定長復号
化器について説明する。この可変長・固定長復号化器
は、基本構成に復号化器を付加した画像処理装置におけ
「復号化器」に該当する。 【0036】図1は、かかる可変長・固定長復号化器1
0の構成を概略的に示すブロック図である。 【0037】同図において、頭出しシフト部11は、シ
フト量切り替え部14から入力した頭出しシフト量情報
12に応じて、外部から入力した入力符号Di をシフト
し、これにより被解読符号D11を生成する。本実施例で
は、この頭出しシフト部11の1回のシフト動作でシフ
トできるビット数の最大値(以下「最大シフト量」と記
す)を、31ビットとする。また、被解読符号D11のビ
ット幅を64ビットとする。すなわち、最大シフト量を
Mとすると、被解読符号D11のビット幅は2×(M+
1)となる。 【0038】符号解読部12は、被解読符号D11を入力
して、この被解読符号D11の先頭から可変長符号のパタ
ーン検出・解読と、固定長符号の切り出しとを行う。そ
して、これによって得られたランレングス符号を解読結
果Do として出力するとともに、解読・切り出しが行わ
れた可変長符号或いは固定長符号のパターン長を、頭出
しシフト量情報D12′として出力する。なお、この符号
解読部12は、後述するように、頭出しシフト部11が
出力した64ビットの被解読符号D11のうち、下位32
ビットのみを入力して、可変長・固定長符号の解読・切
り出しを行う。 【0039】並列区切り符号検出部13は、頭出しシフ
ト部11から取り込んだ被解読符号D11からのスタート
コードの検出を31ビットの先頭ビット位置について同
時に行い、この検出結果に基いて区切り符号検出シフト
量情報D12″、制御信号D13およびシフト量切り替え信
号D14を生成して出力する。 【0040】シフト量切り替え部14は、符号解読装置
12が出力した頭出しシフト量情報D12′と、後述の並
列区切り符号検出部13が出力した区切り符号検出シフ
ト量情報D12″とを入力する。そして、並列区切り符号
検出部13から出力されたシフト量切り替え信号D14
制御により、シフト量情報D12′,D12″のいずれか一
方を、頭出しシフト量情報D12として出力する。 【0041】次に、頭出しシフト部11および並列区切
り符号検出部13の内部構成の一例について、図2を用
いて説明する。 【0042】図2に示した頭出しシフト部11におい
て、切り替え器21−1の一方の入力からは入力符号が
入力され、他方の入力からはレジスタ22−1の出力値
が入力される。一方、この切り替え器21−1の出力
は、レジスタ22−1に入力される。また、切り替え器
21−2は、レジスタ22−1,22−2の出力値を入
力する。そして、この切り替え器21−2の出力は、レ
ジスタ22−2に入力される。さらに、切り替え器21
−3はレジスタ22−2,22−3の出力値を入力し、
そして、この切り替え器21−3出力はレジスタ22−
3に入力される。ここで、これらのレジスタ22−1〜
22−3としては、それぞれ32ビットのシフトレジス
タが使用されている。すなわち、頭出しシフト部11の
最大シフト量をMとすると、レジスタ22−1〜22−
3としてはM+1ビットのものを使用する。また、切り
替え器21−1〜21−3の出力を切り替えるための制
御信号としては、後述するシフト量累積加算器24が出
力する桁あふれ信号D25が使用される。 【0043】シフト量累積加算器23は、シフト量切り
替え部14から入力された頭出しシフト量情報D12とシ
フト量累積レジスタ24の出力値とを加算することによ
り、上述の桁あふれ信号D25およびシフト回路用シフト
量D26とを生成する。また、シフト量累積レジスタ24
は、このシフト回路用シフト量D26を入力する。なお、
シフト量累積加算器23およびシフト量累積レジスタ2
4のビット幅は、それぞれ、頭出しシフト部11の最大
シフト量をMとして、log2 (M+1)ビットとす
る。 【0044】シフト回路25は、切り替え器21−1〜
21−3の出力データD21〜D23を並列に取り込む。す
なわち、このシフト回路25の入力のビット幅は96ビ
ット(最大シフト量をMとすると3(M+1)ビット)
となる。そして、シフト量累積加算器24が出力するシ
フト回路用シフト量D26の制御にしたがって、このデー
タをシフトし、64ビット(すなわち、2(M+1)ビ
ット)のデータD27として出力する。このシフト回路2
5の出力データは、レジスタ26を介し、被解読符号D
11として出力される。 【0045】このような構成によれば、切り替え器21
−1に入力された入力符号をレジスタ22−1〜22−
3で順次シフトさせて96ビットの出力データD21〜D
23として出力し、シフト回路25で頭出しシフト量情報
12に応じてシフトさせつつ、被解読符号D11の出力を
行うことができる。 【0046】一方、図2に示した並列区切り符号検出部
13は、31個(すなわち最大シフト量Mと同数)の区
切り符号検出器27−1〜27−31を有している。こ
れらの区切り符号検出器27−1〜27−31は、それ
ぞれ、被解読符号D11の第1ビット〜第31ビットを先
頭ビットとした24ビットデータを入力する。すなわ
ち、区切り符号検出器27−1は第1ビット〜第24ビ
ットを入力し、区切り符号検出器27−2は第2ビット
〜第25ビットを入力し、以下同様にして、区切り符号
検出器27−Mは第31ビット〜第54ビットを入力す
る。そして、各区切り符号検出器27−1〜27−M
は、入力した24ビットデータを「000001H」と
比較し、比較結果を出力する。 【0047】制御回路28は、各区切り符号検出器27
−1〜27−31から、比較結果を入力する。そして、
これらの比較結果のいずれかがスタートコードの検出を
示している場合には、どの区切り符号検出器がスタート
コードを検出したかにより当該スタートコードの位置を
判断する。そして、この判断結果および上述の比較結果
に基いて、区切り符号検出シフト量情報D12″、制御信
号D13およびシフト量切り替え信号D14を生成する。 【0048】次に、本実施例の可変長・固定長復号化器
10の動作について、図1を参照しつつ、詳細に説明す
る。 【0049】まず、スタートコードの検出を行うための
動作について説明する。 【0050】スタートコードの検出を行う場合、並列区
切り符号検出部13は、まず、シフト量切り替え信号D
14を出力し、シフト量切り替え部12に区切り符号検出
シフト量D12″を選択させる。そして、頭出しシフト部
11から64ビットの被解読符号D11を入力し、第1ビ
ット〜第31ビットのそれぞれを先頭ビットとした場合
について、当該被解読符号D11の値が「000001
H」(この値は2進数では24ビットとなる)と一致す
るか否かを、同時に判断する。すなわち、図3のに示
したような64ビットの被解読符号D11のうち、第1ビ
ット〜第24ビット、第2ビット〜第25ビット、第3
ビット〜第26ビット・・・第31ビット〜第54ビッ
トのそれぞれについて、「000001H」との比較を
行う。 【0051】そして、「000001H」に一致する被
解読符号列が存在していなければ、区切り符号検出シフ
ト量D12″として、「31ビット」を出力する。ここ
で、この情報値「31ビット」は、頭出しシフト部11
の最大シフト量と一致する。すなわち、本実施例で、並
列区切り符号検出部13が同時に行うことができる区切
り符号を31通りとしたのは、頭出しシフト部11の最
大シフト量に合わせたものである。 【0052】この区切り符号検出シフト量D12″は、シ
フト量切り替え部14を介し、頭出しシフト量情報D12
として、頭出しシフト部11に入力される。これによ
り、頭出しシフト部11が出力する被解読符号D11は、
図3にで示すように、31ビットだけシフトされる。 【0053】そして、1回目の検出の場合と同様、並列
区切り符号検出部13は、シフト後の被解読符号D11
第1ビット〜第31ビットのそれぞれを先頭ビットとし
た場合について、「000001H」と一致するか否か
を判断する。以下、「000001H」が検出されるま
で、同様の動作を繰り返す。 【0054】ここで、図3にでに示すように、「00
0001H」が検出されると、並列区切り符号検出装置
13は、この「000001H」に該当する部分を切り
出すために、被解読符号D11をさらにシフトさせる。す
なわち、図3のに示した場合を例に採って説明する
と、被解読符号D11の第14ビット〜第37ビットが
「000001H」と一致しているので、区切り符号検
出シフト量D12″としては「13ビット」が出力され
る。これにより、頭出しシフト部11が出力する被解読
符号D11は、13ビットだけシフトされる。このように
して、図3にで示すような、スタートコードから始ま
る被解読符号D11を得ることができる。 【0055】次に、可変長・固定長符号の解読を行う際
の動作(すなわちランレングス符号を生成するための動
作)について説明する。 【0056】まず、符号解読部12が、可変長・固定長
符号の解読・切り出しを開始する。ここで、上述したよ
うに、符号解読部12は被解読符号D11の下位32ビッ
トのみを入力する。したがって、図3にで示したよう
な被解読符号D11が頭出しシフト部11から出力されて
いる場合には、符号解読部12はそのまま可変長・固定
長符号の解読・切り出しを開始することができる。 【0057】この可変長・固定長符号の解読は、従来と
同様にして行われる(図10参照)。そして、1回の解
読を行うたびに、解読結果Do を出力する。また、これ
と併せて、解読された可変長符号或いは固定長符号のパ
ターン長を、頭出しシフト量情報D12′として出力す
る。これにより、頭出しシフト部11は、この頭出しシ
フト量情報D12′(すなわち頭出しシフト量情報D12
を入力すると、この頭出しシフト量情報D12の値にした
がって、出力する被解読符号D11をシフトさせる。以
下、同様にして、可変長・固定長符号の解読・切り出し
が続行される。このようにして生成された解読結果のデ
ータ列(ランレングス符号)は、ランレングス復号化・
スキャン順序変換器(後述)に送られる。 【0058】このようにして可変長・固定長符号の解読
・切り出しが行われている間も、並列区切り符号検出部
13は、スタートコードの検出を続行している。そし
て、可変長・固定長符号の解読動作中にスタートコード
が検出された場合には、並列区切り符号検出部13は制
御信号D13によって符号解読部12を一旦停止させ、シ
フト量切り替え信号D14によりシフト両切り替え部12
に頭出しシフト量情報D12′を選択させて、被解読符号
11がスタートコードから始まるようにシフトさせる。 【0059】また、可変長・固定長符号の解読中に、可
変長符号テーブル(図10(c)参照)や固定長符号テ
ーブル(図示せず)に無い符号パターンが現れた場合に
は、符号解読部12は、何等かの解読エラーが発生した
ものと判断し、符号解読部12による可変長・固定長符
号の解読を中止して、次のスタートコードの検出を行
う。そして、次のスタートコードが検出されると、上述
したような可変長・固定長符号の解読を再開する。ここ
で、本実施例の可変長・固定長復号化器10では、解読
後のビットが32ビット分、並列区切り符号検出部13
に格納されているので、この32ビットも含めて次のス
タートコードの検出を行うことができる。したがって、
スタートコードの一部がすでに誤解読に使用されていた
ような場合でも、そのスタートコードを失うことなくエ
ラー復帰を行うことができる。したがって、解読エラー
の発生時に捨てられる画像データ量を、従来よりも少な
くすることができる。 【0060】なお、可変長・固定長復号化器10が解読
結果(ランレングス符号)を出力するタイミングは、ラ
ンレングス復号化・スキャン順序変換器から入力される
書き込み禁止信号等によって制御されるが、詳細につい
ては後述する。 【0061】次に、本実施例に係るランレングス復号化
・スキャン順序変換器について説明する。このランレン
グス復号化・スキャン順序変換器は、本発明の基本構成
に係る画像処理装置における「バッファメモリ」に該当
する。 【0062】図4は、かかるランレングス復号化・スキ
ャン順序変換器40の構成を概略的に示すブロック図で
ある。 【0063】同図において、メモリ部41内のバンクメ
モリ41a,41bは、8×8画素(すなわち1ブロッ
ク)に相当する書き込み領域を有している。そして、こ
れらの書き込み領域は、データの書き込みが行われる前
には、すべてゼロに初期化される。 【0064】書き込みアドレス発生部42は、加算器4
2aとレジスタ42bとを備えている。ここで、レジス
タ42bの出力は、データの書き込みが行われる前には
「0」に初期化される。加算器42aは、レジスタ42
bの出力と、前段の可変長・固定長復号化器10(図1
参照)から入力したデータ列(ランレングス符号)のゼ
ロランとを入力する。そして、このレジスタ出力とゼロ
ランとを加算した結果を、書き込みアドレスSW とし
て、メモリ部41に送る。これにより、ランレングス符
号の「レベル」信号を、バンクメモリ41aまたはバン
クメモリ41bのいずれか(バンク選択信号RSEL によ
って指定される)の該当番地に順次書き込むことができ
る。そして、上述のように「レベル」信号が書き込まれ
た番地以外は「0」に初期化されているので、この書き
込みによってランレングス復号化を行うことができる。 【0065】読み出しアドレス発生部43は、カウンタ
43aとアドレス変換器43bとを備えている。そし
て、このアドレス変換器43bから読み出しアドレスS
R を出力して、バンクメモリ41aまたはバンクメモリ
41b(バンク選択信号RSELによって指定される)に
書き込まれたデータ列をスキャン順序変換しながら読み
出すことができ、出力データとしての量子化DCT係数
(図7(a)参照)を得ることができる。また、この読
み出しの際に、上述の読み出しアドレスSR を書き込み
アドレスSR ′として順次「0」を書き込むことによ
り、次回の書き込みのための初期化を行うことができ
る。 【0066】コントローラ(本発明の基本構成における
「書き込み制御手段」および「読み出し制御手段」に該
当する)44は、上述のように、バンク選択信号R
SELを用いてデータの書き込み/読み出しを行なうバ
ンクメモリを選択する。本実施例では、バンク選択信号
SELが「0」のときはバンクメモリ41aの書き込
みとバンクメモリ41bの読み出しとが選択され、且つ
バンク選択信号RSELが「1」のときはバンクメモリ
41aの読み出しとバンクメモリ41bの書き込みとが
選択されるものとする。このコントローラ44は、前段
の可変長・固定長復号化器10に対する書き込み禁止信
号Wの出力及びこの可変長・固定長復号化器10から
の書き込み終了信号WENDの入力により書き込みタイ
ミングの制御を行う。さらに、これと併せて、後段の逆
量子化器50に対する読み出し禁止信号Rの出力及び
この可変長・固定長復号化器10からの読み出し禁止信
号RSELの入力により読み出しタイミングの制御を行
う。 【0067】次に、本実施例に係わるランレングス復号
化・スキャン順序変換器40の動作について説明する。 【0068】図5は、かかるランレングス復号化・スキ
ャン順序変換器40の動作を説明するための状態遷移図
である。 【0069】まず、初期状態においては、バンクメモリ
41a,41bには何も書き込まれていないので、コン
トローラ44は、読み出し禁止信号RB を「1」(読み
出し禁止状態)とし、書き込み禁止信号WB を「0」
(書き込み可能状態)とする。また、バンク選択信号R
SEL は「0」として、書き込みとしてバンクメモリ41
aが選択された状態にしておくこととする。 【0070】ここで、前段の可変長・固定長復号化器1
0が、バンクメモリ41aへのランレングス符号の書き
込みを終了すると、コントローラ44には書き込み終了
信号WEND =1が入力される。これにより、図5に状態
Aとして示したように、コントローラ44は、読み出し
禁止信号RB を「0」(読み出し可能状態)とし、バン
ク選択信号RSEL を反転させる(図5では「RSEL =^
SEL 」と記す)。すなわち、ここでは、バンク選択信
号RSEL は、「1」(バンクメモリ41aが読み出し状
態でバンクメモリ41bが書き込みの状態)となる。ま
た、この時点ではバンクメモリ41bには何も書き込ま
れていないので、書き込み禁止信号WBは「0」(書き
込み可能状態)に維持する。 【0071】その後、状態Bに遷移し、書き込み終了信
号WEND が「1」となるか、或いは、読み出し終了信号
END が「1」となるまで、書き込み禁止信号WB
0、読み出し禁止信号RB =0で、バンク選択信号R
SEL の信号値をそのまま維持する状態(図5では「R
SEL =RSEL 」と記す)を続ける。 【0072】ここで、状態Aまたは状態Bにおいて、書
き込み終了信号WEND =1が再度入力されると、バンク
メモリ41a,41bはともに書き込みが行われた状態
となるので、状態Cに遷移し、書き込みを禁止するため
に書き込み禁止信号WB を「1」とする。このとき、読
み出し禁止信号RB およびバンク選択信号RSEL の信号
値は、RB =0、RSEL =RSEL のままとする。この状
態Cは、読み出し終了信号REND =1が入力されるまで
維持される。そして、読み出し終了信号REND=1が入
力されると、上述の状態Aに遷移する。 【0073】一方、状態Aまたは状態Bにおいて、読み
出し終了信号REND =1が入力されると、バンクメモリ
41a,41bはともに読み出しを行うことができない
状態となるので、状態Dに遷移し、読み出し禁止信号R
B を「1」にすることにより読み出しを禁止する。この
とき、書き込み禁止信号WB およびバンク選択信号R
SEL の信号値は、WB =0、RSEL =RSEL のままとす
る。この状態Dは、書き込み終了信号WEND =1が入力
されるまで維持される。そして、書き込み終了信号W
END =1が入力されると、上述の状態Aに遷移する。 【0074】図6は、バンクメモリ41a,41b(図
5参照)の書き込み/読み出しの切り替えタイミングを
示すタイミングチャートである。図6からわかるよう
に、本実施例では、バンクメモリ41a,41bのいず
れかについて書き込み或いは読み出しが終了すると、他
のバンクメモリが書き込み/読み出し可能状態のときは
直ちに書き込み/読み出しの切り替えを行うことがで
き、書き込み/読み出しができない状態のときは書き込
み/読み出し可能状態となるまで待機した後に書き込み
/読み出しの切り替えを行うことができるので、従来の
ランレングス復号化・スキャン順序変換器の場合(図4
参照)と比較して処理時間を短縮することができる。 【0075】なお、本実施例では、バンクメモリを2個
備えた場合について説明したが、3個以上のバンクメモ
リを備えることとしてもよいことはもちろんである。バ
ンクメモリを3個以上設けることとすれば、処理時間を
さらに短縮することができる。 【0076】 【発明の効果】以上詳細に説明したように、本発明によ
れば、並列区切り符号検出部で複数の先頭ビット位置に
ついての区切り符号の検出を同時に行うこととしたので
複号化器における処理時間を短縮することができ、ま
た、バンクメモリのいずれかについて書き込み或いは読
み出しが終了すると該バンクメモリに対する書き込み/
読み出しの切り替えを他のバンクメモリの状態に応じて
直ちに行うこととしたのでバッファメモリにおける処理
時間を短縮することができる。 【0077】したがって、本発明によれば、高速処理が
可能な画像処理装置を提供することができる。
【図面の簡単な説明】 【図1】本発明の一実施例に係わる復号化器の概略構成
を示すブロック図である。 【図2】図1に示した復号化器における頭出しシフト部
および並列区切り符号検出部の内部構成の一例を示すブ
ロック図である。 【図3】図1に示した復号化器の動作を説明するための
図である。 【図4】本発明の一実施例に係わるバッファメモリ(ラ
ンレングス復号化・スキャン順序変換器)の構成を概略
的に示すブロック図である。 【図5】図4に示したバッファメモリの動作を説明する
ための状態遷移図である。 【図6】図4に示したバッファメモリの動作を説明する
ためのタイミングチャートである。 【図7】スキャン順序変換およびランレングス符号化に
ついて説明する図であり、(a)は直交変換および量子
化を施した後の画素データからなるブロックを示す概念
図、(b)は(a)の画素データを並べかえて読み取っ
た後のデータ列を示す概念図、(c)は(b)のデータ
列を変換することによって得られたランレングス符号を
示す概念図である。 【図8】従来の画像処理装置の一構成例を概略的に示す
ブロック図である。 【図9】図8に示した可変長・固定長復号化器の内部構
成を概略的に示すブロック図である。 【図10】図9に示した可変長・固定長復号化器の動作
を説明するための図であり、(a)は解読動作を説明す
るための図、(b)はスタートコードを示す図、(c)
は可変長符号テーブルを示す図である。 【図11】図9に示した可変長・固定長復号化器のスタ
ートコード検出動作を説明するためのフローチャートで
ある。 【図12】図8に示したランレングス復号化・スキャン
順序変換器の内部構成を概略的に示すブロック図であ
る。 【図13】図12に示したランレングス復号化・スキャ
ン順序変換器の動作を説明するためのタイミングチャー
トである。 【図14】図12に示したランレングス復号化・スキャ
ン順序変換器の動作を説明するためのタイミングチャー
トである。 【符号の説明】 10 可変長・固定長復号化器 11 頭出しシフト部 12 符号解読部 13 並列区切り符号検出部 14 シフト量切り替え部 21−1〜21−3 切り替え器 22−1〜22−3 レジスタ 23 シフト量累積加算器 24 シフト量累積加算器 25 シフト回路 26 レジスタ 27−1〜27−M 区切り符号検出器 28 制御回路 40 ランレングス復号化・スキャン順序変換器 41 メモリ部 41a,41b バンクメモリ 42 アドレス発生部 42a 加算器 42b レジスタ 43 読み出しアドレス発生部 43a カウンタ 43b アドレス変換器 44 コントローラ
フロントページの続き (56)参考文献 特開 平3−36620(JP,A) 特開 昭50−72508(JP,A) 特開 平5−12423(JP,A) 特開 昭64−84381(JP,A) 特開 昭64−76284(JP,A) 特開 平1−263063(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06T 9/00 H04N 1/41 H04N 7/24 H03M 7/40 JICSTファイル(JOIS)

Claims (1)

  1. (57)【特許請求の範囲】 【請求項1】複数のバンクメモリと、これらのバンクメ
    モリの読み出しおよび書き込みを制御する制御回路とを
    有するバッファメモリを備える画像処理装置において、 前記制御回路が、 いずれかのバンクメモリに対する書き込みが終了した時
    点で、既に読み出しが終了した他のバンクメモリが存在
    する場合には、当該他のバンクメモリに対して次の書き
    込みを行なわせ、既に読み出しが終了した他のバンクメ
    モリが存在しない場合には、いずれかのバンクメモリの
    読み出しが終了するまで待機した後に当該読み出しが終
    了したバンクメモリに対して書き込みを行なわせると共
    に当該待機の期間中書き込みを禁止する書き込み制御手
    段と、 いずれかのバンクメモリからの読み出しが終了した時点
    で、既に書き込みが終了した他のバンクメモリが存在す
    る場合には、当該他のバンクメモリに対して書き込みが
    行なわれた順序にしたがって次の読み出しを行なわせ、
    既に書き込みが終了したバンクメモリが存在しない場合
    には、いずれかのバンクメモリの書き込みが終了するま
    で待機した後に当該書き込みが終了したバンクメモリに
    対して読み出しを行なわせると共に当該待機の期間中読
    み出しを禁止する読み出し制御手段と、 を備え 前記制御回路は、少なくとも可変長符号と区切り符号と
    を有する圧縮画像データを復号化する復号化器が復号化
    した画像データを前記バンクメモリに書き込む書き込み
    動作と、この書き込まれた画像データを前記バンクメモ
    リより読み出す読み出し動作とを制御すると共に、 前記復号化器は、前記圧縮画像データと頭出しシフト量
    データとを入力しこの頭出しシフト量データにしたがっ
    て前記圧縮画像データをシフトさせることにより被解読
    データを生成する頭出しシフト部と、この頭出しシフト
    部から取り込んだ前記被解読データを切り出すことによ
    り解読データを生成する符号解読部と、前記頭出しシフ
    ト部から取り込んだ前記被解読データからの前記区切り
    符号の検出を複数の先頭ビット位置について同時に行っ
    てこの検出結果に基いて前記シフ ト量データを生成する
    並列区切り符号検出部と、を備え ることを特徴とする画
    像処理装置。
JP21916894A 1994-09-13 1994-09-13 画像処理装置 Expired - Fee Related JP3417684B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP21916894A JP3417684B2 (ja) 1994-09-13 1994-09-13 画像処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP21916894A JP3417684B2 (ja) 1994-09-13 1994-09-13 画像処理装置

Publications (2)

Publication Number Publication Date
JPH0883347A JPH0883347A (ja) 1996-03-26
JP3417684B2 true JP3417684B2 (ja) 2003-06-16

Family

ID=16731272

Family Applications (1)

Application Number Title Priority Date Filing Date
JP21916894A Expired - Fee Related JP3417684B2 (ja) 1994-09-13 1994-09-13 画像処理装置

Country Status (1)

Country Link
JP (1) JP3417684B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3416536B2 (ja) 1998-10-14 2003-06-16 三洋電機株式会社 ディジタルカメラ
KR100644556B1 (ko) * 1999-06-07 2006-11-13 삼성전자주식회사 고속 역이산코사인변환 장치
JP4607638B2 (ja) * 2004-03-30 2011-01-05 パナソニック株式会社 可変長復号装置及び方法
JP5407912B2 (ja) * 2010-02-02 2014-02-05 株式会社リコー 画像処理装置、画像処理方法、画像処理プログラム及び記録媒体

Also Published As

Publication number Publication date
JPH0883347A (ja) 1996-03-26

Similar Documents

Publication Publication Date Title
KR101463279B1 (ko) 데이터 스트림의 생성 및 데이터 스트림 내부의 위치들의 식별
US5883975A (en) Compression and decompression methods on two-dimensional image data
EP0665653B1 (en) Apparatus and method for decoding variable-length code
WO1998041026A1 (en) Encoding method, encoder and recording medium, and decoding method, decoder and recording medium
JPH0746141A (ja) データフォーマット変換装置及び方法
JP3417684B2 (ja) 画像処理装置
JPH11215009A (ja) 符号復号装置
JP2002026737A (ja) データ復号化装置とその方法
JP4763853B2 (ja) 可変長符号復号化装置及びその方法
US20040218679A1 (en) Method and system for predictive table look-up code length of variable length code
KR100579417B1 (ko) 고속 영상압축장치
JP2918360B2 (ja) 逆量子化方法および画像データ復元装置
JP2638424B2 (ja) 可変長復号化装置
JPH033566A (ja) 圧縮データの復号方法
JPH0556271A (ja) 逆量子化方法および画像データ復元装置
JP3434904B2 (ja) 画像データ符号化装置
JPH05316355A (ja) 画像データ符号化復号化装置
JP3288677B2 (ja) 可変長符号復号化装置、デジタル放送受信装置及びdvd再生装置
JP3239664B2 (ja) 可変長符号復号方法
JP3142911B2 (ja) 符号化復号化装置の処理方法
JP4095454B2 (ja) データ復号装置及びデータ復号方法
JP3108243B2 (ja) 符号化及び復号化装置
JP3921487B2 (ja) 復号化方法、復号化装置および記録媒体
JP2004179752A (ja) ハフマンデコーダ
JP3238444B2 (ja) 画像符号化方式及び画像復号化方式

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080411

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090411

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100411

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20100411

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20110411

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees