(57)【要約】【課題】本発明は、一段と正確にオブジェクトの輪郭線を抽出できるようにする。【解決手段】本発明は、表示部１４に表示された対象画像Ｓ１内のオブジェクトＯＪ１に対応した輪郭線を入力部１５により入力して一旦記憶し、表示部１５に表示した輪郭線を基準として入力部１５により入力される修正輪郭線に応じた力覚を入力部１５に対して発生させることにより、ユーザに対して当該力覚を通じて一段と優れた操作性で輪郭線抽出作業を容易に実行させることができる。【選択図】　　　　図１
2004094666.tif 000002
【特許請求の範囲】
【請求項１】
対象画像を表示する表示手段と、
上記表示部に表示された上記対象画像内のオブジェクトに対応した第１の入力データを入力する入力手段と、
上記入力手段を介して入力した上記第１の入力データを記憶する記憶手段と、
上記表示手段に表示した上記第１の入力データを基準として上記入力手段により入力される第２の入力データに応じた力覚を上記入力手段に対して発生する力覚発生手段と
を具えることを特徴とする画像処理装置。
【請求項２】
上記記憶手段に記憶された上記第１の入力データを上記第２の入力データに更新する入力データ更新手段と
を具えることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
上記入力データ更新手段による更新頻度を計数する頻度計数手段と
を具え、
上記力覚発生手段は、上記頻度計数手段の計数結果に基づいて上記力覚の大きさを制御する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項４】
上記入力手段を介して入力された複数の入力データを記憶した上記記憶手段から、上記入力手段を介して入力される上記第１の入力データに対応する上記入力データを検索すると共に、当該入力データを上記表示手段及び上記記憶手段に出力する検索手段と
を具えることを特徴とする請求項１に記載の画像処理装置。
【請求項５】
上記入力データ更新手段は、上記検索された入力データを上記第２の入力データで更新し、
上記頻度係数手段は、上記入力データ更新手段による更新頻度を計数し、
上記力覚発生手段は、上記検索された入力データと上記第２の入力データに基づき上記入力手段に対して上記力覚を発生し、さらに上記頻度計数手段の計数結果に基づき上記力覚の大きさを制御する
ことを特徴とする請求項２に記載の画像処理装置。
【請求項６】
上記力覚発生手段は、上記入力手段に介して引っ張り戻す方向又は押し戻す方向に上記力覚を発生させる
ことを特徴とする請求項１に記載の画像処理装置。
【請求項７】
表示手段に表示された対象画像内のオブジェクトに対応した第１の入力データを所定の入力手段を介して入力する入力ステップと、
上記入力ステップで入力した上記第１の入力データを記憶手段に記憶する記憶ステップと、
上記表示手段に表示した上記第１の入力データを基準として上記入力手段により入力される第２の入力データに応じた力覚を上記入力手段に対して発生する力覚発生ステップと
を具えることを特徴とする画像処理方法。
【請求項８】
コンピュータに、
表示手段に表示された対象画像内のオブジェクトに対応した第１の入力データを所定の入力手段を介して入力する入力ステップと、
上記入力ステップで入力した上記第１の入力データを記憶手段に記憶する記憶ステップと、
上記表示手段に表示した上記第１の入力データを基準として上記入力手段により入力される第２の入力データに応じた力覚を上記入力手段に対して発生する力覚発生ステップと
を実行させるための画像処理プログラム。
【請求項９】
表示手段に表示された対象画像内のオブジェクトに対応した第１の入力データを所定の入力手段を介して入力する入力ステップと、
上記入力ステップで入力した上記第１の入力データを記憶手段に記憶する記憶ステップと、
上記表示手段に表示した上記第１の入力データを基準として上記入力手段により入力される第２の入力データに応じた力覚を上記入力手段に対して発生する力覚発生ステップと
を具えることを特徴とする画像処理プログラムを情報処理装置に実行させる画像処理プログラム格納媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は画像処理装置に関し、例えばコンピュータのモニタ画面に表示された対象画像内の一部分の表示対象（以下、これをオブジェクトと呼ぶ）の輪郭を抽出するオブジェクト輪郭抽出装置において、当該オブジェクトの輪郭をマウスカーソル等を介してなぞることにより入力する場合に適用して好適なものである。
【０００２】
【従来の技術】
従来、図３０に示すように、２次元図形であるオブジェクトの輪郭線を抽出するオブジェクト輪郭抽出装置１では、モニタ３の画面に表示された対象画像内に存在する例えば星型形状のオブジェクト５に対して本体２と接続されたマウス３を介してマウスカーソル４をなぞることにより得られた当該マウスカーソル４の軌跡を輪郭線として抽出する手法が一般的である。
【０００３】
ここでオブジェクト輪郭抽出装置１が行う輪郭線の抽出とは、すなわちオブジェクト５がマウスカーソル４でなぞられたときに所定サンプリング間隔で得られる複数の点（以下、これを輪郭形成点と呼ぶ）の集合からなるものを輪郭線として認識し、その輪郭線を構成する各輪郭形成点の２次元座標値を得ることである。
【０００４】
なおオブジェクト輪郭抽出装置１では、ユーザによってなぞられたマウスカーソル４の軌跡をオブジェクト５の輪郭線として当該オブジェクト５に重ねた状態で表示し、当該輪郭線をユーザに対して目視確認させるようになされている。
【０００５】
実際上、ユーザが行う輪郭線抽出作業としては、図３１に示すルーチンＲＴ２０の開始ステップから入って次のステップＳＰ２０１に移り、ユーザはモニタ３の画面に表示されたオブジェクト５の輪郭に沿ってマウスカーソル４を動かしてなぞり、次のステップＳＰ２０２へ移る。
【０００６】
ステップＳＰ２０２においてユーザは、自身でマウスカーソル４をなぞったことにより得られた輪郭線を実際に目視確認し、その輪郭線に満足している場合は次のステップＳＰ２０５へ移って輪郭線抽出作業を終了する。
【０００７】
これに対してステップＳＰ２０２においてユーザは、ユーザ自身で入力した輪郭線に満足できない場合には次のステップＳＰ２０３へ移り、再度マウスカーソル４を介して当該輪郭線に修正を加え、次のステップＳＰ２０４へ移る。
【０００８】
ステップＳＰ２０４においてユーザは、ステップＳＰ２０３で修正した輪郭線に満足できない場合には、再度ステップＳＰ２０３に戻って輪郭線の修正作業を続行するが、その輪郭線で満足できた場合には、当該輪郭線を最終的な抽出結果として得たので、次のステップＳＰ２０５へ移って輪郭線抽出作業を終了する。
【０００９】
【発明が解決しようとする課題】
ところでかかる構成のオブジェクト輪郭抽出装置１を用いてユーザが輪郭線抽出作業を行う場合、オブジェクト５の輪郭を正確になぞること及びその結果得られた輪郭線を修正することは必ずしも容易ではなく、輪郭抽出作業及び修正作業の操作性としてはまだ不十分であるという問題があった。
【００１０】
本発明は以上の点を考慮してなされたもので、一段と優れた操作性を提供すると共に、入力作業等を容易に実行させ得る画像処理装置を提案しようとするものである。
【００１１】
【課題を解決するための手段】
かかる課題を解決するため本発明においては、表示手段に表示された対象画像内のオブジェクトに対応した第１の入力データを所定の入力手段を介して入力し、当該入力した第１の入力データを記憶手段に記憶し、表示手段に表示した第１の入力データを基準として入力手段により入力される第２の入力データに応じた力覚を入力手段に対して発生するようにする。
【００１２】
これにより、第１の入力データを基準として第２の入力データをユーザが入力したときに、当該第２の入力データに応じた力覚を通じて一段と優れた操作性で第２の入力データの入力作業を容易に実行させ得る新たな入力操作感をユーザに対して与えることができる。
【００１３】
【発明の実施の形態】
以下、図面について、本発明の一実施の形態を詳述する。
【００１４】
（１）オブジェクト輪郭抽出装置の構成
図１に示すように、本実施の形態におけるオブジェクト輪郭抽出装置１０は、本体１２、対象画像Ｓ１を表示する液晶ディスプレイ等でなる表示部１４及び当該対象画像Ｓ１におけるオブジェクトＯＪ１の輪郭に沿って表示部１４の画面上をなぞることにより当該オブジェクトＯＪ１の輪郭線を入力するための入力部１５によって構成されている。
【００１５】
図２に示すように入力部１５は、スタイラスペン２１、当該スタイラスペン２１と機械的かつ電気的に接続されたアーム部２２と当該アーム部２２を支持する支持台２３によって構成されている。
【００１６】
スタイラスペン２１は、一般的なシャープペンシルやボールペン等とほぼ同形状でなり、ペン先を表示部１４の画面上に直接当接させた状態でなぞることにより輪郭線の入力操作を行うようになされている。
【００１７】
アーム部２２は、スタイラスペン２１と支持台２３とを第１アーム２２Ａ及び第２アーム２２Ｂを介して機械的に連結され、当該第１アーム２２Ａがスタイラスペン２１に固定された第１関節部２４及び第２関節部２５に回動自在に保持されると共に、第２アーム２２Ｂが第２関節部２５及び支持台２３に固定された第３関節部２６に回動自在に保持されている。
【００１８】
第１関節部２４、第２関節部２５及び第３関節部２６は、その内部にサーボモータが搭載されており、スタイラスペン２１をユーザが握持した状態で表示部１４の画面上をなぞる際に当該スタイラスペン２１が３次元的な動きを自由に行うことができるような関節機構となっている。
【００１９】
実際にスタイラスペン２１がユーザの操作によって動かされた場合、そのペン先位置の動きが第１アーム２２Ａ及び第２アーム２２Ｂ、第１関節部２４、第２関節部２５及び第３関節部２６を介して３次元座標値として支持台２３から本体１２へ送出される。
【００２０】
すなわち入力部１５は、表示部１４の画面に直接スタイラスペン２１のペン先が当接された状態で当該画面上がなぞられることにより、そのなぞられた軌跡を３次元座標値で表した輪郭線データとして取り込み、当該輪郭線データを本体１２へ出力するようになされている。
【００２１】
但し、入力部１５はスタイラスペン２１の先端近傍に設けられた入力ボタン２７が押下操作されている間だけ輪郭線データを本体１２へ出力し、入力ボタン２７が押下操作されていないときには輪郭線データを本体１２へ出力することはない。
【００２２】
ここで入力部１５は、ユーザによってスタイラスペン２１で表示部１４のオブジェクトＯＪ１の輪郭がなぞられたときに所定サンプリング間隔で得られる複数の点（以下、これを輪郭形成点と呼ぶ）を順次認識し、その各輪郭形成点における３次元座標値（Ｘ１、Ｙ１、Ｚ１、）、（Ｘ２、Ｙ２、Ｚ２）、（Ｘ３、Ｙ３、Ｚ３）……（Ｘｎ、Ｙｎ、Ｚｎ、）の集合を輪郭線データとして本体１２へ順次出力する。
【００２３】
図３に示すように本体１２は、入力部１５を介して入力された輪郭形成点（３次元座標値）の集合である輪郭線データＤ１を信号切換部３２に入力する。信号切換部３２は、輪郭線データＤ１を輪郭線の入力操作時には輪郭線入力処理部３３へ出力し、輪郭線の修正操作時には輪郭線修正処理部３４へ出力するようになされている。
【００２４】
すなわち信号切換部３２は、ユーザによって初めて表示部１４のオブジェクトＯＪ１の輪郭がなぞられたときには、その輪郭線データＤ１を輪郭線入力処理部３３へ出力し、既に輪郭線データＤ１を輪郭線入力処理部３３へ一度出力した後であれば、次に入力された輪郭線データＤ１を最初の輪郭線データＤ１に対する修正輪郭線データＤ２として輪郭線修正処理部３４へ出力する。
【００２５】
輪郭線入力処理部３３は、信号切換部３２から供給された輪郭線データＤ１に対して所定の輪郭線入力処理を施した後、輪郭線データ記憶部３５へ出力し、当該輪郭線データ記憶部３５に一旦記憶するようになされている。
【００２６】
輪郭線修正処理部３４は、輪郭線データ記憶部３５に一旦蓄積した輪郭線データＤ１を、信号切換部３２から供給された修正輪郭線データＤ２に応じて修正処理し、その結果得られた修正後の修正輪郭線データＤ３を再度輪郭線データ記憶部３５へ出力して一時的に記憶したり、又はデータ蓄積部４１の登録輪郭線修正履歴蓄積部４２からフィードバックされた修正履歴蓄積情報に応じた制御命令を力覚提示部３７に与えるようになされている。
【００２７】
力覚提示部３７は、登録輪郭線修正履歴蓄積部４２からフィードバックされた修正履歴蓄積情報に基づく制御命令に従って、入力部１５におけるアーム部２２内に搭載されているサーボモータを制御することにより、スタイラスペン２１を操作する際の動きが重たく又は軽くなるような操作感（これを以下、力覚と呼ぶ）を自在に調整するようになされている。
【００２８】
輪郭線データ記憶部３５は、蓄積した輪郭線データＤ１及び修正輪郭線データＤ３を輪郭線データ出力部３６、画像提示部３８、輪郭線登録処理部３９及び輪郭線検索部４０へ出力する。
【００２９】
輪郭線データ出力部３６は、輪郭線データ記憶部３５から供給された輪郭線データＤ１及び修正輪郭線データＤ３を表示部１４に出力したり、又は外部に出力する。
【００３０】
画像提示部３８は、輪郭線データ記憶部３５から供給された輪郭線データＤ１及び修正輪郭線データＤ３に応じた輪郭線を、データ蓄積部４１の画像データ蓄積部４４から供給されて表示部１４に表示されたオブジェクトＯＪ１に対して重ねて表示する。
【００３１】
輪郭線登録処理部３９は、ユーザによって入力された輪郭線データＤ１又は修正輪郭線データＤ３を最終的に登録してデータ蓄積部４１のハードディスク等でなる登録輪郭線データ蓄積部４３に蓄積するため、当該輪郭線データＤ１又は修正輪郭線データＤ３をユーザＩＤ（ＩＤｅｎｔｉｆｉｃａｔｉｏｎ）と対応付ける等の処理を施すことにより登録輪郭線データＤ１０を生成し、これを当該登録輪郭線データ蓄積部４３に蓄積する。
【００３２】
輪郭線検索部４０は、輪郭線データ記憶部３５から供給された輪郭線データＤ１又は修正輪郭線データＤ３に相当した登録輪郭線データＤ１０を登録輪郭線データ蓄積部４３から検索して読み出し、これを輪郭線データ記憶部３５及び画像提示部３８を介して表示部１４へ出力する。
【００３３】
データ蓄積部４１の登録輪郭線修正履歴蓄積部４２は、登録輪郭線データ蓄積部４３に蓄積されている登録輪郭線データＤ１０の修正頻度を示す修正履歴蓄積情報を輪郭線登録処理部３９から与えられ、当該修正履歴蓄積情報をユーザＩＤに対応付けて蓄積し、またその修正履歴蓄積情報を輪郭線修正処理部３４に与えるようになされている。
【００３４】
このような構成の本体１２においては図示しないＣＰＵ（Ｃｅｎｔｒａｌ　Ｐｒｏｃｅｓｓｉｎｇ　Ｕｎｉｔ）構成の制御部がデータ蓄積部４１に予め記憶されたオブジェクト輪郭抽出プログラムを読み出し、当該オブジェクト輪郭抽出プログラムに従って以下に示すオブジェクト輪郭抽出処理等を実行するようになされている。
【００３５】
（２）オブジェクト輪郭抽出処理
（２−１）ユーザによる輪郭線入力作業手順
次に本発明のオブジェクト輪郭抽出装置１０を用いてユーザが行う輪郭線入力作業手順について、図４のフローチャートを用いて説明する。ユーザは、ルーチンＲＴ１の開始ステップから入ってステップＳＰ１へ移る。
【００３６】
ステップＳＰ１においてユーザは、表示部１４に表示された対象画像Ｓ１中から輪郭抽出希望の例えばオブジェクトＯＪ１を選択し、次のステップＳＰ２へ移る。
【００３７】
図５に示すように、ステップＳＰ２のサブルーチンにおけるステップＳＰ１１においてユーザは、入力部１５のスタイラスペン２１を握持し、次のステップＳＰ１２で表示部１４に表示されているオブジェクトＯＪ１上の輪郭をなぞりたい箇所に当該スタイラスペン２１のペン先を移動させ、次のステップＳＰ１３で当該スタイラスペン２１の入力ボタン２７を押下操作し、次のステップＳＰ１４へ移る。
【００３８】
ステップＳＰ１４においてユーザは、スタイラスペン２１の入力ボタン２７を押下操作したままの状態でペン先をなぞりたい方向へ動かし、次のステップＳＰ１５でなぞる操作を継続するか否かを判断し、継続する場合にはステップＳＰ１４に戻ってなぞる操作を続けるが、継続しない場合には次のステップＳＰ１６へ移る。
【００３９】
ステップＳＰ１６においてユーザは、なぞる操作を継続する意思が無いので、ユーザは入力ボタン２７の押下操作を止めて、次のステップＳＰ１７へ移る。
【００４０】
ステップＳＰ１７においてユーザは、オブジェクトＯＪ１の輪郭をなぞり直す気持ちがあるか否かを判断し、なぞり直す気持ちがある場合にはステップＳＰ１２に戻って上述の処理を繰り返し、なぞり直す気持ちが無い場合にはルーチンＭＲＴ１のステップＳＰ３へ戻る。
【００４１】
このようにしてステップＳＰ２においてユーザは、入力部１５のスタイラスペン２１を操作して表示部１４の画面上に表示された対象画像Ｓ１中のオブジェクトＯＪ１の輪郭をなぞることにより輪郭線データＤ１を入力する。
【００４２】
ステップＳＰ３においてユーザは、ユーザ自身で入力した輪郭線が表示部１４の画面上でオブジェクトＯＪ１に重ねられた状態で表示されるので、当該輪郭線を目視確認してその入力した輪郭線に満足するか否かを判断し、満足して修正を加える必要がないと判断したのであればステップＳＰ６へ移る。
【００４３】
これに対してユーザがユーザ自身で入力した輪郭線に満足していないのであれば、ステップＳＰ３で否定結果を得て次のステップＳＰ４へ移り、再度スタイラスペン２１を介してオブジェクトＯＪ１の輪郭をなぞることにより修正輪郭線データＤ２を入力し、次のステップＳＰ５へ移る。
【００４４】
このときオブジェクト輪郭抽出装置１０は、修正輪郭線データＤ２に応じた輪郭線についても画像提示部３８を介して表示部１４のオブジェクトＯＪ１に重ねた状態で表示するようになされており、これによりユーザは修正を加えた輪郭線の描き具合を目視確認することができる。
【００４５】
ステップＳＰ５においてユーザは、ユーザ自身で修正を加えた修正輪郭線を認識し、その修正輪郭線に満足しているか否かを判断し、満足していない場合には再度ステップＳＰ４へ戻って修正作業を行い、満足している場合には次のステップＳＰ６へ移る。
【００４６】
ステップＳＰ６においてユーザは、輪郭線データＤ１又は修正輪郭線データＤ２をデータ蓄積部４１の登録輪郭線データ蓄積部４３に登録して蓄積するか否かを判断し、登録する意思が無い場合にはステップＳＰ８へ移って処理を終了し、登録する意思が存在する場合には次のステップＳＰ７へ移る。
【００４７】
ステップＳＰ７においてユーザは、輪郭線データＤ１又は修正輪郭線データＤ２に対してユーザ名を対応付ける等の入力操作を行った後、データ蓄積部４１の登録輪郭線データ蓄積部４３に当該輪郭線データＤ１又は修正輪郭線データＤ２を蓄積することにより登録を実行し、次のステップＳＰ８へ移ってユーザによる輪郭線入力作業手順を終了する。
【００４８】
（２−２）本体による輪郭線入力処理手順
一方、本体１２としては、ユーザによる輪郭線入力作業手順が行われたことに応じて、図示しないＣＰＵ構成の制御部に従って図６に示すルーチンＲＴ２の輪郭線入力処理手順を実行するようになされている。
【００４９】
すなわち本体１２の制御部は、ルーチンＲＴ１の開始ステップから入ってステップＳＰ２１へ移る。ステップＳＰ２１において制御部は、ユーザからの輪郭線入力作業の終了要求を受け付けたか否かを判定し、当該終了要求を受け付けた場合にはステップＳＰ３４に移って輪郭線入力処理手順を終了するのに対して、当該終了要求を受け付けていない場合には次のステップＳＰ２２へ移る。
【００５０】
ステップＳＰ２２において制御部は、入力部１５からスタイラスペン２１の入力ボタン２７の押下操作に関する入力ボタン情報を取得して次のステップＳＰ２３へ移り、当該入力ボタン情報に基づいて入力ボタン２７がユーザによって押下操作されている状態にあるか否かを判定する。
【００５１】
ここで否定結果が得られると、このことは入力ボタン２７が押下操作されていないので輪郭線データＤ１を構成している各輪郭形成点の３次元座標値を取得することがないことを表しており、このとき制御部はステップＳＰ２１に戻って上述の処理を繰り返す。
【００５２】
これに対してステップＳＰ２３で肯定結果が得られると、このことは入力ボタン２７が押下操作されているので輪郭線データＤ１を構成している各輪郭形成点の３次元座標値が入力部１５から順次供給されてくることを表しており、このとき制御部は次のステップＳＰ２４へ移る。
【００５３】
ステップＳＰ２４において制御部は、入力部１５から供給されてくる輪郭線データＤ１における各輪郭形成点の３次元座標値を取得し、次のステップＳＰ２５へ移り、当該輪郭線データＤ１における各輪郭形成点の３次元座標値が有効な入力であるか否かを輪郭線入力処理部３３の輪郭線入力処理によって判定する。
【００５４】
ここで輪郭線データＤ１における各輪郭形成点の３次元座標値が有効又は無効な入力である場合とは、当該輪郭線データＤ１が表示部１４の画面上に表示された対象画像Ｓ１中におけるオブジェクトＯＪ１をなぞったことにより得られたデータである場合に有効とし、それ以外を無効とすることを意味している。
【００５５】
すなわち、入力部１５のスタイラスペン２１はアーム部２２を介して３次元的に移動自在であるため、当該スタイラスペン２１から供給される輪郭線データＤ１の各輪郭形成点は３次元座標値であって２次元座標値ではない。しかし、輪郭抽出対象のオブジェクトＯＪ１は２次元図形であって表示部１４の画面上に表示されているものである。
【００５６】
従って、スタイラスペン２１のペン先が表示部１４の画面上に当接されておらず浮いてしまっている状態では、当該スタイラスペン２１から得られる輪郭線データＤ１における各輪郭形成点の３次元座標値は意味のないデータでしかなく、そのような輪郭線データＤ１を取得しても輪郭線データ記憶部３５に記憶する価値がない。
【００５７】
そこで制御部は、スタイラスペン２１のペン先が表示部１４の画面上にほぼ当接されている場合に限って、そのときの輪郭線データＤ１における各輪郭形成点の３次元座標値を有効と判断し、そのときの輪郭線データＤ１を有効と判断するようになされている。
【００５８】
実際上、制御部はスタイラスペン２１のペン先の３次元位置を、次式
【００５９】
【数１】
2004094666.tif 000003
【００６０】
で示される３次元座標値とし、表示部１４の画面を２次元のＸ軸及びＹ軸で表し、画面垂直方向をＺ軸で表したとすると、次式
【００６１】
【数２】
2004094666.tif 000004
【００６２】
の関係が満たされるときに輪郭線データＤ１を有効と判断し、（２）式の関係が満たされないときには輪郭線データＤ１を無効と判断するようになされている。
【００６３】
因みに、Ｚｍｉｎ及びＺｍａｘは任意に設定可能な定数であり、当該Ｚｍｉｎ及びＺｍａｘの定数次第によってはスタイラスペン２１のペン先が表示部１４の画面上に当接していなければ輪郭線データＤ１を有効と判断することは一切ないようにすることも可能であり、又はスタイラスペン２１のペン先が表示部１４の画面上から僅かに浮いていて接触していない場合でも輪郭線データＤ１を有効と判断することも可能である。
【００６４】
ステップＳＰ２５で否定結果が得られると、このことはスタイラスペン２１のペン先の３次元位置を示すＺ軸座標値が（２）式を満たしておらず、輪郭線データＤ１が無効であることを表しており、このとき制御部はステップＳＰ２１へ戻って上述の処理を繰り返す。
【００６５】
これに対してステップＳＰ２５で肯定結果が得られると、このことはスタイラスペン２１のペン先の３次元位置を示すＺ軸座標値が（２）式を満たしており、輪郭線データＤ１が有効であることを表しており、このとき制御部は次のステップＳＰ２６へ移る。
【００６６】
ステップＳＰ２６において制御部は、ステップＳＰ２５で有効と判断した輪郭線データＤ１を一時的に記憶するため、輪郭線データ記憶部３５に既に記憶されている過去の輪郭線データＤ１を消去し、次のステップＳＰ２７へ移る。
【００６７】
なお輪郭線入力処理部３３では、輪郭線データＤ１が有効である場合には、スタイラスペン２１のペン先が動かされて輪郭線入力作業がユーザによって行われているいないに係わらず、一定時間毎に輪郭線データＤ１における各輪郭形成点の３次元座標値を輪郭線データ記憶部３５に出力するため、上述の（２）式の条件を満たしていながらペン先が静止状態にあったとしても一定時間毎に同一の３次元座標値でなる輪郭線データＤ１を出力することになる。
【００６８】
しかし、その場合に制御部が輪郭線データ記憶部３５に同一の３次元座標値でなる輪郭線データＤ１を記憶したところで意味はないので、１サンプリング前のタイミングの輪郭線データＤ１における各輪郭形成点の３次元座標値と現時点のタイミングの輪郭線データＤ１における各輪郭形成点の３次元座標値に変化があった場合にのみ輪郭線データ記憶部３５に当該輪郭線データＤ１を記憶するようになされている。
【００６９】
ステップＳＰ２７において制御部は、輪郭線データＤ１における各輪郭形成点の３次元座標値を２次元座標値に変換し、これを輪郭線データ記憶３５に記憶した後、次のステップＳＰ２８へ移る。
【００７０】
ここで、制御部が輪郭線入力処理部３３で３次元座標値から２次元座標値に変換する座標変換について説明する。制御部は、輪郭線データＤ１における３次元座標値が上述の（１）式におけるＸ＝［Ｘ、Ｙ、Ｚ］であり、当該３次元座標値を変換した後の２次元座標値ｘ＝［ｘ、ｙ］とした場合、当該２次元座標値ｘは次式
【００７１】
【数３】
2004094666.tif 000005
【００７２】
で示される。但し、Ｈは座標系を変換する２行３列のマトリックスであり、予め与えられた定数である。
【００７３】
ステップＳＰ２８において制御部は、輪郭線入力処理部３３で輪郭線データＤ１における各輪郭形成点の２次元座標値が１サンプリング前の輪郭線データＤ１の２次元座標値と比較して変化があったか否かを判定し、変化があったときには次のステップＳＰ２９へ移り、当該変化が無かったときにはステップＳＰ３０へ移る。
【００７４】
ステップＳＰ２９において制御部は、輪郭線データＤ１における各輪郭形成点の２次元座標値が１サンプリング前の輪郭線データＤ１の２次元座標値と比較して変化があったので、変化後の２次元座標値を輪郭線データ記憶部３５に追加して記憶し、次のステップＳＰ３０へ移る。
【００７５】
ステップＳＰ３０において制御部は、ステップＳＰ２２と同様に、入力部１５からスタイラスペン２１の入力ボタン２７の押下操作に関する入力ボタン情報を取得して次のステップＳＰ３１へ移り、当該入力ボタン情報に基づいて入力ボタン２７がユーザによって押下操作されている状態にあるか否かを判定する。
【００７６】
ここで否定結果が得られると、このことは入力ボタン２７が押下操作されていないので輪郭線データＤ１を構成している各輪郭形成点の２次元座標値を取得することがないことを表しており、このとき制御部はステップＳＰ２１に戻って上述の処理を繰り返す。
【００７７】
これに対してステップＳＰ３１で肯定結果が得られると、このことは入力ボタン２７が押下操作されているので輪郭線データＤ１における各輪郭形成点の２次元座標値が入力部１５から順次供給されてくることを表しており、このとき制御部は次のステップＳＰ３２へ移る。
【００７８】
ステップＳＰ３２において制御部は、ステップＳＰ２４と同様に、入力部１５から供給されてくる輪郭線データＤ１における各輪郭形成点の２次元座標値を取得し、次のステップＳＰ３３へ移る。
【００７９】
ステップＳＰ３３において制御部は、当該輪郭線データＤ１における各輪郭形成点の２次元座標値が有効な入力であるか否かを輪郭線入力処理部３３の輪郭線入力処理によって判定し、否定結果が得られたときにはステップＳＰ３０に戻って上述の処理を繰り返し、肯定結果が得られたときにはステップＳＰ２７へ移って以降の処理を繰り返す。
【００８０】
このように制御部は、ユーザがスタイラスペン２１のペン先を表示部１４の画面上にほぼ当接させた状態でかつ入力ボタン２７が押下操作されている間だけ、各輪郭形成点の２次元座標値を有効な入力として取得し、輪郭線データ記憶部３５に記憶することにより輪郭線の登録を行うようになされている。
【００８１】
（２−３）ユーザによる輪郭線修正作業手順
オブジェクト輪郭抽出装置１０においては、ユーザが一度入力した輪郭線データＤ１に対して「つまみ引っ張り」方式と「へら押し込み」方式の２種類の修正作業をユーザ自身で施すことができるようになされており、以下ユーザが当該修正作業を行う際の処理手順について順次説明する。
【００８２】
図７に示すようにユーザは、ルーチンＲＴ３の開始ステップから入ってステップＳＰ４１へ移る。ステップＳＰ４１においてユーザは、入力部１５のスタイラスペン２１を握持した後、次のステップＳＰ４２で表示部１４に表示されたメニュー（図示せず）の中から輪郭線データＤ１に対する修正方式として「つまみ引っ張り」方式と「へら押し込み」方式のいずれかを選択し、次のステップＳＰ４３へ移る。
【００８３】
ステップＳＰ４３においてユーザは、表示部１４に表示されている輪郭線データＤ１に対応した輪郭線上の修正を施したい箇所に当該スタイラスペン２１のペン先を移動させ、次のステップＳＰ４４で入力ボタン２７を押下操作し、次のステップＳＰ４５へ移る。
【００８４】
ステップＳＰ４５においてユーザは、スタイラスペン２１の入力ボタン２７を押下操作したままの状態でペン先を動かすことにより、ステップＳＰ４２で選択した「つまみ引っ張り」方式又は「へら押し込み」方式のいずれかによる輪郭線の変形操作を実行し、次のステップＳＰ４６へ移る。なお、「つまみ引っ張り」方式又は「へら押し込み」方式による輪郭線の変形操作については後述する。
【００８５】
ステップＳＰ４６においてユーザは、ステップＳＰ４５における変形操作で修正した修正輪郭線を目視確認しながら当該変形後の修正輪郭線に満足しているか否かを判断し、満足していない場合にはステップＳＰ４５に戻って上述の処理を繰り返し、満足している場合には次のステップＳＰ４７へ移る。
【００８６】
ステップＳＰ４７においてユーザは、変形した修正輪郭線に満足しているので、入力ボタン２７の押下操作を止めて次のステップＳＰ４８へ移り、輪郭線の修正作業を終了するか否かを判断し、まだ修正する意思がある場合にはステップＳＰ４２に戻って上述の処理を繰り返し、修正する意思が無い場合には次のステップＳＰ４９へ移ってユーザによる輪郭線修正作業手順を終了する。
【００８７】
ここで「つまみ引っ張り」方式の変形操作について説明する。図８（Ａ）、（Ｂ）及び（Ｃ）に示すように、既に入力された輪郭線データＤ１に対応した輪郭線ＮＬ１を構成している複数の輪郭形成点ＮＬ１Ｐ１、ＮＬ１Ｐ２、……、のうち例えば輪郭形成点ＮＬ１Ｐ５に対してユーザがスタイラスペン２１のペン先を極力近づけ（図８（Ａ））、その状態でユーザがスタイラスペン２１の入力ボタン２７を押下操作する。
【００８８】
これによりユーザはスタイラスペン２１のペン先を介してあたかも輪郭線ＮＬ１の輪郭形成点ＮＬ１Ｐ５を摘んだかのような感覚を得、その状態でペン先を図８（Ｂ）の矢印Ｒ側へ引っ張ることにより、当該輪郭形成点ＮＬ１Ｐ５のみならず、その周辺の輪郭形成点ＮＬ１Ｐ１〜ＮＬ１Ｐ４、ＮＬ１Ｐ６〜ＮＬ１Ｐ９についても輪郭形成点ＮＬ１Ｐ５と連動して変形操作し得るようになされている。
【００８９】
そしてユーザが図８（Ｂ）の状態でスタイラスペン２１の入力ボタン２７に対する押下操作を止めると、その段階で輪郭形成点ＮＬ１Ｐ５、その周辺の輪郭形成点ＮＬ１Ｐ１〜ＮＬ１Ｐ４、ＮＬ１Ｐ６〜ＮＬ１Ｐ９における修正後の輪郭形成点ＮＬ１Ｐ１´〜ＮＬ１Ｐ９´が決定し、当該輪郭形成点ＮＬ１Ｐ１´〜ＮＬ１Ｐ９´からなる修正輪郭線ＮＬ１´を得ることができるようになされている。
【００９０】
なお、この場合、図８（Ｂ）に示すように、ユーザがスタイラスペン２１のペン先を矢印Ｒ方向へ動かした際、当該スタイラスペン２１のペン先を通じて矢印Ｒ方向とは逆の矢印Ｑ方向へ戻されるような力覚を与えられるようになされており、この力覚を通じてユーザは修正操作を実行する際に新たな操作感を得るようになされている。
【００９１】
また、「へら押し込み」方式の変形操作についても説明する。図９（Ａ）、（Ｂ）及び（Ｃ）に示すように、既に入力された輪郭線データＤ１に対応した例えば輪郭線ＮＬ３を構成している複数の輪郭形成点ＮＬ３Ｐ１、ＮＬ３Ｐ２、……、のうち例えば輪郭形成点ＮＬ３Ｐ５に対してユーザがスタイラスペン２１の入力ボタン２７を押下操作した状態でペン先を近づける（図９（Ａ））。
【００９２】
この場合、図９（Ｂ）に示すように、ユーザはスタイラスペン２１のペン先には目に見えない仮想的な円形状の「へら」の縁が輪郭線ＮＬ１を構成している複数の輪郭形成点ＮＬ３Ｐ１、ＮＬ３Ｐ２、……、のうち輪郭形成点ＮＬ３Ｐ３〜ＮＬ３Ｐ７に接触し、当該輪郭形成点ＮＬ３Ｐ３〜ＮＬ３Ｐ７を「へら」の縁で全体的に押し上げることができるようになされている。
【００９３】
そして図９（Ｃ）に示すように、ユーザはスタイラスペン２１のペン先を所望の位置に移動させた後、入力ボタン２７の押下操作を止めると、その位置で輪郭形成点ＮＬ３Ｐ３´〜ＮＬ３Ｐ７´が決定し、輪郭形成点ＮＬ３Ｐ１、ＮＬ３Ｐ２、ＮＬ３Ｐ３´〜ＮＬ３Ｐ７´、ＮＬ３Ｐ８及びＮＬ３Ｐ９からなる修正輪郭線ＮＬ３´を得ることができるようになされている。
【００９４】
なお、この場合も図９（Ｂ）に示すように、ユーザがスタイラスペン２１のペン先を動かした際、当該スタイラスペン２１のペン先を通じて動かした方向とは逆の矢印Ｑ´方向へ戻されるような力覚を与えられるようになされており、この力覚を通じてユーザは修正操作を実行する際に新たな操作感を得るようになされている。
【００９５】
（２−４）本体による輪郭線修正処理手順
次に、上述したようなユーザによる輪郭線修正作業が行われた場合における本体１２の具体的な輪郭線修正処理手順について、「つまみ引っ張り」方式又は「へら押し込み」方式に分けてそれぞれ説明する。
【００９６】
（２−４−１）「つまみ引っ張り」方式による輪郭線修正処理手順
まずは、「つまみ引っ張り」方式による輪郭線修正処理手順について図１０のフロ−チャートを用いて説明する。
【００９７】
本体１２の制御部は、ルーチンＲＴ４の開始ステップから入ってステップＳＰ５１へ移る。ステップＳＰ５１において制御部は、ユーザからの輪郭抽出作業の終了要求を受け付けたか否かを判定し、当該終了要求を受け付けた場合には次のステップＳＰ６１に移って処理を終了し、当該終了要求を受け付けなかった場合には次のステップＳＰ５２へ移る。
【００９８】
ステップＳＰ５２において制御部は、ユーザによって入力部１５のスタイラスペン２１のペン先が輪郭線に近づけられた状態（図１１（Ａ））で、入力ボタン２７が押下操作されているか否かを判定し、否定結果を得たときにはステップＳＰ５１に戻って入力ボタン２７が押下操作されるまで待ち受け、肯定結果を得たときには次のステップＳＰ５３へ移る。
【００９９】
ステップＳＰ５３において制御部は、輪郭線修正処理部３４において、スタイラスペン２１のペン先が移動されて輪郭線データＤ１に対応した輪郭線ＮＬ１に対して次第に近づけられた状態における当該ペン先の位置（以下、これをペン先位置と呼ぶ）と、輪郭線ＮＬ１の輪郭形成点ＮＬ１Ｐｉ（ｉ＝１、２、……）との間における２次元座標（ｘ、ｙ）上での最短距離Ｌｍｉｎを計算し、次のステップＳＰ５４へ移る。
【０１００】
ステップＳＰ５４において制御部は、輪郭線修正処理部３４において、ステップＳＰ５３で算出した最短距離Ｌｍｉｎを所定の閾値Ｔ１と比較し、次のステップＳＰ５５へ移る。
【０１０１】
ステップＳＰ５５において制御部は、輪郭線修正処理部３４において、最短距離Ｌｍｉｎが所定の閾値以下であるか否かを判定する。ここで閾値Ｔ１とは、ペン先を所定半径でなる仮想円の中心とした場合における当該仮想円の半径ｄ１であり、これにより当該仮想円の内周側に輪郭線ＮＬ１の輪郭形成点ＮＬ１Ｐｉが位置したときに、当該閾値Ｔ１以下になったと判定することができる。
【０１０２】
従ってステップＳＰ５５で否定結果が得られると、このことは最短距離Ｌｍｉｎが所定の閾値Ｔ１よりも大きい、すなわちペン先を中心とした仮想円の内周側に輪郭線ＮＬ１の輪郭形成点ＮＬ１Ｐｉが位置していない状態（図１１（Ａ））にあることを表しており、このとき制御部はステップＳＰ５１に戻って上述の処理を繰り返す。
【０１０３】
これに対してステップＳＰ５５で肯定結果が得られると、このことは最短距離Ｌｍｉｎが所定の閾値Ｔ１以下、すなわちペン先を中心とした仮想円の内周側に輪郭線ＮＬ１の輪郭形成点ＮＬ１Ｐｉが位置している状態（図１１（Ｂ））にあることを表しており、このとき制御部は次のステップＳＰ５６へ移る。
【０１０４】
このときユーザはスタイラスペン２１にペン先で輪郭線ＮＬ１の輪郭形成点ＮＬ１Ｐｉを摘んだような感覚で引っ張ることにより当該輪郭線ＮＬ１を変形操作し得るようになされており、輪郭形成点ＮＬ１Ｐｉを摘んだ状態から離すには入力ボタン２７の押下操作を止めれば良い。
【０１０５】
（２−４−１−１）輪郭線を引っ張ったときの変形計算処理手順
ステップＳＰ５６において制御部は、輪郭線修正処理部３４において、ユーザによるスタイラスペン２１の操作に応じた「つまみ引っ張り」方式による輪郭線ＮＬ１の変形を計算するが、その詳しい内容については図１２に示すサブルーチンによって説明する。
【０１０６】
ステップＳＰ５６のサブルーチンにおけるステップＳＰ７１において制御部は、ユーザがペン先で摘もうとしている輪郭形成点ＮＬ１Ｐｉを特定するため、ペン先位置から最も近い距離に存在する輪郭形成点（以下、これを最短輪郭形成点と呼ぶ）ＮＬ１Ｐｉを求め、次のステップＳＰ７２へ移る。
【０１０７】
このときユーザはペン先で輪郭線ＮＬ１の最短輪郭形成点ＮＬ１Ｐｉを摘んだ状態で当該ペン先を表示部１４の画面上をなぞりながら移動させることにより、ペン先で摘んだ最短輪郭形成点ＮＬ１Ｐｉを引っ張って変形させるようになされている。
【０１０８】
ステップＳＰ７２において制御部は、図１３に示すように、最短輪郭形成点ＮＬ１Ｐｉの２次元座標値を変形操作後におけるペン先位置の２次元座標値で書き換えることにより、変形操作後の輪郭形成点ＮＬ１Ｐｉ´を求め、次のステップＳＰ７３へ移る。
【０１０９】
ここで制御部は、変形操作中におけるペン先位置の２次元座標値をｐ、最短輪郭形成点ＮＬ１Ｐｉの２次元座標値をｃとした場合、変形後の輪郭形成点ＮＬ１Ｐｉ´における変位ｘｈは、次式
【０１１０】
【数４】
2004094666.tif 000006
【０１１１】
で与えられる。
【０１１２】
従って制御部は、変形操作後の輪郭形成点ＮＬ１Ｐｉ´の２次元座標値をｃ´としたとき、当該輪郭形成点ＮＬ１Ｐｉ´の２次元座標値ｃ´を次式
【０１１３】
【数５】
2004094666.tif 000007
【０１１４】
によって求めることができる。
【０１１５】
ステップＳＰ７３において制御部は、最短輪郭形成点ＮＬ１Ｐｉの左右両隣側に存在する輪郭形成点を当該最短輪郭形成点ＮＬ１Ｐｉと連動して変形させるため、まず右隣側の輪郭形成点に対応した参照インデックス値ｉＲをリセットし（ｉＲ＝１）、次のステップＳＰ７４へ移る。
【０１１６】
ステップＳＰ７４において制御部は、最短輪郭形成点ＮＬ１Ｐｉの右隣ｉ番目に位置する輪郭形成点の２次元座標値を取得し、次のステップＳＰ７５へ移る。
【０１１７】
ステップＳＰ７５において制御部は、ステップＳＰ７４で取得した右隣ｉ番目に位置する輪郭形成点が最短輪郭形成点ＮＬ１Ｐｉと連動して変形したときの変位後の２次元座標値ｇ´を計算する。
【０１１８】
ここで制御部は、最短輪郭形成点ＮＬ１Ｐｉを輪郭形成点ＮＬ１Ｐｉ´に変形させるに際し、当該最短輪郭形成点ＮＬ１Ｐｉと連動して変形させる周囲の輪郭形成点の変位についてもそれぞれ算出するようになされている。
【０１１９】
なお制御部は、最短輪郭形成点ＮＬ１Ｐｉと連動して当該最短輪郭形成点ＮＬ１Ｐｉの両隣何番目の輪郭形成点まで変位の影響を伝播させるかを予め定めており、その伝播範囲を第ｎ番目の輪郭形成点までとすると、最短輪郭形成点ＮＬ１Ｐｉから数えて両隣第ｉ番目（１≦ｉ≦ｎ）の輪郭形成点における変位ｘｈ（ｉ）は、次式
【０１２０】
【数６】
2004094666.tif 000008
【０１２１】
で与えられる。
【０１２２】
但し、ここで係数ｋｉは、０≦ｋｉ≦１の範囲内における定められた定数であり、最短輪郭形成点ＮＬ１Ｐｉから輪郭形成点が遠ざかるに連れて変位量がどのように減衰していくかを決定する要素である。例えば最短輪郭形成点ＮＬ１Ｐｉからの遠さに応じて比例的に変位量が減衰するのであれば、係数ｋｉは、次式
【０１２３】
【数７】
2004094666.tif 000009
【０１２４】
のように与えることができる。
【０１２５】
以上より、制御部は最短輪郭形成点ＮＬ１Ｐｉから数えて第ｉ番目の輪郭形成点の元の位置をｇとすると、変形後の新しい位置ｇ´は、次式
【０１２６】
【数８】
2004094666.tif 000010
【０１２７】
と表すことが出来る。
【０１２８】
ステップＳＰ７６において制御部は、最短輪郭形成点ＮＬ１Ｐｉから数えて右隣側第ｉ＋１番目の輪郭形成点における変形操作後の新しい位置を算出するために参照インデックス値を一つ増やし、次のステップＳＰ７７へ移る。
【０１２９】
ステップＳＰ７７において制御部は、最短輪郭形成点ＮＬ１Ｐｉと連動して変位の影響が伝播する右隣側の伝播範囲における全ての輪郭形成点について変位計算を行って、変形操作後の新しい位置を算出し終えたか否かを判定し、否定結果を得たときにはステップＳＰ７４に戻って上述の処理を繰り返す。
【０１３０】
これに対してステップＳＰ７７で肯定結果が得られると、このことは右隣側の伝播範囲における全ての輪郭形成点について変形操作後の新しい位置を算出し終えたことを表しており、このとき制御部は次のステップＳＰ７８へ移る。
【０１３１】
ステップＳＰ７８において制御部は、左隣側の伝播範囲における輪郭形成点に対応した参照インデックス値ｉＬをリセット（ｉＬ＝１）し、次のステップＳＰ７９へ移る。
【０１３２】
ステップＳＰ７９において制御部は、最短輪郭形成点ＮＬ１Ｐｉの左隣ｉ番目に位置する輪郭形成点の２次元座標値を取得し、次のステップＳＰ８０へ移る。
【０１３３】
ステップＳＰ８０において制御部は、ステップＳＰ７９で取得した左隣ｉ番目に位置する輪郭形成点が最短輪郭形成点ＮＬ１Ｐｉと連動して変形したときの変位後の２次元座標値ｇ´を（８）式に従って計算し、次のステップＳＰ８１へ移る。
【０１３４】
ステップＳＰ８１において制御部は、最短輪郭形成点ＮＬ１Ｐｉから数えて左隣側第ｉ＋１番目の輪郭形成点における変形操作後の新しい位置を算出するために参照インデックス値を一つ増やし、次のステップＳＰ８２へ移る。
【０１３５】
ステップＳＰ８２において制御部は、最短輪郭形成点ＮＬ１Ｐｉと連動して変位の影響が伝播する左隣側の伝播範囲における全ての輪郭形成点について変位計算を行って、変形操作後の新しい位置を算出し終えたか否かを判定し、否定結果を得たときにはステップＳＰ７９に戻って上述の処理を繰り返す。
【０１３６】
これに対してステップＳＰ８２で肯定結果が得られると、このことは左隣側の伝播範囲における全ての輪郭形成点について変形操作後の新しい位置を算出し終えたことを表しており、このとき制御部はルーチンＲＴ４のステップＳＰ５７へ戻る。
【０１３７】
ステップＳＰ５７（図１０）において制御部は、輪郭線修正処理部３４において、輪郭線ＮＬ１の変形操作に伴って発生させる力覚を計算するが、その詳しい内容については図１４に示すサブルーチンによって説明する。
【０１３８】
（２−４−１−２）輪郭線を引っ張ったときに発生する力覚の計算処理手順
ステップＳＰ５７におけるサブルーチンのステップＳＰ９１において制御部は、輪郭線ＮＬ１がスタイラスペン２１のペン先で初めて摘まれた状態であるか否かを判定する。ここで輪郭線ＮＬ１が初めて摘まれた状態であるか否かを判定するのは、輪郭線ＮＬ１の輪郭形成点ＮＬ１Ｐｉが摘まれた時の位置及びスタイラスペン２１の現在のペン先位置に基づいて制御部が発生すべき力覚を計算する必要があるからである。
【０１３９】
このステップＳＰ９１で肯定結果が得られると、このことは輪郭線ＮＬ１がスタイラスペン２１のペン先で初めて摘まれた状態であることを表しており、このとき制御部は次のステップＳＰ９２へ移る。
【０１４０】
ステップＳＰ９２において制御部は、スタイラスペン２１のペン先で摘まれた輪郭形成点ＮＬ１Ｐｉの２次元座標値を新たに保持し、それまでに保持していた過去の２次元座標値を消去し、次のステップＳＰ９３へ移る。
【０１４１】
これに対してステップＳＰ９１で否定結果が得られると、このことは輪郭線ＮＬ１がスタイラスペン２１のペン先で初めて摘まれたのではなく既に摘まれた状態であることを表しており、このとき制御部はステップＳＰ９３へ移る。
【０１４２】
ステップＳＰ９３において制御部は、図１５に示すように、現時点での変形操作中の輪郭線ＮＬ１´におけるスタイラスペン２１のペン先位置を示す２次元座標値ｐと、最初に輪郭形成点ＮＬ１Ｐｉが掴まれたときの２次元座標値ｃとに基づいて発生させるべき力覚Ｆを、次式
【０１４３】
【数９】
2004094666.tif 000011
【０１４４】
に従って計算し、ルーチンＲＴ４（図１０）のステップＳＰ５８へ戻る。ここで係数ｋは予め設定された定数である。
【０１４５】
ステップＳＰ５８において制御部は、最短輪郭形成点ＮＬ１Ｐｉと連動して変位の影響が伝播する右側隣及び左隣側の伝播範囲における全ての輪郭形成点についての変位計算結果を新たな輪郭線データＤ１として更新すると共に、そのときの変形状態を表示部１４に表示することにより変形操作を行っているユーザに目視確認させ、次のステップＳＰ５９へ移る。
【０１４６】
ステップＳＰ５９において制御部は、ステップＳＰ５７で算出した力覚Ｆを力覚提示部３７を介して入力部１５のスタイラスペン２１に与えることにより、ペン先の移動方向に輪郭形成点ＮＬ１Ｐｉを引っ張るに際して、あたかも輪ゴムを引っ張っているときとほぼ同様の力覚Ｆを発生させ、次のステップＳＰ６０へ移る。
【０１４７】
因みに、力覚提示部３７を介して入力部１５のスタイラスペン２１に力覚Ｆを与えるというのは、入力部１５の第１関節部２４、第２関節部２５及び第３関節部２６に内蔵されているサーボモータを介して第１アーム２２Ａ及び第２アーム２２Ｂを通じたスタイラスペン２１のペン先の動きを輪郭形成点ＮＬ１Ｐｉから離れるほど次第に硬くすることである。
【０１４８】
ステップＳＰ６０において制御部は、スタイラスペン２１の入力ボタン２７に対する押下操作が止められたか否かを判定する。ここで否定結果が得られると、このことはユーザによって入力ボタン２７が押下操作されたままであり、輪郭線ＮＬ１の変形操作が継続中であることを表しており、このとき制御部はステップＳＰ５６に戻って上述の変形計算及び力覚Ｆの計算を継続する。
【０１４９】
これに対してステップＳＰ６０で肯定結果が得られると、このことはユーザによる入力ボタン２７の押下操作が止められたことを表しており、このとき制御部はステップＳＰ５１に戻って上述の処理を繰り返す。
【０１５０】
このようにして本体１２の制御部は、ユーザによるスタイラスペン２１を用いた輪郭線ＮＬ１の「つまみ引っ張り」方式による輪郭線ＮＬ１の変形操作に応じて、当該スタイラスペン２１のペン先を通じて力覚Ｆを発生することにより、ユーザに対して力覚Ｆを介した新たな入力インターフェースを提供し得るようになされている。
【０１５１】
（２−４−２）「へら押し込み」方式による輪郭線修正処理手順
続いて、「へら押し込み」方式による輪郭線修正処理手順について図１６のフロ−チャートを用いて説明する。
【０１５２】
本体１２の制御部は、ルーチンＲＴ５の開始ステップから入ってステップＳＰ１０１へ移る。ステップＳＰ１０１において制御部は、ユーザからの輪郭抽出作業の終了要求を受け付けたか否かを判定し、当該終了要求を受け付けた場合には次のステップＳＰ１０８に移って処理を終了し、当該終了要求を受け取らなかった場合には次のステップＳＰ１０２へ移る。
【０１５３】
ステップＳＰ１０２において制御部は、ユーザによって入力部１５のスタイラスペン２１のペン先が輪郭線に近づけられた状態（図１１（Ａ））で、入力ボタン２７が押下操作されているか否かを判定し、否定結果を得たときにはステップＳＰ１０１に戻って入力ボタン２７が押下操作されるまで待ち受け、肯定結果を得たときには次のステップＳＰ１０３へ移る。
【０１５４】
ステップＳＰ１０３において制御部は、輪郭線修正処理部３４において、ユーザによるスタイラスペン２１の操作に応じた「へら押し込み」方式による輪郭線ＮＬ１の変形を計算するが、その詳しい内容については図１７に示すサブルーチンによって説明する。
【０１５５】
（２−４−２−１）輪郭線を押したときの変形計算処理手順
ステップ１０３におけるサブルーチンのステップＳＰ１１１において制御部は、例えば輪郭線ＮＬ３における複数の輪郭形成点ＮＬ３Ｐ１〜ＮＬ３Ｐｎのうちスタイラスペン２１のペン先位置ｐまでの距離が仮想的なへらを形成している円の半径ｒ以下となる全ての輪郭形成点を求めるべく、最初に輪郭形成点に対する参照インデックス値ｊをリセット（ｊ＝１）し、次のステップＳＰ１１２へ移る。
【０１５６】
ステップＳＰ１１２において制御部は、輪郭線ＮＬ３を構成している複数の輪郭形成点でなる輪郭線データＤ１の中から第ｊ番目の輪郭形成点の２次元座標値ｅを取得し、次のステップＳＰ１１３へ移る。
【０１５７】
ステップＳＰ１１３において制御部は、第ｊ番目の輪郭形成点の２次元座標値ｅから現時点でのスタイラスペン２１におけるペン先位置ｐまで距離ｄを計算し、次のステップＳＰ１１４へ移る。
【０１５８】
ステップＳＰ１１４において制御部は、第ｊ番目の輪郭形成点がスタイラスペン２１におけるペン先部分に想定した仮想的なへらを形成している円の内周側に存在しているか否かを、次式
【０１５９】
【数１０】
2004094666.tif 000012
【０１６０】
に従って判定する。
【０１６１】
ここで否定結果が得られると、このことは（１０）式を満たしておらず、第ｊ番目の輪郭形成点がペン先部分の仮想的なへらを形成している円の内周側に存在していないことを表しており、このとき制御部はステップＳＰ１１２に戻って上述の処理を繰り返す。
【０１６２】
これに対してステップＳＰ１１４で肯定結果が得られると、このことは（１０）式を満たし、第ｊ番目の輪郭形成点がペン先部分の仮想的なへらを形成している円の内周側に存在し、当該第ｊ番目の輪郭形成点が変形操作対象であることを表しており、このとき制御部は次のステップＳＰ１１５へ移る。
【０１６３】
ステップＳＰ１１５において制御部は、第ｊ番目の輪郭形成点がペン先部分の仮想的なへらによって変形操作したときの当該第ｊ番目の輪郭形成点における変位ｘｍを、次式
【０１６４】
【数１１】
2004094666.tif 000013
【０１６５】
に従って計算し、次のステップＳＰ１１６へ移る。但し、ここで｜｜はベクトルの大きさを表す。
【０１６６】
ステップＳＰ１１６において制御部は、ステップＳＰ１１５で算出した変位ｘｍを用いて変位後における第ｊ番目の輪郭形成点の位置ｅ´を、次式
【０１６７】
【数１２】
2004094666.tif 000014
【０１６８】
に従って算出し、次のステップＳＰ１１７へ移る。
【０１６９】
ステップＳＰ１１７において制御部は、第ｊ番目の輪郭形成点について変位後の位置ｅ´を算出し終えたので、参照インデックス値ｊを一つ増やし、次のステップＳＰ１１８へ移る。
【０１７０】
ステップＳＰ１１８において制御部は、全ての輪郭形成点ＮＬ３Ｐ１〜ＮＬ３Ｐｎに対して、スタイラスペン２１におけるペン先部分の仮想的なへらを形成している円の内周側に存在しているか否かの評価を終えたか否かを判定し、当該評価を終えていないときには、ステップＳＰ１１２に戻って上述の処理を繰り返し、当該評価を終えているときにはルーチンＲＴ５（図１６）のステップＳＰ１０４へ戻る。
【０１７１】
これにより制御部は、図１８に示すようにスタイラスペン２１におけるペン先部分の仮想的なへらを形成している円の内周側に存在している全ての輪郭形成点ＮＬ３Ｐ３〜ＮＬ３Ｐ７における変位後の輪郭形成点ＮＬ３Ｐ３´〜ＮＬ３Ｐ７´を算出し、当該変位後の輪郭形成点ＮＬ３Ｐ３´〜ＮＬ３Ｐ７´によって構成される修正輪郭線ＮＬ３´を表示部１４に表示するようになされている。
【０１７２】
このようにして制御部は、変位後の輪郭形成点ＮＬ３Ｐ４´を中心として、その左右両隣に位置する変位後の輪郭形成点ＮＬ３Ｐ３´、ＮＬ３Ｐ５´〜ＮＬ３Ｐ７´の変位量が次第に少なくなるような当該変位後の輪郭形成点ＮＬ３Ｐ３´〜ＮＬ３Ｐ７´を算出することができる。
【０１７３】
ステップＳＰ１０４において制御部は、輪郭線修正処理部３４において、輪郭線ＮＬ３の変形操作に伴ってスタイラスペン２１におけるペン先部分の仮想的なへらを形成している円の内周側に存在している全ての輪郭形成点ＮＬ３Ｐ３〜ＮＬ３Ｐ７のそれぞれについて力ｆｉを計算し、それらの合力Σｆｉを力覚Ｆとして計算するが、その詳しい内容については図１９に示すサブルーチンによって説明する。
【０１７４】
（２−４−２−２）輪郭線を押したときに発生する力覚の計算処理手順
ステップＳＰ１０９におけるサブルーチンのステップＳＰ１２１において制御部は、輪郭線ＮＬ３における複数の輪郭形成点ＮＬ３Ｐ１〜ＮＬ３Ｐｎのうち変形操作に応じた力覚の発生対象となる全ての輪郭形成点を求めるべく、最初に輪郭形成点ＮＬ３Ｐ１〜ＮＬ３Ｐｎに対する参照インデックス値ｊをリセット（ｊ＝１）し、次のステップＳＰ１２２へ移る。
【０１７５】
ステップＳＰ１２２において制御部は、力覚の発生対象となる全ての輪郭形成点における力ｆの合力を力覚Ｆとして算出するため、既に記憶されている旧い合力の値をリセットし、次のステップＳＰ１２３へ移る。
【０１７６】
ステップＳＰ１２３において制御部は、輪郭線ＮＬ３を構成している複数の輪郭形成点ＮＬ３Ｐ１〜ＮＬ３Ｐｎでなる輪郭線データＤ１の中から、参照インデックス値が第ｊ番目の輪郭形成点ＮＬ３Ｐｊの２次元座標値を取得し、次のステップＳＰ１２４へ移る。
【０１７７】
ステップＳＰ１２４において制御部は、参照インデックス値が第ｊ番目の輪郭形成点ＮＬ３Ｐｊの２次元座標値ｅからスタイラスペン２１におけるペン先部分の位置ｐまでの距離ｄを計算し、次のステップＳＰ１２５へ移る。
【０１７８】
ステップＳＰ１２５において制御部は、第ｊ番目の輪郭形成点ＮＬ３Ｐｊがスタイラスペン２１におけるペン先部分に想定した仮想的なへらを形成している円の内周側に存在しているか否かを、上述の（１０）式に従って判定する。
【０１７９】
ここで否定結果が得られると、このことは第ｊ番目の輪郭形成点ＮＬ３Ｐｊがスタイラスペン２１におけるペン先部分に想定した仮想的なへらを形成している円の内周側に存在していないことを表しており、このとき制御部はステップＳＰ１２４に戻って次の第ｊ＋１番目の輪郭形成点ＮＬ３Ｐｊ＋１の２次元座標値を取得し、以降の処理を繰り返す。
【０１８０】
これに対してステップＳＰ１２５で肯定結果が得られると、このことは第ｊ番目の輪郭形成点ＮＬ３Ｐｊがスタイラスペン２１におけるペン先部分に想定した仮想的なへらを形成している円の内周側に存在していることを表しており、このとき制御部は次のステップＳＰ１２６へ移る。
【０１８１】
ステップＳＰ１２６において制御部は、第ｊ番目の輪郭形成点ＮＬ３Ｐｊにおける変位ｘｍを、（１１）式
に従って計算し、次のステップＳＰ１２７へ移る。
【０１８２】
ステップＳＰ１２７において制御部は、ステップＳＰ１２９で算出した変位ｘｍを用いて当該第ｊ番目の輪郭形成点ＮＬ３Ｐｊにおける力ｆｉを、次式
【０１８３】
【数１３】
2004094666.tif 000015
【０１８４】
に従って算出し、次のステップＳＰ１２８へ移る。
【０１８５】
ここで、力ｆｉは輪郭形成点ＮＬ３Ｐｊの変形に対する抵抗力を表しており、定数ｋはその抵抗力の強さに相当すると同時に予め設定された値である。
【０１８６】
ステップＳＰ１２８において制御部は、図２０に示すように当該第ｊ番目の輪郭形成点ＮＬ３Ｐｊにおける力ｆｉを、次式
【０１８７】
【数１４】
2004094666.tif 000016
【０１８８】
に従って累積加算することにより合力Ｆを算出し、次のステップＳＰ１２９へ移る。
【０１８９】
ステップＳＰ１２９において制御部は、第ｊ番目の輪郭形成点ＮＬ３Ｐｊにおける力ｆｉを累積加算する度に参照インデックス値ｊを一つ増やし、次のステップＳＰ１３０へ移る。
【０１９０】
ステップＳＰ１３０において制御部は、全ての輪郭形成点について評価を終えたか否かを判定する。ここで否定結果が得られると、このことは全ての輪郭形成点がスタイラスペン２１におけるペン先部分の仮想的なへらを形成している円の内周側に存在しているか否かの評価を終えていないことを表しており、このとき制御部はステップＳＰ１２３に戻って上述の処理を繰り返す。
【０１９１】
これに対してステップＳＰ１３０で肯定結果が得られると、このことは全ての輪郭形成点についての評価を終えていることを表しており、このとき制御部は次のステップＳＰ１３１へ移る。
【０１９２】
ステップＳＰ１３１において制御部は、合力Ｆと過去に発生させた力覚値Ｆ（ｔ）（ｔ＝Ｔ−Ｎ、Ｔ−Ｎ＋１、……、Ｔ−１）との平均値を、力覚提示部３７を介して入力部１５のスタイラスペン２１を通じて実際に与えるべき現時点Ｔでの力覚値Ｆ（Ｔ）として、次式
【０１９３】
【数１５】
2004094666.tif 000017
【０１９４】
に従って算出し、次のステップＳＰ１３２へ移る。
【０１９５】
ここで、合力Ｆと過去に発生させた力覚値Ｆ（ｔ）（ｔ＝Ｔ−Ｎ、Ｔ−Ｎ＋１、……、Ｔ−１）との平均値を求める理由としては、当該合力Ｆがユーザによる輪郭線ＮＬ３の修正の仕方（ペン先の移動のさせ方）や輪郭線の形状によって、その力の方向と大きさが急激に変化することがあり、その変化の急峻さを抑制するためである。
【０１９６】
ステップＳＰ１３２において制御部は、既に保持している過去の力覚値データをステップＳＰ１３１で算出した当該力覚値Ｆ（Ｔ）で更新し、ルーチンＲＴ５のステップＳＰ１０５へ戻る。
【０１９７】
ステップＳＰ１０５において制御部は、修正前の輪郭線データＤ１を、スタイラスペン２１のペン先の移動に伴って変化した新たな輪郭線ＮＬ３´に対応した修正輪郭線データＤ３に更新し、次のステップＳＰ１０６へ移る。
【０１９８】
ステップＳＰ１０６において制御部は、力覚提示部３７を介してステップＳＰ１０４で算出した当該力覚値Ｆ（Ｔ）に対応した力覚Ｆを入力部１５のスタイラスペン２１を介して与えることによりユーザへ提示し、次のステップＳＰ１０７へ移る。
【０１９９】
ここで、力覚値Ｆ（Ｔ）に対応した力覚Ｆを入力部１５のスタイラスペン２１を介してユーザへ提示するとは、第１アーム２２Ａ及び第２アーム２２Ｂや、第１関節部２４〜第３関節部２６を介して当該スタイラスペン２１の動きを硬くするような抵抗力を与えることである。
【０２００】
ステップＳＰ１０７において制御部は、ユーザによってスタイラスペン２１の入力ボタン２７の押下操作が止められたか否かを判定し、否定結果を得たときにはユーザによる輪郭線修正作業が継続中であるので、ステップＳＰ１０３に戻って上述の処理を繰り返し、肯定結果を得たときには再度ステップＳＰ１０１に戻って輪郭線修正処理を再度実行する。
【０２０１】
このようにして本体１２の制御部は、「へら押し込み」方式による輪郭線ＮＬ３の修正処理を行うと同時に、ユーザの「へら押し込み」方式による当該修正作業に伴った所定の力覚Ｆを発生させることにより、ユーザに対して力覚Ｆを介した新たな入力インターフェースを提供し得るようになされている。
【０２０２】
（２−４−３）修正頻度に応じた輪郭線の硬さ変更処理
次に、輪郭線を変形操作した回数（以下、これを修正頻度と呼ぶ）に応じて当該輪郭線を修正する際の力覚の硬さを変更する場合について説明する。
【０２０３】
この場合、制御部はユーザによる輪郭線の修正頻度分布に応じて当該輪郭線における各部分を修正する時のスタイラスペン２１の動きを硬くさせたり軟らかくさせることにより、一段と効率的な輪郭線の抽出作業をユーザに実行させることを目的とするものであり、例えば図２１に示すように修正頻度の高い輪郭線の部分（斜線で示される領域）ではスタイラスペン２１の動きを硬くすることによって輪郭線修正作業を行うユーザの細かな微調整を容易に実現し得るようになされている。
【０２０４】
すなわち図２２に示すように、輪郭線の修正作業前における修正頻度分布では複数の輪郭形成点における２次元座標値（ｘ１、ｙ１）、（ｘ２、ｙ２）、……、（ｘ１６、ｙ１６）のいずれに対しても変位した回数は「０」であり、輪郭線の修正作業後における修正頻度分布ではそれぞれの輪郭形成点に対して変位した回数にばらつきが発生しており、修正頻度の高い部分と修正頻度の低い部分とに分かれている。
【０２０５】
ところで輪郭線の修正頻度分布とは、各輪郭形成点についてそれぞれ何回修正が加えられたか（変位回数）という情報を輪郭形成点毎に表したものであり、ユーザによって修正が加えられる度に輪郭形成点毎の修正頻度ｍをカウントすることにより得られるようになされている。
【０２０６】
なお、輪郭形成点に対する修正頻度ｍは、輪郭線の変形計算時にカウントされ、輪郭線の修正頻度ｍは修正処理の開始時にリセットされるようになされている。
【０２０７】
また、輪郭線の硬さを変化させるとは、輪郭線を引っ張って修正する場合であれば、（９）式における輪郭線ＮＬ１の復元力の強さを意味する係数ｋを変化させることであり、輪郭線を押して修正する場合であれば、（１３）式における輪郭形成点ＮＬ３Ｐｊにおける抵抗力の強さを意味する係数ｋを変化させることである。
【０２０８】
この場合、予め与えられている輪郭線ＮＬ１の硬さをｋ、修正頻度ｍに応じて変更した輪郭線ＮＬ１´の硬さをｋ´とすると、当該変更した輪郭線ＮＬ１´の硬さｋ´は、次式
【０２０９】
【数１６】
2004094666.tif 000018
【０２１０】
となる。
【０２１１】
ここで関数Ｋ（ｍ）は、修正頻度ｍが大きくなるに連れて輪郭線ＮＬ１の硬さがどのように変化するかを表す関数であり、関数Ｋ（ｍ）が次式
【０２１２】
【数１７】
2004094666.tif 000019
【０２１３】
を満たす場合には、輪郭線ＮＬ１は硬くなり、関数Ｋ（ｍ）が次式
【０２１４】
【数１８】
2004094666.tif 000020
【０２１５】
を満たす場合には、輪郭線ＮＬ１は軟らかくなる。但し、修正が全く行われない輪郭形成点（修正頻度ｍ＝０）に対してはＫ（ｍ）＝１である。
【０２１６】
この関数Ｋ（ｍ）の考え方としては、例えば、修正頻度ｍが大きくなるのに比例して輪郭線ＮＬ１を硬くするのであれば、関数Ｋ（ｍ）を次式
【０２１７】
【数１９】
2004094666.tif 000021
【０２１８】
とすればよい。ここでαはα＞０を満たす定数である。
【０２１９】
あるいは修正頻度ｍが大きくなるのに比例して輪郭線ＮＬ１の硬くなり方が鈍くなるのであれば、関数Ｋ（ｍ）を次式
【０２２０】
【数２０】
2004094666.tif 000022
【０２２１】
としてもよい。
【０２２２】
（２−４−３−１）輪郭線を引っ張ったときの変形計算処理手順
オブジェクト輪郭抽出装置１０の制御部による修正頻度に応じた輪郭線の硬さ変更処理を含む、輪郭線を引っ張ったときの変形計算処理手順について図２３のフロ−チャートを用いて具体的に説明する。
【０２２３】
本体１２の制御部は、ルーチンＲＴ６の開始ステップから入ってステップＳＰ１４１へ移る。ステップＳＰ１４１において制御部は、スタイラスペン２１のペン先位置から最も近い輪郭形成点（以下、これを最短輪郭形成点）ＮＬＰｉ（図１１）を求め、次のステップＳＰ１４２へ移る。
【０２２４】
ステップＳＰ１４２において制御部は、ステップＳＰ１４１で求めたスタイラスペン２１のペン先位置から最も近い最短輪郭形成点ＮＬＰｉを修正作業が施される変形対象であると判断し、当該最短輪郭形成点ＮＬＰｉの修正頻度ｍの値を一つ増やし、次のステップＳＰ１４３へ移る。
【０２２５】
ステップＳＰ１４３において制御部は、最短輪郭形成点ＮＬＰｉの右隣における複数の輪郭形成点に対応する参照インデックス値ｉＲ（図１３）をリセットし（ｉＲ＝１）、次のステップＳＰ１４４へ移る。
【０２２６】
ステップＳＰ１４４において制御部は、輪郭線ＮＬ１の輪郭線データＤ１の中から最短輪郭形成点ＮＬＰｉの右隣ｉ番目における輪郭形成点の２次元座標値を取得し、次のステップＳＰ１４５へ移る。
【０２２７】
ステップＳＰ１４５において制御部は、ステップＳＰ１４４で取得した輪郭形成点について変位後の２次元座標値を上述の（８）式に従って計算し、次のステップＳＰ１４６へ移る。
【０２２８】
ステップＳＰ１４６において制御部は、ステップＳＰ１４５で右隣ｉ番目における輪郭形成点を変位させたので、当該右隣ｉ番目における輪郭形成点の修正頻度ｍの値を一つ増やし、次のステップＳＰ１４７へ移る。
【０２２９】
ステップＳＰ１４７において制御部は、ステップＳＰ１４６で右隣ｉ番目における輪郭形成点の修正頻度ｍを一つ増やしたので、参照インデックス値ｉＲを一つ増やし、次のステップＳＰ１４８へ移る。
【０２３０】
ステップＳＰ１４８において制御部は、最短輪郭形成点ＮＬＰｉを変位させたことに応じて当該変位の伝播する右隣範囲における全ての輪郭形成点について変位計算を終了したか否かを判定する。
【０２３１】
ここで否定結果が得られると、このことは変位の伝播する右隣範囲における全ての輪郭形成点について変位計算を終了していないことを表しており、このとき制御部はステップＳＰ１４４に戻って上述の処理を繰り返す。
【０２３２】
これに対して肯定結果が得られると、このことは変位の伝播する右隣範囲における全ての輪郭形成点について変位計算を終了したことを表しており、このとき制御部は次のステップＳＰ１４９へ移る。
【０２３３】
ステップＳＰ１４９において制御部は、ステップＳＰ１４８で最短輪郭形成点ＮＬＰｉに対して変位の伝播する右隣範囲における全ての輪郭形成点ついて変位計算を終了したので、最短輪郭形成点の左隣における複数の輪郭形成点に対応する参照インデックス値ｉＬをリセット（ｉＬ＝０）し、次のステップＳＰ１５０へ移る。
【０２３４】
ステップＳＰ１５０において制御部は、輪郭線ＮＬ１の輪郭線データＤ１の中から最短輪郭形成点ＮＬＰｉの左隣ｉ番目における輪郭形成点の２次元座標値を取得し、次のステップＳＰ１５１へ移る。
【０２３５】
ステップＳＰ１５１において制御部は、ステップＳＰ１５０で取得した輪郭形成点について変位後の２次元座標値を上述と同様に（８）式に従って計算し、次のステップＳＰ１５２へ移る。
【０２３６】
ステップＳＰ１５２において制御部は、ステップＳＰ１５１で左隣ｉ番目における輪郭形成点を変位させたので、当該左隣ｉ番目における輪郭形成点の修正頻度ｍの値を一つ増やし、次のステップＳＰ１５３へ移る。
【０２３７】
ステップＳＰ１５３において制御部は、ステップＳＰ１５２で左隣ｉ番目における輪郭形成点の修正頻度ｍを一つ増やしたので、参照インデックス値ｉＬを一つ増やし、次のステップＳＰ１５４へ移る。
【０２３８】
ステップＳＰ１５４において制御部は、最短輪郭形成点ＮＬＰｉを変位させたことに応じて当該変位の伝播する左隣範囲における全ての輪郭形成点について変位計算を終了したか否かを判定する。
【０２３９】
ここで否定結果が得られると、このことは変位の伝播する左隣範囲における全ての輪郭形成点について変位計算を終了していないことを表しており、このとき制御部はステップＳＰ１５０に戻って上述の処理を繰り返す。
【０２４０】
これに対して肯定結果が得られると、このことは変位の伝播する左隣範囲における全ての輪郭形成点について変位計算を終了したことを表しており、このとき制御部は次のステップＳＰ１５５へ移って輪郭線ＮＬ１を引っ張って変形したときの変形計算処理手順を終了する。
【０２４１】
このようにして制御部は、実際に輪郭線ＮＬ１を引っ張って変形したときに、スタイラスペン２１のペン先で摘んだ輪郭形成点のみならず、その周囲の輪郭形成点についても変形計算を行うと共に、当該変形計算を行った輪郭形成点に対する変位回数をカウントし、輪郭形成点に対する修正頻度ｍの対応表を生成することにより、いずれの輪郭形成点に対する入力操作が最も難しいかを当該修正頻度ｍに基づいて判断し得るようになされている。
【０２４２】
（２−４−３−２）輪郭線を押したときの変形計算処理手順
続いて、オブジェクト輪郭抽出装置１０の制御部による修正頻度ｍに応じた輪郭線の硬さ変更処理を含む、輪郭線を押したときの変形計算処理手順について図２４のフロ−チャートを用いて具体的に説明する。
【０２４３】
本体１２の制御部は、ルーチンＲＴ７の開始ステップから入ってステップＳＰ１６１へ移る。ステップＳＰ１６１において制御部は、輪郭線ＮＬ３における複数の輪郭形成点ＮＬ３Ｐ１〜ＮＬ３Ｐｎのうちスタイラスペン２１のペン先位置ｐまでの距離が仮想的なへらを形成している円の半径ｒ以下となる全ての輪郭形成点を求めるべく、最初に輪郭形成点に対する参照インデックス値ｊをリセット（ｊ＝１）し、次のステップＳＰ１６２へ移る。
【０２４４】
ステップＳＰ１６２において制御部は、輪郭線ＮＬ３を構成している複数の輪郭形成点でなる輪郭線データＤ１の中から第ｊ番目の輪郭形成点の２次元座標値ｅを取得し、次のステップＳＰ１６３へ移る。
【０２４５】
ステップＳＰ１６３において制御部は、第ｊ番目の輪郭形成点の２次元座標値ｅから現時点でのスタイラスペン２１におけるペン先位置ｐまで距離ｄを計算し、次のステップＳＰ１６４へ移る。
【０２４６】
ステップＳＰ１６４において制御部は、第ｊ番目の輪郭形成点がスタイラスペン２１におけるペン先部分に想定した仮想的なへらを形成している円の内周側に存在しているか否かを、（１０）式に従って判定する。
【０２４７】
ここで否定結果が得られると、このことは（１０）式を満たしておらず、第ｊ番目の輪郭形成点がペン先部分の仮想的なへらを形成している円の内周側に存在していないことを表しており、このとき制御部はステップＳＰ１６２に戻って上述の処理を繰り返す。
【０２４８】
これに対してステップＳＰ１６４で肯定結果が得られると、このことは（１０）式を満たし、第ｊ番目の輪郭形成点がペン先部分の仮想的なへらを形成している円の内周側に存在し、当該第ｊ番目の輪郭形成点が変形操作対象であることを表しており、このとき制御部は次のステップＳＰ１６５へ移る。
【０２４９】
ステップＳＰ１６５において制御部は、第ｊ番目の輪郭形成点がペン先部分の仮想的なへらによって変形操作したときの当該第ｊ番目の輪郭形成点における変位ｘｍを、（１１）次式に従って計算し、次のステップＳＰ１６６へ移る。
【０２５０】
ステップＳＰ１６６において制御部は、ステップＳＰ１６５で算出した変位ｘｍを用いて変位後における第ｊ番目の輪郭形成点の位置ｅ´を、（１２）式に従って算出し、次のステップＳＰ１６７へ移る。
【０２５１】
ステップＳＰ１６７において制御部は、ステップＳＰ１６６で変形した輪郭形成点に対する修正頻度ｍの値を一つ増やし、次のステップＳＰ１６８へ移る。
【０２５２】
ステップＳＰ１６８において制御部は、第ｊ番目の輪郭形成点について変位後の位置ｅ´を算出し終えたので、参照インデックス値ｊを一つ増やし、次のステップＳＰ１６９へ移る。
【０２５３】
ステップＳＰ１６９において制御部は、全ての輪郭形成点ＮＬ３Ｐ１〜ＮＬ３Ｐｎに対して、スタイラスペン２１におけるペン先部分の仮想的なへらを形成している円の内周側に存在しているか否かの評価を終えたか否かを判定し、当該評価を終えていないときには、ステップＳＰ１６２に戻って上述の処理を繰り返し、当該評価を終えているときには次のステップＳＰ１７０へ移って輪郭線ＮＬ３を「へら押し込み」方式で押して変形したときの変形計算処理手順を終了する。
【０２５４】
このようにして本体１２の制御部は、実際に輪郭線ＮＬ３を押して変形したときに、スタイラスペン２１におけるペン先部分の仮想的なへらを形成している円の内周側に存在している全ての輪郭形成点について変形計算を行うと共に、当該変形計算を行った輪郭形成点に対する変位回数をカウントし、輪郭形成点に対する修正頻度ｍの対応表を生成することにより、いずれの輪郭形成点に対する入力操作が最も難しいかを当該修正頻度ｍに基づいて判断し得るようになされている。
【０２５５】
（２−４−３−３）輪郭線を引っ張ったときに発生する修正頻度に応じた力覚の計算処理手順
次に、オブジェクト輪郭抽出装置１０の制御部により輪郭線を引っ張って変形させたときに発生する輪郭線の修正頻度ｍに応じた力覚の計算処理手順について図２５のフロ−チャートを用いて説明する。
【０２５６】
本体１２の制御部は、ルーチンＲＴ８の開始ステップから入ってステップＳＰ１７１へ移る。ステップＳＰ１７１において制御部は、輪郭線ＮＬ１がスタイラスペン２１のペン先で初めて摘まれた状態であるか否かを判定する。
【０２５７】
ここで輪郭線ＮＬ１が初めて摘まれた状態であるか否かを判定するのは、輪郭線ＮＬ１の輪郭形成点ＮＬ１Ｐｉが摘まれた時の位置及びスタイラスペン２１の現在のペン先位置に基づいて発生すべき力覚を計算する必要があるからである。
【０２５８】
このステップＳＰ１７１で肯定結果が得られると、このことは輪郭線ＮＬ１がスタイラスペン２１のペン先で初めて摘まれた状態であることを表しており、このとき制御部は次のステップＳＰ１７２へ移る。
【０２５９】
ステップＳＰ１７２において制御部は、スタイラスペン２１のペン先で摘まれた輪郭形成点ＮＬ１Ｐｉの２次元座標値を新たに保持し、それまでに保持していた過去の２次元座標値を消去し、次のステップＳＰ１７３へ移る。
【０２６０】
これに対してステップＳＰ１７１で否定結果が得られると、このことは輪郭線ＮＬ１がスタイラスペン２１のペン先で初めて摘まれたのではなく既に摘まれた状態にあることを表しており、このとき制御部はステップＳＰ１７３へ移る。
【０２６１】
ステップＳＰ１７３において制御部は、掴まれた輪郭形成点ＮＬ１Ｐｉにおけける修正頻度ｍの値を一つ増やし、その新たな修正頻度ｍの値を保持して、それまで保持していた過去の修正頻度ｍの値を消去し、次のステップＳＰ１７４へ移る。
【０２６２】
ステップＳＰ１７４において制御部は、図１５に示したように、現時点で変形操作中の輪郭線ＮＬ１´に対するスタイラスペン２１のペン先位置を示す２次元座標値ｐと、最初に輪郭形成点ＮＬ１Ｐｉが掴まれたときの２次元座標値ｃとに基づいて発生させるべき力覚Ｆを（１７）式及び（１８）式で説明した関数Ｋ（ｍ）を用いて、次式
【０２６３】
【数２１】
2004094666.tif 000023
【０２６４】
に従って計算し、次のステップＳＰ１７５へ移って処理を終了する。
【０２６５】
このように制御部は、修正頻度ｍが大きくなるに連れて輪郭線ＮＬ１の硬さがどのように変化するかを表す関数Ｋ（ｍ）を用いて力覚Ｆを算出することにより、例えば修正頻度ｍが多い輪郭線ＮＬ１の部分についてはスタイラスペン２１のペン先の動きを硬くし、修正頻度ｍが少ない輪郭線ＮＬ１の部分についてはスタイラスペン２１のペン先の動きを軟らかくすることができるようになされている。
【０２６６】
（２−４−３−４）輪郭線を押したときに発生する修正頻度に応じた力覚の計算処理手順
次に、オブジェクト輪郭抽出装置１０の制御部により輪郭線を押して変形させたときに発生する輪郭線の修正頻度ｍに応じた力覚の計算処理手順について図２６のフロ−チャートを用いて説明する。
【０２６７】
ステップＳＰ１８１において制御部は、輪郭線ＮＬ３における複数の輪郭形成点ＮＬ３Ｐ１〜ＮＬ３Ｐｎのうち変形操作に応じた力覚の発生対象となる全ての輪郭形成点を求めるべく、最初に輪郭形成点ＮＬ３Ｐ１〜ＮＬ３Ｐｎに対する参照インデックス値ｊをリセット（ｊ＝１）し、次のステップＳＰ１８２へ移る。
【０２６８】
ステップＳＰ１８２において制御部は、力覚の発生対象となる全ての輪郭形成点における力ｆの合力を力覚Ｆとして算出するため、既に記憶されている旧い合力の値をリセットし、次のステップＳＰ１８３へ移る。
【０２６９】
ステップＳＰ１８３において制御部は、輪郭線ＮＬ３を構成している複数の輪郭形成点ＮＬ３Ｐ１〜ＮＬ３Ｐｎでなる輪郭線データＤ１の中から、参照インデックス値が第ｊ番目の輪郭形成点ＮＬ３Ｐｊの２次元座標値を取得し、次のステップＳＰ１８４へ移る。
【０２７０】
ステップＳＰ１８４において制御部は、参照インデックス値が第ｊ番目の輪郭形成点ＮＬ３Ｐｊの２次元座標値ｅからスタイラスペン２１におけるペン先位置ｐまでの距離ｄを計算し、次のステップＳＰ１８５へ移る。
【０２７１】
ステップＳＰ１８５において制御部は、第ｊ番目の輪郭形成点ＮＬ３Ｐｊがスタイラスペン２１におけるペン先部分に想定した仮想的なへらを形成している円の内周側に存在しているか否かを、上述の（１０）式に従って判定する。
【０２７２】
ここで否定結果が得られると、このことは第ｊ番目の輪郭形成点ＮＬ３Ｐｊがスタイラスペン２１におけるペン先部分に想定した仮想的なへらを形成している円の内周側に存在していないことを表しており、このとき制御部はステップＳＰ１８４に戻って次の第ｊ＋１番目の輪郭形成点ＮＬ３Ｐｊ＋１の２次元座標値を取得し、以降の処理を繰り返す。
【０２７３】
これに対してステップＳＰ１８５で肯定結果が得られると、このことは第ｊ番目の輪郭形成点ＮＬ３Ｐｊがスタイラスペン２１におけるペン先部分に想定した仮想的なへらを形成している円の内周側に存在していることを表しており、このとき制御部は次のステップＳＰ１８６へ移る。
【０２７４】
ステップＳＰ１８６において制御部は、第ｊ番目の輪郭形成点ＮＬ３Ｐｊにおける変位ｘｍを、上述の（１１）式に従って計算し、次のステップＳＰ１８７へ移る。
【０２７５】
ステップＳＰ１８７において制御部は、ステップＳＰ１８９で算出した変位ｘｍを用いて当該第ｊ番目の輪郭形成点ＮＬ３Ｐｊにおける力ｆｉを上述の（１７）式及び（１８）式で説明した関数Ｋ（ｍ）を用いて、次式
【０２７６】
【数２２】
2004094666.tif 000024
【０２７７】
に従って算出し、次のステップＳＰ１８８へ移る。
【０２７８】
ここで、力ｆｉは輪郭形成点ＮＬ３Ｐｊの変形に対する抵抗力を表しており、関数Ｋ（ｍ）は上述した通り修正頻度に応じて変化する輪郭線ＮＬ３の硬さを表しており、定数ｋはその抵抗力の強さに相当すると同時に予め設定された値である。
【０２７９】
ステップＳＰ１８８において制御部は、図２３に示したように当該第ｊ番目の輪郭形成点ＮＬ３Ｐｊにおける力ｆｉを、（１４）式に従って累積加算することにより合力Ｆを算出し、次のステップＳＰ１８９へ移る。
【０２８０】
ステップＳＰ１８９において制御部は、第ｊ番目の輪郭形成点ＮＬ３Ｐｊにおける力ｆｉを累積加算する度に参照インデックス値を一つ増やし、次のステップＳＰ１９０へ移る。
【０２８１】
ステップＳＰ１９０において制御部は、全ての輪郭形成点について評価を終えたか否かを判定する。ここで否定結果が得られると、このことは全ての輪郭形成点がスタイラスペン２１におけるペン先部分の仮想的なへらを形成している円の内周側に存在しているか否かの評価を終えていないことを表しており、このとき制御部はステップＳＰ１８３に戻って上述の処理を繰り返す。
【０２８２】
これに対してステップＳＰ１９０で肯定結果が得られると、このことは全ての輪郭形成点についての評価を終えていることを表しており、このとき制御部は次のステップＳＰ１９１へ移る。
【０２８３】
ステップＳＰ１９１において制御部は、合力Ｆと過去に発生させた力覚値Ｆ（ｔ）（ｔ＝Ｔ−Ｎ、Ｔ−Ｎ＋１、……、Ｔ−１）との平均値を、力覚提示部３７を介して入力部１５のスタイラスペン２１を通じて実際に与えるべき現時点Ｔでの力覚値Ｆ（Ｔ）として、上述の（１５）式に従って算出し、次のステップＳＰ１９２へ移る。
【０２８４】
ここで、合力Ｆと過去に発生させた力覚値Ｆ（ｔ）（ｔ＝Ｔ−Ｎ、Ｔ−Ｎ＋１、……、Ｔ−１）との平均値を求める理由としては、上述した通り、当該合力Ｆがユーザによる輪郭線ＮＬ３の修正の仕方（ペン先の移動のさせ方）や輪郭線の形状によって、その力の方向と大きさが急激に変化することがあり、その変化の急峻さを抑制するためである。
【０２８５】
ステップＳＰ１９２において制御部は、既に保持している過去の力覚値データをステップＳＰ１９１で算出した当該力覚値Ｆ（Ｔ）で更新し、次のステップＳＰ１９３へ移って処理を終了する。
【０２８６】
このように制御部は、修正頻度ｍに応じて変化する関数Ｋ（ｍ）を用いて力覚Ｆを算出することにより、例えば修正頻度ｍが多い輪郭線ＮＬ１の部分についてはスタイラスペン２１のペン先の動きを硬くし、修正頻度ｍが少ない輪郭線ＮＬ１の部分についてはスタイラスペン２１のペン先の動きを軟らかくすることができるようになされている。
【０２８７】
（２−５）輪郭線登録処理
次に、オブジェクト輪郭抽出装置１０においては、ユーザが入力した輪郭線を予め本体１２におけるデータ蓄積部４１の登録輪郭線データ蓄積部４３に登録し、後に当該登録輪郭線を検索して利用するべく、輪郭線登録処理しておくことが必要であり、その輪郭線登録処理について説明する。
【０２８８】
ここでユーザが入力した輪郭線を登録して登録輪郭線データ蓄積部４３に蓄積しておくことは、後の輪郭線抽出作業の簡略化及び正確化を図るためであり、その際に蓄積すべき情報としては登録輪郭線データＤ１０と各輪郭形成点に対する修正頻度データである。
【０２８９】
また、これらの登録輪郭線データＤ１０及び修正頻度データの蓄積方法としては２種類考えられ、新しく登録する登録輪郭線データＤ１０をそれまで蓄積していた旧い登録輪郭線データＤ１０と置き換える置換方法と、新しく登録する登録輪郭線データＤ１０とそれまで蓄積していた旧い登録輪郭線データＤ１０との加重平均を取ることにより得られた新たな平均輪郭線データを登録輪郭線データＤ１０として蓄積する加重平均算出方法とがある。
【０２９０】
なお加重平均算出方法では、加重平均を算出する際、新しく登録する登録輪郭線データＤ１０と、それまで蓄積していた旧い登録輪郭線データＤ１０とのそれぞれに対して所定の割合で重み付けを施すことにより、新しい登録輪郭線データＤ１０と旧い登録輪郭線データＤ１０との割合を自由に調整することが可能である。
【０２９１】
実際上、輪郭線登録処理部３９は、輪郭線データ記憶部３５から供給された輪郭線データＤ１及び修正頻度データを受け、登録輪郭線データ蓄積部４３に蓄積するためのアドレス割り当て処理等の登録処理を輪郭線登録処理部３９で行った後、登録輪郭線データＤ１０として当該登録輪郭線データ蓄積部４３に記憶すると共に、修正頻度データを登録輪郭線修正履歴蓄積部４２に記憶するようになされている。
【０２９２】
（２−６）登録輪郭線を利用した修正処理
これまでは、ユーザが入力した輪郭線に対してユーザ自身が修正を施すことについて説明してきたが、始めから輪郭線を入力して修正を施すのではなく、既に登録されている他人の輪郭線データＤ１を読み出し、その読み出した輪郭線データＤ１に対して修正を加えた後に登録を行うことで輪郭線抽出登録処理を簡略化することも可能である。
【０２９３】
その場合、これまでユーザによる▲１▼輪郭線の入力操作、▲２▼輪郭線の修正操作として行ってきた作業が、新たに▲１▼輪郭線の検索、▲２▼輪郭線の修正操作へ置き換わるので、これまでの▲１▼輪郭線の入力操作が不要になる分だけ、ユーザの輪郭線抽出登録作業を確実に簡素化することができることになる。
【０２９４】
ここでは、上述した既に登録されている他人の輪郭線データＤ１を読み出し、その輪郭線データＤ１に対して修正を加えていくユーザの輪郭線抽出登録作業手順について図２７のフローチャートを用いて説明する。
【０２９５】
すなわちユーザは、ルーチンＲＴ１０の開始ステップから入ってステップＳＰ２０１へ入り、データ蓄積部４１の画像データ蓄積部４４から読み出して表示された複数のオブジェクト（図形）の中から輪郭線の抽出を希望するオブジェクトＯＪ１（図１）を選択し、次のステップＳＰ２０２へ移る。
【０２９６】
ステップＳＰ２０２においてユーザは、ステップＳＰ２０１で選択したオブジェクトＯＪ１の登録輪郭線データＤ１０を検索し、次のステップＳＰ２０３へ移り、当該登録輪郭線データＤ１０が見つかったか否かを判断する。
【０２９７】
ここで否定結果が得られると、このことは輪郭線の抽出を希望したオブジェクトＯＪ１に対する登録輪郭線データＤ１０がまだ登録されていないので検索することはできないことを表しており、このときユーザは次のステップＳＰ２０４へ移り、当該選択したオブジェクトＯＪ１に対する輪郭線抽出操作をユーザ自身で行って輪郭線を入力し、次のステップＳＰ２０５へ移る。
【０２９８】
ステップＳＰ２０５においてユーザは、ユーザ自身の輪郭線抽出操作によって入力した輪郭線に対して満足しているか否かを判断し、満足していないときには当該輪郭線に対して修正を加えるべくステップＳＰ２０７へ移り、満足しているときにはステップＳＰ２０９へ移る。
【０２９９】
これに対してステップＳＰ２０３で肯定結果が得られると、このことは輪郭線の抽出を希望したオブジェクトＯＪ１に対する登録輪郭線データＤ１０が既に登録されており、データ蓄積部４１の登録輪郭線データ蓄積部４３から検索して表示部１４に表示可能であることを表しており、このときユーザは次のステップＳＰ２０６へ移る。
【０３００】
ステップＳＰ２０６においてユーザは、登録輪郭線データ蓄積部４３から読み出して表示部１４に表示された登録輪郭線に対して満足できるか否かを判断し、満足できるのであればステップＳＰ２０９へ移り、満足できないのであれば登録輪郭線に対して修正を加えるべく、次のステップＳＰ２０７へ移る。
【０３０１】
ステップＳＰ２０７においてユーザは、ユーザ自身で入力した輪郭線又は登録輪郭線に対して修正を施し、次のステップＳＰ２０８へ移って修正後の輪郭線に対して満足できるか否かを判断する。
【０３０２】
ここで否定結果が得られると、このことはユーザ自身が修正を施した修正後の修正輪郭線に対して満足できていないことを表しており、このときユーザはステップＳＰ２０７に戻って輪郭線の修正を再度施す。
【０３０３】
これに対してステップＳＰ２０８で肯定結果が得られると、このことはユーザ自身が修正を施した修正後の修正輪郭線に対して満足していることを表しており、このときユーザは次のステップＳＰ２０９へ移る。
【０３０４】
ステップＳＰ２０９においてユーザは、ステップＳＰ２０８で満足した修正後の修正輪郭線を最終的にデータ蓄積部４１の登録輪郭線データ蓄積部４３に登録すべきか否かを判断する。
【０３０５】
ここで否定結果が得られると、修正後の修正輪郭線を登録輪郭線データ蓄積部４３に登録する意思がユーザにないことを表しており、このときユーザは登録を行うことなくステップＳＰ２１１へ移って輪郭線抽出作業手順を終了する。
【０３０６】
これに対してステップＳＰ２０９で肯定結果が得られると、このことは修正後の修正輪郭線を登録輪郭線データ蓄積部４３に登録する意思をユーザが持っていることを表しており、このときユーザは次のステップＳＰ２１０へ移る。
【０３０７】
ステップＳＰ２１０においてユーザは、修正後の修正輪郭線を登録輪郭線データ蓄積部４３に登録する操作を行い、次のステップＳＰ２１１へ移って輪郭線抽出登録作業手順を終了する。
【０３０８】
このようにしてユーザは、ユーザ自身で修正を施して最終的に気に入った修正輪郭線に関する登録輪郭線データＤ１０のみをデータ蓄積部４１の登録輪郭線データ蓄積部４３に登録するようになされている。
【０３０９】
（２−７）登録輪郭線の検索処理
次に、上述のようにして登録された登録輪郭線を実際にユーザが検索する場合の処理について説明する。
【０３１０】
図２８（Ａ）に示すように、オブジェクト輪郭抽出装置１０は、表示部１４に検索対象となる複数種類のオブジェクトＯＪ１１〜ＯＪ１３を表示し、ユーザは当該オブジェクトＯＪ１１〜ＯＪ１３の中から輪郭抽出を希望する例えばオブジェクトＯＪ１１を選択し、そのオブジェクトＯＪ１１に対して大まかに台形状の輪郭線ＮＬ１１を入力するだけでよい。
【０３１１】
これによりオブジェクト輪郭抽出装置１０の本体１２では、ユーザによって大まかに入力された台形状の輪郭線ＮＬ１１の形状及び当該輪郭線ＮＬ１１が入力された画面上の座標位置に基づいてオブジェクトＯＪ１１〜ＯＪ１３のうちオブジェクトＯＪ１１に関する登録輪郭線を検索希望であることを判断するようになされている。
【０３１２】
そして本体１２の制御部は、データ蓄積部４１の登録輪郭線データ蓄積部４３に蓄積されている複数種類の登録輪郭線の中から、当該オブジェクトＯＪ１１の輪郭を最も忠実に表していると思われる登録輪郭線ＴＮＬ１１を検索し、その検索結果である登録輪郭線ＴＮＬ１１をオブジェクトＯＪ１１に重ねて表示するようになされている。
【０３１３】
また図２８（Ｂ）についても同様であり、ユーザは当該オブジェクトＯＪ１１〜ＯＪ１３の中から輪郭抽出を希望する例えばオブジェクトＯＪ１２を選択し、そのオブジェクトＯＪ１２に対して大まかに三角形状の輪郭線ＮＬ１２を入力するだけでよい。
【０３１４】
これによりオブジェクト輪郭抽出装置１０の本体１２では、ユーザによって大まかに入力された三角形状の輪郭線ＮＬ１２の形状及び当該輪郭線ＮＬ１２が入力された画面上の座標位置に基づいてオブジェクトＯＪ１１〜ＯＪ１３のうちオブジェクトＯＪ１２に関する登録輪郭線を検索希望であることを判断するようになされている。
【０３１５】
そして本体１２の制御部は、データ蓄積部４１の登録輪郭線データ蓄積部４３に蓄積されている複数種類の登録輪郭線の中から、当該オブジェクトＯＪ１２の輪郭を最も忠実に表していると思われる登録輪郭線ＴＮＬ１２を検索し、その検索結果である登録輪郭線ＴＮＬ１２をオブジェクトＯＪ１２に重ねて表示するようになされている。
【０３１６】
一方、図２８（Ｃ）に示すように、ユーザはオブジェクトＯＪ１３に対して大まかに輪郭線ＮＬ１３を入力したつもりが、実際はオブジェクトＯＪ１３の領域外に入力してしまった場合、本体１２の制御部は当該輪郭線ＮＬ１３が入力された画面上の座標位置に基づいてオブジェクトＯＪ１１〜ＯＪ１３のうちオブジェクトＯＪ１３に関するものであるかを判断することができず、この場合には登録輪郭線を検索できなかったことを「Ｎｏｔ　Ｆｏｕｎｄ」と画面上に文字表示することにより通知するようになされている。
【０３１７】
このような登録輪郭線の検索処理手順を図２９のフローチャートに従って具体的に説明すると、本体１２の制御部はルーチンＲＴ１１の開始ステップから入ってステップＳＰ２２１へ移る。
【０３１８】
ステップＳＰ２２１において制御部は、図２８（Ａ）、（Ｂ）及び（Ｃ）で示したように、オブジェクトＯＪ１１〜ＯＪ１３の何れかに対してユーザが大まかに入力した輪郭線ＮＬ１１、ＮＬ１２又はＮＬ１３に係る輪郭線データを取得し、次のステップＳＰ２２２へ移る。
【０３１９】
ステップＳＰ２２２において制御部は、ユーザが大まかに入力した輪郭線ＮＬ１１、ＮＬ１２又はＮＬ１３と、登録輪郭線データ蓄積部４３に予め登録されている複数の登録輪郭線との距離を計算し、次のステップＳＰ２２３へ移る。
【０３２０】
以下、具体的に説明する。例えばユーザがオブジェクトＯＪ１１に対して大まかに入力した輪郭線ＮＬ１１の輪郭線データＣは、複数の輪郭形成点ｃｉ（ｘｉ、ｙｉ）の集合である。また登録輪郭線ＴＮＬ１１の登録輪郭線データＣ´は複数の登録輪郭形成点ｃｉ´（ｘｉ´、ｙｉ´）の集合である。
【０３２１】
このとき、ユーザが大まかに入力した輪郭線ＮＬ１１（総輪郭形成点数ｎ）の輪郭線データＣから登録輪郭線ＴＮＬ１１の登録輪郭線データＣ´（総輪郭形成点数ｎ´）までの最短距離ｄｄは、次式
【０３２２】
【数２３】
2004094666.tif 000025
【０３２３】
で求められる。
【０３２４】
ステップＳＰ２２３において制御部は、最短距離ｄｄが所定の閾値以下であるか否かを判定する。ここで否定結果が得られると、このことは最短距離ｄｄが所定の閾値以下ではない、すなわちオブジェクトＯＪ１１に極めて酷似した登録輪郭線ＴＮＬ１１が存在しないことを表しており、次のステップＳＰ２２４へ移る。
【０３２５】
ステップＳＰ２２４において制御部は、オブジェクト１１に極めて酷似した登録輪郭線ＴＮＬ１１が存在しないので、当該登録輪郭線ＴＮＬ１１が登録輪郭線データ蓄積部４３には見つからないと判定し、検索できなかった旨の表示をした後、次のステップＳＰ２２６へ移る。
【０３２６】
これに対してステップＳＰ２２３で肯定結果が得られると、このことは最短距離ｄｄが所定の閾値以下である、すなわちオブジェクト１１に極めて酷似した登録輪郭線ＴＮＬ１１が存在することを表しており、このとき制御部は次のステップＳＰ２２５へ移る。
【０３２７】
ステップＳＰ２２５において制御部は、最短距離ｄｄを与えた登録輪郭線データＣ´に係る登録輪郭線ＴＮＬ１１がオブジェクトＯＪ１１に対応するものであることを画面上の座標値に基づいて確認した後、これを検索結果として出力し、オブジェクトＯＪ１１に当該登録輪郭線ＴＮＬ１１を重ねた状態で表示し、次のステップＳＰ２２６へ移って登録輪郭線検索処理を終了する。
【０３２８】
なお制御部は、最短距離ｄｄを与えた登録輪郭線データＣ´がオブジェクトＯＪ１１に対応するものではないと座標値に基づいて認識した場合には、最短距離ｄｄを与えた登録輪郭線データＣ´を検索結果として出力することはなく、検索できなかった旨の表示を行う。
【０３２９】
（３）動作及び効果
以上の構成において、オブジェクト輪郭抽出装置１０は、ユーザが輪郭線の修正作業を行う際、「つまみ引っ張り」方式の変形操作を選択した場合、スタイラスペン２１のペン先で摘まれた修正希望対象の最短輪郭形成点ＮＬ１ｐｉを引っ張る動きに応じて、その周囲の輪郭形成点についても連動して変形させると同時に当該引っ張る動きに応じた力覚Ｆを発生させることにより、あたかもゴムを引っ張るかのような感覚で修正作業をユーザに実行させることができる。
【０３３０】
これによりオブジェクト輪郭抽出装置１０は、ユーザに対して、スタイラスペン２１のペン先で最短輪郭形成点ＮＬ１ｐｉを摘んだ状態で引っ張る距離が短ければ力覚Ｆは僅かなのでペン先を自由に動かし易いが、引っ張る距離が長ければ長いほど力覚Ｆが大きく働くのでペン先を動かし難い感覚を与えることができる。
【０３３１】
この結果、ユーザは微小な修正作業についてはスタイラスペン２１のペン先を比較的自由に動かして容易に実行できるのに対して、元の輪郭線ＮＬ１を大きく変形させるような大きな修正作業についてはスタイラスペン２１のペン先を動かし難いので、大きな修正ミスを発生し難くなる。
【０３３２】
またオブジェクト輪郭抽出装置１０は、ユーザが輪郭線の修正作業を行う際、「へら押し込み」方式の変形操作を選択した場合、スタイラスペン２１のペン先の仮想円によって輪郭線ＮＬ３の修正希望箇所を円形に押し曲げるかのように変形させると同時に、当該変形させた箇所に係る複数の輪郭形成点の反発力によって生じる力覚Ｆを発生させることにより、あたかも「へら」の先端で輪郭線ＮＬ３を押しているかのような感覚で修正作業をユーザに実行させることができる。
【０３３３】
これによりオブジェクト輪郭抽出装置１０は、ユーザに対して、スタイラスペン２１のペン先で輪郭線ＮＬ３を押す距離が短ければ力覚Ｆは僅かなのでペン先を自由に動かし易いが、押す距離が長ければ長いほど力覚Ｆが大きく働くのでペン先を自由に動かし難い感覚を与えることができる。
【０３３４】
この結果、ユーザは微小な修正作業についてはスタイラスペン２１のペン先を比較的自由に動かして容易に実行できるのに対して、元の輪郭線ＮＬ１を大きく変形させるような大きな修正作業についてはスタイラスペン２１のペン先が動かし難いので、大きな修正ミスを発生し難くなる。
【０３３５】
またオブジェクト輪郭抽出装置１０は、修正頻度ｍに応じて変化する関数Ｋ（ｍ）を用いて力覚Ｆを調整することにより、例えば修正頻度ｍが多い輪郭線ＮＬ１及びＮＬ３の部分についてはスタイラスペン２１のペン先の動きを硬くし、修正頻度ｍが少ない輪郭線ＮＬ１及びＮＬ３の部分についてはスタイラスペン２１のペン先の動きを軟らかくすることができる。
【０３３６】
これによりオブジェクト輪郭抽出装置１０は、修正頻度ｍが多くて入力操作の難しい箇所については、スタイラスペン２１が自由に動かし易いよりも、ある程度スタイラスペン２１のペン先の動きを抑制した方が、大きな修正ミスを誘発することがなく、ユーザに対して修正作業による操作性を一段と向上させることができる。
【０３３７】
以上の構成によれば、オブジェクト輪郭抽出装置１０は輪郭線の修正作業を施す際、スタイラスペン２１のペン先を動かす距離や修正頻度ｍに応じた力覚Ｆを発生させることにより、ユーザに対して一段と優れた操作性を有する新たな入力インターフェースを与えることができると共に、輪郭線抽出作業等を容易に実行させることができる。
【０３３８】
（４）他の実施の形態
なお上述の実施の形態においては、（２−４−３−３）輪郭線を引っ張ったときに発生する修正頻度に応じた力覚の計算処理手順及び（２−４−３−４）輪郭線を押したときに発生する修正頻度に応じた力覚の計算処理手順で説明したように、ユーザ自身のみの修正頻度ｍに応じて輪郭線を入力するときのスタイラスペン２１における動きの硬さを変化させるようにした場合について述べたが、本発明はこれに限らず、登録輪郭線の修正頻度ｍｒもフィードバックし、ユーザ自身のみの修正頻度ｍ及び登録輪郭線の修正頻度ｍｒを併せてスタイラスペン２１における動きの硬さを変化させるようにしても良い。
【０３３９】
この場合、上述した（２０）式及び（２１）式は、それぞれ次式
【０３４０】
【数２４】
2004094666.tif 000026
【０３４１】
【数２５】
2004094666.tif 000027
【０３４２】
となる。ここで定数α、βは、それぞれ修正頻度ｍｒ、ｍに応じた重み係数であり、これらを変化させることにより、ユーザ自身の修正頻度ｍを優先するか、それとも登録輪郭線の修正頻度ｍｒを優先するかを任意に調整することが可能となる。
【０３４３】
また上述の実施の形態においては、修正頻度ｍが多くて入力操作の難しい箇所については、スタイラスペン２１のペン先の動きを硬くするようにした場合について述べたが、本発明はこれに限らず、ユーザの好みに応じて、修正頻度ｍが多くて入力操作の難しい箇所については逆にスタイラスペン２１のペン先の動きを軟らかくして自由に動かし易くするようにしても良い。
【０３４４】
さらに上述の実施の形態においては、予め設定されたオブジェクト輪郭抽出プログラムに従って上述の輪郭線入力処理手順、輪郭線修正処理手順、輪郭線登録処理及び登録輪郭線の検索処理等を実行するようにした場合について述べたが、本発明はこれに限らず、オブジェクト輪郭抽出プログラムが格納されたプログラム格納媒体をオブジェクト輪郭抽出装置１０にインストールすることにより上述の各種処理を実行するようにしても良い。
【０３４５】
このように上述したオブジェクト輪郭抽出プログラムをオブジェクト輪郭抽出装置１０にインストールして実行可能な状態にするためのプログラム格納媒体としては、例えばフレキシブルディスク、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ　Ｄｉｓｃ−Ｒｅａｄ　ＯｎｌｙＭｅｍｏｒｙ　）、ＤＶＤ（Ｄｉｇｉｔａｌ　Ｖｅｒｓａｔｉｌｅ　Ｄｉｓｃ）等のパッケージメディアのみならず、オブジェクト輪郭抽出プログラムが一時的もしくは永続的に格納される半導体メモリや磁気ディスク等で実現しても良い。またこれらプログラム格納媒体にオブジェクト輪郭抽出プログラムを格納する手段として、ローカルエリアネットワークやインターネット、ディジタル衛星放送等の有線及び無線通信媒体を利用してもよく、ルータやモデム等の各種通信インターフェースを介して格納するようにしても良い。
【０３４６】
さらに上述の実施の形態においては、入力手段として入力部１５のスタイラスペン２１を介して輪郭線の入力及び修正を実行すると共に、力覚Ｆを提示するようにした場合について述べたが、本発明はこれに限らず、輪郭線の入力及び修正、力覚Ｆを提示することができるその他種々の入力手段を用いるようにしても良い。
【０３４７】
さらに上述の実施の形態においては、対象画像を表示する表示手段としての液晶ディスプレイでなる表示部１４を用いるようにした場合について述べたが、本発明はこれに限らず、ＣＲＴモニタ等の他の種々の表示手段を用いるようにしても良い。
【０３４８】
さらに上述の実施の形態においては、入力部１５を介して入力した輪郭線を記憶する記憶手段としてハードディスクでなるデータ蓄積部４１を用いるようにした場合について述べたが、本発明はこれに限らず、ＤＶＤ（Ｄｉｇｉｔａｌ　Ｖｅｒｓａｔｉｌｅ　Ｄｉｓｋ）等の記憶手段を用いるようにしても良い。
【０３４９】
さらに上述の実施の形態においては、表示部１４に表示した輪郭線を基準として入力部１５により入力した修正修正輪郭線に応じた力覚をスタイラスペン２１に対して発生する力覚発生手段としての力覚提示部３７及び入力部１５を用いるようにした場合について述べたが、本発明はこれに限らず、その他種々の構成でなる力覚発生手段によって力覚Ｆを発生させるようにしても良い。
【０３５０】
【発明の効果】
上述のように本発明によれば、第１の入力データを基準として第２の入力データをユーザが入力したときに、当該第２の入力データに応じた力覚を通じて一段と優れた操作性で第２の入力データの入力作業を容易に実行させ得る画像処理装置を実現できる。
【図面の簡単な説明】
【図１】本発明におけるオブジェクト輪郭抽出装置の外観構成を示す略線的斜視図である。
【図２】入力部の構成を示す略線図である。
【図３】オブジェクト輪郭抽出装置における本体の回路構成を示す略線的ブロック図である。
【図４】ユーザによる輪郭抽出作業手順を示すフローチャートである。
【図５】ユーザによる輪郭線の入力手順を示すフローチャートである。
【図６】輪郭線入力処理手順を示すフローチャートである。
【図７】ユーザによる輪郭線の修正作業手順を示すフローチャートである。
【図８】「つまみ引っ張り」方式の変形操作の説明に供する略線図である。
【図９】「へら押し込み」方式の変形操作の説明に供する略線図である。
【図１０】「つまみ引っ張り」方式による輪郭線修正処理手順を示すフローチャートである。
【図１１】輪郭形成点に対するつまみ処理の説明に供する略線図である。
【図１２】輪郭線を引っ張った時の変形計算処理手順を示すフローチャートである。
【図１３】「つまみ引っ張り」方式による変形計算の説明に供する略線図である。
【図１４】「つまみ引っ張り」方式による力覚の算出処理手順を示すフローチャートである。
【図１５】「つまみ引っ張り」方式による力覚発生計算の説明に供する略線図である。
【図１６】「へら押し込み」方式による基準線修正処理手順を示すフローチャートである。
【図１７】輪郭線を押した時の変形計算の説明に供する略線図である。
【図１８】「へら押し込み」方式による変形計算の説明に供する略線図である。
【図１９】「へら押し込み」方式による力覚の算出処理手順を示すフローチャートである。
【図２０】「へら押し込み」方式による力覚発生計算の説明に供する略線図である。
【図２１】輪郭線の修正頻度に応じて輪郭線の硬さを変化させる際の説明に供する略線図である。
【図２２】輪郭線の修正頻度の説明に供する略線図である。
【図２３】輪郭線を引っ張った時の変形計算処理手順（修正頻度による輪郭線の硬さ変更有り）を示すフローチャートである。
【図２４】輪郭線を押した時の変形計算処理手順（修正頻度による輪郭線の硬さ変更有り）を示すフローチャートである。
【図２５】輪郭線を引っ張った時に発生する力覚の計算処理手順（修正頻度による輪郭線の硬さ変更有り）を示すフローチャートである。
【図２６】輪郭線を押した時に発生する力覚の計算処理手順（修正頻度による輪郭線の硬さ変更有り）を示すフローチャートである。
【図２７】ユーザによる輪郭線抽出作業手順を示すフローチャートである。
【図２８】登録輪郭線の検索の説明に供する略線図である。
【図２９】登録輪郭線の検索処理手順を示すフローチャートである。
【図３０】従来の輪郭抽出装置を示す略線図である。
【図３１】ユーザによる輪郭抽出作業の操作手順を示すフローチャートである。
【符号の説明】
１０……オブジェクト輪郭抽出装置、１２……本体、１４……表示部、１５……入力部、２１……スタイラスペン、ＯＪ１……オブジェクト、３２……信号切換部、３３……輪郭線入力処理部、３４……輪郭線修正処理部、３５……輪郭線データ記憶部、３６……輪郭線データ出力部、３７……力覚提示部、３８……画像提示部、３９……輪郭線登録処理部、４０……輪郭線検索部、４１……データ蓄積部、４２……登録輪郭線修正履歴蓄積部、４３……登録輪郭線データ蓄積部、４４……画像データ蓄積部。
【図１】
2004094666.tif 000028
【図２】
2004094666.tif 000029
【図３】
2004094666.tif 000030
【図４】
2004094666.tif 000031
【図５】
2004094666.tif 000032
【図６】
2004094666.tif 000033
【図７】
2004094666.tif 000034
【図８】
2004094666.tif 000035
【図９】
2004094666.tif 000036
【図１０】
2004094666.tif 000037
【図１１】
2004094666.tif 000038
【図１２】
2004094666.tif 000039
【図１３】
2004094666.tif 000040
【図１４】
2004094666.tif 000041
【図１５】
2004094666.tif 000042
【図１６】
2004094666.tif 000043
【図１７】
2004094666.tif 000044
【図１８】
2004094666.tif 000045
【図１９】
2004094666.tif 000046
【図２０】
2004094666.tif 000047
【図２１】
2004094666.tif 000048
【図２２】
2004094666.tif 000049
【図２３】
2004094666.tif 000050
【図２４】
2004094666.tif 000051
【図２５】
2004094666.tif 000052
【図２６】
2004094666.tif 000053
【図２７】
2004094666.tif 000054
【図２８】
2004094666.tif 000055
【図２９】
2004094666.tif 000056
【図３０】
2004094666.tif 000057
【図３１】
2004094666.tif 000058