(57)【特許請求の範囲】
【請求項１】
カラー画像を記憶する画像記憶手段と、
この画像記憶手段から読み出されたカラー画像が表示出力されている状態において、表示画面上の任意の範囲を入力指定する指定手段と、
この指定手段によって指定された範囲に対応する前記画像記憶手段の内容から色情報をそれぞれ読み出し、この各色情報に基づいてその中間色を求める中間色生成手段と、
前記中間色生成手段によって求められた中間色に基づいて補色を生成する補色生成手段と、
前記補色生成手段によって生成した補色を用いた画像を、前記指定手段で指定された範囲に対応する前記カラー画像に合成する合成手段と、
を具備することを特徴とする画像処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、カラー画像を処理するワードプロセッサやパーソナルコンピュータ等の画像処理装置に関する。
【０００２】
【従来の技術】
一般に、パレット機能を備えた画像処理装置においては、色相、彩度、明度などでパレット上に各種の色を割り当てておき、マウス等のポインティングデバイスで任意の色を指定することによりカラー画像を修正するようにしていた。
ところで、パレットは表示画面の下部等に表示されているため、カラー画像の表示域とパレット表示域とは距離的に大きく離れている。
【０００３】
【発明が解決しようとする課題】
したがって、カラー画像とパレットとの色合わせを行う場合、距離的に離れていると、どの色に該当するかの確認が困難となり、間違った色を指定するおそれがあった。
また、近年、カラー画像の任意の１点を指定すると、その指定色をパレットに移す装置が知られているが、この種のものにおいてもパレット自体が離れているため色合わせが困難であることには変わりなく、しかも１画素から抽出した色でカラー画像を修正すると、修正部分が不自然なものとなるおそれがあった。
この発明の課題は、カラー画像が表示出力されている表示画面上において任意の範囲を指定するだけで、カラー画像にマッチした色を簡単に得ることができ、この色を用いてカラー画像を加工できるようにすることである。
一方、カラー画像に単一色の図形や文字列を合成配置する際に、カラー画像を背景とするその合成領域が明度や彩度に大きな開きがある複数の色領域にまたがっているような場合に、背景となる何れの部分にも溶け込まないような色を選び出すことは極めて困難であり、部分的には目立つが他の部分は背景に埋もれてしまうおそれがあった。
この発明の課題は、カラー画像に単一色の図形や文字列等を合成する場合に、カラー画像を背景とするその合成領域が複数の色領域にまたがっていても、背景となる何れの部分においても背景に埋もれない目立った色で図形、文字列等を合成できるようにすることである。
【０００４】
【課題を解決するための手段】
この発明の手段は次の通りである。
カラー画像を記憶する画像記憶手段と、
この画像記憶手段から読み出されたカラー画像が表示出力されている状態において、表示画面上の任意の範囲を入力指定する指定手段と、この指定手段によって指定された範囲に対応する前記画像記憶手段の内容から色情報をそれぞれ読み出し、この各色情報に基づいてその中間色を求める中間色生成手段と、前記中間色生成手段によって求められた中間色に基づいて補色を生成する補色生成手段と、前記補色生成手段によって生成した補色を用いた画像を、前記指定手段で指定された範囲に対応する前記カラー画像に合成する合成手段とを備えるものである。
したがって、指定された任意の範囲に対応するカラー画像の各色情報に基づいてその中間色を求めこの中間色に基づいて補色を生成し、その補色を用いた画像を指定された範囲に対応するカラー画像に合成することができる。
【０００５】
【発明の実施の形態】
（第１実施形態）
以下、図１〜図６を参照してこの発明の第１実施形態を説明する。
図１は画像処理装置のブロック構成図である。
ＣＰＵ１は内部記憶装置２内のプログラムにしたがってこの画像処理装置の全体動作を制御する中央演算処理装置である。内部記憶装置２はＲＡＭ、キャッシュメモリ等から成り、記憶媒体制御部９に装着された記憶媒体１０もしくは記憶装置３から呼び出されたプログラムやデータが内部記憶装置２にロードされる。また、記憶装置３は磁気的／光学的記憶媒体もしくは半導体メモリで構成され、記憶媒体１０は着脱自在に装着するメモリカードやフロッピーディスク、拡張ボード等であってもよい。また、通信回線を介して他の機器から送信されて来たプログラムやデータを受信して記憶するものであってもよい。
【０００６】
また、ＣＰＵ１にはその周辺入出力デバイスとしてキー入力部４、画像入力装置５、ポインティングデバイス６、カラー表示部７、印字部８がそれぞれ接続されており、ＣＰＵ１はそれらの入出力動作を制御する。キー入力部４は文字列データや各種のコマンドを入力するもので、ＣＰＵ１はキー入力部４から画像入力処理が指示されると、入力されたカラー画像を内部記憶装置２内の画像メモリ２−１に格納すると共に、カラー表示部７に表示出力させる。画像入力装置５はカラー画像を外部供給するデジタルカメラやイメージスキャナである。また、ポインティングデバイス６としてのマウスをドラッグすると、マウスカーソルはそれに応じて移動するが、その際、後述する色合せ処理が指定されている場合において、マウスカーソルは表示画面上のカラー画像に応じて着色されると共に、カーソルの色はその移動に伴って刻々変わってゆき、これによってカラー画像の色に合致するかの色合せを行うことができるようになっている。
【０００７】
内部記憶装置２は画像メモリ２−１、位置レジスタ２−２、色レジスタ２−３、テンポラリレジスタ２−４、ドット数カウンタ２−５、カーソルパターンメモリ２−６、ワークメモリ２−７、軌跡レジスタ２−８等を有し、画像メモリ２−１はキー入力部４やポインティングデバイス６を使用することによって入力作成されたカラー画像あるいは外部記憶装置３や画像入力装置５から外部供給されたカラー画像をＲＧＢ画像データとして記憶するメモリで、その内容はカラー表示部７に表示出力されたり、外部記憶装置３にセーブされる。位置レジスタ２−２はポインティングデバイス６の指定位置にマウスカーソルを表示させるための位置情報を記憶するもので、ポインティングデバイス６の移動に伴ってその内容は書き替えられる。
【０００８】
色レジスタ２−３は色合せ処理時にマウスカーソル表示用として使用されるもので、カーソルを着色するための色情報（ＲＧＢ値）を記憶する。ここで、色合せ処理は画像メモリ２−１の内容が表示画面上に出力されている状態において、マウスのドラッグ操作によってマウスカーソルが１ドット移動する毎にその位置に対応する色情報をそれぞれ読み出してテンポラリレジスタ２−４に蓄積すると共に、テンポラリレジスタ２−４内の各色情報に基づいてそれらを平均化した平均色を求めて色レジスタ２−３にセットする動作を繰り返すもので、これによって色レジスタ２−３には平均化された色がリアルタイムでセットされるため、マウスカーソルの色が刻々変化してゆくことになる。
ドット数カウンタ２−５は色合せ処理時に、マウスカーソルの移動量（ドラッグ時のドット数）を計数するもので、テンポラリレジスタ２−４内に各色情報を平均化する際にドット数カウンタ２−５の値が用いられる。
カーソルパターンメモリ２−６はマウスカーソルの形状パターンとしてその輪郭データを記憶する。ここで、色合せ処理時においては、マウスカーソルの輪郭を黒色表示する輪郭付きカーソルを表示させるか、輪郭を省いた色のみのカーソルを表示させるかをキー入力によって任意に指定できるようになっており、ＣＰＵ１は指定された表示形態でカーソル表示を行う。
ワークメモリ２−７は色合せ処理によって決定された色レジスタ２−３内の平均色が画像加工色として退避されるもので、ＣＰＵ１はこのワークメモリ２−７内の加工色に用いてカラー画像を加工する。
軌跡レジスタ２−８は画像加工時にカラー画像のどの範囲を加工対象とするかを指示するためにドラッグされた軌跡上の座標列を記憶するもので、ＣＰＵ１はこのドラッグ軌跡で示される範囲内をワークメモリ２−７に退避されている加工色で加工する。
【０００９】
次に、この画像処理装置の動作を図２および図５に示すフローチャートを参照して説明する。なお、このフローチャートに記述されている各機能を実現するためのプログラムは、ＣＰＵ１が読み取り可能なプログラムコードの形態で、内部記憶装置２に固定的に記憶されているか、記憶媒体制御部９に装着された記憶媒体１０から、もしくは記憶媒体制御部９を介して記憶媒体１０から予め転送記憶されている記憶装置３から内部記憶装置２にロードされている。
図２は色合せ処理時の動作を示したフローチャートで、マウスボタンの押下で実行開始される。
【００１０】
先ず、ＣＰＵ１はマウスカーソルの現在位置を位置レジスタ２−２から読み出し（ステップＡ１）、画像メモリ２−１からその対応位置の色情報を取得し（ステップＡ２）、テンポラリレジスタ２−４および色レジスタ２−３にそれぞれセットする（ステップＡ３）。そして、マウスカーソルの輪郭を表示させるか否かの指定有無をチェックし（ステップＡ４）、輪郭表示の指定があれば、カーソルパターンメモリ２−６から輪郭付きカーソルパターンを選択するが（ステップＡ５）、輪郭表示の指定が無ければ、輪郭無しのカーソルパターンを選択する（ステップＡ６）。そして、選択されたカーソルパターンおよび色レジスタ２−３内の色情報にしたがってマウスカーソルを位置レジスタ２−２が差し示す位置に表示出力させる。したがって、マウスボタンを押下した時点においては、カラー画像から取得したその位置の色情報が色レジスタ２−３にセットされるので、マウスカーソルは当該位置のカラー画像と同様の色で着色されることになる。
【００１１】
次に、ＣＰＵ１はマウスカーソルの現在位置を取得すると共に（ステップＡ８）、位置レジスタ２−２の値を読み出し（ステップＡ９）、それらを比較することによってマウスカーソルの位置が前回より変化したかをチェックする（ステップＡ１０）。ここで、マウスカーソルが移動しなければ、ステップＡ１８に進み、マウスボタンが解除されたかを調べ、解除されず、押下されたままであれば、ステップＡ８に戻り、以下、マウスカーソルの位置が変化するまで上述のループを繰り返す待機状態となる。
【００１２】
ここで、マウスカーソルの移動が検出されると（ステップＡ１０）、ＣＰＵ１は位置レジスタ２−２の値を更新すると共に（ステップＡ１１）、画像メモリ２−１からその位置に対応する色情報を取得し（ステップＡ１２）、テンポラリレジスタ２−４に格納する（ステップＡ１３）。そして、ドット数カウンタ２−５の値をプラス「１」してその値を更新する（ステップＡ１４）。ここで、ドット数カウンタ２−５にはその初期値として「１」がセットされているので、その値は「２」に更新される。次にＣＰＵ１はテンポラリレジスタ２−４およびドット数カウンタ２−５の内容に基づいて平均色を求める生成処理を行う（ステップＡ１５）。
すなわち、図３（Ａ）は平均色生成処理を示した図で、テンポラリレジスタ２−４にはそれまで取得した各ドット毎の色情報が蓄積されているので、ＣＰＵ１は色情報をＲＧＢ毎に加算すると共に、ＲＧＢ毎の加算結果をドット数カウンタ２−５の値でそれぞれ除算することによりそれらを平均化したＲＧＢの平均値を求め（ステップＡ１５）、これを色レジスタ２−３にセットする（ステップＡ１６）。
【００１３】
このようにして色レジスタ２−３に平均色がセットされると、選択されたカーソルパターンおよび色レジスタ２−３内の平均色でカーソル表示が行われる（ステップＡ１７）。このような動作はマウスボタンが解除される間で繰り返される（ステップＡ１８）。ここで、マウスボタンを解除すると（ステップＡ１８）、ＣＰＵ１は色レジスタ２−３内の平均色を画像加工色として決定してワークメモリ２−７に退避すると共に（ステップＡ１９）、テンポラリレジスタ２−４の内容を全てクリアする（ステップＡ２０）。
【００１４】
以上のようにポインティングデバイス６であるマウスをドラッグすると、マウスカーソルが１ドット移動する毎に画像メモリ２−１からの色情報に基づいてその平均色が求められて色レジスタ２−３にセットされるので、マウスカーソルの色が刻々変化してゆくことになり、カラー画像の色と合致するかの色合せが容易なものとなる。図３（Ｂ）はこの場合の表示例で、輪郭有りが指定されている場合のカーソルを示している。なお、輪郭無しが指定されている場合には、輪郭表示が省略されるため、色合せを更に正確に行うことが可能となる。すなわち、図４（Ａ）に示す輪郭付きカーソルに比べ、輪郭無しカーソルは図４（Ｂ）に示すように、カラー画像とカーソルとが輪郭によって区切られず、カラー画像に溶け込んだ表示状態となるため、カラー画像の色と合致するかの確認がより一層容易なものとなる。
【００１５】
図５は上述のようにして決定された画像加工色を用いてカラー画像内の汚れ等を消去する場合の画像加工処理を示したフローチャートである。図６はこの場合の様子を示したもので、例えば、カラー画像の一部分に汚れが存在する場合に、汚れた部分を消去対象画像として指定するために、その画像を囲むようにマウスのドラッグ操作で修正範囲を指定する。ここで、汚れた部分は黒系統の色、その周囲は青系統の色とする。
先ず、マウスボタンが押下されると（ステップＢ１）、位置レジスタ２−２内の位置情報を読み出してこれを軌跡レジスタ２−８にセットする（ステップＢ２）。そして、マウスカーソルの現在位置と位置レジスタ２−２内の位置情報とを比較してマウスカーソルの位置が変化したかをチェックする（ステップＢ３）。いま、マウスカーソルが移動されると、位置レジスタ２−２の値を更新してその値を軌跡レジスタ２−８にセットする（ステップＢ４）。このような動作はマウスボタンが解除されるまで繰り返される結果（ステップＢ５）、軌跡レジスタ２−８にはドラッグ軌跡にしたがってその座標列が順次格納されてゆく。
【００１６】
ここで、マウスボタンが解除されると、ドラッグ軌跡上の全色は平均色に類似するかをチェックする（ステップＢ６）。すなわち、ＣＰＵ１は軌跡レジスタ２−８をアクセスしてドラッグ軌跡の各ドットに対応する座標情報を読み出し、その位置の色情報を画像メモリ２−１から順次読み出す。そして、ワークメモリ２−７に退避しておいた平均色（画像加工色）と画像メモリ２−１から読み出した色情報とを比較し、類似色かを調べる動作をドラッグ軌跡上の全色について繰り返す。ここで、図６に示すように、修正時のドラッグ軌跡が消去対象画像を横切ってしまったような場合には、当該部分は類似色でないと判定される。すると、比類似部分のドラッグ軌跡は、類似色が含まれる領域まで拡張される（ステップＢ７）。図６にはこの場合の拡張領域が示されている。
【００１７】
このようにして拡張されたドラッグ軌跡を画像修正領域として決定し、この修正領域における輪郭線上の各点毎にその色情報を色レジスタ２−３からそれぞれ読み出す（ステップＢ８）。そして、色レジスタ２−３から取得した色情報を修正領域の輪郭線上に配置すると共に、修正領域の中心部にワークメモリ２−７内の平均色を配置して修正領域全体にグラデーション処理を施し（ステップＢ９）、その処理結果にしたがって画像メモリ２−１の内容を書き替える（ステップＢ１０）。
これによって汚れ等の消去対象画像は、その周囲の色に馴む平均色によって消去されると共に、その境界部分からその中心部に向かってグラデーション処理が施されるため、不自然さがない良好な消去が可能となる。
なお、図５はカラー画像内の汚れを消去する画像修正処理を示したが、カラー画像を新規作成する場合にも平均色によって指定領域内を着色することができる。
【００１８】
（第２実施形態）
以下、図７、図８を参照してこの発明の第２実施形態を説明する。
この第２実施形態はカラー画像に図形や文字列等を合成配置する際に、上述のようにして求められた平均色に基づいてその補色を生成し、この補色を用いて図形や文字列を着色してカラー画像に合成するようにしたものである。図７は画像合成処理を示したフローチャートであり、図２に示したフローチャートと同様の部分は図示省略し、特徴部分のみを示したものである。
【００１９】
先ず、ＣＰＵ１はマウスボタンが押下されると（ステップＣ１）、位置レジスタ２−２内の位置情報を読み出してこれを軌跡レジスタ２−８にセットする（ステップＣ２）。そして、図３のステップＡ２〜Ａ１７と同様の色合せ処理が行われ、マウスカーソルはその移動に伴ってその色が刻々変化してゆくことになる。次に、ステップＣ５に進み、マウスボタンが解除されたかを調べ、ドラッグ中であれば、位置レジスタ２−２内の位置情報を軌跡レジスタ２−８にセットしたのち（ステップＣ６）、色合せ処理（ステップＣ４）に戻る（図３のステップＡ８）。
ここで、マウスボタンが解除されると、位置レジスタ２−２から平均色を取り込み、この平均色を反転させてその補色を求める（ステップＣ７）。この場合、平均色のＲＧＢ値を反転させることで（この補数をとるこで）、補色を生成する。次に、軌跡レジスタ２−８から座標列を取り込み、この座標列で示されるドラッグ軌跡上に入力文字列のアウトラインフォントを配置すると共に（ステップＣ８）、この入力文字列にステップＣ７で求めた補色を付加する（ステップＣ９）。そして、カラー画像にこの入力文字列を合成して表示出力させる（ステップＣ１０）。
【００２０】
図８はこの場合の様子を示したもので、図８（Ａ）はドラッグ軌跡を示し、（Ｂ）はドラッグ軌跡上に合成配置された入力文字列を示している。ここで、表示画面上の任意の範囲を入力指定するためにドラッグ操作を行うと、ドラッグ軌跡上の各色情報からその平均色が求められ、マウスカーソルの移動に伴ってその色が徐々に変化してゆくことは、上記第１実施形態と同様である。そして、マウスボタンを解除すると、平均色に基づいてその補色が生成され、全体をこの補色によって着色した入力文字列がドラッグ軌跡上に合成配置される。
したがって、カラー画像に単一色の図形や文字列等を合成する場合に、カラー画像を背景とするその合成領域が複数の色領域にまたがっていても、背景となる何れの部分においても背景に埋もれない目立った色で図形、文字列等を合成配置することができる。また、色合せ時にドラッグされた指定範囲をそのまま画像合成範囲とすることができる。
【００２１】
なお、上述した各実施形態においてはポインティングデバイス６としてマウスで表示画面上をドラッグするようにしたが、例えば、図９に示すように、表示画面上の任意の矩形領域を範囲指定するために、その左上と右下の２点をポインティングカーソルで指定するようにしてもよい。この場合、指定された矩形領域内の各色情報からその平均色が求められる。ここで、矩形領域の右下位置を指定するためにポインティングデバイスをその位置に移動した際に、平均色を求めてカーソルをその色に変更するようにしてもよい。
【００２２】
また、図１０に示すように予め決められている複数の部品を組み合せることによって作成されたカラー画像において、この画像を構成する任意の部品を指定すると、当該部品を形造る輪郭を抽出し、この輪郭内の色情報からその平均色を求めるようにしてもよい。ここで、任意の部品を指定する場合には、図１０に示すようにその部品位置をポインティングカーソルで一点指定すればよい。図１０は顔の輪郭を形造る部品を指定した場合であり、ポインティングカーソルは当該部品を指定した際に、顔の輪郭内の各色情報から求められた平均色によって表示される。
【００２３】
また、上述した各実施形態においては、ポインティングデバイスとしてマウスを例に挙げたが、ペン状のポインティングデバイスの一部（例えば、ペン先部）にカラー液晶パネルを設け、この液晶パネルに平均色を表示するようにしてもよい。
更に、上述した各実施形態においては平均色を求めるようにしたが、カラー画像から取得した各色情報に基づいてその中間色の中から明度や彩度が一方に偏った色を求めるようにしてもよい。
【００２４】
従って、この発明によれば、指定された任意の範囲に対応するカラー画像の各色情報に基づいてその中間色を求めこの中間色に基づいて補色を生成し、その補色を用いた画像を指定された範囲に対応するカラー画像に合成することができるため、カラー画像に図形や文字列等を合成する場合に、合成する範囲が複数の色領域にまたがっていても、背景となる何れの部分においても背景に埋もれることのない目立った色で図形、文字列等を合成することができる。
【図面の簡単な説明】
【図１】画像処理装置のブロック構成図。
【図２】色合せ処理時のマウスボタン押下で実行開始される動作を示したフローチャート。
【図３】（Ａ）は平均色生成処理を説明するための図、（Ｂ）はドラッグ操作によってマウスカーソルが移動される毎に平均色によってマウスカーソルの色が刻々変化する様子を示した図。
【図４】（Ａ）は輪郭付きカーソル、（Ｂ）は輪郭無しのカーソル表示例を示した図。
【図５】平均色を用いてカラー画像を修正する画像加工処理を示したフローチャート。
【図６】画像加工処理を説明するための図。
【図７】第２実施形態を説明するための図で、カラー画像に入力文字列を合成配置する際の画像合成処理を示した図。
【図８】画像合成処理を説明するための図で、（Ａ）はドラッグ時、（Ｂ）は入力文字列を合成配置したときの表示状態図。
【図９】範囲指定時の他の例を示した図。
【図１０】範囲指定時の更に他の例を示した図。
【符号の説明】
１  ＣＰＵ
２  内部記憶装置
２−１  画像メモリ
２−２  位置レジスタ
２−３  色レジスタ
２−４  テンポラリレジスタ
２−５  ドット数カウンタ
２−６  カーソルパターンメモリ
２−８  軌跡レジスタ
３  記憶装置
４  キー入力部
５  画像入力装置
６  ポインティングデバイス
７  カラー表示部
【図１】
0003769823.tif 000002
【図２】
0003769823.tif 000003
【図３】
0003769823.tif 000004
【図４】
0003769823.tif 000005
【図５】
0003769823.tif 000006
【図６】
0003769823.tif 000007
【図７】
0003769823.tif 000008
【図８】
0003769823.tif 000009
【図９】
0003769823.tif 000010
【図１０】
0003769823.tif 000011