JP3327622B2 - ベジェスプラインから2次多項式フラグメントへの変換 - Google Patents

ベジェスプラインから2次多項式フラグメントへの変換

Info

Publication number
JP3327622B2
JP3327622B2 JP10323493A JP10323493A JP3327622B2 JP 3327622 B2 JP3327622 B2 JP 3327622B2 JP 10323493 A JP10323493 A JP 10323493A JP 10323493 A JP10323493 A JP 10323493A JP 3327622 B2 JP3327622 B2 JP 3327622B2
Authority
JP
Japan
Prior art keywords
spline
qpf
slope
error
end point
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
JP10323493A
Other languages
English (en)
Other versions
JPH06318258A (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Publication of JPH06318258A publication Critical patent/JPH06318258A/ja
Application granted granted Critical
Publication of JP3327622B2 publication Critical patent/JP3327622B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、グラフィック・システ
ムの曲線の表示に関するものであって、特に3次多項式
に依って説明されるオブジェクトが対応する2次多項式
の説明に変換されることができる方法を説明するもので
ある。
【0002】
【従来の技術】コンピュータ化グラフィック・システム
は一般的に1つまたは複数のグラフィック・オブジェク
トに基づいてイメージを形成し、各々がイメージの特定
の形状、構成要素、またはラインを形成している。普通
は、各々オブジェクトは、アウトライン曲線がオブジェ
クト構造の部分を自ら形成できるアウトライン曲線の内
部と外部の間のカラーを変更することに依って、表示さ
れることができるオブジェクトの内部を定めるアウトラ
イン曲線に依って定められる。
【0003】各々オブジェクトのアウトラインを定める
1つの普遍的な形状はスプライン・フォーマットであ
り、ほとんどの普遍的なスプライン・フォーマットは、
Bezier曲線のような、パラメトリック3次多項式に適し
た種々の形状になっている。用いられることができる他
のタイプの3次多項式はHermite とBspline である。
【0004】
【発明が解決しようとする課題】3次多項式は高品質の
グラフィック・イメージを生成するために長年にわたっ
て用いられてきたが、該イメージは、ビデオ・ディスプ
レイ・ユニットまたはプリンタのように、ディスプレイ
の各々スキャン・ライン上で曲線アウトラインの種々の
ピクセル・ロケーションを得るために、3次多項式の根
を計算する必要性のために計算と表示にかなりの時間を
要している。
【0005】現在の技術レベルは3次多項式をリアルタ
イムでフル・ビデオ・アニメーション用に表示するため
に要求される必要な計算を実施できるハードウェアを十
分に提供できるが、該ハードウェアは、非常に複雑で高
価なので、消費者マーケットに容易に進出することがで
きない。
【0006】
【課題を解決するための手段】クロス・リファレンス
が、ここで同時に提示される次に示す特許明細書に加え
られ、なおかつ、その開示がクロス・リファレンスに依
ってここで包合される、 (i) “リアルタイム・オブジェクト・ベース・グラフ
ィック・システム”という名称の、1992年4 月29日のオ
ーストラリア特許出願 No. PL2147 (iv) “グラフィック・システムのエッジ計算”という
名称の、1992年4 月29日のオーストラリア特許出願 No.
PL2156 (v) “RTO グラフィック・システムのための前処理パ
イプライン”という名称の、1992年4 月29日のオースト
ラリア特許出願 No. PL2142 (vi) “グラフィック・システムのためのオブジェクト
分類”という名称の、1992年4 月29日のオーストラリア
特許出願 No. PL2145 (vii) “2次多項式フラグメントを使用するオブジェク
ト・ベース・グラフィック”という名称の、1992年4 月
29日のオーストラリア特許出願 No. PL2150
【0007】前述の明細書に、曲線アウトラインの表現
に適した代替フォーマットを使用することが提案されて
いる。3次多項式、特に3次スプラインを使用する代わ
りに、2次多項式フラグメント(QPF) の使用が提案され
ている。QPF は、それらの表現が3次多項式と逆の2次
多項式に基づいていることから、好都合に2つの別の追
加に依って、速やかに容易に計算されることができるの
で、オブジェクト・ベース・イメージのリアルタイムの
計算と作動が可能になる。
【0008】このようにして、グラフィック・オブジェ
クトは、オブジェクト・アウトラインの種々の部分を定
め且つオブジェクト・エッジがイメージを表示する前に
計算されることができる複数のQPF に分割されることが
できる。
【0009】特に“2次多項式フラグメントを使用する
オブジェクト・ベース・グラフィック”という名称の、
1992年4 月29日のオーストラリア特許出願 No. PL2150
に説明されているように、QPF は、次に示すQPF データ
要素、START_PIXEL 、△PIXEL 、△△PIXEL 、START_LI
NE、END_LINEに依って説明されることができる。このよ
うにして、該QPF データは、次に示すようにSTART_LINE
とEND_LINEの間でQPFに沿ってピクセル・ロケーション
値(PIXEL) を生成するために用いられることができる。 PIXEL(linen+1)=PIXEL(linen)+ΔPIXEL(linen) ΔPIXEL(linen+1)= ΔPIXEL(linen)+ ΔΔPIXEL ここで PIXEL(linen=START_LINE)=START_PIXEL;and ΔPIXEL(linen=START_LINE)=ΔPIXEL.
【0010】Bezierスプラインのような3次多項式に依
って説明される非常に数多くのグラフィック・オブジェ
クトがいま存在するので、周知のスプライン・フォーマ
ットで説明されるオブジェクトがQPF に変換されること
ができる手段が与えられることが望まれる。
【0011】従来の技術に存在していた前述の難しさの
少なくとも1つを実質的に克服するかまたは低減するこ
とが、本発明の目的である。
【0012】本発明の第1の見地に従って、複数のスプ
ライン・フォーマットに依って説明されるコンピュータ
化グラフィック・システムのオブジェクトを複数の2次
多項式フラグメント(QPF) に依って説明される対応する
オブジェクトに変換し、変換したQPFデータを用いて、
出力装置のスキャンライン上でオブジェクトのピクセル
位置を決定する方法が開示され、前記の方法は、前記の
オブジェクトの各々スプラインに対して、(a) 開始と終
了ポイントを前記のスプライン上で選択し且つ対応する
QPF 上で対応する開始と終了ポイントと同じであること
を指定することと、(b) スプラインのコントロール・ポ
イントから、前記のQPF を説明する2次多項式の係数を
決定することと、(c) スプラインと2次多項式間のエラ
ーが予め設定されたレベルより低いことを決定するため
に係数を使用することと、(d) その場合、前記の係数か
ら、前記の2次多項式を説明するQPF データを決定する
ステップを具備している。
【0013】エラーが予め設定された大きさより低くな
い場合、(e) スプラインは対応する2次多項式が決定さ
れる2つ以上のサブスプラインに分割される。このステ
ップは、各々2次多項式と対応するサブスプライン間の
エラーが予め設定された大きさより低くなるまで必要に
おうじて繰り返される。エラーは、面積エラーまたは角
度エラーあるいはその両方になる場合がある。
【0014】本発明の第2の見地に従って、複数のスプ
ライン・フォーマットに依って説明されるコンピュータ
化グラフィック・システムのオブジェクトを複数の2次
多項式フラグメント(QPF) に依って説明される対応する
オブジェクトに変換し、変換したQPFデータを用いて、
出力装置のスキャンライン上でオブジェクトのピクセル
位置を決定する方法が開示され、前記の方法は、前記の
オブジェクトの各々スプラインに対して、(a) 開始と終
了ポイントを前記のスプライン上で選択し且つ対応する
QPF 上で複数のQPF に対して対応する開始と終了ポイン
トと同じであることを指定することと、(b) スプライン
のコントロール・ポイントから、各々前記のQPFを説明
する2次多項式の係数を決定することと、(c) スプライ
ンと2次多項式間のエラーが予め設定されたレベルより
低いことを決定するために前記係数を使用することと、
(d) その場合、前記係数から、前記2次多項式を説明す
るQPF データを決定するステップを具備している。
【0015】エラーが予め設定された大きさより低くな
い場合、(e) スプラインは、対応する2次多項式が第1
または第2の見解から(a) 〜(d) のステップを用いて決
定される2つ以上のサブスプラインに分割される。この
ステップは、各々2次多項式と対応するサブスプライン
間のエラーが予め設定された大きさより低くなるまで必
要におうじて繰り返される。
【0016】本発明の別の見解に従って、前記のデータ
が複数の2次多項式フラグメントを具備していることを
特徴とするグラフィック・オブジェクト・データの記憶
のために構成されているメモリ・デバイスが開示され
る。
【0017】好都合に、エラーは、面積エラーまたは角
度エラーになり、なおかつ、最も好都合に両方の場合に
もなる。
【0018】
【0019】本発明の別の見地に従って、コンピュータ
化グラフィック・システムのオブジェクトの部分を、複
数の2次多項式フラグメント(QPF) に依って説明される
対応するオブジェクトに変換し、変換したQPFデータを
用いて、出力装置のスキャンライン上でオブジェクトの
ピクセル位置を決定する方法が開示され、前記の部分は
閉ループを形成する複数のスプラインに依って説明さ
れ、前記の方法は、(a)前記の閉ループの第1スプライ
ンを選択し且つ前記の第1スプラインが、(i) 第1スプ
ラインの開始ポイントに対応するセットQPF ポイントを
選択し、(ii) 前記のスプラインと同じ開始スロープと
同じ終了スロープを備えた対応する開始QPF を計算し、
(iii) 前記のQPF の終了ポイントと前記の第1スプライ
ンの終了ポイント間の違いを測定し、(iv) 前記の違い
が予め設定された公差より小さい場合、第1スプライン
に対して十分な精度の近似として前記の開始QPF を承認
し且つ閉ループの他のスプラインに対してステップ(b)
と(c) に進み、(v) 前記の違いが予め設定された公差よ
り小さくない場合、前記の第1スプラインを少なくとも
2つのスプライン部分に分割し且つステップ(a) を前記
の第1スプラインの第1部分に、ステップ(b) と(c) を
他の部分に適用し、(b) 前記の閉ループの中間スプライ
ンの全てが、(i) 既に計算されていたQPF の終了ポイン
トを今のQPF の開始ポイントとして選択し、(ii) 対応
する前記の中間スプラインと同じ開始スロープと同じ終
了スロープを備えた今のQPF を計算し、(iii) 前記の今
のQPF の終了ポイントと前記の対応する中間スプライン
の終了ポイント間の違いを測定し、(iv) 前記の違いが
予め設定された公差より小さい場合、対応する中間スプ
ラインの十分な精度の近似として前記の今のQPF を承認
し且つ閉ループの他のスプラインに対してステップ(b)
と(c) に進み、(v) 前記の違いが予め設定された公差よ
り小さくない場合、前記の今のスプラインを少なくとも
2つのスプライン部分に分割し且つ前記のスプライン部
分でステップ(b) と(c) を実施し、(c) 前記の閉ループ
の最終スプラインが、(i) 既に計算されていたQPF の終
了ポイントを最後のQPF の開始ポイントとして選択し、
(ii) 前記の最終スプラインと同じ開始スロープと同じ
終了ポイントを備えた最後のQPF を計算し、(iii) 予め
設定された基準が前記の最後のQPF と前記の最終スプラ
インの間で満足されているかどうか決定し、(iv) 前記
の基準が満足されている場合、最終スプラインに対して
十分な精度の近似として前記の最終QPF を承認し、(v)
前記の違いが予め設定された公差より小さくない場合、
前記の最終スプラインを少なくとも2つのスプライン部
分に分割し且つ前記のスプライン部分でステップ(b) と
(c) を実施するステップを具備している。
【0020】
【実施例】図1を見ると、START_PIXEL のSTART_LINEで
開始し、END_LINEに延長する、1つのQPF が図示されて
いる。図1に見られる水平ラインは、ビデオ・ディスプ
レイ・ユニットのラスター・ラインのようなディスプレ
イのスキャン・ラインまたはプリンタのスキャン・ライ
ンを表している。QPF データは、特定のQPF のために各
々ライン上の各々ピクセルの値が前述の方式で計算され
ることができるように構成されている。
【0021】曲線の定義 Bezierスプラインは、一般的に、パラメトリックな式の
形で表される。
【数1】
【0022】この形式は、uが0と1の間で変わる、パ
ラメータuから、xとyを独自に決定するために用いら
れる。
【数2】
【0023】3次スプラインの場合、関係は式(3) に与
えられるようになる。
【数3】
【0024】2次多項式フラグメント(QPF) は放物線の
セクションを表す。そこで、その関係は次のようにして
表されることができる。
【数4】
【0025】QPF は、特に、しかし排他的でなく、グラ
フィック・オブジェクト・イメージ作動のために、前述
のクロス・リファレンスされた1992年4 月29日のオース
トラリア特許出願 No.PL2147に開示されているような装
置を用いて開発された。
【0026】従って、スキャン・ラインの軌跡のよう
に、曲線の新しいピクセル値は、QPFの△PIXEL と△△P
IXEL 値から計算される。そこで、グラフィック・シス
テムの場合、式(4) の更なる的確な表現は次のようにな
る。
【数5】
【0027】すなわち、xはライン方向になり、なおか
つ、yはピクセル方向になる。
【0028】aがゼロに等しい場合、QPF は直線を表し
ている。
【0029】更に、好まれる実施態様のBezierスプライ
ンは、スタンダード4ポイント・フォーマットを用いて
説明される。すなわち、P0 (x0 ,y0 )は開始する
終了ポイントであり、P1 (x1 ,y1 )とP2 (x2
,y2 )は次のコントロール・ポイントであり、P3
(x3 ,y3 )は最後の終了ポイントである。また、好
まれる実施態様は、第1と第2の両方のオーダーの連続
性を備えたスプラインとQPF をマッチングさせる。第1
オーダーの連続性は、2つの曲線が一致する終了ポイン
トをもつ場合である。第2オーダーの連続性は、終了ポ
イントが一致し且つ曲線が接合ポイントで同じスロープ
をもつ場合に達成される。
【0030】反復変換方法 スプラインを反復変換方法と呼ばれるQPF に変換するた
めに好まれる方法が、ここで説明される。
【0031】変換規定 スプラインをQPF に変換する際に、次に示す属性が望ま
れる。
【0032】同じ終了ポイント スプラインの開始と終了ポイントとQPF は(第1オーダ
ーの連続性を維持するために)同じであることが重要で
ある。これは式(6) の関係に依って示される。式(4) を
式(6) に代入して同時に求めた結果は、bとcがaに関
して直線的になることを示している。この関係は式(7)
に示されている。
【数6】
【0033】面積公差 曲線は類似のパスを通るべきである。公差は、従って、
オリジナル・パスからの許容変位を測定するために決定
されなければならない。好都合に、この公差は、目が感
知できるエラーに関して定義されるべきである。該定義
は、しかし、他の場合には小さい変位でも認められない
が(例えば小さい変位でも鋭い場合、または小さい曲が
りを平にしてしまう場合)、或る条件の時に大きな変位
が認められるので(例えば変位が滑らかで且つ曲げられ
るべきであるエッジを平にしない)極端に複雑になる。
【0034】このエラーを管理する1つの方法は、オリ
ジナルのスプラインとQPF の間の許容面積に関する公差
を定義することである。オリジナルのパスからの僅かの
距離変位は、スプラインの長さが増加するにつれて累積
される面積を増加するので、この面積公差は単位長あた
りの面積で設定されなければならない。
【0035】角度公差 第2オーダーの連続性は、目はライン間の傾斜の変化に
対して特に敏感なので、可視性アプリケーションで維持
されなければならない。放物線はスプラインと同じ自由
度をもたないので、完全なマッチングが任意の1つのQP
F のスプラインの終了ポイントの傾斜に対して見られる
ことができることは保証されない。従って角度変位の公
差が変換に必要になる。これは、或るスロープがゼロま
たは無限の傾斜をもつので、傾斜変位でなく、角度変位
でなければならないことに注目すべきである。
【0036】平坦性公差 変換アルゴリズムは、スプラインの表示に要求されるQP
F の数を最小限にするようにすべきである。この規定
は、平坦性公差の導入に依って推進されることができ
る。すなわち、直線からのスプラインの変位の測定が行
われることができる。この変位が指定された公差より小
さい場合、スプラインは、直線と見なされるので、1つ
の直線状のQPF に変換される。
【0037】係数限界 QPF は、△PIXEL と△△PIXEL 値の計算に依ってリアル
タイムに作動されるように設計されている。これらの計
算を行う任意のハードウェアは、これらの変数がとるこ
とができる値に限界をもつことになる。例えば、1992年
4 月29日のオーストラリア特許出願 No.PL2147の装置の
場合、△PIXEL は -128 〜 +127.996093750 の範囲に入
っていなければならないし、△△PIXEL は -0.5 〜 +0.
499984741 の範囲に入っていなければならない。
【0038】△PIXEL 限界は、マッチングされることが
できる最大スロープを与える。この限界を逸脱する場
合、ラインは、垂直と見なされるので廃棄されなければ
ならない。
【0039】△△PIXEL 限界は、マッチングする放物線
のa係数の値に限界を与える。式(5) のように定義され
るQPF が与えられると、△△PIXEL は下記に依って与え
られる。
【数7】
【0040】1992年4 月29日のオーストラリア特許出願
No.PL2147の装置の場合、従って、aは -0.25 〜 +0.2
49992371 の範囲に限定される。
【0041】一般的な変換プロセス 既に概略的に説明された規定から、一般的な変換プロセ
スが作成されることができる。このプロセスは次のよう
になる。 IF スプラインが平らである(指定された公差内) THEN それを直線状QPF に変換する ELSE 1つまたは複数の放物線をスプラインとマッチングして、第1オーダーの連続 性とaの限界を維持する IF 面積エラーと角度エラーが公差範囲内 THEN 放物線をQPF に変換する ELSE スプラインを分割して、前述のことを各々終了に対して個々に反復する ENDIF ENDIF
【0042】放物線をスプラインにマッチング 放物線をスプラインにマッチングする時に、それが1つ
だけの放物線とマッチングされなければならない理由は
ない。実際に、これは不満足な結果をほとんどの場合に
与える。一般的に、優れた結果は複数の放物線をマッチ
ングすることに依って得られることができるが、3つ以
上の放物線が用いられる場合に、演算は手順を非常にコ
ンピュータ集中型にする。
【0043】従って、1つの放物線または2つの放物線
マッチングが見られることができない場合、スプライン
はサブスプラインに好都合に分割され、サブスプライン
が変換される。
【0044】1つの放物線をマッチング 可視性面積エラーを最小限にする ここで図2を見ると、巧みにQPF22 がスプライン21に入
っている様子を説明し、スプラインの下の面積を見て且
つQPF の下の面積を引き算する1つの方式が図示されて
いる。
【0045】曲線間のこの面積の違い23は、最終面積測
定を常にプラスに保持するために好都合に2乗され、式
(9) の中間2乗エラー項になる。
【数8】
【0046】式(9) は、次に示すように式(4) を代入す
ることに依ってa、b、cに関して表されることができ
る。
【数9】
【0047】式(10)を拡大し、a、b、cに関して表す
と、次のようになる。
【数10】
【0048】積分値を集めると、エラー項は次のように
なる。ここで
【数11】
【0049】式(7) は、エラー項が、最小面積エラーを
生成するaの値を見いだすために、最小限にされること
ができるaの2次式になることを示すために、式(12)に
適用されることができる。
【数12】
【0050】式(13)は、その開始と終了ポイントがマッ
チングする任意のスプラインと放物線の一般的な面積エ
ラーになる。しかし、計算は積分項の各々に非常に集中
している。エラー項を計算するためのこの処理の一部を
避ける方式は、その開始ポイントがオリジナルとなるよ
うに、スプラインを変換することである。マッチングす
る放物線が見いだされると、それは、オリジナルのスプ
ライン・ポジションに変換されて戻ることができる。ス
プラインの開始ポイントがオリジナルにある時に、次に
示す関係が真になる。
【数13】
【0051】積分の記号評価、および式の単純化が、ス
プラインのコントロール・ポイントに関してα,β,γ
を定義する、式(15)と式(16)と式(17)の結果になる。
【数14】
【0052】α,β,γが知られると、式(13)は、最小
面積放物線に適したaの計算に用いられることができ
る。aが許容限界(係数限界という名称の前の説明を参
照)外になる場合、それは最も近い限界にセットされる
べきである。
【0053】aが知られると、面積エラーが計算される
ことができる。エラー項は、絶対値であり、なおかつ相
対エラーを生成するスプラインの長さに依って分割され
るべきである。エラーが許容可能(予め設定された公差
内)な場合、放物線(式(14)はaに関してbとcを与え
る)は、好ましい適合状態になり、なおかつQPF の生成
に用いられることができる(放物線をオリジナルの開始
ポジションに変換して戻すことを思い出してほしい)。
面積が許容されない場合、オリジナルのスプライン(変
換されていない)はサブスプラインに分割されることが
できて、なおかつ、変換手順は各々サブスプライン上で
繰り返し実施されることができる。スプラインを分割す
る例の手順は、代替アプローチが変曲のポイントまたは
或る他の発見的手法で分割されることができるが、ポジ
ションをスプライン(u=1/2) の下方のパラメトリックな
半分になる。
【0054】次に示すのは、このプロセスの手順であ
る。 parabola = Calc_MinError_Parabola(spline) IF aが限界外 THEN aを最も近い限界に移動する ENDIF area_err = Calc_Min_Area_Error(spline, parabola)/Length(spline) IF area_err < area_tolerance Found_QPF(parabola) ELSE Split_And_Convert(spline) EI
【0055】代替面積最小限化方法 可視性面積の最小限化は、前述のように、面積最小限化
に対する最も適切なアプローチであるが、その背後にあ
る演算は複雑で、なおかつ、変換プロセスは従って計算
の規模も大きくなる。単純化されたエラー測定を与える
ことに依って演算を単純にする、代替方法が存在する。
【0056】この方法は、放物線をスプラインに変換
し、なおかつ、オリジナルのスプラインの“y ”曲線と
新しい放物線スプラインの“y ”曲線の間の面積を最小
限にすることを包合している。“x ”曲線間のエラーは
無視されるので、このアプローチは可視性面積アプロー
チほど正確でない。それは、しかし、計算時間が短縮す
る認められる結果を導く。
【0057】与えられる放物線のセクションは、従っ
て、次のようになることが示されることができて、
【数15】 同じスプラインは、従って、4つのポイントで識別され
ることができる。
【数16】
【数17】
【0058】放物線と同じスプラインが与えられると、
エラー項は、式(9) に与えられているエラーと同じ方式
で計算されることができる、すなわち、
【数18】 ここで、q(u)は、式(3) で与えられるスプラインyの式
である。
【数19】
【0059】この積分の評価は、下記と同じエラーの値
になる。
【数20】
【0060】このエラー項は、スプラインと放物線をオ
リジナルに変換し、x0 とy0 をゼロにセットして単純
にされることができる。次に示すのは、その結果であ
る。
【数21】
【0061】aに関する面積エラーの消失がゼロに等し
くされる場合、面積の違いを最小限にするaの値の結果
になる。この値は次の式から与えられる。
【数22】
【0062】放物線がオリジナルに変換されると、これ
は次の値になる。
【数23】
【0063】aの値が見いだされると、面積エラーは式
(29)または式(30)を用いて計算されることができる。面
積エラーが公差内の場合、放物線が与えられたaをもち
且つポイント( xa ,ya)と( xa ,yb)を通る事実が
与えられると、bとcの値を評価することが、直線的な
前向きの手法になる。
【0064】第2オーダーの連続性の維持 1つの放物線をスプラインにマッチングする時に、3つ
の自由度を使用できる。これらは放物線のa、b、c係
数である。“両方の終了ポイントがマッチングしなけれ
ばならない”2つの制約条件を与えることに依って、自
由度は1に減少される。そこで、1つの余計な制約条件
を与えることができる。前述のように、これは“面積エ
ラーを最小限にする”ために行われる。
【0065】従って、更なる制約条件は与えられること
ができない。特に、スプラインの終了ポイントの放物線
のスロープに対する制約条件は与えられることができな
い。
【0066】その結果、前述の方法の何れかに依って求
められる“最小面積”放物線は、それが許容第2オーダ
ー連続性をもてないので、最適可視性マッチングになら
ない。変換アルゴリズムは、角度公差を用いて角度の違
いを説明することもできる。
【0067】違いは、スロープに関してでなく、角度で
好都合に測定される。これは、角度が90゜ に近づくにつ
れて、大きいスロープの違いは狭い角度の違いに変換す
るが、小さいスロープの違いは、大きい角度の違いに狭
い角度(0度に近い)で変換するためである。
【0068】第2オーダーの連続性を維持するために、
そこで、スプラインと放物線の開始と終了ポイントの角
度は指定された公差内でマッチングしなければならな
い。開始角度が公差内であるかどうかについて決定する
手順は、次のように説明されることができる、 spline_angle = P0 のスプラインの正接が水平になる角度を計算する parabola_angle = ポイントP0の放物線の正接が水平になる角度を計算する IF (spline_angle - parabola_angle)の絶対値が角度公差外になる THEN TRUEにリターン ELSE FALSE にリターン ENDIF
【0069】類似のチェックがスプラインの終わりのポ
イントで行われるべきである。
【0070】スプラインが面積公差とマッチングしたけ
れでも、角度公差に何れかの終了で入らない場合、(そ
れにもかからず)面積エラーは公差内に入ったままで、
角度を公差内に調整することができる。これは、大きい
角度エラーを示す終了ポイントを選択し、なおかつ、公
差内に入るまで放物線の角度をスプラインに向けて動か
すことに依って達成される。このポイントで、新しい放
物線は次に示す方式で計算される。
【0071】放物線が2つのポイント( xa ,ya)と(
xb ,yb)を通り、且つ( xa ,ya)の放物線のスロー
プがma であることが与えられると、これは次に示す結
果になる。
【数24】
【0072】これらを同時に解くと、次のようになる。
【数25】
【0073】新しい放物線は次にその角度と面積エラー
に対してチェックされることができる。それが公差内の
場合、それは許容される。そうでない場合、スプライン
は、可視性面積エラーの最小限化という名称の項目で既
に説明されたようにして分割される。
【0074】2つの放物線のマッチング ここで図2を見ると、1つのスプライン21にマッチング
されている1つの放物線QPF22 が図示されている。
【0075】ここで図3を見ると、スプライン24に同様
にマッチングされることができる2つの放物線 QPF1 25
と QPF2 26が図示されている。
【0076】2つの放物線をマッチングすると、7つの
自由度が得られる。すなわち、各々放物線のa、b、c
係数、それらが結合するポイントのx座標である。次に
示す制約条件が、従って、1つの自由度をそのまま維持
しながら、適用されることができる。 - 第1の終了ポイント27がマッチングしなければならな
い、 - 第1の終了ポイント27のスロープがマッチングしなけ
ればならない、 - 第2の終了ポイント28がマッチングしなければならな
い、 - 第2の終了ポイント28のスロープがマッチングしなけ
ればならない、 - 両方の放物線が指定された結合x座標30で会わなけれ
ばならない、 - 放物線のスロープは結合ポイントでマッチングしなけ
ればならない。
【0077】言い換えれば、第2オーダーの連続性を維
持する放物線に対して保証する、制約条件が与えられる
ことができる。同時に、1つの自由度は、面積エラー29
を最小限にされることを可能にしたままの状態を続け
る。
【0078】自由度が放物線が出会う30でポイントのx
座標(xjoin)を選択することに依って実施される場
合、前述の制約条件は、次のようにセットされて数学的
に表現されることができる。
【0079】2つの終了ポイントが( xa ,ya)と( x
b ,yb)であり、なおかつ、各々がma とmb のスロー
プを各々もつ場合、次のようになる。
【数26】
【0080】上の同じ式を解くと、次のことが示される
ことができる。
【数27】
【0081】前述の解法はxa とxb 間(しかし両端を
含めない)のxjoinの全ての値に対して有効であること
に注目すべきである。言い換えれば、2つの終了ポイン
ト間の任意のx座標が結合ポイントとして選ばれること
ができる。これは、結合は0と1の間(両端を含めな
い)の任意の値に依って与えられるスプラインのx座標
で行われることができると言うことと同じである。
【0082】面積の最小限化 2つの放物線が見いだされると、それらとオリジナルの
スプライン間の面積エラーが計算されることができる。
これは、可視性面積エラーの最小限化という名称で既に
説明された方法または代替面積最小限化という名称の方
法の何れかに依って行われることができる。
【0083】面積エラー計算の演算は、スプライン24も
xjoinに対応するuの値で2つに分割される場合に容易
に行われることに注目すべきである。このようにして、
1つの放物線の関係が、各々分割の面積エラーを計算す
るために用いられることができる。結果も加えられるこ
とができる。スプラインを分割する定則が、次に概略的
に説明される。
【0084】xjoinのために選ばれた最適値が面積エラ
ーを最小限にする値になる。該解法に隠れている演算の
紛らわしさは、適切な最小限化の発見のために単純化さ
れた数値方法が最適な状態で用いられることを意味す
る。単純化された数値方法の例の場合、面積エラーは
0.1, 0.2, .. 0.8, 0.9 のuの値に対応するxjoinに相
応して計算され、なおかつ、これらの最小値が選ばれる
ことができる。
【0085】3つ以上の放物線のマッチング 2つの放物線をスプラインにマッチングするために用い
られる方式と類似の状態で、3つ以上の放物線は、 - スプラインの終了ポイントのスロープがマッチングす
ることを保証し、且つ - スプラインの終了ポイント間の放物線の結合ポイント
を調整することに依ってマッチングされることができ
る。
【0086】これは可能であるが、関連される演算は、
使用できる自由度の数のために非常に複雑になる(すな
わち、結合ポイントの全てのポジション)。最適な解法
を求めることは、長い、コンピュータ計算集中数値最適
化方法の使用を要求する。1つの該方法が後で説明され
るが、今の方法の場合、2-放物線アプローチは適切な結
果を導かない時に、スプラインは分割され、なおかつ、
次のスプラインがマッチングされる。
【0087】反復変換方法 前述の内容が与えられると、反復変換アルゴリズムが次
のように作成されることができる、 IF スプラインが平坦性公差内 THEN それを終了ポイントを結合する直線に変換する リターン ENDIF スプラインの最小面積単一放物線を計算する(すなわちα,β,γ,a,b) IF aがその許容限界外 THEN aを最も近い限界にセットする ENDIF 最終放物線とスプラインの間の面積エラー項を計算する IF 面積が面積公差内に入らない THEN 2-放物線マッチングが要求される ELSE スプラインと放物線に適した開始と終了角度を計算する IF 開始と終了角度が公差内 THEN 放物線をQPF に変換する 2-放物線マッチングが要求されない。 ELSE IF p3 の角度がp0の角度より広く変位する場合 THEN 新しい放物線をp0 とp3 に基づいて、p3 の角度がスプラインのp3 角度になるように、角度公差に依ってオフセットされるように計算す る IF 新しい放物線が限界内に入り、好ましい角度をp0 でもち、なお かつ、好ましい面積エラーをもつ THEN 新しい放物線をQPF に変換する。 2-放物線マッチングは要求されない。 ELSE 2-放物線マッチングが要求される。 ENDIF ELSE 新しい放物線をp0 とp3 に基づいて、p0 の角度がスプラインの p0角度になるように、角度公差に依ってオフセットされるように計算 する IF 新しい放物線が限界内に入り、好ましい角度をp3 でもち、なお かつ、好ましい面積エラーをもつ THEN 新しい放物線をQPF に変換する。 2-放物線マッチングは要求されない。 ELSE 2-放物線マッチングが要求される。 ENDIF ENDIF ENDIF ENDIF IF 2-放物線マッチングが要求される THEN FOR u = 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9 (例えば) DO スプラインのx座標( xs)をuの今の値のために計算する スプラインとマッチングし且つxs で結合する2つの放物線を計算する スプラインと放物線間の面積エラーを計算する IF 各々放物線のaの値が限界内で且つ面積エラーが許容公差内 THEN 適切な2-放物線マッチングが見つけられたことを記録する IF 面積エラーが見つけられた任意のマッチングより優れている THEN 今のマッチングを最適マッチングとしてインストールする ENDIF ELSE IF 適切な2-放物線マッチングがまだ見つけられず且つ面積エラー が見つけられた任意のエラーより優れている THEN 今の放物線を最も近い競合者としてインストールする ENDIF ENDIF DONE ENDIF IF 適切な2-放物線マッチングが見つけられた THEN 放物線をQPF に変換する ELSE 最も近い競合者の結果になったuの値でスプラインを分割する 全体のプロセスを繰り返して、各々サブスプラインを別々に変換する ENDIF
【0088】スプラインの分割 スプラインをQPF 変換するために、数多くの位置でスプ
ラインを分割する必要がある。例えば、 - 適切なマッチングが行われることができない場合、ス
プラインが分割されて、サブスプラインがマッチングさ
れる。 - 2- 放物線マッチングの面積エラーを評価する時に、
計算は、オリジナルのスプラインが放物線の結合ポイン
トで分割される場合に単純化される。
【0089】これを行うために、スプラインを2つのサ
ブスプラインに分割する定則が必要とされる。 ポイン
ト( x0 ,y0)、( x1 ,y1)、( x2 ,y2)、( x3
,y3)に依って定義され与えられたスプラインが与え
られたuの値で分割される場合、2つのサブスプライン
は自らBezierスプラインになる。最初のサブスプライン
はポイント( xa0,ya0) 、( xa1,ya1) 、( xa2,
ya2) 、( xa3,ya3)に依って、第2はポイント( xb
0,yb0) 、( xb1,yb1) 、( xb2,yb2) 、( xb
3,yb3) に依って定義され、ここで
【数28】 類似の計算がyに対しても実施される。
【0090】最適化方法を用いるオブジェクト変換 前述のように、コンピュータ・ベース・グラフィック・
システムでは、各々オブジェクトは、普通は、特定のオ
ブジェクトのアウトラインを形成するスプラインの集ま
りから作られている。例を用いて説明すると、文字のシ
リーズの文字は、その文字の全体的な形式が特定のフォ
ントに適合し、スプラインの僅かの変形がフォントの変
化になるように、設定されるスプラインのシリーズとし
て一般的に記憶される。本実施態様は文字フォントを作
るスプラインの処理に特に有用であるが、それは、それ
に限定されない。
【0091】QPF を用いて特定のイメージを作動するシ
ステムは、一定の数のQPF を任意の特定の時に処理する
限られた記憶機能と限られた容量をもつと思われる。従
って、スプラインをQPF に変換する時に、各々グラフィ
ック・オブジェクトに対して生成されるQPF の数が最小
限に保持されることを保証することが重要である。本方
法は、記憶スペースが最小限にされ且つ計算時間が満足
できる解法の計算に使用できる時に、最も効果的に使用
される。
【0092】式(3) から見られることができるように、
総称的スプラインのxとyの値は、次の形式で表現され
ることができる。
【数29】 また、QPF は式(4) で表現される形式をとる。
【0093】全体的なオブジェクトがx-y 面上で作動さ
れると想定すると、スプライン・フォーマットは、数多
くのyの値が与えられたxの値に対して存在できて、な
おかつ、逆に円と楕円が容易に作動されることができる
ように曲がるので、特に優れたものになる。
【0094】QPF を用いてスプラインを近似化する際
に、QPF で数多くのyの値を1つのxの値のために得る
ことができないので、円と楕円のような曲線は、数多く
のQPFセグメントに依って表されなければならない。
【0095】スプラインを対応するQPF に変換する時
に、この問題を解決する1つの方法は、uに関してxで
スプライン関数の回転ポイントを考えることである。こ
れらの回転ポイントは次の式を解く時に生じる。
【数30】
【0096】この式の答は、スプラインがuに関して回
転ポイントになるパラメータuの値になる。式(63)は2
つまで個別の答をもつが、これは、スプラインがxに関
して3つ以上の回転ポイントを含むことができないこと
を意味する。従って、与えられたスプラインは、xの3
つの或る値が設定された値の関数の最大値で作られるこ
とができる。従って、スプラインをその回転ポイントで
分割することに依って、xの1つの値の関数に、自らな
るブランチに与えられたスプラインを分割できる。本方
法の趣旨からして、式(61)と式(62)はxの1つの値の関
数を形成するスプラインに対応するように、このプロセ
スが実施されることが想定される。
【0097】スプラインをQPF で近似化する優れた特徴
が、同じ横座標をもつポイントの縦座標間の距離を実際
に最小限にしようとする。しかし、ほとんどのケース
で、1つのQPF だけでは、好ましい結果を得るのに適し
ていない。
【0098】従って、N QPF に依るスプラインの近似化
を考える更に一般的な方式で問題の解法を定則化するこ
とが妥当と思われる。
【0099】ここで図4を見ると、N QPF の 32, 33, 3
4 などに依って近似化されるスプライン31の一般的なケ
ースが図示されている。
【0100】各々QPF は次のような形で表される。
【数31】
【0101】ここで我々は、スプラインと N QPF の1
つの間の違いの測定35を、xの特定の値に対して、スプ
ライン31のy値を求め、まず次のように逆元し、
【数32】 なおかつ、式(62)を用いてyを決定することに依って定
義できる。違いの測定35は、そこで、次のように定義さ
れることができる。
【数33】
【0102】スプラインとQPF 間の面積エラーの測定
は、そこで、式(9) と同様に定義されることができる。
【数34】
【0103】ここでp-1(xは式(61)で定義される3次関
数p(u) の逆元である。スプラインはxの1つの値の関
数でなければならないという制約条件の結果として、該
逆元が存在し且つ独自に決定される。
【0104】式(68)の積分は、QPF とスプライン間の面
積の絶対値測定を表していて、ゼロより大きいか等しく
て、なおかつ、スプラインとQPF が間隔 [Xj ,Xj+1]
で一致する場合にだけ0に等しくなる。従って、この
積分を最小限にすることに依って、我々は、QPF とスプ
ライン間の面積エラーを減少させる。
【0105】まず、式(68)の逆元p-1(x) は実際に評価
することが難しいと思われる。3次関数の逆元を求める
方法は存在するが、この積分を評価する優れた方法は、
変数を巧みに変えて式(68)の積分を再調整することであ
る。
【0106】x = p(u) の変数の変更を実施し、なおか
つ、dx = p'(u) と pー1(p(u)) = uに注目すると、式(6
8)は次のようになり、
【数35】 ui に依り xi = p(ui) になる。
【0107】式(69)の積分は、2次式であり且つ数値技
術なしで正確に評価されることができるので、評価が非
常に単純になる。
【0108】ここで、式(68)は、スプラインの特定の伸
びをQPF で近似化する際に生成されるエラーの可能な測
定手段として見られることができる。式(31)が与えられ
ると、このエラーは、QPF i,ni 0 と分割ポイント i,
xi+ のパラメータの関数になる。
【0109】我々はここで N QPF の各々に対するエラ
ーの関与をまとめてみると、我々は、次に示すトータル
・エラーの全体的な測定結果を得る。
【数36】
【0110】p(u と q(u が与えられと、Err は、N QP
F の各々が i, ni 0 となる3つの自由度を与えるの
で、4N-1 変数の関数になる。更に、QPF の結合ポイン
トは、全体で N-1 変数の結果になる、スプラインの終
了ポイントと一致するように式(65)に依って固定され
る、xO とxN と別に、更なる変数も提供する。
【0111】従って、最初の例の場合、スプラインを N
QPF で近似化することは、目的の関数および 4N-1 パ
ラメータを調整することに依ってErr を最小限にするこ
とがスプラインと N QPF 間の“距離”を短縮するの
で、Err に依る 4N-1 次元空間の最小限化問題として定
則化されることができる。
【0112】残念なことに、式(70)を自ら最小限化して
も、スプラインとQPF 間の違いの測定35を減少すること
が隣接する QPF 36, 37 の連続性を保証しないので、非
常に高品質の結果を与えないと考えられ、これはイメー
ジの厳しい変質を招くことになる。そこで、終了ポイン
トの連続性も好都合に実施されるべきである。
【0113】ここで図5を見ると、QPF の連続性を保証
するために、式(70)を更に限定する必要がある。例え
ば、QPF 39, 40 はそれらの終了ポイント41で連続して
いる。
【0114】この更なる限定条件を満足するために、次
に示す制約条件がQPF に設定されなければならない。
【0115】我々の近似化曲線の開始ポイントは、スプ
ラインの1つの末端と一致していなければならない。
【数37】
【0116】各々QPF は次のQPF と一致していなければ
ならない。ここで、f0(x1 は、f1(x1,f1(x2, 〜 2(x2
などと等しくなければならない。普通のケースでは、
【数38】
【0117】最後に、我々の近似化するQPF の末端はス
プラインの末端と一致していなければならない。
【数39】
【0118】これは、QPF に対する更なる N+1 制約条
件が連続する近似化曲線を保証することを要求する。従
って、N+1 制約条件を加えると、我々は、4N-1 自由度
で最小限化問題をもはや持てなくなり、3N-2 度だけに
なる。
【0119】近似化関数の連続性を保証するほかに、近
似化曲線は、人間の目が終了ポイント41に現れる場合が
ある曲線の微分係数の鋭い変化に非常に敏感であること
を考慮して、更に改善されることができる。
【0120】従って、好都合に調査スペースは、各々終
了ポイントの微分係数の連続性も達成されるように更に
限定される。
【0121】まず、QPF の微分係数と開始ポイントのス
プラインの微分係数は、
【数40】 鎖の規則に依ってポイント x0 = p(ua)でスプライン
の微分係数となるq'(ua)/p'(ua) と一致しなければなら
ない。
【0122】そこで、QPF の微分係数も各々結合で同じ
になければならない。
【数41】
【0123】結局、最後のQPF の微分係数は終了ポイン
トのスプラインの1つと等しくなければならない。
【数42】
【0124】微分係数の連続性の保証は、従って、残り
の 2N-3 自由度の合計に結果としてなる最小限化問題に
別の N+1 の制約条件を加えることになる。
【0125】要するに、最小限化問題の定則化に於ける
主な課題は、次に示すように、 - その最小限化がスプラインとQPF 間に於ける最適のマ
ッチングを与える関数を開発することと、 - 近似化関数の連続性を与えるために調査スペースに制
約条件を加えることと、 - 近似化関数の第1微分係数の連続性を与えるために更
なる制約条件を加えることになる。
【0126】最終的な近似化関数は、従って、制約条件
を問題に置くことは問題の異なる変数の中に関係を設定
すること従って独自の変数の数を減少することと同じこ
とになるので、2N-3 の独自変数をもつ関数として表現
されることができる。従って、或る変数を他の関数とし
て表現し且つそれらを目的関数に代入できるので、これ
は、このケースに於いて式(68)になるので、独自変数の
数を減少させる。
【0127】本実施態様に現れると思われる1つの更な
る問題は、スプラインの微分係数が無限大に近づくこ
と、例えば、スプラインが円のフラグメントを形成する
場合である。この問題は、スプラインの終了ポイントに
特に現れると思われる。
【0128】この問題を処理する1つの方法は、過大な
傾斜が直線と見なされ且つ“係数限界”という名称のセ
クションで既に概略的に説明されたようにして処理され
る、過大な傾斜を処理する別の試験を行うことである。
【0129】最適化 理想的には、残りの変数の全ての可能性のある値が、ど
の特定の値のセットが最も低い目的関数を生成するかど
うかについて決定するために評価されることができると
思われるが、これは、使用可能な変数の変形が余りにも
多すぎるために、ほとんどの場合、実際には不可能であ
る。
【0130】数多くの異なる方法が、可能性のある種々
の変形の過剰な数をもつ問題を最適化する技術として知
られている。最も急激に下降するアルゴリズムとして知
られている、最初の単純な例の場合、変数は、調査スペ
ースの変形が目的関数の傾斜の逆方向になるように変え
られるので、それを最小限にする傾向を示す。残念なこ
とに、この最適化方法は、局部的な最小限の状態でしば
しば突き刺される状態になり、最適化解法を見いだすこ
とができなくなる。
【0131】アニーリング法 本実施態様の場合、目的関数の最適化の好まれる方法は
アニーリング法を用いることである。アニーリング法の
プロセスの詳細な説明は、S. Kirkpatrick, C.D. Gelat
t, Jr., と M.P. Vecchi, (1983) Science, 220: 671-6
80 に依る“アニーリング法に依る最適化”に記載され
ている。アニーリング法のプロセスの概略的な説明は、
次のように行われる。
【0132】アニーリング法のプロセスの第1のステッ
プは、目的関数として一方の問題を記すことであり、変
数x1 〜xm のセットは、
【数43】
【0133】目的関数は、その変数x1 〜xm の今の値
に依存せずに与えられた値に相応して評価されることが
できる。
【0134】変数x1 〜xm の値は僅かのランダムな変
化が与えられ、なおかつ、目的関数は再評価されて目的
関数の古い値と比較される。目的関数の変化は△obj と
して引用される。
【0135】変数の変化が低い目的関数の結果になる場
合、変数の新しいセットが常に受け入れられる。変数の
変化が目的関数に対して高い値の結果になる場合、変数
の新しいセットは受け入れられる場合もあり或いは受け
入れられない場合もある。変数を受け入れるための決定
は、与えられた確率で決定され、受け入れの好まれる確
率は次のようになる。
【数44】 ここで、Tはシステムのシミレーションされる“温度”
である。
【0136】そこで与えられた△obj の場合、高い温度
Tはx1 〜xm の値の変化の高い確率の受け入れの結果
になるが、低い温度Tでは僅かの確率の受け入れにしか
ならない。温度Tは、始めは非常に高くセットされ、な
おかつ、アニーリング・ループの各々反復で少し減少さ
れる。アニーリング法のプロセスを実現するプログラム
の全体的な構造は、次のようになる。 T = start_temperature; variables = start_variables loop_until (convergence or temperature_to_cold) { /* generate random change of variables */ new_variable = random_small_change(variables); /* evalute random change */ Δobj = objective_function(new_variables) - objective_function(variables); if (Δobj <= 0) { /* always accept improvements */ variables = new_variable; } else if (random_float_between_0_and_1() < exp (-Δobj/T)) { /* sometimes accept degradation */ variables = new_variables; } else { /* reject new variables */ } decrease T slightly, according to annealing schedule; } }
【0137】前述のアルゴリズムを実現する際に使用す
るフローチャートが図6に図示されている。
【0138】本方法の場合、用いられる目的関数は、そ
の式を変更すると適切な結果を生成できるが、式(68)に
図示されているようにして好都合に定義されることがで
きる。
【0139】終了ポイント変位方法 スプラインをQPF に変換する第3の方法がここで説明さ
れる。この方法は、オーダーにつくために先端で連続し
て表されている閉ループを形成するスプライン構造で使
用するために特に作られている。この方法の場合、スプ
ラインをQPF に最小限度の時間で変換する方法を提供し
ながら、グラフィック出力の品質に逆効果を与えない最
終的なQPF に人為的な結果を導かない堅固な方法を提供
することが望まれる。他の目的は、放物線セクション間
で位置的な連続性を維持しながら作成されるQPF の数を
最小限にして、スプライン輪郭と等価なQPF が閉じられ
た状態のままであることを保証することである。更に、
放物線セクション間のスロープの連続性は、予め設定さ
れた公差内に維持されるので、ソース・スプラインに対
して目で見える滑らかな近似化の妥当な確率を保証する
ことになる。
【0140】本方法は、スプラインを放物線に必要にお
うじて変換する手段を提供するので、スプライン・フォ
ーマットされたイメージの任意の拡大縮小と回転が、曲
線幾何学の放物線形成に対する要求を満足しながら達成
されることができる。
【0141】前述の方法で注目されたように、式(1) に
与えられているスプラインの説明は多重に値が設定され
ているスプラインを容易に定義することができる。すな
わち、各々(X) ピクセル値に対して、2つ以上の(Y) ラ
インの値が存在できる。これを克服するために、方法
は、まず、各々スプラインの代数学的要素を調べ、スプ
ラインを必要におうじて分割する。
【0142】式(1) に与えられているスプラインのパラ
メトリック関係式は8つの自由度を2つの次元(X,Y) で
もち、なおかつ、これらの自由度は開始と終了ポイント
をそれらの各々正接方向で指定してしばしば決定される
ことができる。QPF の放物線フォーマットは、式(4) で
与えられるように、3つの自由度をもち、なおかつ、こ
れらは2つの可能性のある方式の1つで普通は指定され
る。すなわち、 - 1端の開始ポイント、終了ポイント、スロープを指定
するか、または - 両端の開始ポイントとスロープを指定する。
【0143】後の説明は、スプラインをQPF の集まりに
変換するこの方法の基準として用いられる。
【0144】ここで図7を見ると、スプライン42の開始
ポイント43からの特性計算の始まりが図示されている。
この開始ポイントから、放物線46は、それが開始ポイン
ト43を通り且つ与えられたスプラインと同じ開始と終了
スロープをもつように計算される。
【0145】放物線46の放物線44の終了ポイントのX値
が、次に測定され、スプライン45の終了ポイントと比較
される。ライン方向47の変位が予め設定された公差より
小さい場合、放物線46はスプライン42の十分に正確な近
似として認められ、方法は次のスプラインに適用される
か、或いはスプライン42は既に概略的に説明された方法
を用いて2つのスプラインに分割され、方法はスプライ
ン42の各々半分に対して繰り返し適用される。
【0146】ここで図8を見ると、前の放物線48が計算
されると、前の放物線49の終了ポイントは、放物線は要
求されるスロープの連続性だけでなく位置的な連続性も
維持しながら、今のスプライン50の開始ポイントよりむ
しろ今の放物線51の開始ポイントとして用いられる。
【0147】前述の放物線曲線表示は、傾斜が最も大き
いと考えられる傾斜を越えるように行われるので、垂直
または垂直に近いスロープと一致することができない。
これを克服するために、方法は、別々にこの条件を検出
して、対応するQPF のスロープを最大のプラスまたは最
大のマイナス・スロープにセットする。
【0148】プロセスがスプライン輪郭の周囲を進むに
つれて、位置とスロープの両方の連続性はQPF セグメン
ト間で接触される。輪郭を近づけるために、しかし、放
物線を計算して、開始ポイントと終了ポイントと開始ス
ロープを通る代替解法が用いられなければならない。こ
れは、最後と最初の放物線セグメントの間のスロープ制
約条件に影響する。
【0149】このイベントの目に見える有意性が、与え
られたスプライン輪郭を前処理することに依って大半の
条件を実質的に克服できるので、開始ポイント43は、最
初のQPF 近似化の場合、スロープの非連続状態から開始
する。従って、アルゴリズムが終了すると、スロープ連
続性にマッチングする要求はなくなる。
【0150】スロープの非連続性がスプライン輪郭に存
在しない場合、方法は、終了スロープのために最後の放
物線の開始スロープを変更することに依って、終了する
非連続性の影響を更に減少できるので、最終的な終了の
非連続性の目に見える衝撃は最小限にされる。
【0151】最後の放物線を2次的な放物線に分割する
必要があるかどうかについて決定する基準として、放物
線に沿うどこかのポイントが用いられることができて、
なおかつ、放物線とその対応するスプラインの間の距離
が測定される。好まれるポイントは、放物線の長さの約
2/3 になるポイントである。この距離が予め設定された
量より長い場合、スプラインと対応する放物線は分割さ
れて、プロセスが継続される場合がある。
【0152】
【発明の効果】前述の説明は、当業者にとって明かな、
2次多項式ベース表示と変更にスプライン・ベース・グ
ラフィック・オブジェクト表示を変換する数少ない実施
態様だけが、本発明の範囲から逸脱せずにそこに実施さ
れることを述べるものである。
【0153】本発明はBezierスプライン以外のスプライ
ンに適用できるが、BezierスプラインをQPF に変換する
ことに関する本発明の好まれる実施態様は、次に示す図
面を参照してここで説明される。
【図面の簡単な説明】
【図1】曲線の説明に用いられる適切なQPF データ要素
と1つのQPF の図解である。
【図2】スプラインとその対応するQPF 間の面積の違い
を示す図である。
【図3】図2と似ているが、2つの放物線と1つのスプ
ラインのマッチングを示す図である。
【図4】N QPF をスプラインの部分に組み込むプロセス
を示す図である。
【図5】QPF 間の連続性が維持されている図4のプロセ
スを示す図である。
【図6】アニーリング法のプロセスを図示するフローチ
ャートである。
【図7】スプラインをQPF に変換する第3の方法の開始
の図解である。
【図8】スプラインをQPF に変換する第3の方法の継続
する様の図解である。
【符号の説明】
21…スプライン 22…QPF 23…違い
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ジム マルハーン オーストラリア国 2122 ニュー サウ ス ウェールズ州,イーストウッド, ロウ ストリート 327 (72)発明者 ビンセンゾ アルトロ ルカ リグオリ オーストラリア国 2088 ニュー サウ ス ウェールズ州,モスマン, ラグラ ン エスティー 238, ユニット 7 (56)参考文献 特開 平4−116690(JP,A) 特開 平3−121575(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06T 11/20 110 G09G 5/20

Claims (18)

    (57)【特許請求の範囲】
  1. 【請求項1】 複数のスプライン・フォーマットに依っ
    て記述されるコンピュータ化グラフィック・システムの
    オブジェクトを複数の2次多項式フラグメント(QPF) に
    依って記述される対応するオブジェクトに変換し、変換
    したQPFデータを用いて、出力装置のスキャンライン上
    でオブジェクトのピクセル位置を決定する方法であっ
    て、前記オブジェクトの各スプラインについて、 (a) 開始ポイントと終了ポイントを前記スプライン上で
    選択し、かつ対応するQPF上で対応する開始ポイントお
    よび終了ポイントと同じものを指定するステップと、 (b) スプラインのコントロール・ポイントから、前記QP
    Fを記述する2次多項式の係数を決定するステップと、 (c) スプラインと2次多項式間のエラーが予め設定され
    たレベルより低いかどうかについて決定するために前記
    係数を使用するステップと、 (d) その場合、前記係数から、前記2次多項式を記述す
    るQPFデータを決定するステップとを具備する方法。
  2. 【請求項2】 エラーが前記予め設定された量より低く
    ない場合、 (e) 前記スプラインは少なくとも2つのサブスプライン
    に分割され、分割された各々について対応するQPF を決
    定し、前記サブスプライン各々に対してステップ(a) か
    ら(d) を繰り返すステップと、 (f) 各2次多項式と対応するサブスプライン間のエラー
    が予め設定されたレベルより低くなるまで必要に応じて
    ステップ(e) を繰り返すステップとを更に具備する請求
    項1に記載の方法。
  3. 【請求項3】 複数のスプライン・フォーマットに依っ
    て記述されるコンピュータ化グラフィック・システムの
    オブジェクトを複数の2次多項式フラグメント(QPF) に
    依って記述される対応する2次多項式フラグメント(QP
    F) オブジェクトに変換し、変換したQPFデータを用い
    て、出力装置のスキャンライン上でオブジェクトのピク
    セル位置を決定する方法であって、前記オブジェクトの
    各スプラインについて、 (a) 開始と終了ポイントを前記スプライン上で選択し、
    且つ対応するQPF オブジェクト上の複数のQPF について
    対応する開始および終了ポイントと同じものを指定する
    ステップと、 (b) スプラインのコントロール・ポイントから、前記各
    QPF を記述する2次多項式の係数を決定するステップ
    と、 (c) スプラインと2次多項式間のエラーが予め設定され
    たレベルより低いかどうかを決定するために前記係数を
    使用するステップと、 (d) その場合、前記係数から、前記2次多項式を記述す
    るQPF データを決定するステップとを具備する方法。
  4. 【請求項4】 エラーが予め設定された量より低くない
    場合、 (e) スプラインを少なくとも2つのサブスプラインに分
    割し、分割された各々について対応する2次多項式を決
    定し、前記各サブスプラインに対してステップ(a) から
    (d) を繰り返すステップと、 (f) 各2次多項式と対応するサブスプライン間のエラー
    が予め設定されたレベルより低くなるまで必要におうじ
    てステップ(e) を繰り返すステップとを更に具備する請
    求項3に記載の方法。
  5. 【請求項5】 前記のエラーが前記のスプラインと前記
    のQPF 間の面積の測定結果を含んでいる請求項1に記載
    の方法。
  6. 【請求項6】 前記のエラーが前記のスプラインの終了
    ポイントと前記のQPFの終了ポイント間の角度の測定結
    果を含んでいる請求項1に記載の方法。
  7. 【請求項7】 前記のエラーが前記のスプラインと前記
    のQPF 間の面積の測定結果と、前記のスプラインの終了
    ポイントと前記のQPF の終了ポイント間の角度の測定結
    果を含んでいる請求項1に記載の方法。
  8. 【請求項8】 前記のエラーが前記のスプラインと前記
    のQPF 間の面積の測定結果を含んでいる請求項3に記載
    の方法。
  9. 【請求項9】 前記のエラーが前記のスプラインの終了
    ポイントと前記のQPFの終了ポイント間の角度の測定結
    果を含んでいる請求項3に記載の方法。
  10. 【請求項10】 前記のエラーが前記のスプラインと前
    記のQPF 間の面積の測定結果と、前記のスプラインの終
    了ポイントと前記のQPF の終了ポイント間の角度の測定
    結果を含んでいる請求項3に記載の方法。
  11. 【請求項11】 コンピュータ化グラフィック・システ
    ムのオブジェクトの部分を、複数の2次多項式フラグメ
    ント(QPF) に依って記述される対応するオブジェクトに
    変換し、変換したQPFデータを用いて、出力装置のスキ
    ャンライン上でオブジェクトのピクセル位置を決定する
    方法であって、 (a) 前記の閉ループの第1スプラインを選択し、且つ前
    記の第1スプラインについて、(i) 第1スプラインの
    開始ポイントに対応するQPF 開始ポイントを選択し、(i
    i) 前記のスプラインと同じ開始スロープと同じ終了ス
    ロープとを有する対応する開始QPF を計算し、(iii) 前
    記のQPF の終了ポイントと前記の第1スプラインの終了
    ポイント間の違いを測定し、(iv) 前記の違いが予め設
    定された公差より小さい場合、第1スプラインに対して
    十分な精度の近似として前記の開始QPF を承認し、且つ
    閉ループの他のスプラインに対してステップ(b) と(c)
    に進み、(v) 前記の違いが予め設定された公差より小
    さくない場合、前記の第1スプラインを少なくとも2つ
    のスプライン部分に分割し、且つステップ(a) を前記の
    第1スプラインの第1部分に、ステップ(b) と(c) を他
    の部分に適用するステップと、 (b) 前記の閉ループの中間スプラインの全てについて
    (i) 既に計算されていたQPF の終了ポイントを今のQPF
    の開始ポイントとして選択し、(ii) 対応する前記の中
    間スプラインと同じ開始スロープと同じ終了スロープを
    備えた今のQPFを計算し、(iii) 前記の今のQPF の終了
    ポイントと前記の対応する中間スプラインの終了ポイン
    ト間の違いを測定し、(iv) 前記の違いが予め設定され
    た公差より小さい場合、対応する中間スプラインの十分
    な精度の近似として前記の今のQPF を承認し、且つ閉ル
    ープの他のスプラインに対してステップ(b) と(c) に進
    み、(v) 前記の違いが予め設定された公差より小さく
    ない場合、前記の今のスプラインを少なくとも2つのス
    プライン部分に分割し、且つ前記のスプライン部分でス
    テップ(b) と(c) を実施するステップと、 (c) 前記の閉ループの最終スプラインについて、(i)
    既に計算されていたQPFの終了ポイントを最後のQPF の
    開始ポイントとして選択し、(ii) 前記の最終スプライ
    ンと同じ開始スロープと同じ終了ポイントを備えた最後
    のQPF を計算し、(iii) 予め設定された基準が前記の最
    後のQPF と前記の最終スプラインの間で満足されている
    かどうか決定し、(iv) 前記の基準が満足されている場
    合、最終スプラインに対して十分な精度の近似として前
    記の最終QPF を承認し、(v) 前記の違いが予め設定さ
    れた公差より小さくない場合、前記の最終スプラインを
    少なくとも2つのスプライン部分に分割し、且つ前記の
    スプライン部分でステップ(b) と(c) を実施するステッ
    プとを具備する方法。
  12. 【請求項12】 前記の予め設定された基準が最後のQP
    F の最初のポイントと最終スプライン上のポイントの間
    の距離を測定することを含んでいる請求項11に記載の
    方法。
  13. 【請求項13】 前記の最初のポイントが前記の最後の
    QPF に沿って約2/3になる請求項12に記載の方法。
  14. 【請求項14】 前記の閉ループが少なくとも1つのス
    ロープの不連続性をもつとき、前記の最初のスプライン
    の前記の開始ポイントが前記の閉ループのスロープの不
    連続点で選択される請求項11に記載の方法。
  15. 【請求項15】 前記の対応するオブジェクトが位置的
    な連続性を前記のループ周囲にもつ請求項11に記載の
    方法。
  16. 【請求項16】 前記のQPF の傾斜が予め設定された最
    大傾斜を越えるとき、前記のQPF の傾斜が前記の予め設
    定された最大にセットされる請求項15に記載の方法。
  17. 【請求項17】 前記のQPF の傾斜が予め設定された最
    小傾斜より緩い時に、前記のQPF の傾斜が前記の予め設
    定された最小にセットされる請求項15に記載の方法。
  18. 【請求項18】 スプラインをベースとしたグラフィッ
    ク・オブジェクトを2次多項式フラグメントに請求項1
    に記載の方法に従って変換するために適応されるコンピ
    ュータ・システム。
JP10323493A 1992-04-29 1993-04-28 ベジェスプラインから2次多項式フラグメントへの変換 Expired - Fee Related JP3327622B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
AU2149 1992-04-29
AUPL214992 1992-04-29

Publications (2)

Publication Number Publication Date
JPH06318258A JPH06318258A (ja) 1994-11-15
JP3327622B2 true JP3327622B2 (ja) 2002-09-24

Family

ID=3776125

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10323493A Expired - Fee Related JP3327622B2 (ja) 1992-04-29 1993-04-28 ベジェスプラインから2次多項式フラグメントへの変換

Country Status (3)

Country Link
US (1) US5422990A (ja)
JP (1) JP3327622B2 (ja)
AU (1) AU669516B2 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3287685B2 (ja) * 1994-02-02 2002-06-04 キヤノン株式会社 データ変換装置及び方法
US5790126A (en) * 1995-01-03 1998-08-04 Microsoft Corporation Method for rendering a spline for scan conversion of a glyph
US6154221A (en) * 1997-04-04 2000-11-28 Avid Technology, Inc. Parametric function curve editing
JPH11345344A (ja) 1998-06-01 1999-12-14 Matsushita Electric Ind Co Ltd 3次曲線を与える方法及び装置
US6674435B1 (en) * 1998-09-16 2004-01-06 Texas Instruments Incorporated Fast, symmetric, integer bezier curve to polygon conversion
US6469702B1 (en) 1999-04-16 2002-10-22 Avid Technology, Inc. Method and system for editing function curves in two dimensions
DE10041079A1 (de) * 2000-08-22 2002-03-14 Osram Opto Semiconductors Gmbh Lasermodul mit Ansteuerschaltung
JP2005201869A (ja) * 2004-01-19 2005-07-28 Mitsutoyo Corp 信号処理方法、信号処理プログラム、この信号処理プログラムを記録した記録媒体および信号処理装置
CN101901488B (zh) * 2009-05-25 2015-09-09 富士通株式会社 用于曲线近似的方法和装置以及图形显示控制方法和装置
TWI476640B (zh) 2012-09-28 2015-03-11 Ind Tech Res Inst 時間資料序列的平滑化方法與裝置
CN115958597B (zh) * 2022-12-16 2023-09-15 广州数控设备有限公司 一种工业机器人连续姿态路径光顺方法及系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0776991B2 (ja) * 1989-10-24 1995-08-16 インターナショナル・ビジネス・マシーンズ・コーポレーション Nurbsデータ変換方法及び装置
JPH0743764B2 (ja) * 1990-08-08 1995-05-15 富士ゼロックス株式会社 線図形折線化処理装置
US5363479A (en) * 1992-07-02 1994-11-08 Microsoft Corporation System and method for rendering bezier splines
US5297244A (en) * 1992-09-22 1994-03-22 International Business Machines Corporation Method and system for double error antialiasing in a computer display system

Also Published As

Publication number Publication date
US5422990A (en) 1995-06-06
AU3823993A (en) 1993-11-04
JPH06318258A (ja) 1994-11-15
AU669516B2 (en) 1996-06-13

Similar Documents

Publication Publication Date Title
JP3327622B2 (ja) ベジェスプラインから2次多項式フラグメントへの変換
US6356263B2 (en) Adaptive subdivision of mesh models
US7250946B1 (en) Shared N-patch edges
US7352369B2 (en) System and method for approximating an editable surface
US5745666A (en) Resolution-independent method for displaying a three-dimensional model in two-dimensional display space
EP1588325B1 (en) Image processing method for automatic adaptation of 3-d deformable model onto a subtantially tubular surface of a 3-d object
US20040090437A1 (en) Curved surface image processing apparatus and curved surface image processing method
US9214039B2 (en) Method for creating three-dimensional shape data, apparatus for creating three-dimensional shape data, and corresponding computer-readable storage medium
US5892691A (en) Method, apparatus, and software product for generating weighted deformations for geometric models
US20070229544A1 (en) Nurbs surface deformation apparatus and the method using 3d target curve
NO843738L (no) Fremgangsmaate og innretning for presentering av en kurve med jevn bredde
US5608855A (en) Method of and system for displaying three-dimensional curve on two-dimensional display device
US5642476A (en) Computer generated variable line width of a vector graphic
US20040156556A1 (en) Image processing method
Hersch Font rasterization: the state of the art
Bronsvoort et al. Display of profiled sweep objects
CN115859405B (zh) 一种自立式钢烟囱设计数据增强方法
US5499324A (en) Graphic display apparatus with improved shading capabilities
EP1237125B1 (en) Method and system for generating and handling a harmonized network of points
JP3593155B2 (ja) 形状設計支援装置
US6346949B1 (en) Three-dimensional form data processor retaining information on color boundaries of an object when thinning coordinate data
Ribó et al. Some algorithms to correct a geometry in order to create a finite element mesh
JP2718784B2 (ja) 輪郭線および/または稜線の描画方法
van Overveld Family of recursively defined curves, related to the cubic Bézier curve
US20230394760A1 (en) Method for generating a model for representing relief by photogrammetry

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20020614

LAPS Cancellation because of no payment of annual fees