画像処理システムにおけるコンピュータ及び画像処理方法、並びにプログラム
【課題】画像読取装置とPCを接続したシステムにおいて、その画像処理を主に読取装置側で行うと装置内にRAMが必要となるためコスト高となり、主にPC側で行うと、ディスプレイガンマを考慮した入出力共に8ビットによるガンマ変換に起因して、特にダーク部において階調飛びが発生する。
【解決手段】画像読取装置30内に、読み取った画像信号を8ビット階調に変換すると同時にガンマ補正を施すLUT33aを有し、コンピュータ38内に、画像読取装置30から受信した8ビット階調の画像信号を16ビットに変換する同時にガンマ補正を施すLUT33bと、該補正後の画像信号を再度8ビットに変換すると同時に出力用のガンマ補正を施すLUT33cを有する。LUT33aとLUT33cにおけるガンマ値は等しく、LUT33bにおけるガンマ値はその逆数とする。
【解決手段】画像読取装置30内に、読み取った画像信号を8ビット階調に変換すると同時にガンマ補正を施すLUT33aを有し、コンピュータ38内に、画像読取装置30から受信した8ビット階調の画像信号を16ビットに変換する同時にガンマ補正を施すLUT33bと、該補正後の画像信号を再度8ビットに変換すると同時に出力用のガンマ補正を施すLUT33cを有する。LUT33aとLUT33cにおけるガンマ値は等しく、LUT33bにおけるガンマ値はその逆数とする。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は画像処理システム及びその制御方法に関し、特に画像読取装置で読み取った画像データをホストコンピュータに転送する画像処理システムにおけるコンピュータ及び画像処理方法、並びにプログラムに関する。
【背景技術】
【0002】
図4に、従来の画像読取装置の構成例を示す。同図において、108は画像読取装置、105はホストコンピュータ(以下、PC)、107は画像読み取り装置108で読み取った画像を表示するディスプレイである。
【0003】
画像読取装置108において、101は調光制御可能な光源、102は原稿を反射、及び透過した光を結像するためのレンズ、103は結像した光を電気信号に変換する光電変換素子(以下、CCD)である。CCD103としては一般に、R,G,B3色のフィルムを各々に塗布された3ラインのCCDラインセンサが用いられる。104は画像信号を処理をする画像処理回路、106は画像読取装置全体の動作を制御するためのCPUを表す。
【0004】
図4に示す構成における画像読取動作について説明する。光源101から発せられた光は原稿を反射あるいは透過して、レンズ102で結像されてCCD103で電気信号に変換される。この信号は画像読取装置108内の画像処理回路104と、PC105において画像処理が施された後、ディスプレイ107に表示される。
【0005】
図5に、画像処理回路104の詳細構成例を示す。同図において、1はCCD、2は光電変換されたアナログ電気信号をデジタル信号に変換するA/Dコンバータ、3はRGB各色が混同して送られてきた信号を各色ごとに分けるためのラインオフセット、8aはラインオフセット3用のメモリであるRAM、4は3原色信号から輝度信号および色差信号を形成するためのマトリックス回路、5はRGB信号をモニタ表示に合わせて指数変換(以下「ガンマ補正」という)するためのガンマ補正回路を有するルックアップテーブル(以下「LUT」という)、8bはLUT5用のメモリであるRAM、6は外部に出力するためのインターフェース回路(以下「I/F」という)、8cはI/F6用のメモリであるRAMを示す。
【0006】
画像読取装置108から出力される画像データは、画像読取装置108とPC105との間のケーブルの転送速度の制限や、PC105の処理能力の制限等によって、そのサイズが大きすぎると処理速度の大幅な低下の原因となりうる。また、ディスプレイ107で表示できる階調が通常8ビットまでであることを考慮して、画像読取装置108からPC105へは8ビット階調の画像データを送信している。CCD103から送られたアナログ信号は、A/Dコンバータ2でデジタル信号に変換される段階で、通常12〜16ビットの階調に変換される。そして更にLUT5において8ビットに変換された後、PC105へと送られる。
【0007】
以上、画像読取装置108内の画像処理回路104における画像処理について説明したが、この処理の多くをPC105側において行うこともできる。この場合の構成例を図6に示す。すなわち、システムにおける画像処理を、主に画像読取装置108側において行う場合の構成例が図5であり、主にPC105側において行う場合の構成例が図6である。
【0008】
図6において、CCD103で読み取られたアナログ信号をA/Dコンバータ22でデジタル信号に変換し、I/F23を介してPC105に送信する。PC105の内部では、ラインオフセット24、マトリックス回路25を介して、LUT26でガンマ補正が施される。このガンマ補正後の画像信号がディスプレイ107に表示される。
【0009】
図6に示す構成においては、CCD103で読み取られた画像信号はA/Dコンバータ22で通常8ビットデータに変換される。該8ビットデータがI/F23を介してPC105に送られ、PC105内ではLUT26まで全て8ビットによる処理が行われる。
【発明の概要】
【発明が解決しようとする課題】
【0010】
しかしながら、上述した図5に示す構成においては、画像読取装置108内にRAMを3個備える必要があり、コストアップの要因となるという問題がある。また、安価なASICを用いた場合、読取装置108内にマトリックス機能を備えなくなる場合がある。
【0011】
一方、上述した図6に示す構成においては、画像読取装置108に搭載すべきRAMは1個で良いため、図5に示す構成と比べてコストを低く抑えることができる。しかしながら該構成においては、以下に説明する階調飛びの問題が発生する。
【0012】
ラインオフセット以降の処理を全てPC105内で行う際に、LUT26はディスプレイ107のガンマ特性に合わせて、画像読取装置108からの出力データに逆ガンマ変換を施しておく必要がある。ここで例えば、PC105がOSとしてWindows(登録商標)を用いる場合、標準ではγ=1/2.2のガンマカーブをかける。以降の説明においては、PC105のOSをWindows(登録商標)として、γ=1/2.2とする。
【0013】
図7に、8ビット画像に対してγ=1/2.2とした際の、ダーク部(0〜80/256)に対するガンマ処理結果を示す。上段のnで示す入力レベル(8,12,16ビット)に対して、8ビットの出力レベルを表す。
【0014】
図6に示す構成においては、LUT26の入出力は共に8ビットであるため、図7に示す(1)の場合に相当する。従って、1/2.2のガンマをかける際の入力レベルをnとすると、256×(n/256)1/2.2の演算によって出力レベルが得られる。例えば、レベル1の入力信号に対して1/2.2のガンマをかけると、出力レベルは21になってしまう。すなわち、0〜20の出力レベルが発生しないことになってしまう。同様に、レベル2の入力信号に対しては、出力レベルは28になる。このように、入出力8ビットの画像データに対して1/2.2のガンマをかけると、特にダークレベル周辺において、図8のヒストグラム例に示すような階調飛びが発生するという問題がある。
【0015】
尚、図5に示す構成においては、LUT5への入力は12〜16ビット、出力は8ビットであるため、図7に示す(2)または(3)の場合に相当する。従ってこの場合、上記図6のLUT26における(1)の場合に比べて、比較的階調飛びが起こりにくいものの、上述したようにRAMを3個備える必要があり、コスト高となる。
【0016】
また、図6に示す構成において画像読取装置108からPC105へ画像信号を送信する際に、8ビットでなく12〜16ビットで送れば階調飛びが発生しにくいが、転送時間が数倍にもなってしまうため、現実的とは言えない。
【0017】
本発明は上記問題を解決するためになされたものであり、処理速度を落とすことなく出力画像の階調落ちを抑制する画像処理システムにおけるコンピュータ及び画像処理方法並びにプログラムを安価に提供することを目的とする。
【課題を解決するための手段】
【0018】
上記目的を達成するための一手段として、本発明のコンピュータは以下の構成を備える。
【0019】
本発明に係るコンピュータは、画像を読み取って画像データを生成し、前記画像データに対して1より小さいガンマ係数を用いたガンマ補正を行い、該画像データより低いビット数の画像データに階調変換し、前記階調変換された画像データを生成する画像読取装置から転送された画像データを処理するコンピュータであって、
前記画像読取装置から転送された画像データに対して、前記画像読取装置のガンマ補正で用いるガンマ係数の逆数を用いたガンマ補正を行い、該転送された画像データより高いビット数の画像データに階調変換する変換手段と、
前記変換手段によって階調変換された画像データに対して、該変換された画像データより低いビット数の画像データに階調変換するとともに、ガンマ補正を施すガンマ補正手段と、
前記ガンマ補正手段によってガンマ補正された画像データを、前記コンピュータに接続されたディスプレイへ表示させる表示制御手段とを備えることを特徴とする。
【発明の効果】
【0020】
本発明によれば、処理速度を落とすことなく出力画像の階調落ちを抑制する画像処理システムを安価に提供することができる。
【図面の簡単な説明】
【0021】
【図1】本発明に係る一実施形態における画像処理システムの構成を示すブロック図である。
【図2A】ガンマリニアによる階調変換の様子を示すグラフである。
【図2B】ガンマリニアでない階調変換の様子を示すグラフである。
【図2C】逆ガンマによる階調変換の様子を示すグラフである。
【図3】本実施形態の画像読取装置をコンピュータシステムによって構成した例を示す図である。
【図4】従来の画像読取装置の構成を示すブロック図である。
【図5】従来の画像処理を主に画像読取装置側で行う際の構成例を示すブロック図である。
【図6】従来の画像処理を主にPC側で行う際の構成例を示すブロック図である。
【図7】ガンマ補正による階調変換の際の入出力データを示す表である。
【図8】階調落ちが発生した画像のヒストグラム分布例を示す図である。
【発明を実施するための形態】
【0022】
以下、本発明に係る一実施形態について、図面を参照して詳細に説明する。
【0023】
<第1実施形態>
図1は、本実施形態に係る画像処理システムの構成を示すブロック図である。同図において、30は画像読取装置、38はホストとなるPC、39は画像読取装置30で読み取った画像を表示するディスプレイである。
【0024】
画像読取装置30内において、31は結像した光を電気信号に変換するCCD、32は光電変換されたアナログ電気信号をデジタル信号に変換するA/Dコンバータ、33aはガンマ補正用のLUT、34はPC出力用のインタフェース回路(I/F)である。また、37aはLUT33a用のメモリとなるRAM、37bはI/F34用のメモリとなるRAMである。
【0025】
PC38内において、33b,cはガンマ補正用のLUT、35はRGB各色が混同して送られてきた信号を分離するためのラインオフセット、36は3原色信号から輝度信号および色差信号を形成するためのマトリックス回路である。
【0026】
以下、本実施形態における画像処理の手順について説明する。
【0027】
図1に示す構成において、CCD31で読み取られた電気信号はA/Dコンバータ32に送られて、12〜16ビットのデジタル信号に変換される。本実施形態においては便宜上、16ビット信号に変換されるとする。
【0028】
そして、該16ビット信号をPC38に転送するために、LUT33aで16ビット→8ビットへの階調変換をおこなうが、その際にリニアな変換を行うのではなく、ガンマAをかけた変換を行う。ガンマ変換後の画像データは、I/F34を介してPC38に転送される。
【0029】
PC38側においては、転送されてきた8ビット信号に対して、LUT33bで8ビット→16ビットの階調変換を行って16ビットデータに戻す。この階調変換の際に、画像読取装置30側のLUT33aでかけたガンマAの逆数である、1/Aのガンマをかける。
【0030】
そしてラインオフセット35でRGBの各色信号に分離し、マトリックス回路36でマトリックス変換を行い、LUT33cでディスプレイ39の表示特性に合わせた例えば1/2.2のガンマをかけつつ、16ビット→8ビットに階調変換を行う。以上のようにして生成された8ビット信号が、ディスプレイ39に送出されて表示される。
【0031】
以上のように、本実施形態において画像読取装置30で読み取られた画像信号は8ビット階調でPC38に転送されるが、その後、LUT33bで再び16ビット階調に変換される。これは、PC38に転送された画像信号は、LUT33cでディスプレイ39に合わせたガンマ補正を行うことによって、最終的に8ビット信号に変換されるが、この際に、上述した従来例で示したような8ビット→8ビット変換による階調落ちの発生が回避できるように、16ビットに変換して16ビット→8ビット変換を行うためである。
【0032】
画像読取装置30内のLUT33aにおいては、16ビット→8ビット変換を行う際に1以下であるガンマAをかけることによって、リニアで階調変換を行う場合に比べて、8ビット階調のダーク部に多くの階調を持たせる。これにより、ダーク部においてディテールの細かい画像が得られる。
【0033】
以下、図2A〜Cを参照して、本実施形態におけるガンマ変換の特徴について説明する。
【0034】
図2Aは、ガンマリニア(ガンマ=1)で16ビット→8ビット変換を行った場合の例、すなわち、一般的な階調変換例を示す。同図によれば、入力レベル0〜255において出力レベルがすべて0に、入力レベル256〜511においては出力レベルがすべて1に、…というように変換されている。この変換方法によれば、ダーク部分の再現性が低くなってしまう。
【0035】
図2Bは、ガンマ=1/2.2をかけて16ビット→8ビット変換を行った場合の例を示す。同図によれば、入力レベル0で出力レベルが0、入力レベル1〜3で出力レベル2、入力レベル3〜6で出力レベル3、入力レベル6〜10で出力レベル4、…というように変換されている。
【0036】
つまり、16ビット→8ビット変換の際に画像のダーク部について、図2Aに示すガンマリニアの場合は入力0〜255までは出力が全て0となるが、図2Bに示すガンマ1/2.2の場合は、その出力階調がより細かく8ビット信号に反映されることが分かる。
【0037】
そこで本実施形態においては、画像読取装置30内のLUT33aにおけるガンマ値Aとして、リニアでない値(図2Bの例では1/2.2)を用いる。このようにリニアでないガンマをかけて階調変換を行うことにより、階調の欠落が発生しにくい構成を安価に提供できる。
【0038】
図2Cは、PC38側のLUT33bにおいて8ビット→16ビット変換を行った場合の例を示す。この場合、LUT33aにおけるガンマAの逆数であるガンマ1/A(この例では2.2)をかけることによって出力をリニアに戻し、かつダーク部の階調の損失を抑えることができる。
【0039】
尚、ガンマAの値としては、PC38内のLUT33cにおいて用いられる、ディスプレイ39に応じたガンマと同じ値(例えば1/2.2)を使用することが望ましい。
【0040】
従来例でも説明したように、PC38においてはそのオペレーションシステム(OS)によって、標準とするガンマ値が変化する。代表的な例として、Windows(登録商標)の場合はγ=2.2が、Macintoshの場合はγ=1.8が標準となる。またユーザも、スキャンする原稿画像に応じてハイライト値やシャドウ値を調整する等、LUT33cで用いるガンマカーブの調節を行うため、本実施形態におけるガンマAを固定値とすることは適当でない。従って本実施形態では、LUT33cにおいてユーザ調整後のガンマ値をA1とした時、LUT33aで用いるガンマ値をA1に、LUT33bでリニアに戻す際のガンマ値を1/A1に設定する。これにより、ユーザの所望するレベル域において、階調の再現性を高めることができる。
【0041】
以上説明したように本実施形態によれば、階調変換及びガンマ補正用のLUTを、画像読取装置30側に1つ、PC38側に2つ備え、それらのガンマ値を適切に設定することによって、画像読取装置30からPC38への転送ビット幅は8ビットのままで、ダーク部における階調落ちの発生を抑制することが可能になる。また、画像読取装置30側において必要とするRAMは2個で済むため、コストを抑えることができる。また、ユーザ調整に応じた階調再現性を得ることができる。
【0042】
<第2実施形態>
上述した第1実施形態に示した画像読取装置30は、その制御部をコンピュータシステムによって構成することが可能である。該構成の一例を図3に示す。
【0043】
図3において、1200はコンピュータ(PC)である。PC1200は、CPU1201を備え、ROM1202またはハードディスク(HD)1211に記憶された、あるいはフロッピー(登録商標)ディスクドライブ(FD)1212より供給されるネットワーク印刷デバイス制御ソフトウェアを実行し、システムデバイス1204に接続される各デバイスを制御する。
【0044】
1203はRAMであり、CPU1201の主メモリ、ワークエリア等として機能する。1207はディスクコントローラ(DKC)で、ブートプログラム(起動プログラム:パソコンのハードやソフトの実行(動作)を開始するプログラム)、複数のアプリケーション、編集ファイル、ユーザファイルそしてネットワーク管理プログラム等を記憶するハードディスク(HD)1211、及びフロッピー(登録商標)ディスク(FD)1212とのアクセスを制御する。
【0045】
1208はネットワークインターフェースカード(NIC)で、本実施形態の画像読取装置を、LAN1220を介してネットワークに接続する場合に使用するものである。
【0046】
<他の実施形態>
なお、本発明は、複数の機器(例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、複写機、ファクシミリ装置など)に適用してもよい。
【0047】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体(または記録媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0048】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【符号の説明】
【0049】
30 画像読取装置
31 CCD
32 A/Dコンバータ
33a,33b,33c LUT
34 I/F
35 ラインオフセット
36 マトリックス回路
37a,37b RAM
38 PC
39 ディスプレイ
【技術分野】
【0001】
本発明は画像処理システム及びその制御方法に関し、特に画像読取装置で読み取った画像データをホストコンピュータに転送する画像処理システムにおけるコンピュータ及び画像処理方法、並びにプログラムに関する。
【背景技術】
【0002】
図4に、従来の画像読取装置の構成例を示す。同図において、108は画像読取装置、105はホストコンピュータ(以下、PC)、107は画像読み取り装置108で読み取った画像を表示するディスプレイである。
【0003】
画像読取装置108において、101は調光制御可能な光源、102は原稿を反射、及び透過した光を結像するためのレンズ、103は結像した光を電気信号に変換する光電変換素子(以下、CCD)である。CCD103としては一般に、R,G,B3色のフィルムを各々に塗布された3ラインのCCDラインセンサが用いられる。104は画像信号を処理をする画像処理回路、106は画像読取装置全体の動作を制御するためのCPUを表す。
【0004】
図4に示す構成における画像読取動作について説明する。光源101から発せられた光は原稿を反射あるいは透過して、レンズ102で結像されてCCD103で電気信号に変換される。この信号は画像読取装置108内の画像処理回路104と、PC105において画像処理が施された後、ディスプレイ107に表示される。
【0005】
図5に、画像処理回路104の詳細構成例を示す。同図において、1はCCD、2は光電変換されたアナログ電気信号をデジタル信号に変換するA/Dコンバータ、3はRGB各色が混同して送られてきた信号を各色ごとに分けるためのラインオフセット、8aはラインオフセット3用のメモリであるRAM、4は3原色信号から輝度信号および色差信号を形成するためのマトリックス回路、5はRGB信号をモニタ表示に合わせて指数変換(以下「ガンマ補正」という)するためのガンマ補正回路を有するルックアップテーブル(以下「LUT」という)、8bはLUT5用のメモリであるRAM、6は外部に出力するためのインターフェース回路(以下「I/F」という)、8cはI/F6用のメモリであるRAMを示す。
【0006】
画像読取装置108から出力される画像データは、画像読取装置108とPC105との間のケーブルの転送速度の制限や、PC105の処理能力の制限等によって、そのサイズが大きすぎると処理速度の大幅な低下の原因となりうる。また、ディスプレイ107で表示できる階調が通常8ビットまでであることを考慮して、画像読取装置108からPC105へは8ビット階調の画像データを送信している。CCD103から送られたアナログ信号は、A/Dコンバータ2でデジタル信号に変換される段階で、通常12〜16ビットの階調に変換される。そして更にLUT5において8ビットに変換された後、PC105へと送られる。
【0007】
以上、画像読取装置108内の画像処理回路104における画像処理について説明したが、この処理の多くをPC105側において行うこともできる。この場合の構成例を図6に示す。すなわち、システムにおける画像処理を、主に画像読取装置108側において行う場合の構成例が図5であり、主にPC105側において行う場合の構成例が図6である。
【0008】
図6において、CCD103で読み取られたアナログ信号をA/Dコンバータ22でデジタル信号に変換し、I/F23を介してPC105に送信する。PC105の内部では、ラインオフセット24、マトリックス回路25を介して、LUT26でガンマ補正が施される。このガンマ補正後の画像信号がディスプレイ107に表示される。
【0009】
図6に示す構成においては、CCD103で読み取られた画像信号はA/Dコンバータ22で通常8ビットデータに変換される。該8ビットデータがI/F23を介してPC105に送られ、PC105内ではLUT26まで全て8ビットによる処理が行われる。
【発明の概要】
【発明が解決しようとする課題】
【0010】
しかしながら、上述した図5に示す構成においては、画像読取装置108内にRAMを3個備える必要があり、コストアップの要因となるという問題がある。また、安価なASICを用いた場合、読取装置108内にマトリックス機能を備えなくなる場合がある。
【0011】
一方、上述した図6に示す構成においては、画像読取装置108に搭載すべきRAMは1個で良いため、図5に示す構成と比べてコストを低く抑えることができる。しかしながら該構成においては、以下に説明する階調飛びの問題が発生する。
【0012】
ラインオフセット以降の処理を全てPC105内で行う際に、LUT26はディスプレイ107のガンマ特性に合わせて、画像読取装置108からの出力データに逆ガンマ変換を施しておく必要がある。ここで例えば、PC105がOSとしてWindows(登録商標)を用いる場合、標準ではγ=1/2.2のガンマカーブをかける。以降の説明においては、PC105のOSをWindows(登録商標)として、γ=1/2.2とする。
【0013】
図7に、8ビット画像に対してγ=1/2.2とした際の、ダーク部(0〜80/256)に対するガンマ処理結果を示す。上段のnで示す入力レベル(8,12,16ビット)に対して、8ビットの出力レベルを表す。
【0014】
図6に示す構成においては、LUT26の入出力は共に8ビットであるため、図7に示す(1)の場合に相当する。従って、1/2.2のガンマをかける際の入力レベルをnとすると、256×(n/256)1/2.2の演算によって出力レベルが得られる。例えば、レベル1の入力信号に対して1/2.2のガンマをかけると、出力レベルは21になってしまう。すなわち、0〜20の出力レベルが発生しないことになってしまう。同様に、レベル2の入力信号に対しては、出力レベルは28になる。このように、入出力8ビットの画像データに対して1/2.2のガンマをかけると、特にダークレベル周辺において、図8のヒストグラム例に示すような階調飛びが発生するという問題がある。
【0015】
尚、図5に示す構成においては、LUT5への入力は12〜16ビット、出力は8ビットであるため、図7に示す(2)または(3)の場合に相当する。従ってこの場合、上記図6のLUT26における(1)の場合に比べて、比較的階調飛びが起こりにくいものの、上述したようにRAMを3個備える必要があり、コスト高となる。
【0016】
また、図6に示す構成において画像読取装置108からPC105へ画像信号を送信する際に、8ビットでなく12〜16ビットで送れば階調飛びが発生しにくいが、転送時間が数倍にもなってしまうため、現実的とは言えない。
【0017】
本発明は上記問題を解決するためになされたものであり、処理速度を落とすことなく出力画像の階調落ちを抑制する画像処理システムにおけるコンピュータ及び画像処理方法並びにプログラムを安価に提供することを目的とする。
【課題を解決するための手段】
【0018】
上記目的を達成するための一手段として、本発明のコンピュータは以下の構成を備える。
【0019】
本発明に係るコンピュータは、画像を読み取って画像データを生成し、前記画像データに対して1より小さいガンマ係数を用いたガンマ補正を行い、該画像データより低いビット数の画像データに階調変換し、前記階調変換された画像データを生成する画像読取装置から転送された画像データを処理するコンピュータであって、
前記画像読取装置から転送された画像データに対して、前記画像読取装置のガンマ補正で用いるガンマ係数の逆数を用いたガンマ補正を行い、該転送された画像データより高いビット数の画像データに階調変換する変換手段と、
前記変換手段によって階調変換された画像データに対して、該変換された画像データより低いビット数の画像データに階調変換するとともに、ガンマ補正を施すガンマ補正手段と、
前記ガンマ補正手段によってガンマ補正された画像データを、前記コンピュータに接続されたディスプレイへ表示させる表示制御手段とを備えることを特徴とする。
【発明の効果】
【0020】
本発明によれば、処理速度を落とすことなく出力画像の階調落ちを抑制する画像処理システムを安価に提供することができる。
【図面の簡単な説明】
【0021】
【図1】本発明に係る一実施形態における画像処理システムの構成を示すブロック図である。
【図2A】ガンマリニアによる階調変換の様子を示すグラフである。
【図2B】ガンマリニアでない階調変換の様子を示すグラフである。
【図2C】逆ガンマによる階調変換の様子を示すグラフである。
【図3】本実施形態の画像読取装置をコンピュータシステムによって構成した例を示す図である。
【図4】従来の画像読取装置の構成を示すブロック図である。
【図5】従来の画像処理を主に画像読取装置側で行う際の構成例を示すブロック図である。
【図6】従来の画像処理を主にPC側で行う際の構成例を示すブロック図である。
【図7】ガンマ補正による階調変換の際の入出力データを示す表である。
【図8】階調落ちが発生した画像のヒストグラム分布例を示す図である。
【発明を実施するための形態】
【0022】
以下、本発明に係る一実施形態について、図面を参照して詳細に説明する。
【0023】
<第1実施形態>
図1は、本実施形態に係る画像処理システムの構成を示すブロック図である。同図において、30は画像読取装置、38はホストとなるPC、39は画像読取装置30で読み取った画像を表示するディスプレイである。
【0024】
画像読取装置30内において、31は結像した光を電気信号に変換するCCD、32は光電変換されたアナログ電気信号をデジタル信号に変換するA/Dコンバータ、33aはガンマ補正用のLUT、34はPC出力用のインタフェース回路(I/F)である。また、37aはLUT33a用のメモリとなるRAM、37bはI/F34用のメモリとなるRAMである。
【0025】
PC38内において、33b,cはガンマ補正用のLUT、35はRGB各色が混同して送られてきた信号を分離するためのラインオフセット、36は3原色信号から輝度信号および色差信号を形成するためのマトリックス回路である。
【0026】
以下、本実施形態における画像処理の手順について説明する。
【0027】
図1に示す構成において、CCD31で読み取られた電気信号はA/Dコンバータ32に送られて、12〜16ビットのデジタル信号に変換される。本実施形態においては便宜上、16ビット信号に変換されるとする。
【0028】
そして、該16ビット信号をPC38に転送するために、LUT33aで16ビット→8ビットへの階調変換をおこなうが、その際にリニアな変換を行うのではなく、ガンマAをかけた変換を行う。ガンマ変換後の画像データは、I/F34を介してPC38に転送される。
【0029】
PC38側においては、転送されてきた8ビット信号に対して、LUT33bで8ビット→16ビットの階調変換を行って16ビットデータに戻す。この階調変換の際に、画像読取装置30側のLUT33aでかけたガンマAの逆数である、1/Aのガンマをかける。
【0030】
そしてラインオフセット35でRGBの各色信号に分離し、マトリックス回路36でマトリックス変換を行い、LUT33cでディスプレイ39の表示特性に合わせた例えば1/2.2のガンマをかけつつ、16ビット→8ビットに階調変換を行う。以上のようにして生成された8ビット信号が、ディスプレイ39に送出されて表示される。
【0031】
以上のように、本実施形態において画像読取装置30で読み取られた画像信号は8ビット階調でPC38に転送されるが、その後、LUT33bで再び16ビット階調に変換される。これは、PC38に転送された画像信号は、LUT33cでディスプレイ39に合わせたガンマ補正を行うことによって、最終的に8ビット信号に変換されるが、この際に、上述した従来例で示したような8ビット→8ビット変換による階調落ちの発生が回避できるように、16ビットに変換して16ビット→8ビット変換を行うためである。
【0032】
画像読取装置30内のLUT33aにおいては、16ビット→8ビット変換を行う際に1以下であるガンマAをかけることによって、リニアで階調変換を行う場合に比べて、8ビット階調のダーク部に多くの階調を持たせる。これにより、ダーク部においてディテールの細かい画像が得られる。
【0033】
以下、図2A〜Cを参照して、本実施形態におけるガンマ変換の特徴について説明する。
【0034】
図2Aは、ガンマリニア(ガンマ=1)で16ビット→8ビット変換を行った場合の例、すなわち、一般的な階調変換例を示す。同図によれば、入力レベル0〜255において出力レベルがすべて0に、入力レベル256〜511においては出力レベルがすべて1に、…というように変換されている。この変換方法によれば、ダーク部分の再現性が低くなってしまう。
【0035】
図2Bは、ガンマ=1/2.2をかけて16ビット→8ビット変換を行った場合の例を示す。同図によれば、入力レベル0で出力レベルが0、入力レベル1〜3で出力レベル2、入力レベル3〜6で出力レベル3、入力レベル6〜10で出力レベル4、…というように変換されている。
【0036】
つまり、16ビット→8ビット変換の際に画像のダーク部について、図2Aに示すガンマリニアの場合は入力0〜255までは出力が全て0となるが、図2Bに示すガンマ1/2.2の場合は、その出力階調がより細かく8ビット信号に反映されることが分かる。
【0037】
そこで本実施形態においては、画像読取装置30内のLUT33aにおけるガンマ値Aとして、リニアでない値(図2Bの例では1/2.2)を用いる。このようにリニアでないガンマをかけて階調変換を行うことにより、階調の欠落が発生しにくい構成を安価に提供できる。
【0038】
図2Cは、PC38側のLUT33bにおいて8ビット→16ビット変換を行った場合の例を示す。この場合、LUT33aにおけるガンマAの逆数であるガンマ1/A(この例では2.2)をかけることによって出力をリニアに戻し、かつダーク部の階調の損失を抑えることができる。
【0039】
尚、ガンマAの値としては、PC38内のLUT33cにおいて用いられる、ディスプレイ39に応じたガンマと同じ値(例えば1/2.2)を使用することが望ましい。
【0040】
従来例でも説明したように、PC38においてはそのオペレーションシステム(OS)によって、標準とするガンマ値が変化する。代表的な例として、Windows(登録商標)の場合はγ=2.2が、Macintoshの場合はγ=1.8が標準となる。またユーザも、スキャンする原稿画像に応じてハイライト値やシャドウ値を調整する等、LUT33cで用いるガンマカーブの調節を行うため、本実施形態におけるガンマAを固定値とすることは適当でない。従って本実施形態では、LUT33cにおいてユーザ調整後のガンマ値をA1とした時、LUT33aで用いるガンマ値をA1に、LUT33bでリニアに戻す際のガンマ値を1/A1に設定する。これにより、ユーザの所望するレベル域において、階調の再現性を高めることができる。
【0041】
以上説明したように本実施形態によれば、階調変換及びガンマ補正用のLUTを、画像読取装置30側に1つ、PC38側に2つ備え、それらのガンマ値を適切に設定することによって、画像読取装置30からPC38への転送ビット幅は8ビットのままで、ダーク部における階調落ちの発生を抑制することが可能になる。また、画像読取装置30側において必要とするRAMは2個で済むため、コストを抑えることができる。また、ユーザ調整に応じた階調再現性を得ることができる。
【0042】
<第2実施形態>
上述した第1実施形態に示した画像読取装置30は、その制御部をコンピュータシステムによって構成することが可能である。該構成の一例を図3に示す。
【0043】
図3において、1200はコンピュータ(PC)である。PC1200は、CPU1201を備え、ROM1202またはハードディスク(HD)1211に記憶された、あるいはフロッピー(登録商標)ディスクドライブ(FD)1212より供給されるネットワーク印刷デバイス制御ソフトウェアを実行し、システムデバイス1204に接続される各デバイスを制御する。
【0044】
1203はRAMであり、CPU1201の主メモリ、ワークエリア等として機能する。1207はディスクコントローラ(DKC)で、ブートプログラム(起動プログラム:パソコンのハードやソフトの実行(動作)を開始するプログラム)、複数のアプリケーション、編集ファイル、ユーザファイルそしてネットワーク管理プログラム等を記憶するハードディスク(HD)1211、及びフロッピー(登録商標)ディスク(FD)1212とのアクセスを制御する。
【0045】
1208はネットワークインターフェースカード(NIC)で、本実施形態の画像読取装置を、LAN1220を介してネットワークに接続する場合に使用するものである。
【0046】
<他の実施形態>
なお、本発明は、複数の機器(例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、複写機、ファクシミリ装置など)に適用してもよい。
【0047】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体(または記録媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【0048】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【符号の説明】
【0049】
30 画像読取装置
31 CCD
32 A/Dコンバータ
33a,33b,33c LUT
34 I/F
35 ラインオフセット
36 マトリックス回路
37a,37b RAM
38 PC
39 ディスプレイ
【特許請求の範囲】
【請求項1】
画像を読み取って画像データを生成し、前記画像データに対して1より小さいガンマ係数を用いたガンマ補正を行い、該画像データより低いビット数の画像データに階調変換し、前記階調変換された画像データを生成する画像読取装置から転送された画像データを処理するコンピュータであって、
前記画像読取装置から転送された画像データに対して、前記画像読取装置のガンマ補正で用いるガンマ係数の逆数を用いたガンマ補正を行い、該転送された画像データより高いビット数の画像データに階調変換する変換手段と、
前記変換手段によって階調変換された画像データに対して、該変換された画像データより低いビット数の画像データに階調変換するとともに、ガンマ補正を施すガンマ補正手段と、
前記ガンマ補正手段によってガンマ補正された画像データを、前記コンピュータに接続されたディスプレイへ表示させる表示制御手段と
を備えることを特徴とするコンピュータ。
【請求項2】
前記ガンマ補正手段で用いるガンマ係数は、前記画像読取装置のガンマ補正で用いるガンマ係数と等しいことを特徴とする請求項1に記載のコンピュータ。
【請求項3】
前記ガンマ補正手段で用いるガンマ係数は、前記変換手段のガンマ補正で用いるガンマ係数の逆数であることを特徴とする請求項1に記載のコンピュータ。
【請求項4】
前記ガンマ補正手段で用いるガンマ係数は、前記コンピュータに接続可能な前記ディスプレイのガンマ係数と等しいことを特徴とする請求項1乃至3のいずれか1項に記載のコンピュータ。
【請求項5】
画像を読み取って画像データを生成し、前記画像データに対して1より小さいガンマ係数を用いたガンマ補正を行い、該画像データより低いビット数の画像データに階調変換し、前記階調変換された画像データを生成する画像読取装置から転送された画像データを処理するコンピュータにおいて実行される画像処理方法であって、
前記コンピュータの変換手段が、前記画像読取装置から転送された画像データに対して、前記画像読取装置のガンマ補正で用いるガンマ係数の逆数を用いたガンマ補正を行い、該転送された画像データより高いビット数の画像データに階調変換する変換工程と、
前記コンピュータのガンマ補正手段が、前記変換工程によって階調変換された画像データに対して、該変換された画像データより低いビット数の画像データに階調変換するとともに、ガンマ補正を施すガンマ補正工程と、
前記コンピュータの表示制御手段が、前記ガンマ補正工程によってガンマ補正された画像データを、前記コンピュータに接続されたディスプレイへ表示させる表示制御工程と
を備えることを特徴とする画像処理方法。
【請求項6】
画像を読み取って画像データを生成し、前記画像データに対して1より小さいガンマ係数を用いたガンマ補正を行い、該画像データより低いビット数の画像データに階調変換する画像読取装置から前記階調変換された画像データを受信するコンピュータを、
前記画像読取装置から受信した階調変換された画像データに対して、前記画像読取装置のガンマ補正で用いるガンマ係数の逆数を用いたガンマ補正を行い、前記受信した階調変換された画像データより高いビット数の画像データに階調変換する変換手段、
前記変換手段によって階調変換された画像データに対して、該変換された画像データより低いビット数の画像データに階調変換するとともに、ガンマ補正を施すガンマ補正手段、
前記ガンマ補正手段によってガンマ補正された画像データを、前記コンピュータに接続されたディスプレイへ表示させる表示制御手段と
して機能させるためのプログラム。
【請求項1】
画像を読み取って画像データを生成し、前記画像データに対して1より小さいガンマ係数を用いたガンマ補正を行い、該画像データより低いビット数の画像データに階調変換し、前記階調変換された画像データを生成する画像読取装置から転送された画像データを処理するコンピュータであって、
前記画像読取装置から転送された画像データに対して、前記画像読取装置のガンマ補正で用いるガンマ係数の逆数を用いたガンマ補正を行い、該転送された画像データより高いビット数の画像データに階調変換する変換手段と、
前記変換手段によって階調変換された画像データに対して、該変換された画像データより低いビット数の画像データに階調変換するとともに、ガンマ補正を施すガンマ補正手段と、
前記ガンマ補正手段によってガンマ補正された画像データを、前記コンピュータに接続されたディスプレイへ表示させる表示制御手段と
を備えることを特徴とするコンピュータ。
【請求項2】
前記ガンマ補正手段で用いるガンマ係数は、前記画像読取装置のガンマ補正で用いるガンマ係数と等しいことを特徴とする請求項1に記載のコンピュータ。
【請求項3】
前記ガンマ補正手段で用いるガンマ係数は、前記変換手段のガンマ補正で用いるガンマ係数の逆数であることを特徴とする請求項1に記載のコンピュータ。
【請求項4】
前記ガンマ補正手段で用いるガンマ係数は、前記コンピュータに接続可能な前記ディスプレイのガンマ係数と等しいことを特徴とする請求項1乃至3のいずれか1項に記載のコンピュータ。
【請求項5】
画像を読み取って画像データを生成し、前記画像データに対して1より小さいガンマ係数を用いたガンマ補正を行い、該画像データより低いビット数の画像データに階調変換し、前記階調変換された画像データを生成する画像読取装置から転送された画像データを処理するコンピュータにおいて実行される画像処理方法であって、
前記コンピュータの変換手段が、前記画像読取装置から転送された画像データに対して、前記画像読取装置のガンマ補正で用いるガンマ係数の逆数を用いたガンマ補正を行い、該転送された画像データより高いビット数の画像データに階調変換する変換工程と、
前記コンピュータのガンマ補正手段が、前記変換工程によって階調変換された画像データに対して、該変換された画像データより低いビット数の画像データに階調変換するとともに、ガンマ補正を施すガンマ補正工程と、
前記コンピュータの表示制御手段が、前記ガンマ補正工程によってガンマ補正された画像データを、前記コンピュータに接続されたディスプレイへ表示させる表示制御工程と
を備えることを特徴とする画像処理方法。
【請求項6】
画像を読み取って画像データを生成し、前記画像データに対して1より小さいガンマ係数を用いたガンマ補正を行い、該画像データより低いビット数の画像データに階調変換する画像読取装置から前記階調変換された画像データを受信するコンピュータを、
前記画像読取装置から受信した階調変換された画像データに対して、前記画像読取装置のガンマ補正で用いるガンマ係数の逆数を用いたガンマ補正を行い、前記受信した階調変換された画像データより高いビット数の画像データに階調変換する変換手段、
前記変換手段によって階調変換された画像データに対して、該変換された画像データより低いビット数の画像データに階調変換するとともに、ガンマ補正を施すガンマ補正手段、
前記ガンマ補正手段によってガンマ補正された画像データを、前記コンピュータに接続されたディスプレイへ表示させる表示制御手段と
して機能させるためのプログラム。
【図1】
【図2A】
【図2B】
【図2C】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図2A】
【図2B】
【図2C】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【公開番号】特開2010−200382(P2010−200382A)
【公開日】平成22年9月9日(2010.9.9)
【国際特許分類】
【出願番号】特願2010−135494(P2010−135494)
【出願日】平成22年6月14日(2010.6.14)
【分割の表示】特願2001−242822(P2001−242822)の分割
【原出願日】平成13年8月9日(2001.8.9)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成22年9月9日(2010.9.9)
【国際特許分類】
【出願日】平成22年6月14日(2010.6.14)
【分割の表示】特願2001−242822(P2001−242822)の分割
【原出願日】平成13年8月9日(2001.8.9)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]