説明

ゼロ画素カウント回路

【課題】回路規模が小さく、処理速度の速いゼロ画素カウント回路を提供する。
【解決手段】データ変換部11では、画像メモリ回路1から8画素単位で与えられる画像データの各画素の値が0か否かを1ビットの信号に変換する。結線マトリックス12では、データ変換部11から出力される8ビットの信号を、ジグザグスキャン則に従って並べ替えて64の出力端子の内の該当する出力端子に出力する。ゼロフラグレジスタ13は、結線マトリックス12から出力される画素の係数を保持する。ゼロ画素カウント回路14は、ゼロフラグレジスタ12の保持内容を順番にサーチしてゼロ係数の連続出現回数をカウントして出力する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、JPEG(Joint Photographic Expert Group)等の静止画圧縮のエントロピー符号化処理で用いられるゼロ画素カウント回路に関するものである。
【背景技術】
【0002】
JPEG等の静止画圧縮のエントロピー符号化では、符号化対象の画像データをジグザグスキャン則に従った順番で1次元に読み出し、それぞれの画像データをエントロピー符号化するようにしている。
【0003】
図2は、ジグザグスキャンの説明図で、画像メモリに格納された1ブロック分の画像データを模式的に示したものである。例えば、8行8列の格子状に仕切られた各升目が画素を示し、各升目の左上の数字は、その画素のデータが格納されているアドレス(0〜63)を示している。即ち、左上の画素のデータが0番地に、その右側の画素のデータが1番地に格納され、左から3番目〜8番目の画素のデータは、それぞれ2番地〜7番地に格納されている。同様に、上から2行目の画素のデータは、左から順番に8番地〜15番地に格納されている。このように、1ブロック分の画素のデータは、行と列の位置に従って画像メモリにシーケンシャルに格納される。
【0004】
一方、ジグザグスキャンでは、画像メモリに格納された画素のデータを、シーケンシャルではなく、図2中に破線の矢印で示したように、ジグザグに読み出すようになっている。即ち、1番目は左上の画素(0番地)、2番目はその右隣の画素(1番地)、3番目は斜め左下の画素(8番地)、4番目はその下の画素(16番地)、5番目は斜め右上の画素(9番地)、…というように、ジグザグスキャンが行われる。なお、図2の各升目の右下の数字は、その画素のデータを読み出す順番(1〜64)を示している。
【0005】
エントロピー符号化に当たっては、符号化する画素のデータを、上記のようにジグザグスキャンの順に読み出すだけでなく、読み出した画素の前に、値が0(ゼロ係数)の画素が何個連続していたのかを調べる必要が有る。
【0006】
図3は、下記特許文献1に記載された従来のジグザグスキャン回路の構成図である。
このジグザグスキャン回路は、一定の順序でシリアルに伝送される画素のデータを第1のメモリに所定の読み出し順序に対応して設定されたアドレスに順次書き込むと共に、画素のデータから非ゼロ係数を検出し非ゼロ係数の画素のデータが格納される第1のメモリのアドレスを第2のメモリに書き込み、第2のメモリに書き込まれたアドレスを所定の順序(降順)に並べ替える。そして、並べ替えられた順序で第2のメモリからアドレスを順次読み出し、読み出されたアドレスに基づいて第1のメモリから画素のデータを読み出すと共に、第2のメモリから読み出されたアドレスに基づいて、非ゼロ係数の画素データ相互間に存在するゼロの連続数を算出するようにしている。これにより、使用するメモリの容量を削減して小型化を図り、経済的に有利なジグザグスキャン回路が提供できるとしている。
【0007】
【特許文献1】特開平7−255053号公報
【発明の開示】
【発明が解決しようとする課題】
【0008】
しかしながら、前記ジグザグスキャン回路では、アドレスを格納する第2のメモリは少なくとも6ビットのビット幅が必要であり、更に、第2のメモリに格納されたアドレスを降順に並べ替えるための並べ替え回路が必要である。一般的に、降順並べ替え回路は、プロセッサを用いてソフトウエアで行う構成となっているので、規模縮小や高速処理は難しいと考えられる。また、前記ジグザグスキャン回路でゼロの連続数を算出するためのゼロラン数算出回路は、ソート回路とアドレス演算回路を用いてクロックに従ってアドレス演算を行うようになっており、回路規模や演算処理時間が大きくなるおそれがある。
【0009】
本発明は、回路規模が小さく、処理速度の速いゼロ画素カウント回路を提供することを目的としている。
【課題を解決するための手段】
【0010】
本発明のゼロ画素カウント回路は、m行m列のm×m画素からなる画像データが行または列毎にm画素単位にm回に分けて順番に与えられ、1回毎に与えられるm画素の各画素の値が0であるゼロ係数か否かを判定して各画素の判定結果をそれぞれ1ビットの信号に変換して並列に出力するデータ変換部と、m個の入力端子とm×m個の出力端子を有し、前記行または列毎のm画素単位に前記データ変換部から出力されて該入力端子に与えられるmビットの信号を、ジグザグスキャン則に従って並べ替えて該m×m個の出力端子の対応する端子に出力する結線マトリックスと、前記結線マトリックスのm×m個の出力端子に対応して設けられ、該m×m個の出力端子から出力される信号を画素の係数としてそれぞれ保持する1番目からm×m番目までのm×m個のゼロフラグレジスタと、前記m×m個のゼロフラグレジスタの保持内容を1番目からm×m番目まで順番にサーチし、各ゼロフラグレジスタに対応するゼロ係数の連続出現回数をカウントして出力する連続ゼロ数演算部とを備えたことを特徴としている。
【発明の効果】
【0011】
本発明では、m画素単位に与えられる画像データの各画素の値が0か否かを1ビットの信号に変換するデータ変換部と、このデータ変換部から出力されるmビットの信号を、ジグザグスキャン則に従って並べ替えてm×mの出力端子の内の該当する出力端子に出力する結線マトリックスと、この結線マトリックスから出力される画素の係数を保持するゼロフラグレジスタと、このゼロフラグレジスタの保持内容を順番にサーチしてゼロ係数の連続出現回数をカウントして出力する連続ゼロ数演算部とで、ゼロ画素カウント回路を構成している。これにより、本発明は、ゼロ画素カウントのための回路規模が縮小されると共に、その演算時間が短縮できるという効果がある。
【発明を実施するための最良の形態】
【0012】
この発明の前記並びにその他の目的と新規な特徴は、次の好ましい実施例の説明を添付図面と照らし合わせて読むと、より完全に明らかになるであろう。但し、図面は、もっぱら解説のためのものであって、この発明の範囲を限定するものではない。
【実施例1】
【0013】
図1は、本発明の実施例を示す静止画圧縮符号化装置の概略の構成図である。
この静止画圧縮符号化装置は、JPEG等の静止画圧縮のエントロピー符号化を行うもので、ディジタルカメラ等から得られた静止画像データを格納する画像メモリ回路1と、ゼロ画素カウント回路2と、エントロピー符号化回路3で構成されている。
【0014】
画像メモリ回路1は、ディジタルカメラ等から得られた静止画像データを格納し、格納した画像データをm行m列(mは3以上の整数)の格子状に仕切られたブロックBLK毎に切り出してゼロ画素カウント回路2とエントロピー符号化回路3に出力するものである。本実施例では、m=8として以下の説明をする。
【0015】
画像メモリ回路1は、切り出したブロックBLK毎に、画像データを行または列の8画素単位に8回に分け、その順番を示す制御信号CONと共に、ゼロ画素カウント回路2に出力するようになっている。
【0016】
ゼロ画素カウント回路2は、データ変換部11と、結線マトリックス12と、ゼロフラグレジスタ13と、連続ゼロ数演算部14を備えている。
【0017】
データ変換部11は、画像メモリ回路1から行または列毎に8画素単位で並列に与えられる画像データの各画素の値が0であるゼロ係数か0以外の非ゼロ係数かを判定し、各画素の判定結果をそれぞれ1ビットの信号に変換して並列に出力するものである。データ変換部11は、画素の値が0即ちゼロ係数であれば論理値“1”を出力し、値が0以外即ち非ゼロ係数であれば論理値“0”を出力するようになっている。このようなデータ変換部11は、例えば、画素値の各桁を並列入力とするNOR(否定的論理和ゲート)で構成することができる。データ変換部11から出力される8ビットの信号は、結線マトリックス12に与えられている。
【0018】
結線マトリックス12は、データ変換部11から出力される8ビットの信号を、ジグザグスキャン則に従って並べ替えて該当する出力端子に出力するもので、データ変換部11からの信号を入力する8個の入力端子と、画像メモリ回路1から出力されている画像データの行または列の番号を示す制御信号CONが与えられる制御端子と、64個の出力端子を有している。結線マトリックス12は、制御端子に与えられる制御信号CONに従って、8個の入力端子を64個の出力端子の内の8個の端子に1:1に接続するもので、例えば、論理ゲートを組み合わせた選択回路で構成することができる。結線マトリックス12の出力側には、64個の出力端子に対応して1番目から64番目までの64個のゼロフラグレジスタ13-1〜13-64が接続されている。
【0019】
ゼロフラグレジスタ13-1〜13-64はいずれも1ビットのレジスタで、結線マトリックス12の出力端子から出力される信号を画素の係数としてそれぞれ保持するものである。 ゼロフラグレジスタ13-1〜13-64の保持内容は、連続ゼロ数演算部14に与えられるようになっている。
【0020】
連続ゼロ数演算部14は、64個のゼロフラグレジスタ13-1〜13-64の保持内容を順番にサーチし、各ゼロフラグレジスタ13-1〜13-64に対応するゼロ係数の連続出現回数をそれぞれカウントして出力するものである。なお、ゼロ係数が連続している場合には、該当するゼロフラグレジスタに対応するゼロ係数の連続出現回数は0に設定されるようになっている。
【0021】
例えば、ゼロフラグレジスタ13-iに対応するゼロ係数の連続出現回数をカウントする場合、このゼロフラグレジスタ13-iの保持内容が“1”(ゼロ係数)で、次のゼロフラグレジスタ13-i+1の保持内容が“0”(非ゼロ係数)であれば、このゼロフラグレジスタ13-iよりも前のゼロフラグレジスタで保持内容が“1”で連続している数をカウントし、そのカウント値をゼロ係数の連続出現回数として出力する。ゼロフラグレジスタ13-iの保持内容が“0”であるか、或いは次のゼロフラグレジスタ13-i+1の保持内容が“1”であれば、このゼロフラグレジスタ13-iに対応するゼロ係数の連続出現回数は0となる。
【0022】
このような連続ゼロ数演算部14は、例えば、加算器、論理ゲート及びプライオリティデコーダ等の論理回路を組み合わせて構成することができる。
【0023】
図4は、図1中の結線マトリックス12の動作を示す説明図である。また、図5は、図1中の連続ゼロ数演算部14の動作を示す説明図である。以下、これらの図4及び図5を参照しつつ、図1の動作を説明する。
【0024】
図示しないディジタルカメラ等から得られた静止画像データは、画像メモリ回路1に格納された後、この画像メモリ回路1によって8行8列の格子状に仕切られたブロックBLK毎に切り出だされる。切り出されたブロックBLKの画像データは、制御信号CONで指定される行単位に読み出され、8画素分の画像データがこの制御信号CONと共にゼロ画素カウント回路2に出力される。
【0025】
8画素分の画像データは、ゼロ画素カウント回路2のデータ変換部11に与えられ、各画素に対してその値が0か否かが判定される。画素の値が0であれば、その画素の値は“1”に変換され、0以外の値であれば、その画素の値は“0”に変換される。変換された8画素の値は、結線マトリックス12の入力端子に与えられる。
【0026】
結線マトリックス12には、図4(a)〜(c)に示すように、データ変換部11からの8画素の値と、画像メモリ回路1からの制御信号CONが与えられる。これにより、結線マトリックス12において、図2に示すジグザグスキャン則に従った画素値の並べ替えが行われる。
【0027】
図4(a)に示すように、制御信号CONの値が1の場合、結線マトリックス12の1番目の入力端子は、1番目の出力端子に接続される。また、2番目の入力端子は2番目の出力端子に、3番目の入力端子は6番目の出力端子に、4番目の入力端子は7番目の出力端子に、5番目の入力端子は15番目の出力端子に、6番目の入力端子は16番目の出力端子に、7番目の入力端子は28番目の出力端子に、8番目の入力端子は29番目の出力端子に、それぞれ接続される。
【0028】
結線マトリックス12の8個の入力端子には、画像メモリ回路1で切り出されたブロックBLKの1行目のデータ#0〜#7の変換後の画素の値が、順番に与えられている。従って、これらのデータ#0〜#7の画素の値は、結線マトリックス12の1番目、2番目、6番目、7番目、15番目、16番目、28番目及び29番目の出力端子から出力される。結線マトリックス12の出力端子から出力されたデータ#0〜#7の画素の値は、対応するゼロフラグレジスタ13-1,13-2,13-6,13-7,13-15,13-16,13-28,13-29に格納される。
【0029】
制御信号CONの値が2になると、結線マトリックス12の入力端子には、ブロックBLKの2行目から読み出されてデータ変換部11で変換されたデータ#8〜#15の値が与えられる。一方、この結線マトリックス12の1番目から8番目の入力端子は、図4(b)に示すように、ジグザグスキャン則に従って、3番目、5番目、8番目、14番目、17番目、27番目、30番目、43番目の出力端子に接続される。これにより、結線マトリックス12の出力端子から出力されたデータ#8〜#15の画素の値は、対応するゼロフラグレジスタ13-3,13-5,13-8,13-14,13-17,13-27,13-30,13-43に格納される。
【0030】
同様に、制御信号CONの値の増加によってブロックBLKの3行目から8行目のデータが順次読み出され、データ変換部11で変換された後、結線マトリックス12でジグザグスキャン則に従って並べ替えが行われ、対応するゼロフラグレジスタ13に格納される。
【0031】
そして、図4(c)に示すように、制御信号CONが8になって8行目のデータ#56〜#63の並べ替えが行われて対応するゼロフラグレジスタに格納されると、このゼロフラグレジスタ13-1〜13-64に1ブロック分のデータの値が保持される。これにより、連続ゼロ数演算部14の動作が開始する。
【0032】
図5に示すように、ゼロフラグレジスタ13-1〜13-64に保持された値は、連続ゼロ数演算部14の対応する1番目から64番目までの入力側に与えられる。この状態で、連続ゼロ数演算部14は、1番目の入力から連続する“1”の数を数える。連続が途切れた場合、即ち入力が“0”の場合は、連続ゼロ数演算部14の同じ順番目の出力は0となる。また、“1”の入力が連続している場合は、その連続する最後の“1”入力に対応する出力に連続数が出力され、連続途中の“1”入力に対応する出力は0となる。
【0033】
図5に即して具体的に説明すると、連続ゼロ数演算部14の1番目の入力は“0”であるので、1番目の出力は0である。2番目の入力は“1”で、3番目の入力は“0”であるので、“1”入力の連続数は1であるので、2番目の出力は1となり、3番目の出力は0となる。4番目の入力は“0”であるから、4番目の出力は0となる。5番目から8番目まで“1”入力が4回連続し、9番目の入力が“0”となっているので、5番目から7番目までの出力は0となり、8番目の出力が4となる。また、9番目の出力は“0”である。連続ゼロ数演算部14によって、このような連続ゼロ数演算が行われ、この連続ゼロ数演算部14で算出された1番目から64番目までの入力に対する連続ゼロ数が、対応する1番目から64番目までの出力側に出力される。連続ゼロ数演算部14から出力される連続ゼロ数は、エントロピー符号化回路3に与えられる。
【0034】
エントロピー符号化回路3は、連続ゼロ数演算部14から出力される連続ゼロ数と画像メモリ回路1から読み出した静止画像データに基づいて、エントロピー符号化を行う。
【0035】
以上のように、本実施例の静止画圧縮符号化装置は、8画素単位に与えられる画像データの各画素の値が0か否かを1ビットの信号に変換するデータ変換部11と、データ変換部11から出力される8ビットの信号を、ジグザグスキャン則に従って並べ替えて64の出力端子の内の該当する出力端子に出力する結線マトリックス12と、結線マトリックス12から出力される画素の係数を保持するゼロフラグレジスタ13と、ゼロフラグレジスタ13の保持内容を順番にサーチしてゼロ係数の連続出現回数をカウントして出力する連続ゼロ数演算部14とで構成されるゼロ画素カウント回路2を有している。
【0036】
これにより、本発明は、ゼロ画素カウントのための回路規模が縮小されると共に、その演算時間が短縮できるという利点がある。
【0037】
なお、本発明は、上記実施例に限定されず、種々の変形が可能である。この変形例としては、例えば、次のようなものがある。
(a) 動作の説明では、画像メモリ回路1からデータ変換部11に行毎に8画素単位で画像データが与えられる場合を説明したが、列毎に画像データが与えられても良い。この場合は、結線マトリックス12の接続は図4とは異なる。
(b) ジグザグスキャン則は、図2に例示したものに限定されない。
(c) 特定の場合には、連続ゼロ数演算部14でカウントする連続数の上限を一定の値(例えば、15)に定めることができる。この場合、連続数が15に達したときに連続数として15を出力し、カウント値をクリアした後、次の画素から新たにカウントを繰り返す。
(d) データ変換部11では、画素の値が0の場合に“1”、0以外の場合に“0”に変換しているが、画素の値が0の場合に“0”、0以外の場合に“1”に変換するようにしても良い。その場合は、連続ゼロ数演算部14で、ゼロフラグレジスタ13の内容が“0”であるものの連続する数をカウントすれば良い。
【図面の簡単な説明】
【0038】
【図1】本発明の実施例を示す静止画圧縮符号化装置の概略の構成図である。
【図2】ジグザグスキャンの説明図である。
【図3】従来のジグザグスキャン回路の構成図である。
【図4】図1中の結線マトリックス12の動作を示す説明図である。
【図5】図1中の連続ゼロ数演算部14の動作を示す説明図である。
【符号の説明】
【0039】
2 ゼロ画素カウント回路
11 データ変換部
12 結線マトリックス
13 ゼロフラグレジスタ
14 連続ゼロ数演算部

【特許請求の範囲】
【請求項1】
m行m列(但し、mは3以上の整数)のm×m画素からなる画像データが行または列毎にm画素単位にm回に分けて順番に与えられ、1回毎に与えられるm画素の各画素の値が0であるゼロ係数か否かを判定して各画素の判定結果をそれぞれ1ビットの信号に変換して並列に出力するデータ変換部と、
m個の入力端子とm×m個の出力端子を有し、前記行または列毎のm画素単位に前記データ変換部から出力されて該入力端子に与えられるmビットの信号を、ジグザグスキャン則に従って並べ替えて該m×m個の出力端子の対応する端子に出力する結線マトリックスと、
前記結線マトリックスのm×m個の出力端子に対応して設けられ、該m×m個の出力端子から出力される信号を画素の係数としてそれぞれ保持する1番目からm×m番目までのm×m個のゼロフラグレジスタと、
前記m×m個のゼロフラグレジスタの保持内容を1番目からm×m番目まで順番にサーチし、各ゼロフラグレジスタに対応するゼロ係数の連続出現回数をカウントして出力する連続ゼロ数演算部とを、
備えたことを特徴とするゼロ画素カウント回路。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2008−5181(P2008−5181A)
【公開日】平成20年1月10日(2008.1.10)
【国際特許分類】
【出願番号】特願2006−172110(P2006−172110)
【出願日】平成18年6月22日(2006.6.22)
【出願人】(000000295)沖電気工業株式会社 (6,645)
【出願人】(503357654)株式会社沖ネットワークエルエスアイ (61)
【Fターム(参考)】