JP2004030515A - 画像処理装置及び画像処理方法 - Google Patents

画像処理装置及び画像処理方法 Download PDF

Info

Publication number
JP2004030515A
JP2004030515A JP2002189475A JP2002189475A JP2004030515A JP 2004030515 A JP2004030515 A JP 2004030515A JP 2002189475 A JP2002189475 A JP 2002189475A JP 2002189475 A JP2002189475 A JP 2002189475A JP 2004030515 A JP2004030515 A JP 2004030515A
Authority
JP
Japan
Prior art keywords
data
processing
unit
image
image processing
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.)
Granted
Application number
JP2002189475A
Other languages
English (en)
Other versions
JP4139633B2 (ja
Inventor
Yutaka Sato
佐藤 豊
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2002189475A priority Critical patent/JP4139633B2/ja
Priority to EP03761771A priority patent/EP1518209A4/en
Priority to PCT/JP2003/007881 priority patent/WO2004003843A1/en
Priority to US10/501,664 priority patent/US7406205B2/en
Publication of JP2004030515A publication Critical patent/JP2004030515A/ja
Application granted granted Critical
Publication of JP4139633B2 publication Critical patent/JP4139633B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Processing (AREA)
  • Multi Processors (AREA)
  • Complex Calculations (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

【課題】画像に関するデータを処理する複数の処理部の一部に、他の処理部に比べて時間を要する処理を実行する高負荷処理部を備える画像処理装置において、上記高負荷処理部の駆動クロックを他の処理部に比べて大幅に上げることなく、各処理部において処理に要する時間の整合を行い得る画像処理装置を提供する。
【解決手段】本発明の画像処理装置は、画像に関するデータを処理する複数の処理部の一部に、他の処理部に比べて時間を要する処理を実行する高負荷処理部を備える画像処理装置において、上記高負荷処理部を複数並列に用意し、上記画像に関するデータを上記複数の高負荷処理部に分配するデータ分配部と、上記複数の高負荷処理部で処理の終了したデータを、上記画像に関するデータを1つの高負荷処理部で処理した場合に得られるデータと同じにして出力するデータ合成部とを備えることを特徴とする。
【選択図】 図2

Description

【0001】
【発明の属する技術分野】
本発明は、画像に関するデータを処理する複数の処理部の一部に、他の処理部に比べて時間を要する処理を実行する高負荷処理部を備える画像処理装置及び画像処理方法に関する。
【0002】
【従来の技術】
画像に関するデータに対して所定の処理を実行する画像処理装置には、画像に関するデータを処理する複数の処理部の一部に、他の処理部に比べて時間を要する処理を実行する高負荷処理部を備えるものがある。上記高負荷処理部としては、例えば、駆動クロックの周波数が同じ場合において、他の処理部が画像データ単位で処理を行うのに対して、上記画像データを構成するビットデータ単位で処理を行う処理部が該当する。このような高負荷処理部を備える画像処理装置としては、JPEG2000形式の画像処理装置が挙げられる。JPEG2000形式の画像処理装置においては、以下に説明するように、係数モデリング及びMQ符号化処理を実行する処理部が上記の高負荷処理部に相当する。
【0003】
図11は、JPEG2000形式の画像処理装置300の構成を示す図である。画像データは、まず、色変換部301においてY(輝度)、Cr(色差)、Cb(色差)に変換される。不可逆変換フィルタを用いる離散ウェーブレット変換部302は、所定レベルの離散ウェーブレット変換を行い、求められるウェーブレット係数を次段の量子化部303に出力する。量子化部303では、スカラー量子化を実行する。
【0004】
次の係数モデリング部304では、ウェーブレット係数を各サブバンド内で所定サイズのブロックに分割し、ブロック単位で、上記スカラー量子化されたデータを上位ビットから順にビットプレーンに分解する。係数モデリング部304では、ビットプレーンに分解された各ウェーブレット係数を3通りの符号化パスに分けてビットデータ単位で係数符号化する。
【0005】
MQ符号化部305は、上記係数モデリング部4においてビットデータ単位で係数符号化された画像データに対して2値算術符号化処理を行い、得られる符号データを符号形成部306に出力する。
【0006】
符号形成部306は、上記MQ符号化部305において求められる符号データの所定の箇所に、符号化に関する情報等のデータを付加してコードストリームと呼ばれる一連の符号データを形成し、これを出力する。
【0007】
【発明が解決しようとする課題】
上記各処理部の内、色変換部301、離散ウェーブレット変換部302、及び量子化部303は、8ビットや16ビット等の画像データ単位で処理を実行する。これに対して、係数モデリング部304及びMQ符号化部305では、上記画像データ等を構成するビットデータ単位で処理を実行する。即ち、係数モデリング部304及びMQ符号化部305は、他の処理部に比べて処理データ量が多く、処理に時間を要する高負荷処理部(図中、高負荷処理部Aと記す。)であるといえる。
【0008】
色変換部301、離散ウェーブレット変換部302及び量子化部303において、8ビットの画像データを12ビットの離散ウェーブレット係数に変換する場合、量子化部303から出力されるデータを、大きなバッファメモリを介さずにスムーズに処理するには、係数モデリング部304及びMQ符号化部305の処理速度、即ち駆動クロックの周波数を12倍にする必要がある。このように、駆動クロックの周波数を大幅に高めるには、個別にクロック信号の発生装置を用意するか、又はサイズの大きな周波数逓倍回路を必要とする。
【0009】
本発明は、画像に関するデータを処理する複数の処理部の一部に、他の処理部に比べて時間を要する処理を実行する高負荷処理部を備える画像処理装置において、上記高負荷処理部の駆動クロックを他の処理部に比べて大幅に上げることなく、各処理部において処理に要する時間の整合が行い易い画像処理装置を提供することを目的とする。
【0010】
【課題を解決するための手段】
本発明の第1の画像処理装置は、画像に関するデータを処理する複数の処理部の一部に、他の処理部に比べて時間を要する処理を実行する高負荷処理部を備える画像処理装置において、上記高負荷処理部を複数並列に用意し、上記画像に関するデータを上記複数の高負荷処理部に分配するデータ分配部と、上記複数の高負荷処理部で処理の終了したデータを、上記画像に関するデータを1つの高負荷処理部で処理した場合に得られるデータと同じにして出力するデータ合成部とを備えることを特徴とする。
【0011】
本発明の第2の画像処理装置は、上記第1の画像処理装置において、上記データ分配部は、入力されたデータを一旦メモリに格納し、当該メモリから各高負荷処理部へデータを分けて出力することを特徴とする。
【0012】
本発明の第3の画像処理装置は、上記第1の画像処理装置において、上記データ分配部は、入力されたデータをデータ量に基づいて各高負荷処理部に直接分けて出力することを特徴とする。
【0013】
本発明の第4の画像処理装置は、上記何れかの画像処理装置において、上記データ合成部は、各高付加処理部で処理の終了したデータを、上記画像に関するデータを1つの高負荷処理部で処理した場合に得られるデータと同じになる様にメモリに格納し、全ての高負荷処理部での処理終了後にメモリからデータを出力することを特徴とする。
【0014】
本発明の第5の画像処理装置は、上記第1乃至第3の何れかの画像処理装置において、上記データ合成部は、各高負荷処理部で処理の終了したデータを記憶する個別の記憶手段を備え、全ての高負荷処理部での処理終了後、上記画像に関するデータを1つの高負荷処理部で処理した場合に得られるデータと同じになる様に上記各高負荷処理部に対応する記憶手段に記憶しているデータを出力することを特徴とする。
【0015】
本発明の第6の画像処理装置は、上記何れかの画像処理装置において、上記他の処理部がデータ単位で処理するのに対して、上記高負荷処理部が上記データを構成するビットデータの単位で処理を行うことを特徴とする。
【0016】
本発明の第7の画像処理装置は、上記何れかの画像処理装置は、JPEG2000形式の画像処理装置であって、上記高負荷処理部は、係数モデリング及びMQ符号化処理を実行する処理部であることを特徴とする画像処理装置。
【0017】
本発明の第1の画像処理方法は、画像に関するデータについて行う複数の処理の一部に、他の処理に比べて時間を要する高負荷処理を含む画像処理方法において、上記画像に関するデータを複数に分割し、分割した各データに対して上記高負荷処理を並列に実行し、実行後のデータを、上記画像に関するデータを1つの高負荷処理部で処理した場合に得られるデータと同じにして出力することを特徴とする。
【0018】
本発明の第2の画像処理方法は、上記第1の画像処理方法において、他の処理がデータ単位で処理を行うのに対して、上記高負荷処理は上記データを構成するビットデータを単位として処理を行うことを特徴とする。
【0019】
本発明の第3の画像処理方法は、上記第1又は第2の画像処理方法は、JPEG2000形式に従う画像処理方法であって、上記高負荷処理は、係数モデリング及びMQ符号化処理であることを特徴とする。
【0020】
【発明の実施の形態】
(1)全体構成
以下、添付の図面を用いて実施の形態1に係るJPEG2000形式の画像処理装置1について説明する。画像処理装置1は、4つの係数モデリング及びMQ符号化処理部(処理データ量が多く処理に時間を要する高負荷処理部である。)を備え、量子化した一連のウェーブレット係数を、データ量が略同じになる様に上記4つの係数モデリング及びMQ符号化部に分配し、上記4つの係数モデリング及びMQ符号化部での処理が終了した符号データを、上記量子化後の一連のウェーブレット係数を1つの係数モデリング及びMQ符号化部において処理した場合に生成される符号データと同じになる様に合成して出力するものを備えることを特徴とする。これにより、8ビット等のデータ単位で処理を行う前段の各処理部とビットデータ単位で処理を行う係数モデリング及びMQ符号化処理間部との処理に要する時間の差を、当該係数モデリング及びMQ符号化部の動作クロックの周波数を極端に高くすることなく吸収することができる。
【0021】
図1は、画像処理装置1の構成を示す図である。画像データは、まず、色変換部2においてY(輝度)、Cr(色差)、Cb(色差)の3つの信号に変換される。不可逆変換フィルタを用いる離散ウェーブレット変換部3は、上記3つの信号それぞれに対してレベル3の離散ウェーブレット変換を行い、求められるウェーブレット係数を次段の量子化部4に出力する。量子化部4では、スカラー量子化を実行する。
【0022】
並列信号処理部5では、量子化後のウェーブレット係数を、処理データ量が同じ程度になるようにサブバンド単位で4つのグループに分け、各グループ別に用意した4つの係数モデリング及びMQ符号化処理部(高負荷処理部である。)で並列処理した後に、上記量子化後のウェーブレット係数を1つの係数モデリング及びMQ符号化処理部で処理した場合に得られるデータと同じになる様に合成して出力する。当該並列信号処理部5については、後に詳しく説明する。
【0023】
符号形成部6は、並列信号処理部5において生成された一連の符号データの所定箇所に、符号化に関する情報等の付加情報を追加したデータをコードストリームと呼ばれる最終的な符号データとして出力する。
【0024】
(2)並列信号処理部
図2は、並列信号処理部5の構成を示す図である。並列信号処理部5は、それぞれ同じ構成の第1信号処理部10、第2信号処理部11、及び第3信号処理部12で構成されている。各信号処理部には、初段の色変換部2においてY(輝度)、Cr(色差)、Cb(色差)の3つの信号に変換された画像データを離散ウェーブレット変換部3及び量子化部4で処理したデータがそれぞれ入力される。
【0025】
以下、第1信号処理部10の構成について説明する。係数メモリ13は、入力されるY(輝度)についての量子化後のウェーブレット係数を、処理データ量が略同じになる様に、サブバンド単位で4つのグループに分け、分けた各グループのウェーブレット係数のデータを個別に設けた係数モデリング及びMQ符号化部14〜17に出力する。即ち、係数メモリ13は、入力されるデータを4つの係数モデリング及びMQ符号化処理部14〜17に分配するデータ分配部として機能する。係数メモリ13の構成及び動作については、後に詳しく説明する。
【0026】
係数モデリング及びMQ符号化部14〜17では、JPEG2000の規定に従い、入力されたウェーブレット係数のデータをブロック単位でビットプレーンに分割し、各ビットプレーンについて3通りの符号化パスに分けてビットデータ単位で係数符号化し、更に、係数符号化後のデータをMQ符号化処理として2値算術符号化して符号化後のデータを符号メモリ部18に出力する。即ち、係数モデリング及びMQ符号化部14〜17は、他の処理部に比べて処理データ量が多く、処理に時間を要する高負荷処理部(図中、括弧書きで高負荷処理部A1〜A4と記す。)であるといえる。
【0027】
符号メモリ部18では、係数モデリング及びMQ符号化部14〜17から出力された符号データを、量子化されたウェーブレット係数を1つの係数モデリング及びMQ符号化処理部で処理した場合に得られる符号データと同じになる様に合成して出力する。符号メモリ部18については後に詳しく説明する。即ち、符号メモリ部18は、各係数モデリング及びMQ符号化部14〜17で生成された符号データを、量子化後のウェーブレット係数を1つの係数モデリングおよびMQ符号化部で処理した場合に得られる符号データと同じになる様に、合成して出力するデータ合成部として機能する。
【0028】
(3)係数メモリ
図3は、係数メモリ13の構成を示す図である。係数メモリ13は、入力されるウェーブレット係数のデータを、一旦メモリ20に格納した後、3LL,3LH,3HL,3HH,2LH,2HL,2HHのサブバンドのグループ(以下、第1グループと呼ぶ)、1LHのサブバンドのグループ(以下、第2グループと呼ぶ。)、1HLのサブバンドのグループ(以下、第3グループと呼ぶ。)、及び1HHのサブバンドのグループの4つのグループ(以下、第4グループと呼ぶ。)に分けて順に読み出し、第1グループのデータをセレクタ31の出力端子31aから係数モデリング及びMQ符号化部14に出力し、第2グループのデータをセレクタ31の出力端子31bから係数モデリング及びMQ符号化部15に出力し、第3グループのデータをセレクタ31の出力端子31cから係数モデリング及びMQ符号化部16に出力し、第4グループのデータをセレクタ31の出力端子31dから係数モデリング及びMQ符号化部17に出力する。
【0029】
以下、係数メモリ13の回路構成について詳しく説明する。量子化後のウェーブレット係数は、まず、メモリ20及びカウンタ21に入力される。カウンタ21は、入力されるウェーブレット係数のデータ量をカウントし、カウント値を4つの比較器22,24,26,28の一方の信号入力端子に入力する。
【0030】
比較器22は、3LL,3LH,3HL,3HH,2LH,2HL及び2HHのサブバンド全てのデータ量を基準値ref1とし、カウント値が当該値を超えた場合にHighレベルの信号をレジスタ23のデータ出力要求端子に出力する。レジスタ23には、メモリ20内における3LL,3LH,3HL,3HH,2LH,2HL及び2HHのサブバンドのウェーブレット係数のデータを読み出すのに必要な第1アドレス指定データが格納されており、比較器22からのHighレベルの信号に応じて当該第1アドレス指定データをメモリ20のアドレス指定端子20aに出力する。メモリ20は、上記第1アドレス指定データの入力に応じて、3LL,3LH,3HL,3HH,2LH,2HL及び2HHのサブバンドのウェーブレット係数のデータをセレクタ31に出力する。
【0031】
比較器24は、上記基準値ref1に1LHのサブバンドのデータ量を加算した値を基準値ref2とし、カウンタ21のカウント値が当該基準値ref2を超えた場合にHighレベルの信号をレジスタ25のデータ出力要求端子に出力する。レジスタ25には、メモリ20内における1LHのサブバンドのウェーブレット係数のデータを読み出すのに必要な第2アドレス指定データが格納されており、比較器24からのHighレベルの信号に応じて当該第2アドレス指定データをメモリ20のアドレス指定端子20aに出力する。メモリ20は、上記第2アドレス指定データの入力を受けて、1LHのサブバンドのウェーブレット係数のデータをセレクタ31に出力する。
【0032】
比較器26は、上記基準値ref2に1HLのサブバンドのデータ量を加算した値を基準値ref3とし、カウント値が当該基準値ref3を超えた場合にHighレベルの信号をレジスタ27のデータ出力要求端子に出力する。レジスタ27には、メモリ20内における1HLのサブバンドのウェーブレット係数のデータを読み出すのに必要な第3アドレス指定データが格納されており、比較器26からのHighレベルの信号に応じて当該第3アドレス指定データをメモリ20のアドレス指定端子20aに出力する。メモリ20は、上記第3アドレス指定データの入力を受けて1HLのサブバンドのウェーブレット係数のデータをセレクタ31に出力する。
【0033】
比較器28は、上記基準値ref3に1HHのサブバンドのデータ量を加算した値を基準値ref4とし、カウント値が当該基準値ref4を超えた場合にHighレベルの信号をレジスタ29のデータ出力要求端子に出力する。レジスタ29には、メモリ20内における1HHのサブバンドのウェーブレット係数のデータを読み出すのに必要な第4アドレス指定データが格納されており、比較器28からのHighレベルの信号に応じて当該第4アドレス指定データをメモリ20のアドレス指定端子20aに出力する。メモリ20は、上記第4アドレス指定データの入力を受けて1HHのサブバンドのウェーブレット係数のデータをセレクタ31に出力する。
【0034】
上記比較器22,24,26,28から出力される信号は、ターミネーション信号T1,T2,T3,T4として符号メモリ部18に出力される。当該ターミネーション信号T1〜T4を用いる処理の内容の説明は、後述の符号メモリ部18の詳しい説明の欄で行う。
【0035】
また、比較器24,26,28の出力する信号は、それぞれ加算器30に入力される。加算器30は、入力される3つの信号の内、Highレベルの信号の数を求め、求めた値を2ビットの選択信号としてセレクタ31の選択信号入力端子31fに出力する。上述したように、比較器24,26,28は、それぞれ1LH,1HL,1HHのサブバンドのウェーブレット係数のデータがメモリ20に格納完了すると同時にHighレベルの信号を出力する。即ち、加算器30は、メモリ20への1LHのサブバンドのウェーブレット係数のデータが格納完了するまでは、選択信号として“00”を選択信号入力端子31fに出力する。セレクタ31は、“00”の選択信号の入力を受けている間、信号入力端子31aに入力されるデータを信号出力端子31bより出力する。従って、選択信号が“00”の期間中に、メモリ20に格納された3LL,3LH,3HL,2LH,2HL,2HHのサブバンドのウェーブレット係数のデータがセレクタ31の信号出力端子31bから出力される。
【0036】
加算器30は、メモリ20への1LHのサブバンドのウェーブレット係数のデータの格納が完了すると、選択信号として“01”をセレクタ31の選択信号入力端子31fに出力する。セレクタ31は、“01”の選択信号を受けて信号入力端子31aに入力されるデータを信号出力端子31cより出力する。選択信号が“01”の期間中、メモリ20に格納された1LHのサブバンドのウェーブレット係数のデータがセレクタ31の信号出力端子31cから出力される。
【0037】
以下同様に、加算器31は、メモリ20への1HL,1HHのサブバンドのウェーブレット係数が格納完了すると選択信号としてそれぞれ“10”,“11”をセレクタ31の選択端子に出力する。セレクタ31は、“10”,“11”の選択信号を受けて信号入力端子31aに入力されるデータをそれぞれ信号出力端子31d,31eに出力する。選択信号が“10”,“11”の期間中、それぞれメモリ20に格納された1HL,1HHのサブバンドのウェーブレット係数のデータがセレクタの信号出力端子31d,31eから出力される。
【0038】
(4)符号メモリ部
図4は、符号メモリ部18の構成を示す図である。符号メモリ部18では、係数モデリング及びMQ符号化部14〜17からそれぞれ出力される符号データを一旦メモリ58に格納した後、量子化後のウェーブレット係数が1つの係数モデリング及びMQ符号化部において処理された場合に得られる符号データと同じになる様に、メモリ58から第1グループ、第2グループ、第3グループ、第4グループのデータを順に出力する。
【0039】
以下、回路構成について説明する。係数モデリング及びMQ符号化部14,15,16,17の出力は、順に、レジスタ40,43,46,49に出力される。係数モデリング及びMQ符号化部14〜17において生成される符号データの量は一定でない。そこで、符号メモリ部18では、JPEG2000の規定に従う係数モデリング及びMQ符号化部14〜17から符号データが出力される際にHighレベルに切り換るバイトアウト信号から出力符号データの量をカウンタ41,44,47,50によりカウントする。
【0040】
また、符号メモリ部18では、係数メモリ13から出力される4つのターミネーション信号T1〜T4がそれぞれHighレベルに切り換ってから、対応する係数モデリング及びMQ符号化部14〜17の処理能力から予め特定される遅延時間だけ経過した時点で、当該対応する係数モデリング及びMQ符号化部14〜17における符号化処理が完了したと判断する。具体的には、係数メモリ13の比較器22,24,26,28から出力されたターミネーション信号T1,T2,T3,T4は、それぞれ遅延回路53,54,55,56において所定時間だけ遅延された後、処理完了信号C1,C2,C3,C4としてレジスタ40,43,46,49のデータ要求端子、調停回路52、及びANDゲート57に出力される。遅延回路53,54,55,56は、それぞれ入力されるターミネーション信号T1,T2,T3,T4を上記係数モデリング及びMQ符号化部14,15,16,17の処理能力から特定される処理時間だけ信号を遅延させる。
【0041】
まず、係数モデリング及びMQ符号化部14から出力される第1グループ、即ち、3LL,3LH,3HL,3HH,2LH,2HL,2HHのサブバンドのウェーブレット係数の符号データに関して説明する。レジスタ40は、係数モデリング及びMQ符号化部14からHighレベルのバイトアウト信号がイネーブル端子40eに入力されている時に入力端子40aに入力されるデータを符号データとして格納する。カウンタ41は、Highレベルのバイトアウト信号の数をカウントする。アドレス生成部42は、カウンタ41によるカウント値に基づいて、メモリ58に書き込んだ符号データの読み出しに必要なアドレス信号の生成を行う。メモリ58の各グループの符号データの書き込み開始アドレスは、予め決められている。アドレス生成部42は、上記データ書き込み開始アドレスにカウンタ41のカウント値から特定されるデータ量を加算してメモリ58に書き込まれる符号データの最終アドレスを特定する。
【0042】
係数モデリング及びMQ符号化部15,16,17からそれぞれ出力される第2グループ,第3グループ,第4グループ、即ち、1LH,1HL,1HHのサブバンドのウェーブレット係数の符号データに関しても同様である。即ち、レジスタ43,46,49は、それぞれ係数モデリング及びMQ符号化部15,16,17からHighレベルのバイトアウト信号がイネーブル端子43e,46e,49eに入力されている時に、信号入力端子43a,46a,49aに入力されるデータを符号データとして格納する。カウンタ44,47,50は、Highレベルのバイトアウト信号に基づいて入力された符号データの量をカウントする。アドレス生成部45,48,51は、それぞれカウンタ44,47,50によるカウント値に基づいて、メモリ58に書き込んだ符号データの読み出しに必要なアドレス信号の生成を行う。上述したようにメモリ58の各グループの符号データの書き込み開始アドレスは、予め決められている。アドレス生成部45,48,51は、上記データ書き込み開始アドレスに、それぞれカウンタ44,47,50のカウント値から特定されるデータ量を加算してメモリ58に書き込まれる符号データの最終アドレスを特定する。
【0043】
レジスタ40,43,46,49は、データ要求端子40b,43b,46b,49bに対する上記処理完了信号の入力に応じて、格納しているデータを信号出力端子40c,43c,46c,49cから後段のメモリ58へと出力する。各レジスタとメモリ58との間には、複数のレジスタから同時に格納データが出力された場合に、メモリ58へのデータ出力順序を調整する調停回路52を設けておく。当該調停回路52については、後に詳しく説明する。
【0044】
ANDゲート57は、入力される4つの処理完了信号C1〜C4が全てHighレベルに換わった時にメモリ58への各グループの符号データの格納が完了したと判断して、第1グループ用のアドレス生成部42のアドレスデータ出力要求端子40bにHighレベルの信号を出力する。アドレス生成部42は、アドレス信号の出力要求端子42aへのHighレベルの信号入力に応じて、アドレス信号をメモリ58のアドレス指定端子58aに出力し、メモリ58に格納している第1グループ、即ち、3LL,3LH,3HL,3HH,2LH,2HL,2HHのサブバンドについての符号データの読み出しを行う。なお、当該アドレス信号は、読み出し開始アドレス、及び、読み出し終了アドレスのデータで構成される。
【0045】
メモリ58から出力される符号データは、そのまま外部に出力されると共に、カウンタ59に入力され、データ量のカウントが行われる。カウンタ59は、カウント値を比較器60,61,62の一方の信号入力端子に入力する。
【0046】
比較器60の残りの信号入力端子には、カウンタ41のカウント値が入力される。即ち比較器60は、第1グループ分の全ての符号データがメモリ58から出力された時にHighレベルの信号を第2グループ用のアドレス生成部45のアドレス信号の出力要求端子45aに出力する。アドレス生成部45は、アドレス信号の出力要求端子45aへのHighレベルの信号入力に応じてアドレス信号をメモリ58のアドレス指定端子58aに出力し、メモリ58に格納している第2グループ、即ち1LHのサブバンドについての符号データの読み出しを行う。
【0047】
比較器61の残りの信号入力端子には、カウンタ44からのカウント値が入力される。即ち、比較器61は、第2グループの全ての符号データがメモリ58から出力された時にHighレベルの信号を第3グループ用のアドレス生成部48のアドレス信号の出力要求端子48aに出力する。アドレス生成部48は、アドレス信号の出力要求端子48aへのHighレベルの信号入力に応じて、アドレス信号をメモリ58のアドレス指定端子58aに出力し、メモリ58に格納している第3グループ、即ち1HLのサブバンドについての符号データの読み出しを行う。
【0048】
比較器62の残りの信号入力端子には、カウンタ47からのカウント値が入力される。即ち、比較器62は、第3グループ分の全ての符号データがメモリ58から出力された時にHighレベルの信号を第4グループ用のアドレス生成部51のアドレス信号の出力要求端子51aに出力する。アドレス生成部51は、アドレス信号の出力要求端子58aへのHighレベルの信号入力に応じて、アドレス信号をメモリ58のアドレス指定端子58aに出力し、メモリ58に格納している第4グループ、即ち1HHのサブバンドについての符号データの読み出しを行う。
【0049】
(5)調停回路
図5は、図4に示した符号メモリ部18の備える調停回路52の構成を示す図である。調停回路52には、係数モデリング及びMQ符号化処理の完了したグループの符号データが並列に入力される。調停回路52では、第1グループから第4グループへと順に繰り返し係数モデリング及びMQ符号化処理の完了を調べ、調べた結果、先に処理の完了したグループのデータから優先してメモリ58に出力させる。あるグループのデータをメモリ58に出力している間に処理の完了した他のグループのデータは、個別に用意するレジスタ70,72,74,76に保存する。
【0050】
以下、回路構成について説明する。レジスタ70,72,74,76は、FIFO型のレジスタメモリであり、データ出力要求端子70a,72a,74a,76aへのHighレベルの信号の入力に応じて、データを格納順に出力する。各レジスタの出力端子は、全て調停回路52自体の符号データ出力端子52aに出力されると共にカウンタ78に入力される。また、カウンタ71,73,75,77は、それぞれ上記レジスタ70,72,74,76に入力されるデータ量をカウントする。
【0051】
係数メモリ13からの4つの処理完了信号C1,C2,C3,C4は、それぞれANDゲート88,89,90,91の一方の信号入力端子に入力されると共に、これら4つ全ての処理完了信号が4入力NORゲート100の信号入力端子に接続される。4入力NORゲート100の信号出力端子は、RSフリップフロップ102のセット端子Sに入力されている。NORゲート100は、4つの処理完了信号全てがLowレベルにある時、Highレベルの信号を出力するが、4つの処理完了信号の内、1つでもHighレベルに切り換ると、以降ずっとLowレベルを保持する。
【0052】
リレー回路83は、セット端子83aにHighレベルの信号が入力されている間、端子83b,83c,83d,83eの順にパルス状の信号、即ち、一時的にHighレベルに切り換る信号を繰り返し出力する。各端子は、それぞれ2入力ANDゲート96,97,98,99の一方の信号入力端子に接続される。これらのANDゲート96,97,98,99の残りの信号入力端子には、それぞれフリップフロップ92,93,94,95の出力データが反転して入力される。ANDゲート96,97,98,99の出力端子は、それぞれ上述した2入力ANDゲート88,89,90,91の残りの信号入力端子に入力される。
【0053】
ANDゲート88の出力端子は、4入力ORゲート101の信号入力端子の1つ、フリップフロップ92のデータ入力端子、RSフリップフロップ107のセット端子Sに接続されている。RSフリップフロップ107のデータ出力端子Qは、レジスタ70のデータ出力要求端子70a及び2入力ANDゲート103の一方の信号入力端子に接続されている。
【0054】
同様に、ANDゲート89の出力端子は、4入力ORゲート101の信号入力端子の1つ、フリップフロップ93のデータ入力端子、RSフリップフロップ108のセット端子Sに接続されている。RSフリップフロップ108のデータ出力端子Qは、レジスタ72のデータ出力要求端子72a及び2入力ANDゲート104の一方の信号入力端子に接続されている。
【0055】
ANDゲート90の出力端子は、4入力ORゲート101の信号入力端子の1つ、フリップフロップ94のデータ入力端子、RSフリップフロップ109のセット端子Sに接続されている。RSフリップフロップ109のデータ出力端子Qは、レジスタ74のデータ出力要求端子74a及び2入力ANDゲート105の一方の信号入力端子に接続されている。
【0056】
ANDゲート91の出力端子は、4入力ORゲート101の最後の信号入力端子、フリップフロップ95のデータ入力端子、RSフリップフロップ110のセット端子Sに接続されている。RSフリップフロップ110のデータ出力端子Qは、レジスタレジスタ76のデータ出力要求端子76a及び2入力ANDゲート106の一方の信号入力端子に接続されている。
【0057】
4入力ORゲート101の出力端子は、RSフリップフロップ102のリセット端子Rに接続されている。各ANDゲート103,104,105,106の出力端子を接続して伸びる配線L1は、RSフリップフロップ102のセット端子S、RSフリップフロップ107,108,109,110のリセット端子R及びカウンタ78のリセット端子Rに接続されている。
【0058】
比較器79,80,81,82の一方の信号入力端子には、カウンタ78のカウント値が入力され、もう一方の信号入力端子には、それぞれカウンタ71,73,75,77のカウント値が入力される。比較器79,80,81,82の信号出力端子は、上述したANDゲート103,104,105,106の残りの信号入力端子に接続されている。
【0059】
上記構成の調停回路52において、4つの処理完了信号C1〜C4の全てがLowレベルの時、ANDゲート88,89,90,91は、入力される処理完了信号C1,C2,C3,C4をそのまま通過させる。
【0060】
この状態において、4つの処理完了信号C1〜C4の内の1つ、例えば、信号C2がHighレベルに切り換った場合を考える。処理完了信号C2がHighレベルに切り換ることで、フリップフロップ93及びRSフリップフロップ108がセットされる。また、RSフリップフロップ102のセット端子Sに接続されているNORゲート100の出力がLowレベルに切り換る。また、ORゲート101の出力がHighレベルに切り換り、RSフリップフロップ102をリセットしてリレー回路83の動作を停止させる。フリップフロップ93がセットされることで、ANDゲート97の出力が常にLowに切り換る。これにより、ANDゲート89及びORゲート101の出力がHighからLowに切り換えられる。RSフリップフロップ108がセットされることで、レジスタ72のデータ出力要求端子72a及びANDゲート104の一方の信号入力端子の信号レベルがHighに切り換る。これにより、レジスタ72に格納されている第2グループ、即ち1LHのサブバンドについての符号データが出力される。カウンタ78は、レジスタ72から出力されるデータの量をカウントし、カウント値を各比較器79〜82に出力する。比較器80は、カウンタ73のカウント値と同じ量のデータの出力が完了した場合にHighレベルの信号を出力する。上述したように、ANDゲート104の一方の信号入力端子には、Highレベルの信号が入力されているため、比較器80の出力するHighレベルの信号は、カウンタ78のリセット端子R、及びRSフリップフロップ102のセット端子Sに入力される。これにより、カウンタ78はリセットされる。また、RSフリップフロップ102がセットされることで、リレー回路83が再び始動し、各信号出力端子83b,83c,83d,83eに順にパルス状の信号が出力される。
【0061】
引き続き、上記1LHのサブブロックの符号データをレジスタ72からメモリ58に出力している間に、処理完了信号C3,C4がHighレベルに切り換った場合について考察する。上述した処理によりフリップフロップ93がセットされているため、処理完了信号C2がHighレベルであってもANDゲート89の出力が再びHighに切り替わることはない。リレー回路83は、Highレベルのパルス状の信号を信号出力端子83d,83eの順で出力するため、処理完了信号C3の方が先にANDゲート90を通過し、ORゲート101の出力をHighレベルに切り換え、RSフリップフロップ102をリセットしてリレー回路83の動作を止める。これにより、処理完了信号C3がANDゲート90を通過すると同時に、処理完了信号C4がANDゲート91を通過することはない。ANDゲート90を通過した処理完了信号C3は、フリップフロップ94及びRSフリップフロップ109をセットする。フリップフロップ94がセットされることで、ANDゲート98の出力が常にLowに切り換る。これにより、ANDゲート90及びORゲート101の出力がHighからLowに切り換えられる。RSフリップフロップ109がセットされることで、レジスタ74のデータ出力要求端子74a及びANDゲート105の一方の信号入力端子の信号レベルがHighレベルに切り換る。これにより、レジスタ74に格納されている第3グループ、即ち1HLのサブバンドの符号データが出力される。カウンタ78は、レジスタ74から出力されるデータの量をカウントし、カウント値を各比較器79〜82に出力する。比較器81は、カウンタ75のカウント値と同じ量のデータの出力を完了した場合にHighレベルの信号を出力する。上述したように、ANDゲート105の一方の信号入力端子にはHighレベルの信号が入力されているため、比較器81の出力するHighレベルの信号は、カウンタ78のリセット端子R、及びRSフリップフロップ102のセット端子Sに入力される。これにより、カウンタ78はリセットされる。また、RSフリップフロップ102がセットされることで、リレー回路83が再び始動し、各信号出力端子83b,83c,83d,83eに順にパルス状の信号が出力される。
【0062】
以下、同様の調停動作が実行される。
【0063】
(6)処理結果
図6は、並列信号処理部5を使用せずに、量子化部4から出力される量子化後の各サブバンドのウェーブレット係数をそのままJPEG2000に準拠した係数モデリング及びMQ符号化処理した場合(従来技術を示す図11を参照)に処理に要する時間と、並列信号処理部5を用いて処理した場合に要する時間との比較を示す図である。図示ずる様に、調停回路52での調停処理及び各メモリからのデータ読み出しに要する時間を加算しても処理に要する全時間は短縮できることが確認された。即ち、並列信号処理部5を採用することで、データ単位で処理を行う色変換部2、離散ウェーブレット変換部3及び量子化部4において実行する処理に要する時間と、ビットデータ単位で処理を行う係数モデリング及びMQ符号化処理に要する時間との差を低減し得ることができることが確認された。
【0064】
(7)実施の形態2
上記実施の形態1に係る画像処理装置1では、並列信号処理部5に調停回路52を必要としたが、これらを用いずに装置を構成することも考えられる。実施の形態2の画像処理装置1’(図示せず)では、調停回路を使用しない並列信号処理部5’を採用する。並列信号処理部5’を用いる以外、その他の処理部の構成は画像処理装置1と同じである。以下、並列信号処理部5’についてのみ説明する。また当該説明においては、必要に応じて上記その他の処理部を画像処理装置1と同じ参照番号を付して使用する。
【0065】
図7は、並列信号処理部5’の構成を示す図である。並列信号処理部5’は、それぞれ同じ構成の第1信号処理部200、第2信号処理部201、及び第3信号処理部203で構成されている。各信号処理部には、初段の色変換部2においてY(輝度)、Cr(色差)、Cb(色差)の3つの信号に変換された画像データを離散ウェーブレット変換部3及び量子化部4で処理したデータがそれぞれ入力される。
【0066】
以下、第1信号処理部200の構成について説明する。係数メモリ203は、入力されるY(輝度)についての量子化後のウェーブレット係数のデータから、3LL,3LH,3HL,3HH,2LH,2HL,2HH(上記第1実施形態の場合と同様に第1グループという。)のサブバンドのウェーブレット係数を抽出し、後段の係数モデリング及びMQ符号化部207にメモリを介さずに直接出力する。同様に、係数メモリ204,205,206は、量子化後のウェーブレット係数のデータから、それぞれ、1LH(第2グループという。),1HL(第3グループという。),1HH(第3グループという。)のサブバンドのウェーブレット係数のデータを抽出し、後段の係数モデリング及びMQ符号化部208,209,210にメモリを介さずに直接出力する。即ち、係数メモリ203〜206は、入力されるデータを4つの係数モデリング及びMQ符号化処理部207〜210に分配するデータ分配部として機能する。
【0067】
係数モデリング及びMQ符号化部207,208,209,210では、それぞれJPEG2000の規定に従い、入力されたウェーブレット係数のデータをブロック単位でビットプレーンに分割し、各ビットプレーンについて3通りの符号化パスに分けてビットデータ単位で係数符号化し、更に、係数符号化後のデータをMQ符号化処理として2値算術符号化して符号化後のデータを対応する符号メモリ部211,212,213,214に出力する。上記係数モデリング及びMQ符号化部207〜210は、他の処理部に比べて処理データ量が多く、処理に時間を要する高負荷処理部(図中、括弧書きで高負荷処理部A1〜A4と記す。)であるといえる。
【0068】
符号メモリ部211〜214及び信号合成部215では、係数モデリング及びMQ符号化部207〜210から出力された符号データをそれぞれ別のレジスタに格納した後、量子化後のウェーブレット係数のデータを1つの係数モデリングおよびMQ符号化処部で処理した場合に得られる符号データと同じになる様に、上記レジスタから順に出力する。即ち、符号メモリ部211〜214及び信号合成部215は、各係数モデリング及びMQ符号化部207〜210で生成された符号データを、量子化後のウェーブレット係数を1つの係数モデリングおよびMQ符号化部で処理した場合に得られる符号データと同じになる様に、合成して出力するデータ合成部として機能する。なお、符号メモリ部211〜214及び信号合成部215については後に詳しく説明する。
【0069】
(8)係数メモリ
図8の(a)は、係数メモリ203の構成を示し、(b)は、係数メモリ204の構成を示す。係数メモリ205,206は、基本的に係数メモリ204と同じ構成であり、相違点については後に説明する。
【0070】
まず、係数メモリ203について説明する。図8の(a)に示すように、係数メモリ203に入力される量子化後のウェーブレット係数のデータは、レジスタ220の信号入力端子220a及びカウンタ221に入力される。NORゲート223の出力は、最初Highレベルであり、当該信号は、レジスタ220のイネーブル端子220eに入力されると共に、当該信号の反転信号がレジスタ220のデータ読み出し要求端子220cに入力される。レジスタ220のイネーブル端子220eに入力される信号がHighレベルであるため、レジスタ220は入力されるデータを最初から格納する。カウンタ221は、入力されるウェーブレット係数のデータ量をカウントし、カウント値を比較器222の一方の信号入力端子に入力する。比較器222の残りの信号入力端子には、第1グループ、即ち3LL,3LH,3HL,3HH,2LH,2HL,2HHのサブバンドのウェーブレット係数のデータ量を示す基準値ref1が入力されている。比較器222は、当該係数メモリ203に入力されたデータの量が第1グループのウェーブレット係数のデータ量になった時にHighレベルの信号を2入力NORゲート223の一方の信号入力端子に入力すると共に、当該信号をターミネーション信号T1として出力する。NORゲート223のもう一方の信号入力端子は、Lowレベルの信号が入力されており、比較器222から入力される信号のLowレベルからHighレベルに切り換りに応じて出力信号をHighレベルからLowレベルに切り換える。これにより、イネーブル端子220eに入力される信号がLowレベルに切り換り、レジスタ220へのデータの書き込みが停止する一方で、データ読み出し要求端子220cに入力される信号がHighレベルに切り換り、格納したデータを出力する。
【0071】
次に、係数メモリ204について説明する。係数メモリ204に入力されるウェーブレット係数のデータは、レジスタ224のデータ入力端子224aに入力されると共に、カウンタ225に入力される。以下に説明するようにANDゲート228の出力は、最初Lowレベルである。このため、第1グループのウェーブレット係数が入力されている間は、イネーブル端子224eにはLowレベルの信号が入力されているため、レジスタ224へのデータの書き込みは行われない。
【0072】
カウンタ225は、当該係数メモリ204に入力されるデータの量のカウントを行い、カウント値を比較器226,227に出力する。比較器226の一方の信号入力端子には、上記した第1グループのウェーブレット係数のデータ量を表す基準値ref1が入力されている。比較器226は、カウント値が基準値ref1になった時にHighレベルの信号を出力する。比較器226の出力は、2入力ANDゲート228に入力される。当該ANDゲート228の残りの信号入力端子には、比較器227の出力が反転して入力されている。比較器227の一方の信号入力端子には、上記基準値ref1に第2グループ、即ち、1LHのサブバンドのウェーブレット係数のデータ量を加算した基準値ref2が入力されている。比較器227は、カウント値が基準値ref2になった時にHighレベルの信号をターミネーション信号T2として出力すると共に、上記ANDゲート228に反転して出力する。
【0073】
上記構成において、ANDゲート228は、第2グループ、即ち1LHのサブバンドのウェーブレット係数のデータが入力されている間だけHighレベルの信号をレジスタ224のイネーブル端子224eに出力すると共に、当該信号の反転信号をデータ読み出し要求端子224cに出力する。即ち、係数メモリ204では、第2グループのウェーブレット係数が入力されている間だけレジスタ224へのデータの書き込みが行われ、当該データの書き込み完了後、出力端子224bから書き込んだデータの出力が行われる。
【0074】
係数メモリ205,206は、係数メモリ204と基本的な構成が同じである。係数メモリ205,206と係数メモリ204との相違点は、比較器226及び227に入力する基準値の値が違うことである。即ち、係数メモリ205の場合、比較器226の一方の信号入力端子には、上記基準値ref2が入力され、比較器227の一方の信号入力端子には、上記基準値ref2に第3グループ、即ち1HLのサブバンドのウェーブレット係数のデータ量を加えた基準値ref3が入力される。この場合において、比較器227は、入力されるウェーブレット係数のデータ量が基準値ref3を超えた場合に、Highレベルのタイミネーション信号T3を出力する。
【0075】
また、係数メモリ206では、比較器の一方の信号入力端子には、上記基準値ref3が入力され、比較器227の一方の信号入力端子には、上記基準値ref3に第4グループ、即ち1HHのサブバンドのウェーブレット係数のデータ量を加えた基準値ref4が入力される。この場合において、比較器227は、入力されるウェーブレット係数のデータ量が基準値ref4を超えた場合に、Highレベルのターミネーション信号T4を出力する。
【0076】
(9)符号メモリ及び信号合成部
図9は、符号メモリ211〜214及び信号合成部215の構成を示す図である。符号メモリ211,212,213の構成は同じであり、それぞれ入力される符号データの量をカウントしておき、当該カウント値をデータを出力するレジスタの切り換え用のデータとして使用する。JPEG2000形式に準拠する係数モデリング及びMQ符号化部207〜210において生成される符号データの量は一定でない。そこで、符号メモリ211,212,213では、JPEG2000の規定に従う係数モデリング及びMQ符号化部207,208,209から、符号データが出力される際に同時に出力されるバイトアウト信号に基づいて符号データの量をカウンタ231,233,235で計数する。
【0077】
以下、符号メモリ211について説明する。係数モデリング及びMQ符号化部207から符号メモリ211に入力された符号データは、レジスタ230のデータ入力端子221aに入力される。符号メモリ211には、また、係数モデリング及びMQ符号化部207から、符号データが出力される際に同時に出力されるバイトアウト信号が入力される。当該バイトアウト信号は、レジスタ230のイネーブル端子230e及びカウンタ231に入力される。即ち、レジスタ230は、バイトアウト信号が入力されている時に入力される符号データを格納する。
【0078】
同様に、係数メモリ212,213では、それぞれ係数モデリング及びMQ符号化部208,209から出力される符号データ及びバイトアウト信号が入力され、レジスタ232,234は、バイトアウト信号が入力されている時に入力される符号データを格納する。また、カウンタ233,235は、上記バイトアウト信号の数をカウントする。
【0079】
符号メモリ214は、格納したデータの量の情報を必要としないため、レジスタ236のみを備え、バイトアウト信号が入力されている時に入力される符号データを格納する。
【0080】
信号合成部215は、係数メモリ203〜206から出力されるターミネーション信号T1〜T4を係数モデリング及びMQ符号化部207〜210において必要な処理時間だけ遅延させた信号を、処理完了信号C1〜C4として取り扱い、これら処理完了信号C1〜C4が全てHighレベルに切り換った時に、全てのウェーブレット係数についての係数モデリングおよびMQ符号化処理が終了したと判断し、符号メモリ211,212,213,214の順に、レジスタに格納している符号データを読み出し、これを一連の符号データとして外部に出力する。
【0081】
より具体的には、各ターミネーション信号T1,T2,T3,T4を遅延回路241,242,243,244に入力して遅延させ、遅延させた信号を処理完了信号C1,C2,C3,C4として4入力ANDゲート245に入力する。各遅延回路241〜244は、上述するように、対応する係数モデリング及びMQ符号化部207〜210において必要な処理時間だけターミネーション信号T1〜T4を遅延させせる。全ての処理完了信号C1〜C4がHighレベルに切り換った場合、ANDゲート245は、Highレベルの信号をカウンタ237のリセット端子Rに出力すると共に、符号メモリ211のレジスタ230のデータ要求端子230cに出力する。当該信号を受けて、カウンタ237はリセットされ、レジスタ230は格納した第1グループ、即ち3LL,3LH,3HL,3HH,2LH,2HL,2HHのサブバンドについての符号データを出力する。当該レジスタ230の出力するデータ量はカウンタ237によりカウントされる。比較器238の一方の信号入力端子にはカウンタ237のカウンタ値が入力され、残りの信号入力端子には、カウンタ231のカウンタ値が入力される。
【0082】
比較器238は、レジスタ230から出力されたデータの量がカウンタ231の計数したカウント値と同じになった時にHighレベルの信号を、カウンタ237のリセット端子R、及び符号メモリ212のレジスタ232のデータ要求端子232cに出力する。当該信号を受けてカウンタ237はリセットされ、レジスタ232は格納した第2グループ、即ち1LHのサブバンドについての符号データを出力する。当該レジスタ232の出力するデータ量はカウンタ237によりカウントされる。比較器239の一方の信号入力端子にはカウンタ237のカウンタ値が入力され、残りの信号入力端子には、カウンタ233のカウンタ値が入力される。
【0083】
比較器239は、レジスタ232から出力されたデータの量がカウンタ233の計数したカウント値と同じになった時にHighレベルの信号を、カウンタ237のリセット端子R、及び符号メモリ213のレジスタ234のデータ要求端子234cに出力する。当該信号を受けてカウンタ237はリセットされ、レジスタ234は格納した第3グループ、即ち1HLのサブバンドについての符号データを出力する。当該レジスタ234の出力するデータ量はカウンタ237によりカウントされる。比較器240の一方の信号入力端子にはカウンタ237のカウンタ値が入力され、残りの信号入力端子には、カウンタ235のカウンタ値が入力される。
【0084】
比較器240は、レジスタ234から出力されたデータの量がカウンタ235の計数したカウント値と同じになった時にHighレベルの信号を、符号メモリ214のレジスタ236のデータ要求端子236cに出力する。当該信号を受けてレジスタ236は格納した第4グループ、即ち1HHのサブバンドについての符号データを出力する。
【0085】
信号合成部215の上記働きにより、4つのグループに分割されたサブバンド後との符号データが、第1〜第4グループの順に並ぶ一連の符号データに合成され、出力される。
【0086】
(10)処理結果
図9は、並列信号処理部5’を使用せずに、量子化部4から出力される量子化後の各サブバンドのウェーブレット係数をそのまま係数モデリング及びMQ符号化処理した場合(従来技術を示す図11を参照)に処理に要する時間と、並列信号処理部5’を用いて処理した場合に要する時間と、更に、上記実施の形態1に係る並列信号処理部5を用いて処理した場合に要する時間の比較を示す図である。図示ずるように、並列信号処理部5’を使用する方が、並列信号処理部5の備える調停回路52での調停処理に要する時間が不要であるため、より高速な処理を実現できることが確認された。即ち、並列信号処理部5’を採用することで、データ単位で処理を行う色変換部2、離散ウェーブレット変換部3及び量子化部4において実行する処理に要する時間と、ビットデータ単位で処理を行う係数モデリング及びMQ符号化処理に要する時間との差を一層低減することができることが確認された。
【0087】
【発明の効果】
本発明の第1の画像処理装置では、高負荷処理部を複数並列に設けたことにより、当該高負荷処理部の処理速度を上記複数倍に高めることができる。これにより、他の処理部との処理時間の整合をとることが容易になる。
【0088】
本発明の第2の画像処理装置は、入力されたデータを一旦メモリに格納し、当該メモリから各高負荷処理部へデータを分けて出力するデータ分配部の働きにより、複数並列に設けた各高付加処理部で処理するデータ量を低減し、高負荷処理に要する時間を数分の一に短縮することができる。これにより、他の処理部との処理時間の整合をとることが容易になる。
【0089】
本発明の第3の画像処理装置では、入力されたデータをデータ量に基づいて各高負荷処理部に直接分けるデータ分配部の働きにより、短時間で各高負荷処理部へのデータ分配が実現され、高負荷処理に要する時間を一層短くすることができる。これにより、他の処理部との処理時間の整合をとることが容易になる。
【0090】
本発明の第4の画像処理装置では、各高付加処理部で処理の終了したデータを、上記画像に関するデータを1つの高負荷処理部で処理した場合に得られるデータと同じになる様にメモリに格納し、全ての高負荷処理部での処理終了後にメモリからデータを出力するデータ合成部の働きにより、複数並列に設けた各高付加処理部で処理するデータの量を低減し、高負荷処理に要する時間を数分の一に短縮することができる。これにより、他の処理部との処理時間の整合をとることが容易になる。
【0091】
本発明の第5の画像処理装置は、上記第1乃至第3の画像処理装置であって、各高負荷処理部で処理の終了したデータ用の個別のレジスタを備え、全ての高負荷処理部での処理終了後、上記画像に関するデータを1つの高負荷処理部で処理した場合に得られるデータと同じになる様に上記各高負荷処理部に対応するレジスタに格納しているデータを出力するデータ合成部の働きにより、短時間で各高負荷処理部において処理したデータの合成が実現され、高負荷処理に要する時間を一層短くすることができる。これにより、他の処理部との処理時間の整合をとることが容易になる。
【0092】
本発明の第6の画像処理装置では、上記何れかの画像処理装置において、上記他の処理部がデータ単位で処理するのに対して、上記高負荷処理部が上記データを構成するビットデータの単位で処理を行うが、上述したように、複数並列に設けた高負荷処理部により処理の高速化を図ることができるため、他の処理部との処理時間の整合をとることが容易に行うことができる。
【0093】
本発明の第7の画像処理装置は、JPEG2000形式の画像処理装置であり、高負荷処理部である係数モデリング及びMQ符号化部を複数並列に設けたことにより、係数モデリング及びMQ符号化処理に要する時間を短縮することができる。これにより、他の処理部、例えば量子化部などとの処理時間の整合が取りやすくなる。
【0094】
本発明の第1の画像処理方法は、他の処理部に比べて処理に時間を要する高負荷処理を並列に実行することで、当該処理に要する時間を短縮することができる。これにより、他の処理部との処理時間の整合を取りやすくなる。
【0095】
本発明の第2の画像処理方法は、ビットデータ単位で処理を行う高負荷処理を複数並列して実行することで、当該処理に要する時間を短縮することができる。これにより、データ単位で処理を行う他の処理部との処理時間の整合が容易になる。
【0096】
本発明の第3の画像処理方法は、JPEG2000形式の画像処理装置であり、高負荷処理である係数モデリング及びMQ符号化処理を複数並列に実行することにより、係数モデリング及びMQ符号化処理に要する時間を短縮することができる。これにより、他の処理部、例えば量子化部などとの処理時間の整合が取りやすくなる。
【図面の簡単な説明】
【図1】画像処理装置の構成を示す図である。
【図2】並列信号処理部の構成を示す図である。
【図3】係数メモリの構成を示す図である。
【図4】符号メモリ部の構成を示す図である。
【図5】調停回路の構成を示す図である。
【図6】従来の画像処理装置との処理速度の比較結果を示す図である。
【図7】実施の形態2に係る画像処理装置の並列信号処理部の構成を示す図である。
【図8】各係数メモリの構成を示す図である。
【図9】各符号メモリ及び信号合成部の構成を示す図である。
【図10】従来の画像処理装置との処理速度の比較結果を示す図である。
【図11】従来のJPEG2000形式の画像処理装置の構成を示す図である。
【符号の説明】
1 画像処理装置、2 色変換部、3 離散ウェーブレット変換部、4 量子化部、5 並列信号処理部、6 符号形成部、10 第1信号処理部、11 第2信号処理部、12 第3信号処理部、13 係数メモリ、18 符号メモリ部、20 メモリ、21 カウンタ、22,24,26,28比較器、23,25,27,29 レジスタ、30 加算器、31 セレクタ、40,43,46,49 レジスタ、41,44,47,50 カウンタ、42,45,48,51 アドレス生成部、52 調停回路、53,54,55,56 遅延回路、58 メモリ、70,72,74,76 レジスタ、71,73,75,77 カウンタ。

Claims (10)

  1. 画像に関するデータを処理する複数の処理部の一部に、他の処理部に比べて時間を要する処理を実行する高負荷処理部を備える画像処理装置において、
    上記高負荷処理部を複数並列に用意し、上記画像に関するデータを上記複数の高負荷処理部に分配するデータ分配部と、上記複数の高負荷処理部で処理の終了したデータを、上記画像に関するデータを1つの高負荷処理部で処理した場合に得られるデータと同じにして出力するデータ合成部とを備えることを特徴とする画像処理装置。
  2. 請求項1に記載の画像処理装置において、
    上記データ分配部は、入力されたデータを一旦メモリに格納し、当該メモリから各高負荷処理部へデータを分けて出力する画像処理装置。
  3. 請求項1に記載の画像処理装置において、
    上記データ分配部は、入力されたデータをデータ量に基づいて各高負荷処理部に直接分けて出力する画像処理装置。
  4. 請求項1乃至3の何れかに記載の画像処理装置において、
    上記データ合成部は、各高付加処理部で処理の終了したデータを、上記画像に関するデータを1つの高負荷処理部で処理した場合に得られるデータと同じになる様にメモリに格納し、全ての高負荷処理部での処理終了後にメモリからデータを出力する画像処理装置。
  5. 請求項1乃至3の何れかに記載の画像処理装置において、
    上記データ合成部は、各高負荷処理部で処理の終了したデータを記憶する個別の記憶手段を備え、全ての高負荷処理部での処理終了後、上記画像に関するデータを1つの高負荷処理部で処理した場合に得られるデータと同じになる様に上記各高負荷処理部に対応する記憶手段に記憶しているデータを出力する画像処理装置。
  6. 請求項1乃至請求項5の何れかに記載の画像処理装置において、
    上記他の処理部がデータ単位で処理するのに対して、上記高負荷処理部が上記データを構成するビットデータの単位で処理を行う画像処理装置。
  7. 請求項1乃至請求項6の何れかに記載の画像処理装置はJPEG2000形式の画像処理装置であって、
    上記高負荷処理部は、係数モデリング及びMQ符号化処理を実行する処理部である画像処理装置。
  8. 画像に関するデータについて行う複数の処理の一部に、他の処理に比べて時間を要する高負荷処理を含む画像処理方法において、
    上記画像に関するデータを複数に分割し、分割した各データに対して上記高負荷処理を並列に実行し、実行後のデータを、上記画像に関するデータを1つの高負荷処理部で処理した場合に得られるデータと同じにして出力することを特徴とする画像処理方法。
  9. 請求項8に記載の画像処理方法において、
    他の処理がデータ単位で処理を行うのに対して、上記高負荷処理は上記データを構成するビットデータを単位として処理を行う画像処理方法。
  10. 請求項8又は請求項9に記載の画像処理方法は、JPEG2000形式に従う画像処理方法であって、
    上記高負荷処理は、係数モデリング及びMQ符号化処理である画像処理方法。
JP2002189475A 2002-06-28 2002-06-28 画像処理装置 Expired - Fee Related JP4139633B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2002189475A JP4139633B2 (ja) 2002-06-28 2002-06-28 画像処理装置
EP03761771A EP1518209A4 (en) 2002-06-28 2003-06-20 APPARATUS AND METHOD FOR PROCESSING IMAGES
PCT/JP2003/007881 WO2004003843A1 (en) 2002-06-28 2003-06-20 Image processing apparatus and image processing method
US10/501,664 US7406205B2 (en) 2002-06-28 2003-06-20 Image processing apparatus and image processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002189475A JP4139633B2 (ja) 2002-06-28 2002-06-28 画像処理装置

Publications (2)

Publication Number Publication Date
JP2004030515A true JP2004030515A (ja) 2004-01-29
JP4139633B2 JP4139633B2 (ja) 2008-08-27

Family

ID=29996849

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002189475A Expired - Fee Related JP4139633B2 (ja) 2002-06-28 2002-06-28 画像処理装置

Country Status (4)

Country Link
US (1) US7406205B2 (ja)
EP (1) EP1518209A4 (ja)
JP (1) JP4139633B2 (ja)
WO (1) WO2004003843A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8098947B2 (en) 2007-05-17 2012-01-17 Sony Corporation Method and apparatus for processing image data by rearranging wavelet transform data

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2238184B8 (es) * 2004-02-09 2014-06-05 Consejo Superior De Investigaciones Cientificas Procedimiento y dispositivo para medir la potencia disipada por la reaccion de hidruracion en tubos y vainas tubulares y la correspondiente variacion de resistencia electrica.
JP2008228208A (ja) * 2007-03-15 2008-09-25 Ricoh Co Ltd 画像符号化方法、画像符号化装置、画像符号化回路、情報記録媒体、及び、コンピュータプログラム
JP5181816B2 (ja) * 2008-05-12 2013-04-10 株式会社リコー 画像処理装置、画像処理方法、コンピュータプログラム、及び、情報記録媒体
EP2697671A2 (en) 2011-04-15 2014-02-19 Ariel-University Research and Development Company, Ltd Passive millimeter-wave detector
EP3036905A4 (en) * 2013-10-17 2017-03-08 MediaTek Inc. Data processing apparatus for transmitting/receiving compressed pixel data groups of picture and indication information of pixel data grouping setting and related data processing method

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61125275A (ja) 1984-11-20 1986-06-12 Mitsubishi Electric Corp 画像信号処理装置
JPH02224468A (ja) 1989-02-27 1990-09-06 Mitsubishi Electric Corp 画像符号化システム
US5130797A (en) * 1989-02-27 1992-07-14 Mitsubishi Denki Kabushiki Kaisha Digital signal processing system for parallel processing of subsampled data
JPH03177961A (ja) 1989-12-07 1991-08-01 Mitsubishi Electric Corp マルチプロセッサ制御装置
JPH03250995A (ja) 1990-02-28 1991-11-08 Nec Corp 画像信号のdpcm符号化装置
JPH04245865A (ja) 1991-01-31 1992-09-02 Toshiba Corp 画像処理装置
JP2000217003A (ja) 1999-01-20 2000-08-04 Ricoh Co Ltd 符号化装置および復号化装置
JP4686854B2 (ja) 2000-12-08 2011-05-25 株式会社ニコン 画像符号化装置、電子カメラ、および画像符号化プログラムの記録媒体

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8098947B2 (en) 2007-05-17 2012-01-17 Sony Corporation Method and apparatus for processing image data by rearranging wavelet transform data

Also Published As

Publication number Publication date
JP4139633B2 (ja) 2008-08-27
US7406205B2 (en) 2008-07-29
EP1518209A1 (en) 2005-03-30
WO2004003843A1 (en) 2004-01-08
US20050117808A1 (en) 2005-06-02
EP1518209A4 (en) 2010-02-24

Similar Documents

Publication Publication Date Title
NL1001317C2 (nl) Werkwijze en inrichting voor het coderen en decoderen van data.
JP2001094437A (ja) Mpeg信号復号方法及び装置
JP4443165B2 (ja) 画像圧縮装置及び画像圧縮方法
JP4139633B2 (ja) 画像処理装置
DE102016109869A1 (de) Eingebetteter Logistikanalysator und integrierte Schaltung mit demselben
CN114968893B (zh) 基于时间戳的PCIe报文队列调度方法、系统及设备
US6792150B1 (en) Method, apparatus and computer program product for image data compression and decompression capable of high-speed processing
US5764557A (en) Product-sum calculation apparatus, product-sum calculating unit integrated circuit apparatus, and cumulative adder suitable for processing image data
US7512281B2 (en) Image processing apparatus that can generate coded data applicable to progressive reproduction
JP3860081B2 (ja) 画像処理装置及び画像処理方法
JP2003298846A (ja) 2次元サブバンド符号化装置
US20020069393A1 (en) Multithreaded data / context flow processing architecture
US5978508A (en) Two-dimensional inverse discrete cosine transformation circuit for MPEG2 video decoder
EP1607886A2 (en) Design method and program for a bus control portion in a semiconductor integrated device
JPS62114358A (ja) 通信プロトコル合成方式
US8451022B2 (en) Integrated circuit and input data controlling method for reconfigurable circuit
JPH0844773A (ja) 自動高位合成方法
CN109657323B (zh) 一种小波重构加速电路
Varma et al. A fast JPEG2000 encoder that preserves coding efficiency: the split arithmetic encoder
US8028107B2 (en) Apparatus and method for serial to parallel in an I/O circuit
JP4115142B2 (ja) 画像処理装置及び画像処理方法
Hayashi et al. Design framework for JPEG2000 encoding system architecture
CN111567042B (zh) 小波逆变换电路和方法
Liu et al. An ASIC implementation of JPEG2000 codec
Mujahid et al. High speed JPEG coder based on modularized and pipelined architecture with distributed control

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050621

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080212

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080411

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: 20080513

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: 20080609

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: 20110613

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110613

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120613

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130613

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees