JP2016500873A - スケッチからの画像 - Google Patents

スケッチからの画像 Download PDF

Info

Publication number
JP2016500873A
JP2016500873A JP2015536994A JP2015536994A JP2016500873A JP 2016500873 A JP2016500873 A JP 2016500873A JP 2015536994 A JP2015536994 A JP 2015536994A JP 2015536994 A JP2015536994 A JP 2015536994A JP 2016500873 A JP2016500873 A JP 2016500873A
Authority
JP
Japan
Prior art keywords
sketch
image
text
query
graphical
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
Application number
JP2015536994A
Other languages
English (en)
Other versions
JP6436909B2 (ja
Inventor
アルブレヒト,ブライアン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2016500873A publication Critical patent/JP2016500873A/ja
Application granted granted Critical
Publication of JP6436909B2 publication Critical patent/JP6436909B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3667Display of a road map
    • G01C21/367Details, e.g. road map scale, orientation, zooming, illumination, level of detail, scrolling of road map or positioning of current position marker
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/206Drawing of charts or graphs
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/53Querying
    • G06F16/532Query formulation, e.g. graphical querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/954Navigation, e.g. using categorised browsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Automation & Control Theory (AREA)
  • Mathematical Physics (AREA)
  • Architecture (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】所望のグラフィックスのスケッチを受け取って分析する。【解決手段】 グラフィカルスケッチを受け取ることができ、そのスケッチは、テキストの1つまたは複数の表示を含む。そのスケッチからクエリーを自動的に生成することができる。クエリーの生成は、テキストを自動的に認識すること、およびそのテキストをクエリー内に自動的に表すことを含むことができる。クエリーを実行して、そのクエリーに応答した画像を識別することができ、テキストは、その画像の1つまたは複数の非テキスト特徴について記述する。グラフィカルスケッチの受け取りなどに応答して、その画像を返すことができる。【選択図】図1

Description

[0001] コンピュータユーザにとって、画像、地図、またはグラフなどのグラフィックスを入力することは、典型的には、所望のグラフィックスを探し出すまたは生成するために、標準的な方法で検索語などのテキストを入力すること、情報を参照すること、選択を行うこと、および場合によってはこれらの行為のうちの1つまたは複数を繰り返すことによって行われている。たとえば、テキストは、実際のキーボードまたは仮想キーボード(たとえば、タッチスクリーン上に表示されているキーボード)を用いて、さまざまなダイアログ、メニューなどの上で選択を行うことを伴って入力することができる。次いで、それらの選択を使用して、所望のグラフィックスを生成することおよび/または取り出すことが可能である。
[0002] 上述のテキストおよび選択の技術のみを使用してグラフィックスを入手することは、煩雑で限界がある可能性がある。これは、完全に機能する現実のキーボードを有していないことがあるタブレットコンピュータおよびモバイル電話などのいくつかのモバイルデバイスを使用している場合に特に当てはまり得る。所望のグラフィックスのスケッチを受け取って分析することは、コンピューティングデバイスにおいてそのようなグラフィックスを検索する際に役立つことがあるということがわかっている(もちろん、本明細書において説明されているようなスケッチを使用しても、ユーザが探している正確なグラフィックスをすべての状況においてユーザが得ることになるとは保証されないが)。たとえば、スケッチは、フリーハンドのスケッチであることが可能であり(それらは、完全にフリーハンドである場合、または部分的にフリーハンドである場合があり)、それらは、たとえば、スタイラスもしくは指を入力用に用いたタッチセンシティブスクリーン、および/またはその他の入力メカニズムを使用することによって、入力することができる。スケッチは、それらのスケッチを使用して入手されることになるグラフィックスに関する情報を伝達するために使用することができるテキストの表示(注釈)および/または純粋にグラフィカルな要素を含むことができる。スケッチを分析することができ、結果として得られる情報を使用して、所望のグラフィックスを入手することができる。
[0003] 一実施形態においては、本ツールおよび技術は、グラフィカルスケッチを受け取ること(そのようなスケッチをコンピューティングデバイスにおけるユーザ入力から受け取ること、またはそのようなスケッチを、そのスケッチがユーザ入力として提供された別のコンピューティング環境から受け取ることなど)を含むことができ、そのスケッチは、テキストの1つまたは複数の表示を含む。そのスケッチからクエリーを自動的に生成することができる。クエリーの生成は、テキストを自動的に認識すること、およびそのテキストをクエリー内に自動的に表すことを含むことができる。クエリーを実行して、そのクエリーに応答した画像を識別することができ、テキストは、その画像の1つまたは複数の非テキスト特徴について記述する。グラフィカルスケッチの受け取りなどに応答して、その画像を返すことができる。
[0004] 本ツールおよび技術の別の実施形態においては、テキストの1つまたは複数のスケッチされた表示を含むグラフィカルスケッチを受け取ることができる。要求を画像サービスに送信することができ、その要求は、スケッチによって表されている画像を画像サービスが返すことを要求する。画像を画像サービスから受け取ることができ、その画像は、スケッチにおいて表されているテキストによって記述されている1つまたは複数の非テキスト特徴を含む。加えて、その画像を表示することができる。
[0005] この「発明の概要」は、コンセプトのうちの抜粋したものを、簡略化された形式で紹介するために提供されている。それらのコンセプトは、以降の「発明を実施するための形態」においてさらに説明されている。この「発明の概要」は、特許請求される主題の鍵となる特徴または必要不可欠な特徴を特定することを意図されておらず、特許請求される主題の範囲を限定するために使用されることも意図されていない。同様に、本発明は、「背景技術」、「発明を実施するための形態」、または添付の図面において論じられている特定の技術、ツール、環境、不利な点、または利点に対処する実施態様に限定されるものではない。
[0006]説明されている実施形態のうちの1つまたは複数を実施することができる適切なコンピューティング環境のブロック図である。 [0007]スケッチベースのグラフィックス取り出しシステムの概略図である。 [0008]スケッチを表示しているユーザデバイスを示す図である。 [0009]図3のスケッチを使用して取り出された画像を表示している図3のユーザデバイスを示す図である。 [0010]図3のスケッチを使用して取り出された選択された画像を表示している図3のユーザデバイスを示す図である。 [0011]別のスケッチを表示している図3のユーザデバイスを示す図である。 [0012]図6のスケッチを使用して取り出された地図および道案内を表示している図6のユーザデバイスを示す図である。 [0013]別のスケッチを表示している図3のユーザデバイスを示す図である。 [0014]図8のスケッチを使用して取り出されたグラフを表示している図8のユーザデバイスを示す図である。 [0015]スケッチベースのグラフィックス取り出し技術のフローチャートである。 [0016]別のスケッチベースのグラフィックス取り出し技術のフローチャートである。 [0017]さらに別のスケッチベースのグラフィックス取り出し技術のフローチャートである。 [0018]さらに別のスケッチベースのグラフィックス取り出し技術のフローチャートである。 [0019]さらに別のスケッチベースのグラフィックス取り出し技術のフローチャートである。 [0020]さらに別のスケッチベースのグラフィックス取り出し技術のフローチャートである。 [0021]さらに別のスケッチベースのグラフィックス取り出し技術のフローチャートである。 [0022]さらに別のスケッチベースのグラフィックス取り出し技術のフローチャートである。 [0023]さらに別のスケッチベースのグラフィックス取り出し技術のフローチャートである。
[0024] 本明細書において説明されている実施形態は、改善されたスケッチベースのグラフィックス取り出し(すなわち、スケッチからの情報を使用してグラフィックスを生成することおよび/または取り出すこと)のための技術およびツールを対象としている。そのような改善は、さまざまな技術およびツールを個別にまたは組み合わせて使用する結果として生じることが可能である。
[0025] そのような技術およびツールは、スケッチを受け取ること、およびそのスケッチを使用して、画像、グラフ、または地図などの1つまたは複数のグラフィックスを入手することを含むことができる。スケッチは、グラフィカル要素と、テキストの表示とを含むことができ、それらは両方とも、グラフィックスを取り出す際に使用することができる。たとえば、そのようなスケッチを使用して、画像に関するクエリーを自動的に生成することができる。そのクエリーを画像サービスに送信することができ、画像サービスは、グラフィカル要素のうちの1つまたは複数を反映する画像を返すことができ、その画像は、たとえテキストそのものを含んでいないとしても、テキストによって示されているグラフィカル要素を有している。たとえば、スケッチは、シカの大まかなフリーハンドのスケッチである場合があり、「シカ」というテキストの表示を有する(フリーハンドでスケッチされているテキスト、または打ち込まれたテキストとして入力されているテキストを伴ってなど)場合がある。そのようなスケッチを使用して、「シカ」という用語に関連付けられているメタデータタグを有していて、かつそのスケッチに類似したグラフィカル特徴を有している画像に関するクエリーを構築することができる。たとえば、シカのスケッチが側面図である場合には、クエリーは、側面図が要求されているということを示すことができ、検索されている画像に関する検索インデックス等などのメタデータタグは、その画像が側面図であるか、正面図であるか、後面斜視図であるか、正面斜視図であるか、といったことを示すことができる。代替として、検索結果を返すことができ、次いでそれらの検索結果をスケッチの特徴と比較して、返された画像がそれぞれスケッチとどの程度よく相関しているかを特定することができる。
[0026] 別の例として、受け取られるスケッチは、地図のスケッチである場合がある。たとえば、そのスケッチは、ストリートを表すライン、ランドマークのスケッチされたグラフィックス、ストリート名を表すテキスト、ランドマーク表すテキストなどを示すことがある。そのスケッチは、2つのロケーションの間における強調表示されたルートを含む場合もある。そのスケッチを使用して、地図を取り出すことができる。たとえば、そのスケッチを要求内に含めて地図サービスにサブミットすることができる。地図サービスは、そのスケッチを地図領域にマッチさせるために、パターンマッチング技術を実行することによってなど、そのスケッチのグラフィックスおよびテキストの表示を分析することができる。これは、地図サービスによって作成された地図によって表されている地理的なロケーションと、スケッチされたランドマーク表示(特定の建物、湖などの描画)をマッチさせること、ストリートをマッチさせること(これは、スケッチにおいて提供されているストリートの名前を表すストリート名をマッチさせることを含むことができる)などを含むことができる。次いで地図サービスは、スケッチにおいて示されている特徴に対する高い相関関係を有する地図領域を示す地図を返すことができる。その地図は、スケッチにおいて表されているランドマークを、たとえそのようなランドマークが通常はそのような地図において示されていなくても、示すことができる。たとえば、スケッチが、BroadwayとMainとの角にある「Joe’s Taco Shop」を示している場合には、たとえマッピングサービスが、同じ領域の一般的な地図上にその会社をランドマークとして示さないことが典型的であるとしても、Joe’s Taco Shopを表すランドマークを示すことができる。地図サービスは、自分がスケッチから受け取る情報に基づいて自分の詳細さのレベルを改善することができる。たとえば、地図サービスは、自分のメイン地図上のレイヤ内になど、自分のデータに「Joe’s Taco Shop」を加えることができる。そして、この新たな情報を、その後のクエリーに応答する際に使用して、場合によっては、地図領域およびロケーションを識別する上で役立てること、および/または地図サービスがその後のクエリーに応答するときにさらなるコンテンツを提供することが可能である。返された地図は、スケッチにおいて表されていたルートを示すこともできる。加えて、その地図は、そのルートに近づくほど、より多くの詳細を、およびそのルートから遠ざかるほど、より少ない詳細を含むことができる。より多くの詳細およびより少ない詳細というこの特徴は、ルートを示す地図において、たとえその地図がスケッチに応答して返されていなくても、役立つ場合があるということに留意されたい。また、返される地図に加えて、(たとえば、道案内のリストを提供することによって、および/または道案内を発音させることによって)道案内を返して提示することもできる。
[0027] さらに別の例として、グラフのスケッチを提供することができる。たとえば、そのようなスケッチは、グラフィカルなグラフ特徴(軸、棒グラフを表す棒、列グラフを表す列、折れ線グラフを表す線、円グラフを表す円セクションなど)、ラベル、付記、強調表示、タイトル、数値等などのグラフ特徴のスケッチされた表示を含むことができる。そのようなスケッチからグラフを生成することができる。加えて、グラフの基礎をなすデータセットをスケッチから生成することもできる。グラフは、スケッチ上に表されているグラフ特徴を含むことができる。加えて、データセットは、グラフの特徴と整合しているデータのセットであることが可能である。たとえば、データセット内のいくつかの値は、スケッチ内のテキスト表示において表されている値であることが可能である。その他の値は、スケッチから導出される新たな値であることが可能である。たとえば、スケッチ上のテキスト表示からの値、相対的なサイズ、および/またはスケッチ上のグラフィカル特徴のロケーションなどを使用して、内挿技術および/または外挿技術を用いて値を導出することができる。グラフおよびデータセットは、スプレッドシートアプリケーションユーザインターフェース内などに表示することができる。また、表示されるグラフおよびデータセットは、インタラクティブであることが可能であり、それらは、リンクされていることが可能である。たとえば、データセットに対して変更を行うためにユーザ入力を提供することができ、また、そのような変更をグラフに対して自動的に(場合によっては、データセットをマッチさせるためにグラフを更新するためのユーザによる確認の後に)行うことができる。加えて、変更をグラフ上にスケッチすることができる。たとえば、さらなる付記をグラフに加えるために、グラフ上にスケッチを提供することができる。
[0028] 理解できるであろうが、画像、地図、およびグラフなどのグラフィックスを生み出すためにユーザ入力を提供することをより便利にすることなど、1つまたは複数の多大な利点を、本明細書において説明されているツールおよび技術から実現することができる。しかしながら、添付の特許請求の範囲において定義されている主題は、本明細書において説明されている利点に必ずしも限定されるものではない。本発明の特定の実施態様は、本明細書において説明されている利点のうち、すべてを提供すること、いくつかを提供すること、またはいずれも提供しないことが可能である。本明細書においては、さまざまな技術に関するオペレーションどうしが、提示の便宜上、特定の連続した順序で説明されているが、この様式の説明は、特定の順序が必要とされない限り、オペレーションどうしの順序における並べ替えを含むということを理解されたい。たとえば、連続して説明されているオペレーションどうしは、いくつかのケースにおいては、並べ替えること、または同時に実行することが可能である。その上、説明を簡潔にするために、フローチャートは、特定の技術をその他の技術と組み合わせて使用することができるさまざまなやり方を示していない場合がある。
[0029] 本明細書において説明されている技術は、本明細書において説明されているシステムのうちの1つもしくは複数とともに、および/または1つもしくは複数のその他のシステムとともに使用することができる。たとえば、本明細書において説明されているさまざまな手順は、ハードウェア、またはソフトウェア、またはそれら両方の組合せを用いて実施することができる。たとえば、本明細書において説明されている技術のうちの1つまたは複数の少なくとも一部分を実施するために、専用のハードウェアロジックコンポーネントを構築することができる。限定ではなく、例として、そのようなハードウェアロジックコンポーネントとしては、フィールドプログラマブルゲートアレイ(FPGA)、プログラム固有集積回路(ASIC)、プログラム固有標準製品(ASSP)、システムオンアチップシステム(SOC)、結合プログラム可能論理回路(CPLD)などを含むことができる。さまざまな実施形態の装置およびシステムを含むことができるアプリケーションは、さまざまな電子システムおよびコンピュータシステムを広く含むことができる。モジュールどうしの間において、およびモジュールどうしを通じて通信することができる関連したコントロール信号およびデータ信号とともに複数の特定の相互接続されたハードウェアモジュールもしくはデバイスを使用して、または特定用途向け集積回路の一部として、技術を実施することができる。加えて、本明細書において説明されている技術は、コンピュータシステムによって実行可能なソフトウェアプログラムによって実施することができる。一例として、実施態様は、分散処理、コンポーネント/オブジェクト分散処理、および並列処理を含むことができる。その上、本明細書において説明されている技術または機能のうちの1つまたは複数を実施するための仮想コンピュータシステム処理を構築することができる。
I.例示的なコンピューティング環境
[0030] 図1は、説明されている実施形態のうちの1つまたは複数を実施することができる適切なコンピューティング環境(100)の一般化された例を示している。たとえば、1つまたは複数のそのようなコンピューティング環境は、スケッチ入力環境および/またはグラフィックスサービス環境として使用することができる。一般に、さまざまな異なる汎用または専用のコンピューティングシステム構成を使用することができる。本明細書において説明されているツールおよび技術とともに使用するのに適している可能性のあるよく知られているコンピューティングシステム構成の例は、サーバファームおよびサーバクラスタ、パーソナルコンピュータ、サーバコンピュータ、スマートフォン、ラップトップデバイス、スレートデバイス、ゲームコンソール、マルチプロセッサシステム、マイクロプロセッサベースのシステム、プログラム可能な家庭用電化製品、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、上記のシステムまたはデバイスのうちのいずれかを含む分散コンピューティング環境などを含むが、それらには限定されない。
[0031] コンピューティング環境(100)は、本発明の使用または機能の範囲に関して何らかの限定を提示することを意図されているものではない。なぜなら、本発明は、多様な汎用または専用のコンピューティング環境において実施することができるためである。
[0032] 図1を参照すると、コンピューティング環境(100)は、少なくとも1つの処理ユニットまたはプロセッサ(110)と、メモリ(120)とを含む。図1においては、この最も基本的な構成(130)は、破線内に含まれている。処理ユニット(110)は、コンピュータ実行可能命令を実行し、実際のまたは仮想のプロセッサであることが可能である。マルチプロセッシングシステムにおいては、処理能力を高めるために、複数の処理ユニットが、コンピュータ実行可能命令を実行する。メモリ(120)は、揮発性メモリ(たとえば、レジスタ、キャッシュ、RAM)、不揮発性メモリ(たとえば、ROM、EEPROM、フラッシュメモリ)、またはそれら2つの何らかの組合せであることが可能である。メモリ(120)は、スケッチベースのグラフィックス取り出しを実施するソフトウェア(180)を格納する。スケッチベースのグラフィックス取り出しの一実施態様は、プロセッサ(110)およびメモリ(120)のアクティビティーのうちのすべてまたは一部が、ソフトウェア(180)の代替として、またはソフトウェア(180)に加えてハードウェアロジックにおいて具体化されることを伴うことができる。
[0033] 図1のさまざまなブロックは、明確にするために実線で示されているが、実際には、さまざまなコンポーネントを線引きすることは、さほど明確ではなく、比喩的に言えば、図1および以降で論じられているその他の図の実線は、より正確にはグレーで不鮮明なものになる。たとえば、ディスプレイデバイスなどの提示コンポーネントを、(たとえば、そのディスプレイデバイスがタッチスクリーンを含む場合には)I/Oコンポーネントであるとみなすことができる。また、プロセッサは、メモリを有する。本発明の発明者らは、そのようなことが当技術分野の性質であるということを認識しており、図1の図解は、本発明の1つまたは複数の実施形態に関連して使用することができる例示的なコンピューティングデバイスを例示しているにすぎないということを繰り返し申し述べる。「ワークステーション」、「サーバ」、「ラップトップ」、「ハンドヘルドデバイス」等などのカテゴリーどうしの間における区別は行われない。なぜなら、それらはすべて、図1、および「コンピュータ」、「コンピューティング環境」、または「コンピューティングデバイス」への言及の範囲内と考えられるためである。
[0034] コンピューティング環境(100)は、さらなる特徴を有することができる。図1においては、コンピューティング環境(100)は、ストレージ(140)、1つまたは複数の入力デバイス(150)、1つまたは複数の出力デバイス(160)、および1つまたは複数の通信接続(170)を含む。バス、コントローラ、またはネットワークなどの相互接続メカニズム(図示せず)が、コンピューティング環境(100)のコンポーネントどうしを相互接続する。典型的には、オペレーティングシステムソフトウェア(図示せず)が、コンピューティング環境(100)において実行されるその他のソフトウェアのためのオペレーティング環境を提供し、コンピューティング環境(100)のコンポーネントどうしのアクティビティーをコーディネートする。
[0035] ストレージ(140)は、取り外し可能または取り外し不能とすることができ、フラッシュドライブ、磁気ディスク、磁気テープもしくはカセット、CD−ROM、CD−RW、DVD、または、情報を格納するために使用することが可能な、およびコンピューティング環境(100)内でアクセスすることが可能なその他の任意のメディア等のコンピュータ可読ストレージメディアを含むことができる。ストレージ(140)は、ソフトウェア(180)のための命令を格納する。
[0036] 入力デバイス(150)は、さまざまな異なる入力デバイスのうちの1つまたは複数であることが可能である。たとえば、入力デバイス(150)は、マウス、キーボード、トラックボール等などのユーザデバイスを含むことができる。入力デバイス(150)は、話声認識、タッチおよびスタイラス認識、入力デバイス(150)と接触しての、および入力デバイス(150)の付近でのジェスチャーの認識、エアジェスチャーの認識、ヘッドトラッキングおよびアイトラッキング、音声および話声認識、ユーザの脳の活動を感知すること(たとえば、EEGおよび関連した方法を使用すること)、ならびにマシンインテリジェンス(たとえば、ユーザの意図および目的を理解するためにマシンインテリジェンスを使用すること)など、1つまたは複数のナチュラルユーザインターフェース技術を実施することができる。その他の例としては、入力デバイス(150)は、スキャニングデバイス、ネットワークアダプタ、CD/DVDリーダ、または、コンピューティング環境(100)に入力を提供する別のデバイスを含むことができる。出力デバイス(160)は、ディスプレイ、プリンタ、スピーカー、CD/DVDライタ、ネットワークアダプタ、または、コンピューティング環境(100)からの出力を提供する別のデバイスであることが可能である。入力デバイス(150)および出力デバイス(160)は、タッチスクリーンまたは仮想現実システムなど、単一のシステムまたはデバイス内に組み込むことができる。
[0037] 通信接続(170)は、通信メディアを介した別のコンピューティングエンティティーへの通信を可能にする。加えて、コンピューティング環境(100)のコンポーネントの機能は、単一のコンピューティングマシンにおいて、または通信接続を介して通信することができる複数のコンピューティングマシンにおいて実施することができる。したがって、コンピューティング環境(100)は、ハンドヘルドコンピューティングデバイス、パーソナルコンピュータ、サーバ、ルータ、ネットワークPC、ピアデバイス、または別の一般的なネットワークノードなど、1つまたは複数のリモートコンピューティングデバイスへの論理接続を使用して、ネットワーク化された環境において機能することができる。通信メディアは、データまたはコンピュータ実行可能命令もしくは要求などの情報を、変調されたデータ信号で搬送する。変調されたデータ信号とは、その信号の特性のうちの1つまたは複数が、その信号内で情報をエンコードするような様式で設定または変更されている信号である。限定ではなく、例として、通信メディアは、電気キャリア、光キャリア、RFキャリア、赤外線キャリア、音響キャリア、またはその他のキャリアを用いて実施される有線またはワイヤレスの技術を含む。
[0038] 本ツールおよび技術については、ストレージメディアまたは通信メディアであることが可能であるコンピュータ可読メディアという一般的なコンテキストにおいて説明することができる。コンピュータ可読ストレージメディアは、コンピューティング環境内でアクセスすることができる任意の利用可能なストレージメディアであるが、コンピュータ可読ストレージメディアという用語は、伝搬される信号自体を意味しない。限定ではなく、例として、コンピューティング環境(100)については、コンピュータ可読ストレージメディアは、メモリ(120)、ストレージ(140)、およびそれらの組合せを含む。
[0039] 本ツールおよび技術については、ターゲットである実際のまたは仮想のプロセッサ上のコンピューティング環境において実行されるプログラムモジュール内に含まれているコンピュータ実行可能命令などのコンピュータ実行可能命令という一般的なコンテキストにおいて説明することができる。一般に、プログラムモジュールは、特定のタスクを実行するかまたは特定の抽象データ型を実施するルーチン、プログラム、ライブラリ、オブジェクト、クラス、コンポーネント、データ構造などを含む。プログラムモジュールどうしの機能は、さまざまな実施形態において要望に応じてプログラムモジュールどうしの間において結合または分割することができる。プログラムモジュールのためのコンピュータ実行可能命令は、ローカルのまたは分散されたコンピューティング環境内で実行することができる。分散コンピューティング環境においては、プログラムモジュールは、ローカルおよびリモートの両方のコンピュータストレージメディア内に配置することができる。
[0040] 提示の目的で、詳細な説明は、コンピューティング環境におけるコンピュータオペレーションを記述するために、「特定する」、「受け取る」、「送信する」、「生成する」、および「表示する」といった用語を使用している。これらおよびその他の類似の用語は、コンピュータによって実行されるオペレーションを表すハイレベルな抽象概念であり、人間(「ユーザ」など)による行為の実行が明示的に言及されていない限り、人間によって実行される行為と混同されるべきではない。これらの用語に対応する実際のコンピュータオペレーションは、実施態様に応じてさまざまである。
II.スケッチベースのグラフィックス取り出しシステムおよび環境
[0041] 図2は、スケッチベースのグラフィックス取り出しシステム(200)の概略図であり、そのスケッチベースのグラフィックス取り出しシステム(200)に関連して、説明されている実施形態のうちの1つまたは複数を実施することができる。システム(200)は、スケッチ入力環境(210)およびグラフィックスサービス環境(220)を含むことができる。
[0042] スケッチ入力環境(210)は、スケッチ受け取りコンポーネント(230)を含むことができ、スケッチ受け取りコンポーネント(230)は、スケッチを受け取ることができる。たとえば、スケッチ受け取りコンポーネント(230)は、スケッチを定義するユーザ入力を受け取るための1つまたは複数の入力デバイス(タッチスクリーンなど)、ならびにその入力を処理してスケッチを使用可能な形式にフォーマットするためのソフトウェアおよび/またはハードウェアコンポーネントを含むことができる。たとえば、スケッチ受け取りコンポーネント(230)は、グラフィックスフォーマット(たとえば、ビットマップイメージ、JPEGイメージなど)でのグラフィックスファイルの形式でスケッチ(242)を作成することができる。スケッチ受け取りコンポーネント(230)は、スケッチ(242)をグラフィックス要求コンポーネント(240)へ送信することができる。グラフィックス要求コンポーネント(240)は、スケッチ(242)を使用して、グラフィックスサービス環境(220)においてホストすることができるグラフィックスサービス(250)(たとえば、画像サービス、グラフサービス、および/または地図サービス)へ送信することができる要求(244)(たとえば、グラフィックスサービスクエリー)を作成することができる。たとえば、グラフィックス要求コンポーネント(240)は、スケッチ(242)を分析して、グラフィックスクエリー(グラフィックスサービス(250)を求める命令を含むことができる)を作成することができ、要求(244)は、そのグラフィックスクエリーを含むことができる。あるいは、グラフィックス要求コンポーネント(240)は、スケッチ(242)を分析しないことが可能であり、その一方で、スケッチ(242)を要求(244)内に含めることができ、それによって、グラフィックスサービス(250)がスケッチ(242)を分析することができる。さらに別の選択肢として、グラフィックス要求コンポーネント(240)は、スケッチを分析してクエリーを作成することができ、スケッチおよびクエリーを、グラフィックスサービスに対する要求(244)内に含めることができる。
[0043] グラフィックスサービスは、要求(244)を分析して、グラフィックス応答(252)を選択および/または生成することができる。グラフィックス応答(252)は、要求されているグラフィックスを含むことができる。グラフィックス応答(252)は、単一のグラフィックスおよび/または複数のグラフィックスを含むことができる。たとえば、要求(244)が、スケッチ(242)によって示されている画像を求める要求である場合には、グラフィックス応答(252)は、複数の画像を含むことができ、スケッチ入力環境(210)においてユーザ入力が提供されて、それらの画像のうちの1つまたは複数を選択することが可能である。別の例として、要求(244)は、スケッチ(242)によって示されているグラフを求める要求である場合があり、グラフィックス応答(252)は、スケッチ(242)から生成された単一のグラフを含むことができる。その例においては、グラフィックス応答(252)は、生成されたグラフの基礎をなすデータセットなど、その他の関連した情報を含むこともできる。
[0044] あるいは、スケッチベースのグラフィックス取り出しシステム(200)のサービス/コンポーネントは、図2の例において示されているものとは異なってアレンジすることができる。たとえば、グラフィックスサービス(250)のすべてまたは一部が、スケッチ入力環境(210)内に存在することが可能である。たとえば、スケッチ入力環境(210)は、タブレットコンピュータであることが可能であり、そのタブレットコンピュータは、本明細書において論じられているすべてのスケッチ受け取りおよびグラフィックスサービスアクションを実行することができる。あるいは、グラフィックスサービス(250)は、リモートウェブサービスなど、スケッチ入力環境(210)からリモートにあるサービスであることが可能である。
III.スケッチからのグラフィックスの例
[0045] 次いで図3〜図9における例示的なユーザインターフェース表示を参照しながら、スケッチからグラフィックスを生成することおよび/または取り出すことの例について論じる。そのようなユーザインターフェース表示は、1つまたは複数のオフィス生産性アプリケーションユーザインターフェース(スプレッドシートアプリケーション、ワードプロセッシングアプリケーション、スライドプレゼンテーションアプリケーションなど)、ウェブブラウザインターフェース、専用の「スケッチからグラフィックスへ」のアプリケーションインターフェース、一般的なオペレーティングシステムインターフェース等の一部など、さまざまな異なるユーザインターフェース環境内にあることが可能である。示されているユーザインターフェースは、論じられている「スケッチからグラフィックスへ」の機能を選択するユーザ入力によって先導することができる。たとえば、ユーザは、「スケッチから画像へ」を求めるユーザインターフェースコントロールを選択し、次いで、対応する画像を入手する際に使用されることになるスケッチを入力することができる。別の例として、ユーザは、スケッチを入力し、次いで「スケッチから画像へ」、「スケッチから地図へ」、または「スケッチからグラフへ」などのさまざまなオプションのうちの1つを選択することができる。さらに別の例として、ユーザは、スケッチを入力し、次いで「スケッチからグラフィックスへ」の機能を一般的に選択することができ、スケッチを分析すること、およびそれが、グラフを表すスケッチであるか、画像を表すスケッチであるか、地図を表すスケッチであるかなどを特定することをコンピューティングデバイスに依存することができる。また、これらのカテゴリー(グラフ、画像、地図)は排他的ではないことが可能であるということに留意されたい。たとえば、「スケッチから画像へ」の機能は、地図の形式である画像、またはグラフの形式である画像を返すことができる。
A.スケッチからの画像の例
[0046] 次いで図3を参照しながら、スケッチからの画像の一例について論じる。図3は、タブレットコンピュータまたはモバイル電話などのユーザデバイス(310)を示している。このユーザデバイスは、タッチスクリーンなどのディスプレイ(320)を含むことができる。ディスプレイ(320)は、スケッチ(330)を表示することができ、スケッチ(330)は、ユーザ入力によって入力することができる。たとえば、ユーザが、スタイラスまたは指を使用して、そのスケッチをフリーハンドでディスプレイ(320)上に描いた可能性がある。そのスケッチは、非テキストグラフィカル要素または特徴(334)を含む。スケッチ(330)はまた、「Server」という言葉を形成しているテキストのスケッチされた表示(336)を含む。このディスプレイは、「スケッチから画像へ」の機能を呼び出すためにユーザ入力によって選択することができるユーザインターフェースコントロール(340)を表示することもできる。
[0047] 「スケッチから画像へ」の機能が呼び出された場合には、処理用にスケッチ(330)を受け取ることができ、そのスケッチ(330)からクエリーを自動的に生成することができる。たとえば、テキスト認識ルーチンが、表示(336)など、手書きされたまたは(スケッチ(330)の一部がフリーハンドではない場合には)打ち込まれたテキストの表示を認識するためにパターンマッチングを実行することができる。加えて、パターンマッチングルーチンが、サーバコンピュータを表すグラフィカル要素または特徴(334)などの非テキストグラフィカル要素または特徴を分析することができる。したがって、サーバコンピュータの画像を求めるクエリーを自動的に生成することができる。加えて、そのクエリーは、さまざまな画像と、スケッチからの提供されたグラフィカル特徴(たとえば、色、向き等などのグラフィカル特徴)との間における類似度を比較するグラフィカルパターンマッチングルーチンを使用して、非テキストグラフィカル特徴にマッチする画像を検索することができる。たとえば、さまざまなタイプのアイテムのライブラリを組み立てることができる。たとえば、これは、画像の既存のデータベースから情報を抽出すること、およびアイテムのタイプを表す特定のタグを伴う、画像内に示されているアイテムからのパターンを形成するためにグラフィカル特徴を使用することによって行うことができる。1つまたは複数の検索ランキング特徴、たとえば、グラフィカル特徴の類似度、スケッチから導出されたテキストへの画像タグのマッチ度、画像の人気度などを使用して、画像を採点することができる。このパターンマッチングおよびクエリーは、デバイス(310)上でローカルに、および/またはグラフィックスサービス環境においてリモートで実行することができる。たとえば、クエリーは、画像のイメージ検索を実行するウェブサービス上で実行することができる。
[0048] 「スケッチから画像へ」の機能は、単一の画像のみを返すことができる。あるいは、複数の画像(450)を返して、所望の画像を選択するためのユーザ入力が提供されることを可能にすることができる。別の例として、複数の返される画像をグループで提供して、画像化された特定のタイプのもののグループなどのグループをユーザ入力が選択することを可能にすることができる。たとえば、スケッチは、サーバコンピュータを表す画像のセット、およびレストランの給仕人を表す画像の別のセットを返すことができる。ユーザが、サーバコンピュータを表す画像を選択した場合には、サーバコンピュータの画像(サーバコンピュータとしてタグ付けされている画像)をディスプレイ(320)上に示すことができる。図4において示されているように、複数の画像(450)は、サーバコンピュータの2つの画像を含む。図4において示されている画像(450)は、線画である。しかしながら、画像は、デジタル写真、写真ではないカラーイラスト、またはその他の画像であることが可能である。それらの画像のうちの1つを選択するためのユーザ入力を提供することができる。そうすると、図5において示されているように、ディスプレイ(320)においてスケッチ(330)が、選択された画像(550)に置き換えられるという結果につながることが可能である。
[0049] いくつかの状況においては、入力されたスケッチ(330)にマッチすることができる画像が見つからない場合がある。そうである場合には、画像が見つからなかったということを示す通知をディスプレイ(320)上に表すことができる。その他の状況においては、検索におけるあいまいさを解消するために、さらなるユーザ入力を要求することができる。たとえば、スケッチが、円と、その円の中心から外側へ延びる2つの放射状の直線とを示していた場合には、さまざまなアイテム(腕時計、掛け時計、円グラフ、本物のパイなど)のうちのどれをそのスケッチによって意図していたかをユーザに尋ねるプロンプトを出すことができる。そのような入力を受け取ると、適切なアイテム(たとえば、腕時計が選択された場合には、腕時計の1つまたは複数の画像)を表示することができる。本明細書において論じられている「スケッチから地図へ」および「スケッチからグラフへ」の機能についても、同様の技術を使用することができる。
B.スケッチからの地図の例
[0050] 次いで図6を参照しながら、スケッチからの地図の一例について論じる。図6は、地図スケッチ(630)を示しているディスプレイ(320)を伴うユーザデバイス(310)を示している。地図スケッチ(630)は、非テキストグラフィカル要素または特徴(634)およびテキスト表示(636)を含む。非テキストグラフィカル特徴(634)は、地図上のストリートを表すラインと、湖岸線を表すライン(640)と、湖水を表すいくつかのぞんざいに書かれたライン(642)と、強調表示されたルートに関する始点および終点を表す矢印インジケータ(644)とを含む。グラフィカル特徴(634)に関して、それらのグラフィカル特徴のプロパティーを示すために色を使用することができる。たとえば、ぞんざいに書かれたライン(642)が地図スケッチ(630)上の水域を表すということを示すために、ぞんざいに書かれたライン(642)を青色に塗ることができる。加えて、ルートを強調表示するために、より太いライン(646)、および/または別々の色のラインなどを使用することができる。
[0051] テキスト表示(636)は、ストリートの名前を含むことができ、それらの名前は、短縮された名前であることが可能であり、また、ストリート名の一部(たとえば、42nd Streetを表す「42nd」、Interstate 405を表す「405」など)を含むだけであることも可能である。テキスト表示(636)は、ランドマークの名前、たとえば、事業拠点を表す企業の名前、建物の名前、自然の地理的特徴の名前(地図スケッチ(630)における「Lake WA」等)などを含むこともできる。加えて、ルートの「始点」および「終点」を示すためのテキスト表示(636)を、強調表示されたライン(646)によって示すことができるそのルートの始点および終点を指すグラフィカルな矢印(644)とともに使用することができる。あるいは、ルートの始点および終点は、×、○等を用いてなど、その他の方法で示すことができる。
[0052] ディスプレイ(320)は、「スケッチから地図へ」の機能を呼び出すために選択することができるユーザインターフェースコントロール(650)を表示することもできる。ユーザインターフェースコントロール(650)を選択すると、スケッチ(630)が受け取られて分析されて、そのスケッチから地図サービスクエリーが作成されるという結果につながることが可能である。たとえば、(パターン認識技術を用いたテキスト認識およびグラフィカル特徴認識を使用することなどによって)スケッチ(630)のグラフィカル特徴(634)およびテキスト表示(636)を識別して、地図領域を探し出すために検索することができるストリート名、ランドマークなどを示すことができる。ユーザデバイス(310)のグローバルポジショニングシステムコンポーネントによって示されるものとしての、ユーザデバイス(310)の現在のロケーションなど、その他の情報を使用することもできる。スケッチ(630)の例においては、たとえば、地図クエリーは、「40th」という語を伴うストリートが、「156th」という語を伴うストリートと交差するエリアを検索することができる。地図クエリーは、「40th」という語を伴うストリートとほぼ平行である「42nd」という語を伴うストリートが、「156th」という語を伴うストリートとほぼ平行である「92nd」という語を伴うストリートと交差するエリアを検索することもできる。地図クエリーは、「92nd」という語を伴うストリートと、「156th」という語を伴うストリートとの間にある「405」という語を伴うストリートを検索することもできる。加えて、地図クエリーは、「92nd」という語を伴うストリートと、「42nd」という語を伴うストリートとの交差点の近くにある、名前、名前の一部、または「WA」という略称を伴う湖を検索することができる。地図クエリーは、そのような情報を、地図サービスによって認識されて利用されることになるクエリーフォーマット内に含めることによって、そのような情報を検索することができる。そのようなクエリーは、そのクエリーが、ランドマーク、たとえば、ストリート、水域、建物など、ならびにスケッチ上でのそれらの互いに対する相対的な位置を示すという形式を取ることができる。たとえば、それらの相対的な位置は、スケッチ上にオーバーレイされた座標系を使用して、座標の点から表すことができる。地図クエリーを実行して、そのクエリーに対する最も近いマッチを見つけ出すことができる。クエリーには、ユーザデバイス(310)のロケーションに近いロケーションからクエリーを開始すること、および/または(地図スケッチ(630)にマッチすることが可能である複数のロケーションが見つかった場合には)あいまいさを解消することなどによって、ユーザデバイス(310)の現在のロケーションに近いロケーションの方へバイアスをかけることができる。地図サービスは、地図スケッチ(630)との相関関係に関して複数の候補地図ロケーションをランク付けすることができ、最も高いランキングスコアを含む地図領域を選択することができる。たとえば、そのランキングは、複数のランキング特徴、たとえば、現在のロケーションに対する近接度に関する特徴、地図スケッチから認識されたマッチするテキストに関する特徴、地図スケッチからのマッチする形状に関する特徴などからのスコアを結合することを含むことができる。
[0053] たとえば、地図スケッチ(630)については、この地図が、ワシントン州のレドモンドおよびベルビューの近くのエリアに密接に対応しているということが判明することが可能である。この特定は、ユーザデバイス(310)が既にレドモンドもしくはベルビューに位置している場合には、またはシアトルの近くの都市に位置している場合でさえ、助長される。
[0054] 次いで図7を参照すると、地図スケッチ(630)のパターンをあるロケーションのパターンとマッチさせたら、地図サービスは、地図(730)を生成することができる。地図(730)は、地図サービス(ローカル地図サービスまたはリモート地図サービスであることが可能である)から返すことが可能であり、地図(730)は、ディスプレイ(320)上に表示することができる。地図(730)は、地図スケッチ(630)において示されていた同じエリアを示すことができる。加えて、地図(730)は、地図スケッチ(630)における強調表示されたライン(646)に対応している、かつその強調表示されたライン(646)から導出されたルート(740)を示すことができる。地図(730)は、ルート(740)の始点を表す付記、およびルート(740)の終点を表す付記を含むこともできる。
[0055] 地図(730)は、ルート(740)から遠くへ離れた場所よりも、ルート(740)の近くの場所の詳細をより多く含むことができる。たとえば、地図(730)は、ルート(740)の始点の近くの「MICROSOFT CAMPUS」という事業拠点を示すことができ、ルート(740)の終点の近くの「YARROW POINT」という町を示すことができ、これらの表示は、たとえ同様の規模の事業拠点および町が、ルート(740)から遠くへ離れている場合には示されない可能性があるとしても、行うことができる。同様に、ルート(740)の始点および終点の近くには、道路を表すさらに詳細なラインが示されており、示されている道路はすべて、ルート(740)の近くの道路の少なくとも一部分を有している。地図(730)は、インタラクティブな地図であることが可能であり、それによって、地図に対してズームインまたはズームアウトを行うこと、地図全体にわたってパンすることなどのためのユーザ入力を提供することができる。
[0056] 地図(730)に加えて、ルート(740)に沿った道案内(750)のリストを生成することができる。図7において示されているように、道案内(750)のリストをディスプレイ(320)上に含めることなどによって、道案内(750)を提示することができる。このリスト表示の代替として、または追加として、自動化されたスピーチエンジンを使用して、またはその他の何らかの方法で道案内を発音することによって、道案内(750)のリストを聞こえるように提示することができる。
C.スケッチからのグラフの例
[0057] 次いで図8を参照しながら、スケッチからグラフを生成することの一例について論じる。ユーザデバイス(310)のディスプレイ(320)は、ユーザ入力を用いて入力されたスケッチ(830)を表示することができる。スケッチ(830)は、スケッチ(830)において示されている列グラフを表す軸および列などの非テキストグラフィカル要素または特徴(834)を含むことができる。スケッチ(830)は、テキストのスケッチされた表示(836)を含むこともできる。たとえば、図8のイラストにおいては、スケッチ(830)のテキスト表示(836)は、縦軸上の目盛の隣に、100,000ドルと解釈することができる縦軸ラベル「$100k」を含む。スケッチ(830)のテキスト表示(836)は、スケッチ(830)において示されている5つのグラフ列のうちで最も左のグラフ列の下の「2007」および最も右のグラフ列の下の「2011」を含む横軸ラベルを含むこともできる。スケッチ(830)は、「SALES」という言葉のスケッチされた表示を含む、スケッチされた列グラフのメイン部分の横のグラフ凡例を、これもまた「SALES」という言葉のスケッチされた表示を含む、スケッチ(830)の上部中央のタイトルに加えて含むこともできる。
[0058] ディスプレイ(320)は、「スケッチからグラフへ」の機能を呼び出すために選択することができるユーザインターフェースコントロール(840)を表示することもできる。ユーザインターフェースコントロール(840)を選択すると、スケッチ(830)が分析されてグラフが生成されるという結果につながることが可能である。たとえば、その分析は、テキストの表示(836)の認識、ならびに非テキストグラフィカル特徴(834)のパターンマッチングを含むことができる。たとえば、パターンマッチングは、テキスト表示(836)および非テキストグラフィカル特徴(834)をマッチさせて、どんなタイプのグラフが意図されているかを特定することができる。加えて、既存の値から値を内挿および/または外挿することができる。たとえば、スケッチ(830)は、列グラフを表す一般的なパターンにマッチしているということを特定することができる。加えて、上部中央における「SALES」は、グラフタイトルを表すパターンにマッチしているということ、ならびにメインのグラフの右にある四角形およびスケッチされた語「SALES」は、グラフ凡例のパターンにマッチしているということを特定することができる。「Best Ever」というテキストは、最も右の列を指している付記のフォーマットにマッチしているということを特定することもできる。加えて、横軸の左にあるテキスト表示「2007」、および横軸の右にある「2011」は、横軸ラベルにマッチすることが可能である。加えて、2007と2011との間に値を内挿して、介在する横軸ラベル2008、2009、および2010を生み出すことができる。
[0059] 加えて、縦軸上の目盛の隣にある「$100k」は、100,000ドルという縦軸値を表すパターンにマッチしていると特定することができる。その値を使用して、グラフ列のうちのそれぞれに関する新たな値を作成することができる。たとえば、それぞれの列が$100kの目盛の高さを上回っている度合い、または$100kの目盛の高さを下回っている度合いを特定することができる。それぞれの対応する列に関して、その方法で比例値を作成することができる。これらのパターンマッチングおよび計算技術は、特定された値を含むデータセットを生み出すことができる。そのデータセットを使用して、そのデータセット内の値にリンクされているグラフを生成することができる。たとえば、スケッチ(830)をパターンマッチングすることからのグラフのタイプ(この例においては、列グラフ)をグラフエンジンに指示することができ、データセットをグラフエンジンに提供して、グラフを作成することができる。
[0060] たとえば、次いで図9を参照すると、スケッチ(830)からのあり得る表示の一例が示されている。デバイス(310)のディスプレイ(320)は、フォーマット付けされたグラフ(930)を表示することができ、このフォーマット付けされたグラフ(930)は、上述のように、縦軸値ラベル(932)、横軸値ラベル(934)、ならびに、「SALES」というタイトル、「SALES」と示している凡例を含むことができ、グラフ(930)を表す列(936)のパターンに対応するパターンサンプルと、最も右の列の上部を指している「Best Ever」というテキストを伴う付記とを有している。ディスプレイ(320)は、グラフの基礎をなすデータセット(940)を表示することもできる。たとえば、横軸ラベルを表すテーブル列と、対応するグラフ列の値を表す対応するテーブル列と、それらのグラフ列値の上にあるヘッダ「SALES」とを有するテーブルの形式でデータセット(940)を表示することができる。
[0061] グラフ(930)およびデータセット(940)の表示は、インタラクティブであることが可能である。したがって、データセット(940)内の値を変更するためのユーザ入力を提供することができ、その変更は、結果としてグラフ(930)上の対応する変更につながることが可能である。同様に、グラフ(930)上の変更は、結果としてデータセット(940)内の対応する変更につながることが可能である。たとえば、さらなる付記をグラフ(930)上にスケッチすることができ、スケッチされた付記を入力すると、フォーマット付けされた付記がグラフ(930)に自動的に加えられるという結果につながることが可能である。別の例として、ユーザ入力によって、グラフ列のうちの1つを上または下へドラッグすることができ、その変更は、結果としてデータセット(940)内の対応する値に対する対応する変更につながることが可能である。さらに別の例として、ユーザ入力に応答してデータセット(940)内のグラフ列値のうちの1つを変更することができ、その変更は、結果として、対応するグラフ列の高さに対する対応する変更につながることが可能である。
[0062] 同様の「スケッチからグラフへ」の技術を、その他のタイプのグラフ、たとえば、棒グラフ、折れ線グラフ、円グラフ、組織図、散布図、面グラフ、バブルチャートなどに関して実行することができる。
IV.スケッチベースのグラフィックス取り出し技術
[0063] 次いで、いくつかのスケッチベースのグラフィックス取り出し技術について論じる。これらの技術のそれぞれは、コンピューティング環境において実行することができる。たとえば、それぞれの技術は、少なくとも1つのプロセッサと、少なくとも1つのプロセッサによって実行されたときに本技術を少なくとも1つのプロセッサに実行させる命令が格納されているメモリ(メモリは、命令(たとえば、オブジェクトコード)を格納し、それらの命令をプロセッサが実行したときに、プロセッサは、本技術を実行する)とを含むコンピュータシステムにおいて実行することができる。同様に、1つまたは複数のコンピュータ可読ストレージメディアは、コンピュータ実行可能命令を具体化し、それらが少なくとも1つのプロセッサによって実行されたときに本技術を少なくとも1つのプロセッサに実行させることができる。以降で論じられている技術は、少なくとも部分的にはハードウェアロジックによって実行することができる。
[0064] 図10を参照しながら、スケッチベースのグラフィックス取り出し技術について論じる。この技術は、部分的にまたは完全にフリーハンドであるスケッチなどのグラフィカルスケッチを受け取ること(1010)を含むことができる。そのスケッチは、テキストの1つまたは複数の表示を含むことができる。この技術は、スケッチからクエリーを自動的に生成すること(1020)を含むこともできる。生成すること(1020)は、スケッチにおいて表されているテキストを自動的に認識すること、およびそのテキストをクエリー内に自動的に表すことを含むことができる。図10の技術は、クエリーを実行して、そのクエリーに応答した画像を識別すること(1030)を含むことができる。スケッチにおいて表されているテキストは、識別された画像の1つまたは複数の非テキスト特徴について記述することができる。その画像を返すことができる(1040)。本明細書において論じられているその他の技術と同様に、スケッチの受け取りに続くこの技術の行為のうちのすべてのまたは任意の組合せは、(何らかのタイプのスケッチベースのグラフィックス取り出し、たとえば、画像を取り出すこと、地図を生成すること、グラフを生成することなどにスケッチが使用されることになるということを示すユーザ入力(たとえば、ユーザインターフェースコントロールを選択すること)に加えてスケッチ入力を受け取ることによって行うことが可能である)スケッチを受け取ることに応答した自動的な行為によって行うことができる。したがって、グラフィックス(画像/グラフ/地図など)を生成する/取り出すためにスケッチが使用されることになるということを示すユーザ入力が提供されると、さらなるユーザ入力を伴わずにグラフィックスを自動的に生成することができるが、いくつかの状況においては(たとえば、あいまいさを解消するためにユーザ入力が要求される場合には)、そのようなさらなるユーザ入力を提供することができる。
[0065] 画像は、スケッチにおいて表されているテキストを含まない画像であることが可能である。スケッチは、画像の1つまたは複数のグラフィカル特徴の1つまたは複数のグラフィカル表示を含むこともできる。クエリーを自動的に生成することは、スケッチの1つまたは複数のグラフィカル要素によって表されているアイテムのタイプを自動的に識別することを含むことができ、アイテムのそのタイプの1つまたは複数のテキスト表示をクエリー内に含むことができる。アイテムのタイプを自動的に識別することは、グラフィカル要素に関してパターンマッチングを実行することを含むことができる。クエリーを自動的に生成することは、スケッチの1つまたは複数のグラフィカル要素に関してパターンマッチングを自動的に実行すること、およびテキストの1つまたは複数のスケッチされた表示に関してテキスト認識を自動的に実行することを含むことができる。
[0066] 画像は、写真、またはその他の何らかのタイプの画像、たとえば、線画、陰影付きの画像、もしくはその他の何らかのタイプの画像であることが可能である。スケッチは、1つの色(たとえば、1つの色の1つまたは複数のスケッチされたライン)を含むことができ、クエリーは、その色のテキスト表示を含むことができる。たとえば、スケッチは、あるエリア内に赤色のぞんざいに書かれたラインを含む場合があり、クエリーは、(画像に関連付けられているメタデータにおいて示すことができる、または画像を分析することによって識別することができる)ぞんざいに書かれたラインのエリア内の赤色を含む画像を検索することができる。
[0067] クエリーを実行すること(1030)は、複数の画像を識別することができ、テキストは、それらの複数の画像のうちのそれぞれの1つまたは複数の非テキスト特徴について記述することができる。この方法は、それらの複数の画像を返すことを含むことができる。それらの画像は、ランキングシステムに従って、それぞれの画像がスケッチとどの程度よく相関しているかに応じてランク付けすることが可能である。返される複数の画像のうちの1つまたは複数を選択するユーザ入力を受け取ることができる。そのユーザ入力に応答して、この技術は、選択された画像をドキュメント内に挿入することを含むことができる。
[0068] この技術は、デジタルドキュメントを表示することを含むことができる。スケッチを受け取ること(1010)は、(たとえば、ドキュメントが表示されているディスプレイエリアにおいてタッチベースの入力を受け取ることによって、)表示されたドキュメントにおいてスケッチを定義するユーザ入力を受け取ることを含むことができる。この技術は、返された画像をドキュメント内に入力することをさらに含むことができる。
[0069] 図10の技術、および本明細書において論じられているその他の技術は、全体的に、または部分的にハードウェアロジックによって実行することができる。
[0070] 次いで図11を参照しながら、別のスケッチベースのグラフィックス取り出し技術について論じる。この技術は、テキストの1つまたは複数のスケッチされた表示を含むグラフィカルスケッチを受け取ること(1110)を含むことができる。そのスケッチによって表されている画像を画像サービスが返すことを求める要求を画像サービスに送信することができる(1120)。その要求に応答した画像を画像サービスから受け取ることができる(1130)。その画像は、スケッチにおいて表されているテキストによって記述されている1つまたは複数の非テキスト特徴を含むことができる。加えて、図11の技術は、画像を表示すること(1140)を含むことができる。
[0071] スケッチを受け取ること(1130)は、表示されたデジタルドキュメントにおいてスケッチを定義するユーザ入力を受け取ることを含むことができる。加えて、画像を表示すること(1140)は、ドキュメントにおいて(たとえば、ワープロドキュメント、スプレッドシートドキュメント、スライドプレゼンテーションドキュメントなどにおいて)画像を表示することを含むことができる。
[0072] 画像サービスに対する要求は、スケッチのイメージ、および/またはスケッチから生成されたクエリーを含むことができる。画像サービスに対する要求は、画像サービスがクエリーを実行することおよび/またはスケッチを分析することを要求することができる。画像は、スケッチにおいて表されているテキストを含まない画像であることが可能であり、また画像は、テキストをまったく含まないことが可能である。スケッチは、画像の1つまたは複数のグラフィカル特徴の1つまたは複数のグラフィカル表示を含むことができる。画像サービスは、リモートサービスおよび/またはローカルサービスであることが可能である。
[0073] 次いで図12を参照しながら、さらに別のスケッチベースのグラフィックス取り出し技術について論じる。この技術は、コンピュータディスプレイ上でのフリーハンドのグラフィカルスケッチを定義するユーザ入力を受け取ること(1210)を含むことができる。あるいは、スケッチは、部分的にフリーハンドであることも可能である。ユーザ入力は、スケッチを描くタッチ入力を含むことができ、スケッチは、1つまたは複数のスケッチされたグラフィカル表示、およびテキストの1つまたは複数のスケッチされた表示を含むことができる。スケッチからクエリーを自動的に生成することができる(1220)。生成すること(1220)は、テキストを自動的に認識すること、およびそのテキストをクエリー内に自動的に表すことを含むことができる。加えて、生成することは、1つまたは複数のグラフィカル表示をパターンマッチングすることを含むことができる。クエリーを実行して(1230)、そのクエリーに応答した画像を識別することができる。テキストは、画像の1つまたは複数の非テキスト特徴について記述することができ、画像は、テキストを含まないことが可能である。1つまたは複数のグラフィカル表示は、画像において示されている1つまたは複数のグラフィカル特徴の1つまたは複数のグラフィカル表示であることが可能である。クエリーに応答して画像を返すことができ(1240)、画像が返されたことに応答して、その画像をコンピュータディスプレイ上に表示することができる(1250)。
[0074] 次いで図13を参照しながら、さらに別のスケッチベースのグラフィックス取り出し技術について論じる。この技術は、1つまたは複数のスケッチされたグラフィカル要素を含むスケッチを受け取ること(1310)を含むことができる。そのスケッチからサービスクエリーを自動的に生成することができる(1320)。サービスクエリーを地図サービスへ自動的に送信することができ(1330)、そのサービスクエリーに応答した地図を受け取ることができる(1340)。加えて、その地図を表示することができる(1350)。
[0075] 地図サービスは、リモートサービスおよび/またはローカルサービスであることが可能である。スケッチは、第1のロケーションの表示、および第2のロケーションの表示を含むことができる。図13の技術は、地図サービスから道案内のリストを受け取ることをさらに含むことができる。それらの道案内は、第1のロケーションから第2のロケーションへの言葉ベースの道案内(テキストベースのまたはオーディオベースの道案内など)を含むことができる。この技術は、道案内を提示することをさらに含むことができる。
[0076] スケッチは、テキストの1つまたは複数の表示を含むことができ、サービスクエリーも、テキストの1つまたは複数の表示を含むことができる。地図は、テキストにおいて記述されている1つまたは複数の特徴を含むことができる。テキストは、ランドマークについて記述することができる。サービスクエリーは、そのランドマークを地図内に含めてほしいという要求を含むことができる。地図は、そのランドマークの表示を含めることを、たとえ地図サービスからの地図が、その地図内にそのランドマークを含めてほしいという要求をサービスクエリーが含んでいなかったならばそのランドマークを含めないであろうとしても、行うことができる。
[0077] 1つまたは複数のスケッチされたグラフィカル要素は、地図上にグラフィカルに表される1つまたは複数の特徴に相当することができる。1つまたは複数のスケッチされたグラフィカル要素は、第1のロケーションから第2のロケーションへのルートのスケッチを含むことができ、地図は、そのルートを強調表示することができる。地図は、そのルートに近づくほど、より高いレベルの詳細を、およびそのルートから遠ざかるほど、より低いレベルの詳細を含むことができる。
[0078] サービスクエリーは、スケッチを含むことができる。さらに、サービスクエリーは、スケッチに加えて情報を含むことができる。その情報は、スケッチを受け取ったデバイスの現在のロケーションに関する情報を含むことができる。
[0079] サービスクエリーを自動的に生成すること(1320)は、スケッチを分析してサービスクエリーを作成することを含むことができる。サービスクエリーは、スケッチの1つまたは複数のグラフィカル要素を表す1つまたは複数のテキスト要素を含むことができる。
[0080] 次いで図14を参照しながら、さらに別のスケッチベースのグラフィックス取り出し技術について論じる。この技術は、1つまたは複数のスケッチされたグラフィカル要素と、テキストの1つまたは複数のスケッチされた表示とを含むスケッチを受け取ること(1410)を含むことができる。スケッチされたグラフィカル要素およびテキストのスケッチされた表示のうちの1つまたは複数との地図領域のパターンマッチングを自動的に実行することができる(1420)。その地図領域の地図を自動的に生成すること(1430)および表示すること(1440)が可能である。
[0081] その地図領域は、複数の潜在的な地図領域から選択される選択された地図領域であることが可能である。パターンマッチングを自動的に実行すること(1420)は、1つまたは複数のスケッチされたグラフィカル要素およびテキストの1つまたは複数のスケッチされた表示に対する相関関係に関して複数の地図領域を自動的にランク付けすることを含むことができる。選択される地図領域は、複数の地図領域のうちで自動的なランキングにおいて最も高いランクにある領域であることが可能である。
[0082] 本明細書において論じられているその他のスケッチと同様に、図14の技術のスケッチは、完全にまたは部分的にフリーハンドのスケッチであることが可能である。たとえば、そのスケッチは、フリーハンドでスケッチされたいくつかの要素、およびフリーハンドでスケッチされていないその他の要素(打ち込まれたテキスト、および/または事前に定義されたグラフィカル要素など)を含むことができる。そのスケッチは、第1のロケーションから第2のロケーションへのルートを表すことができ、地図は、第1のロケーションから第2のロケーションへのルートを強調表示することができる。この技術は、ルートに沿って第1のロケーションから第2のロケーションへの道案内を自動的に生成することをさらに含むことができる。この技術は、道案内を提示することを含むこともできる。
[0083] 図14の技術は、地図を求める要求に応答する際に使用するためにマッピングサービスによって保持されている地図データなどの地図データのデータベースに、スケッチからの情報を加えることを含むこともできる。地図(第1の地図と呼ぶことができる)を(1430で)生成した後に、(たとえば、マッピングサービスへのサービスクエリーの形式での)地図要求を受け取ることができる。スケッチも、最初の地図要求(これもまた、マッピングサービスへのサービスクエリーの形式であった可能性がある)の中に含まれていた可能性があり、その最初の地図要求に応答して、第1の地図が生成されていた可能性がある。第1の地図を(1430で)生成した後にこれらの地図要求に応答して、さらなる地図を生成することができ、その生成は、マッピングサービスによって実行することができる。これらのさらなる地図は、スケッチからの加えられた情報を含むことができる。
[0084] 次いで図15を参照しながら、別のスケッチベースのグラフィックス取り出し技術について論じる。この技術は、1つまたは複数のスケッチされたグラフィカル要素と、テキストの1つまたは複数のスケッチされた表示とを含むフリーハンドのスケッチを受け取ること(1510)を含むことができる。そのスケッチは、第1のロケーションから第2のロケーションへのルートを表すことができる。この技術は、地図領域との1つまたは複数のスケッチされたグラフィカル要素およびテキストの1つまたは複数のスケッチされた表示のパターンマッチングを自動的に実行すること(1520)を含むこともできる。その地図領域は、複数の潜在的な地図領域から選択される選択された地図領域であることが可能である。パターンマッチングを自動的に実行することは、1つまたは複数のスケッチされたグラフィカル要素およびテキストの1つまたは複数のスケッチされた表示に対する相関関係に関して複数の地図領域を自動的にランク付けすることを含むことができる。選択される地図領域は、複数の地図領域のうちで最も高いランクにある地図領域であることが可能である。その地図領域の地図を自動的に生成することができる(1530)。その地図は、第1のロケーションから第2のロケーションへのルートを強調表示することができる。そのルートに沿った第1のロケーションから第2のロケーションへの言葉ベースの道案内を自動的に生成することができる(1540)。加えて、その地図領域の地図を表示することができ(1550)、第1のロケーションから第2のロケーションへの道案内を提示することができる(1560)。
[0085] 次いで図16を参照しながら、さらに別のスケッチベースのグラフィックス取り出し技術について論じる。この技術は、グラフィカルなグラフ表示を含むスケッチを受け取ること(1610)を含むことができる。そのスケッチからデータセットを自動的に生成することができる(1620)。そのスケッチからグラフィカルなグラフを自動的に生成することもできる(1630)。グラフィカルなグラフは、スケッチを表すことができ、データセットは、グラフィカルなグラフにおいて表されているデータを含むことができる。
[0086] データセットは、テーブルの形式であることが可能である。この技術は、グラフィカルなグラフおよびデータセットを単一のアプリケーション用のユーザインターフェース内に表示することを含むことができる。たとえば、その単一のアプリケーションは、スプレッドシートアプリケーションを含むことができる。スケッチは、少なくとも部分的にフリーハンドであることが可能である。スケッチからグラフィカルなグラフを生成すること(1630)は、スケッチによって表されているグラフのタイプを自動的に選択することを含むことができる。また、グラフのタイプを自動的に選択することは、スケッチの1つまたは複数のグラフィカル要素を使用して1つまたは複数のパターンマッチング技術を実行することを含むことができる。
[0087] データセットを生成すること(1620)は、スケッチ内の1つまたは複数のテキスト表示において表されている1つまたは複数のデータ値から1つまたは複数の新たなデータ値を自動的に導出することを含むことができる。自動的に導出することは、内挿、外挿、およびそれらの組合せから構成されているグループから選択された導出計算を実行することを含むことができる。新たなデータ値を自動的に導出することは、スケッチの少なくとも1つのグラフィカル特徴を使用することができる。その少なくとも1つのグラフィカル特徴は、グラフィカル要素の位置、グラフィカル要素のサイズ、およびそれらの組合せから構成されているグループから選択することができる。1つまたは複数の新たなデータ値は、グラフの1つまたは複数のグラフィカル要素によって表すことができ、それらの新たなデータ値は、スケッチの1つまたは複数のグラフィカル要素を表すこともできる。
[0088] グラフィカルなグラフを自動的に生成すること(1630)は、グラフィカルなグラフをデータセットから自動的に生成することを含むことができ、そのデータセットは、スケッチから生成される。スケッチは、1つまたは複数の付記を表すことができ、グラフも、1つまたは複数の付記を含むことができる。図16の技術は、グラフに対する修正の表示をスケッチしているユーザ入力を受け取ること、およびグラフに対する修正の表示をスケッチしているユーザ入力に応答して、グラフに対する修正を行うことをさらに含むことができる。
[0089] 次いで図17を参照しながら、さらに別のスケッチベースのグラフィックス取り出し技術について論じる。この技術は、少なくとも部分的にフリーハンドであるスケッチを受け取ること(1710)を含むことができ、そのスケッチは、グラフィカルなグラフ表示を含む。そのスケッチからデータセットを自動的に生成することができ(1720)、この生成すること(1720)は、スケッチにおけるテキスト表示によって表されていない1つまたは複数の新たなデータ値を導出することを含むことができる。加えて、データセットからグラフィカルなグラフを自動的に生成することができる(1730)。
[0090] 新たなデータ値を導出することは、スケッチにおける1つまたは複数のテキスト表示によって表されている1つまたは複数の既存のデータ値から新たなデータ値を導出することを含むことができる。1つまたは複数の新たなデータ値を導出することは、スケッチの1つまたは複数のグラフィカル要素によって表されている1つまたは複数のデータ値に関する1つまたは複数の想定を行うことを含むことができる。たとえば、折れ線グラフが値を含んでいない場合には、ライン上の1つのポイントの値に関して想定を行うこと(たとえば、その値を1という数に設定すること)が可能であり、そのポイントからその他の値を、スケッチにおけるライン上のその他のポイントの位置に基づいて外挿することができる。グラフィカルなグラフをデータセットから生成すること(1730)は、スケッチによって表されているグラフのタイプを自動的に選択することを含むことができる。グラフのタイプを自動的に選択することは、スケッチの1つまたは複数のグラフィカル要素を使用して1つまたは複数のパターンマッチング技術を実行することを含むことができる。
[0091] 次いで図18を参照しながら、さらに別のスケッチベースのグラフィックス取り出し技術について論じる。この技術は、少なくとも部分的にフリーハンドであるスケッチを受け取ること(1810)を含むことができる。そのスケッチは、グラフィカルなグラフ表示を含むことができる。そのスケッチからデータセットを自動的に生成することができる(1820)。データセットを自動的に生成すること(1820)は、スケッチにおけるテキスト表示によって表されていない1つまたは複数の新たなデータ値を導出することを含むことができる。図18の技術は、データセットおよびスケッチからインタラクティブなグラフィカルなグラフを自動的に生成すること(1830)を含むこともできる。グラフィカルなグラフを生成すること(1830)は、スケッチの1つまたは複数のグラフィカル要素を用いて1つまたは複数のパターンマッチング技術を使用して、スケッチによって表されているグラフのタイプを自動的に選択することを含むことができる。グラフは、1つまたは複数の新たなデータ値を表す1つまたは複数のグラフィカル要素を含むことができる。図18の技術は、データセットを表示すること(1835)、およびグラフを表示すること(1840)をさらに含むことができる。ユーザ入力に応答して、データセット内の1つまたは複数の値を変更することができる(1850)。データセット内の1つまたは複数の変更された値を表すために、グラフの1つまたは複数の特徴を自動的に変更することができる(1860)。
[0092] 本主題は、構造的な特徴および/または方法論的な行為に特有の言葉で説明されているが、添付の特許請求の範囲において定義されている本主題は、上述の特定の特徴または行為に必ずしも限定されるものではないということを理解されたい。むしろ、上述の特定の特徴および行為は、特許請求の範囲を実施することの例示的な形態として開示されている。

Claims (10)

  1. テキストの1つまたは複数の表示を含む、グラフィカルなスケッチを受け取ること、
    前記スケッチからクエリーを自動的に生成することであって、前記テキストを自動的に認識すること、および前記テキストを前記クエリー内に自動的に表すことを含む、生成すること、
    前記クエリーを実行して、前記クエリーに応答した画像を識別することであって、前記テキストが、前記画像の1つまたは複数の非テキスト特徴について記述する、識別すること、ならびに
    前記画像を返すこと
    を含むコンピュータ実施方法。
  2. 前記画像が、前記テキストを含まない、請求項1に記載の方法。
  3. 前記スケッチが、前記画像の1つまたは複数のグラフィカル特徴の1つまたは複数のグラフィカル表示を含む、請求項1に記載の方法。
  4. 前記クエリーを自動的に生成することが、前記スケッチの1つまたは複数のグラフィカル要素によって表されているアイテムのタイプを自動的に識別すること、およびアイテムの前記タイプの1つまたは複数のテキスト表示を前記クエリー内に含めることを含む、請求項1に記載の方法。
  5. アイテムの前記タイプを自動的に識別することが、前記1つまたは複数のグラフィカル要素に関してパターンマッチングを実行することを含む、請求項4に記載の方法。
  6. 前記クエリーを自動的に生成することが、前記スケッチの1つまたは複数のグラフィカル要素に関してパターンマッチングを自動的に実行すること、および前記テキストの前記1つまたは複数のスケッチされた表示に関してテキスト認識を自動的に実行することを含む、請求項1に記載の方法。
  7. 前記クエリーを実行することが、複数の画像を識別し、前記テキストが、前記複数の画像のうちのそれぞれの1つまたは複数の非テキスト特徴について記述し、前記方法が、
    前記複数の画像を返すこと、
    前記複数の画像のうちの1つまたは複数を選択するユーザ入力を受け取ること、および
    前記複数の画像のうちの前記1つまたは複数を選択する前記ユーザ入力に応答して、前記複数の画像のうちの前記1つまたは複数をドキュメント内に挿入することを含む、請求項1に記載の方法。
  8. デジタルドキュメントを表示することをさらに含み、前記スケッチを受け取ることが、前記表示されたドキュメントにおいて前記スケッチを定義するユーザ入力を受け取ることを含み、前記方法が、前記返された画像を前記ドキュメント内に入力することをさらに含む、請求項1に記載の方法。
  9. 少なくとも1つのプロセッサと、
    少なくとも1つのプロセッサによって実行されたときに、
    テキストの1つまたは複数のスケッチされた表示を含むグラフィカルなスケッチを受け取ること、
    前記スケッチによって表されている画像を画像サービスが返すことを要求する要求を当該画像サービスに送信すること、
    前記スケッチにおいて表されている前記テキストによって記述されている1つまたは複数の非テキスト特徴を含む画像を、前記画像サービスから受け取ること、および
    前記画像を表示することを含む行為を少なくとも1つのプロセッサに実行させる命令が格納されているメモリと
    を含むコンピュータシステム。
  10. 少なくとも1つのプロセッサによって実行されたときに、
    コンピュータディスプレイ上でのフリーハンドのグラフィカルなスケッチを定義するユーザ入力を受け取ることであって、前記ユーザ入力が、前記スケッチを描くタッチ入力を含み、前記スケッチが、1つまたは複数のスケッチされたグラフィカル表示、およびテキストの1つまたは複数のスケッチされた表示を含む、受け取ること、
    前記スケッチからクエリーを自動的に生成することであって、前記テキストを自動的に認識すること、および前記テキストを前記クエリー内に自動的に表すことを含み、前記1つまたは複数のグラフィカル表示にパターンマッチングを行うことをさらに含む、生成すること、
    前記クエリーを実行して、前記クエリーに応答した画像を識別することであって、前記テキストが、前記画像の1つまたは複数の非テキスト特徴について記述し、前記画像が、前記テキストを含まず、前記スケッチの前記1つまたは複数のグラフィカル表示が、前記画像において示されている1つまたは複数のグラフィカル特徴の1つまたは複数のグラフィカル表示である、識別すること、
    前記クエリーに応答して前記画像を返すこと、ならびに
    前記画像が返されたことに応答して前記画像を前記コンピュータディスプレイ上に表示することを含む行為を少なくとも1つのプロセッサに実行させるコンピュータ実行可能命令が具体化されている1つまたは複数のコンピュータ可読ストレージメディア。
JP2015536994A 2012-10-15 2013-10-15 スケッチからの画像 Active JP6436909B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/651,470 2012-10-15
US13/651,470 US9528847B2 (en) 2012-10-15 2012-10-15 Pictures from sketches
PCT/US2013/064897 WO2014062591A2 (en) 2012-10-15 2013-10-15 Pictures from sketches

Publications (2)

Publication Number Publication Date
JP2016500873A true JP2016500873A (ja) 2016-01-14
JP6436909B2 JP6436909B2 (ja) 2018-12-12

Family

ID=49920591

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015536994A Active JP6436909B2 (ja) 2012-10-15 2013-10-15 スケッチからの画像

Country Status (6)

Country Link
US (4) US9528847B2 (ja)
EP (1) EP2907056B1 (ja)
JP (1) JP6436909B2 (ja)
KR (1) KR102124673B1 (ja)
CN (1) CN104737160B (ja)
WO (1) WO2014062591A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6403861B1 (ja) * 2017-12-14 2018-10-10 ヤフー株式会社 提供プログラム、提供装置、および提供方法

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9349130B2 (en) * 2010-11-17 2016-05-24 Eloqua, Inc. Generating relative and absolute positioned resources using a single editor having a single syntax
US9528847B2 (en) 2012-10-15 2016-12-27 Microsoft Technology Licensing, Llc Pictures from sketches
US9449415B2 (en) * 2013-03-14 2016-09-20 Mind Research Institute Method and system for presenting educational material
KR20150026095A (ko) * 2013-08-30 2015-03-11 삼성전자주식회사 전자 장치에서 차트를 표시하는 장치 및 방법
US9513671B2 (en) 2014-08-01 2016-12-06 Microsoft Technology Licensing, Llc Peripheral retention device
US10191986B2 (en) 2014-08-11 2019-01-29 Microsoft Technology Licensing, Llc Web resource compatibility with web applications
US9705637B2 (en) 2014-08-19 2017-07-11 Microsoft Technology Licensing, Llc Guard band utilization for wireless data communication
US9524429B2 (en) 2014-08-21 2016-12-20 Microsoft Technology Licensing, Llc Enhanced interpretation of character arrangements
US9805483B2 (en) * 2014-08-21 2017-10-31 Microsoft Technology Licensing, Llc Enhanced recognition of charted data
US9397723B2 (en) 2014-08-26 2016-07-19 Microsoft Technology Licensing, Llc Spread spectrum wireless over non-contiguous channels
US20160063108A1 (en) * 2014-08-28 2016-03-03 General Electric Company Intelligent query for graphic patterns
US9424048B2 (en) 2014-09-15 2016-08-23 Microsoft Technology Licensing, Llc Inductive peripheral retention device
US20160364134A1 (en) * 2015-06-12 2016-12-15 Beijing Lenovo Software Ltd. Information processing method and electronic device
US9990349B2 (en) * 2015-11-02 2018-06-05 Microsoft Technology Licensing, Llc Streaming data associated with cells in spreadsheets
US10599764B2 (en) 2015-11-02 2020-03-24 Microsoft Technology Licensing, Llc Operations on images associated with cells in spreadsheets
US10203103B2 (en) 2016-02-08 2019-02-12 Cree, Inc. LED luminaire having enhanced thermal management
US10347017B2 (en) * 2016-02-12 2019-07-09 Microsoft Technology Licensing, Llc Interactive controls that are collapsible and expandable and sequences for chart visualization optimizations
US10748312B2 (en) 2016-02-12 2020-08-18 Microsoft Technology Licensing, Llc Tagging utilizations for selectively preserving chart elements during visualization optimizations
CN106202189A (zh) * 2016-06-27 2016-12-07 乐视控股(北京)有限公司 一种图像搜索方法及装置
US10121096B2 (en) 2016-07-29 2018-11-06 International Business Machines Corporation Steering seismic texture analysis algorithms using expert input
US10346727B2 (en) * 2016-10-28 2019-07-09 Adobe Inc. Utilizing a digital canvas to conduct a spatial-semantic search for digital visual media
US10380175B2 (en) * 2017-06-06 2019-08-13 International Business Machines Corporation Sketch-based image retrieval using feedback and hierarchies
US11250526B2 (en) * 2017-07-21 2022-02-15 Leap, Llc Dynamic content generator
US10282360B2 (en) * 2017-08-03 2019-05-07 Sap Se Uniform chart formatting based on semantics in data models
US20190095525A1 (en) * 2017-09-27 2019-03-28 International Business Machines Corporation Extraction of expression for natural language processing
US10628708B2 (en) * 2018-05-18 2020-04-21 Adobe Inc. Utilizing a deep neural network-based model to identify visually similar digital images based on user-selected visual attributes
KR20190140519A (ko) * 2018-05-29 2019-12-20 삼성전자주식회사 전자 장치 및 그의 제어방법
KR102249996B1 (ko) 2018-08-31 2021-05-11 엔에이치엔 주식회사 텍스트 기반 이미지 검색 방법 및 장치
KR102286015B1 (ko) 2018-08-31 2021-08-04 엔에이치엔 주식회사 텍스트 기반 이미지 검색 방법 및 장치
KR102103518B1 (ko) * 2018-09-18 2020-04-22 이승일 인공지능을 이용한 텍스트 및 그림 데이터를 동영상 데이터로 생성하는 시스템
US11128735B2 (en) * 2018-10-05 2021-09-21 Microsoft Technology Licensing, Llc Remote computing resource allocation
US11645939B2 (en) * 2018-11-30 2023-05-09 The Regents Of The University Of California Method for freehand sketch training
US10678521B1 (en) 2018-12-05 2020-06-09 Bank Of America Corporation System for image segmentation, transformation and user interface component construction
US10635413B1 (en) 2018-12-05 2020-04-28 Bank Of America Corporation System for transforming using interface image segments and constructing user interface objects
CN109636881A (zh) * 2018-12-19 2019-04-16 沈阳天择智能交通工程有限公司 基于ai识别技术道路交通事故现场草图绘制方法
CN111752557A (zh) * 2019-03-27 2020-10-09 阿里巴巴集团控股有限公司 一种展示方法及装置
US11436028B2 (en) * 2019-06-14 2022-09-06 eGrove Education, Inc. Systems and methods for automated real-time selection and display of guidance elements in computer implemented sketch training environments
US11971871B1 (en) * 2019-09-17 2024-04-30 Sketch Align, Inc. System controlled by data bearing records

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63226769A (ja) * 1987-03-17 1988-09-21 Toshiba Corp 情報検索方法
JPH06111189A (ja) * 1992-09-29 1994-04-22 Matsushita Electric Ind Co Ltd 地図端末および表示方法
JPH08329228A (ja) * 1995-03-31 1996-12-13 Toshiba Corp 図面検索方法および装置
JPH11191159A (ja) * 1997-12-25 1999-07-13 Casio Comput Co Ltd 画像出力装置およびそのプログラム記録媒体
JP2001084274A (ja) * 1999-07-14 2001-03-30 Fuji Photo Film Co Ltd 画像検索方法および画像処理方法
JP2002366694A (ja) * 2001-06-04 2002-12-20 Sharp Corp 道案内装置および方法
JP2006031200A (ja) * 2004-07-14 2006-02-02 Nec Corp 商品検索システム及びその方法並びにそれに用いる端末装置、サーバ装置及びプログラム
JP2008224343A (ja) * 2007-03-12 2008-09-25 Aisin Aw Co Ltd ナビゲーション装置
JP2010072822A (ja) * 2008-09-17 2010-04-02 Yahoo Japan Corp 地図検索装置および地図検索方法
JP2010122766A (ja) * 2008-11-17 2010-06-03 Zenrin Datacom Co Ltd 検索装置、検索方法、およびコンピュータプログラム
US20110302522A1 (en) * 2010-06-03 2011-12-08 Microsoft Corporation Sketching and Searching Application for Idea Generation
US20120054177A1 (en) * 2010-08-31 2012-03-01 Microsoft Corporation Sketch-based image search
US20120072410A1 (en) * 2010-09-16 2012-03-22 Microsoft Corporation Image Search by Interactive Sketching and Tagging

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2360588B (en) 2000-03-23 2004-04-07 Yeoman Group Plc Navigation system
US7865306B2 (en) 2000-09-28 2011-01-04 Michael Mays Devices, methods, and systems for managing route-related information
US7061501B1 (en) 2000-11-07 2006-06-13 Intel Corporation Rendering a pencil-sketch image
CA2560386C (en) 2004-03-23 2013-09-24 Google Inc. A digital mapping system
US7440616B2 (en) 2004-09-21 2008-10-21 Microsoft Corporation System and method for recognition of a hand-drawn chart in ink input
US7409088B2 (en) 2004-09-21 2008-08-05 Microsoft Corporation System and method for connectivity-based recognition of a hand-drawn chart in ink input
US20060074660A1 (en) 2004-09-29 2006-04-06 France Telecom Method and apparatus for enhancing speech recognition accuracy by using geographic data to filter a set of words
US20060071915A1 (en) 2004-10-05 2006-04-06 Rehm Peter H Portable computer and method for taking notes with sketches and typed text
US20060112123A1 (en) 2004-11-24 2006-05-25 Macnica, Inc. Spreadsheet user-interfaced business data visualization and publishing system
EP1991935A1 (en) 2006-02-27 2008-11-19 Robert Bosch GmbH Video retrieval system, method and computer program for surveillance of moving objects
TW200825855A (en) 2006-12-06 2008-06-16 Ind Tech Res Inst A method and system for converting text image into character code are provided for mobile communication device
US8862986B2 (en) 2007-10-01 2014-10-14 Hewlett-Packard Development Company, L.P. Arranging graphic objects on a page with relative position based control
US20090278848A1 (en) 2008-05-12 2009-11-12 Microsoft Corporation Drawing familiar graphs while system determines suitable form
US8463774B1 (en) 2008-07-15 2013-06-11 Google Inc. Universal scores for location search queries
US8452794B2 (en) * 2009-02-11 2013-05-28 Microsoft Corporation Visual and textual query suggestion
CN104933669A (zh) * 2009-10-16 2015-09-23 日本电气株式会社 人物服装特征提取装置及方法
KR20110127894A (ko) * 2010-05-20 2011-11-28 주식회사 인프라웨어 웹 이미지 다이렉트 삽입을 통한 문서 작성 방법 및 웹 이미지 다이렉트 삽입을 통한 문서 작성 장치, 그리고 웹 이미지 다이렉트 삽입을 통한 문서 작성 프로그램을 기록한 컴퓨터로 판독가능한 기록매체
US20110320114A1 (en) 2010-06-28 2011-12-29 Microsoft Corporation Map Annotation Messaging
KR101698096B1 (ko) * 2010-10-08 2017-01-19 엘지전자 주식회사 단말기의 드로잉을 이용한 검색 방법 및 그 단말기
US20120162244A1 (en) * 2010-12-28 2012-06-28 Microsoft Corporation Image search color sketch filtering
US8994732B2 (en) 2011-03-07 2015-03-31 Microsoft Corporation Integration of sketch-based interaction and computer data analysis
US8827710B2 (en) 2011-05-19 2014-09-09 Microsoft Corporation Realtime user guidance for freehand drawing
US8429156B2 (en) 2011-06-17 2013-04-23 Microsoft Corporation Spatial attribute ranking value index
CN102236717B (zh) * 2011-07-13 2012-12-26 清华大学 一种基于草图特征提取的图像检索方法
KR101287786B1 (ko) 2011-09-22 2013-07-18 엘지전자 주식회사 3차원 입체영상 표시 방법 및 그를 이용한 영상 표시 장치
US9465507B2 (en) * 2011-10-19 2016-10-11 Microsoft Technology Licensing, Llc Techniques to facilitate asynchronous communication
US8793068B2 (en) 2012-08-30 2014-07-29 Amazon Technologies, Inc. Interpolating geolocation
US9528847B2 (en) 2012-10-15 2016-12-27 Microsoft Technology Licensing, Llc Pictures from sketches

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63226769A (ja) * 1987-03-17 1988-09-21 Toshiba Corp 情報検索方法
JPH06111189A (ja) * 1992-09-29 1994-04-22 Matsushita Electric Ind Co Ltd 地図端末および表示方法
JPH08329228A (ja) * 1995-03-31 1996-12-13 Toshiba Corp 図面検索方法および装置
JPH11191159A (ja) * 1997-12-25 1999-07-13 Casio Comput Co Ltd 画像出力装置およびそのプログラム記録媒体
JP2001084274A (ja) * 1999-07-14 2001-03-30 Fuji Photo Film Co Ltd 画像検索方法および画像処理方法
JP2002366694A (ja) * 2001-06-04 2002-12-20 Sharp Corp 道案内装置および方法
JP2006031200A (ja) * 2004-07-14 2006-02-02 Nec Corp 商品検索システム及びその方法並びにそれに用いる端末装置、サーバ装置及びプログラム
JP2008224343A (ja) * 2007-03-12 2008-09-25 Aisin Aw Co Ltd ナビゲーション装置
JP2010072822A (ja) * 2008-09-17 2010-04-02 Yahoo Japan Corp 地図検索装置および地図検索方法
JP2010122766A (ja) * 2008-11-17 2010-06-03 Zenrin Datacom Co Ltd 検索装置、検索方法、およびコンピュータプログラム
US20110302522A1 (en) * 2010-06-03 2011-12-08 Microsoft Corporation Sketching and Searching Application for Idea Generation
US20120054177A1 (en) * 2010-08-31 2012-03-01 Microsoft Corporation Sketch-based image search
US20120072410A1 (en) * 2010-09-16 2012-03-22 Microsoft Corporation Image Search by Interactive Sketching and Tagging

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6403861B1 (ja) * 2017-12-14 2018-10-10 ヤフー株式会社 提供プログラム、提供装置、および提供方法

Also Published As

Publication number Publication date
WO2014062591A3 (en) 2014-10-30
KR20150070153A (ko) 2015-06-24
US9417086B2 (en) 2016-08-16
KR102124673B1 (ko) 2020-06-18
US20140108016A1 (en) 2014-04-17
CN104737160A (zh) 2015-06-24
US20140104279A1 (en) 2014-04-17
US20140288830A1 (en) 2014-09-25
US8781742B2 (en) 2014-07-15
WO2014062591A2 (en) 2014-04-24
EP2907056A2 (en) 2015-08-19
US20140107922A1 (en) 2014-04-17
CN104737160B (zh) 2018-04-13
US9528847B2 (en) 2016-12-27
EP2907056B1 (en) 2018-11-21
JP6436909B2 (ja) 2018-12-12
US9395204B2 (en) 2016-07-19

Similar Documents

Publication Publication Date Title
JP6436909B2 (ja) スケッチからの画像
US8015183B2 (en) System and methods for providing statstically interesting geographical information based on queries to a geographic search engine
US9852156B2 (en) Hybrid use of location sensor data and visual query to return local listings for visual query
JP3443061B2 (ja) ツリー構造におけるナビゲート方法およびシステム
EP2431938A2 (en) Location-based data service apparatus and method
JP2009526327A (ja) メディアオブジェクトについての空間サムネイルおよびコンパニオンマップのためのシステムおよび方法
JP2001318938A (ja) 空間データマイニング方法、空間データマイニング装置、および記憶媒体
US10467781B1 (en) Information environment map
KR20170085044A (ko) 검색 내 다중 검색 및 다중 작업 기법
US20190073404A1 (en) Information retrieval control
CN112711645B (zh) 一种位置点信息扩展方法、装置、存储介质和电子设备
US20160196349A1 (en) Geocoding multi-entity queries
US11347820B2 (en) Facilitating identification of an intended country associated with a query
De Silva et al. Sketch-based spatial queries for retrieving human locomotion patterns from continuously archived gps data
Zeng et al. LTDE: A layout tree based approach for deep page data extraction
Abrol et al. MapIt: a case study for location driven knowledge discovery and mining
CN114722135A (zh) 地理图资***
JP2024062609A (ja) 位置特定支援システム、及び位置特定支援方法
AU2014200923A1 (en) Hybrid use of location sensor data and visual query to return local listings for visual query
CN118096931A (zh) 一种规划用地测量成果生成方法及装置
Baldauf Clouds on the Move–Applying the Tag Cloud Metaphor to the Mobile Domain

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160908

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170825

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170825

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180426

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180725

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20181018

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181113

R150 Certificate of patent or registration of utility model

Ref document number: 6436909

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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