(57)【要約】  スタイラス、マウス、指（もしくは他のタッチ入力）、または他の描画装置などの物体を用いてユーザがインクコンテンツを作成中にインクの表示に対するレイテンシーを改善するためのシステムおよび方法が提供される。ユーザによって作成されたインクコンテンツを表示するための時間を低減させる、または最小化するために、本明細書に記載された技術の態様は、実際のウェットインクと共に表示することができる予測ウェットインクを生成する。予測ウェットインクは、アクティブなインクセグメントを予測距離延在させることによって計算される。予測距離は、アクティブなウェットインクセグメントに対する終了インク点と書込み物体の先端部との間の距離であることが意図されている。一態様において、予測距離は、タッチ装置の現在のレイテンシー期間および書込み物体の速度を判定することによって計算される。
2017529623.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサと、
タッチスクリーンと、
前記プロセッサによって実行されたとき、前記タッチスクリーンの表面を横切る物体によって作られた経路上の複数の接触点を受け取るステップ、入力として前記複数の接触点を使用して、アクティブな三次ベジェ近似を計算ステップであって、前記アクティブな三次ベジェ近似が開始接触点および終了接触点を有するステップ、前記タッチスクリーンに対するウェットインクレイテンシー期間を判定するステップ、前記物体が前記ウェットインクレイテンシー期間に進む予測距離を判定するステップ、前記終了接触点から前記予測距離延在する新しい三次ベジェ近似を計算するステップ、および前記新しい三次ベジェ近似に基づいた予測ウェットインクと共に前記アクティブな三次ベジェ近似に基づいたウェットインクを描写するステップ、含む、前記タッチスクリーン上に予測ウェットインクを描写するための方法を行うコンピュータ実行命令を有するコンピュータ記憶装置と、
を備える、タッチスクリーンディスプレイ装置。
【請求項２】
前記方法が前記タッチスクリーンを横切る前記物体の速度を判定するステップをさらに含み、前記予測距離が前記速度を使用して判定される、
請求項１に記載のタッチスクリーンディスプレイ装置。
【請求項３】
前記方法が前記タッチスクリーンを横切る前記物体の加速度を判定するステップをさらに含み、前記予測距離が前記速度および前記加速度を使用して判定される、
請求項２に記載のタッチスクリーンディスプレイ装置。
【請求項４】
前記方法が、入力として前記速度を使用して、前記ウェットインクに対する太さを計算するステップをさらに含む、
請求項２に記載のタッチスクリーンディスプレイ装置。
【請求項５】
前記終了接触点が、前記複数の接触点における他のすべての接触点に関連付けられたタイムスタンプの後に続くタイムスタンプを有する、請求項１に記載のタッチスクリーンディスプレイ装置。
【請求項６】
前記ウェットインクレイテンシー期間が、前記物体がある接触点で前記タッチスクリーンに接触するときの第１の時点と、ウェットインクがウェットインク計算への入力として前記接触点を使用して描写されるときの第２の時点との間の時間量である、請求項１に記載のタッチスクリーンディスプレイ装置。
【請求項７】
前記物体が指である、請求項１に記載のタッチスクリーンディスプレイ装置。
【請求項８】
タッチスクリーン装置において、前記タッチスクリーン装置と一体化されたタッチスクリーンの表面を横切る物体によって作られた経路上の複数の接触点を受け取るステップ、複数のフィルタされた接触点を生成するステップ、入力として前記複数のフィルタされた接触点を使用して、アクティブな三次ベジェ近似を計算するステップであって、前記アクティブな三次ベジェ近似が開始接触点および終了接触点を有する、ステップ、前記タッチスクリーン装置に対するウェットインクレイテンシー期間を判定するステップ、前記物体が前記ウェットインクレイテンシー期間に進む予測距離を判定するステップ、前記終了接触点から前記予測距離延在する新しい三次ベジェ近似を計算するステップ、および前記新しい三次ベジェ近似に基づいた予測ウェットインクと共に前記アクティブな三次ベジェ近似に基づいたウェットインクを描写するステップ、
を含む、タッチスクリーン装置上に予測ウェットインクを描写するための方法。
【請求項９】
前記ウェットインクレイテンシー期間が、前記物体がある位置で前記タッチスクリーンに接触してから、前記位置に対応する点を考慮に入れたウェットインクを前記タッチスクリーン上に表示するまでの時間量である、請求項８に記載の方法。
【請求項１０】
前記複数のフィルタされた接触点が前記複数の接触点に対してＥＡｎ無限インパルス応答フィルタを実行することによって生成される、請求項８に記載の方法。
【請求項１１】
前記方法が前記タッチスクリーンを横切る前記物体の速度を判定するステップをさらに含み、前記予測距離が前記速度を使用して判定される、請求項８に記載の方法。
【請求項１２】
前記方法が、入力として前記速度を使用して、前記ウェットインクに対する太さを計算するステップをさらに含む、請求項１１に記載の方法。
【請求項１３】
前記速度が、２つの連続したインク点間の距離を前記タッチスクリーンに対するサンプリング時間で割ることによって計算される、請求項１１に記載の方法。
【請求項１４】
プロセッサと、
タッチスクリーンと、
前記プロセッサによって実行されたとき、圧力情報に関連付けられていない第１の接触点を前記タッチスクリーンから受け取るステップであって、前記第１の接触点が前記タッチスクリーンの表面を横切る物体によって作られた経路上の複数の接触点のうちの１つである、ステップ、前記第１の接触点における前記物体の速度を判定するステップ、前記速度に対応する圧力を判定するステップ、前記圧力を前記第１の接触点に割り当て、更新された第１の接触点を生成するステップ、および前記更新された第１の接触点を使用してデジタルインクを描写するステップ、含む、接触点に圧力データを割り当てるための方法を行うコンピュータ実行命令を有するコンピュータ記憶装置と、
を備える、タッチスクリーンディスプレイ装置。
【請求項１５】
前記方法が前記更新された第１の接触点に関連付けられた前記圧力を使用して前記デジタルインクの太さを判定するステップをさらに含む、請求項１４に記載のタッチスクリーンディスプレイ装置。
【発明の詳細な説明】
【背景技術】
【０００１】
タブレット計算装置（または同様のタイプの組込み装置）は、ユーザが装置にデータを入力できるようにするタッチスクリーンをしばしば含む。ユーザによるデータ入力は、指またはスタイラス（もしくはペン）などの書込み物体を使用して行われることがある。書込み物体から装置への入力は、「インク」として表示される。
【０００２】
インクは、計算装置が処理し、操作することができるようにデジタル化されて、表示される。これは、デジタル化されたインクを装置上のオペレーティングシステムに送出し、プロセッサにインクを処理させ、次に、処理されたインクをグラフィックスカードに送ることによって行うことができる。次いで、グラフィックスカードは、（ユーザの動作の結果である）インクをモニターまたはディスプレイ上に描写する。
【０００３】
現在のインク描写技法の１つの欠陥は、レイテンシーがもたらされることである。ペンおよび指は、速く、事実上瞬時である傾向があるが、インクの描写は、遅れる傾向がある。実際、全インク描写プロセスは、約５０〜１００ミリ秒程度、またはさらに大きいことがあるレイテンシーをもたらす可能性がある。インク描写中のこのレイテンシーは、遅く厄介なユーザ体験を助長する可能性がある。
【０００４】
特に、このレイテンシーは、物体を直接操作する知覚のバリアを壊すという点で望ましくない影響である。もちろん、これらは、ほとんど、同じ場所が共用される体験がある状況で知覚される。言い換えれば、（スタイラスによってタブレット計算装置またはタッチスクリーン上に書くなどの）入力および出力が互いに同じ場所を共用する場合に、レイテンシーの影響が最も大きい。
【発明の概要】
【０００５】
マウスまたは書込み物体、例えば、指、スタイラス、アクティブペンもしくは表示領域のインクコンテンツに対する所望の位置をトレースするための他の描画装置などを用いてユーザがインクコンテンツを作成中に、インクの表示に対するレイテンシーを改善するためのシステムおよび方法が提供される。スタイラス／マウス／タッチ入力／他の装置を使用してユーザによって作成されるインクコンテンツを表示するための時間を低減させ、または最小化するために、本明細書に記載された技術の態様は、実際のウェットインクと共に表示することができる予測ウェットインクを生成する。予測ウェットインクは、アクティブなインクセグメントを予測距離延在させることによって計算される。予測距離は、アクティブなウェットインクセグメントに対する終了インク点と書込み物体の先端部との間の距離であることが意図されている。一態様において、予測距離は、タッチ装置の現在のレイテンシー期間および書込み物体の速度を判定することによって計算される。その場合、予測距離は、書込み物体がその速度で現在のレイテンシー期間に移動する距離である。さらにまたはあるいは、予測距離は、速度および加速度の両方を使用して計算されてもよい。
【０００６】
加えて、本明細書に記載された技術の態様は、生の圧力データが存在しない場所の圧力データをインク描写エンジンに対して生成することができる。生の圧力データは、感圧性タッチ面、アクティブペンなどによって生成されることがある。しかしながら、ユーザが書き込む多くの装置は、感圧性ではない。本明細書に記載された技術の態様は、圧力の代わりに書込み物体の速度を使用してインク描写エンジンに供給することができる圧力データを生成する。圧力データは、インク幅および／または他のインクパラメータを設定するためにインク描写エンジンによって使用されることがある。
【０００７】
本概要は、詳細な説明において以下でさらに記載される簡略化された形態の概念のうちのある選択されたものを紹介するために提供される。本概要は、特許請求された主題の主要な特徴または本質的な特徴を識別することは意図されておらず、特許請求された主題の範囲を判定する際の助けとして分離して使用されることも意図されていない。
【０００８】
本明細書に記載された技術について、添付図を参照して以下で詳細に記載する。
【図面の簡単な説明】
【０００９】
【図１】予測インクを生成するための概略流れ図である。
【図２】レイテンシーの影響を示す図である。
【図３】正しくない長さを有する予測インクを示す図である。
【図４】正確な長さを有する予測インクを示す図である。
【図５】接触点、インク点、およびインク点によって描画されたウェットインク、ならびに予測インクを示す図である。
【図６】本明細書に記載された技術の態様による、予測インクを生成するための方法の流れ図である。
【図７】本明細書に記載された技術の態様による、予測インクを生成するための方法の流れ図である。
【図８】インクの太さを示す図である。
【図９】本明細書に記載された技術の態様による、デジタルインクの生成に使用するための圧力データを生成するための方法の流れ図である。
【図１０】本明細書に記載された技術の態様による、デジタルインク環境の図である。
【図１１】本明細書に記載された技術の態様による、例示的なコンピューティング環境の図である。
【発明を実施するための形態】
【００１０】
様々な態様において、スタイラス、マウス、指（もしくは他のタッチ入力）、または他の描画装置を用いてユーザがインクコンテンツを作成中にインクの表示レイテンシーを低減させるためのシステムおよび方法が提供される。特に、書込み物体のルートを予想し、予測ウェットインクを描写することによって、書込み物体がある点でタッチスクリーンに接触してから、ウェットインクがタッチスクリーン上に現れるその点を表現するまでのレイテンシーを低減させることができる。
【００１１】
「デジタルインク」は、デジタイザタブレット上のマウス、スタイラス／ペンなどの書込み物体、容量性のタッチデジタイザ上の容量性のスタイラスもしくは容量性の物体（例えば、指）、またはタッチセンシティブ表示画面を利用しても利用しなくてもよいデジタイザタブレットと一体化された表示画面上のスタイラス／ペンにより記録される１つまたは複数のストロークを指す。本明細書で使用されるように、用語「インク」は、「デジタルインク」と区別なく使用され、「デジタルインク」を指す。さらに、用語「書込み物体」は、ペン、スタイラス、指、またはタッチ入力を提供することができる他の任意の器具であってもよい。各ストロークは、１つまたは複数のインク点として記憶されてもよく、各インク点は、一例に過ぎないが、圧力、傾斜、アジマス、および入力器具の位置に対応する座標（x、y）を含む様々な特性を含むことができる。インク点は、書込み物体がタッチ面と接触した実際の接触点と区別可能である。例えば、ユーザは、計算機装置のタッチセンシティブ表示画面に沿ってペンを移動させ、それにより直線または曲線を描画することができ、計算機装置は、ユーザが入力器具を移動させるとともに、ある時間にわたって（または当業者に知られているようなその他の任意の間隔で）入力器具の先端位置の軌道に沿って座標（x、y）をサンプリングすることができる。これらの座標は、ユーザによって入力された曲線または直線に沿った接触点を表し、本明細書では「接触点」と呼ばれる。接触点は、タッチインターフェースに関連付けられたハードウェアコンポーネントによって生成することができる。一般に、ハードウェアコンポーネントは、各接触点を形成するためにタイムスタンプおよび位置情報を割り当てることができる。
【００１２】
書かれたテキストは、直線セグメントによって接続された一連の座標よりも多くの情報を伝えることができる。例えば、書かれたインクは、ペン圧力（インクの太さによる）、ペン角度（直線または曲線のセグメントの形状、および不連続点のまわりのインクの挙動による）、ならびにペン先の速度（直線または曲線の全体にわたる直線性、線幅および線幅の変化による）を反映するように変化する。インクのこれらのさらなる特性を処理することによって、分析される書かれたテキストの感情、個性、強調点などを明らかにすることができる。
【００１３】
デジタルインクは、ストロークのシーケンスまたはストロークの何らかの任意の集合を指すことができ、各ストロークが点のシーケンスから構成される。ストロークは、同時に描画されまたは収集されたものであってもよく、あるいは別個の時間および位置で、ならびに別個の理由で描画されまたは収集されたものであってもよい。各点は、デカルト座標（X、Y）、極座標（r、Θ）、および当技術分野で知られている他の技法を含む様々な公知の技法を使用して表されてもよい。デジタルインクは、圧力、角度、速度、色、スタイラスサイズ、およびインク不透明度を含む特性の表現を含んでもよい。デジタルインクは、他の情報のなかでもとりわけ、ページにインクをどのように堆積させたかの順序（ほとんどの西洋言語に対しては左から右へ、次いで下へのラスタパターン）、タイムスタンプ（インクをいつ堆積させたかを示す）、インクの作成者の表示、および作成装置（インクが描画されたマシンの識別情報またはインクを堆積させるために使用されたペンの識別情報のうちの少なくとも１つ）を含む他の特性をさらに含んでもよい。
【００１４】
インク描写エンジンは、入力として接触点を捉え、インクセグメントを形成する「インク点」を生成することができる。インク描写エンジンは、オペレーティングシステムの一部、インクを受け取るアプリケーションの一部、またはスタンドアロンのアプリケーションであってもよい。インク点は、デジタルインクを描写するために使用され、このデジタルインクが、ユーザが見る表示された内容である。インク描写エンジンは、接触点を使用する様々な平滑化アルゴリズムおよび／またはフィルタを用いて、ユーザが紙に描いた外観に非常によく似た、複数のインク点を含むストロークを形成することができる。個々のインク点の位置は、個々の接触点の位置とは異なることができるが、接触点は、時にはインク点と一致することがある。
【００１５】
インク点を生成する前に、接触点は、フィルタされ、さもなければ処理され、インクを生成するために使用される後続のプロセスの性能を改善することができる。一態様において、接触点は、複数のフィルタされた接触点を生成するために処理される。本明細書で使用されるように、用語「接触点」は、フィルタされた接触点を含むことができる。したがって、接触点がインク生成プロセスまたは他の計算への入力として記載される場合、フィルタされた接触点または生の接触点を意味する場合がある。反対に、フィルタされた接触点は、生の接触点を含まない。
【００１６】
一態様において、セグメント発生器を使用して、一連の複数の接触点、またはことによると複数のフィルタされた接触点を使用して計算されたインク点を含むインクセグメントを形成する。インクセグメントは、インクの色および幅のような表示特性と共に、セグメントのインク点を使用して、ウェットインクとしてディスプレイ上に描写されることがある。インクセグメントは、開始インク点から終了インク点まで延びる。
【００１７】
ユーザによって作成されたインクコンテンツを描写することに関する困難さの１つは、ユーザの動作が結果としてインクコンテンツの表示となって見えるように、インクコンテンツを十分に素早く表示することである。インクコンテンツ作成のためのユーザ動作に対する応答において、わずか約５０ミリ秒以下の遅延をユーザは、知覚することができると判定された。ユーザによって作成されているインクコンテンツの表示の遅延が、終了インク点と書込み物体の先端部との間のギャップとして目に見える場合、コンテンツ作成は、書込み面上で物理的なペンを使用してインクを作成する感覚をもはや有さない場合があるため、この遅延は、ユーザ体験を混乱させる可能性がある。
【００１８】
本明細書に記載された技術の態様は、予測ウェットインクを生成することによってこの難題を克服する。予測ウェットインクは、アクティブなインクセグメントを、予測距離延在させることによって計算される。予測距離は、終了インク点と書込み物体の先端部との間の距離であることが意図されている。一態様において、予測距離は、タッチ装置上での現在のレイテンシー期間および書込み物体の速度を判定することによって計算される。その場合、予測距離は、書込み物体がその速度で現在のレイテンシー期間に移動する距離である。
【００１９】
書込み物体の速度は、最後の２つの接触点のタイムスタンプを使用して計算されてもよく、または、現在のインクストロークにおける点をすべて含むいくつかの接触点を使用して計算されてもよい。本明細書で使用されるように、インクストロークは、ペンダウン事象とペンアップ事象との間に生成されるデジタルインクである。ペンダウン事象は、最初の接触点が書込み物体によって生成されるときに発生する。ペンアップ事象は、タッチスクリーンと書込み物体との間の接触を検出しないことに相当する。一態様において、最近の接触点は、速度計算において先行する接触点よりも多くの重みを与えられる。
【００２０】
本明細書で使用されるように、「接触」は、文字通りの接触が生じていない近接を意味することができる。書込み物体が実際にタッチスクリーンに接触していない場合、一部のタッチ面は、スクリーンへの書込み物体の近接を感知することができる。そのような近接検出は、「接触」と考えられてもよく、ペンダウン事象および「接触点」を生成するために使用されてもよい。
【００２１】
一態様において、書込み物体の加速度も予測距離を判定するために使用される。加速度は、一連の接触点にわたって計算されることがある。
【００２２】
一部の態様において、本明細書に記載されるシステムおよび方法の恩恵は、インクコンテンツの表示に対する目に見えるレイテンシーを低減させるためにコンピュータの性能を改善することである。また、そのような改善は、インクコンテンツの作成中にユーザ体験の改善に結びつく可能性がある。
【００２３】
様々な態様において、本明細書に記載されるシステムおよび方法によって、ユーザが、入力装置、例えば、スタイラス、タッチ入力を受け取るためのタッチインターフェース、マウス、または表示エリア内部のカーソルの移動を制御することができる別の装置を使用して、インク入力を作成することが可能となる場合がある。
【００２４】
定義
以下の議論では、本明細書に記載された技術によるシステムおよび方法の例は、マイクロソフト（登録商標）の動作環境に基づいた動作環境を使用して、例示されることがあるが、態様は、この環境に限定されない。さらに、ある用語は、様々な態様を記載する際に参照をしやすくするために使用される。以下の明示的な定義は、様々な態様についての理解を助けるために提供される。
【００２５】
本明細書で利用されるように、「デジタルインク」は、特性を有するストロークのシーケンスまたは集合である。ストロークのシーケンスは、順序づけられた形態のストロークを含むことができる。シーケンスは、捕捉された時間によって、またはストロークがページ上に現れる場所によって、あるいはインクの作成者による協力状況において順序づけされることがある。他の順序が可能である。ストロークの集合は、ストロークのシーケンスまたは無秩序のストローク、あるいはそれらの任意の組合せを含んでもよい。さらに、一部の特性は、各ストロークまたはストロークの点に対して固有であってもよい（例えば、圧力、速度、角度など）。これらの特性は、インクのレベルではなく、ストロークまたは点のレベルで記憶されることがある。
【００２６】
本明細書で利用されるように、「点」は、空間における位置を規定する情報である。例えば、点は、捕捉空間（例えば、デジタイザ上の点）、仮想インク空間（捕捉されたインクが配置される空間の座標）、および／または表示空間（ディスプレイ装置の点またはピクセル）に対して規定されてもよい。
【００２７】
本明細書で利用されるように、「ストローク」は、捕捉された点のシーケンスまたは集合である。例えば、描写されるとき、点のシーケンスは、線で接続されてもよい。あるいは、ストロークは、ある点と次の点の方向を向くベクトルとして表されてもよい。要するに、ストロークは、点および／または点を接続したものの背後にある表現に関係なく、インクに関連する点またはセグメントのあらゆる表現を包含することが意図されている。
【００２８】
本明細書で利用されるように、「筆記具」は、デジタルインクに対応するストロークを提供するための装置である。例えば、筆記具は、ペン、指、スタイラス、およびデジタルインク対応面によって感知することができる先のとがった物体を含むことができる。
【００２９】
ウェットインク：インクストロークが進行中に、すなわち接触（例えば、ペン）が表面からまだ持ち上げられていない間に、描写されるインク。様々な態様において、ウェットインク上の一部は、予測インクを含むことができる。
【００３０】
ドライインク：インクストロークが完了した後に、描写されたまたは再描写されたインク、あるいは入力以外のソース（残存するインクコンテンツ）からロードされたインクデータから描写されたインク。
【００３１】
予測インク：ユーザがインクストロークを続けようと意図している場所の予測に基づいて描写されるインク。予測インクストロークは、ウェットインクストロークの最後の描写されたピクセルに対応する開始点から終了点まで延びることができる。ウェットインクストロークの最後の描写されたピクセルは、タッチスクリーン上のユーザ入力に基づいて判定される。最後の点は、ストロークが完了するまで、新しいウェットインクがストロークに追加されるとともに絶えず変化する。
【００３２】
半ドライインク：ドライインク層に同期中の中間層のインク。
【００３３】
予測インクプロセスフロー
ここで、図１を参照すると、本明細書に記載された技術の態様による、予測インクを生成するためのプロセスフロー１００が示されている。プロセスフロー１００は、スマートフォン、タブレット、ラップトップ、または知覚画素ディスプレイなどのタッチセンシティブ装置上で動作するインクエンジンによって行うことができる。インクエンジンは、装置のオペレーティングシステムと一体化されてもよく、スタンドアロンのアプリケーションであってもよく、描画もしくは筆記アプリケーションなどの手書き入力を受け取るアプリケーションと一体化されてもよい。工程１０２で、点情報が受け取られる。点情報は、スタイラス、アクティブペン、または指などの筆記具が接触したタッチスクリーン面上の特定の接触点を指定することができる。接触点は、フィルタされた接触点を指すこともある。
【００３４】
判定ポイント１０４で、点情報は、点が新しいインクストロークの開始を表すかどうかを判定するために評価される。新しいインクストロークの開始は、ペンダウン事象に相当してもよい。ペンダウン事象は、筆記具がタッチスクリーンに接触するときに生じることがある。ペンダウン事象の直後に受け取られた点は、ストロークの最初の点である可能性がある。ペンアップ事象が生じる前ではなく、ペンダウン事象の後に受け取られた点は、同一のストロークの一部と考えられてもよい。ペンアップ事象は、筆記具のタッチスクリーンとの接触が途絶える、またはしきい値期間よりも長い期間途絶える場合に生じる。言い換えると、ペンアップ事象は、タッチ面がペンのタッチ面との接触を検出するのを停止する、またはしきい値時間よりも長い期間ペンの検出を停止する場合に生じる。
【００３５】
工程１０２で受け取られた点が新しいストロークの開始である場合、工程１０６で、フィッタが初期化される。フィッタの初期化は、新しいストロークの処理に備えて新しいフィッタプロセスの初期化または進行中プロセスからのデータの消去を含んでもよい。フィッタは、後でより詳細に記載されるが、要するに、フィッタは、ストローク内部の点を辿るウェットインクを生成する。異なるタイプのフィッタが使用されてもよい。１つのタイプのフィッタは、ドットを接続するように、点を接続することができる。第２のタイプのフィッタは、接触点を追跡するが、ストロークに関連付けられたすべての所与の接触点と交差することも、交差しないこともある比較的滑らかな線の描画を試みることができる。第２のタイプのフィッタは、インクストロークを共に形成する一連の湾曲したセグメントを生成することができる。
【００３６】
フィッタ状態が初期化された後、点が返される。点を返すことによって、点は、ストロークと関連付けられ、さらなる点が受け取られるとともに、後続の処理のために保存されてもよい。例えば、他の点と共にその点は、ウェットインクのセグメントを生成するために処理されてもよい。
【００３７】
判定ポイント１０４で判定されるように、点がストロークの開始点でない場合、工程１１０でフィッタが実行される。言及したように、フィッタは、ストロークの一部として受け取られた点を、各点を辿るウェットインクのセグメントを描写するために使用することができる入出力データとしてとらえる。
【００３８】
判定ポイント１１２で、新しい点がフィッタ内部のアクティブなセグメント内部でよく一致しているかどうかが判定される。一態様において、フィッタは、セグメントのシーケンスを生成する。セグメントは、直線または曲線の形態をとることがある。ある点では、新しい点は、既存のセグメントに厳密には一致しない場合がある。例えば、ユーザが自身の筆跡の方向を急に調整または変更する場合、調整後に受け取られた最初の点は、以前の点と一致しない場合がある。一致がよくないことが検出されると、フィッタ状態は、工程１１４で更新され、新しいセグメントを生成する準備を行い、既存のセグメントは、工程１１６で終結する。異なるセグメントが同一のストロークの一部であってもよい。言及したように、ストロークは、ペンダウンおよびその後のペンアップ事象によって規定することができる。
【００３９】
判定ポイント１１２で、新しい点がよく一致している場合、判定ポイント１１８で、ストローク内部に、生成された複数のセグメントがあるかどうかが判定される。さらなるセグメントが存在する場合、工程１２０で、新しい点を使用してセグメント間の関係を更新することができる。更新は、工程１２０でＣ１連続性アルゴリズムを実行することによって達成されてもよい。判定ポイント１１８で１つのセグメントのみが存在する場合、または以前のセグメントの連続性が工程１２０で更新された後、予測インクが工程１２２で計算される。言及したように、予測インクは、実際のウェットインクが終了した場所の端部に表示される。実際のウェットインクが生成されるとともに、予測インクが置き換えられるが、新しい予測インクが、ペンアップ事象においてストロークが終了するまで連続的に生成されてもよい。
【００４０】
予測インクは、ディスプレイ上に描写される実際のウェットインクが終了するところと、タッチスクリーン上の書込み物体の先端部との間のギャップを埋めようと試みる。一態様において、ウェットインクの端部と書込み物体の先端との間の距離は、システム内部のレイテンシーを判定することによって初めに判定される。レイテンシーは、生の点データを生成する、タッチスクリーンに関連付けられたハードウェア処理パイプライン、ならびに、ウェットインクを生成するために生の点データを処理する描写パイプラインの遅延によって引き起こされることがある。言い換えれば、筆記具は、ウェットインクを生成することができる速さよりも速くタッチスクリーンを横切って移動することができる。
【００４１】
予測インクの例
ここで、図２を参照すると、レイテンシーによって引き起こされたウェットインクのギャップが示されている。図２は、インクストローク２０５が進行しているタッチスクリーンディスプレイ２００を示す。インクストローク２０５は、タッチスクリーンディスプレイを横切って筆記具２１２を移動させるユーザの手２１０によって生成される。見て分かるように、インクストローク２０５のウェットインクは、終了インク点２０６で終了する。装置およびインク処理エンジン内部のレイテンシーは、インクの進行が書込み物体の先端部２１３よりも遅れる原因となる。この遅れによって、ウェットインク終了点２０６と筆記具２１２の先端部２１３との間にギャップ２１４が生じる。本明細書に記載された技術の態様において、予測インク（図２には示さず）は、ウェットインク終了点２０６と書込み物体の先端部２１３との間のギャップ２１４にまたがるように生成される。
【００４２】
ここで、図３を参照すると、予測インクの不正確な生成が示されている。タッチスクリーン３００は、タッチスクリーン３００を横切って筆記具３１２の先端部３１３を走らせるユーザ３１０によって生成されたアクティブなストローク３０５を示す。ウェットインクは、インク終了点３０６で終了する。この場合、予測ウェットインク３１５（破線）が実際のウェットインク（実線）の端部に追加されている。長さ３１４は、予測ウェットインク３１５がウェットインクのインク終了点３０６と筆記具３１２の先端部３１３との間の距離を相当量３０７超える原因となる。本明細書に記載された技術の態様は、ウェットインクのインク終了点３０６と筆記具３１２の先端部３１３との間の距離を正確に予測することによって、ウェットインクの過度の超過を生成しないようにする。
【００４３】
ここで、図４を参照すると、本明細書に記載された技術の態様による、正確にサイズが調整された予測インクが示されている。タッチスクリーン４００は、タッチスクリーン４００を横切って筆記具４１２の先端部４１３を走らせるユーザ４１０によって生成されたアクティブなインクストローク４０５を示す。ウェットインクを含むアクティブなストロークは、インク終了点４０６で終了する。予測インクは、インク終了点４０６から始まって、点４０７まで延び、この点４０７がタッチスクリーン上で先端部４１３に対応する。ウェットインクのインク終了点４０６と筆記具の先端部との間の差に相当する長さ４１４を有する予測インクを、本明細書に記載された技術の態様により生成することができる。より詳細に説明されるように、本明細書に記載された技術の態様は、筆記具の前に飛び出す予測インク、または描写されたインクと書込み物体の先端部４１３との間にギャップを露出させる、筆記具よりも遅れる予測インクを生成しないようにしようとする。
【００４４】
図５は、例示的な接触点、ウェットインク点、ウェットインク、および予測インクを示す。接触点は、第１の接触点５０２、第２の接触点５０４、第３の接触点５０６、最後から２番目の接触点５０８、および終了接触点５１０を含む。ウェットインク５３０は、第１の接触点５０２、第１のウェットインク点５２０、第２のウェットインク点５２２、第３のウェットインク点５２４、および終了接触点５１０を通って描画されている。態様において、ウェットインク点は、ベジェ近似を使用して計算することができる。第２の接触点５０４、第３の接触点５０６、および最後から２番目の接触点５０８は、ベジェ近似における制約条件として働くことができる。ウェットインク５４０は、表面を横切る書込み物体の速度および任意選択により加速度を使用して、ベジェ近似を再パラメータ化することによって計算することができる。ウェットインク５３０は、インクセグメントの一部を形成することができる。
【００４５】
予備フィルタリング
言及したように、本明細書に記載された技術の態様は、接触点をフィルタしてフィルタされた接触点の集合を生成することができる。接触点が多くのノイズを有する、またはあまりよい品質でないシナリオでは、フィッティングアルゴリズムの出力は、１セグメント当たりフィッティングされる点が少ないために「滑らか」に見えないことがある。一態様において、入力点は、フィッティングされる曲線からせいぜい１０ヒメトリック単位しか離れていないため、ジッタの多いデータは、この限度をしばしば超えることが多い。結果として得られるベジェ曲線は、それでも入力点と一致するが、誤差がハードウェアによってもたらされるため、ユーザが意図したものに見えない可能性が最も高い。フィッティング誤差公差を増加させてジッタの影響を弱めることができるが、これは、インキング中にインク形状が目に見えて変化するという望ましくない影響を生成する。フィッティング誤差公差を増加させる代わりに、この問題を軽減する１つの仕方は、フィッティングアルゴリズムを実行する前に各点をフィルタに通すことによって、入力点を前処理することである。フィルタリング入力の短所は、レイテンシーの増加である。フィルタリングによって引き起こされるレイテンシーは、予測インクの長さを判定するために使用されるレイテンシーに含まれることがある。
【００４６】
いくつかの異なるフィルタリング方法が可能である。ノイズをフィルタする第１の方法は、入力点の移動平均をとることである。一例は、各入力点が以前のおよび後続の点を用いて平均される３点平均である。具体的には、入力点｛p0、...、pn-1｝が与えられると、結果として生じる点
【００４７】
【数１】
2017529623.tif 000003
は、
【００４８】
【数２】
2017529623.tif 000004
となる。
【００４９】
点は、次の点がわかるまで計算することができず、それによって、次の入力点を受け取るのにかかる時間だけレイテンシーが増加することに留意されたい。これは、平均値により多くの点を含むように拡張することができる。例えば、５点平均は、５つの連続した点の平均をとる。
【００５０】
ＥＡｎ無限インパルス応答（IIR）フィルタは、本明細書に記載された技術の態様と共に使用することができる第２のフィルタである。ＩＩＲは、結果として生じる値が以前の値すべてに依存する移動平均に似ている。指数ＩＩＲフィルタによって、以前の点の重みは、指数関数的に減少する。現在の平滑化された点
【００５１】
【数３】
2017529623.tif 000005
は、現在の入力点ｐおよび以前の平滑化された点
【００５２】
【数４】
2017529623.tif 000006
の加重平均をとることによって計算され、
【００５３】
【数５】
2017529623.tif 000007
となる。
【００５４】
αは、現在の入力点および以前の平滑化された点の重みを決定するパラメータである。
【００５５】
指数フィルタの適用は、フィルタされた点が曲線の内側に向かう傾向がある移動平均と同様の影響を有することに注目されたい。また、より大きな重みが以前の点にかけられる（すなわち、αがより小さい）場合、結果として生じる点は、実際の入力点よりもさらに遅れる。また、結果として生じるストロークの終了点は、目に見えて最後の実際の入力点よりも遅れる。これは、最後の入力点が、結果として生じるストロークの最後の点であると規定される移動平均とは異なる。
【００５６】
現在の速度または他の要因に基づいてαを変えることが可能であることに留意されたい。例えば、αは、平滑化された点が大幅に遅れずに、かつレイテンシーがそれほど感知されないように、より速い速度に対してはより大きくすることができる。速度計算には入力点のタイムスタンプを知る必要があることに留意されたい。したがって、生の接触点を使用して速度を判定してもよい。別の態様において、フィルタされた接触点は、対応する生の接触点と同一のタイムスタンプ情報を含む。
【００５７】
インクフィッタ
言及したように、図１を参照して言及したフィッタなどのフィッタは、入力として接触点を受け取り、ウェットインクおよびドライインクの両方を形成するために使用されるインク点を生成する。一態様において、三次ベジェフィッタは、三次ベジェセグメントを生成する。フィッティングアルゴリズムは、三次ベジェセグメントの集合によってインク点のストロークを近似する。ベジェセグメントは、ベジェアルゴリズムを使用して生成された曲線である。ベジェセグメントの一方の端部は、接触点上にある。端部点間の接触点は、ベジェアルゴリズムのための制御点となることができる。接触点は、ベジェアルゴリズムによって生成された曲線上になくてもよい。アルゴリズムがある時点で１つの接触点に与えられると、新しい点それぞれに対して、アルゴリズムは、アクティブなベジェセグメントを更新し、またはその点をアクティブなセグメントと十分によく一致させることができない場合は、新しいセグメントを開始する。一致は、セグメント化ロジックを使用して評価することができる。
【００５８】
三次ベジェフィッタは、アクティブな点の集合を維持する。新しい点が受け取られるごとに、その点は、その集合に追加され、フィッタは、新しい三次ベジェ近似を計算する。三次ベジェ近似は、他の点と一致しない点を受け取り、それによってアクティブなセグメントを終結させ、新しいセグメントを開始するまで更新し続ける。単一のストロークは、複数のセグメントを含むことができる。各セグメントは、接続され、第１のセグメントの終点は、次のセグメントの始点である。言い換えれば、隣接するセグメントは、接触点を共有する。したがって、ストロークの始点は、セグメント化ロジックによってリセットされることがあるため、アクティブな集合は、必ずしもすべての点を含んでいるとは限らない。三次ベジェセグメントＢ（ｔ）は、その４つの制御点Ｃ０、Ｃ１、Ｃ２、Ｃ３によって規定される。すなわち、
Ｂ（ｔ）＝（１−ｔ）３Ｃ０＋３（１−ｔ）２ｔＣ１＋３（１−ｔ）ｔ２Ｃ２＋ｔ３Ｃ３、ｔ∈［０，１］
【００５９】
任意の所与の時点で、アルゴリズムは、アクティブな点の集合Ｓ＿ｋ＝｛p_0、p_l、...、p_(k-1)｝を、１つの単一ベジェセグメントＢ（ｔ）とフィッティングさせる。フィッティング作業は、最小化問題として定式化される。すなわち、
Ｄ＊（ｔ）＝ａｒｇｍｉｎＢＥ
【００６０】
ここでＥは、以下でより完全に記載されるある誤差関数である。
【００６１】
Ｐ（ｔ）、ｔ∈［０、１］が記述される暗黙のポリラインであり、集合がＳｋとする。その場合、
Ｐ（０）＝ｐ０
Ｐ（１）＝ｐｋ−１
【００６２】
ポリライン上の点とベジェとの間の距離を計算することは、費用がかかるため、様々な態様において、同一のパラメータ値ｔでポリラインおよびベジェをサンプリングすることによって得られる２点間の距離の近似値を求める。すなわち、
【００６３】
【数６】
2017529623.tif 000008
【００６４】
その場合、最小化が望まれる誤差関数は、次のように規定することができる。すなわち、
【００６５】
【数７】
2017529623.tif 000009
【００６６】
Ｎ＝ｋおよびｔｉは、Ｐ（ｔｉ）＝ｐｉ、ｉ＝０、１、．．．、ｋ−１となるように選択されてもよく、それにより誤差関数は、Ｓｋ内のすべての点かつそれらの点のみを評価する。しかしながら、三次近似が用いられているため、サンプルは、少なくとも４つの点を含む。
【００６７】
最小化問題の変数は、Ｂの制御点である。Ｃ＝［C0、C1、C2、C3］を制御点のベクトルとする。勾配降下手法を使用して、最適値を見出す。すなわち、
【００６８】
【数８】
2017529623.tif 000010
【００６９】
更新ルールのパラメータαは、収束率を制御する。一般に、値が大きいほど必要とされる反復は、少なくなるが、同時に、αが大きい場合、計算は、不安定になる可能性がある。利用することができる１つの例示的なパラメータαは、次のとおりである。すなわち、
【００７０】
【数９】
2017529623.tif 000011
【００７１】
さらに、フィッティング誤差に全く改善をもたらさなかった反復の数でαを割ることによって発散のリスクを軽減することができる。
【００７２】
【数１０】
2017529623.tif 000012
は、Ｂの制御点に対する近似誤差のグラジエントであり、以下のように計算することができる。すなわち、
【００７３】
【数１１】
2017529623.tif 000013
【００７４】
更新ルールには、三次ベジェ近似の４つの制御点に対応する４つの自由度があることに留意されたい。しかしながら、次節に記載されるセグメント化コンポーネント２３０は、スプラインに所望の解析特性（例えば、連続性）を付与するためにこれらの自由度のうちの一部を使用する。
【００７５】
セグメント化
セグメント化ロジックは、２つの基本タスクを達成する。第１に、セグメント化ロジックは、新しいベジェ近似を開始するべきか、現在の近似を更新するべきかどうかを判定する。第２に、セグメント化ロジックは、新しい近似または曲線を開始するときは常に、三次ベジェフィッタを再構成することによって、スプラインに対して解析特性（最も注目すべきはＣ０またはＣ１連続性）を実施する。本明細書で利用されるように、また、当業者によって理解されるように、「連続性」は、隣接するベジェ曲線が接続する接合部での相対的な平滑度を指す。「Ｃ０連続性」は、隣接するベジェ曲線が同一の端部点を共有する状況を指す。「Ｃ１連続性」は、隣接するベジェ曲線が同一の端部点および同一の微分係数の両方を共有する状況を指す。
【００７６】
新しいベジェ近似を開始するべきか、現在の近似を更新するべきかという判定は、フィッティングの品質に基づく。より具体的には、新しいベジェ近似を開始するべきか、現在の近似を更新するべきかという判定は、受け取ったデジタル化されたインク点と、三次ベジェフィッタによって計算された最良近似との間の最大距離に基づく。態様において、カットオフしきい値は、１０ヒメトリック単位（０．１ｍｍ）であってもよく、このしきい値を超える点では、ユーザビリティ研究のユーザは、新しい点が到来するとともに（新しい点に延在する以外は）、インクの変化が目に見てわかることを示した。しかしながら、しきい値は、描写されているときのインクの物理的サイズと相関があることに留意されたい。例えば、ウェットインク（すなわち、入力器具が受取り面から解放される前に、ストローク動作中に描写されるインク）が１０倍の倍率で描写されている場合は、しきい値は、おそらく１０倍小さい必要があり、さもなければ、ユーザは、インクの変化に気づく。もちろん、ドライインク（すなわち、入力器具が受取り面から解放されたときの受取り面上のインク）は、変化しない（すなわち、セグメント化は既に行われている）ため、この点は、ウェットインクに対してのみ意味がある。しきい値は、以前のインク点の任意の量、そのようなインク点の任意の特徴（例えば、座標、圧力、傾斜、ねじれなど）の関数であってもよく、および／または装置依存性（例えば、DPI、利用可能なメモリ、CPU、GPUなど）があってもよいことにさらに留意されたい。あらゆる、そのような変形形態、およびそれらの任意の組合せは、本明細書に記載された技術の範囲内であると考えられる。
【００７７】
セグメント化ロジックによって達成される他の重要なタスクは、スプラインに対して所望の解析特性を付与することである。少なくとも、スプラインは、接続されていなければならず（C0連続性）、このことは、各ベジェ曲線またはセグメントの第１の制御点が以前の曲線またはセグメントの最後の制御点と一致していなければならず、それによって１つの自由度を失うことを意味する。すなわち、
Ｃ０連続性：Ｃｓ−１、３＝Ｃｓ、０
【００７８】
Ｃ０連続性は、スプラインが接続されていることを保証するが、滑らかなインクを生成するのには十分ではない。本明細書に記載された技術の態様によると、好ましくないアーチファクトは、Ｃ１連続性を付与することによって除去することができる。パラメトリックＣ１連続性は、ｔ＝０でのセグメントの微分係数がｔ＝１での以前のセグメントの微分係数と一致することを必要とする。すなわち、
Ｂ’ｓ（０）＝Ｂ’ｓ−１（１）⇒Ｃｓ、１−Ｃｓ、０＝Ｃｓ−１、３−Ｃｓ−１、２
【００７９】
しかしながら、良好なフィッティングの生成に対する自由をほとんど残さないパラメトリックＣ１連続性が付与される場合、別の自由度が失われる。幸運にも、スプラインが滑らかに見えるために必要なのは、（パラメトリックとは対照的に）幾何学的Ｃ１連続性だけであり、この幾何学的Ｃ１連続性は、制約が少なく、第２の制御点の方向のみを制約すればよい。すなわち、
幾何学的Ｃ１連続性：Ｃｓ、１−Ｃｓ、０＝β（Ｃｓ−１、３−Ｃｓ−１、２）、β＞０
【００８０】
本明細書の実施形態によると、幾何学的Ｃ１連続性は、更新ルールが適用された後に、必要な方向に第２の制御点を投影することによって付与されてもよい。
【００８１】
予測インク計算
ここで、図６を参照すると、本明細書に記載された技術の態様による、ディスプレイ装置上に予測ウェットインクコンテンツを描写する方法６００を示す流れ図が提供されている。工程６１０で、タッチスクリーンの表面を横切る書込み物体によって作られた経路上の複数の接触点が受け取られる。
【００８２】
工程６２０で、入力として複数の接触点を使用してアクティブな三次ベジェ近似が計算される。アクティブなベジェ近似は、開始接触点および終了接触点を有する。ベジェ近似の生成については上記された。
【００８３】
工程６３０で、書込み物体がある位置でタッチスクリーンに接触してから、その位置に対応する点を考慮に入れたウェットインクをタッチスクリーンディスプレイ上に表示するまでレイテンシー期間が判定される。一態様において、レイテンシー期間は、２０ｍｓ以上、例えば３０ｍｓ以上、または例えば４０ｍｓ以上、または例えば５０ｍｓ以上、または例えば６０ｍｓ以上、または例えば８０ｍｓ以上、または例えば１００ｍｓ以上であると判定される。一態様において、レイテンシーは、レイテンシーを計算する関数を呼び出すことによって判定される。この関数は、オペレーティングシステムＡＰＩまたは他のメカニズムによって呼び出されてもよい。レイテンシーは、代わりに描画時間として記載されてもよい（すなわち、描画される点がスクリーン上に現れるのにかかる時間）。
【００８４】
工程６４０で、タッチスクリーンを横切る書込み物体の速度が判定される。速度は、ウェットインクの一部である接触点間の距離およびそれらの点間の距離を使用して判定されてもよい。任意選択により、加速度も判定することができる。一態様において、速度は、ウェットインクに対して最後に受け取った２つの接触点に対して計算される。別の態様において、アクティブなストロークにおける接触点はすべて考慮され、より最近の点により多くの重みが与えられる。加速度も、最後の３つ以上の点に対して、またはより多くの重みが与えられるより最近の点を有するさらなる点を使用して計算することができる。
【００８５】
工程６５０で、書込み物体がその速度でレイテンシー期間に移動する予測距離が判定される。この計算については以下でより詳細に記載される。
【００８６】
工程６６０で、終了点から予測距離延在する新しい三次ベジェ近似が計算される。
【００８７】
工程６７０で、アクティブなベジェ近似に基づいた実際のウェットインクが、新しい三次ベジェ近似に基づいた予測ウェットインクと共に描写される。
【００８８】
ここで、図７を参照すると、本明細書に記載された技術の態様による、接触点に圧力データを割り当てるための方法７００が提供されている。工程７１０で、複数の接触点がタッチスクリーン装置で受け取られる。接触点は、タッチスクリーン装置と一体化されたタッチスクリーン面を横切る書込み物体によって作られた経路上にある。
【００８９】
工程７２０で、複数のフィルタされた接触点が生成される。一態様において、フィルタされた点は、複数の接触点に対してＥＡｎ無限インパルス応答型フィルタを実行することによって生成される。他のフィルタリング方法が可能である。
【００９０】
工程７３０で、入力として複数のフィルタされた接触点を使用してアクティブな三次ベジェ近似が計算される。開始接触点および終了接触点を有するアクティブな三次ベジェ近似。
【００９１】
工程７４０で、タッチスクリーン装置に対するウェットインクレイテンシー期間が判定される。工程７５０で、タッチスクリーンを横切る書込み物体の速度が判定される。
【００９２】
工程７６０で、書込み物体がその速度でウェットインクレイテンシー期間に移動する予測距離が判定される。予測距離を計算する場合、加速度も考慮することができる。
【００９３】
工程７７０で、終了点から予測距離延在する新しい三次ベジェ近似が計算される。前述したように新しい三次ベジェ近似を計算することができる。
【００９４】
工程７８０で、アクティブなベジェ近似に基づいたウェットインクが、新しい三次ベジェ近似に基づいた予測ウェットインクと共に描写される。予測ウェットインクは、ウェットインクの終了点から延在することができる。さらなるウェットインクが描写されるとともに、さらなるウェットインクは、予測ウェットインクに取って代わることができる。
【００９５】
ここで、方法６００および７００の様々な態様について以下でより詳細に記載する。
【００９６】
予測インクを生成するために、現在のベジェセグメントを延在させるべき量が計算される。
【００９７】
【数１２】
2017529623.tif 000014
を現在のストロークの接触点の（フィルタされた）位置（時間順に）とすると、
【００９８】
【数１３】
2017529623.tif 000015
が、各点の対応する（フィルタされた）タイムスタンプであり、Ｔは、予測するための特定の先行時間である。一態様において、先行時間Ｔ＝ウェットインクレイテンシーである。ウェットインクレイテンシーは、書込み物体がタッチスクリーン上の点に接触してから、この接触点を使用して生成されるウェットインクが表示されるまでの時間量である。
【００９９】
一旦ウェットインクレイテンシーが判定されると、筆記具の速度を計算して、予測インクが実際のウェットインクの端部から延在すべき距離を判定することができる。一態様において、筆記具の加速度が予測インクの距離を計算するために筆記具の速度と共に考慮される。次いで、予測インクは、再パラメータ化によってセグメントを延在させることによって生成される。
【０１００】
前述したように、ノイズおよびジッタを除去するためにフィルタによって接触点データを前処理することができることに留意されたい。また、タイムスタンプのフィルタリングによって、以降の計算中にゼロによる割り算の原因となる二重タイムスタンプの問題を回避する。現在のベジェセグメントによってフィッティングされる少なくとも３つの入力点がある場合、延在するベジェセグメントの長さは、点ｎ−１と点ｎ−２間の速度ｖ０、および点ｎ−２と点ｎ−３間の速度ｖ１を計算することによって以下のように計算される。すなわち、
【０１０１】
【数１４】
2017529623.tif 000016
【０１０２】
αは、書込み物体の加速度である。α＜０の場合は、予測される速度が負となる可能性があるため、
【０１０３】
【数１５】
2017529623.tif 000017
と設定する。
【０１０４】
現在のセグメントの弧長を計算した後、Ｔに対応する延在させる量である、
【０１０５】
【数１６】
2017529623.tif 000018
を弧長に加えたものに相当するセグメントがパラメータｔを使用して再パラメータ化される。基本的な考え方は、最後のベジェセグメントＢ（ｔ）を、ｔにおけるサンプリングＢ（ｔ）を意味するベジェセグメントの将来に延在させることによって予測を行うことである。
【０１０６】
圧力シミュレーション
加えて、本明細書に記載された技術の態様は、生の圧力データが存在しない場所の圧力データをインク描写エンジンに対して生成することができる。生の圧力データは、感圧性タッチ面、アクティブペンなどによって生成されることがある。しかしながら、ユーザが書き込む多くの装置は、感圧性ではない。本明細書に記載された技術の態様は、圧力の代わりに書込み物体の速度を使用して、インク描写エンジンに供給することができる圧力データを生成することができる。圧力データは、インク幅および／または他のインクパラメータを設定するためにインク描写エンジンによって使用されることがある。
【０１０７】
本明細書に記載された技術の態様において、ペン速度がペン圧力の代わりに使用され、すなわち、結果として生じるインクの太さを設定するために使用される。本明細書で使用されるように、インクの太さは、インクの断面の幅を指し、断面は、インクストロークにほぼ垂直にとられる。図８は、異なる区間で異なる太さを有するインク８００を示す。インクは、インク点８２０、インク点８２２、インク点８２４、およびインク点８２８を通過する。一態様において、異なるインク点は、異なる圧力値に関連付けられている。圧力が高いほど、第１の断面８０２のようにより太いインクを作成することができる。圧力が低いほど、第２の断面８０４のようにより細い線を作成することができる。
【０１０８】
一般に、より高い速度は、軽い圧力の代わりとして働き、その結果としてより太いインクとなる。また、より低い速度は、高い圧力の代わりとして働き、その結果としてより細いインクとなる。
【０１０９】
ここで、図９を参照すると、本明細書に記載された技術の態様による、接触点に圧力データを割り当てるための方法９００が提供されている。
【０１１０】
工程９１０で、圧力情報に関連付けられていない第１の接触点をタッチスクリーンから受け取る。第１の接触点は、タッチスクリーンの表面を横切る書込み物体によって作られた経路上の複数の接触点のうちの１つである。
【０１１１】
工程９２０で、複数の接触点内部の第２の接触点との間で書込み物体の速度が判定される。
【０１１２】
工程９２０で、速度に対応する圧力が判定される。
【０１１３】
工程９３０で、圧力が第１の接触点に関連付けられ、更新された第１の接触点を生成する。
【０１１４】
工程９４０で、更新された第１の接触点を使用してデジタルインクを描写する。第１の接触点は、デジタルインクを描写するインク描写エンジンに伝達することができる。
【０１１５】
ここで、方法９００の詳細が提供される。インクを作成するために使用される装置（複数可）が入力圧力を効果的に処理することができない場合、本明細書に記載された技術の態様は、圧力の代わりに速度を使用することができる。しきい値工程として、本明細書に記載された技術の態様は、装置が接触点に関連する、または異なるチャネルによる圧力データを提供していないことを判定することができる。一部の装置は、圧力データを接触点に関連付けることができない。この場合、圧力が検出不能であるのは、ハードウェア、ハードウェア上のソフトウェア、または組合せが原因である場合がある。
【０１１６】
ポインター情報において捕捉されたペン先端部圧力を使用することによって自然で美しいインクを得るためにアクティブペン技術を活用する努力がなされた。ペン先端部圧力は、インクストロークの幅と関連付けることができ、したがって、インクストロークの幅は、圧力が高い場合はより太く、圧力が低い場合は、より細くなる。これは、書き手が紙の上に物理的なインキングを行うことによって生成するもののそのままの類似物である。しかしながら、このモデルは、タッチインキングまたはパッシブペン（スタイラス）インキングには直接的に当てはまらず、その理由は、ハードウェアから提供される圧力情報がないためである。圧力データが存在しない場合、インクストロークは、ユーザの字体にかかわらず常に同一の幅を有し、全く単調に見える。
【０１１７】
タッチインク品質を、アクティブペンによって生成することができるものと同等となるように改善するために、本明細書に記載された技術の態様は、インキング中の書込み物体の移動速度によってペン先端部圧力をシミュレートするアルゴリズムを使用する。基本的な前提は、遅い、持続的な書込みがより太いストロークを作成し、速い、迅速なインキングがより細いストロークを作成するということである。本明細書に記載された技術の態様は、速度変化によってユーザの意図を捕捉し、その意図をストロークの外観に反映する。
【０１１８】
速度は、２つの連続したインク点間の距離（DPIを単位とする）をサンプリング時間（例えば、６０ｈｚデジタイザ上で１６ｍｓ）で割ることによって計算されてもよい。その場合、速度を圧力にマッピングするためにシミュレーション関数が必要であり、したがって、シミュレーション関数を、ストローク幅がアクティブペンに対して導出される同様の計算において使用することができる。１つの方法は、ＸＹ座標において速度のベクトルを得ることである。次いで、ベクトルの絶対値の対数が計算され、圧力にマッピングされる。
【０１１９】
【数１７】
2017529623.tif 000019
【０１２０】
次いで、この圧力Ｐを速度ベクトルに関連付けられた接触点（複数可）に関連付けることができる。同一の速度を仮定すると、異なるインキング体験に対してより太いストロークを得るために、対数は、ｌｏｇ５またはｌｏｇ１０などのより大きな底で置き換えられてもよいことに留意されたい。
【０１２１】
デジタルインク環境
図１０は、本明細書に記載された技術の態様を実践するのに適した例示的なデジタルインク環境１０００を示す。デジタルインク環境１０００は、タブレット、ＰＣ、ラップトップ、スマートフォン、または後に記載される計算装置１１００などの他の計算装置上に存在してもよい。デジタルインク環境１０００は、マイクロソフト（登録商標）の動作環境に基づき、その環境の術語を使用する。本明細書に記載された技術の態様は、この環境に限定されない。
【０１２２】
図１０は、この環境の異なる態様において生成することができるレイテンシーを示す。例えば、ハードウェアエコシステム１００６は、入力を処理する（例えば、接触点データを生成する）ために１５ｍｓ、およびインクを描写するために２４ｍｓを生成することができる。低レベル入力およびグラフィックス層１００５は、さらに１ｍｓを追加することができる。入力およびコンポジター層１００４は、２４ｍｓを生成することができる。これらの数字は、装置により変わる場合があり、ここでは例として単に提供されている。図示されない、インク描写プロセスの他の態様がレイテンシーを生成することができる。これらの数字を仮定すると、レイテンシーの合計は、６４ｍｓになる。本明細書に記載された技術の態様において、予測器コンポーネント１０２０は、所与の速度およびベジェ近似を使用して、将来に向けて予測ウェットインクを６４ｍｓで描画することができる。
【０１２３】
デジタルインク環境１０００の他の層は、アプリケーションおよびシェル層１００１、ＵＩフレームワーク層１００２、ならびにＤｉｒｅｃｔＩｎｋ層１００３を含む。アプリケーションおよびシェル層１００１は、シェルサブコンポーネント１０１０およびダイレクトインクアプリケーション１０１２を含む。所与の装置にインストールされたダイレクトインクアプリケーションは、変わる場合がある。ＵＩフレームワーク層１００２は、ＵＩ  Ｆｒａｍｅｗｏｒｋサブコンポーネント１０１４、Ｉｎｋアプリケーションプログラムインターフェース（API）１０１６、およびＤｉｒｅｃｔＸ  ＡＰＩ１０１８を含む。ダイレクトインク層１００３は、ダイレクトマニピュレーションサブコンポーネント１０２２、およびＤｉｒｅｃｔＩｎｋサブコンポーネント１０１９を含む。ＩｎｐｕｔおよびＣｏｍｐｏｓｉｔｏｒ層は、入力サブコンポーネント１０２４、およびコンポジターサブコンポーネント１０２６を含む。低レベル入力およびグラフィックス層は、低レベル入力サブコンポーネント１０２８およびグラフィックスサブコンポーネント１０３０を含む。ハードウェアエコシステム１００６は、タッチ機能性と関連する様々なハードウェアドライバを含むハードウェアサブコンポーネント１０３２を含むことができる。
【０１２４】
コンピューティング環境
図１１は、本明細書に記載された技術の実施形態を実施するのに適した例示的なコンピューティング環境を示すブロック図である。全体的に各図を、初めに特に図１１を、さらに計算装置１１００を参照すると、計算装置１１００は、計算装置１１００によって描写されたデジタルインクを選択するように構成されている。計算装置１１００は、適切なコンピューティング環境の一例に過ぎず、本明細書に記載された技術の実施形態の使用法および機能性の範囲に関していかなる限定も示唆することは意図されていない。また、計算装置１１００は、図示される、任意の１つのコンポーネントまたはコンポーネントの組合せに関連する依存性もしくは要求を有するとして解釈されるべきでない。
【０１２５】
本明細書に記載された技術の実施形態は、コンピュータ実行命令を含む計算機コードまたはマシン使用可能な命令の一般的な文脈において記載されることがある。これらの命令は、コンピュータまたは他のマシン（例えば、個人用携帯情報端末または他のハンドヘルド装置）によって実行されるプログラムコンポーネントを含んでもよい。一般に、ルーチン、プログラム、アプリケーション、オブジェクト、コンポーネント、データ構造などを含むプログラムコンポーネントは、特定のタスクを行う、または特定の抽象データ型を実施するコードを指す。本明細書に記載された技術の実施形態は、ハンドヘルド装置、タブレットコンピュータ、ゲーミング装置、民生用電子機器、汎用コンピュータ、専門計算装置などを含む様々なシステム構成において実践されてもよい。また、本明細書に記載された技術の実施形態は、分散コンピューティング環境またはクラウド環境において実践されてもよく、タスクは、通信ネットワークによってリンクされた遠隔処理装置によって行われる。
【０１２６】
当業者には理解されるように、計算装置１１００は、ハードウェア、ファームウェア、ソフトウェア、またはハードウェアとソフトウェアの組合せを含むことができる。ハードウェアは、メモリに記憶された命令を実行するように構成されたプロセッサおよびメモリを含む。命令に関連付けられたロジックは、全体がまたは一部分が、ハードウェアロジックにおいて直接実施されてもよい。例えば、限定することなく、例示的なタイプのハードウェアロジックは、フィールドプログラマブルゲートアレイ（FPGA）、特定用途向け集積回路（ASIC）、システムオンチップ（SOC）、または複合プログラマブルロジックデバイス（CPLD）を含む。ハードウェアロジックによって、計算装置は、ユーザからデジタルインクストロークを受け取るグラフィカルユーザインターフェースを生成することができる。装置は、グラフィカルユーザインターフェースにおいて入力としてデジタルインクストロークを受け取るように構成される。ある実施形態において、計算装置は、デジタルインク描写モードとデジタルインク選択モードとの間で切り替わる。ユーザから受け取った動作に基づいて、計算装置は、インク対応面上で描写されたデジタルインクストロークを選択することができる。装置は、ある実施形態において、デジタルインクストロークを修正するためのコマンドボックスを表示することができる。
【０１２７】
引き続き図１１を参照すると、計算装置１１００は、直接または間接的に以下の装置、すなわち、メモリ１１１２、１つまたは複数のプロセッサ１１１４、１つまたは複数のプレゼンテーションコンポーネント１１１６、入力／出力（I/O）ポート１１１８、Ｉ／Ｏコンポーネント１１２０、および例示的な電源１１２２を結合するバス１１１０を含む。バス１１１０は、１つまたは複数のバス（アドレスバス、データバス、またはそれらの組合せなど）であってもよいものを表す。図１１の様々なブロックは、明瞭にするために線によって示されているが、実際には、様々なコンポーネントの線引きは、それほど明瞭ではなく、比喩的には、線は、より正確には灰色で、曖昧である。例えば、ディスプレイ装置などのプレゼンテーションコンポーネントは、Ｉ／Ｏコンポーネントと考えられてもよい。また、プロセッサは、メモリを有する。本発明者は、そのようなことは、当技術分野の特質であると認識しており、図１１の図面は、本明細書に記載された技術の１つまたは複数の実施形態に関連して使用することができる例示的な計算装置の単なる例示であることを繰り返し述べる。「ワークステーション」、「サーバー」、「ラップトップ」、「ハンドヘルド装置」などはすべて図１の範囲にあると考えられ、「コンピュータ」または「計算装置」を指すため、そうしたカテゴリー間の区別はなされない。
【０１２８】
計算装置１１００は、典型的には様々なコンピュータ可読媒体を含む。コンピュータ可読媒体は、計算装置１１００によってアクセス可能なあらゆる利用可能な媒体であってもよく、揮発性および不揮発性媒体、取外し可能および取外し不可能媒体を含む。コンピュータ可読媒体は、コンピュータ記憶装置媒体および通信媒体を備えてもよい。
【０１２９】
コンピュータ記憶装置媒体は、情報を記憶するための任意の方法または技術、例えば、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータにおいて実施される揮発性および不揮発性、取外し可能および取外し不可能媒体を含む。コンピュータ記憶装置媒体は、限定されないが、ランダムアクセスメモリ（RAM）、読み取り専用メモリ（ROM）、電子的消去可能プログラマブル読み取り専用メモリ（EEPROM）、フラッシュメモリ、もしくは他のメモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（DVD）、もしくは他のホログラフィックメモリ、磁気カセット、磁気テープ、磁気ディスク記憶装置、もしくは他の磁気記憶装置、または、所望のデータをコード化するために使用することができ、計算装置１１００によってアクセスすることができるその他の媒体を含む。ある実施形態において、コンピュータ記憶装置媒体は、フラッシュメモリのような有形のコンピュータ記憶装置媒体から選択されてもよい。これらのメモリ技術は、データを瞬間的に、一時的に、または永久に記憶することができる。コンピュータ記憶装置は、通信媒体を含まず、除外する。コンピュータ記憶装置媒体は、非一時的であり、伝播されるデータ信号を除外する。
【０１３０】
一方、通信媒体は、典型的にはコンピュータ可読命令、データ構造、プログラムモジュール、または搬送波などの変調データ信号もしくは他の輸送メカニズムにおける他のデータを包含し、すべての情報送達媒体を含む。用語「変調データ信号」は、信号中の情報をコード化するようなやり方で設定されたまたは変更された信号特性の１つまたは複数を有する信号を意味する。例として、限定することなく、通信媒体は、有線ネットワークまたは直接有線接続などの有線媒体、ならびに音響、ＲＦ、赤外線および他の無線媒体などの無線媒体を含む。
【０１３１】
メモリ１１１２は、揮発性および／または不揮発性メモリの形態のコンピュータ記憶装置媒体を含む。メモリは、取外し可能であっても、取外し不可能であっても、またはそれらの組合せであってもよい。例示的なハードウェア装置は、固体メモリ、ハードドライブ、光ディスクドライブなどを含む。計算装置１１００は、メモリ１１１２またはＩ／Ｏコンポーネント１１２０などの様々なエンティティからデータを読み込む１つまたは複数のプロセッサを含む。プレゼンテーションコンポーネント（複数可）１１１６は、ユーザまたは他の装置にデータ表示を提示する。例示的なプレゼンテーションコンポーネント１１１６は、ディスプレイ装置、デジタルインク対応面、スピーカー、印刷コンポーネント、振動コンポーネントなどを含む。Ｉ／Ｏポート１１１８によって、計算装置１１００は、Ｉ／Ｏコンポーネント１１２０を含む他の装置に論理的に結合することができ、Ｉ／Ｏコンポーネント１１２０の一部は、内蔵されていてもよい。例示的なＩ／Ｏコンポーネントは、マイクロホン、ジョイスティック、ゲームパッド、衛星放送アンテナ、スキャナー、プリンター、ワイヤレス装置、コントローラ（筆記具、スタイラス、キーボード、およびマウスなど）、または自然なユーザインターフェース（NUI）を含む。Ｉ／Ｏコンポーネント１１２０は、面センサ１１２０ａおよびインクデジタイザ１１２０ｂを含むことができる。面センサ１１２０ａは、筆記具からの相互作用を受け取る。次に、感知された相互作用情報は、インクデジタイザ１１２０ｂによって一連の接触点としてデジタル化され得る。接触点は、上記の、インク描写エンジンに対する入力として使用することができる。
【０１３２】
ＮＵＩは、ジェスチャー（例えば、手、顔、体など）、声、またはユーザによって生成された他の生理的入力を処理する。これらの入力の一部は、デジタルインク対応面上で描写されるデジタルインクとして解釈されることがある。ＮＵＩの入力は、さらなる処理のために適切なネットワーク要素に送信されてもよい。ＮＵＩは、音声認識、タッチおよびスタイラス認識、顔認識、生体認識、スクリーン上のおよびスクリーンに隣接するジェスチャー認識、エアージェスチャー、ならびに計算装置１１００のディスプレイに関連付けられた頭および目の追跡の任意の組合せを実施する。計算装置１１００は、ジェスチャー検出および認識のために、ステレオカメラシステムなどの深度カメラ、赤外線カメラシステム、ＲＧＢカメラシステム、表面センサ、およびこれらの組合せを装備することができる。さらに、計算装置１１００は、動きまたは圧力を検出することが可能な加速度計またはジャイロスコープを装備することができる。加速度計またはジャイロスコープの出力は、記憶および処理のためにメモリに提供される。さらに、加速度計またはジャイロスコープの出力は、没入型の拡張現実または仮想現実を描写するために、計算装置１１００のディスプレイに提供される。
【０１３３】
無線機１１２４は、無線通信を送受信する。計算装置１１００は、様々なワイアレスネットワーク上で通信および媒体を受信するようになされたワイヤレス端末であってもよい。計算装置１１００は、他の装置と通信するために、例えば、符号分割多元接続（「CDMA」）、モバイル用グローバルシステム（「GSM」）、または時分割多元接続（「TDMA」）などのワイヤレスプロトコルを介して通信することができる（図１１に示さず）。無線通信は、短距離接続、長距離接続、または短距離および長距離のワイヤレス通信接続の両方の組合せであってもよい。「短い」および「長い」タイプの接続に言及する場合、２つの装置間の空間的な関係に言及する意図はない。代わりに、短距離および長距離を異なるカテゴリーまたはタイプの接続として一般的に言及する（すなわち、一次接続および二次接続）。短距離接続は、８０２．１１プロトコルを使用するＷＬＡＮ接続などのワイヤレス通信ネットワークへのアクセスを提供する装置（例えば、モバイルホットスポット）へのＷｉ−Ｆｉ（登録商標）接続を含んでもよい。別の計算装置へのブルートゥース（登録商標）接続は、短距離接続の第２の例である。長距離接続は、ＣＤＭＡ、ＧＰＲＳ、ＧＳＭ（登録商標）、ＴＤＭＡ、および８０２．１６プロトコルのうちの１つまたは複数を使用する接続を含んでもよい。
【０１３４】
本明細書に記載された技術の実施形態は、特定の実施形態に関連して記載されており、これらの実施形態は、すべての点で限定ではなくむしろ例示であることが意図されている。代替の実施形態は、本明細書に記載された技術が本明細書の範囲から逸脱せずに関係する当業者には明らかになるであろう。
【０１３５】
ある一定の特徴および副組合せが有益であり、他の特徴および副組合せに関係なく用いられてもよいことが理解されるだろう。これは、特許請求の範囲内であると考えられ、特許請求の範囲内にある。
【図１】
2017529623.tif 000020
【図２】
2017529623.tif 000021
【図３】
2017529623.tif 000022
【図４】
2017529623.tif 000023
【図５】
2017529623.tif 000024
【図６】
2017529623.tif 000025
【図７】
2017529623.tif 000026
【図８】
2017529623.tif 000027
【図９】
2017529623.tif 000028
【図１０】
2017529623.tif 000029
【図１１】
2017529623.tif 000030
【手続補正書】
【提出日】平成28年7月15日(2016.7.15)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
プロセッサと、
タッチスクリーンと、
前記プロセッサによって実行されたとき、前記タッチスクリーンの表面を横切る物体によって作られた経路上の複数の接触点を受け取るステップ、入力として前記複数の接触点を使用して、アクティブな三次ベジェ近似を計算ステップであって、前記アクティブな三次ベジェ近似が開始接触点および終了接触点を有するステップ、前記タッチスクリーンに対するウェットインクレイテンシー期間を判定するステップ、前記物体が前記ウェットインクレイテンシー期間に進む予測距離を判定するステップ、前記終了接触点から前記予測距離延在する新しい三次ベジェ近似を計算するステップ、および前記新しい三次ベジェ近似に基づいた予測ウェットインクと共に前記アクティブな三次ベジェ近似に基づいたウェットインクを描写するステップ、含む、前記タッチスクリーン上に予測ウェットインクを描写するための方法を行うコンピュータ実行命令を有するコンピュータ記憶装置と、
を備える、タッチスクリーンディスプレイ装置。
【請求項２】
前記方法が前記タッチスクリーンを横切る前記物体の速度を判定するステップをさらに含み、前記予測距離が前記速度を使用して判定される、
請求項１に記載のタッチスクリーンディスプレイ装置。
【請求項３】
前記方法が前記タッチスクリーンを横切る前記物体の加速度を判定するステップをさらに含み、前記予測距離が前記速度および前記加速度を使用して判定される、
請求項２に記載のタッチスクリーンディスプレイ装置。
【請求項４】
前記方法が、入力として前記速度を使用して、前記ウェットインクに対する太さを計算するステップをさらに含む、
請求項２に記載のタッチスクリーンディスプレイ装置。
【請求項５】
前記終了接触点が、前記複数の接触点における他のすべての接触点に関連付けられたタイムスタンプの後に続くタイムスタンプを有する、請求項１に記載のタッチスクリーンディスプレイ装置。
【請求項６】
前記ウェットインクレイテンシー期間が、前記物体がある接触点で前記タッチスクリーンに接触するときの第１の時点と、ウェットインクがウェットインク計算への入力として前記接触点を使用して描写されるときの第２の時点との間の時間量である、請求項１に記載のタッチスクリーンディスプレイ装置。
【請求項７】
前記物体が指である、請求項１に記載のタッチスクリーンディスプレイ装置。
【請求項８】
前記方法が、
圧力情報に関連付けられていない第１の接触点を前記タッチスクリーンから受け取るステップであって、前記第１の接触点が前記タッチスクリーンの前記表面を横切る前記物体によって作られた前記経路上の前記複数の接触点のうちの１つである、ステップ、
前記第１の接触点における前記物体の速度を判定するステップ、
前記速度に対応する圧力を判定するステップ、
前記圧力を前記第１の接触点に関連付け、更新された第１の接触点を生成するステップ、および
前記更新された第１の接触点を使用してデジタルインクを描写するステップ、
をさらに含む、請求項１から７のいずれか一項に記載のタッチスクリーンディスプレイ装置。
【請求項９】
前記方法が前記更新された第１の接触点に関連付けられた前記圧力を使用して前記デジタルインクの太さを判定するステップをさらに含む、請求項８に記載のタッチスクリーンディスプレイ装置。
【請求項１０】
タッチスクリーン装置において、
前記タッチスクリーン装置と一体化されたタッチスクリーンの表面を横切る物体によって作られた経路上の複数の接触点を受け取るステップ、
複数のフィルタされた接触点を生成するステップ、
入力として前記複数のフィルタされた接触点を使用して、アクティブな三次ベジェ近似を計算するステップであって、前記アクティブな三次ベジェ近似が開始接触点および終了接触点を有する、ステップ、
前記タッチスクリーン装置に対するウェットインクレイテンシー期間を判定するステップ、
前記物体が前記ウェットインクレイテンシー期間に進む予測距離を判定するステップ、
前記終了接触点から前記予測距離延在する新しい三次ベジェ近似を計算するステップ、および
前記新しい三次ベジェ近似に基づいた予測ウェットインクと共に前記アクティブな三次ベジェ近似に基づいたウェットインクを描写するステップ、
を含む、タッチスクリーン装置上に予測ウェットインクを描写するための方法。
【請求項１１】
前記ウェットインクレイテンシー期間が、前記物体がある位置で前記タッチスクリーンに接触してから、前記位置に対応する点を考慮に入れたウェットインクを前記タッチスクリーン上に表示するまでの時間量である、請求項１０に記載の方法。
【請求項１２】
前記複数のフィルタされた接触点が前記複数の接触点に対して無限インパルス応答フィルタを実行することによって生成される、請求項１０に記載の方法。
【請求項１３】
前記方法が前記タッチスクリーンを横切る前記物体の速度を判定するステップをさらに含み、前記予測距離が前記速度を使用して判定される、請求項１０に記載の方法。
【請求項１４】
前記方法が、入力として前記速度を使用して、前記ウェットインクに対する太さを計算するステップをさらに含む、請求項１３に記載の方法。
【請求項１５】
前記速度が、２つの連続したインク点間の距離を前記タッチスクリーンに対するサンプリング時間で割ることによって計算される、請求項１３に記載の方法。
【国際調査報告】
2017529623.tif 000031
2017529623.tif 000032
2017529623.tif 000033
2017529623.tif 000034