(57)【特許請求の範囲】
【請求項１】
画像中の好ましくない部分を他のパターンで置き換えることにより画像を修正する方法であって、
修正対象とする原画像を入力する段階と、
原画像の一部を置き換えるパッチ画像を入力する段階と、
パッチ画像と原画像のオーバーラップ領域を設定する段階と、
前記設定されたオーバーラップ領域のサイズに基づいてオーバーラップ領域を作成する段階と、
前記オーバーラップ領域内における前記パッチ画像と前記原画像の境界を、前記パッチ画像の画素値と前記原画像の画素値の差が最小となる画素の累積に基づいて決定する段階と、
前記決定された境界に基づいて修正された画像を出力する段階と、
を有することを特徴とする画像修正方法。
【請求項２】
修正対象とする原画像を入力する原画像入力手段と、
原画像の一部を置き換えるパッチ画像を入力するパッチ画像入力手段と、
前記パッチ画像と前記原画像のオーバーラップ領域のサイズを設定するパラメータ設定手段と、
前記設定されたオーバーラップ領域のサイズに基づいてオーバーラップ領域を作成するオーバーラップ領域作成手段と、
前記オーバーラップ領域内における前記パッチ画像と前記原画像の境界を、前記パッチ画像の画素値と前記原画像の画素値の差が最小となる画素の累積に基づいて決定する最適境界決定手段と、
前記決定された最適境界に基づいて修正された画像を出力する画像出力手段と、
を有することを特徴とする画像修正システム。
【請求項３】
コンピュータに、修正対象とする原画像を入力する段階、原画像の一部を置き換えるパッチ画像を入力する段階、パッチ画像と原画像のオーバーラップ領域を設定する段階、前記設定されたオーバーラップ領域のサイズに基づいてオーバーラップ領域を作成する段階、前記オーバーラップ領域内における前記パッチ画像と前記原画像の境界を、前記パッチ画像の画素値と前記原画像の画素値の差が最小となる画素の累積に基づいて決定する段階、処理の結果得られる画像を出力する段階を実行させるためのプログラム。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、模様を有する画像に対して、その好ましくない部分を修正するための技術に関する。
【０００２】
【従来の技術】
従来より、建材製品等の表面を装飾するものとして様々な模様画像が用いられている。このような模様画像は、撮影した画像を変形処理して作成したり、コンピュータの演算により人工的に作成したりすることにより得られている。このような模様画像の作成時においては、しばしば好ましくない部分が生じることがある。このような場合、コンピュータ上で起動するペイントソフト（描画用ソフトウェア）を利用して、置き換えたい画像を好ましくない部分に重ね合わせ、元の模様との境界を手作業で指定したり、境界をぼかしたりして置き換えている。
【０００３】
【発明が解決しようとする課題】
しかしながら、上記従来の手法により画像の一部を他の画像で置き換えた場合、その置き換えた画像の周囲の境界部分で両画像の画素値が大きく異なる。そのため、見た目には置き換えた部分がはっきりと目立つことになり、置き換えた方が逆に好ましくない画像になってしまう場合もある。境界をぼかすことにより境界が目立たなくはなるが、不自然さが残ることも多い。
【０００４】
上記のような点に鑑み、本発明は、画像の好ましくない部分を他の画像で置き換えた際に、その繋ぎ目が目立たないように馴染ませることが可能な画像修正方法およびシステムを提供することを課題とする。
【０００５】
【課題を解決するための手段】
上記課題を解決するため、本発明では、
画像中の好ましくない部分を他のパターンで置き換えることにより画像を修正する方法として、修正対象とする原画像を入力する段階、原画像の一部を置き換えるパッチ画像を入力する段階、パッチ画像と原画像のオーバーラップ領域を設定する段階、前記設定されたオーバーラップ領域のサイズに基づいてオーバーラップ領域を作成する段階、前記オーバーラップ領域内における前記パッチ画像と前記原画像の境界を、前記パッチ画像の画素値と前記原画像の画素値の差が最小となる画素の累積に基づいて決定する段階、前記決定された境界に基づいて修正された画像を出力する段階を実行するようにしたことを特徴とする。
【０００６】
本発明によれば、好ましくない部分を有する原画像にパッチ画像を貼り付ける際に、貼り付けたパッチ画像とその周囲の原画像との境界部分においてオーバーラップ領域を設定し、このオーバーラップ領域内でパッチ画像と原画像の画素値の差が最小となる画素の累積に基づいて境界を決定するようにしたので、画像の好ましくない部分を他の画像で置き換えた際に、その繋ぎ目が目立たないように馴染ませることが可能となる。
【０００７】
【発明の実施の形態】
以下、図面を参照して本発明の一実施形態について詳細に説明する。
（1.システム構成）
まず、本発明に係る画像修正システムのシステム構成について説明する。図１は、画像修正システムの一実施形態を示すシステム構成図である。図１において、１は原画像入力手段、２はパッチ画像入力手段、３はパラメータ設定手段、４は演算制御装置、４ａはオーバーラップ領域作成手段、４ｂは最適境界検出手段、５は画像出力手段である。
【０００８】
原画像入力手段１は、修正対象となる原画像を入力するためのものであり、デジタルデータの読取装置で原画像データを読取らせることにより実現される。また、原画像が紙媒体等に描画されている場合は、スキャナ、デジタルカメラ等を利用してデジタル化した後入力する。パッチ画像入力手段２は、原画像上の好ましくない部分に代えて置き換えるための画像であるパッチ画像を入力するためのものであり、原画像入力手段１と同様、デジタルデータの読取装置でパッチ画像データを読取らせることにより実現される。パラメータ設定手段３は、原画像上におけるパッチ画像の位置、最適境界決定のために原画像とパッチ画像の間のオーバーラップさせる量等のパラメータを設定するためのものであり、マウス、キーボード等の入力機器で実現される。
【０００９】
演算制御装置４は、本発明の中心的な役割を有するものであり、入力された原画像、パッチ画像、設定されたパラメータに基づいて、画像を修正することにより修正画像を作成する機能を有している。実際には、コンピュータのＣＰＵ、メモリで構成され、メモリに専用のプログラムを読込み、ＣＰＵが順次実行することにより実現される。演算制御装置４は、さらにオーバーラップ領域作成手段４ａ、最適境界検出手段４ｂを有している。オーバーラップ領域作成手段４ａは、入力されたパッチ画像のサイズおよび設定されたオーバーラップ量に基づいて、オーバーラップ領域を計算し、算出された大きさのメモリ空間を確保する機能を有している。最適境界検出手段４ｂは、オーバーラップ領域内の原画像とパッチ画像の画素値に基づいて原画像とパッチ画像の最適な境界を検出する機能を有している。オーバーラップ領域作成手段４ａ、最適境界検出手段４ｂはそれぞれ専用のプログラムをＣＰＵで実行することにより実現される。画像出力手段５は、作成された修正画像を出力する機能を有しており、画像を表示するためのディスプレイ装置、印刷するためのプリンター、データとして出力するためのハードディスク等の外部記憶装置、携帯可能な電子記録媒体への記録装置、さらにネットワークを介して遠隔地へ送信するための通信装置等が適用可能である。
【００１０】
（2.処理の流れ）
次に、本発明に係る画像修正方法について、図１に示した画像修正システムの処理動作と共に説明する。図２は本発明に係る画像修正方法の概要を示すフローチャートである。まず、原画像入力手段１より、修正する必要がある原画像を入力する（ステップＳ１）。次に、パッチ画像入力手段２より、原画像を修正するためのパッチ画像を入力する（ステップＳ２）。続いて、パラメータ設定手段３を用いて、必要なパラメータの設定を行う（ステップＳ３）。本実施形態では、パラメータとして、原画像上におけるパッチ画像の配置位置、原画像とパッチ画像のオーバーラップ量の２つを入力する。原画像上におけるパッチ画像の配置位置は、例えば、ディスプレイ装置の画面上に原画像を表示させ、その原画像上の所定の位置にカーソルを合わせてマウスでクリックすることにより指定され、画面上で指定された位置を、原画像上の画素位置に変換することにより行われる。配置位置の決定には、種々の手法が用いられるが、本実施形態では、指定した位置がパッチ画像の中央になるように配置が行われる。オーバーラップ量は、原画像とパッチ画像を互いにオーバーラップさせる量であり、このオーバーラップ量に基づいてオーバーラップ領域が決定される。オーバーラップ領域とは、原画像とパッチ画像の境界付近において、最適な境界を決定するための領域であり、この最適境界決定処理を行わないと、原画像とパッチ画像との境界部で段差が目立つことになる。本実施形態では、オーバーラップ量の設定は、１方向で原画像とパッチ画像が互いに重なり合う画素数で設定される。
【００１１】
続いて、入力されたパッチ画像のサイズ、および設定されたオーバーラップ量に基づいてオーバーラップ領域の作成を行う（ステップＳ４）。具体的には、オーバーラップ領域作成手段４ａが、コンピュータの主記憶装置内にオーバーラップ領域として必要なメモリ空間の確保を行う。このとき、パッチ画像のｘ方向の画素数ｘｐ、ｙ方向の画素数ｙｐ、オーバーラップ量がαであるとすると、ｘｐ×αの大きさの領域が２つ、ｙｐ×αの大きさの領域が２つの計４つのオーバーラップ領域が作成される。ここで、原画像ＧORI、パッチ画像ＧPAT、オーバーラップ領域の関係を図３（ａ）に示す。図３（ａ）に示すように原画像ＧORI上において、パッチ画像ＧPATの配置位置が指定されると、パッチ画像ＧPATのサイズ（画素数）ｘｐ×ｙｐ内に、網掛けで示すオーバーラップ領域が設定されることになる。このオーバーラップ領域の詳細を図３（ｂ）および図３（ｃ）に示す。パッチ画像ＧPATには、図３（ｂ）に示すようにｙｐ×αの大きさの領域ＯA、ＯC、図３（ｃ）に示すようにｘｐ×αの大きさのオーバーラップ領域ＯB、ＯDが得られることになる。図３（ｂ）および図３（ｃ）からわかるように、パッチ画像ＧPATの４隅のα×αのサイズの領域は、複数のオーバーラップ領域に属することになる。
【００１２】
オーバーラップ領域が作成されたら、次に、このオーバーラップ領域における原画像とパッチ画像の最適な境界を決定する（ステップＳ５）。具体的には、オーバーラップ領域において、原画像とパッチ画像の画素値の差の累計が最小となる最小誤差境界を求め、パッチ画像の外周の代わりに、求めた最小誤差境界を原画像とパッチ画像の境界とする処理を行う。求められた最小誤差境界が最適境界となる。
【００１３】
このような最小誤差境界の決定の手法としては、種々のものが提案されているため、 FloydやDijkstraのアルゴリズム等の周知のものを適用すれば良いが、本実施形態における手法を具体的に説明する。図４にα＝６とした場合の原画像とパッチ画像のオーバーラップ領域ＯA付近を示す。図４の例では、α＝６であるため、オーバーラップ領域ＯAには左右方向に６画素分用意されることになる。このようなパッチ画像右端のオーバーラップ領域ＯAの場合、まず、第１行目の６個の画素について、パッチ画像の画素値と原画像の画素値との比較を行う。比較の結果、両者の差が最小となる位置をその行における境界とする。この両者の差を最小とする位置の算出には、一般にＬ2距離として知られる値を用いる。例えば、ある画素Ｑにおいて、パッチ画像の画素Ｑに対応する画素値をＱP、原画像の画素Ｑに対応する画素値をＱOとすると、Ｌ2距離は、以下の〔数式１〕により算出される。
【００１４】
〔数式１〕
Ｌ2＝（ ＱP − ＱO ）2
【００１５】
オーバーラップ領域全域に渡って、この値を計算すると、この配列はちょうどそこを境界とした誤差のマップになる。したがって、この６×ｙｐ画素の領域で上端から下端に至る全ての経路について、途中の各要素のＬ2を累積していき、この累積したコストが最も小さな経路を、最も好ましい境界とするのである。なお、対象としている画像がカラーの場合は、各色に対応したチャンネルのＬ2の値の総和をとるものとする。このようにして両画素の画素値の差が最小となる位置を各行について決定していくことにより、最小誤差境界が得られる。
【００１６】
オーバーラップ領域ＯAにおいて、図５に示すような最小誤差境界が得られた場合を考えてみる。図５において、網掛けで示す画素が最小誤差境界である。この場合、最小誤差境界よりも左側にある画素は、パッチ画像の画素値を採用し、最小誤差境界よりも右側にある画素は、原画像の画素値を採用する。また、本実施形態では、最小誤差境界上に存在する画素については、パッチ画像と原画像の画素値の平均を採るものとしている。図５において、「Ｐ」で示された画素はパッチ画像の画素値が、「Ｏ」で示された画素は原画像の画素値がそれぞれ与えられることを示している。
【００１７】
最小誤差境界の求め方の概要を図６のフローチャートに示す。最小誤差境界を求めるためには、まず、第１行目の全画素（図の例では６画素）について各画素におけるＬ2値を累積コストとして記憶する（ステップＳ１１）。続いて、第２行目の各画素について、自身の左上、真上、右上の画素について、最小の累積コストを持つものを、この画素に至る最短経路として記憶すると共に、その上側の画素の累積コストに自身のＬ2値を加算したものを、自身の累積コストとして記憶する（ステップＳ１２）。このステップＳ１２の処理を最終行、図５の例では第ｙｐ行目まで繰り返す。最終行の全画素のうち、最小の累積コストを持つ画素とそこに至る経路を最小誤差境界とする（ステップＳ１３）。
【００１８】
ステップＳ５においては、他の３つのオーバーラップ領域についても同様の処理が行われる。具体的には、オーバーラップ領域ＯCについては、オーバーラップ領域と同サイズで左右対称なだけであるので、第１行目から第ｙｐ行目まで処理を行って最小誤差境界を決定し、最小誤差境界よりも左側にある画素は、原画像の画素値を採用し、最小誤差境界よりも右側にある画素は、パッチ画像の画素値を採用する。また、オーバーラップ領域ＯB、ＯDについては、オーバーラップ領域のｘとｙの方向を入れ替え、左端の列から処理を行っていく。すなわち、第１列目から第ｘｐ列目まで処理を行って最小誤差境界を決定する。そして、オーバーラップ領域ＯDについては、最小誤差境界よりも上側にある画素は、原画像の画素値を採用し、最小誤差境界線よりも下側にある画素は、パッチ画像の画素値を採用する。オーバーラップ領域ＯBについては、最小誤差境界よりも上側にある画素は、パッチ画像の画素値を採用し、最小誤差境界よりも下側にある画素は、原画像の画素値を採用する。
【００１９】
ただし、この時点では各オーバーラップ領域において最適境界を求めただけであり、図７（ａ）に示すような状態となっている。すなわち、パッチ画像の４隅にあるα×αの領域では、２つのオーバーラップ領域により２つの最適境界が定められている。そこで、この４隅の領域では、最適境界の交点を基準に最終的な最適境界を決定する。具体的には、パッチ画像の右上隅ではオーバーラップ領域ＯDにより左右方向に、オーバーラップ領域ＯAにより上下方向にそれぞれ最適境界ＢHおよびＢVが決定される。ここで、ＢHとＢVの交点Ｔを境に、ＢHの交点Ｔより左側部分およびＢVの交点Ｔより下側部分を再度接続し直して最終的な最適境界とする。このように最適境界を求めることにより、図３に示した原画像とパッチ画像の境界は、図７（ｂ）に示すような最適境界Ｂに変更されることになる。最適境界に基づいて各画素に画素値が与えられたら、画像出力手段５より修正された画像を出力する（ステップＳ６）。
【００２０】
以上のようにして最適境界を求め、この最適境界を原画像とパッチ画像との境界としたので、繋ぎ目が目立たない修正が可能となる。本発明による画像の修正は、画像の修正の必要なあらゆる分野において有用であるが、特に建材製版に利用される木目柄、抽象柄等の修正に有用である。建材製版に利用する場合、修正された画像は、所定の製版処理が行われた後、印刷が行われることになる。
【００２１】
【発明の効果】
以上、説明したように本発明によれば、修正対象とする原画像を入力し、原画像の一部を置き換えるパッチ画像を入力すると共にパッチ画像と原画像のオーバーラップ領域を設定し、設定されたオーバーラップ領域のサイズに基づいてオーバーラップ領域を作成し、オーバーラップ領域内におけるパッチ画像と原画像の境界を、パッチ画像の画素値と原画像の画素値の差が最小となる画素の累積に基づいて決定し、決定された境界に基づいて修正された画像を出力するようにしたので、画像の好ましくない部分を他の画像で置き換えた際に、その繋ぎ目が目立たないように馴染ませることが可能となるという効果を奏する。
【図面の簡単な説明】
【図１】本発明に係る画像修正システムの構成図である。
【図２】本発明に係る画像修正方法のフローチャートである。
【図３】原画像ＧORI、パッチ画像ＧPAT、オーバーラップ領域ＯA〜ＯDの関係を示す図である。
【図４】オーバーラップ領域ＯA付近を示す図である。
【図５】最適境界決定後のオーバーラップ領域ＯA付近を示す図である。
【図６】最小誤差境界の求め方の概要を示すフローチャートである。
【図７】最適境界決定後の最適境界Ｂ、原画像ＧORI、パッチ画像ＧPATの関係を示す図である。
【符号の説明】
１・・・原画像入力手段
２・・・パッチ画像入力手段
３・・・パラメータ設定手段
４・・・演算制御装置
４ａ・・・オーバーラップ領域作成手段
４ｂ・・・最適境界決定手段
５・・・画像出力手段
【図１】
0004184704.tif 000002
【図２】
0004184704.tif 000003
【図３】
0004184704.tif 000004
【図４】
0004184704.tif 000005
【図５】
0004184704.tif 000006
【図６】
0004184704.tif 000007
【図７】
0004184704.tif 000008