(57)【特許請求の範囲】
【請求項１】
原画像の画像情報を読み取る原画像データ読み取り手段と、
前記原画像データ読み取り手段により読み取られた原画像データの画素をコンピュータ等で処理可能な単位のピクセルの集合体とし、この各ピクセルを基準外形枠を座標軸とする整数のメッシュ座標とした後に、その座標軸の最大値を１としたパラメータ座標に展開するパラメータ座標形成手段と、
少なくとも関数により記述可能とされる所望の形状に変形された基準外形枠としての変形外形枠の形状を読み取る変形外形枠形状読み取り手段と、
前記変形外形枠形状読み取り手段により読み取られた前記変形外形枠の輪郭の画素をコンピュータ等で処理可能な単位のピクセルの集合体とし、この各ピクセルで形成された変形外形枠を座標軸とする実座標とした後に、その実座標軸の最大値を１とした変形パラメータ座標に展開する変形パラメータ座標形成手段と、
前記変形パラメータ座標形成手段により前記各ピクセルのパラメータ座標値を前記変形パラメータ座標における変形パラメータ座標値に変換した後に、前記変形外形枠の実座標上にフロートメッシュ座標として展開する実座標算出手段と、
前記変形外形枠の実座標上にフロートメッシュ座標として展開された各ピクセルを複数のバンドに列分割するとともにこれらの各バンドを行分割して、前記変形外形枠内の領域を所望の４点のピクセルにて構成される変形処理最小単位に分割する画像変形描画単位設定手段と、
前記変形処理最小単位を構成する４点のピクセルのうちの所定の１つのピクセルの原画の画像濃度値を取得する原画像濃度値取得手段と、
前記原画像濃度値取得手段によって取得された前記濃度値によって前記変形処理最小単位を塗りつぶす画像描画手段と、
を有することを特徴とする画像データ編集装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、コンピュータおよび複写機などの画像編集装置に係り、特に、階調を有するモノクロ写真あるいはカラー写真などの原画像の画像データを読み込んで所定の形状に変形させるのに好適な画像編集装置に関する。
【０００２】
【従来の技術】
一般に、文字、図形等の原画像の形状を読み取り、これを原画像データとしてコンピュータ等に取り込み、この原画像データを所望の形状に変形させ、ＣＲＴ、プロッタ等の出力装置で描画したり、ＦＤ等の記憶媒体に記録したりする画像データ編集が盛んに行なわれている。
【０００３】
このような従来の画像データ編集を行なう場合には、図示しない略矩形の原画像を、図２５に示すような形状に変形させる射影変形が多用されている。
【０００４】
【発明が解決しようとする課題】
しかしながら、前述した従来の射影変形を用いた画像データ編集においては、変形後の画像が変形方向に徐々に大きくなるとともに、変形方向の先端側に大きな空間が形成され、変形後の画像の品質が劣るという問題点があった。また、このような従来の射影変形を用いた原画像の画像データ編集においては、曲線形状への変形ができないという問題点があった。
【０００５】
このような問題点に対処するために、本出願人は、特願平４−２６４８５８号に記載した画像データ編集装置および方法を提案した。
【０００６】
しかしながら、この特願平４−２６４８５８号に記載した画像データ編集装置は、文字や図形などの２値化可能な原画像の画像データ（ベクトルデータ）を曲線形状に変形することを対象としたものであるため、さらに画像データとして深さの画像情報（濃度値）を有する点（画素：ピクセル）の集合により構成されているところの階調を有するモノクロ写真あるいはカラー写真などを曲線形状に良好に変形することのできるものが望まれていた。
【０００８】
本発明はこれらの点に鑑みてなされたものであり、階調を有するモノクロ写真あるいはカラー写真などの原画像の形状を自在に変形可能とする画像編集装置を提供することを目的とする。
【０００９】
【課題を解決するための手段】
前述した目的を達成するため請求項１に記載の本発明の画像データ編集装置は、原画像の画像情報を読み取る原画像データ読み取り手段と、前記原画像データ読み取り手段により読み取られた原画像データの画素をコンピュータ等で処理可能な単位のピクセルの集合体とし、この各ピクセルを基準外形枠を座標軸とする整数のメッシュ座標とした後に、その座標軸の最大値を１としたパラメータ座標に展開するパラメータ座標形成手段と、少なくとも関数により記述可能とされる所望の形状に変形された基準外形枠としての変形外形枠の形状を読み取る変形外形枠形状読み取り手段と、前記変形外形枠形状読み取り手段により読み取られた前記変形外形枠の輪郭の画素をコンピュータ等で処理可能な単位のピクセルの集合体とし、この各ピクセルで形成された変形外形枠を座標軸とする実座標とした後に、その実座標軸の最大値を１とした変形パラメータ座標に展開する変形パラメータ座標形成手段と、前記変形パラメータ座標形成手段により前記各ピクセルのパラメータ座標値を前記変形パラメータ座標における変形パラメータ座標値に変換した後に、前記変形外形枠の実座標上にフロートメッシュ座標として展開する実座標算出手段と、前記変形外形枠の実座標上にフロートメッシュ座標として展開された各ピクセルを複数のバンドに列分割するとともにこれらの各バンドを行分割して、前記変形外形枠内の領域を所望の４点のピクセルにて構成される変形処理最小単位に分割する画像変形描画単位設定手段と、前記変形処理最小単位を構成する４点のピクセルのうちの所定の１つのピクセルの原画の画像濃度値を取得する原画像濃度値取得手段と、前記原画像濃度値取得手段によって取得された前記濃度値によって前記変形処理最小単位を塗りつぶす画像描画手段とを有することを特徴としている。
【００１０】
そして、このような構成を採用したことにより、原画像を所定の基準外形枠内に収納し、原画像の基準外形枠に対する相対位置を決定することができる。そして、前記基準外形枠を所望の形状の変形外形枠に変形させると、その変形外形枠に従って原画像の基準外形枠に対する相対位置と同一の位置関係を保持させた状態で変形外形枠内に原画像を変形させるとともに、変形外形枠内に原画像の濃度値を付与させることができる。
【００１１】
【発明の実施の形態】
以下、本発明の実施形態を図１から図２４を参照して説明する。
【００１２】
本実施形態は、本発明による画像データ編集装置を、写真原稿を変形させる（写真変形）場合に用いたものであり、図１は画像データ編集装置の要部の構成を示すブロック図である。
【００１３】
図１に示すように、本実施形態の画像データ編集装置１は、原画像データ読み取り手段２と、パラメータ座標形成手段３と、変形外形枠形状読み取り手段４と、変形パラメータ座標形成手段５と、実座標算出手段６と、画像変形描画単位設定手段７と、原画像濃度値取得手段８と、画像描画手段９とにより形成されている。
【００１４】
つぎに、各部の構成をさらに説明すると、前記原画像データ読み取り手段２は、例えば長方形状をした写真等の原画たる原画像の画像情報（原画像データ）としての画素および画素属性（濃度値）などを読み取り適宜なメモリ等へ記憶させるスキャナ、メモリ、ＣＰＵ等（図示せず）から形成されている。したがって、原画をスキャナなどの原画像データ読み取り手段２で読み取ると、読み取られた原画像の各ドット（画素）の画像情報は、従来公知の如く、直交座標上の座標データとして原画像データ読み取り手段２のメモリに記憶されることになる。
【００１５】
また、前記パラメータ座標形成手段３は、前記原画像データ読み取り手段２により読み取られた原画像データの画素を図示しないコンピュータなどで処理可能な単位のピクセルの集合体とし、この各ピクセルを矩形の基準外形枠を座標軸とする整数のメッシュ座標として適宜なメモリ等に記憶させた後に、その座標軸の最大値を１としたパラメータ座標に展開し、適宜なメモリ等に記憶させるメモリ、ＣＰＵ等（図示せず）から形成されている。つまり、パラメータ座標形成手段３は、原画像データ読み取り手段２により読み取られた原画像データの画素をコンピュータで処理可能な単位のピクセルの集合体とし、これらのピクセルを略矩形の基準外形枠を座標軸とする整数のメッシュ座標として前記基準外形枠に収納し、この基準外形枠に収納した各ピクセルの座標軸を前記基準外形枠の座標軸の原点から座標軸毎に最も離間した位置のピクセルの座標値をそれぞれ１とするパラメータ座標値に変換して前記メッシュ座標上の各ピクセルを座標軸の最大値を１とする略矩形のパラメータ座標に展開するようになっている。なお、コンピュータなどで処理可能な単位のピクセルとするのは、従来公知の如く、例えば、コンピュータがディスプレイ上で独立してコントロールできる最小単位が８ビット単位である場合には、原画像データの直交座標上におけるＸおよびＹ軸方向のそれぞれ８画素（ドット）を１ピクセルとする。もちろん、コンピュータがディスプレイ上で独立してコントロールできる最小単位が１ビットである場合には、読み取られた原画像データの１ビットが１ピクセルとなる。したがって、パラメータ座標においては、座標軸の原点から最も離間した座標値が１となる。更に説明すれば、「コンピュータで処理可能な単位」とは、ＣＣＤスキャナやデジタルカメラからの入力データのような、画像の１点１点に対応する濃度情報やカラー情報のことをいう。具体的には、メモリに格納された画像要素（ピクセル）の持つ位置データおよびその位置に対応する色情報（または濃淡情報）データのことである。例えば２５６の段階をもつ白黒で表現する場合には、各画像の１点１点に対応する８ビットのデータが必要であり、カラー画像において１６７０万色（正確には１６７７２１５色）を表現するためには画像の１点１点に対応するＲ：８ビット、Ｇ：８ビット、Ｂ：８ビットの３バイトのデータが必要となる。そして、ピクセルとはこの１点１点に対応したデータのことをいう。例えば縦横が２５６で表される場合、画像の位置に対応する（ｘ、ｙ）座標データは、各々８ビットのコンピュータで処理可能なデータとして扱うことができる。また、この位置情報に対応する色成分のデータは、コンピュータで扱うことのできる８ビット×３のデータとして扱うことができる。
【００１６】
また、前記変形外形枠形状読み取り手段４は、少なくとも関数、例えば３次ベジエ関数等により記述可能とされる所望の形状に変形された基準外形枠としての変形外形枠の画像データ（形状データ）としての画素を図示しないスキャナ等により読み取ったり、予め与えられた複数の所望の変形外形枠から選択することにより適宜なメモリ等に記憶させるスキャナ、メモリ、ＣＰＵ等（図示せず）から形成されている。
【００１７】
また、前記変形パラメータ座標形成手段５は、前記変形外形枠形状読み取り手段４により読み取られた変形外形枠の形状データ（輪郭）の画素をコンピュータ等で処理可能な単位のピクセルの集合体とし、このピクセルにより形成された変形外形枠（輪郭）を座標軸とする実座標として適宜なメモリ等に記憶させた後に、その実座標軸の最大値を１とした変形パラメータ座標に展開し、適宜なメモリ等に記憶させるメモリ、ＣＰＵ等（図示せず）から形成されている。つまり、変形パラメータ座標形成手段５は、前記基準外形枠を変形外形枠に変形させてこの変形外形枠を座標軸とする実座標として適宜なメモリ等に記憶させた後に、この実座標を当該実座標の座標軸の原点から実座標毎に最も離間した位置の座標値をそれぞれ１とする変形パラメータ座標として、適宜なメモリ等に記憶させるメモリ、ＣＰＵ等（図示せず）から形成されている。
【００１８】
また、前記実座標算出手段６は、前記各ピクセルのパラメータ座標値を変形パラメータ座標における変形パラメータ座標値に変換した後に、所望の処理精度とする処理精度設定部１０を介して各ピクセルを実座標上に整数のフロートメッシュ座標として展開し、適宜なメモリ等に記憶させるメモリ、ＣＰＵ等（図示せず）から形成されている。なお、公知の如く、コンピュータを用いた演算において、演算に使用する「数値」の中に小数点の位置が動き得る「浮動小数点形式の数値」というものがある。そして、「フロートメッシュ座標」とは、座標軸上の数値をこの「浮動小数点形式の数値」で表した座標のことで、基準外形枠を座標軸とする座標を「整数のメッシュ座標」と記載したので、これと区別するために「整数のフロートメッシュ座標」と表現した。なお、整数であるので、小数点以下の数値は０である。
【００１９】
また、前記画像変形描画単位設定手段７は、前記実座標のフロートメッシュ座標上に展開された各ピクセルを画像品質および処理速度を勘案し、一旦バンド処理と称する列分割し、その後各列を行分割することにより、変形外形枠（実座標のフロートメッシュ座標）内の領域を所望の４点のピクセルにて形成される適宜な変形処理最小単位（ブロック）に分割して適宜なメモリ等に記憶させるメモリ、ＣＰＵ等（図示せず）から形成されている。
【００２０】
また、前記原画像濃度値取得手段８は、前記各ブロックを形成する４点のピクセルのうちの１つのピクセルの原画の濃度値（前記基準外形枠の整数メッシュ座標上の４点のピクセルの濃度値：本実施形態においては、メッシュ座標上の４点のピクセルの内の左上の１点のピクセルの濃度値）を適宜なメモリ等に記憶させるメモリ、ＣＰＵ等（図示せず）から形成されている。
【００２１】
また、前記画像描画手段９は、前記実座標内の領域を前記ブロックを囲む前記実座標上の矩形毎に、取得した原画の画像濃度値、すなわち、原画像濃度値取得手段８により取得した各ブロック毎の濃度値に基づいて塗りつぶすことにより変形後の画像データを形成するとともに、その変形後の画像データをＣＲＴ、プロッタ等の適宜な出力装置に出力するメモリ、ＣＰＵ等（共に図示せず）から形成されている。
【００２２】
なお、前記処理精度設定部１０は必要に応じて各手段に付設するようにしてもよく、特に、本実施形態の構成に限定されるものではない。また、前記各メモリおよび各ＣＰＵ等を制御部等に一括させて設けることもできる。
【００２３】
つぎに、前述した構成からなる本実施形態の画像データ編集装置１を用いた画像データ編集について説明する。
【００２４】
本実施形態の画像データ編集装置を用いた画像データ編集の概略について説明すると、写真等の原画たる原画像の画像情報（原画像データ）としての画素および画素属性（濃度値）を図示しないコンピュータで処理可能な単位のピクセルとし、そのピクセルを基準外形枠を座標軸とする整数のメッシュ座標として基準外形枠内に収納し、この基準外形枠をその座標軸の最大値を１としたパラメータ座標に展開し、基準外形枠を関数、本実施形態では３次ベジエ関数にて記述可能な所望の形状に変形させて変形外形枠とし、この変形外形枠を座標軸とする実座標とし、その実座標軸の最大値を１とした変形パラメータ座標に変換し、前記パラメータ座標上のピクセルを変形パラメータ座標上に変換し、その変形パラメータ座標上のピクセルを実座標上に整数のフロートメッシュ座標として展開するとともに、変形外形枠（実座標）内の領域を複数の変形処理最小単位としてのブロックに分割し、各ブロックを各ブロックの相対位置と等しい基準外形枠上のピクセルの濃度値（画像濃度値）をもって塗りつぶすことにより、写真等の原画の変形を行なうようにされている。すなわち、原画像の画像情報としての原画像データをコンピュータで処理可能な単位のピクセルの集合体とし、これらのピクセルを略矩形の基準外形枠を座標軸とする整数のメッシュ座標として基準外形枠に収納し、この基準外形枠に収納した各ピクセルの座標値を基準外形枠の座標軸の原点から座標軸毎に最も離間した位置のピクセルの座標値をそれぞれ１とするパラメータ座標値に変換してメッシュ座標上の各ピクセルを座標軸の最大値を１とする略矩形のパラメータ座標に展開し、基準外形枠を少なくとも関数により記述可能な所望の形状の変形外形枠に変形させてこの変形外形枠を座標軸とする実座標とし、この実座標を当該実座標の座標軸の原点から座標軸毎に最も離間した位置の座標値をそれぞれ１とする変形パラメータ座標とし、その後、各ピクセルのパラメータ座標値を変形パラメータ座標における変形パラメータ座標値に変換して、各ピクセルを実座標上に整数のフロートメッシュ座標として展開するとともに、実座標内の領域を複数の変形処理最小単位としてのブロックに分割し、ブロック毎にそのブロック内に位置するピクセルのうちの１つのピクセルの原画の画像濃度値を取得し、実座標内の領域を、ブロックを囲む実座標上の矩形毎に、取得した原画の画像濃度値をもって塗りつぶすことにより、写真等の原画の変形を行なうようにされている。したがって、原画像データの収納された基準外形枠を、関数にて記述可能な所望の形状の変形外形枠に変形させることにより原画像データを変換させている。
【００２５】
このような画像データ編集について図２に示すフローチャートにより説明するる。
【００２６】
まず、ステップＳＴ１０において、写真などの原画像の画像情報である画素および画素属性（濃度値）をスキャナなどの適宜な原画像データ読み取り手段２により所望の分解能をもって読み取り、つぎのステップＳＴ１１に進行する。
【００２７】
つぎに、ステップＳＴ１１において、原画像の画像情報を適宜なパラメータ座標形成手段３により画像データ編集装置１にて処理可能な単位のピクセルとするとともに、このピクセルを整数のメッシュ座標からなる基準外形枠に収納した後、基準外形枠に対するパラメータ座標に展開し、つぎのステップＳＴ１２に進行する。すなわち、原画像の画像情報としての原画像データをコンピュータで処理可能な単位のピクセルの集合体とし、これらのピクセルを略矩形の基準外形枠を座標軸とする整数のメッシュ座標として基準外形枠に収納し、この基準外形枠に収納した各ピクセルの座標値を基準外形枠の座標軸の原点から座標軸毎に最も離間した位置のピクセルの座標値をそれぞれ１とするパラメータ座標値に変換してメッシュ座標上の各ピクセルを座標軸の最大値を１とする略矩形のパラメータ座標に展開する。これにより原画像を所定の基準外形枠内に収納し、原画像の基準外形枠に対する相対位置を決定することができる。
【００２８】
つぎに、ステップＳＴ１２において、所望の形状の変形外形枠の形状を適宜な変形外形枠形状読み取り手段４により読み取り、つぎのステップＳＴ１３に進行する。すなわち、基準外形枠を変形させるための変形基準枠の形状（輪郭）をコンピュータで処理可能な３次ベジエ関数のパラメータの関数の集合体として読み取ることにより、変形外形枠の座標軸を容易に得ることができる。
【００２９】
つぎに、ステップＳＴ１３において、変形外形枠に対する変形パラメータ座標を適宜な変形パラメータ座標形成手段５により形成し、つぎのステップＳＴ１４に進行する。すなわち、基準外形枠を、少なくとも関数により記述可能な所望の形状の変形外形枠に変形させてこの変形外形枠を座標軸とする実座標とした後に、この実座標を当該実座標の座標軸の原点から座標軸毎に最も離間した位置の座標値をそれぞれ１とする。
【００３０】
つぎに、ステップＳＴ１４において、適宜な実座標算出手段６により前記パラメータ座標上のピクセルを変形パラメータ座標上に変換し、その変形パラメータ座標上に変換したピクセルを整数のフロートメッシュ座標として実座標（変形外形枠）に展開し、つぎの、ステップＳＴ１５に進行する。すなわち、各ピクセルのパラメータ座標値を変形パラメータ座標における変形パラメータ座標値に変換して各ピクセルを実座標上に整数のフロートメッシュ座標として展開する。
【００３１】
つぎに、ステップＳＴ１５において、実座標（フロートメッシュ座標）上に展開された各ピクセルを適宜な画像変形描画単位設定手段７により変形処理最小単位（ブロック）に分割し、つぎのステップＳＴ１６に進行する。すなわち、実座標内の領域を複数の変形処理最小単位としてのブロックに分割する。
【００３２】
つぎに、ステップＳＴ１６において、適宜な原画像濃度値取得手段８により各ブロックのピクセルに対応する基準外形枠上のピクセルの濃度値（元の濃度値）を取得し、つぎのステップＳＴ１７に進行する。すなわち、ブロック毎に、そのブロック内に位置するピクセルのうちの１つのピクセルの原画の画像濃度値を取得する。詳細については、後述する。
【００３３】
つぎに、ステップＳＴ１７において、変形外形枠（実座標）内の各ブロックを適宜な画像描画手段９により元の濃度値にて塗りつぶすとともに、所望の出力装置に出力することにより一連の処理を終了させる。詳細については、後述する。
【００３４】
このような、上述した画像データ編集の要部について具体的に詳しく説明する。
【００３５】
まず、本実施形態の画像データ編集の基準外形枠の変形時の線分の組み合わせについて図３のａからｈにより説明する。
【００３６】
図３は基準外形枠の変形時の線分の組み合わせを説明する説明図であり、ａは原画像の一例を示し、ｂは基準外形枠を示し、ｃは基準外形枠の縦方向変形時の線分の組み合わせを示し、ｄは縦方向変形後の変形外形枠を示し、ｅは縦方向変形した画像を拡大して示し、ｆは基準外形枠の横方向変形時の線分の組み合わせを示し、ｇは横方向変形後の変形外形枠を示し、ｈは横方向変形した画像を拡大して示す。
【００３７】
図３のａに示す原画（モノクロ写真）の画像情報の外側の適宜な位置に、図３のｂに示すような点Ａ，点Ｂ，点Ｃ，点Ｄから構成される矩形形状のＡ−Ｂ−Ｃ−Ｄからなる基準外形枠１１が形成される。そして、ベクトルの方向を考慮し、図３のｃに示す基準外形枠１１の図中上下の線分Ａ−Ｂ：Ａ（ｔ）と線分Ｄ−Ｃ：Ｂ（ｔ）との組み合わせを用いて図３のｄに示すように、縦方向に基準外形枠１１を変形させて変形外形枠１２を形成し、図３のｅに示す縦方向に変形した画像を得る場合と、図３のｆに示すように、基準外形枠１１の図中左右の線分Ａ−Ｄ：Ａ（ｔ）と線分Ｂ−Ｃ：Ｂ（ｔ）との組み合わせを用いて図３のｇに示すように、横方向に基準外形枠１１を変形させて変形外形枠１２を形成し、図３のｈに示す横方向に変形した画像を得る場合の何れか一方の組み合わせを用いて原画の変形を行なう。
【００３８】
つぎに、画像データ編集としての変形の原理について縦方向変形を例示して図４のａからｇにより説明する。
【００３９】
図４は縦方向変形について説明する説明図であり、ａは基準外形枠に収納されたピクセルを示し、ｂは基準外形枠上のピクセルを示し、ｃは基準外形枠上のピクセルの位置を示し、ｄはパラメータ座標上のピクセルの位置を示し、ｅは変形外形枠を示し、ｆは変形パラメータ座標上のピクセルの位置を示し、ｇは変形外形枠上に変換されたピクセルの位置を示す。
【００４０】
図４のａに示すように、矩形形状のＡ−Ｂ−Ｃ−Ｄからなる基準外形枠１１の左上の点Ａを原点とし、線分Ａ−Ｂ方向を座標軸ｘ（ｘ軸）とし、そのｘ軸の最大値（ピクセルの数＝距離）をＸＳとするとともに、線分Ａ−Ｄ方向を座標軸ｙ（ｙ軸）とし、そのｙ軸の最大値（ピクセルの数＝距離）をＹＳとする。つまり、基準外形枠１１を形成する点Ａの座標値を（０，０）、点Ｂの座標を（ＸＳ，０）、点Ｄの座標値を（０，ＹＳ）とし、ピクセルのｘ軸方向をｘｂａｓｅと称し、ピクセルのｙ軸方向をｙｂａｓｅと称するとともに、変形方向の線分をｐｘｌｃｎｔ、直線方向の線分をｂａｓｅと称す。そして、このｘ軸とｙ軸とにより形成されるピクセルを単位とする整数のメッシュ座標（ｘ−ｙ座標）１３内に原画の画像情報としてのピクセルが収納される。この基準外形枠１１上のピクセル（メッシュ座標）を図４のｂに示す。ここで、図４のｃに示すように、ピクセルＰのメッシュ座標（ｘ−ｙ座標）１３における座標値はＰ＝（Ｐｘ，Ｐｙ）となる。更に説明すると、図４のｂにあるように、画像を構成する矩形ピクセルの左上端をＡ、右上端をＢ、左下端をＤ、右下端をＣとしたときに、画像を構成するピクセルの位置はＡ−Ｂをｘ軸、Ａ−Ｄをｙ軸として２次元の座標（ｘ，ｙ）で表すことができる。例えば、Ａ点を原点にとると、Ａのピクセル座標は（０，０）であり、Ａ−Ｂ軸上にありＡから３番目のピクセルの座標は（２，０）と表すことができる。これがメッシュ座標である。座標値ｘ，ｙは整数値となる（図４のｃを参照）。また、「基準外形枠」とは、画像を構成するピクセルを囲む図４のｂでいう矩形Ａ−Ｂ−Ｃ−Ｄを指している。この矩形のことを「基準外形枠」と称する。そして、この枠の内部（枠の線上にもピクセルは存在することになるが）に対象とする画像を構成するピクセルが入ることになる。このこと（対象とする画像のピクセルデータが当該矩形内にあるということ）を「収納」という。つまり、集合体の各ピクセルを枠内に入れるという作業は、コンピュータのメモリに順番に画像ピクセルの位置座標に対応した色情報（または濃淡情報）を格納することを指している。
【００４１】
つぎに、図４のｄに示すように、メッシュ座標（ｘ−ｙ座標）１３におけるｘ軸の最大値ＸＳを１とするｕ軸に変換するとともに、ｙ軸の最大値ＹＳを１とするｖ軸に変換し、このｕ軸とｖ軸とにより形成される座標をパラメータ座標（ｕ−ｖ座標）１４とすると、ｘ−ｙ座標１３におけるピクセルＰの座標値Ｐ＝（Ｐｘ，Ｐｙ）は、ｕ−ｖ座標１４において、パラメータ座標値Ｐ＝（ｕ，ｖ）で表すことができる（ただし、０≦ｕ，ｖ≦１）。すなわち、図４のｃの座標によって示される前記各ピクセルのパラメータ座標値を、図４のｄの座標によって示される変形パラメータ座標における変形パラメータ座標値に変換することが行われる。更に説明すると、図４のｃに示す基準外形枠１１の原点たる点Ａに位置するピクセルの座標値（０，０）は、図４のｄに示すパラメータ座標１４における原点たる点Ａにおいて座標値（０，０）となり、図４のｃに示す基準外形枠１１の点Ｂに位置するピクセルの座標値（ＸＳ，０）は、図４のｄに示すパラメータ座標１４における点Ｂにおいて座標値（１，０）となり、図４のｃに示す基準外形枠１１の点Ｃに位置するピクセルの座標値（ＸＳ，ＹＳ）は、図４のｄに示すパラメータ座標１４における点Ｃにおいて座標値（１，１）となり、図４のｃに示す基準外形枠１１の点Ｄに位置するピクセルの座標値（０，ＹＳ）は、図４のｄに示すパラメータ座標１４における点Ｄにおいて座標値（０，１）となる。なお、点Ａ，点Ｂ，点Ｃ，点Ｄ以外に位置するピクセルのパラメータ座標値Ｐ＝（ｕ，ｖ）は、公知の如く、メッシュ座標１３のｘ軸およびｙ軸の原点から最も離間したそれぞれの座標値を１とする比例計算により容易に算出することができる。
【００４２】
つぎに、図４のｄの座標に展開されたパラメータ座標値に基づく各ピクセルを、図４のｅからｇに示すように順に展開して、図４のｇのフロートメッシュ座標を得ることにより、各ピクセルを実座標上に整数のフロートメッシュ座標として展開するようにする。すなわち、矩形形状の基準外形枠（Ａ−Ｂ−Ｃ−Ｄ）１１を構成する線分の内の線分Ａ−Ｂと線分Ｄ−Ｃが３次ベジエ関数により記述可能な所望の形状に横方向変形し、図４のｅに示すＡ’−Ｂ’−Ｃ’−Ｄ’からなる変形外形枠１２を前記と同様に、点Ａ’を原点とし、線分Ａ’−Ｂ’方向を座標軸ｘ（ｘ軸）とし、そのｘ軸の最大値をＸＳ’とするとともに、線分Ａ’−Ｄ’方向を座標軸ｙ（ｙ軸）とし、そのｙ軸の最大値をＹＳ’とする実座標１５とした後に、実座標１５におけるｘ軸の最大値ＸＳ’を１とするｕ軸に変換するとともに、ｙ軸の最大値ＹＳ’を１とするｖ軸に変換し、図４のｆに示すように、ｕ軸とｖ軸とにより形成される変形パラメータ座標（ｕ−ｖ座標）１６とする。また、基準外形枠１１を変形外形枠１２に変形させるのは、基準外形枠（Ａ−Ｂ−Ｃ−Ｄ）１１を構成する４つの線分を、変形外形枠１２を構成する４つの線分に置き換えることにより実行する。つまり、基準外形枠（Ａ−Ｂ−Ｃ−Ｄ）１１を構成する４つの線分の方程式を、前記変形外形枠形状読み取り手段４により読み取るかあるいは予め与えられた複数の所望の変形外形枠の形状データから変形外形枠１２を構成する４つの線分方程式のそれぞれに等しくなるように置き換えることにより容易に実行できることは自明である。なお、変形外形枠１２の変形方向の線分の一方（上または左：図４のｅにおいて上）をＦ（ｔ）にて記述されるｆｃｕｒｖｅ、他方（下または右：図４のｅにおいて下）をＧ（ｔ）にて記述されるｇｃｕｒｖｅと称し、変形外形枠１２の直線方向の線分の一方（左または上：図４のｅにおいて左）をａｌｉｎｅ、他方（右または下：図４のｅにおいて右）をｂｌｉｎｅと称する（図４のｅ）。
【００４３】
ここで、前記パラメータ座標１４のｕ軸とｖ軸とが変化してもパラメータ座標値は変化しないとして、ピクセルＰの変形パラメータ座標値を算出すると、図４のｆに示すように、変形パラメータ座標１６の曲線Ａ’−Ｂ’から曲線Ｄ’−Ｃ’に変化する過程において発生する曲線の内のｖ軸方向ｊライン目のものを表す曲線Ｆ（Ｌｊ０−Ｌｊ１）を算出し、この算出した曲線ＦをＬｊ（ｕ）（＝（Ｌｊｘ（ｕ），Ｌｊｙ（ｕ）））と表したとき、この曲線Ｆ上にあって、ｕ軸方向ｉ番目のパラメータｕｉにより決定される点Ｐ’（Ｌｊｘ（ｕｉ），Ｌｊｙ（ｕｉ））が点Ｐの変形パラメータ座標値となる。したがって、変形外形枠１２上の各ピクセルＰ’は、基準外形枠１１上における各ピクセルの相互の位置関係を確実に反映するので、基準外形枠１１に対する原画像データのそれぞれの相対位置関係を保持するようにして、原画像データを所望の形状に変形させることができることになる。
【００４４】
そして、この変形パラメータ座標値を実座標１５上に整数のフロートメッシュ座標として変換することにより、変形が終了する。すなわち、原画像の各ピクセルの基準外形枠１１に対するそれぞれの相対位置と同一の位置関係を保持させた状態で変形外形枠１２内に原画像の各ピクセルを位置させることで変形が終了する。この変形が終了した実座標１５としての整数のフロートメッシュ座標を図４のｇに示す。
【００４５】
つぎに、原画像データの縦方向変換および横方向変換における中間曲線の算出方法について説明する。
【００４６】
図５は中間曲線の算出方法を説明する説明図である。
【００４７】
図５に示すように、曲線Ａ０−Ａ３を
Ａ（ｔ）＝（１−ｔ）３  ・Ａ０＋（１−ｔ）２  ・ｔ・Ａ１＋（１−ｔ）・ｔ２  ・Ａ２＋ｔ３  ・Ａ３
曲線Ｂ０−Ｂ３を
Ｂ（ｔ）＝（１−ｔ）３  ・Ｂ０＋（１−ｔ）２  ・ｔ・Ｂ１＋（１−ｔ）・ｔ２  ・Ｂ２＋ｔ３  ・Ｂ３
と表されているとする。
【００４８】
そして、曲線Ａ０−Ａ３から曲線Ｂ０−Ｂ３に変化する途中の中間曲線をＦ（ｔ）（ただし、０≦ｔ≦１）とすると、
Ｆ（ｔ）＝（１−ｔ）３  ・Ｆ０＋（１−ｔ）２  ・ｔ・Ｆ１＋（１−ｔ）・ｔ２  ・Ｆ２＋ｔ３  ・Ｆ３
として記述することができる。
【００４９】
ここで、中間曲線Ｆ（ｔ）により記述される記述パラメータＦ０，Ｆ１，Ｆ２，Ｆ３を一般的に記述すると、
Ｆ０＝（１−ｕ）・Ａ０＋ｕ・Ｂ０
Ｆ１＝（１−ｕ）・Ａ１＋ｕ・Ｂ１
Ｆ２＝（１−ｕ）・Ａ２＋ｕ・Ｂ２
Ｆ３＝（１−ｕ）・Ａ３＋ｕ・Ｂ３
と表すことができる（ただし、０≦ｕ≦１）。
【００５０】
この式のｕに、縦方向変形の場合には前述したｖの値（パラメータ座標におけるｖ軸方向の座標値）を用い、横方向変形の場合には前述したｕの値（パラメータ座標におけるｕ軸方向の座標値）を用いて、それぞれの変形パラメータ座標１６における中間曲線Ｆおよび変形パラメータ座標値Ｐ’（ｕ，ｖ）（＝（Ｌｊｘ（ｕｉ），Ｌｊｙ（ｕｉ）））を算出することができる。これにより、各ピクセルのパラメータ座標値を変形パラメータ座標１６における変形パラメータ座標値に変換して各ピクセルを実座標１５上に整数のフロートメッシュ座標として展開できることになる。
【００５１】
つぎに、画像変形描画単位設定について図６から図１０により説明する。
【００５２】
図６は列分割を説明する模式図であり、図７は行分割を説明する模式図であり、図８はブロックを説明する模式図であり、図９はバンドの設定を説明する説明図であり、図１０はブロックの設定を説明する説明図であり、図１１はブロックを説明する説明図である。なお、説明の便宜上、図９から図１２における外形基準枠は、図４の外形基準枠の形状を上下反転して左上をＡ’、右上をＢ’、右下をＣ’、左下をＤ’として例示している。
【００５３】
前記画像変形描画単位設定は、変形外形枠１２の実座標１５上に整数のフロートメッシュ座標として展開された各ピクセルを、図６に示すように、一旦バンド処理と称するバンドに列分割し、その後各バンドを図７に示すように行分割することにより、変形外形枠１２（実座標１５上に展開された整数のフロートメッシュ座標）内の領域を、図８に示すように、所望の４点のピクセル（図示せず）にて形成される変形処理最小単位（ブロック）１７に分割することによりなされる。
【００５４】
前記バンドの設定は、図９に示すように、例えば、Ｐ００，Ｐ０１なる開始点が既に設定されている時、Ｐ１０，Ｐ１１の設定は、ｆｃｕｒｖｅ上のピクセル数（ｆｌｐｘｌ）およびｇｃｕｒｖｅ上のピクセル数（ｇｌｐｘｌ）の両方が、所定のしきい値以上になるまで処理バンド幅を徐々に拡張することにより行われる。この具体的なしきい値の値は、画像品質と処理速度のかねあいから決定すればよいが、例えば、３ピクセル程度とするとよい。なお、バンドを初めて設定する場合に、開始点としてのＰ００およびＰ０１の位置は、それぞれがａｌｉｎｅ上に位置することになる。
【００５５】
前記ブロックの設定は、図１０に示すように、例えば、Ｂ００，Ｂ１０なる開始点が既に設定されている時、Ｂ０１，Ｂ１１の設定は、直線方向（Ｂ００−Ｂ０１）のピクセル数（ｃｐｘｌ）および直線方向（Ｂ１０−Ｂ１１）のピクセル数（ｂｌｐｘｌ）の両方が、所定のしきい値以上になるまで処理バンド幅を広げてゆくことにより行われる。この具体的なしきい値の値は、画像品質と処理速度のかねあいから決定すればよいが、例えば、３ピクセル程度とするとよい。なお、ブロックを初めて設定する場合に、開始点としてのＢ００およびＢ１０の位置は、それぞれがｆｃｕｒｖｅ上に位置することになる。
【００５６】
以上のようにして、バンドおよびブロックが設定され、図１１に示すように、４点のピクセルにより形成されたＢ００−Ｂ０１−Ｂ１１−Ｂ１０からなる四角形が変形処理最小単位（ブロック）１７とされる。
【００５７】
すなわち、図８に示すように、第ｉ，ｊブロックは、変形曲線ｊおよびｊ＋ｉ、直線ｉおよびｉ＋１にて構成されることとなる。更に説明すると、矩形原画像の正数分けされたピクセルの座標は、座標値の最大値で割った値がパラメータ座標値であり（図４のｃ）、変形外形枠においても同じパラメータ座標値（ｕ，ｖ）が対応する点となる（図４のｄ）。この（ｕ，ｖ）をもとにして実座標のピクセルと１対１に対応するようにして求めたのが（図４のｇに示すフロートメッシュである。そして、図８において「列分割」は、例えば原画像における第１列と第２列に各々対応する曲線「第１ライン」と「第２ライン」により切り分けることを意味し、「行分割」は、例えば原画像における第１行と第２行に各々対応する直線によって切り分けることを意味する。このようにして「列分割」および「行分割」によって得られた４点ピクセルにて形成されたブロックは、４点ピクセルの中の１つの濃度値、カラー値によって塗りつぶすことができる。しかし、この方法ではあまりにブロックが多くなり過ぎて演算処理の時間が多くかかってしまうので、図６に示すように、いったん３ピクセル程度のしきい値の幅からなるバンドと呼ぶ列に分割し、さらに図７に示すように、各バンドをいったん３ピクセル程度のしきい値の幅からなるブロックに縦方向に分割し、これによって形成された変形処理最小単位１７に対応する濃度値、カラー値によって塗りつぶすようにしている。従って、この変形処理最小単位１７は、原画像のあるピクセルが変形してできた領域に対応し、変形処理最小単位１７を構成する４点は、原画像の近傍４点対応することとなる。そして、後述するように、この変形処理最小単位１７を構成する４点のうちの１点（例えば常に左上）の濃度値またはカラー値でこの４点を囲む矩形領域を塗りつぶす。
【００５８】
つぎに、原画像濃度値取得について説明する。
【００５９】
前記原画像濃度値取得は、前述した各ブロック１７を塗りつぶす濃度値として、本実施形態においては、各ブロック１７の塗りつぶしの処理速度を勘案して図１１に示す４点のピクセル（Ｂ００，Ｂ０１，Ｂ１１，Ｂ１０）の内の原点に最も近い左方上方のピクセル（Ｂ００）に対応する原画の画像濃度値（濃度値：Ｇ００）を取得することにより行われる。この（Ｂ００）に対応する原画の濃度値（Ｇ００）は、当該ブロックの変形前に予めメモリ内に記憶させられており、確実に原画の濃度値（Ｇ００）が収得されるようになっている。つまり、変形処理最小単位（ブロック：Ｂ００−Ｂ０１−Ｂ１１−Ｂ１０）１７を決定した時点で対応する原画の位置座標は一意に決定され、ピクセル（Ｂ００）に対応する原画の濃度値を容易に取得することができる。具体的には、画像として横方向にＮ個、縦方向にＭ個のピクセルが並んでいるとする。数え方としては、横方向は０番目から（Ｎ−１）番目まで、縦方向は０番目から（Ｍ−１）番目までという数え方をすると、横方向ｎ個目、縦方向ｍ個目のピクセルの座標値は（ｎ−１，ｍ−１）となる（図４のｃ参照）。そして、原画の位置座標から原画の濃度値を取得する場合には、原画の濃度値はピクセルの座標値に対応した状態で、既にメモリ内に格納（記憶）されている（一般的に、画像を取り込んだ時点で、既にこうした対応がとれるようになっている）。濃淡２５６階調の画像データについて例として取り上げると、原画像データ読み取り手段２により画像を取り込んだ（読み込んだ）際に、上記の位置座標（０，０）の濃度値Ｇ（０，０）を、メモリのａ番地に格納したとする。ここで、Ｇ（０，０）は、位置座標（０，０）に対応した濃度値（位置座標に対する属性）であることを示している。位置座標（１，０）の濃度値をメモリのａ＋１番地に格納していたとすれば、位置座標（ｎ，ｍ）の濃度値Ｇ（ｎ，ｍ）は、メモリのａ＋Ｎ＊  ｍ＋ｎ番地の濃度値として取り出すことができる。更に、前記変形処理最小単位（ブロック：Ｂ００−Ｂ０１−Ｂ１１−Ｂ１０）１７としては、例えば、同一画像濃度値（またはカラー画像値）で描画されるべき四角形を指定するようにする。
【００６０】
つぎに、画像描画について図１２および図１３により説明する。
【００６１】
図１２はブロックを囲む矩形の四角形を説明する説明図であり、図１３は変形外形枠の塗りつぶしを説明する説明図である。
【００６２】
前記画像描画は、前述した各ブロック１７を対応する原画の濃度値をもって塗りつぶすとともに、所望の出力装置に出力することにより行われる。
【００６３】
前記塗りつぶしは、図１２に示すように、ブロック１７を形成する四角形（Ｂ００−Ｂ０１−Ｂ１１−Ｂ１０）を塗りつぶすのではなく、この四角形（Ｂ００−Ｂ０１−Ｂ１１−Ｂ１０）を囲む実座標１５上の矩形の四角形（Ｑ０−Ｑ１−Ｑ２−Ｑ３）を塗りつぶすことにより行われる。ブロック１７を矩形の四角形として塗りつぶすのは、ブロック１７を直接塗りつぶすために斜め線の処理を行うことになり、通常のパーソナルコンピュータを用いた場合に、コンピュータの処理速度が遅くなるのを防止するためであり、処理速度の非常に速いコンピュータ（非常に高価で特殊な科学計算用のコンピュータ）を用いる場合には必ずしも必要ではない。
【００６４】
そして、この矩形の四角形は、その最小値を（ｘｍｉｎ，ｙｍｉｎ）とし、最大値を（ｘｍａｘ，ｙｍａｘ）とした場合に、Ｑ０＝（ｘｍｉｎ，ｙｍｉｎ），Ｑ１＝（ｘｍｉｎ，ｙｍａｘ），Ｑ２＝（ｘｍａｘ，ｙｍａｘ），Ｑ３＝（ｘｍａｘ，ｙｍｉｎ）と表すことができ、座標の最大値／最小値を容易に算出することができる。
【００６５】
さらに、図１３に示すように、矩形の四角形による変形外形枠１２の塗りつぶしは、塗りつぶす部分がオーバーラップするので、各矩形の四角形にて塗りつぶす場合に、オーバーラップ部分をオーバーライトさせるようにして変形外形枠１２内を塗りつぶすことにより、画像描写の処理速度を高速とすることができる。
【００６６】
つぎに、このような画像データ編集のアルゴリズム（処理構造）について図１４および図１５に示すフローチャートならびに図１６から図２１によりさらに説明する。
【００６７】
図１４および図１５は画像データ編集のアルゴリズムを説明するフローチャートであり、図１４はフローチャートを２分割した一方を示し、図１５はフローチャートを２分割した他方を示し、図１６は３次ベジエ関数およびそのパラメータを示す模式図であり、図１７は３次ベジエ関数を説明する説明図であり、図１８は曲線の距離の計算方法を説明する説明図であり、図１９は曲線の距離の計算方法の一例を説明する説明図であり、図２０は曲線の距離の計算方法の他例を説明する説明図であり、図２１は直線状の３次ベジエ関数を説明する説明図である。ここで、３次ベジエ関数の変形を図１６により簡単に説明する。３次ベジエ関数は図１６に示すように、２つの端点Ｐ０，Ｐ３および２つの曲線制御点Ｐ１，Ｐ２がある。この２つの曲線制御点Ｐ１，Ｐ２の位置を変えることにより３次ベジエ関数の変形を行う。具体的には、上記２点Ｐ１，Ｐ２の位置の変更を行うには、まずユーザーインターフェースレベルで、どちらかの点の近傍でマウスをクリックするなどの操作を行い、近傍判定によりその点の変更モードに入る。マウスを押下したまま、マウスを動かすことでその位置を変更してから、マウスの押下を解除するとその位置が新たな変更位置として登録され、点の位置変更モードは解除されて、新たな３次ベジエ曲線を発生することができるようになる。
更に、基準外形枠１１の変形の例として、基準外形枠１２の１つの直線部分を３次ベジエ関数に変換して変形操作を行う場合を図１６を用いて説明する。ベジエパラメータをＰ０（Ｐ０ｘ，Ｐ１ｙ），Ｐ１（Ｐ１ｘ，Ｐ１ｙ），Ｐ２（Ｐ２ｘ，Ｐ２ｙ），Ｐ３（Ｐ３ｘ，Ｐ３ｙ）としたとき、当該曲線Ｌ（Ｌｘ，Ｌｙ）は０≦ｔ≦１なるｔを使って、
Ｌ＝Ｐ０（１−ｔ）３  ＋Ｐ１ｔ（１−ｔ）２  ＋Ｐ２ｔ２  （１−ｔ）＋Ｐ３ｔ３  
と書き表すことができる。そして、図１６に示す曲線Ｌ上に１列の画素要素がならべて、この曲線を変化させることで対応する画素の位置が変化することになる。実際の操作としては、以下の変形を行う際にのみ普段は必要としないＰ２およびＰ１の座標の表示を行い、マウスで等でこのＰ１またはＰ２の近傍（５画素程度）をクリックして操作点の指定を行い、マウスを移動させることでその位置を変化させる。変化させた点が確定した後に再度クリックすると、位置が確定されて再度この座標に従ったベジエ曲線が発生し、この曲線の連続した点に該当する画素（ピクセル）のデータを配置することで終了する。
【００６８】
図１４および図１５に示すように、画像データ編集の処理が開始されると、まず、ステップＳＴ２０において最初に初期設定が行われ、つぎのステップＳＴ２１に進行する。
【００６９】
ステップＳＴ２０における初期設定は、以下の８項目の内容を順に行なうことにより遂行される。
【００７０】
（１）原画のｐｘｌｃｎｔ（変形方向ピクセル数）およびｂａｓｅ（直線方向ピクセル数）の設定（変形方向により設定）。つまり、縦方向変形および横方向変形の選定を行う。これにより整数のメッシュ座標からなる基準外形枠１１に原画の画像のピクセルを収納することができる。
【００７１】
２）変形対（ｆｃｕｒｖｅ，ｇｃｕｒｖｅ）の曲線パラメータ（３次ベジエパラメータ）の係数値（中間曲線算出用）の算出。ここで係数値とは”形状パラメータの演算係数”と称するものであり、図１６に示す３次ベジエ関数Ｂ（ｔ）のパラメータをＰ０，Ｐ１，Ｐ２，Ｐ３とした場合に、
0003612257.tif 000002
と表したときの、Ｍ３，Ｍ２，Ｍ１，Ｍ０を示す。つまり、変形外形枠１２の変形方向の線分が、この３次ベジエパラメータとして記述されることとなる。
【００７２】
（３）３次ベジエ曲線（ｆｃｕｒｖｅ）の連続輪郭ピクセル数（ｆｃｐｘｌ）の算出（図４のｅ，図９）。ここで、連続輪郭ピクセル数（ｆｃｐｘｌ）の算出とは、曲線の距離を算出することである。
【００７３】
曲線の距離の計算について説明すると、一般的に、プログラムにより曲線の距離を計算するには困難が伴うが、３次のベジエ関数は、図１７に示すように、４つのパラメータＰ０，Ｐ１，Ｐ２，Ｐ３により決定することができ、この関数Ｂ（ｔ）は、媒介変数ｔを用いて、
0003612257.tif 000003
と表すことができる。そして、ｔによる一次微分をＢ’（ｔ）として曲線距離ＤＨは
【００７４】
【数１】
0003612257.tif 000004
【００７５】
で表すことができる。
【００７６】
しかし、実際の計算をプログラムにて行うには処理時間などの問題があるため、処理時間と計算の複雑度を考慮して、図１８に示すように、曲線を細かい直線に分解し、その直線距離の総和を曲線距離として扱うことが望ましい。
【００７７】
すなわち、曲線距離を算出するには、以下に示す２つの方法から選択するとよい。
【００７８】
第１の曲線距離の算出方法は、図１９に示すように、曲線上の代表点を予め決めて折れ線を形成し、その直線距離の総和に相当する数を分割点の数とするものである。この場合の精度を向上させるには、直線にする度合（分割数）を増加すればよい。
【００７９】
第２の曲線距離の算出方法は、図２０に示すように、曲線の曲率に応じて分割点を形成し、その直線距離の総和を曲線距離とするものである。
【００８０】
（４）３次ベジエ曲線（ｇｃｕｒｖｅ）の連続輪郭ピクセル（ｇｃｐｘｌ）数の算出（（３）と同様）。
【００８１】
（５）直線（ａｌｉｎｅ）の連続輪郭ピクセル数（ａｌｐｘｌ）の算出（図４のｅ，図９）。ここで、連続輪郭ピクセル数（ａｌｐｘｌ）の算出とは、直線の距離を算出することである。
【００８２】
直線の距離の計算について説明すると、図２１に示すように、直線の開始点／終了点を各々Ｐ０（Ｐ０ｘ，Ｐ０ｙ）、Ｐ１（Ｐ１ｘ，Ｐ１ｙ）とした場合に、２点間の距離は、
【００８３】
【数２】
0003612257.tif 000005
【００８４】
で表すことができる。これは、プログラム的に容易に算出することができる。
【００８５】
（６）直線（ｂｌｉｎｅ）の連続輪郭ピクセル数（ｂｌｐｘｌ）の算出（（５）と同様）。
【００８６】
（７）処理精度（丸め誤差リカバー値：ＸＥＲＲ，ＹＥＲＲ）設定。
【００８７】
処理精度の設定とは、前述した適宜な処理精度設定部１０により、基準外形枠１１を形成する整数のメッシュ座標１３上に展開された各ピクセルを、変形外形枠１２を形成する実座標（整数のフロートメッシュ座標）１５上に隙間なく連続させて展開するものである。
【００８８】
上記（２）から（７）をもって実座標（整数のフロートメッシュ座標）１５からなる変形外形枠１２に、原画の画像のピクセルを展開することができる。
【００８９】
（８）ループ処理のための初期設定。つまり、変形外形枠１２を列分割するためのバンド処理における第１バンドの左側端点（図９に示すＰ００（左上），Ｐ０１（左下））の座標値をセットする。
【００９０】
つぎに、ステップＳＴ２１において、すべての処理を終了したか否か（処理終了？）を判断し、ＹＥＳ（処理終了）の場合には処理を終了し、ＮＯ（処理が終了していない）の場合にはつぎのステップＳＴ２２に進行する。
【００９１】
つぎに、ステップＳＴ２２において、処理バンド初期設定を行いつぎのステップＳＴ２３に進行する。
【００９２】
ステップＳＴ２２における処理バンド初期設定は、以下の３項目の内容を順に行なうことにより遂行される。
【００９３】
（１）処理バンドの右側端点（図９に示すＰ１０（右上），Ｐ１１（右下））の座標値をセットする。
【００９４】
この処理バンドの右側端点をセットするには、
（ａ）変形方向上下の処理単位を終了し、ｔパラメータ値（ｔ０）を算出
（ｂ）３次ベジエ曲線上の対応する座標値（Ｐ１０，Ｐ１１）を求める
ことにより行われる。
具体的には、既知のピクセル番号Ｐ００（図９の左上点Ｐ００のｆｃｕｒｖｅ上の座標値）から処理バンド幅（画素間距離を１以上とする）に応じて右側端点のピクセル番号Ｐ１０（図９の右上点Ｐ１０のｆｃｕｒｖｅ上の座標値）を求めるとともに、ピクセル番号Ｐ００からＰ１０までの曲線距離を図１７から図２０に示す方法に従って求め、前記の図４のｅおよび図９に示す連続輪郭ピクセル数で割ることによりｔ０を求める。続いて、図９のＡ’−Ｂ’３次ベジエ曲線関数のｔパラメータをｔ＝ｔ０として前記３次ベジエ関数Ｂ（ｔ）に代入してＰ１０の座標値を求める。同様にして、図９のＤ’−Ｃ’３次ベジエ曲線関数のｔパラメータをｔ＝ｔ０としてＰ１１の座標値を求める。
【００９５】
（２）変形方向の直線（Ｐ００−Ｐ１０）の連続輪郭ピクセル数（ｆｌｐｘｌ）の算出（図９）。ここで連続輪郭ピクセル数（ｆｌｐｘｌ）の算出とは、直線の距離を算出することである。直線の距離の算出方法については、前述したものと同様である。
【００９６】
（３）変形方向の直線（Ｐ０１−Ｐ１１）の連続輪郭ピクセル数（ｇｌｐｘｌ）の算出（図９）。ここで連続輪郭ピクセル数（ｇｌｐｘｌ）の算出とは、直線の距離を算出することである。
【００９７】
つぎに、ステップＳＴ２３において、ｆｌｐｘｌの距離がｇｌｐｘｌの距離より長いか否か（ｆｌｐｘｌ＞ｇｌｐｘｌ？）を判断し、ＮＯ（ｆｌｐｘｌの距離がｇｌｐｘｌの距離より短い）の場合には、つぎのステップＳＴ２４ａに進行し、ステップＳＴ２４ａにおいて、長い方のｇｌｐｘｌの距離が予め設定された所定のしきい値より小さいか否か（予め設定したバンドの幅より小さくて処理不適合か否か）を判断し、ＮＯ（しきい値より大きい）の場合にはつぎのステップＳＴ２６（図１５）に進行し、ステップＳＴ２４ａの判断がＹＥＳ（しきい値より小さい）の場合には、つぎのステップＳＴ２５ａに進行し、ステップＳＴ２５ａにおいて最終処理単位であり、かつ１点ではないか否かを判断し、ＹＥＳ（最終処理単位）の場合にはつぎのステップＳＴ２６（図１５）に進行し、ＮＯ（最終処理単位でない）の場合にはステップＳＴ２１に戻り、ステップＳＴ２４ａの判断がＮＯになるか、ステップＳＴ２５ａの判断がＹＥＳとなるまで繰り返す。
【００９８】
前記ステップＳＴ２３の判断がＹＥＳ（ｆｌｐｘｌの距離がｇｌｐｘｌの距離より大きい）の場合には、つぎのステップＳＴ２４ｂに進行し、ステップＳＴ２４ｂにおいて、長い方のｆｌｐｘｌの距離が予め設定された所定のしきい値より小さいか否か（予め設定したバンドの幅より小さくて処理不適合か否か）を判断し、ＮＯ（しきい値より大きい）の場合にはつぎのステップＳＴ２６（図１５）に進行し、ステップＳＴ２４ｂの判断がＹＥＳ（しきい値より小さい）の場合には、つぎのステップＳＴ２５ｂに進行し、ステップＳＴ２５ｂにおいて最終処理単位であり、かつ１点ではないか否かを判断し、ＹＥＳ（最終処理単位）の場合にはつぎのステップＳＴ２６に進行し、ＮＯ（最終処理単位でない）の場合にはステップＳＴ２１に戻り、ステップＳＴ２４ｂの判断がＮＯになるか、ステップＳＴ２５ｂの判断がＹＥＳとなるまで繰り返す。
【００９９】
すなわち、ステップＳＴ２３からステップＳＴ２５（２５ａ，２５ｂ）により、ｆｌｐｘｌの距離およびｇｌｐｘｌの距離の両者がしきい値より大きくなるまで処理を繰り返して処理単位となるバンドの幅を決定している。
【０１００】
つぎに、ステップＳＴ２６において、処理（対称バンド内の全ブロック処理）を終了したか否か（処理終了？）を判断し、ＹＥＳ（処理終了）の場合には後述するステップＳＴ３２に進行し、ＮＯ（処理が終了していない）の場合にはつぎのステップＳＴ２７に進行する。
【０１０１】
つぎに、ステップＳＴ２７において処理ブロック初期設定を行いつぎのステップＳＴ２８に進行する。
【０１０２】
ステップＳＴ２７における処理ブロック初期設定は、以下の４項目の内容を順に行なうことにより遂行される。
【０１０３】
（１）ループ処理のための初期設定。つまり、変形外形枠１２を列分割したバンドをさらに行分割するブロック処理における第１ブロックの上部端点（図１０に示すＢ００（左上），Ｂ１０（右上））の座標値をセットする。
【０１０４】
（２）変形処理最小単位１７の端点座標値（実数値：Ｂ００，Ｂ０１，Ｂ１１，Ｂ１０）の設定。つまり、変形外形枠１２（実座標１５上に展開された整数のフロートメッシュ座標）内の領域を所望の４点のピクセル（Ｂ００，Ｂ０１，Ｂ１１，Ｂ１０）により形成される四角形（Ｂ００−Ｂ０１−Ｂ１１−Ｂ１０）からなる変形処理最小単位１７（ブロック）とする４点のピクセルの座標値を設定する。
【０１０５】
（３）直線方向（Ｂ００−Ｂ０１）の直線連続輪郭ピクセル数（ｃｐｘｌ）の算出（図１０）。ここで連続輪郭ピクセル数（ｃｐｘｌ）の算出とは、直線の距離を算出することである。直線の距離の算出方法については、前述したものと同様である。
【０１０６】
（４）直線方向（Ｂ１０−Ｂ１１）の直線連続輪郭ピクセル数（ｄｐｘｌ）の算出（図１０）。ここで連続輪郭ピクセル数（ｄｐｘｌ）の算出とは、直線の距離を算出することである。直線の距離の算出方法については、前述したものと同様である。
【０１０７】
つぎに、ステップＳＴ２８において、ｃｐｘｌの距離がｄｐｘｌの距離より長いか否か（ｃｐｘｌ＞ｄｐｘｌ？）を判断し、ＮＯ（ｃｐｘｌの距離がｄｐｘｌの距離より短い）の場合には、つぎのステップＳＴ２９ａに進行し、ステップＳＴ２９ａにおいて、長い方のｄｐｘｌの距離が予め設定された所定のしきい値より小さいか否か（予め設定したブロック１７の幅より小さくて処理不適合か否か）を判断し、ＮＯ（しきい値より大きい）の場合にはつぎのステップＳＴ３１に進行し、ステップＳＴ２９ａの判断がＹＥＳ（しきい値より小さい）の場合には、つぎのステップＳＴ３０ａに進行し、ステップＳＴ３０ａにおいて最終処理単位であり、かつ１点ではないか否かを判断し、ＹＥＳ（最終処理単位）の場合にはつぎのステップＳＴ３１に進行し、ＮＯ（最終処理単位でない）の場合にはステップＳＴ２６に戻り、ステップＳＴ２９ａの判断がＮＯになるか、ステップＳＴ３０ａの判断がＹＥＳとなるまで繰り返す。
【０１０８】
前記ステップＳＴ２８の判断がＹＥＳ（ｃｐｘｌの距離がｄｐｘｌの距離より大きい）の場合には、つぎのステップＳＴ２９ｂに進行し、ステップＳＴ２９ｂにおいて、長い方のｃｐｘｌの距離が予め設定された所定のしきい値より小さいか否か（予め設定したブロック１７の幅より小さくて処理不適合か否か）を判断し、ＮＯ（しきい値より大きい）の場合にはつぎのステップＳＴ３１に進行し、ステップＳＴ２９ｂの判断がＹＥＳ（しきい値より小さい）の場合には、つぎのステップＳＴ３０ｂに進行し、ステップＳＴ３０ｂにおいて最終処理単位であり、かつ１点ではないか否かを判断し、ＹＥＳ（最終処理単位）の場合にはつぎのステップＳＴ３１に進行し、ＮＯ（最終処理単位でない）の場合にはステップＳＴ２６に戻り、ステップＳＴ２９ｂの判断がＮＯになるか、ステップＳＴ３０ｂの判断がＹＥＳとなるまで繰り返す。
【０１０９】
すなわち、ステップＳＴ２８からステップＳＴ３０（３０ａ，３０ｂ）により、ｃｐｘｌの距離およびｄｐｘｌの距離の両者がしきい値より大きくなるまで処理を繰り返して変形処理最小単位１７（ブロック）の幅（大きさ）を決定している。
【０１１０】
つぎに、ステップＳＴ３１において、描画／印刷出力処理を行いつぎのステップＳＴ３２に進行する。
【０１１１】
ステップＳＴ３１における描画／印刷出力処理は、以下の５項目の内容を順に行なうことにより遂行される。
【０１１２】
（１）画像濃度値の取得。つまり、変形処理最小単位（ブロック）１７を形成する４点のピクセル（Ｂ００，Ｂ０１，Ｂ１１，Ｂ１０）の内の左方上方のピクセル（Ｂ００）に対応する原画の濃度値（画像濃度値：Ｇ００）を変形処理最小単位としてのブロック１７全体の濃度値とする。
【０１１３】
（２）変形処理最小単位１７を囲む矩形（ｆｍａｘ，ｆｍｉｎ）の算出。ここで、変形処理最小単位１７を囲む矩形（ｆｍａｘ，ｆｍｉｎ）の算出とは、ブロック１７を形成する四角形（Ｂ００−Ｂ０１−Ｂ１１−Ｂ１０）を囲む矩形の四角形を形成するものである。
【０１１４】
（３）丸め誤差リカバー値を加えて塗りつぶし整数矩形領域を決定。これは、ブロック１７を形成する四角形（Ｂ００−Ｂ０１−Ｂ１１−Ｂ１０）を囲む矩形の四角形の４つの端点を、変形外形枠１２を形成する整数のフロートメッシュ座標（実座標）１５上の座標に展開し、図１２に示すように、四角形（Ｂ００−Ｂ０１−Ｂ１１−Ｂ１０）を囲む矩形の四角形（Ｑ０−Ｑ１−Ｑ２−Ｑ３）を形成して整数のフロートメッシュ座標１５上に隙間なく連続させて展開するものである。
【０１１５】
（４）整数矩形領域を濃度値Ｇ００で塗りつぶす。これは、変形外形枠１２を形成する整数のフロートメッシュ座標（実座標）１５上の座標に展開した四角形（Ｂ００−Ｂ０１−Ｂ１１−Ｂ１０）を囲む矩形の四角形（Ｑ０−Ｑ１−Ｑ２−Ｑ３）内を原画の濃度値（画像濃度値：Ｇ００）にて塗りつぶすものである。
【０１１６】
（５）上下座標値の更新（Ｂ００＜−Ｂ０１，Ｂ１０＜−Ｂ１１）。これは、つぎのブロック１７の処理を行うために、塗りつぶしを施したブロック１７の下部端点Ｂ０１およびＢ１１をつぎに処理するブロック１７の上部端点Ｂ００およびＢ１０に置き換えるものである。
【０１１７】
つぎに、ステップＳＴ３２において、変形方向上部の座標値更新（Ｐ００＜−Ｐ１０，Ｐ０１＜−Ｐ１１）を行ないステップＳＴ２１へ戻りすべての処理を終了するまでステップＳＴ２１からステップＳＴ３２を繰り返すようにされている。
【０１１８】
ステップＳＴ３２における変形方向上部の座標値更新（Ｐ００＜−Ｐ１０，Ｐ０１＜−Ｐ１１）は、つぎのバンドの処理を行うために、塗りつぶしを施したバンドの右側端点Ｐ１０およびＰ１１をつぎに処理するバンドの左側端点Ｐ００およびＰ０１に置き換えるものである。
【０１１９】
以上のようにして、変形外形枠１２上の各ピクセルに、基準外形枠１１上における各ピクセルの相互の位置関係を容易に反映させることができるため、基準外形枠１１に対する原画像データの相対位置関係を保持するようにして、原画像データを所望の形状に変形させることができるので、写真などの画素により形成される原画像データを円形形状、楕円形状、扇形形状、四角形状、短冊形状、円筒形状、アーチ形状等に自在に変形可能であるとともに、変形後の画像の品質を優れたものとすることができる。
【０１２０】
また、基準外形枠１１の変形形態である変形外形枠１２の形状は、図２２に示すように、台形、円形、円筒形またはアーチ形、扇形などをデフォルト変形形状とし、このデフォルト変形形状と、台形を四角形変形したり、円形を楕円変形したり、円筒形またはアーチ形をアーチの深さ変更したり、扇形をコントロール・ポイント操作による任意変形するなどしてデフォルト変形形状を修正した修正変形形状とを用いるとよい。例えば、図２２のデフォルト変形形状が円形であるような、変形外形枠が全て曲線で構成されるような場合においては、例えば円形に内接する矩形を想定し、４個の内接点を図４ｅに示されている変形外形枠の４個の基準点Ａ'Ｂ'Ｃ'Ｄ'にそれぞれ相当すると設定し、Ａ'＝Ｄ'（Ａ'とＤ'とが同一点とする）、Ｂ'＝Ｃ'（Ｂ'とＣ'とが同一点とする）、曲線Ａ'Ｂ'を上半円、曲線Ｄ'Ｃ'を下半円と設定する。この場合、図４ｅのｘ軸に相当するのは曲線Ａ'Ｂ'であり、ｙ軸に相当する軸は点（Ａ'またはＤ'）となる。その後の処理は、図４に示す矩形の変形枠と同様にして行う。
【０１２１】
また、画像データ編集としてカラー写真の変形例を図２３に示す。
【０１２２】
また、本発明に用いる原画としては、前述した画像データとして深さの画像情報（濃度値）を有する点（画素：ピクセル）の集合により構成されている階調を有するモノクロ写真あるいはカラー写真ばかりでなく、文字や図形などの２値化可能な原画像の画像データ（ベクトルデータあるいはドットデータ）を用いることができる。すなわち、２値のイメージ画像または濃淡／カラー画像などの極めて広範囲の原画の画像に対応させることができる。この２値のイメージ画像の変形例を図２４に示す。
【０１２３】
なお、本発明は、前記実施形態に限定されるものではなく、必要に応じて変更することができる。
【０１２４】
【発明の効果】
以上説明したように本発明の画像データ編集装置によれば、基準外形枠を所望の形状に変形させることにより、基準外形枠に対する原画像データの相対位置関係を保持させた状態で、原画像データを変形させることができるので、２値のイメージ画像または濃淡／カラー画像からなる原画像データを円形形状、楕円形状、扇形形状、四角形状、短冊形状、円筒形状、アーチ形状等に自在に変形可能であるとともに、変形後の画像の品質を優れたものとすることができるという極めて優れた効果を奏する。
【図面の簡単な説明】
【図１】本発明に係る画像データ編集装置の要部の構成を示すブロック図
【図２】本発明に係る画像データ編集を示すフローチャート
【図３】基準外形枠の変形時の線分の組み合わせを説明する説明図であり、ａはモノクロ写真を原画とした場合の原画像の一例を示し、ｂは基準外形枠を示し、ｃは基準外形枠の縦方向変形時の線分の組み合わせを示し、ｄは縦方向変形後の変形外形枠を示し、ｅは縦方向変形した画像を拡大して示し、ｆは基準外形枠の横方向変形時の線分の組み合わせを示し、ｇは横方向変形後の変形外形枠を示し、ｈは横方向変形した画像を拡大して示す
【図４】縦方向変形について説明する説明図であり、ａは基準外形枠に収納されたピクセルを示し、ｂは基準外形枠上のピクセルを示し、ｃは基準外形枠上のピクセルの位置を示し、ｄはパラメータ座標上のピクセルの位置を示し、ｅは変形外形枠を示し、ｆは変形パラメータ座標上のピクセルの位置を示し、ｇは変形外形枠上に変換されたピクセルの位置を示す
【図５】中間曲線の算出方法を説明する説明図
【図６】列分割を説明する模式図
【図７】行分割を説明する模式図
【図８】ブロックを説明する模式図
【図９】バンドの設定を説明する説明図
【図１０】ブロックの設定を説明する説明図
【図１１】ブロックを説明する説明図
【図１２】ブロックを囲む矩形の四角形を説明する説明図
【図１３】変形外形枠の塗りつぶしを説明する説明図
【図１４】本発明に係る画像データ編集装置における画像データ編集のアルゴリズムを説明するフローチャートを２分割した一方
【図１５】本発明に係る画像データ編集装置における画像データ編集のアルゴリズムを説明するフローチャートを２分割した他方
【図１６】３次ベジエ関数およびそのパラメータを示す模式図
【図１７】３次ベジエ関数を説明する説明図
【図１８】曲線の距離の計算方法を説明する説明図
【図１９】曲線の距離の計算方法の一例を説明する説明図
【図２０】曲線の距離の計算方法の他例を説明する説明図
【図２１】直線状の３次ベジエ関数を説明する説明図
【図２２】基準外形枠および変形外形枠の形状例を示す図
【図２３】本発明に係る画像データ編集装置によるカラー写真を原画とした場合の原画とその変形例とを示す説明図
【図２４】本発明に係る画像データ編集装置による２値のイメージ画像を原画とした場合の原画とその変形例とを示す説明図
【図２５】従来の射影変形を用いた変形後の画像を示す図
【符号の説明】
１  画像データ編集装置
２  原画像データ読み取り手段
３  パラメータ座標形成手段
４  変形外形枠形状読み取り手段
５  変形パラメータ座標形成手段
６  実座標算出手段
７  画像変形描画単位設定手段
８  原画像濃度値取得手段
９  画像描画手段
１０  処理精度設定部
１１  基準外形枠
１２  変形外形枠
１３  整数のメッシュ座標（ｘ−ｙ座標）
１４  パラメータ座標
１５  整数のフロートメッシュ座標（実座標）
１６  変形パラメータ座標
１７  変形処理最小単位（ブロック）
【図１】
0003612257.tif 000006
【図２】
0003612257.tif 000007
【図３】
0003612257.tif 000008
【図４】
0003612257.tif 000009
【図５】
0003612257.tif 000010
【図６】
0003612257.tif 000011
【図７】
0003612257.tif 000012
【図８】
0003612257.tif 000013
【図９】
0003612257.tif 000014
【図１０】
0003612257.tif 000015
【図１１】
0003612257.tif 000016
【図１２】
0003612257.tif 000017
【図１３】
0003612257.tif 000018
【図１４】
0003612257.tif 000019
【図１５】
0003612257.tif 000020
【図１６】
0003612257.tif 000021
【図１７】
0003612257.tif 000022
【図１８】
0003612257.tif 000023
【図１９】
0003612257.tif 000024
【図２０】
0003612257.tif 000025
【図２１】
0003612257.tif 000026
【図２２】
0003612257.tif 000027
【図２３】
0003612257.tif 000028
【図２４】
0003612257.tif 000029
【図２５】
0003612257.tif 000030