JP4311138B2 - 複数のデータ入出力処理を行うデータ処理装置 - Google Patents

複数のデータ入出力処理を行うデータ処理装置 Download PDF

Info

Publication number
JP4311138B2
JP4311138B2 JP2003316723A JP2003316723A JP4311138B2 JP 4311138 B2 JP4311138 B2 JP 4311138B2 JP 2003316723 A JP2003316723 A JP 2003316723A JP 2003316723 A JP2003316723 A JP 2003316723A JP 4311138 B2 JP4311138 B2 JP 4311138B2
Authority
JP
Japan
Prior art keywords
data
conversion
resolution
image data
low
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
JP2003316723A
Other languages
English (en)
Other versions
JP2005086501A (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.)
Seiko Epson Corp
Original Assignee
Seiko Epson 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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2003316723A priority Critical patent/JP4311138B2/ja
Publication of JP2005086501A publication Critical patent/JP2005086501A/ja
Application granted granted Critical
Publication of JP4311138B2 publication Critical patent/JP4311138B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Image Processing (AREA)
  • Facsimile Image Signal Circuits (AREA)

Description

本発明は、複数のデータ入出力処理を行うデータ処理技術に関し、具体的には、例えば、入力画像データを複数のルックアップテーブルに基づいて処理し出力するための技術に関する。
複数のデータ入出力処理を行うデータ処理技術として、例えば、複数のルックアップテーブルを参照して入力画像データに対し複数の色変換処理を行う技術が知られている(例えば特許文献1)。
特開平10−198793号公報
このように、複数のデータ入出力処理を行うことで最終的なデータを出力するデータ処理技術において、より迅速に上記最終的なデータを出力することができれば、データ処理装置全体における処理の高速化が期待される。
従って、本発明の目的は、複数のデータ入出力処理を行うことで出力される最終的なデータをより迅速に出力することができるようにすることにある。
本発明に従うデータ処理装置は、第1と第2のデータ入出力処理により連続するデータ(例えば画像データに含まれる多数の画素データ)を所定単位で処理する入出力手段を備えるデータ処理装置であって、前記入出力手段が、前記第1のデータ入出力処理では、前記所定単位のデータについて第1入出力処理結果データを出力し、前記第2のデータ入出力処理では、前記第1入出力処理結果データについて、第2入出力処理結果データを出力するようになっていて、前記所定単位のデータについての前記第2入出力処理を開始する前に(或いは終了する前に)、該データに続く別の所定単位のデータについての前記第1入出力処理を行うことを特徴とする。
第1の好適な実施形態では、データ処理装置は、所定周期のクロック信号を出力するクロック出力部を更に備え、前記入出力手段が、前記クロック信号に同期した第1のタイミングで、前記所定単位のデータについての前記第1入出力処理結果データを出力し、前記第1のタイミングに続く第2のタイミングで、前記第1のタイミングで出力された前記第1入出力処理結果データについて前記第2入出力処理結果データを出力する第2のデータ入出力処理と、前記所定単位のデータに連続する別の所定単位のデータについての前記第1入出力処理結果データを出力する第1のデータ入出力処理とを行う。
第2の好適な実施形態では、前記第1のデータ入出力処理では、N番目(Nは整数で例えばN≧2)の所定単位データについて2つのサブデータを取得する第1処理と、前記取得された2つのサブデータを用いて前記第1入出力処理結果データを出力する第2処理とが連続的に行われるようになっており、前記第2のデータ入出力処理では、前記N番目の所定単位データについての前記第1入出力処理結果データについて2つの別のサブデータを取得する第3処理と、前記取得された2つの別のサブデータを用いて前記第2入出力処理結果データを出力する第4処理とが連続的に行われるようになっており、前記入出力手段が、前記N番目の所定単位データについての前記第1処理と前記第3処理との間に、相互にインターバルを空けることなく連続的に、N−1番目の所定単位データについての第3処理と、前記N+1番目の所定単位データについての第1処理とを行う。
第3の好適な実施形態では、前記第1のデータ入出力処理では、N番目の所定単位データを用いて、前記第1入出力処理結果データを求めるための2つの要素データにそれぞれ対応した2つのデータアドレスを取得する第1処理と、前記取得された2つのデータアドレスから前記2つの要素データをそれぞれ取得する第2処理と、前記取得された2つの要素データを用いて前記第1入出力処理結果データを求める第3処理とが連続的に行われるようになっており、前記第2のデータ入出力処理では、前記N番目の所定単位データについての前記第1入出力処理結果データを用いて、前記第2入出力処理結果データを求めるための2つの別の要素データにそれぞれ対応した2つの別のデータアドレスを取得する第4処理と、前記取得された前記2つの別のデータアドレスからそれぞれ前記2つの別の要素データを取得する第5処理と、前記取得された2つの別の要素データを用いて前記第2入出力処理結果データを求める第6処理とが連続的に行われるようになっており、前記入出力手段が、前記N番目の所定単位データについての前記第1処理と前記第4処理との間に、相互にインターバルを空けることなく連続的に、N−1番目の所定単位データについての第4処理と、N+1番目の所定単位データについての第1処理とを行い、且つ、前記N番目の所定単位データについての前記第2処理と前記第5処理との間に、相互にインターバルを空けることなく連続的に、N−1番目の所定単位データについての第5処理と、N+1番目の所定単位データについての第2処理とを行う。
第4の好適な実施形態では、第3の好適な実施形態において、データ処理装置が、所定周期のクロック信号を出力するクロック出力部を更に備え、前記入出力手段は、K〜K+1クロックで、前記N番目の所定単位データについての前記第1処理を行い、K+2〜K+3クロックで、前記N−1番目の所定単位データについての前記第4処理を行い、K+4〜K+5クロックで、前記N+1番目の所定単位データについての前記第1処理を行い、K+6〜K+7クロックで、前記N番目の所定単位データについての前記第4処理を行い、且つ、K+1〜K+2クロックで、前記N番目の所定単位データについての前記第2処理を行い、K+3〜K+4クロックで、前記N−1番目の所定単位データについての前記第5処理を行い、K+5〜K+6クロックで、前記N+1番目の所定単位データについての前記第2処理を行い、K+7〜K+8クロックで、前記N番目の所定単位データについての前記第5処理を行う(Kは整数で例えばK≧1)。
ここで、データ処理装置は、例えば、ガンマ補正を行う装置であっても良い。その場合、「所定単位のデータ」は、例えば、画像データを構成する多数の画素データの各々が表す入力値あっても良い。また、「データアドレス」は、例えば、全入力値のうちの少なくともu(k)=a*b−k(ただし、a、bは定数、k=0,1,2・・m)で表される入力値:u(k)に対応するデータアドレス(又は、入力画素データの所定部分(例えば上位又は下位Xビット)から取得されるデータアドレス)であっても良い。また、そのデータアドレスから取得される「要素データ」は、そのデータアドレスを有する第1のガンマ補正テーブルに格納されている複数の変換値のうちの一つである。また、「第1入出力処理結果データ」は、例えば、2つの変換値(要素データ)と線形補間とを用いて得られるデータであっても良い。また、「別のデータアドレス」は、v(k)=ck+d(ただし、c、dは定数、k=0,1,2・・n)で表される第1入出力処理結果データ:v(k)に対応するデータアドレス(又は、第1入出力処理結果データの所定部分(例えば上位又は下位Xビット)から取得されるデータアドレス)であっても良い。また、その別のデータアドレスから取得される「別の要素データ」は、前記第3処理によって得られた第1の入出力処理結果データに応じて設定される変換値が格納された第2のガンマ補正テーブルが有する複数の変換値のうちの一つである。また、「第2入出力処理結果データ」は、例えば、2つの変換値(要素データ)と線形補間とを用いて得られるデータであっても良い。
本発明に従うデータ処理装置において行われる各入出力処理はコンピュータにより実施することができるが、そのためのコンピュータプログラムは、ディスク型ストレージ、半導体メモリ及び通信ネットワークなどの各種媒体を通じてコンピュータにインストール又はロードすることができる。
また、本発明のデータ処理装置は、専用ハードウェア、プログラムされたコンピュータ、又はそれらの組合せのいずれによっても実現することができる。
本発明によれば、前記所定単位のデータについての第2入出力処理を開始する前に、該データに続く別の所定単位のデータについての第1入出力処理が開始される。これにより、所定単位のデータについての第1入出力処理と、別のデータについての第1入出力処理との間の時間が有効に活用され、その結果、データ処理の速度が全体として高速になる。
以下、本発明の一実施例を、下記のようなガンマ補正装置に適用した場合の実施例について説明する。
まず、そのガンマ補正装置について説明し、その後、そのガンマ補正装置におけるデータ処理を高速化するための仕組みについて説明する。
図1は、本実施例におけるガンマ補正装置を備えた画像読取りシステムを示すブロック図である。
本実施例による画像読み取りシステムは、イメージスキャナ(以下、単に「スキャナ」と言う)1等の画像入力装置と、パーソナルコンピュータ(以下、「PC」と略記)36等の情報処理端末とを備えている。スキャナ1とPC36とは、互いにUSB(Universal Serial Bus)等のインタフェース34を介して接続されている。
PC36には、CPU40、ROM38及びRAM42等のメモリ、ハードディスク装置44、操作部48及び表示部46が備えられている。
CPU40は、ROM38及びハードディスク装置44に格納されたプログラムを実行し、PC36の各部を制御する他、ハードディスク装置44に格納されたTWAINドライバ(図示せず)を実行してスキャナ10を制御する。TWAINドライバは、PC36に対して処理の処理、例えば、PC36にインストールされているアプリケーションソフトウェアからスキャナ1に直接アクセスし、スキャナ1によって読み込まれたイメージをアプリケーションに取り込む処理を実行させる。
ROM38は、CPU40が動作するために最低限必要なプログラムやデータを予め格納しているメモリである。RAM42は、各種プログラムや各種データを一時的に格納するメモリである。
ハードディスク装置44には、オペレーティングシステム、TWAINドライバ等の各種のプログラムやデータが予め記憶されている。
操作部48は、マウス等のポインティングデバイスやキーボード等の入力装置を備え、ユーザが画像の読み取りを指示するためのものである。
表示部46は、ドットマトリクス表示のディスプレイ、制御回路、VRAM(Video RAM)などで構成され、スキャナ10からインターフェース34を介して入力された画像を表示する。
スキャナ10には、光源12、縮小光学系14、イメージセンサ16、AFE(Analog Front End)部18、制御部32、及びディジタル画像処理部20が備えられている。
光源12は、蛍光管ランプ等の管照明装置から構成され、原稿を照射する。
光学系14は、ミラー及びレンズで構成されている。光学系14は、光源12に照射された原稿の反射光像をイメージセンサ16に縮小して結像させる。
イメージセンサ16は、光学系14により結像される走査線上の光学像を走査し、その光学像の濃淡に相関する電気信号を出力する。イメージセンサ16は、可視光、赤外光、紫外光等、所定の波長領域の光を光電変換して得られる電荷をフォトダイオード等の受光素子に一定時間蓄積し、受光素子ごとの受光量に応じた電気信号をCCD(Charge Coupled Device)、MOSトランジスタスイッチ等を用いて出力する。
AFE部18は、アナログ信号処理部、A/D変換器等から構成される。アナログ信号処理部は、イメージセンサ16から出力された電気信号に対して増幅、雑音低減処理等のアナログ信号処理を施して出力する。A/D変換器は、アナログ信号処理部から出力された電気信号を所定値ビット、例えば16ビットのディジタル表現の信号に量子化して出力する。
制御部32は、ROM30、CPU28、RAM26等を備え、スキャナ10の各部を制御する。ROM30は、CPU28で実行されるファームウェアやデータを予め格納しているメモリである。ファームウェアは制御部32を設定手段及び変換手段の一部として機能させる。後述する第一テーブル54はROM30に予め格納されている。RAM26は、各種プログラムや各種データを一時的に格納するメモリである。
ディジタル画像処理部20は、ガンマ補正装置としてのガンマ補正部22、シェーディング補正部24等を備えるASICである。ディジタル画像処理部20は、AFE部18から出力される信号に対し、ガンマ補正、画素補間法による欠陥画素の補間、シェーディング補正、画像信号の鮮鋭化等の処理を行って画像データを作成する。尚、ディジタル画像処理部20で施す上記各種の処理は、制御部32で実行するコンピュータプログラムによる処理に置き換えてもよい。
図2は、ガンマ補正部22を示すブロック図である。図3は、ガンマ補正部22の処理内容を説明するための図である。
第一変換部50は、AFE部18から出力される16ビット階調のデータ:xを、スキャナ10内のSRAM52(図1では図示せず)に格納された第一テーブル54と線形補間とを用いて所定の特性で変換し、16ビット階調の第一変換データ:F(x)を生成する。
ここで、第一テーブル54は、制御部32のROM30に格納されているデータがスキャナ10の起動時にSRAM52の所定のアドレス空間に格納されたものである。また、カラー入力の場合、RGB各色毎に異なる第一テーブル54が必要になる。また、SRAM52は、ガンマ補正部22を構成するASICと同一基板上に形成されていてもよいし、そのASICに外付けされていてもよい。
第一テーブル54には、2s・b-k(ただし、sは入力値のビット数とし、k=0,1,2…mとし、m+1は第一テーブルの語数とする。)で表される入力値:xに対応する128個のアドレスに16ビット階調の変換値が格納されている。尚、変換値の階調及び個数はこれらの数に限られるものではなく、AFE部18の出力階調、要求される補正精度等に応じて適宜設定できるものであり、例えば変換値の個数は64個、208個、256個などに設定でき、変換値の階調は8ビット、12ビットなどに設定できる。第一テーブル54の変換値の個数を128とし、変換値の階調を16ビットとすると、128個の変換値には、2048ビット(128×16=211)のSRAM52の容量が割り当てられる。第一テーブル54には、前述の入力値:xに対応する128個のアドレスに、入力値:xとの間に以下の(数1)
Figure 0004311138
の相関を有する16ビット階調の変換値f(x)が格納されている。γは、図11に示すように入力値が小さい範囲において入力値に対する変換値の変化の割合が大きく、入力値が大きい範囲において入力値に対する変換値の変化の割合が小さい変換特性になるものが望ましく、具体的には例えばγ≒1.8であることが望ましい。図3(A)には、入力値A〜Fに対応するアドレスにf(A)〜f(F)の変換値が格納されていることが示されている。
第一変換部50は、次式(数2)で表すF(x)を次のように求める。
Figure 0004311138
ただし、sは入力値のビット数とし、bは2s・b-t=1を満たす定数とし、t+1は第一テーブルの変換値の個数とする。
第一変換部50は、はじめに、AFE部18から出力される16ビット階調のデータに基づいて、第一テーブル54の連続する2つのアドレスを求める。すなわち、第一変換部50は、AFE部18から出力されるデータ(つまり第1変換部50への入力値)をxとすると、次式(W)、
s-k ≧x>2s-(k+1)・・・(W)
を満たすkに予め対応付けられたアドレスと、その次のアドレスを求める。
ここでkに対応付けられているアドレスは、第一テーブル54のアドレスに予め対応付けられている入力値のうち実際の入力値xを越える最も小さな入力値(図3(A)ではFに相当)に対応付けられているものである。また、k+1に対応付けられているアドレスは、第一テーブル54のアドレスに予め対応付けられている入力値のうち実際の入力値xを越えない最も大きな入力値(図3(A)ではEに相当)に対応付けられているものである(図4に、第一変換部50の入力値と第一テーブル54のアドレスとの対応付けを表す表を示す)。
第一変換部50は、次に、先に求めた2つのアドレスを指定して第一テーブル54から2つの変換値f(2s-k )(図3(A)ではf(F)に相当)及びf(2s-(k+1) )(図3(A)ではf(E)に相当)を演算用のレジスタに格納し、上記(数2)を満たすF(x)を求めることによって、第一テーブル54を線形補間する。これにより、入力値xに対応する16ビット階調の第一変換データ:F(x)が第一変換部50から出力される。次式(数3)は、上記(数2)に図3(A)に示した各値を代入した式である。
Figure 0004311138
第二変換部58は、第一変換部から出力される16ビット階調のデータを、SRAM52に格納された第二テーブル56と線形補間とを用いて所定の特性で変換し、16ビット階調の第二変換データを生成する。
第二テーブル56は、スキャナ10を制御するPC36で実行されるドライバプログラムによって求められる8ビット階調の最適化テーブルに基づいて、スキャナ10の制御部32がファームウェアを実行して生成しSRAM52に格納するものである。
ここで、最適化テーブルは、TWAINに準拠したドライバプログラムが低解像度の画像データに基づいて生成し、PC36からスキャナ10にダウンロードされるテーブルに相当する。また、カラー入力の場合、RGB各色毎に異なる最適化テーブルが必要になる。最適化テーブルには、F(x)=k(ただし、k=0,1,2,・・・,255)に対応するアドレスに8ビット階調の変換値が格納されている。尚、最適化テーブルの変換値の個数及び階調はこれらに限定されるものではない。制御部32は、ファームウェアを実行し、RAM26にロードされた8ビット変換値を16ビットに変換し、16ビット階調の変換値g(x)が格納された第二テーブル56を生成する。この変換は、例えば最適化テーブルの変換値を257倍することによって行う。尚、第二テーブル56の変換値の階調は16ビットに限らず、スキャナ10の基本解像度等に応じて適宜設定すればよい。第二テーブル56の変換値の階調を16ビットとし、変換値の個数を256個とすると、第二テーブル56の変換値には、4096ビット(256×16=212)のSRAM52の容量が割り当てられる。
第二変換部58は、次式(数4)で表すG(x)を次のように求める。
Figure 0004311138
ただし、F(x)は入力値(第一変換部の出力値)とし、uは入力値のビット数とし、2n は第二テーブルの変換値の個数とする。
図3(B)及び図5は、第二変換部58の処理内容を説明するための図である。
第二変換部58は、はじめに、第一変換部50の出力結果F(x)が格納されるレジスタ62の上位nビット(図3(B)及び図5ではn=8)に基づいて第二テーブル56の連続する2つのアドレスを求める。すなわち、第二変換部58は、次式(T)
u-n (k+1)≧F(x)>2u-n k・・・(T)
を満たすkに予め対応付けられたアドレスと、その次のアドレスを求める(図3(B)及び図5ではu=16)。
次に、第二変換部58は、先に求めた2つのアドレスを指定して第二テーブル56から2つの変換値g(2u-n k)(図3(B)ではg(E)に相当)、g(2u-n
(k+1))(図3(B)ではg(F)に相当)を演算用のレジスタに格納し、上記(数4)を満たすG(x)を求めることによって第二テーブル56を線形補間する。これにより、第二変換部58への入力値xに対応する16ビット階調の第二変換データ:G(x)が第二変換部58から出力される。次式(数5)は、上記(数4)に図3(B)に示した各値を代入した式である。
Figure 0004311138
さて、図2に示すセレクタ60は、第一変換部50から出力される第一変換データ、又は、第二変換部58から出力される第二変換データ(図5参照)のいずれか一方をガンマ補正部22の出力として選択する。具体的には、例えば、セレクタ60は、低解像度で画像を入力するプレスキャン時には、第一変換データをガンマ補正部22の出力として選択し、プレスキャンに続いて高解像度で画像を入力する時には、第二変換データをガンマ補正部22の出力として選択する。
図6は、本実施例による画像読み取りシステムで画像を入力する処理の流れを示すシーケンスチャートである。
PC36から所定のパラメータがスキャナ10に送出され、原稿の読み取りが指示されると、スキャナ10の制御部32は、光源12、イメージセンサ16、AFE部18等を制御し、ディジタル画像処理部20に低解像度の画像データを入力する(S100)。
次に、スキャナ10の制御部32は、ディジタル画像処理部20を制御し、低解像度の画像データ及び第一テーブル54に基づいて生成した第一変換データ:F(x)を第一変換部50から出力させ、セレクタ60に第一変換データ:F(x)を選択させる。この結果、低解像度の画像データを変換して生成された第一変換データがガンマ補正部22から出力される(S105)。
次に、スキャナ10の制御部32は、ディジタル画像処理部20を制御し、第一変換データに対してシェーディング補正等を行わせ、その結果得られた低解像度画像データをインタフェース34を通じてPC36に送出させる(S110)。
PC36は、インタフェース34を通じて入力された低解像度画像データをRAM42に格納し、TWAINに準拠したドライバプログラムの実行により、低解像度画像データに応じた最適化テーブル、すなわち、原稿に応じた最適化テーブルを生成する(S115)。TWAINに準拠したドライバプログラムの場合、最適化テーブルには、256語のアドレス空間に8ビットの変換値が格納される。最終的にPC36に入力しようとする解像度より低い解像度の画像データに基づいて最適化テーブルを生成することにより、最適化テーブルを生成するために必要なデータ処理量を低減することができる。
次に、PC36からインタフェースを通じて最適化テーブルがスキャナ10に送出される(S120)。
スキャナ10は、インタフェース34を通じて入力された最適化テーブルを制御部32のRAM26に格納し、ファームウェアの実行により最適化テーブルの変換値を16ビットに変換し、変換の結果得られる第二テーブルをディジタル画像処理部20のSRAM52に格納する(S125)。
次に、スキャナ10の制御部32は、光源12、イメージセンサ16、AFE部18等を制御し、ディジタル画像処理部20に高解像度の画像データを入力させる(S130)。
次に、スキャナ10の制御部32は、ディジタル画像処理部20を制御し、高解像度の画像データ及び第一テーブル54に基づいて第一変換データ:F(x)を第一変換部50から出力させ、さらに、第一変換データ及び第二テーブル56に基づいて第二変換データ:G(x)を第二変換部58から出力させ、セレクタ60に第二変換データ:G(x)を選択させる。この結果、高解像度の画像データを変換して生成された第二変換データがガンマ補正部22から出力される(S135)。
次に、スキャナ10の制御部32は、ディジタル画像処理部20を制御し、第二変換データに対してシェーディング補正等を行わせ、その結果得られた高解像度画像データをインタフェース34を通じてPC36に送出させる(S140)。
以下、上述の実施例について、ガンマ補正における理論補正値と実際の補正値との誤差を比較検証した結果について説明する。
図7は、比較例として16ビット階調の変換値を4096個格納したテーブルと線形補間とを用いて16ビット階調の入力値を16ビット階調の変換値にガンマ補正したときの補正値と理論補正値との誤差を示すグラフである。図8は、図7の一部を拡大表示したグラフである。図9は、16ビット階調の変換値を128個有する第一テーブル54と、16ビット階調の変換値を256個有する第二テーブル56とを用いた本発明の一実施例により、16ビット階調の入力値を16ビット階調の変換値にガンマ補正したときの補正値と理論補正値との誤差を示すグラフである。図10は、図9の一部を拡大表示したグラフである。
図7〜図10に示すように、本実施例における理論補正値と実際の補正値との誤差は、比較例と比べた場合、入力値が相対的に小さい範囲では誤差がかなり小さく、入力値が相対的に大きい範囲では誤差がやや大きく、全体としての誤差の増分はマイナスか或いは実質的に無視できる程度のプラスである。
一方、比較例と本実施例について、ガンマ補正に用いるテーブルのメモリ容量を比較すると、比較例では、65536(=16×4096)ビットのメモリ容量を必要とするのに対し、本実施例では、6144(=(128+256)×16)ビットのメモリ容量しか必要としない。すなわち、本実施例によると、比較例に比べてガンマ補正の精度を実質的に同程度に維持しつつ、ガンマ補正に用いるテーブルのメモリ容量を10分の1程度にまで低減することができる。
また、本実施例によると、第一テーブルと第二テーブルとを合成して新たなテーブルを作成しないため、その分だけガンマ補正に関するデータ処理量を低減することができる。
また、本実施例によると、第一テーブルを用いて変換した後に第二テーブルを用いた変換を実施するため、全体としての変換特性は第一テーブルの変換特性に縛られることなく、任意に設定することができる。
なお、上記実施例において、第一テーブル54では、入力値と出力値との関係が対数関数で表されており、第二テーブル56では、入力値と出力値との関係がリニアな関数で表されているが、必ずしもそうである必要は無い。例えば、第一テーブル54及び第二テーブル56の両方とも、リニアな関数が書かれたルックアップテーブルであっても良いし、或いは、対数関数が書かれたルックアップテーブルであっても良い。
また、上記実施例において、第一変換部50は、第二変換部58と同様に、入力データの上位mビットを使用して第一変換データを求め出力するようにしても良い(mの値は可変でも固定でも良い)。この場合、例えば、第一変換部50は、入力データの値xと、mとの関係を表すルックアップテーブル(スキャナ10内の所定の記憶装置に格納されているデータ)を取得し、入力データの値xに対応する値mをそのテーブルから取得し、その値mに基づいて第一変換を行っても良い。なお、そのルックアップテーブルでは、例えば、入力値xが比較的大きい場合には、mは小さい値(例えば5)に設定されていて、入力値xが比較的小さい場合には、mは大きい値(例えば12)に設定されていても良い。
さて、次に、図12以降を参照して、上述したガンマ補正部22におけるデータ処理を高速化するための仕組みについて説明する。
まず、その仕組みをより理解し易くするために、上記ガンマ補正部22の機能から考えられる第1のデータ処理の流れを説明する。
図12(A)は、上述した第1のデータ処理の流れを説明するための図である。具体的には、図1に示したディジタル画像処理部20(ASIC)に入力されるクロック信号に基づいて、図2に示した第一変換部50及び第二変換部58がどのような流れで動作するのかを説明するための図である。
図12において、「CLK」は、ディジタル画像処理部20(ASIC)に入力される所定周期のクロック信号を示す。
「CS_A」及び「CS_B」は、ディジタル画像処理部20のガンマ補正部22に入力される信号を示す。信号「CS_A」は、SRAM52上に構築された2つのテーブル54及び56のうち第1テーブル54が選択状態にあるか否かを示し、具体的には、Lレベルにあるときが選択状態であることを示し、Hレベルにあるときが選択されていない状態であることを示す。一方、「CS_B」は、SRAM52上に構築された2つのテーブル54及び56のうち第2テーブル56が選択状態にあるか否かを示し、具体的には、Lレベルにあるときが選択状態であることを示し、Hレベルにあるときが選択されていない状態であることを示す。
「ADDRESS」は、SRAM52のアドレス、別の言い方をすれば、第一テーブル54又は第二テーブル56のアドレスを示す。具体的には、A0[P](ただしP=N、N+1、…)は、第一テーブル54の連続する2つのアドレスのうち前のアドレスを示し、A1[P]は、その2つのアドレスのうち後のアドレスを示す(以下、第一テーブル54のアドレスを「Aアドレス」と言う)。また、B0[P]は、第二テーブル56の連続する2つのアドレスのうち前のアドレスを示し、B1[P]は、その2つのアドレスのうち後のアドレスを示す(以下、第二テーブル56のアドレスを「Bアドレス」と言う)。
「DATA」は、第一テーブル54又は第二テーブル56からそれぞれ取得された2つのデータを表す。具体的には、D(A0[P])は、第一テーブル54の連続する2つのAアドレスのうち前のAアドレスを用いて取得されたデータを示し、D(A1[P])は、その2つのAアドレスのうち後のAアドレスを用いて取得されたデータを示す(以下、Aアドレスから取得されたデータを「Aデータ」と言う)。また、D(B0[P])は、第二テーブル56の連続する2つのBアドレスのうち前のBアドレスを用いて取得されたデータを示し、D(B1[P])は、その2つのBアドレスのうち後のBアドレスを用いて取得されたデータを示す(以下、Bアドレスから取得されたデータを「Bデータ」と言う)。
「CALC」は、第一テーブル54から得られた2つのAデータを用いて計算されたデータFA(P)、又は、第二テーブル56から得られた2つのBデータを用いて計算されたデータFB(P)を示す。
この図12(A)によれば、或るクロック(これを「第一クロック」と言う)で、AFE部18から第一変換部50に入力された16ビット階調データ(以下、「元入力データ」と言う)の処理が始まると、信号「CS_A」が立ち下がり、SRAM52の第一テーブル54が選択状態となる。そのため、第一変換部50が、上述した(W)式を用いて、元入力データの値xに基づき、第一テーブル54の連続する2つのAアドレスを求める。それら2つのAアドレスのうち、前のAアドレスA0[N]は第一クロックで求められ、後のAアドレスA1[N]は第二クロックで求められる。後のAアドレスA1[N]が取得された直後の第三クロックが立ち上がると、信号「CS_A」が立ち上がり、第一テーブル54の選択状態が解除される。
前のAアドレスA0[N]が第一クロックで求められ、後のAアドレスA1[N]が第二クロックで求められると、それぞれ続く第二及び第三クロックで、各AアドレスA0[N]、A1[N]に対応した各AデータD(A0[N])、D(A1[N])が第一テーブルから取得されて、上記演算用のレジスタに格納される。すると、第一変換部50が、それら2つのAデータを用いて、上記(数2)を満たすF(x)を求めることによって第一テーブル54を線形補間し、それにより、第四クロックで、元入力データに対応する16ビット階調の第一変換データFA(N)(図2ではF(x)と図示)が第一変換部50から出力される。
次に、続く第五クロックで、信号「CS_B」が立ち下がり、SRAM52の第二テーブル56が選択状態となる。そのため、第二変換部58が、上述した(T)式を用いて、第一変換データFA(N)が格納されたレジスタ62の上位nビットに基づき第二テーブル56の連続する2つのBアドレスB0[N]、B1[N]を求める(図5参照)。前のBアドレスB0[N]は第5クロックで求められ、後のBアドレスB1[N]は第六クロックで求められ、それが終了し第七クロックが立ち上がると、信号「CS_B」が立ち上がり、第二テーブル56の選択状態が解除される。
前のBアドレスB0[N]が第五クロックで求められ、後のBアドレスB1[N]が第六クロックで求められると、それぞれ続く第六及び第七クロックで、各BアドレスB0[N]、B1[N]に対応したBデータD(B0[N])、D(B1[N])が第二テーブル56から取得されて、上記演算用のレジスタに格納される。すると、第二変換部50が、それら2つのBデータと、第二変換部58への入力データF(x)の下位u−nビット(図5に示した例では下位8ビット)部分とを用いて、上記(数4)を満たすG(x)を求めることによって第二テーブル56を線形補間し、それにより、次のBデータD(B1[N])が出力された後の第八クロックで、第二変換部58への入力データF(x)に対応する第二変換データFB(N)(図2ではG(x)と図示)が出力される。
その後、第二変換データが出力された直後の第九クロックで、第一変換部50に入力された次の元入力データの処理が開始され、以後、ガンマ補正部22において上記と同様の流れでデータ処理が行われる。このデータ処理において、図12に示すように、連続する2つのAアドレスを求めて第一変換データの出力する一連の処理(以下、「第一変換データ出力処理」と言う)を済ますためには4クロックが必要とされ、同様に、連続する2つのBアドレスを求めて第二変換データを出力する一連の処理(以下、「第二変換データ出力処理」と言う)を済ますためにも4クロックが必要とされる。
以上、この図12(A)によれば、各元入力データについての第二変換データ出力処理200Bは、その元入力データについての第一変換データ出力処理200Aの結果として出力される第一変換データが必要である。そのため、各元入力データのデータ処理では、その元入力データについての第一変換データが出力された後でないと、その元入力データについての第二変換データ出力処理を開始することができない。それ故、各元入力データについて、第一変換データ出力処理200Aにおいて連続する2つのAアドレスを取得し終えてから、第二変換データ出力処理200Bが開始されるまでには、少なくとも、連続する2つのAアドレスを取得し終えてから第一変換データが出力されるまでの時間と同じ長さの空き時間250が生じてしまう。
そこで、その空き時間250を有効に活用すべく、本実施例では、ガンマ補正部22は以下のような第2のデータ処理を行う。
図12(B)を参照して、ガンマ補正部22の第2のデータ処理の流れについて説明する(なお、図12(A)を参照して説明した内容と重複する部分については説明を省略或いは簡略化する)。
第2のデータ処理では、過去に求められたBアドレスのうち、少なくとも直前回に求められた連続する2つのBアドレスと、直前回に第二変換部58に入力された第一変換データとが、スキャナ10内部の所定の記憶装置(例えばRAM等のメモリ、以下、これを「過去アドレス/データ記憶部」と呼ぶ)に格納される。
第一クロックで、第1の元入力データの処理が始まると、既に説明したように、信号「CS_A」が立ち下がり、それにより、連続する2つのAアドレスのうち、前のAアドレスA0[N]が求められ、続く第二クロックで、後のAアドレスA1[N]が求められる。そして、その後に第三クロックが立ち上がると、信号「CS_A」が立ち上がり、第一テーブル54の選択状態が解除され、且つ、第四クロックで、第1の元入力データの第一変換データFA(N)が求められる。この第一変換データFA(N)は、後の第二変換データ出力処理300Bで使用するために、第一変換部50によって上記過去アドレス/データ記憶部に格納される。
この第2のデータ処理では、後のAアドレスA1[N]の取得が完了した直後に、図12に示したような空き時間250を生じさせる代わりに、上記第三クロックで、信号「CS_B」が立ち下がって、第二変換データ出力処理が開始される。具体的には、第二変換部58が、上述した過去アドレス/データ記憶部から、直前回に使用された連続する2つのBアドレスB0[N-1]、B1[N-1]を取得する。それら連続する2つのBアドレスのうち、第二テーブル56が選択状態になった第三クロックで、前のBアドレスB0[n-1]が取得され、続く第四クロックで、後のBアドレスB1[N-1]が取得される。また、その処理に伴い、前のBアドレスB0[N-1]が取得された第三クロックの後の第四クロックで、そのBアドレスB0[N-1]に対応したデータD(B0[N-1])が第二テーブル56から取得され、続く第五クロックで、後のBアドレスB1[N-1]に対応したデータD(B1[N-1])が第二テーブル56から取得される。そして、第二変換部58は、上述した過去アドレス/データ記憶部から、直前回に第二変換部58に入力された第一変換データを取得し、その第一変換データと、上述した2つのBデータD(B0[N-1])、D(B1[N-1])とを用いて、上記(数4)を満たすG(x)を求め、それにより、第六クロックで、上記直前回の第一変換データに対応する直前回の第二変換データFB(N-1)が出力される(なお、過去アドレス/データ記憶部には、直前回の第一変換データに代えて又は加えて、その直前回の第二変換データFB(N-1)それ自体が格納されていて、第六クロックでは、その格納されている第二変換データが出力されても良い)。
さて、この第2のデータ処理において、直前回に使用された連続する2つのBアドレスのうち後のBアドレスB1[N-1]が取得された直後の第五クロックで、第2の元入力データの処理が始まる。すると、その第五クロックで、信号「CS_A」が立ち下がり、それにより、連続する2つのAアドレスが求められる処理が開始され、その結果、第五クロックから4クロック目の第八クロックで、上記第2の元入力データに対応した第一変換データFA(N+1)が第一変換部50から出力される。
第五クロックで、第2の元入力データの処理が始まると、図12(B)が示す通り、連続する2つのAアドレスのうちの後のAアドレスの取得が第六クロックで完了する。そして、その直後の第七クロックで、信号「CS_B」が立ち下がり、第四クロックで出力された、第1の元入力データの第一変換データFA(N)を用いた第二変換データ出力処理300Bが開始される。このため、第七クロックから4クロック目の第十クロックで、第1の元入力データに対応した第二変換データFB(N)が第二変換部58から出力される。また、この第七〜第十クロックにおける第二変換データ出力処理300Bでは、この処理において求められた連続する2つのBアドレスB0[N]、B1[N]は、第二変換部58によって上記過去アドレス/データ記憶部に格納される。
以後、同様の流れで処理が進んでいく。
以上、図12(B)及び上記説明によれば、各元入力データの処理において第一変換データ(又は第二変換データ)及び2つのBアドレスが求められる都度に、その第一変換データ(又は第二変換データ)及び2つのBアドレスが過去アドレス/データ記憶部に保存される。それにより、図13に示すように、初めての第一変換データ出力処理が開始されて、第一〜第二クロックにかけて2つのAアドレスを取得した直後は、図12に示したような無駄な空き時間250を生じさせる代わりに、直前回に使用された2つのBアドレスを取得し、その2つのBアドレスと、直前回の第一変換データ(又は第二変換データ)とを使用した直前回の第二変換データ出力処理が行われる。
すなわち、第2のデータ処理では、例えばアドレスの取得処理に着目して説明すれば、第Nの元入力データについて2つのAアドレスを取得した直後に(Nは任意の整数)、一つ前の第N−1の元入力データの第一変換データを用いた2つのBアドレスの取得処理が行われ、次に、その処理の完了直後に、それより2つの後の第N+1の元入力データについて2つのAアドレスが取得される処理が行われる。このため、第Nの元入力データについての第一変換データ出力処理と、それについての第二変換データ出力処理との間に、第N−1の元入力データについての第二変換データ出力処理と、第N+1の元入力データについての第一変換データ出力処理が行われることになる。結果として、図12(A)に示した第1のデータ処理では、第二変換データが出力される周期は8クロックであるが、この図12(B)に示した第2のデータ処理では、第二変換データが出力される周期は4クロックとなる。従って、全体として、ガンマ補正部22のデータ処理がより高速になる。
なお、上述した説明において、第1のデータ処理の変形例として、図13(A)に示すように、第Nの元入力データについての第二変換データ出力処理200Bの直後に、第N+1の元入力データについての第一変換データ出力処理200Aを開始することが可能である。換言すれば、第Nの元入力データについての2つのBアドレスの取得が完了した直後に、第N+1の元入力データについての2つのAアドレスの取得を開始することが可能である。この場合、第二変換データが出力される周期は6クロック分に短縮される。
また、上述した説明において、第2のデータ処理の変形例として、図13(B)に示すように、初めての第一変換データ出力処理300Aaの直後に、次の第一変換データ出力処理300Abを開始することが可能である。換言すれば、初めての2つのAアドレスの取得処理の直後に、次の2つのAアドレスの取得処理を開始することが可能である。この場合、初めての第一変換データ出力処理が開始されてから初めて第二変換データが取得されるまでに必要なクロックが2クロック分短縮されるものの、以後、第二変換データが出力される周期は4クロック分のままである。しかし、それでも、依然として、上述した第1のデータ処理の変形例よりは、第二変換データが出力される周期は短く、それ故、全体として、ガンマ補正部22のデータ処理がより高速になる。
なお、過去アドレス/データ記憶部には、例えば、第一変換データのみが格納されても良い。第一変換データから、連続する2つのBアドレスが求まり、且つ、それら2つのBアドレスとその第一変換データから第二変換データが求まるからである。
ところで、上述した実施例に係る第一のデータ処理と第二のデータ処理、及び各々のデータ処理の変形例を抽象的に考えると、例えば以下のようになる。
まず、第一のデータ処理の抽象例について説明する。
図14(A)に示すように、第一のデータ処理では、入出力処理Aと、別の入出力処理Bとが行われるようになっている。
入出力処理Aでは、オリジナルデータを入力して第1の一次データ500を出力するサブデータ処理aと、その第1の一次データ500を入力して第1の入出力処理結果データ600を出力するサブデータ処理bが行われる。
別の入出力処理Bでは、第2のサブデータ処理bによって出力された第1の出力データ600を入力し第2の一次データ700を出力する第3のサブデータ処理cと、その第2の一次データ700を入力して第2の入出力処理結果データ800を出力する第4のサブデータ処理dとが行われる。
また、この第一のデータ処理の抽象例では、第2の入出力結果データ800(又は第2の一次データ700)の出力直後に、別のオリジナルデータを入力して別の第1の一次データ501を出力するサブデータ処理aが行われ、それにより、その処理の直後に、その第1の一次データ501を入力して別の第1の入出力処理結果データ601を出力するサブデータ処理bが行われる。以後、各オリジナルデータ毎に、このような処理が繰返される。
上述の説明によれば、この第一のデータ処理の抽象例では、第1の一次データ500の出力と、第2の一次データ700の出力との間に、一次データが出力されない一定の空き時間(例えば、所定数のクロック分の空き時間)900が生じる。
次に、第二のデータ処理の抽象例について説明する。
図14(B)に示すように、第二のデータ処理では、第1の入出力処理と、第2の入出力処理とが行われるようになっている。
第1の入出力処理では、オリジナルデータを入力して第1の一次データ550を出力する第1のサブデータ処理と、その第1の一次データ550を入力して第1の入出力処理結果データ650を出力する第2のサブデータ処理が行われる。別の言い方をすれば、第1の一次データ550が出力されると、連鎖的に第2のサブデータ処理が行われて第1の入出力処理結果データ650が出力される。
第2の入出力処理では、第2のサブデータ処理によって出力された第1の出力データ650を入力し第2の一次データ750を出力する第3のサブデータ処理と、その第2の一次データ750を入力して第2の入出力処理結果データ850を出力する第4のサブデータ処理とが行われる。別の言い方をすれば、第2の一次データ750が出力されると、連鎖的に第4のサブデータ処理が行われて第2の入出力処理結果データ850が出力される。
この第二のデータ処理の抽象例では、第一のデータ処理では生じてしまう空き時間900が生じないように工夫されている。
すなわち、この第二のデータ処理の抽象例では、オリジナルデータについて第1の一次データ(例えば初めての第1の一次データ550)が出力された後、そのオリジナルデータについての第2の一次データが出力される前に、未処理の別のオリジナルデータについての別の第1の一次データが出力される処理が行われる。これにより、一次データが出力されない空き時間が無くなって、それ故、第2の入出力処理結果データが出力される周期が、図14(A)に例示したような第一のデータ処理の抽象例に比べて短くなり、結果として、データ処理全体の処理速度が速くなる。
以上、本発明の好適な実施例を説明したが、これらは本発明の説明のための例示であって、本発明の範囲をこの実施例にのみ限定する趣旨ではない。本発明は、他の種々の形態でも実施することが可能である。例えば、上述の実施例では、スキャナとPCを組み合わせた画像読み取りシステムに本発明を適用した例を説明したが、本発明は、複写機などの他の画像処理システムにも適用することができる。また、本発明は、上述のように2種類のルックアップテーブルに基づいて2種類のデータ入出力処理を行う場合に限らず、複数のデータ入出力処理を行う他のデータ処理装置にも適用し得る。また、上述した説明では、Aアドレスの出力とBアドレスの出力(別の言い方をすれば、第1の入出力処理と第2の入出力処理)が交互に行われているが、必ずしもそうである必要は無く、例えば、全ての元入力データについてAアドレスを出力し、それにより全てのターゲットデータについて第一変換データが出力された後に、全ての第一変換データについて順次Bアドレスの出力が開始されても良い。
本発明の一実施例による画像読み取りシステムを示すブロック図である。 本発明の一実施例に係るガンマ補正部を示すブロック図である。 本発明の一実施例に係るガンマ補正部の処理内容を示す説明図である。 本発明の一実施例に係る第一変換テーブルのアドレスと入力値との対応付けを示す表である。 本発明の一実施例に係る第二変換部の処理内容を示す説明図である。 本発明の一実施例による画像読み取りシステムで画像を入力する処理の流れを示すシーケンスチャートである。 16ビット階調の変換値を4096個格納したテーブルと線形補間とを用いて16ビット階調の入力値を16ビット階調の変換値にガンマ補正したときの補正値と理論補正値との誤差を示すグラフである。 図7の一部を拡大表示したグラフである。 16ビット階調の変換値を128個有する第一テーブルと、16ビット階調の変換値を256個有する第二テーブルとを用いた本発明の一実施例により、16ビット階調の入力値を16ビット階調の変換値にガンマ補正したときの補正値と理論補正値との誤差を示すグラフである。 図9の一部を拡大表示したグラフである。 (A)はガンマ補正の変換特性の一例を示すグラフであり、(B)はその部分拡大図である。 (A)は、ガンマ補正部における第一のデータ処理の流れを説明するための図であり、(B)は、ガンマ補正部における第二のデータ処理の流れを説明するための図。 (A)は、ガンマ補正部における第一のデータ処理流れの変形例を説明するための図であり、(B)は、ガンマ補正部における第二のデータ処理流れの変形例を説明するための図。 (A)は第一のデータ処理の抽象例を説明するための図であり、(B)は第二のデータ処理の抽象例を説明するための図である。
符号の説明
10 スキャナ
12 光源
14 光学系
16 イメージセンサ
18 AFE部
20 ディジタル画像処理部
22 ガンマ補正部
32 制御部
36 PC
50 第一変換部
52 SRAM
54 第一テーブル
56 第二テーブル
58 第二変換部
60 セレクタ
62 レジスタ

Claims (8)

  1. スキャナと情報処理装置とを有する画像読み取りシステムであって、
    前記スキャナが、
    原稿を読み取って画像データを生成するスキャン手段と、
    前記スキャン手段を制御して低解像度の画像データを生成させる低解像度スキャン制御手段と、
    前記低解像度の画像データ及び所定の第一テーブルに基づいて低解像度の第一変換データを生成する第一変換データ生成手段と、
    前記低解像度の第一変換データに基づく変換後の低解像度の画像データを前記情報処理装置へ送信する第一の送信手段と、
    前記スキャン手段を制御して高解像度の画像データを生成させる高解像度スキャン制御手段と、
    前記高解像度の画像データ及び前記第一テーブルに基づいて高解像度の第一変換データを生成し、前記高解像度の第一変換データ及び前記情報処理装置から受信した最適化テーブルに基づいて第二変換データを生成する第二変換データ生成手段と、
    前記第二変換データに基づく変換後の高解像度の画像データを前記情報処理装置へ送信する第二の送信手段と、を備え、
    前記最適化テーブルには、各変換値が格納されており、
    前記情報処理装置が、
    前記スキャナの第一の送信手段から受信した変換後の低解像度の画像データに応じた最適化テーブルを生成する最適化テーブル生成手段と、
    前記生成した最適化テーブルを前記スキャナへ送信する第三の送信手段と、を備え
    前記第一テーブルには、全入力値のうちの少なくともu(k)=a・b -k (ただし、aは正の定数、bは1未満の正の定数、k=0,1,2…m)で表される入力値:u(k)に対応するアドレスに変換値が格納されており、
    前記第一変換データ生成手段は、前記低解像度の画像データ及び所定の第一テーブルと、線形補間とを用いて、前記低解像度の第一変換データを生成する、
    画像読み取りシステム。
  2. 前記スキャナが、
    前記情報処理装置から受信した最適化テーブルを第二テーブルへ変換する変換手段、を更に備え、
    前記第二テーブルの各変換値の階調は、前記最適化テーブルに記録されている各変換値の階調よりも高い階調であり、
    前記第二テーブルには、全入力値のうち少なくともv(k)=ck+d(ただし、c、dは定数、k=0,1,2…n)で表される入力値:v(k)に対応するアドレスに、前記第一変換データに応じて設定される変換値が格納されており、
    第二変換データ生成手段は、前記最適化テーブルに代えて、前記第二テーブルに基づいて、且つ、前記高解像度の第一変換データと線形補間とを用いて、前記第二変換データを生成する、
    請求項1記載の画像読み取りシステム。
  3. 前記第二変換データ生成手段は、
    前記高解像度の画像データ及び前記第一テーブルに基づいて高解像度の第一変換データを生成する第一処理と、
    前記高解像度の第一変換データ及び前記情報処理装置から受信した最適化テーブルに基づいて第二変換データを生成する第二処理と、を連続する所定の画像データ単位で連続的に行い、
    前記所定の画像データ単位についての前記第二処理を開始する前に、前記所定の画像データ単位に続く別の画像データ単位についての前記第一処理を行う、
    請求項1記載の画像読み取りシステム。
  4. 前記スキャナは、所定周期のクロック信号を出力するクロック出力手段を更に備え、
    前記第二変換データ生成手段は、
    前記高解像度の画像データに基づいて前記第一テーブルの第一のアドレスを求める第三処理と、
    前記第一のアドレスに対応する第一のテーブルデータを前記第一テーブルから取得する第四処理と、
    前記第一のテーブルデータに基づいて前記高解像度の第一変換データを生成する第五処理と、
    前記高解像度の第一変換データに基づいて前記第二テーブルの第二のアドレスを求める第六処理と、
    前記第二のアドレスに対応する第二のテーブルデータを前記第二テーブルから取得する第七処理と、
    前記第二のテーブルデータに基づいて前記第二変換データを生成する第八処理と、を連続する所定の画像データ単位でクロック信号に同期して連続的に行い、
    N番目の画像データ単位についての前記第三処理と前記第六処理との間に、N−1番目の画像データ単位についての前記第六処理と、N+1番目の画像データ単位についての前記第三処理とを行い、且つ、前記N番目の画像データ単位についての前記第四処理と前記第七処理との間に、前記N−1番目の画像データ単位についての前記第七処理と、前記N+1番目の画像データ単位についての前記第四処理とを行い、
    N=1の場合、N−1番目の画像データ単位についての前記第六処理では、直前回に求められ記憶されている第二アドレスが取得される、
    請求項2記載の画像読み取りシステム。
  5. 原稿を読み取って画像データを生成するスキャン手段と、
    前記スキャン手段を制御して低解像度の画像データを生成させる低解像度スキャン制御手段と、
    前記低解像度の画像データ及び所定の第一テーブルに基づいて低解像度の第一変換データを生成する第一変換データ生成手段と、
    前記低解像度の第一変換データに基づく変換後の低解像度の画像データを情報処理装置へ送信する第一の送信手段と、
    前記変換後の低解像度の画像データに応じた最適化テーブルを前記情報処理装置から受信する受信手段と、
    前記スキャン手段を制御して高解像度の画像データを生成させる高解像度スキャン制御手段と、
    前記高解像度の画像データ及び前記第一テーブルに基づいて高解像度の第一変換データを生成し、前記高解像度の第一変換データ及び前記情報処理装置から受信した最適化テーブルに基づいて第二変換データを生成する第二変換データ生成手段と、
    前記第二変換データに基づく変換後の高解像度の画像データを前記情報処理装置へ送信する第二の送信手段と、
    を備え、
    前記最適化テーブルには、各変換値が格納されており
    前記第一テーブルには、全入力値のうちの少なくともu(k)=a・b -k (ただし、aは正の定数、bは1未満の正の定数、k=0,1,2…m)で表される入力値:u(k)に対応するアドレスに変換値が格納されており、
    前記第一変換データ生成手段は、前記低解像度の画像データ及び所定の第一テーブルと、線形補間とを用いて、前記低解像度の第一変換データを生成する、
    スキャナ。
  6. 前記情報処理装置から受信した最適化テーブルを第二テーブルへ変換する変換手段、を更に備え、
    前記第二テーブルの各変換値の階調は、前記最適化テーブルに記録されている各変換値の階調よりも高い階調であり、
    前記第二テーブルには、全入力値のうち少なくともv(k)=ck+d(ただし、c、dは定数、k=0,1,2…n)で表される入力値:v(k)に対応するアドレスに、前記第一変換データに応じて設定される変換値が格納されており、
    第二変換データ生成手段は、前記最適化テーブルに代えて、前記第二テーブルに基づいて、且つ、前記高解像度の第一変換データと線形補間とを用いて、前記第二変換データを生成する、
    請求項5記載のスキャナ。
  7. スキャナと情報処理装置とにより実行される画像読み取り方法であって、
    前記スキャナが、原稿を読み取って低解像度の画像データを生成し、
    前記低解像度の画像データ及び所定の第一テーブルに基づいて低解像度の第一変換データを生成し、
    前記低解像度の第一変換データに基づく変換後の低解像度の画像データを前記情報処理装置へ送信し、
    前記情報処理装置が、前記スキャナから受信した変換後の低解像度の画像データに応じた最適化テーブルを生成し、
    前記生成した最適化テーブルを前記スキャナへ送信し、
    前記スキャナが、原稿を読み取って高解像度の画像データを生成し、
    前記高解像度の画像データ及び前記第一テーブルに基づいて高解像度の第一変換データを生成し、
    前記高解像度の第一変換データ及び前記情報処理装置から受信した最適化テーブルに基づいて第二変換データを生成し、
    前記第二変換データに基づく変換後の高解像度の画像データを前記情報処理装置へ送信し、
    前記最適化テーブルには、各変換値が格納されており
    前記第一テーブルには、全入力値のうちの少なくともu(k)=a・b -k (ただし、aは正の定数、bは1未満の正の定数、k=0,1,2…m)で表される入力値:u(k)に対応するアドレスに変換値が格納されており、
    前記第一変換データ生成手段は、前記低解像度の画像データ及び所定の第一テーブルと、線形補間とを用いて、前記低解像度の第一変換データを生成する、
    画像読み取り方法。
  8. 前記スキャナが、
    前記情報処理装置から受信した最適化テーブルを第二テーブルへ変換し、
    前記最適化テーブルに代えて、前記第二テーブルに基づいて、且つ、前記高解像度の第一変換データと線形補間とを用いて、前記第二変換データを生成し、
    前記第二テーブルの各変換値の階調は、前記最適化テーブルに記録されている各変換値の階調よりも高い階調であ
    前記第二テーブルには、全入力値のうち少なくともv(k)=ck+d(ただし、c、dは定数、k=0,1,2…n)で表される入力値:v(k)に対応するアドレスに、前記第一変換データに応じて設定される変換値が格納されている、
    請求項7記載の画像読み取り方法。
JP2003316723A 2003-09-09 2003-09-09 複数のデータ入出力処理を行うデータ処理装置 Expired - Fee Related JP4311138B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003316723A JP4311138B2 (ja) 2003-09-09 2003-09-09 複数のデータ入出力処理を行うデータ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003316723A JP4311138B2 (ja) 2003-09-09 2003-09-09 複数のデータ入出力処理を行うデータ処理装置

Publications (2)

Publication Number Publication Date
JP2005086501A JP2005086501A (ja) 2005-03-31
JP4311138B2 true JP4311138B2 (ja) 2009-08-12

Family

ID=34416532

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003316723A Expired - Fee Related JP4311138B2 (ja) 2003-09-09 2003-09-09 複数のデータ入出力処理を行うデータ処理装置

Country Status (1)

Country Link
JP (1) JP4311138B2 (ja)

Also Published As

Publication number Publication date
JP2005086501A (ja) 2005-03-31

Similar Documents

Publication Publication Date Title
JP4062031B2 (ja) ガンマ補正方法、ガンマ補正装置及び画像読み取りシステム
US7612810B2 (en) Reduction of effect of image processing on image sensor
JP4892869B2 (ja) 画像圧縮装置、画像圧縮プログラム、電子カメラ、画像伸張装置、及び画像伸張プログラム
US7394579B2 (en) Data writing apparatus and image processing apparatus
EP0966150A2 (en) Image processing apparatus and image processing method, and storage media thereof
JP4311138B2 (ja) 複数のデータ入出力処理を行うデータ処理装置
KR101090059B1 (ko) 화상처리장치 및 그 쉐이딩 방법
KR950000760B1 (ko) 화상형성장치
JP5217807B2 (ja) 画像処理装置
JP3169653B2 (ja) 文書画像データの解像度及び階調変換装置
JP2003051944A (ja) 画像処理方法、画像処理システム、プログラム及び記憶媒体
JPH08226853A (ja) 赤外線熱画像装置
JP4052894B2 (ja) 撮像手段のガンマ補正方法及び装置
JP2934971B2 (ja) 画像2値化処理装置
JP2024128806A (ja) 画像処理装置、撮像装置、画像処理方法、及びプログラム
JP2004289846A (ja) 取込画像のノイズを補償するシステムおよび方法
JP3048172B2 (ja) 画像処理装置
JPH0951436A (ja) 画像処理システム及び画像処理方法
JP2007194955A (ja) 画像処理装置
JPH089173A (ja) 画像処理装置及び方法
JP2007074516A (ja) 解像度変換装置及び方法
JPH09247443A (ja) 画像読み取り装置
EP1176799A2 (en) Method and apparatus for reading images
JPH09200526A (ja) 明度補正装置、イメージスキャナ装置及びその制御方法
JPH09214755A (ja) カラー画像処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060906

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20060906

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080327

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080415

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080616

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080821

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081020

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20081209

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090209

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20090216

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

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

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

Free format text: PAYMENT UNTIL: 20120522

Year of fee payment: 3

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

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20140522

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees