JPH10247240A - 手書きのデジタル表現のサイズを圧縮する方法 - Google Patents
手書きのデジタル表現のサイズを圧縮する方法Info
- Publication number
- JPH10247240A JPH10247240A JP9338717A JP33871797A JPH10247240A JP H10247240 A JPH10247240 A JP H10247240A JP 9338717 A JP9338717 A JP 9338717A JP 33871797 A JP33871797 A JP 33871797A JP H10247240 A JPH10247240 A JP H10247240A
- Authority
- JP
- Japan
- Prior art keywords
- point
- data
- ink
- compression
- curve
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/20—Contour coding, e.g. using detection of edges
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/32—Digital ink
- G06V30/333—Preprocessing; Feature extraction
- G06V30/347—Sampling; Contour coding; Stroke extraction
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
となく、手書きデータを圧縮する。 【解決手段】曲線を含む手書きの電子インクを圧縮する
方法は、最初にインク内の重要な節点を検出するステッ
プを含む。節点の検出は、局部的な極大値/極小値を検
出することによって実施され、その際ノイズ等による偽
の極大値/極小値は、取り除かれる。次に、検出された
節点を使用して曲線をリサンプリングする。リサンプリ
ングは、多角形近似を使用して、曲線を直線に置き換え
ることにより実施される。リサンプリングされたインク
は、目的解像度に合うようにリスケーリングされる。リ
スケーリングされたデータは、デルタ符号化され、ビッ
ト・パッキングされて、記憶される。
Description
テムに関し、特に電子インク・データの圧縮に関する。
書き(handwriting:ハンドライティング)の情報の捕獲お
よび記憶をサポートしている。電子インクとは、ここで
使用されるとき、インクで書かれたストロークの連続で
あり、それぞれのストロークは、ディジタイザ・タブレ
ットによって一定のサンプル・レートで測定される(x,
y)座標対の連続である。多数のデジタル化装置が、従来
技術で知られている。1つのそのような装置は、例えば
100Hzのサンプル・レートを有し、座標対は、ミリイン
チの単位で与えられ、16ビットの整数で表わされる。こ
の代表的な装置の場合、未処理の表現は、典型的な手書
きの単語を記憶するのにおよそ1kBを必要とする。
イズに関する制限は、筆記したものやスケッチの有用な
量の記憶を可能にするために電子インクのデータ圧縮を
必要とする。データ圧縮システムは、先行技術で知られ
ており、それらは、デジタル・データを圧縮デジタル・
コードに符号化し、圧縮されたデジタル・コードを元の
デジタル・データに復号する。データ圧縮とは、所与の
形式のデータを、元のものより少ない空間しか必要とし
ない代替の形式に変換しようとするあらゆる処理をい
う。データ圧縮システムの目的は、保持するために必要
とされる記憶量、またはデジタル情報の所与のボディを
伝送するのに必要とされる時間量の節減を果たすことで
ある。データ圧縮システムは、損失あり(lossy)および
損失なし(loss-less)の2つの主要な分類に分けること
ができる。
テムはある基準を満たさなければならない。損失なしの
システムは、往復関係をもたなければならない。損失な
しのデータ圧縮システムが往復関係の特性を処理するた
め、情報の変更または損失なく圧縮データを再び広げま
たは復号し、その元の形式に戻すことが可能でなければ
ならない。復号されたデータおよび元のデータは、全く
同じであり、互いに区別がつかないものでなければなら
ない。損失ありのデータ圧縮システムは、データの全体
的な知覚が変わらなければ、圧縮・伸長処理の間の情報
の変更または損失を許すことができる。
である。しかし、インクは、画面にレンダリングされる
ことのみ要求されるという観点から、インクには、捨て
ることができる重要な冗長な情報がある。高い圧縮比率
の要求が与えられる場合、損失ありの圧縮技術が最も適
している。
伸長システムが通信している装置によって付与され受け
入れられるデータ速度に関して、十分な性能を提供しな
ければならない。一般に、電子アプリケーションは、比
較的控えめなCPU能力をもつ小さいコンピュータ上で
使用されるので、電子インク・アプリケーションの性能
が非常に重要である。複雑な圧縮技術をそれぞれのスト
ロークに適用しなければならない場合、比較的大きい計
算能力のシステムでさえ著しく遅くなりうる。
けるもう一つの重要な基準は、典型的に圧縮比率によっ
て特徴づけられる圧縮効率である。一般に圧縮比率は、
圧縮されていない形式のデータ・サイズを、圧縮された
形式のサイズで割った比率として定義される。データが
圧縮可能であるために、データは冗長を含まなければな
らない。圧縮効率は、圧縮手続きが入力データ内の冗長
を如何に効果的に使用するかによって決定される。
率と、性能およびインクの低下とのバランスをとらなけ
ればならない。電子インクは、圧縮を許すいくつかの冗
長ソースをもつので、比較的高い圧縮比率が可能であ
る。
クの圧縮のための方法および装置を開示しており、そこ
では極値点が、忠実度を保つために保存される。連続す
る極値の間の記憶される点の数を減少させるため、それ
ぞれの点は、局部的な曲率について検査され、低い曲率
をもつ点は捨てられる。この局部的な検査は、長いスト
ローク上で滑らかに変化するインクを歪ませる危険をも
つ。その場合、曲率検査をトリガする点がないことがあ
り、累積する曲率は、よじれ(kinks)をもたらすに十分
である。
波数(100Hz)は、ペンが動作する時の動的情報の捕獲を
可能にする。しかしこのサンプリング周波数は、手書き
(ハンドライティング、handwriting)に関するナイキス
ト(Nyquist)制限よりもずっと高く、データは、1/2ない
し1/4にダウンサンプリングされても、なお完全な動的
情報を保持することができる。動的情報は、サイン照合
に非常に重要であり、手書き認識および走り書きマッチ
ング(scribble matching)のいくつかの方法に有用であ
る。しかし、動的情報は、インク・トレースを表示装置
上にレンダリングするには必要でない。
置の使用は、ペン位置が、連続する10msサンプルの間の
全幅で変化することを許す。これは、人間の手が達成す
る最大転回速度より大きさがおよそ2オーダー高い。そ
の上、節点(knot points)の間のペン軌道は、滑らかに
ゆっくり変化する曲線であるので、次のサンプル点の配
置は、線形予測、曲線適合または動的モデルを使用して
合理的に予測できる。こうして、節点は、節減が控えな
十分な密度で実際にはあらわされる(そしてモデルをリ
セットする)が、モデル符号化は、モデルからのずれと
共に更なる圧縮を提案することができる。
は両方とも、内部ペン・データの標準化されたミリイン
チ解像度よりかなり低い。既知の特定のディジタイザ/
ディスプレイ・セットアップに一致させ、または単によ
り低い標準化された解像度(例えば300dpi)を使用するた
めに記憶された解像度を減少させることは、小さい更な
る節減を提案する。
きのデジタル表現のサイズを圧縮する方法を提供するこ
とができ、その方法は、上記デジタル表現の中の局部的
な極値を検出して、上記手書きの曲率の高い領域にある
節点を検出するステップ(101)と、上記デジタル表現
を、上記節点に基づいて多角形近似によってリサンプリ
ングして、リサンプリングされたデータを生成するステ
ップ(102)と、を含む方法を提供する。
比較的安価であり、従って節点を検出する経済的な方法
を提供する。多角形近似によるリサンプリングは、手書
きの入力の適切な復元を可能にするに十分な点を保持し
ながら、データ点の数を減少させる効果的な方法であ
る。
によってリサンプリングするステップは、上記デジタル
表現の一部に沿った第1の点から上記デジタル表現の上
記一部に沿った第2の点まで直線を定義するステップ
と、上記第1の点および上記第2の点の間の上記デジタ
ル表現の一部に沿った、上記直線から最大距離にある第
3の点を位置決めするステップと、上記最大距離が、制
限値より大きい場合、上記直線を、上記第1の点から上
記第3の点までの第1の直線および上記第3の点から上
記第2の点までの第2の直線と置き換えるステップと、
上記最大距離が上記制限値より少なく、上記直線が最大
長より短い場合、上記第1の点と上記第2の点の間の上
記デジタル表現の上記一部を、上記直線と置き換えるス
テップと、上記最大距離が上記制限値より少なく、上記
直線が上記最大長より長い場合、上記直線を、上記第1
の点および上記第2の点の間の上記デジタル表現の上記
一部に位置決めされる第4の点で分割するステップと、
を含む。
置決めする前に、上記デジタル表現をローパス・フィル
タリングするステップと、上記位置決めするステップで
作り出される加工品を取り除くステップと、上記リサン
プリングされたデータをリスケーリングして、リスケー
リングされたデータを生成するステップと、上記リスケ
ーリングされたデータを符号化して、符号化されたデー
タを生成するステップと、上記符号化されたデータをパ
ックして、パックされたデータを生成するステップと、
を含む。
表現上の次の点の位置を予測するステップと、上記次の
点の上記予測された位置と上記次の点の実際の位置の間
の差を符号化するステップと、を含むことができる。
る方法で圧縮された手書きのデジタル表現を伸長する方
法は、上記パックされたデータをアンパックして、上記
符号化されたデータを引き出すステップと、上記符号化
されたデータを復号して、復号されたデータを引き出す
ステップと、上記復号されたデータ内の個々の点を直線
で結ぶステップと、を含む。
に、上記復号されたデータ内の曲率の高い点にある尖点
を識別するステップと、上記尖点の間の上記復号された
データに沿った点のそれぞれの対の間に補間点を導くス
テップと、を含むことができる。
るために、スプライン平滑化を使用することを含むこと
ができる。尖点は、その出口セグメントが、入口セグメ
ントと鈍角をなす点として定義される。
化する手段と、上記で定義される方法に従って、上記手
書き入力を圧縮する手段と、を備えるコンピューティン
グ装置を提供する。
図面に関連する以下の詳細な説明の考察からより良く理
解できるであろう。
うに実現されうるかという概要を続ける。
タル表現のサイズを減少させる方法が提供される。最初
に、デジタル表現は、ローパス・フィルタを通過する。
次に、局部的な極値点、すなわち節点のスーパーセット
が配置される。節点検出は、加工品を生成することがあ
るが、それらは取り除かれる。次に、元のデータは、多
角形近似によってリサンプリングされ、選択的に、曲線
を直線と置き換えることによってリサンプリングされた
データを生成する。リサンプリングされたデータはリス
ケーリングされ、リスケーリングされたデータを生成す
る。リスケーリングは、目的解像度により一層適合する
ようにデータをスケーリングする。次に、リスケーリン
グされたデータは、デルタ符号化技術を使用して符号化
され、記憶の前にパックされる。
グするために使用される。多角形近似は、最初に、第1
の節点から第2の節点まで直線を定義することによって
実施される。その直線から最大距離にある、第1の節点
と第2の節点の間のデジタル表現の一部に沿った点を見
つける。最大距離が制限値より大きい場合、直線は、第
1の節点とその点の間の直線およびその点と第2の節点
の間の直線と置き換えられる。最大距離が制限値より少
ない場合、直線の長さが検査される。直線が最大長より
短い場合、第1の節点と第2の節点の間のデジタル表現
の一部は、その直線と置き換えられる。あるいは、直線
が最大長より長い場合、直線は、第1の節点と第2の節
点の間のデジタル表現の一部に位置づけられる分割点で
分割される。デジタル表現が、最大長より短く、デジタ
ル表現から制限値より多くはずれない一連の直線と置き
換えられるまで、この処理は帰納的に実行される。
を必要とする。復号されたデータをレンダリングするた
めに、直線を使用することができる。しかし、伸長処理
の間に、任意の平滑化処理が可能である。この平滑化方
法は、リスケーリングされたデータ内の曲率の高い点に
現れる尖点を最初に識別することによって実施される。
2次のスプライン多項式を使用して、少なくとも1つの
補間点が、尖点間の復号されたデータに沿った点のそれ
ぞれの対の間に生成される。
い実施例の流れ図を示す。この発明は、インク内の節点
を検出し(101)、動的情報を捨てて、連続する節点の間
の滑らかな曲線をリサンプリングする(102)。そしてリ
サンプリングされたデータは、表示解像度により近く適
合するようスケーリングされる(103)。次にデータは、
デルタ符号化され(104)、パックされる(105)。
説明する。第1ステージの節点検出101は、インク内の
曲率の高い点を検出する。節点検出101は、局部的な極
値を検出することによって行われる。
で検出された節点を保存しながら、インク・サンプルの
新しいより小さい組を生成する。これらのサンプルは、
元のインクと同じ形式で符号化することができ、その結
果、伸長108を必要としない低減したサイズのインク記
録をもたらす。字体およびリサンプリング・ステップの
積極性に依存して、リサンプリングされたインクは、読
みやすさの深刻な損失なく、元のインク・サンプルのサ
イズの20%から45%の間である。
ンク形式は、さらにサンプル座標の解像度を量子化する
(103)ことによって変更される。これは「リスケーリン
グ」と呼ばれる。インクの性質により、絶対座標をデル
タ座標で置き換える(104)ことによって、データの量を
減少させることができる。最後に、ブロック105で、結
果の小さいデルタ値は、コンパクトなビットストリーム
に符号化される。
に関して、異なる速度、圧縮および忠実度のトレードオ
フを与えるいくつかの代替のアルゴリズムおよびパラメ
ータ設定があることが分かるであろう。
関するより詳細な記述を続ける。
領域(尖点および小さいループを含む節点)を含む。これ
らの重要な領域に関係なく単純にインクをリサンプリン
グすることは、読みやすさの歪みおよび損失を引き起こ
す。これを回避するため、重要な点(以後節点と呼ぶ)
が、最初に検出される。節点検出ステップ101は、以下
の利点をもつ。 1.節点は、最終の符号化されたインク内に保存され、
よりよい読みやすさをもたらす。 2.節点の間のインク・トレースは、単純で滑らかな曲
線であるので、リサンプリング処理を簡単にする。
る選ばれた特徴検出アルゴリズムは、局部的な極値を検
出する。比較的低い計算コストは、単純なアルゴリズム
を使用する結果として生じる。尖点および急なループ以
外の別の節点を検出することが課題でない。最悪の場
合、これらの追加の節点は、リサンプリング・ステップ
を制約しすぎることによって少しだけ低い圧縮をもたら
すことがあるが、実際上この影響は取るに足らないこと
がわかった。
タ震動およびデジタル化ノイズの組合せは、多数の偽の
局部的な極値を生成するので、極値基準の節点検出器
は、未処理のx/y値の中の局部的な極大値/極小値を単純
に捜すことができない。これを克服するために、未処理
のデータは、ノイズを減少させるように最初にローパス
・フィルタリングされ(301)、単純に隣接するデータ点
ではなく、固定幅の窓の中にわたる極値について検査さ
れる(302)。最後に、印を付けられた極値は、いくつか
の加工品を除去する(303)ために後処理される。
えられる移動平均フィルタによって実施される。
れるデータについて2に等しく選ばれた。フィルタリン
グされたデータは、節点およびリサンプリング点を決定
するためだけに使用されることに注意しなければならな
い。元のデータを使用して、、リサンプリングされたイ
ンクの実際の座標値を供給することができる。このよう
にローパス・フィルタの厳密な応答は重要でなく、単な
る移動平均で十分である。
(極値とも呼ばれる)は、フィルタリングされたデータに
沿って3点検査窓を移動させることによって検出され、
見つけられたあらゆる極値を記録する。x midの座標のx
(またはy)が、x leftおよびx righ tの両方のそれぞれの対
応する座標より大きい(または小さい)場合、極値は、検
査窓内に見つけられる。極値の実際の位置は、最大(ま
たは最少)x(またはy)値を持つ、x leftからx rightの窓内
の1データ点を選択することによって見つけられる。
てシフトされる。x mid- →x'left x right →x'mid x new- →x'right 処理速度を上げるために、間隔距離dは、ユークリッド
距離ではなく区画距離(city block distance)(xおよびy
の変位の合計)を使用して計算される。
するに値する特定の種類の加工品を生成する。図4に示
されるように、傾斜した手書き600上で、多くのループ
は、すぐ近接したx605およびy606の極値の両方をもつ。
その影響を減少させるため、ある閾値より近い候補の節
点の対(好ましい実施例で2つのサンプル点)のうち鋭い
方だけが保持される。
それぞれのストロークを、一連の滑らかな曲線セグメン
トに分割する。リサンプリング・ステップがそれぞれの
セグメントに適用され、元の時間基準のインク・サンプ
ルを、インク軌道を定義するに十分な密度である空間的
に隔てられたサンプルの1セットと置き換えようとす
る。元のインク・データはペンがゆっくり動く期間を含
むので、これは、サンプル点の数を減少させ、近接して
間隔をあけられた多数のサンプルを生成する。
近似のそれである。現在のセグメントは、それぞれの元
のサンプル点と最も近くの線セグメントとの間の最大距
離がある小さい閾値(τ)より小さい一連の直線セグメン
トと置き換えられる。好ましい実施例で、目標LCD表
示のための典型的なピクセル間隔より低い2-8ミリイン
チの範囲の閾値が使用される。
詳しく述べられるが、伝統的な方法とは2点で異なる。
第1に、ずれ検査は、速度について、全体的にではなく
局部的に適用されるだけである。第2に、生成される線
セグメントの長さ(d)は、最大で制限される。このセグ
メント長に関する保証された上限は、後の符号化ステー
ジを簡単にし、局部的なずれ検査の中の誤差に対する耐
性(robustness)を改善する。
結果が、図6に示される。この例の場合、リサンプリン
グされたインクは、洗練された設定(図6a)で元のインク
のデータ点の33%を、きめの粗い設定(図6b)で22%を必要
とする。
アルゴリズムは、セグメントがどれもdより長くはな
く、それぞれのサンプル点に最も近い直線セグメントか
らの最大のずれがτより小さくなるよう、2つの節点90
1および902よって範囲を定められる曲線900を一連の直
線セグメントで近似する。それは、図7に示されるよう
に、基準が満たされるまでセグメントを帰納的に分割す
ることによってこれを行う。
それぞれのセグメントが、処理される。最初に、これ
は、2つの連続する節点901と902の間のセグメント903
である。リサンプリング処理の中心の部分は、次のよう
に進む。
を仮定する。 2.線903から最大の距離(904)に点を置く。これは、図
7aの点905である。効率的にこれを行うため、節の間の
ほとんど全てのセグメントは単純な凸の曲線であるとい
う事実を利用する。検索は、901と902の間の中央のサン
プルで始まり、(広範囲ではなく)局部的な最大のずれの
点まで登っていく。ずれ自体は、高速近似によって計算
される。線903が、勾配mを持ち、点901が(0,0)に置かれ
る場合、線904の長さ(1)は、次式によって与えられる。
術を使用してhを計算することができる。さらに、hは、
検査される点に依存しないので、それは、検索の内側ル
ープの外で一度計算することができる。
されるように、セグメント903を点905で分割し、線セグ
メント906および907を帰納的に多角形化する。 4.ずれが制限の範囲内である場合、903の長さをチェ
ックする。それがdより小さい場合、退出する。そうで
なければ、905を中間点として設定し、帰納的に線セグ
メント906および907を多角形化する。この場合、点905
は通常は中央のサンプル点であるように選ばれるが、非
常に速い速度で書いたものには、901と902の間にサンプ
ル点がないことがある。この場合、901と902の間の中途
に新しい補間点が組み入れられる。
て、等距離のリサンプリングがあり、それはすなわち、
連続する節点の間で、曲線に沿った一定の距離のところ
にサンプルを置く。これは、計算上より安価であり、符
号化ステージにおけるサンプル予測を使用する能力を改
善し、従ってリサンプリングされた点あたりの符号サイ
ズを減少させる。しかし以前の実験は、等距離のリサン
プリングが、容認できない歪みをもたらさずには非常に
少ないデータ低減しか達成せず、符号化効率の利得は、
リサンプリング効率のこの損失を埋めることができない
ことを示している。
ンクは、擬似的な高解像度で表される。直線(または曲
線)セグメントの端点のみその解像度で表されるので、
画面レンダリングの目的で解像度の8重減少(eight fol
d reduction)(125dpiまで)を許容することができる。線
(または曲線)セグメント自身は、表示装置の完全な解像
度でレンダリングすることができる。典型的な手書きサ
イズの場合、リサンプリングされた点を125dpiで記憶す
ると、結果として小さな歪みが生じる。低い解像度ほ
ど、検知しうる歪みを導く、60dpiまで減少させても、
読みやすさに関して驚くほど小さい影響しか与えない。
好ましい実施例で、リスケーリングは、座標値の最下位
の数(2-4)ビットを捨てるという荒い(crude)方法で実施
することができる。
リサンプリングされた点の(リスケーリングされた)絶対
座標値を、曲線モデルおよび一連の小さい誤差値の組合
せと置き換える。いくつかの曲線モデル(Bezierスプラ
イン、3次(cubic)スプライン、円錐セクション、チェ
ブィシェフおよびルジャンドルの多項式)を用いた以前
の実験は、データへの良好な適合が可能であるが、曲線
パラメータを表すコストは、簡単なデルタ・サンプルを
符号化するために必要とされるコストに匹敵することを
示した。最初に、ある種の予測方式を使用して多角形の
サンプル値を符号化する試みがなされた。一般的な処方
が図8に示されている。
それぞれの対について一連のデルタ値(ci)を記憶する。
ここでc i=s i-s i-1である。リサンプリング・ステップの
d制限とリスケーリング・ステップの組合せは、これら
のデルタ値が、小さい固定の境界(パラメータ設定によ
り典型的に±7または±15)を持つことを保証する。
次のサンプル点を予測し、予測された点と実際の点の間
の誤差c i=s i-p iを符号化する。これは、点が浅い曲線上
にあるとき、小さい符号値を作るが、曲線が節点を通過
するとき、高いコードを作り出すことができる。図8
で、点404は、モデルが予測しようとしている次の点で
ある。点403から点405へのベクトル(409)は、前のベク
トル408の反復である。モデルは、予測された点405と実
際の点404の間の誤差を符号化する。
i-1)(ここでR(α)はαに関する回転マトリックス)であ
ると仮定することにより、次のサンプル点を予測する。
そして予測された点と実際の点との間の誤差を符号化す
る。図8に示されるように、予測された点406は、前の
延長されたベクトル409から、前のベクトル408と前の前
の延長されたベクトル407の間に生成された角度(α)と
同じ角度(α)をなす線410を形成することによって生成
される。モデルは、予測された点406と実際の点404との
間の誤差を符号化する。
他の線形または非線形モデリング方式を使用することが
できる。
リッドで、(2)および(3)の中の近似が有効であり、低減
された誤差コード・サイズを生成することを示した。し
かしサンプリング密度が減少すると、これらは乏しい近
似になり、単純なデルタ符号化(オプション1)がより効
果的である。高い圧縮比率のはっきりした要求が与えら
れる場合、好ましい実施例は、デルタ符号化のオプショ
ン(1)を使用する。
された点の対の間の一連の小さいデルタ値を作り出す。
これらのデルタは固定の上限をもつ。好ましい実施例
で、デルタは、パックされた4-6ビット整数に直接記憶
される。当業者であれば、いくつかの代替の符号化技術
が可能であることが分かるであろう。デルタ値の分配
は、ハフマン・コーディングには特に適さないが、アリ
スマティック・コーディング(arithmetic coding)は適
用可能である。アリスマティック・コーディングを使用
した実験は、記憶コストの更なる10%減が、伸長コスト
を増加させるが、固定のまたは適応性のある統計モデル
を使用することによりこの方法を通して達成できること
を提案している。
前に、それは伸長されなければならない。上記で圧縮処
理を述べたが、次に伸長処理の説明に続く。図9を参照
すると伸長の場合、リサンプリングされた点を再生する
ために、ビット・パッキングおよびデルタ符号化の反転
(201,202)が先に行われる。この復元されるインクは、
サンプル点の間に直線セグメントを引くことによって通
常の方法でレンダリングすることができる(204)。しか
し、節点の間の手書き曲線は滑らかであることが知られ
ているので、インクを平滑化することができる(203)。
例えばそれぞれの点の間の曲線セグメントを使用するこ
とによるような、インクを平滑化する多数の方法が可能
である。あるいは、処理は、インクを補間して、滑らか
な曲線を近似する線セグメントの数を増やすことができ
る。
ち、特化されたインク・レンダリング・システムに依ら
ないようにするため、伸長されたサンプル点の間に追加
の補間点を生成する後者の方法が選ばれた。予備的な実
験は、3次スプラインを使用して多角形セグメントを補
間することが、良い読みやすさを作り出すことを示し
た。
スプラインは尖点で中断される。完全なスタンドアロー
ンの実現をもたらすために、平滑化処理は、別の尖点検
出ステージをもつ。
とができる。しかし、伸長の目的のため、高い度合いの
曲率をもつ尖点だけが必要とされる。好ましい実施例
で、尖点検出器は、尖点として、出口セグメント角が入
口セグメント角と90°以上異なるあらゆる点にラベルを
付ける。この検査は、2つのベクトルのドット・プロダ
クトの符号を調べることによって安価に実行される。図
10を参照すると、所与のインク710が示されており、70
0、704その他の節点がある。点704での遷移は平滑化さ
れるべきであるが、点700での遷移は平滑化されるべき
ではない。点に関連する2つの線セグメントの間の角度
をチェックすることにより、平滑化処理は、線をいつ中
断するか決定することができる。点700で、入口セグメ
ントのタンジェント703と出口セグメントのタンジェン
ト702の間の角度701は、90°より大きいので、点700を
尖点として認識する。それを、点704における入口セグ
メントのタンジェント707と出口セグメントのタンジェ
ント706の間の角度705と対比させる。こうして、点704
は尖点と印を付けられないので、平滑化することができ
る。上記の例は、検査として90°を使用していることを
述べておくが、当業者であれば、上の記述を読めば90°
という値は重要ではなく、システム要求に従って変える
ことができることが分かるであろう。
ることができる。完全なスプライン補間処理は、比較的
安価であるが、一般に使用する通常の表示解像度のため
には過剰である。好ましい実施例で、復元されるサンプ
ル点のそれぞれの対の間にただ1つの補間点を生成する
スプライン補間回路の特化されたバージョンが、デフォ
ルト設定として提供される。この点を図示するため、図
11は、最高の圧縮設定における補間の異なる量の影響を
示している。図11aは、平滑化を行わずに最高の圧縮設
定で圧縮された後の図5のインクを示す。図11bは、1
セグメントあたり1追加点を作り出すように上述のスプ
ライン補間を使用した結果を示す。最後に、図11cは、
1セグメントあたり3追加点を生成した結果を示す。
メント対を表す場合、連続するサンプル点の間の曲線
は、2つの重なる2次スプラインの間のブレンドとして
表すことができる。ルジャンドルの多項式を使用してブ
レンドすることは、始点および終点のための同様の方程
式と共に、それぞれのサンプル点について3次スプライ
ン方程式を導く。
に1点を補間する特別なケースの場合、アルゴリズムは
次の通りである。 1.第1のサンプル点を、滑らかなセグメントの開始Ps
と印を付ける。 2.ストロークの終わりに達するか、またはドット・プ
ロダクト検査(Pi+1-Pi)・(Pi-Pi-1)<0によって定義さ
れる尖点を見つけるまで、サンプル点Piを捜し、これ
を、滑らかなセグメントの末端Peと印を付ける。 3.以下の方程式を使用して、間隔の中のサンプルのそ
れぞれの対の間に補間点を生成する。
ある場合、退出し、そうでない場合、それをPsとしてス
テップ2へ行く。
に補間する一般的なケースの場合、ステップ3は、完全
な3次方程式と置き換えられる。実際に、標準の差分方
程式の技術を使用して、内側ループ内で乗算を使用する
ことなく3次方程式を計算することができる。
ンであり、フロントエンドまたは特化されたインク・レ
ンダリング・システムに依らない。圧縮処理は、x/y極
値節点検出器、高速多角形リサンプラ(resampler)およ
びビット・パッキング(算術符号化ではなく)を使用す
る。伸長処理は、復元されるサンプル密度を2倍または
4倍にするために、任意にスプライン補間ステップを走
らせる。
き、コードサイズは、圧縮/伸長に関する7kbと補間に関
する3kbを加えたものである。平均の圧縮時間は、Windo
ws486/50のプラットホーム上で、1つの手書きの単語あ
たり6msである。平均の単語の伸長時間は、1単語あた
り1.4msであり、補間がなされる場合は2.4msである。
「圧縮」レベルを生成することができる。好ましい実施
例は、0(ほぼ損失なし)から5(最大限に積極的、忠実度
のいくらかの損失)までの範囲の6つの圧縮レベルを提
供する。使用されるパラメータ値は、表1に示される。
て決定される。小さい筆記体の字は、大きい活字体より
も圧縮可能であり、また歪みの影響をより受けやすい。
主な圧縮測定は、この字体のスペクトルの両端付近にい
る2人の書き手による高解像度データを使用して行われ
た。それぞれの書き手について、3つの検査文(全部で4
0単語)が使用され、結果は、単語サンプルにわたって平
均された。全てのケースで、高い圧縮レベルにおける歪
みは主観的に受け入れることができた。表1は、この検
査データ上で達成された圧縮を示す。
きの単語について、最終の圧縮のどの割合が、それぞれ
のステージ(リサンプリング、リスケーリングおよびビ
ット・パッキング)に起因するかを示す。
加えて図13は、6つの全ての圧縮レベルにおいて、例示
の単語を圧縮し伸長した結果を示す。
めのいくつかの方法が、今後の機会として開いている。 1.計算能力がそれほど制限されないアプリケーション
の場合、単純なビット・パッキングより優れた最終符号
化ステージを使用することができる。算術コーダーを使
った実験は、少なくとも更に10%の圧縮が、こうして達
成されることを提案している。 2.空間的なローパス・フィルタをダウンサンプリング
の前に使用して、エイリアジング影響を避けることがで
きる。このステップへの改良は、損失のあるコーダーの
忠実度に最大限の影響を及ぼし、伸長時間には影響を与
えない。 3.予測的符号化を使用する試みは、高い圧縮設定で成
功していなかった。しかし、データの中の同じ規則性
は、フォワード・バックワード符号化を使用し、外挿で
はなく補間をサンプルの代替の対の間に用いることによ
って活用することができる。予備的な実験は、最高10%
の更なる節減がここで達成できることを提案している。
あって、上記デジタル表現の中の局部的な極値を検出し
て、上記手書きの曲率の高い領域にある節点を検出する
ステップ(101)と、上記デジタル表現を、上記節点に基
づいて多角形近似によってリサンプリングして、リサン
プリングされたデータを生成するステップ(102)と、を
含む上記方法。
ングするステップ(102)は、上記デジタル表現の一部に
沿った第1の点(901)から上記デジタル表現の上記一部
に沿った第2の点(902)まで直線(903)を定義するステッ
プと、上記第1の点(901)および上記第2の点(902)の間
の上記デジタル表現(900)の一部分に沿った第3の点(90
5)を位置決めするステップであって、上記第3の点(90
5)は、上記直線(903)から最大距離(1)にあるステップ
と、上記最大距離(1)が制限値(τ)より大きい場合、上
記直線(903)を、上記第1の点(901)から上記第3の(90
5)までの第1の直線(906)および上記第3の点(905)から
上記第2の点(902)までの第2の直線(907)と置き換える
ステップと、上記最大距離(1)が上記制限値(τ)より少
なく、上記直線(903)が最大長(d)より短い場合、上記第
1の点(901)および上記第2の点(902)の間の上記デジタ
ル表現(900)の上記一部を、上記直線(903)と置き換える
ステップと、上記最大距離(1)が上記制限値(τ)より少
なく、上記直線(903)が上記最大長(d)より長い場合、上
記直線(903)を、上記第1の点(901)および上記第2の点
(902)の間の上記デジタル表現(900)の上記一部に位置決
めされる第4の点で分割するステップと、を含む上記
(1)に従う方法。
めする(302)前に、上記上記デジタル表現をローパス・
フィルタリングするステップ(301)と、上記位置決めす
るステップで作り出される加工品を取り除くステップ(3
03)と、上記リサンプリングされたデータをリスケーリ
ングして、リスケーリングされたデータを生成するステ
ップ(103)と、上記リスケーリングされたデータを符号
化して、符号化されたデータを生成するステップ(104)
と、上記符号化されたデータをパックして、パックされ
たデータを生成するステップ(105)と、を含む上記(1)ま
たは(2)に従う方法。
らに、上記デジタル表現上の次の点の位置を予測するス
テップと、上記次の点の上記予測された位置(405、406)
と上記次の点の実際の位置(404)の間の差を符号化する
ステップ(104)と、を含む上記(3)に従う方法。
圧縮された手書きのデジタル表現を伸長する方法であっ
て、上記パックされたデータをアンパックして、上記符
号化されたデータを引き出すステップと、上記符号化さ
れたデータを復号して、復号されたデータを引き出すス
テップ(201)と、上記復号されたデータの中の個々の点
を直線で結ぶステップ(204)と、を含む上記伸長する方
法。
に、上記復号されたデータ内の曲率の高い点にある尖点
(703)を識別するステップと、上記尖点(703)の間の上記
復号されたデータに沿った点のそれぞれの対の間に補間
点を導くステップ(203)と、を含む上記(5)に従う方法。
見つけるために、スプライン平滑化(方程式3)を使用す
るステップを含む、上記(6)に従う方法。 (8)尖点は、その出口セグメントが、入口セグメント
に対して鈍角をなす点である、上記(6)または(7)に従う
方法。
と、上記(1)ないし(8)のいずれかの方法に従って上記手
書き入力を圧縮する手段と、を備えるコンピューティン
グ装置。
で、読みやすさを損なうことなく、手書きデータを圧縮
することができる。
算を示す高水準フローチャート。
ト。
す図。
手書きの文字を示す図。
を示す図。
6ミリインチの場合の多角形サンプリングの結果を示す
図。図6bは、図5の手書きの単語の、τ=5およびd=112
ミリインチの場合の多角形サンプリングの結果を示す
図。
の第1の繰り返しを示す図。図7bは、線セグメント上の
多角形サンプリングの第2の繰り返しを示す図。
算を示す高水準フローチャート。
きの文字の例を示す図。
く手書きの単語の最高レベルの圧縮を使用した結果を示
す図。図11bは、1セグメントあたり補間の1点をもつ
図11aの結果を示す図。図11cは、1セグメントあたり補
間の3点をもつ図11aの結果を示す図。
レベルにおける空間の節減の分配を示す図。
ともに、好ましい実施例を手書きの単語に使用する結果
を示す図。
Claims (1)
- 【請求項1】手書きのデジタル表現のサイズを圧縮する
方法であって、 上記デジタル表現の中の局部的な極値を検出して、上記
手書きの曲率の高い領域にある節点を検出するステップ
と、 上記デジタル表現を、上記節点に基づいて多角形近似に
よってリサンプリングし、リサンプリングされたデータ
を生成するステップと、を含む上記方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB9625661.5 | 1996-12-11 | ||
GBGB9625661.5A GB9625661D0 (en) | 1996-12-11 | 1996-12-11 | A method and apparatus for compression of electronic ink |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH10247240A true JPH10247240A (ja) | 1998-09-14 |
JP3091719B2 JP3091719B2 (ja) | 2000-09-25 |
Family
ID=10804251
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP09338717A Expired - Fee Related JP3091719B2 (ja) | 1996-12-11 | 1997-12-09 | 手書きのデジタル表現のサイズを圧縮する方法および装置 |
Country Status (5)
Country | Link |
---|---|
EP (1) | EP0848350B1 (ja) |
JP (1) | JP3091719B2 (ja) |
CN (1) | CN1134895C (ja) |
DE (1) | DE69727545T2 (ja) |
GB (1) | GB9625661D0 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100443694B1 (ko) * | 2001-12-24 | 2004-08-09 | 주식회사 디오텍 | 전자 잉크 데이터 형성 방법 및 이를 이용한 데이터 통신방법 |
JP2009289295A (ja) * | 2009-09-10 | 2009-12-10 | Canon Inc | 画像抽出方法及び装置 |
JP2016076233A (ja) * | 2013-10-25 | 2016-05-12 | 株式会社ワコム | 動的手書き検証、手書きに基づくユーザ認証、手書きデータ生成、及び手書きデータ保存 |
US10496872B2 (en) | 2013-10-25 | 2019-12-03 | Wacom Co., Ltd. | Dynamic handwriting verification, handwriting-based user authentication, handwriting data generation, and handwriting data preservation |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2002333062B2 (en) * | 2001-11-16 | 2007-01-04 | Silverbrook Research Pty Ltd | Method of compressing digital ink |
AUPR890201A0 (en) | 2001-11-16 | 2001-12-06 | Silverbrook Research Pty. Ltd. | Methods and systems (npw005) |
US7162087B2 (en) | 2001-12-28 | 2007-01-09 | Anoto Ab | Method and apparatus for recording of electronic handwriting |
SE520762C2 (sv) * | 2001-12-28 | 2003-08-19 | Anoto Ab | Metod och anordning för registrering av elektronisk handskrift |
US10338807B2 (en) | 2016-02-23 | 2019-07-02 | Microsoft Technology Licensing, Llc | Adaptive ink prediction |
WO2020030488A1 (en) * | 2018-08-07 | 2020-02-13 | Signify Holding B.V. | Compressive sensing systems and methods using edge nodes of distributed computing networks |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4020463A (en) * | 1976-02-27 | 1977-04-26 | Recognition Equipment Incorporated | Apparatus and a method for storage and retrieval of image patterns |
JPS6282486A (ja) * | 1985-10-08 | 1987-04-15 | Hitachi Ltd | オンライン手書き図形認識装置 |
JP2774653B2 (ja) * | 1990-03-14 | 1998-07-09 | キヤノン株式会社 | 文字処理装置 |
US5285506A (en) * | 1991-04-30 | 1994-02-08 | Ncr Corporation | Method of recording a handwritten message |
WO1994003853A1 (en) * | 1992-07-29 | 1994-02-17 | Communication Intelligence Corporation | A method and apparatus for compression of electronic ink |
US5623555A (en) * | 1994-04-18 | 1997-04-22 | Lucent Technologies Inc. | Method and apparatus for handwriting decompression using estimated timing information |
DE19531392C1 (de) * | 1995-08-26 | 1997-01-23 | Aeg Electrocom Gmbh | Verfahren zur Erzeugung einer Graphrepräsentation von Bildvorlagen |
-
1996
- 1996-12-11 GB GBGB9625661.5A patent/GB9625661D0/en active Pending
-
1997
- 1997-11-06 DE DE69727545T patent/DE69727545T2/de not_active Expired - Lifetime
- 1997-11-06 EP EP97308908A patent/EP0848350B1/en not_active Expired - Lifetime
- 1997-12-09 JP JP09338717A patent/JP3091719B2/ja not_active Expired - Fee Related
- 1997-12-11 CN CNB971260583A patent/CN1134895C/zh not_active Expired - Fee Related
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100443694B1 (ko) * | 2001-12-24 | 2004-08-09 | 주식회사 디오텍 | 전자 잉크 데이터 형성 방법 및 이를 이용한 데이터 통신방법 |
JP2009289295A (ja) * | 2009-09-10 | 2009-12-10 | Canon Inc | 画像抽出方法及び装置 |
JP2016076233A (ja) * | 2013-10-25 | 2016-05-12 | 株式会社ワコム | 動的手書き検証、手書きに基づくユーザ認証、手書きデータ生成、及び手書きデータ保存 |
US10496872B2 (en) | 2013-10-25 | 2019-12-03 | Wacom Co., Ltd. | Dynamic handwriting verification, handwriting-based user authentication, handwriting data generation, and handwriting data preservation |
US10846510B2 (en) | 2013-10-25 | 2020-11-24 | Wacom Co., Ltd. | Dynamic handwriting verification, handwriting-based user authentication, handwriting data generation, and handwriting data preservation |
Also Published As
Publication number | Publication date |
---|---|
CN1185060A (zh) | 1998-06-17 |
EP0848350A1 (en) | 1998-06-17 |
JP3091719B2 (ja) | 2000-09-25 |
CN1134895C (zh) | 2004-01-14 |
GB9625661D0 (en) | 1997-01-29 |
DE69727545D1 (de) | 2004-03-18 |
EP0848350B1 (en) | 2004-02-11 |
DE69727545T2 (de) | 2004-12-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6101280A (en) | Method and apparatus for compression of electronic ink | |
US5473742A (en) | Method and apparatus for representing image data using polynomial approximation method and iterative transformation-reparametrization technique | |
AU632333B2 (en) | Method and apparatus for processing digital data | |
US6879727B2 (en) | Decoding bit-plane-encoded data using different image quality for display | |
JP3091719B2 (ja) | 手書きのデジタル表現のサイズを圧縮する方法および装置 | |
WO1996031975A1 (en) | Method and system for representing a data set with a data transforming function and data mask | |
JP3038143B2 (ja) | 映像機器の物体別形状情報の減縮装置及びその減縮方法並びに多角近似化方法 | |
JP2008054325A (ja) | 複合文書の圧縮のためのデータ充填手法 | |
US7302106B2 (en) | System and method for ink or handwriting compression | |
US7274826B2 (en) | Image information compressing method, image information compressing device and image information compressing program | |
US7437003B1 (en) | System and method for handling electronic ink | |
EP1229738B1 (en) | Image decompression from transform coefficients | |
US5881183A (en) | Method and device for encoding object contour by using centroid | |
WO1994003853A1 (en) | A method and apparatus for compression of electronic ink | |
US5623555A (en) | Method and apparatus for handwriting decompression using estimated timing information | |
DeRose et al. | Wavelets for computer graphics: A primer part 1 y | |
JPH081553B2 (ja) | 画像データの圧縮方式 | |
JPH08130652A (ja) | 2次元画像データの圧縮方式および伸長方式 | |
US8681156B2 (en) | Systems and methods for interactive vectorization | |
US5974187A (en) | Baseline-based contour coding and decoding method and apparatus therefor | |
CN117333559A (zh) | 图像压缩方法、装置、电子设备及存储介质 | |
KR100728918B1 (ko) | 이진영상을 고속 압축하는 방법 및 장치, 이진영상을 고속 복원하는 방법 및 장치, 이진영상을 고속 압축 및 복원하는 시스템 그리고 그 방법 | |
JP3279324B2 (ja) | データフィールド画像圧縮方法 | |
He et al. | How Can Spiral Architecture Improve Image Compression? | |
JP2732691B2 (ja) | 画像圧縮装置および画像復元装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080721 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090721 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100721 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110721 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110721 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120721 Year of fee payment: 12 |
|
LAPS | Cancellation because of no payment of annual fees |