JP5410372B2 - Content search apparatus, method, and program - Google Patents
Content search apparatus, method, and program Download PDFInfo
- Publication number
- JP5410372B2 JP5410372B2 JP2010135606A JP2010135606A JP5410372B2 JP 5410372 B2 JP5410372 B2 JP 5410372B2 JP 2010135606 A JP2010135606 A JP 2010135606A JP 2010135606 A JP2010135606 A JP 2010135606A JP 5410372 B2 JP5410372 B2 JP 5410372B2
- Authority
- JP
- Japan
- Prior art keywords
- page
- character block
- document
- content
- search
- 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.)
- Active
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本発明は、コンテンツ検索装置及び方法及びプログラムに係り、特に、改ページや改行位置が確定しているドキュメント内の部分領域の撮影画像を検索クエリとして、該領域が出現するドキュメント及び該ドキュメント内における位置を特定し、その位置に関連するコンテンツを提示するための、ドキュメント内の位置とコンテンツを関連付けるコンテンツ検索装置及び方法及びプログラムに関する。 The present invention relates to a content search apparatus, method, and program, and in particular, a document in which a region appears and a document in the document in which the captured image of a partial region in a document in which a page break or a line feed position is determined is used as a search query The present invention relates to a content search apparatus, method and program for associating a position in a document with a content for specifying the position and presenting the content related to the position.
本発明は、書籍等のドキュメントの部分領域から、該領域がどのドキュメントのどの位置に含まれているか一意に特定し、その位置に関連づけられたコンテンツを提示する装置および方法に関わるものであり、これは様々な分野で応用可能である。例えば、ユーザが理科の教科書の一部をカメラ付き携帯電話等で撮影することで、その撮影領域がどの教科書のどこの位置かを特定し、その教科書の該当位置に関連した実験映像や、関連した問題等のコンテンツを提示することができるようになり、これにより、ユーザの理解の促進に役立てることができる。 The present invention relates to an apparatus and a method for uniquely identifying from which partial area of a document such as a book a position in which document the area is included, and presenting content associated with the position. This can be applied in various fields. For example, when a user shoots a part of a textbook of science with a mobile phone with a camera, etc., the position of the textbook in which the shooting area is specified is specified, and an experiment video related to the corresponding position of the textbook or related It is possible to present content such as a problem, which can be used to promote the understanding of the user.
上記の事例は、ドキュメントの一部領域をクエリとし、膨大な量のドキュメント群の中から該領域を含むドキュメント名、あるいはドキュメント名及びドキュメントにおける位置を特定し、その位置に関連付けられたコンテンツを提示するコンテンツ検索装置と捉えることができる。 In the above example, a partial area of a document is used as a query, and a document name including the area or a document name and a position in the document is specified from a huge amount of document groups, and contents associated with the position are presented. It can be regarded as a content search device.
そして、ドキュメント群の中から位置情報を取得するシステムを構築するためには、ドキュメント群を事前に分析してインデックスを作成すると共に、関連したコンテンツを登録しておく必要がある。 In order to construct a system for acquiring position information from a document group, it is necessary to analyze the document group in advance to create an index and register related contents.
このような問題は、近年盛んに研究されており、現在でも多くの手法が提案されている。 Such problems have been actively studied in recent years, and many methods have been proposed even now.
例えば、日本語の場合は形態素解析等の技術を用いて、ドキュメント内の文書を単語単位に分割した後、単語をインデックスのキーとし、該単語を含むドキュメント名、あるいは、ドキュメント名及びドキュメント中において該単語が登場する位置をインデックスの値とする方式が挙げられる。 For example, in the case of Japanese, after dividing a document in a document into units of words using a technique such as morphological analysis, the word is used as an index key, and the name of the document including the word, or the document name and the document There is a method in which the position where the word appears is used as an index value.
また、N文字(あるいはN単語)の連なりをインデックスのキーとし、その文字(あるいは単語)の連なりを含むドキュメント名、あるいは、ドキュメント名及びドキュメント中においてその文字(あるいは単語)の連なりが登場する位置をインデックスの値とする方式(文字のN-gram方式、単語のN-gram方式)もある。N-gram方式は幅広い場面で有用性が認められており、現在でも多くの拡張手法が提案されている。また、通常のN-gram方式に加え、状況に応じてNの値を変動させる方式も実施されている(例えば、非特許文献1参照)。 Further, a sequence of N characters (or N words) is used as an index key, and a document name including the sequence of the characters (or words), or a position at which the sequence of the characters (or words) appears in the document name and document. There are also methods (character N-gram method, word N-gram method) that use as the index value. The usefulness of the N-gram method has been recognized in a wide range of situations, and many extended methods are still proposed. In addition to the normal N-gram method, a method of changing the value of N according to the situation has been implemented (see, for example, Non-Patent Document 1).
ドキュメント群の中から特定ドキュメントの特定位置を取得し、特定された位置とその位置にコンテンツを関連付ける最も単純な方法としては、章、節、パラグラフ等の文書構造の単位、もしくは手動でコンテンツを関連付ける対象領域をコンテンツ単位あるいはコンテンツ群単位に指定してDBに登録しておき、部分領域をクエリとして与えられたとき、その部分領域がどのコンテンツを関連付ける対象領域に含まれるかどうかで、部分領域とコンテンツとの関連付ける方法がある。 The simplest method of acquiring a specific position of a specific document from a group of documents and associating content with the specified position is related to the unit of the document structure such as a chapter, section, paragraph, or manually. The target area is specified in content units or content group units and registered in the DB, and when the partial area is given as a query, it is determined whether the partial area is included in the target area to which the partial area is associated. There is a way to associate with content.
しかしながら、上記従来方式では、コンテンツを関連付ける対象領域を人手で指定することが必要であり、この作業に多大な労力を必要とするという問題がある。特に、対象ドキュメントが紙媒体のみであり、印刷の元となる電子媒体が存在しない場合には、その紙媒体をスキャナで読み取り、読み取った画像を光学文字読取装置(OCR)で文字に変換することとなるが、この場合には、章、節、パラグラフ等のドキュメントの構造に関する情報が失われてしまう。このため、上記のような対象領域が存在することを前提とする手法では、手動での領域指定が避けられない。これではインデキシング対象のドキュメントが数万から数百万冊存在した場合、この作業には膨大な労力、費用がかかるという問題があった。 However, the above-described conventional method has a problem that it is necessary to manually specify a target area to be associated with content, and this work requires a great deal of labor. In particular, when the target document is only a paper medium and there is no electronic medium to be printed, the paper medium is read by a scanner, and the read image is converted into characters by an optical character reader (OCR). However, in this case, information on the structure of the document such as chapters, sections, paragraphs, etc. is lost. For this reason, in the method which presupposes that the above target areas exist, manual area specification is inevitable. In this case, when there are tens to millions of documents to be indexed, there is a problem that this work requires enormous effort and cost.
本発明は、上記の点に鑑みなされたもので、コンテンツを関連付ける対象領域を設定することなく、低コストでドキュメントの特定位置とコンテンツとを関連付けることが可能なコンテンツ検索装置及び方法及びプログラムを提供することを目的とする。 The present invention has been made in view of the above points, and provides a content search apparatus, method, and program capable of associating a specific position of a document with the content at a low cost without setting a target area to which the content is associated. The purpose is to do.
上記の課題を解決するために、本発明(請求項1)は、改ページや改行位置が確定しているドキュメント内の一部領域を検索クエリとして、該領域が出現するドキュメント及び該ドキュメント内における位置を取得し、取得した位置に関連付けられたコンテンツを提示するコンテンツ検索装置であって、
インデックス作成対象のドキュメントの入力を受け付けるドキュメント入力手段と、
入力された前記ドキュメントの全体または一部領域から、1文字以上の文字の組み合わせからなる文字ブロックを抽出する文字ブロック抽出手段と、
前記文字ブロックと該文字ブロックが出現するドキュメントにおけるページ識別子とページ内座標を関連付けてインデックスDBに出力するインデックス出力手段と、
あるドキュメント内の一部領域を検索クエリとして受け付けるクエリ入力手段と、
前記検索クエリから、1文字以上の文字の組み合わせからなるクエリ文字ブロックを抽出するクエリ文字ブロック抽出手段と、
前記クエリ文字ブロックに基づいて、前記インデックスDBを検索し、その検索結果を出力する検索手段と、
前記検索結果をページ毎に集計し、最も多くの文字ブロックが検索されたページをヒットページとし、ヒットページ内で検索された文字ブロックのページ内座標の重心を算出し、ページ内ヒット位置とする文字ブロック重心算出手段と、
ページ識別子とページ内位置と、その位置に関連付けられるコンテンツとの関係を格納したコンテンツDBと、
前記文字ブロック重心算出手段によって算出された前記ヒットページと前記ページ内ヒット位置をクエリとして、該ヒットページと一致するページ識別子で、該ページ内ヒット位置の近傍のページ位置が関連付けられたコンテンツを前記コンテンツDBから検索するコンテンツ検索手段と、を有する。
In order to solve the above problems, the present invention (Claim 1) uses a partial area in a document in which a page break or a line break position is determined as a search query, and the document in which the area appears and the document A content search device that acquires a position and presents content associated with the acquired position,
A document input means for accepting input of documents to be indexed;
Character block extraction means for extracting a character block consisting of a combination of one or more characters from the whole or a partial area of the input document;
An index output means for associating the character block and a page identifier and a page coordinate in the document in which the character block appears, and outputting to the index DB;
Query input means for accepting a partial area in a document as a search query,
Query character block extraction means for extracting a query character block consisting of a combination of one or more characters from the search query;
Search means for searching the index DB based on the query character block and outputting the search result;
The search results are totaled for each page, the page in which the most character blocks are searched is set as a hit page, the center of gravity of the in-page coordinates of the character blocks searched in the hit page is calculated, and the hit position in the page is calculated. A character block center of gravity calculating means;
A content DB that stores the relationship between the page identifier, the position in the page, and the content associated with the position;
Using the hit page calculated by the character block centroid calculating means and the hit position in the page as a query, the page identifier that matches the hit page and the content associated with the page position near the hit position in the page are related to the content Content search means for searching from the content DB.
また、本発明(請求項2)は、文字ブロック重心算出において、前記文字ブロックのページ内座標の重心を算出する際に、mean shift法を用いる。 The present invention (Claim 2) uses the mean shift method when calculating the center of gravity of the in-page coordinates of the character block in calculating the center of gravity of the character block.
また、本発明(請求項3)は、改ページや改行位置が確定しているドキュメント内の一部領域を検索クエリとして、該領域が出現するドキュメント及び該ドキュメント内における位置を取得し、取得した位置に関連付けられたコンテンツを提示するコンテンツ検索方法であって、
記憶手段として、
インデックスDBと、
ページ識別子とページ内位置と、その位置に関連付けられるコンテンツとの関係を格納したコンテンツDBと、を有する装置において、
ドキュメント入力手段が、インデックス作成対象のドキュメントの入力を受け付けるドキュメント入力ステップと、
文字ブロック抽出手段が、入力された前記ドキュメントの全体または一部領域から、1文字以上の文字の組み合わせからなる文字ブロックを抽出する文字ブロック抽出ステップと、
インデックス出力手段が、前記文字ブロックと該文字ブロックが出現するドキュメントにおけるページ識別子とページ内座標を関連付けて前記インデックスDBに出力するインデックス出力ステップと、
クエリ入力手段が、あるドキュメント内の一部領域を検索クエリとして受け付けるクエリ入力ステップと、
クエリ文字ブロック抽出手段が、前記検索クエリから、1文字以上の文字の組み合わせからなるクエリ文字ブロックを抽出するクエリ文字ブロック抽出ステップと、
検索手段が、前記クエリ文字ブロックに基づいて、前記インデックスDBを検索し、その検索結果を出力する検索ステップと、
文字ブロック重心算出手段が、前記検索結果をページ毎に集計し、最も多くの文字ブロックが検索されたページをヒットページとし、ヒットページ内で検索された文字ブロックのページ内座標の重心を算出し、ページ内ヒット位置とする文字ブロック重心算出ステップと、
コンテンツ検索手段が、前記文字ブロック重心算出ステップにおいて算出された前記ヒットページと前記ページ内ヒット位置をクエリとして、該ヒットページと一致するページ識別子で、該ページ内ヒット位置の近傍のページ位置が関連付けられたコンテンツを前記コンテンツDBから検索するコンテンツ検索ステップと、を行う。
Further, according to the present invention (Claim 3), a partial area in a document in which a page break or a line feed position is fixed is used as a search query, and the document in which the area appears and the position in the document are acquired and acquired. A content search method for presenting content associated with a position,
As a storage means,
Index DB,
In a device having a page identifier, a position in a page, and a content DB that stores a relationship between contents associated with the position,
A document input means for receiving an input of a document to be indexed, and a document input step;
A character block extracting step for extracting a character block consisting of a combination of one or more characters from the whole or a partial area of the input document;
An index output means for associating the character block and a page identifier in the document in which the character block appears with the in-page coordinates and outputting to the index DB;
A query input step in which the query input means accepts a partial area in a document as a search query;
A query character block extracting means for extracting a query character block consisting of a combination of one or more characters from the search query;
A search unit that searches the index DB based on the query character block and outputs the search result;
The character block center of gravity calculation means totals the search results for each page, sets the page where the most character blocks are searched as a hit page, and calculates the center of gravity of the in-page coordinates of the character block searched within the hit page. , A character block centroid calculation step as a hit position in the page,
The content search means uses the hit page calculated in the character block centroid calculating step and the hit position in the page as a query, and associates a page position near the hit position in the page with a page identifier that matches the hit page. And a content search step of searching the content DB for the received content.
また、本発明(請求項4)は、前記文字ブロック重心算出ステップにおいて、
前記文字ブロックのページ内座標の重心を算出する際に、mean shift法を用いる。
Further, according to the present invention (Claim 4), in the character block center of gravity calculation step,
A mean shift method is used to calculate the center of gravity of the in-page coordinates of the character block.
また、本発明(請求項5)は、請求項1または2に記載のコンテンツ検索装置を構成する各手段としてコンピュータを機能させるためのプログラムである。 The present invention (Claim 5) is a program for causing a computer to function as each means constituting the content search device according to Claim 1 or 2.
本発明により、ドキュメント群の中からカメラ付携帯等のクライアント端末で撮影されたドキュメントの部分画像から特定ドキュメントの特定位置を特定するとともに、その特定位置に関連づけられたコンテンツを選択し、クライアント端末でそのコンテンツを表示することができる。
特に、コンテンツを関連づける対象のドキュメントに、章、節、パラグラフ等のドキュメントの構造に関する情報がない、もしくは失われている場合において、ドキュメント上の物理的な位置を指定するだけで、コンテンツを関連づけることが可能になるので、手作業で章、節、パラグラフ等のドキュメントの構造に関するデータを付与する作業が不要になるという効果がある。これは、インデキシング対象のドキュメントが数万から数百万冊存在した場合には特に有効である。
According to the present invention, a specific position of a specific document is specified from a partial image of a document photographed by a client terminal such as a camera-equipped mobile terminal from the document group, and a content associated with the specific position is selected, and the client terminal The content can be displayed.
In particular, if information about the structure of a document, such as a chapter, section, or paragraph, is missing or lost in the document to which the content is related, the content can be related only by specifying the physical location on the document. This makes it possible to eliminate the need to manually add data related to the document structure such as chapters, sections and paragraphs. This is particularly effective when there are tens of thousands to millions of documents to be indexed.
従来方式でも、コンテンツが関連付ける必要がある箇所のみインデックスを作成する必要があるアプリケーションの場合には、コンテンツが関連付ける箇所のみの領域指定の作業で済むが、例えば、一般ユーザが携帯電話で撮影した任意の箇所に対してコンテンツを関連付けることを許すサービスに適用する場合には、ドキュメントのすべての箇所を予めインデキシングしておく必要があり、手作業で章、節、パラグラフ等の領域を指定し、ドキュメント構造を復活させる作業が不可欠であった。したがって、本発明はこのようなサービスに適用する場合に特に優れた効果を奏する。 Even in the conventional method, in the case of an application in which it is necessary to create an index only at a location where content needs to be associated, it is sufficient to specify an area only at a location associated with the content. When applying to a service that allows content to be associated with any part of the document, it is necessary to index all parts of the document in advance, and manually specify chapters, sections, paragraphs, etc. It was essential to restore the structure. Therefore, the present invention has a particularly excellent effect when applied to such a service.
以下図面と共に、本発明の実施の形態を説明する。 Embodiments of the present invention will be described below with reference to the drawings.
図1は、本発明の一実施の形態における検索システムの構成図を示す。同図に示すシステムは、大きく分けてサーバ部300、クライアント部400、外部装置(ドキュメント読み取り装置100、光学文字認識装置110)からなる。
FIG. 1 shows a configuration diagram of a search system according to an embodiment of the present invention. The system shown in the figure is roughly composed of a
サーバ部300は、データ入力部310、文字ブロック抽出部320、インデックス出力部330、インデックスDB340、コンテンツDB390、サーバ側データ送受信部350、DB問い合わせ部360、文字ブロック重心算出部370、コンテンツ検索部380からなる。
The
クライアント部400は、クライアント側デバイス410、クライアント側デバイス410を構成するドキュメント撮影部411、クライアント側デバイスを構成するコンテンツ表示部412、クライアント側データ送受信部420からなる。
The
外部装置は、ドキュメント読み取り装置100、光学文字認識装置110からなる。
The external device includes a
本実施の形態におけるドキュメント200,210は、文字を含むページの集合から成る紙媒体の書籍、もしくは改行により文字の配置情報を含む電子媒体とする。紙媒体の場合には、ドキュメント読み取り装置100に入力することで、電子媒体に変換される。
入力されるドキュメント群200を構成している各ページ及びクライアント部に入力されるドキュメントページ210の例を図2に示す。
An example of each page constituting the
ドキュメント読み取り装置100は、サーバ部300のデータ入力部310に接続されている。光学文字認識装置110はサーバ側データ送受信部350に接続されている。
The
本実施の形態では、(1)サーバ部300においてインデックスを作成する作業、(2)クライアント部400からサーバ部300に問い合わせる作業を行う。
In this embodiment, (1) an operation of creating an index in the
(1)サーバ部においてインデックスを作成する作業:
図3は、本発明の一実施の形態におけるインデックス作成処理のフローチャートである。
(1) Work to create an index in the server part:
FIG. 3 is a flowchart of index creation processing according to an embodiment of the present invention.
●入力ステップ:インデックス作成対象となるドキュメントを入力する。 ● Input step: Enter the document to be indexed.
ステップ310) ドキュメント群の各ドキュメントの各ページを、ドキュメント読み取り装置100で読み取り、データ入力部310に渡す。
Step 310) Each page of each document in the document group is read by the
ここで、ドキュメント読み取り装置100は、紙媒体に印刷されたテキストを読み取ってテキストファイルに変換する一般装置であり、OCR機能付きスキャナ等がこれに該当する。ここでは、各ページ中のテキストは紙媒体に印刷された状態における改ページ位置、改行位置が保持されたままテキストファイルに変換されるものとする。ただし、入力されたドキュメント群が改行コード等のドキュメント中の文字の配置情報を含む電子媒体として与えられた場合には、この処理は省略可能である。
Here, the
ステップ320) データ入力部310は、ドキュメント読み取り装置から渡されたテキストファイル群を読み込み、図4に示すデータ構造でリスト化して、サーバ部300の文字ブロック抽出部320に渡す。なお、説明の便宜上、ここでは各ページに対してファイル名を割り当てているが必ずしもページ毎にファイルを保持する必要はない。ページ識別子は、乱数、UUID、書籍のISBN番号とページ番号をSHA-1等のハッシュ関数でIDに変換した等、ページを一意に識別できる情報とし、具体的には、どのような情報を利用しても構わない。
Step 320) The
●文字ブロック抽出ステップ:各ドキュメントの各ページ内から文字ブロックを抽出する。 Character block extraction step: Character blocks are extracted from each page of each document.
ステップ330)サーバ部300の文字ブロック抽出部320は、データ入力部310から渡されたリストに記載されている各ページを読み込み、各ページから文字ブロック群を文字ブロック抽出ルールに則って抽出し、各文字ブロックと各文字ブロックの抽出元ページのファイル名と該ページにおける該文字ブロックの出現位置を関連付けて、インデックス出力部330に渡す。
Step 330) The character
ここで、「文字ブロック」 とは、ページ内に並んでいる文字列から、規定の形状で抽出した1文字以上の文字群のことである。ここでは、図5のように、規定の形状を箱型として抽出する。 Here, the “character block” is a group of one or more characters extracted in a prescribed shape from a character string arranged in a page. Here, the prescribed shape is extracted as a box shape as shown in FIG.
また、「文字ブロック抽出ルール」とは、ドキュメントからどのように文字ブロックを抽出するか規定するルールであり、サーバ部300のメモリ(図示せず)等に格納され、文字ブロック抽出部320により参照されるものとする。ここでは、図6のように、左上隅から右下隅方向へ2文字ずつずらしながら抽出することとする。
The “character block extraction rule” is a rule that defines how a character block is extracted from a document. The rule is stored in a memory (not shown) of the
また、「文字ブロックの出現位置」とは、文字ブロックがドキュメントのどの位置に出現しているか、システムの目的に応じて任意の粒度で示す位置情報である。 The “appearance position of the character block” is position information indicating at which position of the character block the character block appears in an arbitrary granularity according to the purpose of the system.
図7は、本発明の一実施の形態における文字ブロック抽出部の処理結果を示す。同図は 、文字ブロック抽出部320で上記のステップ330の処理を行った結果を示しており、このデータがインデックス出力部330に渡される。なお、ここでは、文字ブロックを、文字ブロックを構成する文字を上方、左方から順番に並べて表現している。
FIG. 7 shows the processing result of the character block extraction unit in one embodiment of the present invention. This figure shows the result of the processing in
本実施の形態では、各文字ブロックの出現位置を、行や列で表現するのではなく、ページ内位置と呼ぶそのページ内における位置座標として表現する。具体的には、そのページの左上の座標を(0,0)、右下の座標を(1,1)とする[0,1]を値域とする実数で表現する。 In the present embodiment, the appearance position of each character block is not expressed as a row or a column, but is expressed as a position coordinate within the page called a position within the page. Specifically, the upper left coordinate of the page is (0, 0), the lower right coordinate is (1, 1), and [0, 1] is represented by a real number having a range.
●出力ステップ:検索を実行するためのインデックスを出力する。 Output step: Outputs an index for executing a search.
ステップ340)インデックス出力部330は、文字ブロック抽出部320から渡された各文字ブロックを、図7のデータ構造でインデックスDB340に格納する。これにより、文字ブロックを問い合わせキーとし、ファイル名及び出現位置を問い合わせ結果として返すインデックスDBを実現する。
Step 340) The
(2)クライアント部からサーバ部に問い合わせる作業
サーバ部300のコンテンツDB390には、書籍出版社、あるいは、一般ユーザが作成した、各書籍のページ識別子と、ページ内位置に関係したコンテンツ及び該コンテンツに関する情報を格納しておく。コンテンツの例としては、観光名所案内であれば各地を訪れた旅行者の体験談、化学教科書であれば化学実験映像等が挙げられる。ここでは、サーバ部300上のデータ格納領域にコンテンツの実体を格納し、図8に示すようなデータ構造でコンテンツとページ識別子とページ内位置の関係を格納する。コンテンツ及び該コンテンツに関する情報をコンテンツDB390に格納するためには、別途、格納作業専用端末を用意してもよいし、図9のような格納作業用Webアプリケーションを用意して不特定多数のユーザがWebブラウザを通じて自由にコンテンツ及び該コンテンツに関する情報を格納できるようにしてもよい。図9において、画面右に表示されたドキュメント画像の位置をマウスでポイントすることでコンテンツを関連づける位置を指定する。関連づける対象のコンテンツは、右側のフォームを入力することで行う。このような構成により、コンテンツの位置を指定するにあたり、従来技術のように、手動で章、節、パラグラフなどの領域で指定するのではなく、コンテンツを設定する位置をマウスで指定された点を指定するだけでよく、章、節、パラグラフなどの領域データを、予め手作業で割り当てる作業が不要になる。
(2) Work inquiring from the client unit to the server unit The
図9は、本発明の一実施の形態におけるクライアント部からサーバ部に問い合わせる処理の流れを示す。 FIG. 9 shows the flow of processing for inquiring from the client unit to the server unit in one embodiment of the present invention.
●入力ステップ:インデックス作成対象となるページの一部を入力する。 ● Input step: Enter a part of the page to be indexed.
ステップ910)ドキュメント撮影部411は、ドキュメントのページの全体、または一部分を光学的に撮影して、撮影内容を画像ファイルとしてメモリ(図示せず)に保存し、クライアント側データ送受信部420に渡す。クライアント側データ送受信420部は、ドキュメント撮影部411から渡された画像ファイルをネットワークを介してサーバ部300のデータ送受信部350に渡す。
Step 910) The
ドキュメントページ210は、ドキュメント群に含まれる1件の書籍の1ページである。ドキュメントページ210には、既に述べたように一意のページ識別子が付与されている。ここでは、図5に示すページの一部分が撮影され、図11に示す画像ファイルが作成されたとする。
The
ステップ920)サーバ側データ送受信部350は、光学文字認識装置110を利用して、クライアント側データ送受信部420から渡された画像ファイルから図12に示すテキストデータを抽出し、文字ブロック抽出部320に渡す。なお、光学文字認識装置110は、一般的なOCRソフトウェア等であり、文字が撮影されたが画像から文字情報を抽出し、テキストデータとしてコンピュータが利用できる形式に変換する一般装置である。
尚、このOCRの処理では、図12に示すように、「科」を「料」に、「ピザ」を「ビザ」に、「パス」を「ハス」などに誤認識する可能性があるが、小さいブロックに分割されているので、誤認識されないブロックも多く残るので、これらのブロックが一定数以上残るかどうかで位置を特定することができる。
Step 920) The server-side data transmission /
In this OCR process, as shown in FIG. 12, there is a possibility that “family” is “fee”, “pizza” is “visa”, “pass” is “lotus”, etc. Since the blocks are divided into small blocks, many blocks that are not erroneously recognized remain, so that the position can be identified by whether or not a certain number or more of these blocks remain.
●文字ブロック抽出ステップ:入力されたページの一部から文字ブロックを抽出する。 Character block extraction step: Extract character blocks from a part of the input page.
ステップ930)文字ブロック抽出部320は、サーバ側データ送受信部350から渡されたテキストデータを読み込み、該テキストデータから文字ブロック群を文字ブロック抽出ルールに則って抽出し、DB問い合わせ部360に渡す。
Step 930) The character
ここで、「文字ブロック」 は、ステップ330と同じく箱型の形状で図13のように抽出する。ブロックの形状は、箱形である必要はなく、L型や十字型等任意の形状が考えられる。
Here, the “character block” is extracted in a box shape as in
また、「文字ブロック抽出ルール」は、図14のように、左上隅から右下隅方向へ1文字ずつずらしながら抽出することとする。図15は、文字ブロック抽出部320でステップ930の処理を行った結果を示しており、このデータがDB問い合わせ部360に渡される。なお、ここでは、文字ブロックを、文字ブロックを構成する文字を上方、左方から順番に並べて表現している。
The “character block extraction rule” is extracted while shifting one character at a time from the upper left corner toward the lower right corner as shown in FIG. FIG. 15 shows the result of the processing in
●問い合わせステップ:インデックスに問い合わせを行い、入力されたページの一部に関連付けられているコンテンツを特定する。 Inquiry step: An inquiry is made to the index, and content associated with a part of the input page is specified.
ステップ940)DB問い合わせ部360は、図15のリストを用いてインデックスDB340に問い合わせを行う。前述のとおり、インデックスDB340には、図7に示す構造でデータが格納されている。DB問い合わせ部360は、図15の各文字ブロックに対応するページ識別子とページ内位置を問い合わせ、問い合わせ結果を図16で示す形式で取得する。
Step 940) The
ステップ950)文字ブロック重心算出部370は、図16で得られたページ識別子の重複数を集計し、最も頻度が高いページ識別子をヒットページとする。この例では、「5440566ca69690a43d15fd89943316cf」となる。
Step 950) The character block center-of-
ヒットページの選択にあたっては、単純にページ識別子の重複数が最も大きいものとした場合には、そもそも撮影した対象がインデックスされていない場合には、偶然同一のブロックがヒットしたケースに誤ってヒットページとして認識されてしまうケースがある。これを防ぐ為に、最低限ヒット数を閾値kとして設定し、k以下の場合には、ヒットページとするのではなく、位置が特定できなかったことをメッセージとしてサーバ側データ送受信部350を介してクライアント部400に送信してもよい。さらに別の実施例としては、単純に閾値で設定するのではなく、クエリ画像から抽出された文字ブロックの数Nqとページから抽出された文字ブロック数の数Npに応じて変化するような値、例えば、
When selecting a hit page, if the number of overlapping page identifiers is simply the largest, and if the subject being photographed is not indexed in the first place, the hit page will be mistaken for the case where the same block was accidentally hit. May be recognized as. In order to prevent this, the minimum number of hits is set as a threshold value k, and if it is less than or equal to k, it is not set as a hit page, but a message indicating that the position could not be specified via the server-side data transmission /
ステップ960)文字ブロック重心算出部370は、ヒットページに含まれるすべてのページ内位置の集合Hを基に、重心座標を
Step 960) The character block center of
{(0.2123, 0.4542), (0.2614, 0.4542), (0.2123, 0.4921), (0.2614, 0.4921)}
の4カ所であるケースにおいては、ページ内ヒット位置はその重心により計算し、(0.2368, 0.4732)となる。
{(0.2123, 0.4542), (0.2614, 0.4542), (0.2123, 0.4921), (0.2614, 0.4921)}
In the case of these four places, the hit position in the page is calculated from the center of gravity, and becomes (0.2368, 0.4732).
クライアント部400での一回の撮影で異なるページのブロックが撮影されることは、システム構成上ほとんどあり得ないことから、最も頻度が高いページ識別子ではないページ識別子を有するブロックは、偶然の一致でヒットしたブロックであり、ノイズとみなせる。このように、ヒットページに含まれるブロックのページ内位置の重心を算出する処理によりこれらのノイズが除去できる。
Since it is almost impossible in the system configuration that a block of a different page is shot in one shooting by the
重心座標の算出においては、上記のように単純に同一ページ識別子を有する文字ブロックのページ内位置座標の重心を算出してもよいが、例えば、文献1「Y. Cheng. Mean shift, mode seeking, and clustering. IEEE Transactions on Pattern Analysis and Machine Intelligence, 17(8), pp. 790-799 (1995)」に記載されるmean shift法により、撮影されたクエリ画像に対応した矩形領域を前提としてその領域をずらしながら、最も中心的な座標位置を見つけることで、クエリ画像から離れた位置にあり、ヒットページ内で偶然ヒットした文字ブロックにより座標が大きくずれてしまう問題を低減することができる。 In calculating the centroid coordinates, the centroid of the position coordinates in the page of the character block having the same page identifier may be simply calculated as described above. For example, Reference 1 “Y. Cheng. Mean shift, mode seeking, IEEE Transactions on Pattern Analysis and Machine Intelligence, 17 (8), pp. 790-799 (1995) ”, and the region based on the rectangular region corresponding to the captured query image. By finding the most central coordinate position while shifting, it is possible to reduce the problem that the coordinates are greatly shifted due to the character block that is located away from the query image and accidentally hit in the hit page.
mean shift法を適用する場合、矩形領域のサイズを指定する必要があるが、クエリ画像の撮影領域に応じたサイズを設定することが望ましい。しかし、撮影された画像の解像度によって、大きなクエリ画像であるからといって必ずしも撮影された領域が広いとは限らない。そこで本実施の形態においては、クエリ画像から抽出した文字ブロックの数Nqがクエリ画像の面積に応じて変化するという性質を利用して、Nqの平方根に比例した長さを一辺とする正方形の矩形領域もしくは一般的なカメラ画像の4:3の縦横比とする矩形領域を用いてmean shift法を適用する。 When applying the mean shift method, it is necessary to specify the size of the rectangular area, but it is desirable to set the size according to the imaging area of the query image. However, depending on the resolution of the captured image, just because it is a large query image, the captured region is not necessarily wide. Therefore, in the present embodiment, using the property that the number Nq of character blocks extracted from the query image changes according to the area of the query image, a square rectangle having a length proportional to the square root of Nq as one side. The mean shift method is applied using an area or a rectangular area having a 4: 3 aspect ratio of a general camera image.
●出力ステップ:問い合わせた結果得られたコンテンツをクライアント部で表示する。 Output step: Displays the content obtained as a result of the inquiry on the client unit.
ステップ970)コンテンツ検索部380は、上述の問い合わせ結果の中で、一定条件を満たすものを検索結果としてサーバ側データ送受信部350に渡す。
Step 970) The
本実施の形態においては、上記で述べたヒットページのページ内ヒット位置に最も近いコンテンツを指定された数だけ抽出する。本実施の形態では、ヒットページが5440566ca69690a43d15fd89943316cf、ページ内ヒット位置が(0.2368, 0.4732)であるので、コンテンツDB390の中から最も近傍にあるコンテンツから検索し、その結果を図17に示す。このように「tomato_1.mp4」と「tomato_2.mp4」の2件が抽出される。これらをファイルタイプと共に検索結果としてサーバ側データ送受信部350に渡す。サーバ側データ送受信部350は、コンテンツ検索部380から渡された検索結果をネットワークを介してクライアント側データ送受信部420に渡す。
In the present embodiment, the designated number of contents that are closest to the in-page hit position of the hit page described above are extracted. In this embodiment, since the hit page is 5440566ca69690a43d15fd89943316cf and the hit position within the page is (0.2368, 0.4732), the
ステップ980)クライアント側データ送受信部420は、サーバ側データ送受信部350から渡された検索結果をコンテンツ表示部412に渡す。コンテンツ表示部412は、クライアント側データ送受信部420から渡された検索結果を、コンテンツ表示部412内部で予め設定されたコンテンツ表示手段(図9)を用いて表示する。
Step 980) The client side data transmitting / receiving
上記のように、コンテンツとドキュメントを関連づける際に、ドキュメントの章、節、パラグラフ等のドキュメント構造を無視し、単純に物理的なドキュメント上の位置にコンテンツを関連付けて、クライアント部(クライアント端末)で撮影した画像から取得したブロック群の重心座標とコンテンツとの物理的な距離に基づき、コンテンツを選択するコンテンツ検索装置にしたことで、ドキュメント構造を手動で登録する手間を省くことが可能にした。 As described above, when associating content with a document, the document structure such as a document chapter, section, paragraph, etc. is ignored, and the content is simply associated with a physical document position, and the client unit (client terminal) The content search device that selects content based on the physical distance between the barycentric coordinates of the block group acquired from the photographed image and the content makes it possible to save the trouble of manually registering the document structure.
なお、上記の実施の形態における図3に示すサーバ部300の各構成要素の動作をプログラムとして構築し、サーバ部(コンテンツ検索装置)として利用されるコンピュータにインストールして実行させる、または、ネットワークを介して流通させることが可能である。
In addition, the operation of each component of the
また、構築されたプログラムをハードディスク、フレキシブルディスクやCD−ROM等の可搬記憶媒体に格納し、コンピュータにインストールする、または、配布することが可能である。 Further, the constructed program can be stored in a portable storage medium such as a hard disk, a flexible disk, or a CD-ROM, and installed in a computer or distributed.
なお、本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。 The present invention is not limited to the above-described embodiment, and various modifications and applications can be made within the scope of the claims.
100 ドキュメント読み取り装置
110 光学文字認識装置
200 ドキュメント群
210 ドキュメントページ
300 サーバ部
310 データ入力部
320 文字ブロック抽出部
330 インデックス出力部
340 インデックスDB
350 サーバ側データ送受信部
360 DB問い合わせ部
370 文字ブロック重心算出部
380 コンテンツ検索部
390 コンテンツDB
400 クライアント部
410 クライアント側デバイス
411 ドキュメント撮影部
412 コンテンツ表示部
420 クライアント側データ送受信部
DESCRIPTION OF
350 Server-side data transmission /
400
Claims (5)
インデックス作成対象のドキュメントの入力を受け付けるドキュメント入力手段と、
入力された前記ドキュメントの全体または一部領域から、1文字以上の文字の組み合わせからなる文字ブロックを抽出する文字ブロック抽出手段と、
前記文字ブロックと該文字ブロックが出現するドキュメントにおけるページ識別子とページ内座標を関連付けてインデックスDBに出力するインデックス出力手段と、
あるドキュメント内の一部領域を検索クエリとして受け付けるクエリ入力手段と、
前記検索クエリから、1文字以上の文字の組み合わせからなるクエリ文字ブロックを抽出するクエリ文字ブロック抽出手段と、
前記クエリ文字ブロックに基づいて、前記インデックスDBを検索し、その検索結果を出力する検索手段と、
前記検索結果をページ毎に集計し、最も多くの文字ブロックが検索されたページをヒットページとし、ヒットページ内で検索された文字ブロックのページ内座標の重心を算出し、ページ内ヒット位置とする文字ブロック重心算出手段と、
ページ識別子とページ内位置と、その位置に関連付けられるコンテンツとの関係を格納したコンテンツDBと、
前記文字ブロック重心算出手段によって算出された前記ヒットページと前記ページ内ヒット位置をクエリとして、該ヒットページと一致するページ識別子で、該ページ内ヒット位置の近傍のページ位置が関連付けられたコンテンツを前記コンテンツDBから検索するコンテンツ検索手段と、
を有することを特徴とするコンテンツ検索装置。 A content search that uses a partial area in a document in which a page break or a line break position is determined as a search query, acquires the document in which the area appears and the position in the document, and presents the content associated with the acquired position A device,
A document input means for accepting input of documents to be indexed;
Character block extraction means for extracting a character block consisting of a combination of one or more characters from the whole or a partial area of the input document;
An index output means for associating the character block and a page identifier and a page coordinate in the document in which the character block appears, and outputting to the index DB;
Query input means for accepting a partial area in a document as a search query,
Query character block extraction means for extracting a query character block consisting of a combination of one or more characters from the search query;
Search means for searching the index DB based on the query character block and outputting the search result;
The search results are totaled for each page, the page in which the most character blocks are searched is set as a hit page, the center of gravity of the in-page coordinates of the character blocks searched in the hit page is calculated, and the hit position in the page is calculated. A character block center of gravity calculating means;
A content DB that stores the relationship between the page identifier, the position in the page, and the content associated with the position;
Using the hit page calculated by the character block centroid calculating means and the hit position in the page as a query, the page identifier that matches the hit page and the content associated with the page position near the hit position in the page are related to the content Content search means for searching from the content DB;
A content search apparatus comprising:
前記文字ブロックのページ内座標の重心を算出する際に、mean shift法を用いる
請求項1記載のコンテンツ検索装置。 The character block centroid calculating means
The content search apparatus according to claim 1, wherein a mean shift method is used when calculating the center of gravity of the in-page coordinates of the character block.
記憶手段として、
インデックスDBと、
ページ識別子とページ内位置と、その位置に関連付けられるコンテンツとの関係を格納したコンテンツDBと、を有する装置において、
ドキュメント入力手段が、インデックス作成対象のドキュメントの入力を受け付けるドキュメント入力ステップと、
文字ブロック抽出手段が、入力された前記ドキュメントの全体または一部領域から、1文字以上の文字の組み合わせからなる文字ブロックを抽出する文字ブロック抽出ステップと、
インデックス出力手段が、前記文字ブロックと該文字ブロックが出現するドキュメントにおけるページ識別子とページ内座標を関連付けて前記インデックスDBに出力するインデックス出力ステップと、
クエリ入力手段が、あるドキュメント内の一部領域を検索クエリとして受け付けるクエリ入力ステップと、
クエリ文字ブロック抽出手段が、前記検索クエリから、1文字以上の文字の組み合わせからなるクエリ文字ブロックを抽出するクエリ文字ブロック抽出ステップと、
検索手段が、前記クエリ文字ブロックに基づいて、前記インデックスDBを検索し、その検索結果を出力する検索ステップと、
文字ブロック重心算出手段が、前記検索結果をページ毎に集計し、最も多くの文字ブロックが検索されたページをヒットページとし、ヒットページ内で検索された文字ブロックのページ内座標の重心を算出し、ページ内ヒット位置とする文字ブロック重心算出ステップと、
コンテンツ検索手段が、前記文字ブロック重心算出ステップにおいて算出された前記ヒットページと前記ページ内ヒット位置をクエリとして、該ヒットページと一致するページ識別子で、該ページ内ヒット位置の近傍のページ位置が関連付けられたコンテンツを前記コンテンツDBから検索するコンテンツ検索ステップと、
を行うことを特徴とするコンテンツ検索方法。 A content search that uses a partial area in a document in which a page break or a line break position is determined as a search query, acquires the document in which the area appears and the position in the document, and presents the content associated with the acquired position A method,
As a storage means,
Index DB,
In a device having a page identifier, a position in a page, and a content DB that stores a relationship between contents associated with the position,
A document input means for receiving an input of a document to be indexed, and a document input step;
A character block extracting step for extracting a character block consisting of a combination of one or more characters from the whole or a partial area of the input document;
An index output means for associating the character block and a page identifier in the document in which the character block appears with the in-page coordinates and outputting to the index DB;
A query input step in which the query input means accepts a partial area in a document as a search query;
A query character block extracting means for extracting a query character block consisting of a combination of one or more characters from the search query;
A search unit that searches the index DB based on the query character block and outputs the search result;
The character block center of gravity calculation means totals the search results for each page, sets the page where the most character blocks are searched as a hit page, and calculates the center of gravity of the in-page coordinates of the character block searched within the hit page. , A character block centroid calculation step as a hit position in the page,
The content search means uses the hit page calculated in the character block centroid calculating step and the hit position in the page as a query, and associates a page position near the hit position in the page with a page identifier that matches the hit page. A content search step of searching the content DB for the obtained content;
The content search method characterized by performing.
前記文字ブロックのページ内座標の重心を算出する際に、mean shift法を用いる
請求項3記載のコンテンツ検索方法。 In the character block centroid calculating step,
The content search method according to claim 3, wherein a mean shift method is used when calculating the center of gravity of the in-page coordinates of the character block.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2010135606A JP5410372B2 (en) | 2010-06-14 | 2010-06-14 | Content search apparatus, method, and program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2010135606A JP5410372B2 (en) | 2010-06-14 | 2010-06-14 | Content search apparatus, method, and program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2012003356A JP2012003356A (en) | 2012-01-05 |
| JP5410372B2 true JP5410372B2 (en) | 2014-02-05 |
Family
ID=45535288
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2010135606A Active JP5410372B2 (en) | 2010-06-14 | 2010-06-14 | Content search apparatus, method, and program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP5410372B2 (en) |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2004348467A (en) * | 2003-05-22 | 2004-12-09 | Canon Inc | Image retrieval apparatus, control method thereof, and program |
| JP2006072520A (en) * | 2004-08-31 | 2006-03-16 | Canon Inc | Information processing apparatus and method, and program recording medium |
| JP4641414B2 (en) * | 2004-12-07 | 2011-03-02 | キヤノン株式会社 | Document image search apparatus, document image search method, program, and storage medium |
| JP2007058819A (en) * | 2005-08-26 | 2007-03-08 | Fuji Xerox Co Ltd | Index information generation device |
-
2010
- 2010-06-14 JP JP2010135606A patent/JP5410372B2/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| JP2012003356A (en) | 2012-01-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7669148B2 (en) | System and methods for portable device for mixed media system | |
| US9171202B2 (en) | Data organization and access for mixed media document system | |
| US8949287B2 (en) | Embedding hot spots in imaged documents | |
| US8838591B2 (en) | Embedding hot spots in electronic documents | |
| US8335789B2 (en) | Method and system for document fingerprint matching in a mixed media environment | |
| US7812986B2 (en) | System and methods for use of voice mail and email in a mixed media environment | |
| US7702673B2 (en) | System and methods for creation and use of a mixed media environment | |
| US7917554B2 (en) | Visibly-perceptible hot spots in documents | |
| US7551780B2 (en) | System and method for using individualized mixed document | |
| US8521737B2 (en) | Method and system for multi-tier image matching in a mixed media environment | |
| US9405751B2 (en) | Database for mixed media document system | |
| US8600989B2 (en) | Method and system for image matching in a mixed media environment | |
| US7885955B2 (en) | Shared document annotation | |
| JP5181886B2 (en) | Electronic document search method, search system, and computer program | |
| CN101297318B (en) | Data organization and access for mixed media document system | |
| US8195659B2 (en) | Integration and use of mixed media documents | |
| JP2009043242A (en) | Method and system for generating a graphical user interface | |
| KR102468309B1 (en) | Method for searching building based on image and apparatus for the same | |
| JP2009506393A (en) | Image collation method and system in mixed media environment | |
| JP4897795B2 (en) | Processing apparatus, index table creation method, and computer program | |
| JP5004082B2 (en) | Document image search method, document image registration method, program and apparatus thereof | |
| JP5410372B2 (en) | Content search apparatus, method, and program | |
| JP2009506392A (en) | Method, computer program and system for embedding hotspots in electronic documents | |
| JP2022152134A (en) | Image data edition program, image data edition method, and image data edition device | |
| JP5967036B2 (en) | Image search system, information processing apparatus, and program |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20121204 |
|
| RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20131001 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20131021 |
|
| 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: 20131029 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131106 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 5410372 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
| R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
| R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
| R371 | Transfer withdrawn |
Free format text: JAPANESE INTERMEDIATE CODE: R371 |
|
| S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |