JP3561655B2 - エンコーダ - Google Patents

エンコーダ Download PDF

Info

Publication number
JP3561655B2
JP3561655B2 JP07820699A JP7820699A JP3561655B2 JP 3561655 B2 JP3561655 B2 JP 3561655B2 JP 07820699 A JP07820699 A JP 07820699A JP 7820699 A JP7820699 A JP 7820699A JP 3561655 B2 JP3561655 B2 JP 3561655B2
Authority
JP
Japan
Prior art keywords
image data
circuit
huffman
quantization
cosine transform
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
JP07820699A
Other languages
English (en)
Other versions
JP2000278687A (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.)
Sanyo Electric Co Ltd
Original Assignee
Sanyo Electric 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 Sanyo Electric Co Ltd filed Critical Sanyo Electric Co Ltd
Priority to JP07820699A priority Critical patent/JP3561655B2/ja
Priority to US09/532,816 priority patent/US6643402B1/en
Priority to KR1020000014500A priority patent/KR20000062982A/ko
Priority to EP00106253A priority patent/EP1039759A2/en
Priority to CN00108319A priority patent/CN1273491A/zh
Publication of JP2000278687A publication Critical patent/JP2000278687A/ja
Application granted granted Critical
Publication of JP3561655B2 publication Critical patent/JP3561655B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Television Signal Processing For Recording (AREA)

Description

【0001】
【発明の属する技術分野】
本発明はエンコーダに係り、詳しくは、MPEG(Moving Picture Expert Group)ビデオエンコーダまたはJPEG(Joint Photographic Codibg Expert Group)エンコーダに関するものである。
【0002】
【従来の技術】
近年、19世紀以来の銀塩写真技術を使用したカメラに代わって、電子スチルカメラの需要がますます拡大している。
電子スチルカメラにおいては、画像データを伝送および蓄積する際に、画像データを圧縮してデータ量を減らすことにより効率的に処理するために、データの圧縮・伸張技術として「JPEG」方式が用いられている。このJPEG方式は、ISO(International Organization for Standardization)/IEC(Intarnational Electrotechnical Commission)傘下のJPEG委員会(ISO/IEC 10918−1)によって標準化されている。
【0003】
JPEG方式はJPEGアルゴリズムとも呼ばれ、その技術の核となるのが離散コサイン変換(DCT;Discrete Cosine Transform)である。そして、JPEG方式は、電子スチルカメラだけでなく、CD−ROM(CD−Read Only Memory)システム等の画像データの処理にも広く利用されている。
【0004】
また、JPEG方式によれば動画像データの圧縮・伸張を行うことも可能であるため、JPEG方式を用いた電子スチルカメラには動画像の撮影機能を備えたものもある。このようにJPEG方式を用いて動画像データの圧縮・伸張を行う技術は、M−JPEG(Motion−JPEG)と呼ばれる。
【0005】
ところで、マルチメディアで扱われる情報は、膨大な量で且つ多種多様であり、これらの情報を高速に処理することがマルチメディアの実用化を図る上で必要となってくる。情報を高速に処理するためには、データの圧縮・伸長技術が不可欠となる。そのようなデータの圧縮・伸長技術としては「MPEG」方式があげられる。このMPEG方式は、ISO/IEC傘下のMPEG委員会(ISO/IEC JTC1/SC29/WG11)によって標準化されている。MPEG方式は3つのパートから構成されている。パート1の「MPEGシステムパート」(ISO/IEC IS 11172 Part1:Systems)では、動画像データ(ビデオデータ)と音声データ(オーディオデータ)の多重化構造(マルチプレクス・ストラクチャ)および同期方式が規定されている。パート2の「MPEGビデオパート」(ISO/IEC IS 11172 Part2:Video)では、動画像データの高能率符号化方式および動画像データのフォーマットが規定されている。パート3の「MPEGオーディオパート」(ISO/IEC IS 11172 Part3:Audio)では、音声データの高能率符号化方式および音声データのフォーマットが規定されている。
【0006】
MPEGビデオパートで用いられる技術の核となるのが、動き補償付予測(MC;Motion Compensated prediction)とDCTである。MCとDCTを併用した符号化技術は、ハイブリッド符号化技術と呼ばれる。つまり、MPEG方式は、JPEG方式にMCを組み合わせた技術であるといえる。
【0007】
MPEG方式は、各種蓄積メディア(ビデオCD(Compact Disc)、CD−ROM、DVD、ビデオテープ、不揮発性半導体メモリを用いたメモリカード、等)、
LAN(Local Area Network)等の各種通信メディア、各種放送メディア(地上波放送、衛星放送、CATV(Community Antenna Television))を含む伝達メディア全般に対応している。
【0008】
図9は、JPEG方式を用いた従来の電子スチルカメラ101のブロック回路図である。
電子スチルカメラ101は、JPEGコア回路102、撮像デバイス103、信号処理回路104、フレームバッファ105、ディスプレイ106、表示回路107、メモリカード108、入出力回路109、データバス110,111から構成されている。
【0009】
JPEGコア回路102は、DCT回路121、量子化回路122、ハフマン符号化回路123、符号量カウンタ124、ハフマン復号化回路131、逆量子化回路132、逆DCT(IDCT;Inverse DCT)回路133、RAM(Random Access Memory)134,135、制御コア回路136から構成されている。
【0010】
制御コア回路136は、電子スチルカメラ101の各回路102〜111を制御する。
撮像デバイス103はCCD(Charge Coupled Device)等から構成され、被写体画像を撮影して出力信号を生成する。信号処理回路104は、撮像デバイス103の出力信号から1画面ずつの画像データを生成する。信号処理回路104の生成した1画面ずつの画像データは、データバス110を介して、フレームバッファ105または表示回路107の少なくともいずれかへ転送される。
【0011】
表示回路107は、データバス110を介して転送されてきた1画面ずつの画像データから画像信号を生成する。ディスプレイ106は、表示回路107の生成した画像信号を被写体画像として表示する。
フレームバッファ105は書き換え可能な半導体メモリ(例えば、SDRAM(Synchronous Dynamic RAM)、DRAM、ラムバスDRAM、等)から構成され、データバス110を介して転送されてきた1画面(1フレーム)ずつの画像データを書き込んで記憶すると共に、記憶した画像データを1画面ずつ読み出す。フレームバッファ105から読み出された1画面ずつの画像データは、データバス110を介してJPEGコア回路102のDCT回路121へ転送される。
【0012】
JPEGコア回路102においては、1画面の画像データがJPEG方式の規格によって定められた複数のマクロブロックに分割され、その各ブロック毎に圧縮・伸張処理が行われる。
ここで、DCT回路121,量子化回路122,ハフマン符号化回路123はJPEGエンコーダを構成し、画像データの圧縮処理を行う。また、ハフマン復号化回路131,逆量子化回路132,逆DCT回路133はJPEGデコーダを構成し、画像データの伸張処理を行う。
【0013】
DCT回路121は、フレームバッファ105から読み出された1画面ずつの画像データに対して、1画面の画像データを1ブロック単位で取り込み、その画像データに対して2次元の離散コサイン変換(DCT)を行ってDCT係数を生成する。
【0014】
量子化回路122は、DCT回路121から供給されたDCT係数を、RAM134に記憶された量子化テーブルに格納されている量子化しきい値を参照して量子化する。
ハフマン符号化回路123は、量子化回路122にて量子化されたDCT係数を、RAM135に記憶されたハフマンテーブルに格納されているハフマン符号を参照して可変長符号化することにより、圧縮された画像データ(以下、圧縮画像データという)を1画面ずつ生成する。
【0015】
符号量カウンタ124は、ハフマン符号化回路123の生成した1画面ずつの圧縮画像データの符号量をカウントする。
ハフマン符号化回路123の生成した圧縮画像データは、データバス111を介して、メモリカード108または入出力回路109の少なくともいずれかへ転送される。
【0016】
メモリカード108は電子スチルカメラ101に対して着脱可能に装着されており、メモリカード108内にはフラッシュメモリ108aが設けられている。フラッシュメモリ108aは、データバス111を介して転送されてきた1画面ずつの圧縮画像データを書き込んで記憶すると共に、記憶した圧縮画像データを1画面ずつ読み出してデータバス111へ転送する。
【0017】
入出力回路109は、データバス111を介して転送されてきた1画面ずつの圧縮画像データを、電子スチルカメラ101に接続された外部機器(例えば、外部ディスプレイ、パーソナルコンピュータ、プリンタ、等)へ出力すると共に、当該外部機器から入力された圧縮画像データをデータバス111へ転送する。
【0018】
メモリカード108から読み出された圧縮画像データまたは入出力回路109を介して入力された圧縮画像データは、データバス111を介してJPEGコア回路102のハフマン復号化回路131へ転送される。
ハフマン復号化回路131は、データバス111を介して転送されてきた1画面ずつの圧縮画像データを、RAM135に記憶されたハフマンテーブルに格納されているハフマン符号を参照して可変長復号化することにより、伸張された画像データ(以下、伸張画像データという)を1画面ずつ生成する。
【0019】
逆量子化回路132は、ハフマン復号化回路131の生成した1画面ずつの伸張画像データを、RAM134に記憶された量子化テーブルに格納されている量子化しきい値を参照して逆量子化することにより、DCT係数を生成する。
逆DCT回路133は、逆量子化回路132の生成したDCT係数に対して2次元の離散コサイン逆変換(IDCT)を行う。
【0020】
逆DCT回路133にて離散コサイン逆変換が行われた1画面ずつの伸張画像データは、データバス110を介してフレームバッファ105へ転送される。そして、フレームバッファ105は、逆DCT回路133からデータバス110を介して転送されてきた1画面ずつの画像データを書き込んで記憶する。また、表示回路107は、逆DCT回路133からデータバス110を介して転送されてきた1画面ずつの画像データから画像信号を生成し、その画像信号はディスプレイ106上で被写体画像として表示される。
【0021】
ここで、RAM134に記憶された量子化テーブルに格納された量子化しきい値は、圧縮画像データの圧縮率や、圧縮画像データを伸張した再生画像(ディスプレイ106の表示画像、外部機器にてメモリカード108から読み出されて再生された再生画像、入出力回路109に接続された外部機器にて再生された再生画像)の画質を決定するものである。また、RAM135に記憶されたハフマンテーブルに格納されたハフマン符号は、量子化されたDCT係数または伸張画像データに対して予め予測される出現頻度に応じて割り当てられる可変長の符号であり、出現頻度の高いものに対して短く割り当てられる。
【0022】
ところで、ハフマン符号化回路123の生成する1画面ずつの圧縮画像データの符号量は、電子スチルカメラ101に予め設定されている画質モードに応じて、その最大値が規定されている。これは、メモリカード108に記憶可能な画面の数(写真の枚数)が電子スチルカメラ101の画質モードによって定められているためであり、例えば、メモリカード108に記憶可能な写真の枚数は高画質モードでは数枚、低画質モードでは十数枚といった具合に定められている。つまり、高画質モードでは、圧縮画像データの圧縮率が低く設定されているため、1画面の圧縮画像データの符号量が大きくなり、メモリカード108に記憶可能な写真の枚数が少なくなる。また、低画質モードでは、圧縮画像データの圧縮率が高く設定されているため、1画面の圧縮画像データの符号量が少なくなり、メモリカード108に記憶可能な写真の枚数が多くなる。
【0023】
従って、ハフマン符号化回路123の生成した1画面ずつの圧縮画像データの符号量が規定された最大値以下になるように、量子化しきい値およびハフマン符号を最適化する必要がある。ここで、フレームバッファ105から読み出された1画面ずつの画像データ(すなわち、信号処理回路104の生成した1画面ずつの画像データ)のデータ量は、撮像デバイス103の撮影した被写体画像に関係なく一定である。そのため、ハフマン符号化回路123の生成した圧縮画像データの圧縮率は、その圧縮画像データの符号量に対して一義的に算出され、当該符号量が大きいほど圧縮率は低くなる。つまり、圧縮画像データの符号量を規定された最大値以下にするとは、圧縮画像データの圧縮率を規定された最小値以上にすることに他ならない。
【0024】
しかし、圧縮画像データの圧縮率(符号量)は、量子化しきい値およびハフマン符号と被写体画像との組み合わせにより大きく左右される。そのため、量子化しきい値およびハフマン符号が同じであっても、異なる被写体画像を撮影した場合には、圧縮画像データの圧縮率に大きな差が生じる。例えば、被写体画像が大勢の群衆のような複雑で細かい画像の場合には圧縮率を高くして符号量を低く抑える必要があり、被写体画像が雲一つない快晴の大空のような単純な画像の場合には圧縮率を低くして符号量を高くする必要がある。従って、圧縮画像データの圧縮率を求めるには、各回路121〜123による前記圧縮処理を行って実際に圧縮画像データを生成しなければならず、前記圧縮処理を行う前に圧縮率を予測するのは困難である。
【0025】
そのため、従来の電子スチルカメラ101では、まず、量子化しきい値およびハフマン符号を規定値に設定して、各回路121〜123による前記圧縮処理を行って圧縮画像データを生成し、その符号量を符号量カウンタ124にてカウントする。その結果、圧縮画像データの符号量が規定された最大値以下の場合には、設定した量子化しきい値およびハフマン符号が最適化されているといえるため、その設定値に量子化しきい値およびハフマン符号を決定する。
【0026】
そして、決定した量子化しきい値およびハフマン符号に基づいて作成された圧縮画像データが、データバス111を介してメモリカード108または入出力回路109へ転送される。
しかし、圧縮画像データの符号量が規定された最大値を越えている場合には、量子化しきい値およびハフマン符号を前記規定値よりも少し大きな値に設定し直して、各回路121〜123による前記圧縮処理を行って圧縮画像データを再び生成し、その符号量を符号量カウンタ124にてカウントする。その結果、圧縮画像データの符号量が最大値以下になった場合には、設定し直した量子化しきい値およびハフマン符号が最適化されているといえるため、その設定し直した値に量子化しきい値およびハフマン符号を決定する。
【0027】
しかし、これでも圧縮画像データの符号量が最大値を越えている場合には、量子化しきい値およびハフマン符号をさらに大きな値に設定し直して、前記圧縮処理を再度行う。
このように、従来の電子スチルカメラ101では、圧縮画像データの符号量が規定された最大値以下になるように(すなわち、圧縮画像データの圧縮率が規定された最小値以上になるように)、量子化しきい値およびハフマン符号を最適化するために、各回路121〜123による前記圧縮処理を繰り返し行うようにしている。そのため、量子化しきい値およびハフマン符号を決定するにはある程度の時間を要する。
【0028】
【発明が解決しようとする課題】
従来の電子スチルカメラ101には以下の問題があった。
▲1▼量子化しきい値およびハフマン符号を最適化するために、各回路121〜123による前記圧縮処理を繰り返し行うことから、その圧縮処理に要する時間分だけ、撮像デバイス103にて撮影を行ってからメモりカード108に圧縮画像データが記憶されるまでに要する時間(以下、記録待ち時間という)が長くなってしまう。
【0029】
この問題を回避するには、前記記録待ち時間を予め短く設定しておくことが考えられるが、その場合は、各回路121〜123による前記圧縮処理を繰り返し行う回数が少なくなるため、量子化しきい値およびハフマン符号を最適化できなくなり、圧縮画像データを伸張した再生画像の画質の低下を招くおそれがある。
【0030】
▲2▼各回路121〜123による前記圧縮処理を行う度に、フレームバッファ105から1画面ずつの画像データを読み出し、その画像データをデータバス110を介してDCT回路121へ転送しなければならない。つまり、各回路121〜123による前記圧縮処理を行う度に、データバス110を介してフレームバッファ105に読出アクセスを行わなければならない。そのため、フレームバッファ105に対するアクセスが混雑し、上記▲1▼の問題と相まって前記記録待ち時間がさらに長くなってしまう。また、フレームバッファ105に対するアクセスが混雑すると、信号処理回路104および表示回路107からフレームバッファ105に対して行われるアクセスの性能が低下することになる。
【0031】
この問題を回避するには、フレームバッファ105およびデータバス110のバス幅を大きくしたり高速化すればよいが、そのようなフレームバッファ105は高価である上に消費電力も大きいため、電子スチルカメラ101のコストアップならびに消費電力の増大を招くことになる。特に、電子スチルカメラ101は電池で駆動されるため、消費電力の増大は大きな問題となる。
【0032】
ところで、銀塩写真技術を使用したカメラでは撮影後ほぼ瞬時にフィルムに画像が記録されるため次々に連写することができる。それに対して、電子スチルカメラ101では前記記録待ち時間を要するため次々に連写することができず、ユーザーにストレスを感じさせていた。このストレスを払拭するために、近年、前記記録待ち時間を従来より以上に短縮することが求められている。
【0033】
尚、上記▲1▼▲2▼の問題は、JPEGエンコーダだけでなく、MPEGエンコーダにおいても同様に起こるものである。つまり、前記したように、MPEG方式はJPEG方式にMCを組み合わせた技術であり、MPEGエンコーダはJPEGエンコーダ(DCT回路121,量子化回路122,ハフマン符号化回路123)にMC回路を付加して構成されるため、JPEGエンコーダの上記▲1▼▲2▼の問題はMPEGエンコーダにも当てはまることになる。
【0034】
本発明は上記問題点を解決するためになされたものであって、その目的は、符号化された圧縮後の画像データの符号量を所定値にした上で、画像データの高速かつ高精度な符号化を実現することにある。
【0035】
【課題を解決するための手段】
かかる目的を達成するためになされた請求項1に記載の発明は、1画面の画像を構成する画像データに対して2次元離散コサイン変換を行い、離散コサイン変換係数を生成する離散コサイン変換回路と、前記離散コサイン変換回路から供給された離散コサイン変換係数を、予め設定された量子化テーブルに格納されている量子化しきい値を参照して量子化する量子化回路と、前記量子化回路にて量子化された離散コサイン変換係数を、予め設定されたハフマンテーブルに格納されているハフマン符号を参照して可変長符号化することにより、圧縮画像データを生成するハフマン符号化回路と、前記ハフマン符号化回路の生成した圧縮画像データの符号量をカウントする符号量カウンタとを備え、前記符号量カウンタのカウントした圧縮画像データの符号量が所定値以下になるまで、前記量子化しきい値およびハフマン符号から成るパラメータの設定を変更しながら、前記離散コサイン変換回路と前記量子化回路と前記ハフマン符号化回路による圧縮処理を繰り返すことにより、圧縮画像データの符号量を所定値以下にするのに最適な前記パラメータを決定するエンコーダであって、前記1画面の画像を複数のブロックに分割し、そのブロックの内から選択するブロック数を変更して構成された複数のブロック群のそれぞれの画像データに対して前記圧縮処理を繰り返すことにより、前記ブロック群毎に前記符号量が所定値以下になるパラメータを設定し、この設定したパラメータによる前記符号量間の関係に基づいて前記最適なパラメータを決定するパラメータ決定手段を備え、前記パラメータ決定手段は、前記ブロックの内から所定のブロックを選択して構成された前記第1ブロック群の画像データに対して、前記圧縮処理を繰り返すことにより第1圧縮画像データを生成すると共に、第1ブロック群の画像データに対して最適化された前記圧縮パラメータを求め、前記第1ブロック群よりも多数のブロックを選択して構成された第2ブロック群の画像データに対して、前記圧縮処理を行うことにより第2圧縮画像データを生成すると共に、第2ブロック群の画像データに対して最適化された前記圧縮パラメータを求め、第1ブロック群のブロック数と第2ブロック群のブロック数とを同一としたときに換算される前記第1圧縮画像データと第2圧縮画像データの符号量の差である圧縮誤差を算出し、その圧縮誤差が許容値以内の場合は、第1ブロック群の画像データに対して最適化された圧縮パラメータを、前記最適な圧縮パラメータとして決定することをその要旨とする。
【0036】
また、請求項2に記載の発明のように、前記圧縮誤差が許容値以内の場合に、第1ブロック群の画像データに対して最適化された圧縮パラメータに代えて、第2ブロック群の画像データに対して最適化された圧縮パラメータを前記最適な圧縮パラメータとして決定するようにしても良い。
【0037】
従って、本発明によれば、選択したブロックの画像データに対して前記圧縮処理を繰り返すために、1画面の画像の全ての画像データに対して前記圧縮処理を繰り返す場合に比べて、前記パラメータを最適化した上で前記圧縮処理に要する時間を短縮することが可能になることから、画像データの高速かつ高精度な符号化を実現することができる。
【0038】
また、請求項3に記載の発明のように、請求項1または請求項2に記載のエンコーダにおいて、前記1画面の画像データを複数の領域に分割し、その各領域を前記複数のブロックに分割し、各領域のブロックの内から選択するブロック数を各領域毎に変更しながら所定のブロックを選択し、その選択したブロックの画像データに対して前記圧縮処理を繰り返すことにより、各領域毎に前記最適なパラメータを決定するようにしてもよい。
【0039】
従って、本発明によれば、各領域のブロックの内から選択するブロック数を各領域毎に変更しながら所定のブロックを選択し、その選択したブロックの画像データに対して前記圧縮処理を繰り返すために、1画面の画像を複数の領域に分割しない場合に比べて、前記パラメータを最適化した上で前記圧縮処理に要する時間を短縮することが可能になることから、画像データの高速かつ高精度な符号化を実現することができる。
【0040】
請求項4に記載の発明は、1画面の画像を構成する画像データに対して2次元の離散コサイン変換を行い、離散コサイン変換係数を生成する離散コサイン変換回路と、前記離散コサイン変換回路から供給された離散コサイン変換係数を、予め設定された量子化テーブルに格納されている量子化しきい値を参照して量子化する量子化回路と、前記量子化回路にて量子化された離散コサイン変換係数を、予め設定されたハフマンテーブルに格納されているハフマン符号を参照して可変長符号化することにより、圧縮画像データを生成するハフマン符号化回路と、前記ハフマン符号化回路の生成した圧縮画像データの符号量をカウントする符号量カウンタと、前記ハフマン符号化回路の生成した圧縮画像データを、予め設定されたハフマンテーブルに格納されているハフマン符号を参照して可変長復号化することにより伸張画像データを生成するハフマン復号化回路と、前記ハフマン復号化回路の生成した伸張画像データを、予め設定された量子化テーブルに格納されている量子化しきい値を参照して逆量子化することにより離散コサイン変換係数を生成し、その離散コサイン変換係数を前記量子化回路へ戻す逆量子化回路とを備えたエンコーダであって、前記量子化回路は、前記逆量子化回路から戻された離散コサイン変換係数を予め設定された量子化テーブルに格納されている量子化しきい値を参照して量子化し、前記符号量カウンタのカウントした圧縮画像データの符号量が所定値以下になるまで、前記量子化しきい値およびハフマン符号から成るパラメータの設定を変更しながら、前記量子化回路と前記ハフマン符号化回路と前記ハフマン復号化回路と前記逆量子化回路による処理を繰り返すことにより、圧縮画像データの符号量を所定値以下にするのに最適な前記パラメータを決定することをその要旨とする。
【0041】
従って、本発明によれば、1画面の画像の画像データを離散コサイン変換回路に一旦転送した後は、前記パラメータを決定する際に、離散コサイン変換回路を使用しないため、前記処理を繰り返す度に1画面の画像の画像データを離散コサイン変換回路に転送する場合に比べて、前記パラメータを最適化した上で当該転送に要する時間を短縮することが可能になることから、画像データの高速かつ高精度な符号化を実現することができる。
【0042】
請求項5に記載の発明は、1画面の画像を構成する画像データに対して2次元の離散コサイン変換を行い、離散コサイン変換係数を生成する離散コサイン変換回路と、前記離散コサイン変換回路から供給された離散コサイン変換係数を、予め設定された量子化テーブルに格納されている量子化しきい値を参照して量子化する量子化回路と、前記量子化回路にて量子化された離散コサイン変換係数を、予め設定されたハフマンテーブルに格納されているハフマン符号を参照して可変長符号化することにより、圧縮画像データを生成するハフマン符号化回路と、前記ハフマン符号化回路の生成した圧縮画像データの符号量をカウントする符号量カウンタと、前記ハフマン符号化回路の生成した圧縮画像データを、予め設定されたハフマンテーブルに格納されているハフマン符号を参照して可変長復号化することにより伸張画像データを生成し、その伸張画像データを前記ハフマン符号化回路へ戻すハフマン復号化回路とを備えたエンコーダであって、前記ハフマン符号化回路は、前記ハフマン復号化回路から戻された伸張画像データを、予め設定されたハフマンテーブルに格納されているハフマン符号を参照して可変長符号化し、前記符号量カウンタのカウントした圧縮画像データの符号量が所定値以下になるまで、前記ハフマン符号の設定を変更しながら、前記ハフマン符号化回路と前記ハフマン復号化回路による処理を繰り返すことにより、圧縮画像データの符号量を所定値以下にするのに最適な前記ハフマン符号を決定することをその要旨とする。
【0043】
従って、本発明においても、請求項4に記載の発明と同様の作用・効果を得ることができる、
ところで、請求項6に記載の発明のように、請求項4に記載のエンコーダにおいて、前記逆量子化回路は、前記量子化テーブルに格納されている量子化しきい値を参照する際に、その量子化しきい値として、前記量子化回路による前回の量子化に参照された量子化しきい値を使用しなければならない。
【0044】
また、請求項7に記載の発明のように、請求項4または請求項5に記載のエンコーダにおいて、前記ハフマン復号化回路は、前記ハフマンテーブルに格納されているハフマン符号を参照する際に、そのハフマン符号として、前記ハフマン符号化回路による前回の可変長符号化に参照されたハフマン符号を使用しなければならない。
【0045】
また、請求項8に記載の発明のように、請求項4〜7のいずれか1項に記載のエンコーダにおいて、前記ハフマン符号化回路の生成した圧縮画像データを記憶し、その記憶した画像データを読み出して前記ハフマン復号化回路へ転送するメモリを備えるようにしてもよい。
【0046】
また、請求項9に記載の発明のように、請求項1〜8のいずれか1項に記載のエンコーダにおいて、前記1画面の画像の画像データを記憶し、その記憶した画像データを読み出して前記離散コサイン変換回路へ転送するフレームバッファを備えるようにしてもよい。
【0047】
尚、以下に述べる発明の実施の形態において、特許請求の範囲または課題を解決するための手段に記載の「第1ブロック群」「第2ブロック群」は、画面P2を構成するブロックBs1と画面P3を構成するブロックBs2、または、画面P3を構成するブロックBs2と画面P4を構成するブロックBs3に相当し、同じく「メモリ」はRAM6に相当する。
【0048】
【発明の実施の形態】
(第1実施形態)
以下、本発明を具体化した第1実施形態を図面と共に説明する。尚、本第1実施形態において、従来の形態と同じ構成部材については符号を等しくしてその詳細な説明を省略する。
【0049】
図1は、JPEG方式を用いた本第1実施形態の電子スチルカメラ1のブロック回路図である。
電子スチルカメラ1の構成において、図9に示した従来の電子スチルカメラ101と異なるのは以下の点である。
【0050】
(1)電子スチルカメラ1には、電子スチルカメラ101のJPEGコア回路102に相当するJPEGコア回路2が備えられている。
(2)JPEGコア回路2では、電子スチルカメラ101のRAM134,135が省かれ、その代わりにRAM4a,4b,5a,5bが備えられている。
【0051】
RAM4a,4bは、量子化しきい値が格納された量子化テーブルを記憶している。RAM5a,5bは、ハフマン符号が格納されたハフマンテーブルを記憶している。
(3)電子スチルカメラ1にはRAM6が備えられている。RAM6は、データバス111を介して転送されてきた1画面分の圧縮画像データを書き込んで記憶すると共に、記憶した1画面分の圧縮画像データを読み出してデータバス111へ転送する。
【0052】
(4)電子スチルカメラ1には、電子スチルカメラ101の制御コア回路136に相当する制御コア回路3が備えられている。制御コア回路3は、電子スチルカメラ1の各回路2,103〜111を制御する。
(5)電子スチルカメラ1では、逆量子化回路132の生成したDCT係数が、逆DCT回路133に出力されるだけでなく、量子化回路122にも出力されて戻されるようになっている。
【0053】
次に、本第1実施形態の電子スチルカメラ1において、量子化しきい値およびハフマン符号を決定する動作について説明する。
まず、1画面分の画像データをフレームバッファ105から読み出し、その1画面分の画像データを、フレームバッファ105→データバス110→DCT回路121の経路で転送し、各回路121〜123による前記圧縮処理を行って圧縮画像データを生成し、その符号量を符号量カウンタ124にてカウントする。
【0054】
このとき、量子化回路122は、RAM4aに記憶された量子化テーブルに格納されている量子化しきい値を参照して量子化を行うが、その量子化しきい値を規定されたなるべく小さい値(初期値)に設定しておく。尚、本実施形態の場合、量子化しきい値の最小値は「all 1」、最大値は「all 255」であるが、量子化しきい値を最小値にすると圧縮画像データの圧縮率がかなり低くなるため、最小値よりは大きめの値を量子化しきい値の初期値とすることが望ましい。
【0055】
また、ハフマン符号化回路123は、RAM5aに記憶されたハフマンテーブルに格納されているハフマン符号を参照して可変長符号化を行うが、そのハフマン符号を規定された初期値(例えば、JPEG推奨テーブル等)に設定しておく。
【0056】
そして、ハフマン符号化回路123の生成した圧縮画像データの符号量が規定された最大値以下の場合には、設定した量子化しきい値およびハフマン符号が最適化されているといえるため、その設定値に量子化しきい値およびハフマン符号を決定する。
しかし、ハフマン符号化回路123の生成した圧縮画像データの符号量が規定された最大値を越えている場合には、その圧縮画像データを、データバス111を介してRAM6へ転送して記憶させると共に、データバス111を介してハフマン復号化回路131→逆量子化回路132の経路で転送する。
【0057】
そして、各回路131,132による前記処理を行い、逆量子化回路132の生成したDCT係数を、逆DCT回路133ではなく、量子化回路122へ出力して戻す。
このとき、ハフマン復号化回路131は、RAM5bに記憶されたハフマンテーブルに格納されているハフマン符号を参照して可変長復号化を行うが、そのハフマン符号として、ハフマン符号化回路123による可変長符号化に参照されたハフマン符号(すなわち、初期値のハフマン符号)を使用する。
【0058】
また、逆量子化回路132は、RAM4bに記憶された量子化テーブルに格納されている量子化しきい値を参照して逆量子化を行うが、その量子化しきい値として、量子化回路122による量子化に参照された量子化しきい値(すなわち、初期値の量子化しきい値)を使用する。
【0059】
そして、量子化回路122は、逆量子化回路132から入力されたDCT係数を、RAM4aの量子化テーブルに格納されている量子化しきい値を参照して量子化する。また、ハフマン符号化回路123は、量子化回路回路122にて量子化されたDCT係数を、RAM5aのハフマンテーブルに格納されているハフマン符号を参照して可変長符号化し、圧縮画像データを再び生成する。このとき、RAM4aの量子化しきい値およびRAM5aのハフマン符号を共に、前記初期値よりも少し大きな値に設定し直しておく。
【0060】
その結果、ハフマン符号化回路123が再び生成した圧縮画像データの符号量が最大値以下になった場合には、設定し直した量子化しきい値およびハフマン符号が最適化されているといえるため、その設定し直した値に量子化しきい値およびハフマン符号を決定する。
【0061】
しかし、これでも圧縮画像データの符号量が最大値を越えている場合には、RAM6から読み出した圧縮画像データをデータバス111を介してハフマン復号化回路131→逆量子化回路132の経路で転送する。そして、各回路131,132による前記処理を再び行い、逆量子化回路132の生成したDCT係数を、量子化回路122へ再び出力して戻す。
【0062】
このとき、ハフマン復号化回路131は、RAM5bに記憶されたハフマンテーブルに格納されているハフマン符号を参照して可変長復号化を行うが、そのハフマン符号として、ハフマン符号化回路123による前回の可変長符号化に参照されたハフマン符号(すなわち、前記初期値よりも少し大きな値に設定し直したハフマン符号)を使用する。
【0063】
また、逆量子化回路132は、RAM4bに記憶された量子化テーブルに格納されている量子化しきい値を参照して逆量子化を行うが、その量子化しきい値として、量子化回路122による前回の量子化に参照された量子化しきい値(すなわち、前記初期値よりも少し大きな値に設定し直した量子化しきい値)を使用する。
【0064】
本第1実施形態において、量子化しきい値およびハフマン符号を決定するためのデータ転送の経路をまとめると、以下のようになる。
1回目の経路;フレームバッファ105→データバス110→DCT回路121→量子化回路122→ハフマン符号化回路123→データバス111→RAM6およびハフマン復号化回路131。
【0065】
2回目の経路;1回目の経路に続いて、ハフマン復号化回路131→逆量子化回路132→量子化回路122→ハフマン符号化回路123。
3回目の経路;RAM6→ハフマン復号化回路131→逆量子化回路132→量子化回路122→ハフマン符号化回路123。
【0066】
4回目以降の経路;3回目と同じ。
つまり、圧縮画像データの符号量が規定された最大値以下になって量子化しきい値およびハフマン符号が決定されるまで、3回目と同じ経路が繰り返される。このとき、3回目と同じ経路を繰り返す度に、RAM4aの量子化しきい値およびRAM5aのハフマン符号を共に、少しずつ大きな値に設定し直してゆく。そして、RAM4bの量子化しきい値は、前回の経路における量子化にてRAM4aに設定された量子化しきい値を使用する。また、RAM5bのハフマン符号は、前回の経路における可変長符号化にてRAM5aに設定されたハフマン符号を使用する。
【0067】
このようにして、量子化しきい値およびハフマン符号が決定されたら、1画面分の画像データをフレームバッファ105から再び読み出し、その1画面分の画像データを、フレームバッファ105→データバス110→DCT回路121の経路で転送し、各回路121〜123による前記圧縮処理を行って圧縮画像データを生成して、その圧縮画像データをデータバス111へ転送する。
【0068】
以上説明したように、本第1実施形態の電子スチルカメラ1によれば以下の作用・効果を得ることができる。
(1−1)撮像デバイス103にて撮影を行ってからメモりカード108に圧縮画像データが記憶されるまでに要する時間(記録待ち時間)を短縮することができる。
【0069】
すなわち、前記2回目の経路以降の経路では、フレームバッファ105から画像データを読み出さない。そのため、フレームバッファ105から画像データが読み出されるのは、前記1回目の経路と、決定した量子化しきい値およびハフマン符号に基づいて圧縮画像データを生成するときだけである。つまり、フレームバッファ105に対する読出アクセスが2回だけになる。
【0070】
フレームバッファ105から1画面分の画像データを読み出すのに要する時間は、JPEGコア回路2の処理に要する時間に比べて非常に長い。そのため、フレームバッファ105に対する読出アクセスが2回だけになれば、前記記録待ち時間を短縮することができる。
【0071】
また、フレームバッファ105に対する読出アクセスが2回だけになれば、フレームバッファ105およびデータバス110のバス幅を大きくすることなく、フレームバッファ105に対するアクセスの混雑を回避することが可能になる。そのため、信号処理回路104および表示回路107からフレームバッファ105に対して行われるアクセスの性能を向上させることができる。
【0072】
(1−2)前記記録待ち時間を短縮した上で、各回路122,123による前記圧縮処理を繰り返し行う回数を十分に多くすることができる。そのため、量子化しきい値およびハフマン符号を最適化することが可能になり、高精度な圧縮画像データを生成できることから、圧縮画像データを伸張した再生画像の画質の低下を防ぐことができる。
【0073】
尚、本発明は上記第1実施形態に限定されるものではなく、以下のように変更してもよく、その場合でも、上記第1実施形態と同等もしくはそれ以上の作用・効果を得ることができる。
[1−1]上記第1実施形態では、前記3回目以降の経路において、RAM6から読み出した圧縮画像データをハフマン復号化回路131へ転送している。これは、各回路122,123の処理により発生する圧縮精度の低下と、各回路131,132の処理により発生する発生する伸張精度の低下との相乗作用により、圧縮画像データの精度が低下するのを防ぐためである。つまり、3回目以降の経路において、ハフマン符号化回路123の生成した圧縮画像データをハフマン復号化回路131へ直接転送すると、3回目と同じ経路を繰り返す度に圧縮画像データの精度が低下してゆき、決定された量子化しきい値およびハフマン符号が最適化されなくなるおそれがある。
【0074】
しかし、各回路122,123,131,132の処理による精度低下が少ない場合には、3回目以降の経路において、ハフマン符号化回路123の生成した圧縮画像データをハフマン復号化回路131へ直接転送してもよく、この場合にはRAM6を省くことができる。
【0075】
[1−2]上記第1実施形態では、量子化しきい値およびハフマン符号が決定されたら、フレームバッファ105から画像データを再び読み出し、その画像データから圧縮画像データを生成している。これは、上記[1−1]と同様に、各回路122,123,131,132の処理による精度低下により、圧縮画像データの精度が低下するのを防ぐためである。
【0076】
しかし、各回路122,123,131,132の処理による精度低下が少ない場合には、量子化しきい値およびハフマン符号が決定されたら、フレームバッファ105から画像データを読み出さずに、最後の経路においてハフマン符号化回路123で生成された圧縮画像データを、完成した圧縮画像データとしてデータバス111へ転送するようにしてもよい。
【0077】
この場合、フレームバッファ105から画像データが読み出されるのは前記1回目の経路だけになり、フレームバッファ105に対する読出アクセスは1回だけになる。従って、上記第1実施形態の効果をさらに高めることができる。また、1回目の経路が終わったらフレームバッファ105をすぐに書き換えることが可能になるため、連写する場合やM−JPEGに適用した場合にも、フレームバッファ105の容量を増やすことなく対応することができる。
【0078】
[1−3]RAM6の機能をメモリカード108のフラッシュメモリ108aに肩代わりさせることにより、RAM6を省いてもよい。
[1−4]電子スチルカメラに限らず、CD−ROMシステム等の画像データのエンコーダに適用してもよい。
【0079】
[1−5]JPEGエンコーダに限らず、MPEGエンコーダに適用してもよい。前記したように、MPEG方式はJPEG方式にMCを組み合わせた技術であり、MPEGエンコーダはJPEGエンコーダ(DCT回路121,量子化回路122,ハフマン符号化回路123)にMC回路を付加して構成される。
【0080】
(第2実施形態)
次に、本発明を具体化した第2実施形態を図1に基づいて説明する。尚、本第2実施形態において、第1実施形態と同じ構成部材については符号を等しくしてその詳細な説明を省略する。
【0081】
本第2実施形態の電子スチルカメラ11の構成において、図1に示した第1実施形態の電子スチルカメラ1と異なるのは以下の点である。
[1]電子スチルカメラ11では、逆量子化回路132の生成したDCT係数が逆DCT回路133にだけ出力されるようになっている。
【0082】
[2]電子スチルカメラ11では、ハフマン復号化回路131の生成した伸張画像データが、逆量子化回路132に出力されるだけでなく、ハフマン符号化回路123にも出力されて戻されるようになっている。
本第2実施形態において、量子化しきい値およびハフマン符号を決定するためのデータ転送の経路をまとめると、以下のようになる。
【0083】
1回目の経路;第1実施形態と同じ(フレームバッファ105→データバス110→DCT回路121→量子化回路122→ハフマン符号化回路123→データバス111→RAM6およびハフマン復号化回路131)。
2回目の経路;1回目の経路に続いて、ハフマン復号化回路131→ハフマン符号化回路123。
【0084】
3回目の経路;RAM6→ハフマン復号化回路131→ハフマン符号化回路123。
4回目以降の経路;3回目と同じ。
つまり、本第2実施形態の動作において、第1実施形態の動作と異なるのは、2回目以降の経路において、逆量子化回路132の生成したDCT係数を量子化回路122に出力するのではなく、ハフマン復号化回路131の生成した伸張画像データをハフマン符号化回路123に出力して戻すことにより、最適化されたハフマン符号を決定する点にある。
【0085】
従って、本第2実施形態の電子スチルカメラ11においても、第1実施形態と同様の作用・効果を得ることができる。尚、第1実施形態と第2実施形態とを併用してもよく、その場合は相乗効果を得ることができる。
(第3実施形態)
以下、本発明を具体化した第3実施形態を図面と共に説明する。
【0086】
本第3実施形態の電子スチルカメラの構成は、図9に示した従来の電子スチルカメラ101と同じである。
従来の電子スチルカメラ101において、量子化しきい値およびハフマン符号を決定する際に、フレームバッファ105→データバス110→DCT回路121の経路で転送される画像データは、1画面分全ての画像データである。
【0087】
それに対して、本第3実施形態の電子スチルカメラでは、量子化しきい値およびハフマン符号を決定する際に、フレームバッファ105から読み出される画像データの1画面を複数のブロックに分割し、そのブロックのうち所定のブロックの画像データのみを、フレームバッファ105→データバス110→DCT回路121の経路で転送されるようにしている。
【0088】
すなわち、図2(a)に示すように、フレームバッファ105から読み出される画像データの1画面P1を、縦横16個ずつ(16行×16列)の256個のブロックBaに分割する。尚、ブロックBaはマクロブロックを単位として設定され、1つのブロックBaは縦m個横n個(m行×n行。m,nは自然数)のマクロブロックによって構成されている。
【0089】
次に、各ブロックBaの内から、1画面P1の左上端部から縦横方向へ3個おきに配置されているブロックBa(以下、「Bs1」と符号を付して区別する)を選択し、図2(b)に示すように、その(4行×4列)16個のブロックBs1から成る画面P2を作成する。
【0090】
そして、画面P2分の画像データのみをフレームバッファ105から読み出し、その画面P2分の画像データのみを、フレームバッファ105→データバス110→DCT回路121の経路で転送し、量子化しきい値およびハフマン符号を画面P2に対して予め定められた設定値に設定して、各回路121〜123による前記圧縮処理を行って圧縮画像データを生成し、その符号量を符号量カウンタ124にてカウントする。この圧縮画像データの符号量が画面P2に対して規定された最大値以下になるまで、各回路121〜123による前記圧縮処理を繰り返し行うことにより、画面P2の画像データに基づいた量子化しきい値およびハフマン符号を仮決定する。
【0091】
続いて、図3(a)に示すように、画面P1の各ブロックBaの内から、画面P1の左上端部から縦横方向へ1個おきに配置されているブロックBa(以下、「Bs2」と符号を付して区別する)を選択し、図3(b)に示すように、その(8行×8列)64個のブロックBs2から成る画面P3を作成する。
【0092】
そして、画面P3分の画像データのみをフレームバッファ105から読み出し、その画面P3分の画像データのみを、フレームバッファ105→データバス110→DCT回路121の経路で転送し、画面P2の画像データに基づいて仮決定した量子化しきい値およびハフマン符号を参照して、各回路121〜123による前記圧縮処理を行って圧縮画像データを生成し、その符号量を符号量カウンタ124にてカウントする。この圧縮画像データの符号量が画面P3に対して規定された最大値以下になるまで、各回路121〜123による前記圧縮処理を繰り返し行うことにより、画面P3の画像データに基づいた量子化しきい値およびハフマン符号を仮決定する。
【0093】
ここで、各画面P1,P2の画像データの符号量の間には、式(1)に示す関係がある。
SP1=SP2×16+E1 ………(式1)
但し、SP1;画面P1の画像データの符号量
SP2;画面P2の画像データの符号量
E1;各画面P1,P2の画像データ間の圧縮誤差
つまり、256個のブロックBaから成る画面P1上に均等に配置された16個のブロックBs1(=Ba)によって画面P2が構成されることから、画面P2のサイズは画面P1の1/16となる。しかし、画面P1から画面P2を構成する各ブロックBs1を除いた部分に存在する被写体画像の情報は、画面P2分の画像データには含まれていないため、画面P2の画像データの符号量SP2を単純に16倍した値は、画面P1の画像データの符号量SP1と同じにはならない。従って、符号量SP2を16倍した値に、画面P1から画面P2を構成する各ブロックBs1を除いた部分に存在する被写体画像の情報に起因する圧縮誤差E1を加えた値が、符号量SP1の値となる。
【0094】
ここで、各画面P2,P3を構成する各ブロックBs1,Bs2の関係は、図4に示すようになっている。すなわち、図4(a)に示すように、画面P3の64個の各ブロックBs2の内から、画面P3の左上端部から縦横方向へ1個おきに配置されているブロックBs2がブロックBs1として選択され、図4(b)に示すように、その16個のブロックBs1によって構成されたのが画面P2となる。
【0095】
そのため、各画面P2,P3の画像データの符号量の間には、式(2)に示す関係がある。
SP3=SP2×4+E2 ………(式2)
但し、SP3;画面P3の画像データの符号量
E2;各画面P2,P3の画像データ間の圧縮誤差
つまり、64個のブロックBs2から成る画面P3上に均等に配置された16個のブロックBs1によって画面P2が構成されることから、画面P2のサイズは画面P3の1/4となる。しかし、画面P3から画面P2を構成する各ブロックBs1を除いた部分に存在する被写体画像の情報は、画面P2分の画像データには含まれていないため、画面P2の画像データの符号量SP2を単純に4倍した値は、画面P3の画像データの符号量SP3と同じにはならない。従って、符号量SP2を4倍した値に、画面P3から画面P2を構成する各ブロックBs1を除いた部分に存在する被写体画像の情報に起因する圧縮誤差E2を加えた値が、符号量SP3の値となる。
【0096】
本第3実施形態において、圧縮誤差E2が許容値以内の場合は、圧縮誤差E1についても許容値以内になっているものと見なし、画面P2の画像データに基づいて仮決定した量子化しきい値およびハフマン符号を、画面P1の画像データに対して最適化された量子化しきい値およびハフマン符号であるとして本決定する。
【0097】
そして、画面P1の全ての画像データをフレームバッファ105から読み出し、その画面P1の画像データを、フレームバッファ105→データバス110→DCT回路121の経路で転送し、前記本決定した量子化しきい値およびハフマン符号を参照して、各回路121〜123による前記圧縮処理を行って圧縮画像データを生成する。その圧縮画像データが、データバス111を介してメモリカード108または入出力回路109へ転送される。
【0098】
また、圧縮誤差E2が許容値を越える場合は、図5(a)に示すように、画面P1の各ブロックBaの内から、画面P1の左上端部から縦横方向へ1個おいた後に3個連続して配置されているブロックBa(以下、「Bs3」と符号を付して区別する)を選択し、図5(b)に示すように、その(12行×12行)144個のブロックBs3から成る画面P4を作成する。
【0099】
そして、画面P4分の画像データのみをフレームバッファ105から読み出し、その画面P4分の画像データのみを、フレームバッファ105→データバス110→DCT回路121の経路で転送し、画面P3の画像データに基づいて仮決定した量子化しきい値およびハフマン符号を参照して、各回路121〜123による前記圧縮処理を行って圧縮画像データを生成し、その符号量を符号量カウンタ124にてカウントする。この圧縮画像データの符号量が画面P4に対して規定された最大値以下になるまで、各回路121〜123による前記圧縮処理を繰り返し行うことにより、画面P4の画像データに基づいた量子化しきい値およびハフマン符号を仮決定する。
【0100】
ここで、各画面P3,P4を構成する各ブロックBs2,Bs3の関係は、図6に示すようになっている。すなわち、図6(a)に示すように、画面P4の144個の各ブロックBs3の内から、画面P4の左上端部から縦横方向へ2個連続して配置されているブロックBs3がブロックBs2として選択され、図6(b)に示すように、その64個のブロックBs1によって構成されたのが画面P3となる。
【0101】
そのため、各画面P3,P4の画像データの符号量の間には、式(3)に示す関係がある。
SP4=SP3×144/64+E3 ………(式3)
但し、SP4;画面P3の画像データの符号量
E3;各画面P3,P4の画像データ間の圧縮誤差
つまり、144個のブロックBs3から成る画面P4上に均等に配置された64個のブロックBs2によって画面P3が構成されることから、画面P3のサイズは画面P4の64/144となる。しかし、画面P4から画面P3を構成する各ブロックBs2を除いた部分に存在する被写体画像の情報は、画面P3分の画像データには含まれていないため、画面P3の画像データの符号量SP3を単純に144/64倍した値は、画面P4の画像データの符号量SP4と同じにはならない。従って、符号量SP3を144/64倍した値に、画面P4から画面P3を構成する各ブロックBs2を除いた部分に存在する被写体画像の情報に起因する圧縮誤差E3を加えた値が、符号量SP4の値となる。
【0102】
本第3実施形態において、圧縮誤差E3が許容値以内の場合は、圧縮誤差E1についても許容値以内になっているものと見なし、画面P3に基づいて仮決定した量子化しきい値およびハフマン符号を、画面P1の画像データに対して最適化された量子化しきい値およびハフマン符号であるとして本決定する。
【0103】
そして、画面P1の全ての画像データをフレームバッファ105から読み出し、その画面P1の画像データを、フレームバッファ105→データバス110→DCT回路121の経路で転送し、前記本決定した量子化しきい値およびハフマン符号を参照して、各回路121〜123による前記圧縮処理を行って圧縮画像データを生成する。その圧縮画像データが、データバス111を介してメモリカード108または入出力回路109へ転送される。
【0104】
また、圧縮誤差E3が許容値を越える場合は、従来の電子スチルカメラ101と同様に、画面P1の全ての画像データに基づいて量子化しきい値およびハフマン符号を決定し、その決定した量子化しきい値およびハフマン符号により圧縮画像データを生成してデータバス111へ転送する。
【0105】
図7は、本第3実施形態の動作を説明するためのフローチャートである。
まず、ステップ(以下、「ST」と記載する)1では、画面P2の画像データについて、画面P2に対して設定された量子化しきい値およびハフマン符号を参照して圧縮画像データを生成し、その符号量SP2を求めると共に、画面P2の画像データに基づいた量子化しきい値およびハフマン符号を仮決定する。
【0106】
次に、ST2では、画面P3の画像データについて、画面P2の画像データに基づいて仮決定した量子化しきい値およびハフマン符号を参照して圧縮画像データを生成し、その符号量SP3を求めると共に、画面P3の画像データに基づいた量子化しきい値およびハフマン符号を仮決定する。
【0107】
次に、ST3では、各符号量SP2,SP3から圧縮誤差E2を算出し、圧縮誤差E2が許容値以内の場合(ST3:YES)はST4へ移行し、許容値を越える場合(ST3:NO)はST5へ移行する。
ST3からST4へ移行した場合、ST4では、画面P2の画像データに基づいて仮決定した量子化しきい値およびハフマン符号を、画面P1の画像データに対して最適化された量子化しきい値およびハフマン符号であるとして本決定し、その後にST6へ移行する。
【0108】
ST6では、画面P1の画像データについて、ST4にて本決定した量子化しきい値およびハフマン符号に基づいて圧縮画像データを生成し、その圧縮画像データをデータバス111へ転送してエンコード処理を終了する。
また、ST5では、画面P4の画像データについて、画面P3の画像データに基づいて仮決定した量子化しきい値およびハフマン符号を参照して圧縮画像データを生成し、その符号量SP4を求めると共に、画面P4の画像データに基づいた量子化しきい値およびハフマン符号を仮決定する。
【0109】
次に、ST7では、各符号量SP3,SP4から圧縮誤差E3を算出し、圧縮誤差E3が許容値以内の場合(ST7:YES)はST4へ移行し、許容値を越える場合(ST7:NO)はST8へ移行する。
ST7からST4へ移行した場合、ST4では、画面P3の画像データに基づいて仮決定した量子化しきい値およびハフマン符号を、画面P1の画像データに対して最適化された量子化しきい値およびハフマン符号であるとして本決定する。
【0110】
また、ST8では、画面P1の画像データについて、従来の電子スチルカメラ101と同様に、画面P1の全ての画像データに基づいて量子化しきい値およびハフマン符号を決定し、その後にST6へ移行する。
ST6では、画面P1の画像データについて、ST8にて決定した量子化しきい値およびハフマン符号に基づいて圧縮画像データを生成し、その圧縮画像データをデータバス111へ転送してエンコード処理を終了する。
【0111】
ところで、上記ST1〜ST8の処理は制御コア回路136により、各回路102〜111が制御されることにより行われる。つまり、制御コア回路136は、画面P1の画像を複数のブロックBaに分割させ、そのブロックBaの内から選択するブロック数を変更しながら所定のブロックBaを選択させ、その選択したブロックBaの画像データに対して前記圧縮処理を繰り返させることにより、圧縮画像データの符号量を規定された最大値以下にするのに最適な量子化しきい値およびハフマン符号から成るパラメータを決定する動作を行う。すなわち、制御コア回路136はRISC(Reduced Instruction Set Computer)−CPUの機能を備え、制御コア回路136の前記動作はRISC−CPUがソフトウェアにより処理している。尚、第1,第2実施形態の制御コア回路3についても、本第3実施形態の制御コア回路136と同様に、RISC−CPUの機能を備えている。
【0112】
以上説明したように、本第3実施形態によれば以下の作用・効果を得ることができる。
(3−1)前記記録待ち時間を短縮することができる。
すなわち、上記ST1,ST2,ST5ではそれぞれ、フレームバッファ105から画面P2,P3,P4分の画像データを読み出し、その画像データがデータバス110を介してDCT回路121へ転送される。各画面P2,P3,P4の画面サイズは画面P1の画面サイズに比べて小さく、画像データのデータ量は画面サイズに比例する。そのため、画面P1の画像データ量に対して、画面P2の画像データ量は1/16、画面P3の画像データ量は1/4、画面P4の画像データ量は144/256になる。
【0113】
そして、各回路121〜123による前記圧縮処理に要する時間は、画像データのデータ量に比例する。そのため、ST1,ST2,ST5の処理時間は、ST8の処理時間に比べて短くなる。また、通常の被写体画像については、ST1→ST2→ST3→ST4→ST6の順番で処理が行われ、ST5に移行することは稀であり、ST8に移行することは極めて稀である。従って、本第3実施形態において量子化しきい値およびハフマン符号化の最終的な決定に要する時間は、従来の電子スチルカメラ101よりも短くなる。
【0114】
また、ST1〜ST8の処理を行うことにより、前記記録待ち時間を短縮した上で、各回路121〜123による前記圧縮処理を繰り返し行う回数を十分に多くすることができる。そのため、量子化しきい値およびハフマン符号を最適化することが可能になり、高精度な圧縮画像データを生成できることから、圧縮画像データを伸張した再生画像の画質の低下を防ぐことができる。
【0115】
(3−2)各画面P2,P3,P4の画像データ量は画面P1の画像データ量に比べて少ないため、ST1,ST2,ST5においてフレームバッファ105の読出アクセスに要する時間は、ST8においてフレームバッファ105の読出アクセスに要する時間よりも短くなる。そのため、フレームバッファ105に対するアクセスが削減されることから、フレームバッファ105およびデータバス110のバス幅を大きくすることなく、フレームバッファ105に対するアクセスの混雑を回避することが可能になる。
【0116】
従って、上記(1)の効果と相まって前記記録待ち時間をさらに短縮することができる。また、信号処理回路104および表示回路107からフレームバッファ105に対して行われるアクセスの性能を向上させることもできる。
尚、本発明は上記第3実施形態に限定されるものではなく、以下のように変更してもよく、その場合でも、上記第3実施形態と同等もしくはそれ以上の作用・効果を得ることができる。
【0117】
[3−1]ST3からST4へ移行した場合、ST4では、画面P2ではなく、画面P3の画像データに基づいて仮決定した量子化しきい値およびハフマン符号を、画面P1の画像データに対して最適化された量子化しきい値およびハフマン符号であるとして本決定する。
【0118】
そして、ST7からST4へ移行した場合、ST4では、画面P3ではなく、画面P4の画像データに基づいて仮決定した量子化しきい値およびハフマン符号を、画面P1の画像データに対して最適化された量子化しきい値およびハフマン符号であるとして本決定する。
【0119】
[3−2]上記第3実施形態では、画面P1を(16行×16行)の256個のブロックBaに分割したが、画面P1を縦r個横s個(r行×s行。r,sは自然数)のブロックBaに分割するようにしてもよい。尚、この場合も、ブロックBaはマクロブロックを単位として設定する必要がある。
【0120】
[3−3]上記第3実施形態では、画面P2を(4行×4行)の16個のブロックBaで構成し、画面P3を(8行×8行)の64個のブロックBaで構成し、画面P4を(12行×12行)の144個のブロックBaで構成するようにしたが、各画面P2〜P4を構成するブロックBaの数はこれ以外の値に設定してもよい。
【0121】
例えば、画面P2を(8行×8行)、画面P3を(12行×12行)のブロックBaで構成し、画面P4を省くようにする。この場合は、ST5,ST7の処理も省かれ、ST3:NOの場合はST8へ移行する。
また、画面P2を(2行×2行)、画面P3を(4行×4行)、画面P4を(8行×8行)のブロックBaで構成し、(12行×12行)の144個のブロックBaで構成される画面P5を加えるようにする。この場合は、ST7において圧縮誤差E3が許容値を越える場合は、画面P5の画像データの符号量SP5を求めると共に、画面P5の画像データに基づいて量子化しきい値およびハフマン符号を仮決定する。そして、各画面P4,P5の画像データ間の圧縮誤差E4を算出し、圧縮誤差E4が許容値以内の場合はST4へ移行し、許容値を越える場合はST8へ移行する。
【0122】
さらに、各画面P2〜P4を構成するブロックBaの縦横の数は異なっていてもよく、例えば、画面P2を(6行×4行)、画面P3を(8行×10行)、画面P4を(14行×12行)のブロックBaで構成するようにしてもよい。
[3−4]図8に示すように、画面P1を縦横3個ずつ(3行×3列)の9個の領域Bbに分割し、その各領域Bbを縦横16個ずつ(16行×16列)の256個のブロックBaに分割する。そして、上記第3実施形態と同様にして、各領域Bb毎にST1〜ST5,ST7,ST8と同様の処理を行うことにより、各領域Bb毎に量子化しきい値およびハフマン符号を決定する。
【0123】
この場合、圧縮誤差E2が許容値を越える領域BbについてのみST5の処理が行われ、圧縮誤差E3が許容値を越える領域BbについてのみST8の処理が行われる。そのため、圧縮誤差E2が許容値以内の領域Bbが多い場合や、圧縮誤差E3が許容値以内の領域Bbが多い場合には、上記第3実施形態のように画面P1を領域Bbに分割しない場合に比べて、量子化しきい値およびハフマン符号の最終的な決定に要する時間が短くなり、上記第3実施形態の効果をさらに高めることができる。
【0124】
尚、画面P1を(3行×3列)の9個の領域Bbに分割するだけに限らず、画面P1を縦p個横q個(p行×q行。p,qは自然数)の領域Bbに分割するようにしてもよい。
[3−5]電子スチルカメラに限らず、CD−ROMシステム等の画像データのエンコーダに適用してもよい。
【0125】
[3−6]JPEGエンコーダに限らず、MPEGエンコーダに適用してもよい。前記したように、MPEG方式はJPEG方式にMCを組み合わせた技術であり、MPEGエンコーダはJPEGエンコーダ(DCT回路121,量子化回路122,ハフマン符号化回路123)にMC回路を付加して構成される。
【0126】
[3−7]本第3実施形態と第1実施形態または第2実施形態のいずれかとを併用してもよく、第1〜第3実施形態を全て併用してもよい。この場合、併用した実施形態の相乗効果を得ることができる。
【図面の簡単な説明】
【図1】本発明を具体化した第1,第2実施形態の電子スチルカメラのブロック回路図。
【図2】本発明を具体化した第3実施形態の動作を説明するための模式図。
【図3】第3実施形態の動作を説明するための模式図。
【図4】第3実施形態の動作を説明するための模式図。
【図5】第3実施形態の動作を説明するための模式図。
【図6】第3実施形態の動作を説明するための模式図。
【図7】第3実施形態の動作を説明するためのフローチャート。
【図8】第3実施形態の変形例の動作を説明するための模式図。
【図9】従来の電子スチルカメラのブロック回路図。
【符号の説明】
1,11,101…電子スチルカメラ
2…JPEGコア回路
3…制御コア回路
4a,4b,5a,5b,6…RAM
105…フレームバッファ
110,111…データバス
121…DCT回路
122…量子化回路
123…ハフマン符号化回路
124…符号量カウンタ
131…ハフマン復号化回路
132…逆量子化回路
133…逆DCT回路
P1,P2,P3,P4…画面
Ba,Bs1,Bs2,Bs3…ブロック
Bb…領域

Claims (9)

  1. 1画面の画像を構成する画像データに対して2次元離散コサイン変換を行い、離散コサイン変換係数を生成する離散コサイン変換回路と、
    前記離散コサイン変換回路から供給された離散コサイン変換係数を、予め設定された量子化テーブルに格納されている量子化しきい値を参照して量子化する量子化回路と、
    前記量子化回路にて量子化された離散コサイン変換係数を、予め設定されたハフマンテーブルに格納されているハフマン符号を参照して可変長符号化することにより、圧縮画像データを生成するハフマン符号化回路と、
    前記ハフマン符号化回路の生成した圧縮画像データの符号量をカウントする符号量カウンタとを備え、
    前記符号量カウンタのカウントした圧縮画像データの符号量が所定値以下になるまで、前記量子化しきい値およびハフマン符号から成るパラメータの設定を変更しながら、前記離散コサイン変換回路と前記量子化回路と前記ハフマン符号化回路による圧縮処理を繰り返すことにより、圧縮画像データの符号量を所定値以下にするのに最適な前記パラメータを決定するエンコーダであって、
    前記1画面の画像を複数のブロックに分割し、そのブロックの内から選択するブロック数を変更して構成された複数のブロック群のそれぞれの画像データに対して前記圧縮処理を繰り返すことにより、前記ブロック群毎に前記符号量が所定値以下になるパラメータを設定し、この設定したパラメータによる前記符号量間の関係に基づいて前記最適なパラメータを決定するパラメータ決定手段を備え、
    前記パラメータ決定手段は、前記ブロックの内から所定のブロックを選択して構成された前記第1ブロック群の画像データに対して、前記圧縮処理を繰り返すことにより第1圧縮画像データを生成すると共に、第1ブロック群の画像データに対して最適化された前記圧縮パラメータを求め、
    前記第1ブロック群よりも多数のブロックを選択して構成された第2ブロック群の画像データに対して、前記圧縮処理を行うことにより第2圧縮画像データを生成すると共に、第2ブロック群の画像データに対して最適化された前記圧縮パラメータを求め、
    第1ブロック群のブロック数と第2ブロック群のブロック数とを同一としたときに換算される前記第1圧縮画像データと第2圧縮画像データの符号量の差である圧縮誤差を算出し、
    その圧縮誤差が許容値以内の場合は、第1ブロック群の画像データに対して最適化された圧縮パラメータを、前記最適な圧縮パラメータとして決定する、
    ことを特徴とするエンコーダ。
  2. 1画面の画像を構成する画像データに対して2次元離散コサイン変換を行い、離散コサイン変換係数を生成する離散コサイン変換回路と、
    前記離散コサイン変換回路から供給された離散コサイン変換係数を、予め設定された量子化テーブルに格納されている量子化しきい値を参照して量子化する量子化回路と、
    前記量子化回路にて量子化された離散コサイン変換係数を、予め設定されたハフマンテーブルに格納されているハフマン符号を参照して可変長符号化することにより、圧縮画像データを生成するハフマン符号化回路と、
    前記ハフマン符号化回路の生成した圧縮画像データの符号量をカウントする符号量カウンタとを備え、
    前記符号量カウンタのカウントした圧縮画像データの符号量が所定値以下になるまで、前記量子化しきい値およびハフマン符号から成るパラメータの設定を変更しながら、前記離散コサイン変換回路と前記量子化回路と前記ハフマン符号化回路による圧縮処理を繰り返すことにより、圧縮画像データの符号量を所定値以下にするのに最適な前記パラメータを決定するエンコーダであって、
    前記1画面の画像を複数のブロックに分割し、そのブロックの内から選択するブロック数を変更して構成された複数のブロック群のそれぞれの画像データに対して前記圧縮処理を繰り返すことにより、前記ブロック群毎に前記符号量が所定値以下になるパラメータを 設定し、この設定したパラメータによる前記符号量間の関係に基づいて前記最適なパラメータを決定するパラメータ決定手段を備え、
    前記パラメータ決定手段は、前記ブロックの内から所定のブロックを選択して構成された前記第1ブロック群の画像データに対して、前記圧縮処理を繰り返すことにより第1圧縮画像データを生成すると共に、第1ブロック群の画像データに対して最適化された前記圧縮パラメータを求め、
    前記第1ブロック群よりも多数のブロックを選択して構成された第2ブロック群の画像データに対して、前記圧縮処理を行うことにより第2圧縮画像データを生成すると共に、第2ブロック群の画像データに対して最適化された前記圧縮パラメータを求め、
    第1ブロック群のブロック数と第2ブロック群のブロック数とを同一としたときに換算される前記第1圧縮画像データと第2圧縮画像データの符号量の差である圧縮誤差を算出し、
    その圧縮誤差が許容値以内の場合は、第2ブロック群の画像データに対して最適化された圧縮パラメータを、前記最適な圧縮パラメータとして決定する、
    ことを特徴とするエンコーダ。
  3. 請求項1または請求項2に記載のエンコーダにおいて、
    前記1画面の画像データを複数の領域に分割し、その各領域を前記複数のブロックに分割し、各領域のブロックの内から選択するブロック数を各領域毎に変更しながら所定のブロックを選択し、その選択したブロックの画像データに対して前記圧縮処理を繰り返すことにより、各領域毎に前記最適なパラメータを決定する、
    ことを特徴とするエンコーダ。
  4. 1画面の画像を構成する画像データに対して2次元の離散コサイン変換を行い、離散コサイン変換係数を生成する離散コサイン変換回路と、
    前記離散コサイン変換回路から供給された離散コサイン変換係数を、予め設定された量子化テーブルに格納されている量子化しきい値を参照して量子化する量子化回路と、
    前記量子化回路にて量子化された離散コサイン変換係数を、予め設定されたハフマンテーブルに格納されているハフマン符号を参照して可変長符号化することにより、圧縮画像データを生成するハフマン符号化回路と、
    前記ハフマン符号化回路の生成した圧縮画像データの符号量をカウントする符号量カウンタと、
    前記ハフマン符号化回路の生成した圧縮画像データを、予め設定されたハフマンテーブルに格納されているハフマン符号を参照して可変長復号化することにより伸張画像データを生成するハフマン復号化回路と、
    前記ハフマン復号化回路の生成した伸張画像データを、予め設定された量子化テーブルに格納されている量子化しきい値を参照して逆量子化することにより離散コサイン変換係数を生成し、その離散コサイン変換係数を前記量子化回路へ戻す逆量子化回路とを備えたエンコーダであって、
    前記量子化回路は、前記逆量子化回路から戻された離散コサイン変換係数を予め設定された量子化テーブルに格納されている量子化しきい値を参照して量子化し、
    前記符号量カウンタのカウントした圧縮画像データの符号量が所定値以下になるまで、前記量子化しきい値およびハフマン符号から成るパラメータの設定を変更しながら、前記量子化回路と前記ハフマン符号化回路と前記ハフマン復号化回路と前記逆量子化回路による処理を繰り返すことにより、圧縮画像データの符号量を所定値以下にするのに最適な前記パラメータを決定することを特徴とするエンコーダ。
  5. 1画面の画像を構成する画像データに対して2次元の離散コサイン変換を行い、離散コサイン変換係数を生成する離散コサイン変換回路と、
    前記離散コサイン変換回路から供給された離散コサイン変換係数を、予め設定された量子化テーブルに格納されている量子化しきい値を参照して量子化する量子化回路と、
    前記量子化回路にて量子化された離散コサイン変換係数を、予め設定されたハフマンテーブルに格納されているハフマン符号を参照して可変長符号化することにより、圧縮画像データを生成するハフマン符号化回路と、
    前記ハフマン符号化回路の生成した圧縮画像データの符号量をカウントする符号量カウンタと、
    前記ハフマン符号化回路の生成した圧縮画像データを、予め設定されたハフマンテーブルに格納されているハフマン符号を参照して可変長復号化することにより伸張画像データを生成し、その伸張画像データを前記ハフマン符号化回路へ戻すハフマン復号化回路とを備えたエンコーダであって、
    前記ハフマン符号化回路は、前記ハフマン復号化回路から戻された伸張画像データを、予め設定されたハフマンテーブルに格納されているハフマン符号を参照して可変長符号化し、
    前記符号量カウンタのカウントした圧縮画像データの符号量が所定値以下になるまで、前記ハフマン符号の設定を変更しながら、前記ハフマン符号化回路と前記ハフマン復号化回路による処理を繰り返すことにより、圧縮画像データの符号量を所定値以下にするのに最適な前記ハフマン符号を決定することを特徴とする
    エンコーダ。
  6. 請求項4に記載のエンコーダにおいて、
    前記逆量子化回路は、前記量子化テーブルに格納されている量子化しきい値を参照する際に、その量子化しきい値として、前記量子化回路による前回の量子化に参照された量子化しきい値を使用することを特徴とするエンコーダ。
  7. 請求項4または請求項5に記載のエンコーダにおいて、
    前記ハフマン復号化回路は、前記ハフマンテーブルに格納されているハフマン符号を参照する際に、そのハフマン符号として、前記ハフマン符号化回路による前回の可変長符号化に参照されたハフマン符号を使用することを特徴とするエンコーダ。
  8. 請求項4〜7のいずれか1項に記載のエンコーダにおいて、
    前記ハフマン符号化回路の生成した圧縮画像データを記憶し、その記憶した画像データを読み出して前記ハフマン復号化回路へ転送するメモリを備えたことを特徴とするエンコーダ。
  9. 請求項1〜8のいずれか1項に記載のエンコーダにおいて、
    前記1画面の画像の画像データを記憶し、その記憶した画像データを読み出して前記離散コサイン変換回路へ転送するフレームバッファを備えたことを特徴とするエンコーダ。
JP07820699A 1999-03-23 1999-03-23 エンコーダ Expired - Fee Related JP3561655B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP07820699A JP3561655B2 (ja) 1999-03-23 1999-03-23 エンコーダ
US09/532,816 US6643402B1 (en) 1999-03-23 2000-03-21 Image compression device allowing rapid and highly precise encoding while suppressing code amount of image data after compression
KR1020000014500A KR20000062982A (ko) 1999-03-23 2000-03-22 압축 후의 화상 데이터의 부호량을 억제하면서, 고속이고또한 고정밀도의 부호화가 실현 가능한 화상 압축 장치
EP00106253A EP1039759A2 (en) 1999-03-23 2000-03-22 Image compression device which recursively reduces the code amount of image data
CN00108319A CN1273491A (zh) 1999-03-23 2000-03-23 能够实现高速和高精度的编码的图象压缩装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP07820699A JP3561655B2 (ja) 1999-03-23 1999-03-23 エンコーダ

Publications (2)

Publication Number Publication Date
JP2000278687A JP2000278687A (ja) 2000-10-06
JP3561655B2 true JP3561655B2 (ja) 2004-09-02

Family

ID=13655569

Family Applications (1)

Application Number Title Priority Date Filing Date
JP07820699A Expired - Fee Related JP3561655B2 (ja) 1999-03-23 1999-03-23 エンコーダ

Country Status (1)

Country Link
JP (1) JP3561655B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2566160A3 (en) * 2005-10-14 2013-08-21 NEC Corporation Apparatus and method for entropy coding with rate control
JP2008005163A (ja) * 2006-06-21 2008-01-10 Matsushita Electric Ind Co Ltd 画像符号化装置および画像符号化方法

Also Published As

Publication number Publication date
JP2000278687A (ja) 2000-10-06

Similar Documents

Publication Publication Date Title
JP3548136B2 (ja) 画像処理装置
JP3265818B2 (ja) 動画符号化方法
US6219381B1 (en) Image processing apparatus and method for realizing trick play
US6643402B1 (en) Image compression device allowing rapid and highly precise encoding while suppressing code amount of image data after compression
US7706445B2 (en) Image processing employing picture type conversion
JP3813444B2 (ja) ビデオデコーダ
US7245821B2 (en) Image processing using shared frame memory
JPH08289294A (ja) 適応量子化による動画像圧縮システム
JP3561655B2 (ja) エンコーダ
JP3469826B2 (ja) 画像圧縮装置
JPH10336586A (ja) 画像処理装置および画像処理方法
JP2002112262A (ja) 画像符号化装置
JP3398138B2 (ja) 画像処理装置および画像処理方法
JP3398141B2 (ja) デジタルカメラおよび画像処理装置
JP4312070B2 (ja) デジタルカメラ
JP3877538B2 (ja) デジタルカメラ
JP2005051810A (ja) デジタルカメラ
JP4338727B2 (ja) 画像処理装置
JP3877742B2 (ja) デジタルカメラ
JP4338726B2 (ja) 画像処理装置
JP4338725B2 (ja) 画像処理装置
JP3548167B2 (ja) 画像処理装置
JP2001238167A (ja) 画像再生方法とこの方法を利用可能な画像再生装置およびテレビジョン受像機
JP2001045487A (ja) 画像再生装置
JP2001339726A (ja) 画像処理方法とこの方法を利用可能な画像処理装置およびテレビジョン受像機

Legal Events

Date Code Title Description
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: 20040511

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040531

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

Free format text: PAYMENT UNTIL: 20090604

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100604

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110604

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20110604

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120604

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20130604

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20130604

Year of fee payment: 9

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

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

Free format text: PAYMENT UNTIL: 20130604

Year of fee payment: 9

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees