(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-05
(45)【発行日】2024-11-13
(54)【発明の名称】情報処理装置及び情報処理プログラム
(51)【国際特許分類】
G06F 16/907 20190101AFI20241106BHJP
G06F 16/903 20190101ALI20241106BHJP
G06F 16/9038 20190101ALI20241106BHJP
G06F 16/93 20190101ALI20241106BHJP
【FI】
G06F16/907
G06F16/903
G06F16/9038
G06F16/93
(21)【出願番号】P 2020043847
(22)【出願日】2020-03-13
【審査請求日】2023-02-24
(73)【特許権者】
【識別番号】000005496
【氏名又は名称】富士フイルムビジネスイノベーション株式会社
(74)【代理人】
【識別番号】100115129
【氏名又は名称】清水 昇
(74)【代理人】
【識別番号】100102716
【氏名又は名称】在原 元司
(74)【代理人】
【識別番号】100122275
【氏名又は名称】竹居 信利
(72)【発明者】
【氏名】梅田 沙和子
【審査官】酒井 恭信
(56)【参考文献】
【文献】特開2012-083929(JP,A)
【文献】特開2004-258887(JP,A)
【文献】特開2008-027134(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00 - 16/958
(57)【特許請求の範囲】
【請求項1】
メモリと一又は複数のプロセッサを備え、
前記メモリは、複数の文書のそれぞれについて、
(1)文書に付与された属性情報と
(2)該属性情報はユーザーが付与できない第1の属性情報又はユーザーが付与できる第2の属性情報の
いずれであるかを示す情報と、を対応させて記憶しており、
前記プロセッサは、
ユーザーの検索の指定にしたがって、前記複数の文書の属性情報に対して、検索式内の第1の属性情報を用いた第1の検索を行い、該検索式内の第2の属性情報を用いた第2の検索を行い、
前記第2の属性情報は前記文書内の文字の文字認識結果を含み、
前記第1の検索は、前記第
1の属性情報の完全一致による検索を行い、
前記第2の検索は、前記第
2の属性情報の部分一致による検索を行い、
前記ユーザーが見る表示装置に、前記第1の検索による検索結果である文書、該文書の第1の属性情報、前記第2の検索による検索結果である文書、該文書の第2の属性情報を表示する、
情報処理装置。
【請求項2】
前記プロセッサは、
文書に付与された属性情報のうちの、前記第1の属性情報に該当する属性情報の数、前記第2の属性情報に該当する属性情報の数に応じて、検索結果の文書に検索結果の表示の優先順位をつける、
請求項1に記載の情報処理装置。
【請求項3】
前記プロセッサは、
前記複数の文書の全てについて、文書に付与された属性情報のうちの前記第1の属性情報に該当する属性情報の数が0である場合は、前記第2の属性情報に該当する属性情報の数が1以上であっても、検索結果は無しとする、
請求項2に記載の情報処理装置。
【請求項4】
前記プロセッサは、
検索式に第1の属性情報がある場合と第1の属性情報がない場合とでは、異なる規則にしたがって検索結果の文書に
前記優先順位をつける、
請求項2に記載の情報処理装置。
【請求項5】
メモリと一又は複数のプロセッサを備えたコンピュータの前記メモリは、複数の文書のそれぞれについて、
(1)文書に付与された属性情報と
(2)該属性情報はユーザーが付与できない第1の属性情報又はユーザーが付与できる第2の属性情報の
いずれであるかを示す情報と、を対応させて記憶しており、
前記プロセッサに、
ユーザーの検索の指定にしたがって、前記複数の文書の属性情報に対して、検索式内の第1の属性情報を用いた第1の検索を行い、該検索式内の第2の属性情報を用いた第2の検索を行い、
前記第2の属性情報は前記文書内の文字の文字認識結果を含み、
前記第1の検索は、前記第
1の属性情報の完全一致による検索を行い、
前記第2の検索は、前記第
2の属性情報の部分一致による検索を行い、
前記ユーザーが見る表示装置に、前記第1の検索による検索結果である文書、該文書の第1の属性情報、前記第2の検索による検索結果である文書、該文書の第2の属性情報を表示する、
処理を実行させるための情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置及び情報処理プログラムに関する。
【背景技術】
【0002】
特許文献1には、登録時のユーザーの負担を軽くしつつ検索時の効率を上げることを課題とし、ユーザーの指定したキーワードに基づいて文書やフォルダなどのアイテムを検索し、検索の結果抽出されたアイテムを表示して当該アイテムに対するユーザーの操作を受け付けることができる検索結果表示手段と、検索結果表示手段で示されたアイテムに対してユーザーが操作を行った場合に実行された操作があらかじめ登録された操作のいずれかであることを判定する対象操作判定手段と、対象操作判定手段で判定された判定結果が正しい場合に検索で指定されたキーワードから当該アイテムに関連するものを抽出するキーワード抽出手段と、キーワード抽出手段により抽出されたキーワードを当該アイテムのインデックスとして登録するインデックス登録手段などから構成されることが開示されている。
【0003】
特許文献2には、ユーザーに繁雑な作業負担を課さずに検索対象のデータに適切な属性値を付与することで、検索精度を向上させるための技術を提供することを課題とし、情報処理装置は、ユーザーから、データの特性を示す複数種類の属性値の指定を受け付ける受付手段と、複数のデータと当該複数のデータの各々の属性値とを記憶する記憶手段に記憶された該複数のデータのうち、前記受付手段が指定を受け付けた属性値の少なくともいずれかと適合する特性を有するデータを選択可能に提示する提示手段と、前記提示手段が提示したデータのうちユーザーにより選択されたデータの前記記憶手段に記憶された属性値を、前記受付手段が指定を受け付けた属性値に基づいて更新する更新手段と、を備えることが開示されている。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2008-027134号公報
【文献】特開2010-102593号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
文書に付与された属性情報を用いて検索する場合に、その属性情報をユーザーが付与できるか否かにかかわらず一律に属性情報を用いて検索が行われている。そのため、検索漏れ、又は、検索ノイズが発生する。そこで本発明では、文書に付与された属性情報を用いて検索する場合に、その属性情報をユーザーが付与できるか否かにかかわらず一律に属性情報を用いた検索を行う場合に比べて、検索漏れ、又は、検索ノイズの発生を抑制することができる情報処理装置及び情報処理プログラムを提供することを目的としている。
【課題を解決するための手段】
【0006】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。なお、以下の「請求項」とあるのは、出願当初の請求項である。
請求項1の発明は、メモリと一又は複数のプロセッサを備え、前記メモリは、文書に付与された属性情報と該属性情報はユーザーが付与できない第1の属性情報又はユーザーが付与できる第2の属性情報のいずれかであるかを示す情報を対応させて記憶しており、前記プロセッサは、文書の属性情報に対して、検索式内の第1の属性情報を用いた第1の検索を行い、該検索式内の第2の属性情報を用いた第2の検索を行う、情報処理装置である。
【0007】
請求項2の発明は、前記プロセッサは、さらに、前記文書の全文に対して、前記第1の属性情報を用いた第3の検索を行い、前記第2の属性情報を用いた第4の検索を行う、請求項1に記載の情報処理装置である。
【0008】
請求項3の発明は、前記第1の検索と前記第3の検索は、完全一致による検索を行い、前記第2の検索と前記第4の検索は、部分一致による検索を行う、請求項2に記載の情報処理装置である。
【0009】
請求項4の発明は、前記第1の検索と前記第3の検索は、複数の検索項目がある場合は、該検索項目を必須条件とする検索を行い、前記第2の検索と前記第4の検索は、複数の検索項目がある場合は、該検索項目を任意条件とする検索を行う、請求項2に記載の情報処理装置である。
【0010】
請求項5の発明は、前記プロセッサは、前記第1の属性情報に該当する数、前記第2の属性情報に該当する数に応じて、検索結果に優先順位をつける、請求項1に記載の情報処理装置である。
【0011】
請求項6の発明は、前記プロセッサは、前記第1の属性情報に該当する数が0である場合は、前記第2の属性情報に該当する数が1以上であっても、検索結果は無しとする、請求項5に記載の情報処理装置である。
【0012】
請求項7の発明は、前記プロセッサは、検索式に第1の属性情報がある場合と第1の属性情報がない場合とでは、異なる規則にしたがって検索結果に優先順位をつける、請求項5に記載の情報処理装置である。
【0013】
請求項8の発明は、メモリと一又は複数のプロセッサを備えたコンピュータの前記メモリは、文書に付与された属性情報と該属性情報はユーザーが付与できない第1の属性情報又はユーザーが付与できる第2の属性情報のいずれかであるかを示す情報を対応させて記憶しており、前記プロセッサに、文書の属性情報に対して、検索式内の第1の属性情報を用いた第1の検索を行い、該検索式内の第2の属性情報を用いた第2の検索を行う、処理を実行させるための情報処理プログラムである。
【発明の効果】
【0014】
請求項1の情報処理装置によれば、文書に付与された属性情報を用いて検索する場合に、その属性情報をユーザーが付与できるか否かにかかわらず一律に属性情報を用いた検索を行う場合に比べて、検索漏れ、又は、検索ノイズの発生を抑制することができる。
【0015】
請求項2の情報処理装置によれば、文書の全文に対して、第1の属性情報を用いた第3の検索を行い、第2の属性情報を用いた第4の検索を行うことができる。
【0016】
請求項3の情報処理装置によれば、第1の検索と第3の検索は、完全一致による検索を行い、第2の検索と第4の検索は、部分一致による検索を行うことができる。
【0017】
請求項4の情報処理装置によれば、第1の検索と第3の検索は、複数の検索項目を必須条件とし、第2の検索と第4の検索は、複数の検索項目を任意条件とする検索を行うことができる。
【0018】
請求項5の情報処理装置によれば、第1の属性情報に該当する数、第2の属性情報に該当する数に応じて、検索結果に優先順位をつけることができる。
【0019】
請求項6の情報処理装置によれば、第1の属性情報に該当する数が0である場合は、第2の属性情報に該当する数が1以上であっても、検索結果は無しとすることができる。
【0020】
請求項7の情報処理装置によれば、検索式に第1の属性情報がある場合と第1の属性情報がない場合とでは、異なる規則にしたがって検索結果に優先順位をつけることができる。
【0021】
請求項8の情報処理プログラムによれば、文書に付与された属性情報を用いて検索する場合に、その属性情報をユーザーが付与できるか否かにかかわらず一律に属性情報を用いた検索を行う場合に比べて、検索漏れ、又は、検索ノイズの発生を抑制することができる。
【図面の簡単な説明】
【0022】
【
図1】本実施の形態の構成例についての概念的なモジュール構成図である。
【
図2】本実施の形態を利用したシステム構成例を示す説明図である。
【
図3】本実施の形態の具体的なモジュール構成を示す説明図である。
【
図4】本実施の形態による処理例を示すフローチャートである。
【
図5】本実施の形態による処理例を示す説明図である。
【
図6】本実施の形態による処理例を示す説明図である。
【
図7】付与属性リストのデータ構造例を示す説明図である。
【
図8】文書管理テーブルのデータ構造例を示す説明図である。
【
図9】優先順位決定テーブルのデータ構造例を示す説明図である。
【
図10】優先順位決定テーブルのデータ構造例を示す説明図である。
【
図11】サムネイルの設定画面の表示例を示す説明図である。
【
図12】サムネイル表示領域の表示例を示す説明図である。
【
図13】検索結果の最大表示件数画面の表示例を示す説明図である。
【
図14】環境設定(属性A抽出規則)画面の表示例を示す説明図である。
【
図15】キー・バリュー抽出テーブルのデータ構造例を示す説明図である。
【
図16】本実施の形態による処理例を示す説明図である。
【
図17】属性設定画面の表示例を示す説明図である。
【発明を実施するための形態】
【0023】
以下、図面に基づき本発明を実現するにあたっての好適な一実施の形態の例を説明する。
図1は、本実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア(「ソフトウェア」の解釈として、コンピュータ・プログラムを含む)、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム(例えば、コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム)、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するという意味である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、1モジュールを1プログラムで構成してもよいし、複数モジュールを1プログラムで構成してもよく、逆に1モジュールを複数プログラムで構成してもよい。また、複数モジュールは1コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって1モジュールが複数コンピュータで実行されてもよい。なお、1つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続(例えば、データの授受、指示、データ間の参照関係、ログイン等)の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態にしたがって、又はそれまでの状況・状態にしたがって定まることの意を含めて用いる。「予め定められた値」が複数ある場合は、それぞれ異なった値であってもよいし、2以上の値(「2以上の値」には、もちろんのことながら、全ての値も含む)が同じであってもよい。また、「Aである場合、Bをする」という記載は、「Aであるか否かを判断し、Aであると判断した場合はBをする」の意味で用いる。ただし、Aであるか否かの判断が不要である場合を除く。また、「A、B、C」等のように事物を列挙した場合は、断りがない限り例示列挙であり、その1つのみを選んでいる場合(例えば、Aのみ)を含む。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク(「ネットワーク」には、一対一対応の通信接続を含む)等の通信手段で接続されて構成されるほか、1つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」(つまり、社会システム)にすぎないものは含まない。
また、各モジュールによる処理毎に又はモジュール内で複数の処理を行う場合はその処理毎に、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。
【0024】
本実施の形態である情報処理装置100は、文書に付与された属性情報を用いた検索機能を有している。
図1の例に示すように、情報処理装置100は、少なくともプロセッサ105、メモリ110を有しており、それらをつないでデータのやりとりをするためのバス198により構成されている。この他に、情報処理装置100は、出力装置185、受付装置190、通信装置195を有していてもよい。そして、バス198を介して、プロセッサ105、メモリ110、出力装置185、受付装置190、通信装置195の間でデータのやりとりが行われる。
【0025】
なお、
図1の例に示すブロック図は、本実施の形態を実現するコンピュータのハードウェア構成例をも示している。本実施の形態としてのプログラムが実行されるコンピュータのハードウェア構成は、
図1に例示するようなコンピュータであり、具体的にはパーソナルコンピュータ、サーバーとなり得るコンピュータ等である。具体例として、処理部としてプロセッサ105を用い、記憶装置としてメモリ110を用いている。
【0026】
プロセッサ105は、1つであってもよいし、複数あってもよい。プロセッサ105として、例えば、CPU(Central Processing Unitの略)、マイクロプロセッサ等を含む。複数のプロセッサ105を用いる場合は、密結合マルチプロセッサ、疎結合マルチプロセッサのいずれの形態であってもよい。例えば、1つのプロセッサ105内に複数のプロセッサ・コアが搭載されていてもよい。さらに、複数のコンピュータを通信路で結んで仮想的に一台のコンピュータのように振る舞わせるシステムとしてもよい。具体例として、疎結合マルチプロセッサであって、クラスタシステム、コンピュータクラスタとして構成してもよい。プロセッサ105は、プログラムメモリ120内のプログラムを実行する。
【0027】
メモリ110として、例えば、レジスタやキャッシュメモリ等のプロセッサ105内部の半導体メモリを含めてもよいし、RAM(Random Access Memoryの略)やROM(Read Only Memoryの略)等によって構成される主記憶装置であるメインメモリであってもよいし、永続性記憶装置としての機能を有するHDD(Hard Disk Driveの略)やSSD(Solid State Driveの略)の内部記憶装置、CD、DVD、Blu-ray(登録商標) Disc、USBメモリ、メモリーカード等の外部記憶装置又は補助記憶装置であってもよいし、また、通信回線を介して接続されたサーバー等の記憶装置を含めてもよい。
メモリ110は、主にプログラムを記憶するプログラムメモリ120と主にデータを記憶するデータメモリ115を有している。なお、プログラムメモリ120、データメモリ115には、図示しているモジュールのプログラムの他、本コンピュータを起動するためのOS等のプログラム、モジュールの実行において適宜変化するパラメータ等のデータが格納されていてもよい。
【0028】
出力装置185は、例えば、表示装置187、印刷装置189等を有している。液晶ディスプレイ、有機ELディスプレイ、3次元ディスプレイ等の表示装置187は、プロセッサ105による処理結果、データメモリ115内のデータ等を、テキストやイメージ情報等として表示する。プリンタ、複合機等の印刷装置189は、プロセッサ105による処理結果、データメモリ115内のデータ等を印刷する。また、出力装置185として、スピーカー、機器を振動させるアクチュエータ等を含んでいてもよい。
受付装置190は、例えば、指示受付装置192、文書読取装置194等を有している。キーボード、マウス、マイク、カメラ(視線検知カメラ等を含む)等の指示受付装置192は、これらに対する利用者の操作(動作、音声、視線等を含む)に基づいたデータを受け付ける。
また、タッチスクリーンのように、表示装置187と指示受付装置192の両方の機能を備えているものがあってもよい。その場合、キーボードの機能の実現について、物理的なキーが存在しなくても、タッチスクリーン上にソフトウェアでキーボード(いわゆるソフトウェアキーボード、スクリーンキーボード等ともいわれる)を描画して、キーボードの機能を実現するようにしてもよい。
なお、ユーザーインタフェースとして、主に、表示装置187、指示受付装置192が用いられる。
スキャナ、カメラ等の文書読取装置194は、文書を読み取り又は撮影して、発生する画像データを受け付ける。
通信装置195は、通信回線を介して他の装置と接続するためのネットワークカード等の通信回線インタフェースである。
【0029】
本実施の形態のうち、コンピュータ・プログラムによるものについては、本ハードウェア構成のプログラムメモリ120にソフトウェアであるコンピュータ・プログラムを読み込ませ、ソフトウェアとハードウェア資源とが協働して、本実施の形態が実現される。
なお、
図1に示すハードウェア構成は、1つの構成例を示すものであり、本実施の形態は、
図1に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、プロセッサ105として、GPU(Graphics Processing Unitの略、GPGPU(General-Purpose computing on Graphics Processing Unitsの略)を含む)を用いてもよいし、一部のモジュールの実行を専用のハードウェア(例えば特定用途向け集積回路(具体例として、ASIC(Application Specific Integrated Circuitの略)等がある)や再構成可能な集積回路(具体例として、FPGA(Field-Programmable Gate Arrayの略)等がある)で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続している形態でもよく、さらに
図1に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、特に、パーソナルコンピュータの他、携帯情報通信機器(携帯電話、スマートフォン、モバイル機器、ウェアラブルコンピュータ等を含む)、情報家電、ロボット、複写機、ファックス、スキャナ、プリンタ、複合機(スキャナ、プリンタ、複写機、ファックス等のいずれか2つ以上の機能を有している画像処理装置)等に組み込まれていてもよい。
【0030】
プロセッサ105は、バス198を介してメモリ110、出力装置185、受付装置190、通信装置195と接続されている。プロセッサ105は、プログラムメモリ120内のプログラムである各モジュールの実行シーケンスを記述したコンピュータ・プログラムにしたがった処理を実行する。例えば、文書読取装置194が文書の画像を読み取ったこと、又は、指示受付装置192によってユーザーの操作を受け付けたことを契機として、プログラムメモリ120内のその契機に対応するモジュールによる処理を実行し、その処理結果をデータメモリ115に記憶させたり、表示装置187に出力したり、通信装置195を制御して他の装置に送信したりする。
【0031】
メモリ110は、データメモリ115、プログラムメモリ120を有しており、バス198を介してプロセッサ105、出力装置185、受付装置190、通信装置195と接続されている。
データメモリ115は、文書記憶モジュール125、属性記憶モジュール130を記憶している。
文書記憶モジュール125は、文書を記憶している。ここで「文書(ファイルとも言われる)」とは、テキストデータ、数値データ、図形データ、画像データ、動画データ、音声データ等、又は、これらの組み合わせであり、記憶、編集及び検索等の対象となり、システム又は利用者間で個別の単位として交換できるものをいい、これらに類似するものを含む。具体的には、文書は、文書作成プログラム(いわゆるワープロソフト)によって作成された文書、画像読取装置(スキャナー等)で読み込まれた画像、Webページ等を含む。
【0032】
属性記憶モジュール130は、文書に付与された属性情報を記憶している。この属性情報は、検索対象となり、文書を検索するために利用される。属性情報は、大別して2種類ある。1つ目は、ユーザーが付与できない第1の属性情報であり、2つ目は、ユーザーが付与できる第2の属性情報である。つまり、属性記憶モジュール130は、文書に付与された属性情報と、その属性情報は第1の属性情報、又は、第2の属性情報のいずれかであるかを示す情報を対応させて記憶している。「第1の属性情報、又は、第2の属性情報のいずれかであるかを示す情報」として、例えば、第1の属性情報を示すフラグであってもよいし、第2の属性情報であることを示すフラグであってもよし、第1の属性情報と第2の属性情報を区別できるように、それぞれを別個のテーブルに記憶させるようにしてもよい。さらに、第1の属性情報は、複数の種類があってもよい。後述するように、例えば、文書作成日時、文書作成者等がある。そして、第2の属性情報は、複数の種類があってもよい。後述するように、例えば、ユーザーの操作によって選択された文字列、キー・バリュー抽出処理によって抽出された請求番号、担当者名、金額等がある。
ここで「第1の属性情報」とは、文書作成者等のユーザーが付与できない属性情報である。例えば、文書作成日時、文書作成者等の属性が該当する。「文書作成日時」は文書保存日時に応じてパソコン等のユーザーが用いている端末等が付ける属性情報であり、「文書作成者」は文書作成プログラムが付ける属性情報であり、ユーザーが意図して付与することはできない情報である。なお、ユーザーは、文書の内容又は属性情報の編集可能な者であればよく、例えば、文書作成者のほか、文書修正者、校正者、文書作成者の上司等が含まれていてもよいし、これらのうち、限定した者であってもよい。
また、「第2の属性情報」とは、文書の内容に応じて定まる属性情報であり、ユーザーが付与又は変更することができる属性情報である。例えば、文書が画像である場合に、文字認識を行って、文書内の文字画像を認識した結果であるテキストを第2の属性情報とすることができる。また、文書内の文字画像の画像解析、言語処理等を行った結果を第2の属性情報としてもよい。
なお、ここでユーザーが「付与できない」とは、第1の属性情報を文書に付与するに際して、ユーザーが意図して付与するか否かを選択できないことを示している。そして、その第1の属性情報の内容もユーザーは入力できず、変更もできない。また、ユーザーが「付与できる」とは、第2の属性情報を文書に付与するに際して、ユーザーが意図して付与するか否かを選択できることを示しており、その第2の属性情報の内容はユーザーが必ずしも入力可能又は変更可能である必要はない。具体的には、第2の属性情報を付与するとのユーザーの指示があった場合は、その属性情報の内容は、画像の文書から文字認識、キー・バリュー抽出処理等によって抽出した値であってもよい。具体例をもって示すと、ある規則にしたがったキー・バリュー抽出処理によって抽出された単語を、自動的に属性情報の内容とするようにしてもよい。もちろんのことながら、属性情報の内容を、ユーザーが入力可能、変更可能であることを妨げるものではない。
なお、「第1の属性情報」はユーザーが介在しない確実な情報であり、「第2の属性情報」はユーザーによる操作又は文字認識の性能によって異なる可能性があることから「不確実な属性情報」でもあると言える。以後、「第1の属性情報」を属性Aともいう。「第2の属性情報」を属性Bともいう。
また、「第2の属性情報」は、後述する文書管理ソフトウェア300によって文書に付与される属性であって、「第1の属性情報」は、文書管理ソフトウェア300以外によって付与される属性として捉えてもよい。
【0033】
プログラムメモリ120は、検索モジュール135、属性付与モジュール140を記憶している。
検索モジュール135は、文書の属性情報に対して、検索式内の第1の属性情報を用いた第1の検索を行い、その検索式内の第2の属性情報を用いた第2の検索を行う、
検索式内には、第1の属性情報だけの場合、第2の属性情報だけの場合、第1の属性情報と第2の属性情報が混在している場合の3つの場合がある。
つまり、検索モジュール135は、検索式内に第1の属性情報と第2の属性情報が混在している場合、1つの検索式によって、2つの検索を行うことになる。第1の検索は、文書の属性情報に対して、検索式内の第1の属性情報を用いた検索である。第2の検索は、文書の属性情報に対して、検索式内の第2の属性情報を用いた検索である。
【0034】
さらに、検索モジュール135は、文書の全文に対して、第1の属性情報を用いた第3の検索を行い、第2の属性情報を用いた第4の検索を行うようにしてもよい。
この場合、検索モジュール135は、検索式内に第1の属性情報と第2の属性情報が混在している場合、1つの検索式によって、4つの検索を行うことになる。第1の検索、第2の検索は、前述した通りである。第3の検索は、文書の全文に対して、検索式内の第1の属性情報を用いた検索である。第4の検索は、文書の全文に対して、検索式内の第2の属性情報を用いた検索である。
【0035】
さらに、検索モジュール135は、第1の検索と第3の検索は、完全一致による検索を行い、第2の検索と第4の検索は、部分一致による検索を行うようにしてもよい。
【0036】
また、検索モジュール135は、第1の検索と第3の検索は、複数の検索項目がある場合は、その検索項目を必須条件とする検索を行い、第2の検索と第4の検索は、複数の検索項目がある場合は、その検索項目を任意条件とする検索を行うようにしてもよい。必須条件とする検索とは、検索項目間を論理演算における論理積として扱うことである。任意条件とする検索とは、検索項目間を論理演算における論理和として扱うことである。
【0037】
また、検索モジュール135は、第1の属性情報に該当する数、第2の属性情報に該当する数に応じて、検索結果に優先順位をつけるようにしてもよい。
ここで「検索結果に優先順位」とは、検索結果を表示する場合に、検索式に合致している度合いに応じて順位付けを行うことである。例えば、優先順位が高いほど、検索結果として最初の方に表示するようにしてもよい。また、検索結果に優先順位を示す色付け等を行って、表示するようにしてもよい。
【0038】
例えば、検索モジュール135は、第1の属性情報に該当する数が0である場合は、第2の属性情報に該当する数が1以上であっても、検索結果は無しとするようにしてもよい。
また、検索モジュール135は、検索式に第1の属性情報がある場合と第1の属性情報がない場合とでは、異なる規則にしたがって検索結果に優先順位をつけるようにしてもよい。
ここで「異なる規則」として、例えば、検索式に第1の属性情報がある場合には、第1の属性情報の数が多いほど優先順位を高位にし、第1の属性情報の数が多い場合には第2の属性情報に該当する数が多いほど優先順位を高位にする第1規則を適用し、検索式に第1の属性情報がない場合には、第2の属性情報の数が多いほど優先順位を高位にする第2規則を適用する。
【0039】
属性付与モジュール140は、属性付与(A)モジュール145、属性付与(B)モジュール150を有している。属性付与モジュール140は、文書に属性情報を付与する。
属性付与(A)モジュール145は、文書に第1の属性情報を付与する。前述したように、例えば、パソコン内の文書作成プログラムが、文書を保存した日時を、第1の属性情報である「文書作成日時」として付与してもよい。また、文書読取装置194が文書を読み取った日時を、「文書作成日時」として付与してもよい。そして、文書作成プログラムが、操作者を、「文書作成者」として付与してもよい。また、文書の読み取り処理を行っている際に、文書読取装置194にログインしている操作者を、「文書作成者」として付与してもよい。
【0040】
属性付与(B)モジュール150は、文書に第2の属性情報を付与する。例えば、文書である画像内の文字画像を文字認識し、文字認識結果であるテキストを第2の属性情報として、文書に付与する。さらに、属性付与(B)モジュール150は、その文字認識結果と画像内の文字画像(正確には、その文字認識結果に対応する文字画像)間の位置関係を解析して、「予め定められた文字列と予め定められた位置関係にある文字列」を抽出し、第2の属性として、文書に付与する。
【0041】
図2は、本実施の形態を利用したシステム構成例を示す説明図である。
図2(a)は、スタンドアロン型のシステムとして構築した例を示すものである。
情報処理装置100と画像処理装置200は接続されている。画像処理装置200は、文書をスキャンする機能、印刷する機能等を有している。画像処理装置200は、例えば、複合機である。情報処理装置100は、印刷装置189、文書読取装置194の機能を、画像処理装置200を用いて実現することになる。なお、画像処理装置200内に情報処理装置100を内蔵させ、画像処理装置200だけで文書の検索を行うようにしてもよい。
【0042】
図2(b)は、ネットワーク型のシステムとして構築した例を示すものである。
情報処理装置100、画像処理装置200A、画像処理装置200B、ユーザー端末210A、ユーザー端末210Bは、通信回線290を介してそれぞれ接続されている。通信回線290は、無線、有線、これらの組み合わせであってもよく、例えば、通信インフラとしてのインターネット、イントラネット等であってもよい。また、情報処理装置100による機能は、クラウドサービスとして実現してもよい。
【0043】
図2(a)、
図2(b)のいずれの形態であっても、例えば、ユーザーは、画像処理装置200のスキャナ機能を用いて紙の文書を読み取って、その文書の画像を情報処理装置100に記憶させる。その際に、文書に第1の属性情報、第2の属性情報を付与する。そして、ユーザーは、ユーザー端末210を用いて、情報処理装置100に記憶されている文書を検索する。例えば、ユーザー端末210のブラウザを用いて、情報処理装置100に接続し、情報処理装置100の機能によって、文書を検索する。
また、画像処理装置200で文書を読み取るだけでなく、例えば、画像処理装置200Aから画像処理装置200Bへ、ファックス機能を用いて、文書の画像を転送し、画像処理装置200Bで受信した文書の画像を、ユーザー端末210のユーザーが、情報処理装置100に記憶させる場合に、文書に第1の属性情報、第2の属性情報を付与するようにしてもよい。また、ユーザー端末210の文書作成プログラムによって作成された文書を情報処理装置100に記憶させる場合に、文書に第1の属性情報、第2の属性情報を付与するようにしてもよい。そして、ファックス機能で受信した文書、文書作成プログラムによって作成された文書も、検索対象となる。
【0044】
図3は、本実施の形態の具体的なモジュール構成を示す説明図である。
情報処理装置100は、文書記憶モジュール125、文書管理ソフトウェア300、設定ファイル370、付与属性リスト380を有している。
文書管理ソフトウェア300は、
図1の例に示したプログラムメモリ120内のモジュールを具体化したものである。検索処理モジュール350、結果表示ユーザーインタフェースモジュール360、検索条件入力ユーザーインタフェースモジュール340、再検索条件入力ユーザーインタフェースモジュール345は、検索モジュール135に対応している。
【0045】
画像処理装置200Aは、情報処理装置100の文書記憶モジュール125と接続されている。画像処理装置200Bは、情報処理装置100の文書記憶モジュール125と接続されている。ユーザー端末210は、情報処理装置100の文書記憶モジュール125と接続されている。例えば、画像処理装置200Aのスキャナで読み込んだ文書、又は、画像処理装置200Bのファックス機能で受信した文書を、文書記憶モジュール125に記憶させてもよい。また、ユーザー端末210の文書作成プログラムによって作成された文書を、文書記憶モジュール125に記憶させてもよい。
文書記憶モジュール125は、画像処理装置200A、画像処理装置200B、ユーザー端末210、文書管理ソフトウェア300の属性付与モジュール140、文書一覧表示ユーザーインタフェースモジュール330、検索処理モジュール350、結果表示ユーザーインタフェースモジュール360と接続されている。
【0046】
文書管理ソフトウェア300は、属性付与モジュール140、文書一覧表示ユーザーインタフェースモジュール330、属性設定ユーザーインタフェースモジュール335、検索条件入力ユーザーインタフェースモジュール340、再検索条件入力ユーザーインタフェースモジュール345、検索処理モジュール350、結果表示ユーザーインタフェースモジュール360を有している。
属性付与モジュール140は、属性付与(A)モジュール145、属性付与(B)モジュール150を有しており、文書記憶モジュール125、設定ファイル370、付与属性リスト380と接続されている。
設定ファイル370は、属性A用設定ファイル372、属性B用設定ファイル374を有しており、文書管理ソフトウェア300の属性付与モジュール140、検索処理モジュール350と接続されている。
【0047】
属性付与(A)モジュール145は、ファイル情報取得モジュール305、ユーザー情報取得モジュール310を有している。
属性付与(A)モジュール145は、属性A用設定ファイル372にしたがって、ファイル情報取得モジュール305、ユーザー情報取得モジュール310に、第1の属性情報を取得させる。
ファイル情報取得モジュール305は、文書であるファイルに関する情報を第1の属性情報として取得する。第1の属性情報として、例えば、前述の「文書作成日時」が該当する。
ユーザー情報取得モジュール310は、ユーザーに関する情報を第1の属性情報として取得する。第1の属性情報として、例えば、前述の「文書作成者」が該当する。
【0048】
属性付与(B)モジュール150は、文字認識モジュール315、文書解析モジュール320、キー・バリュー抽出モジュール325を有している。
属性付与(B)モジュール150は、属性B用設定ファイル374にしたがって、文字認識モジュール315、文書解析モジュール320、キー・バリュー抽出モジュール325に、第2の属性情報を取得させる。
文字認識モジュール315は、文書が画像である場合に、文書内の文字画像を文字認識する。文字認識結果を、文書解析モジュール320、キー・バリュー抽出モジュール325に渡す。
文書解析モジュール320は、文書内の構成を解析し、ヘッダー又はフッターに記載されている文字群を抽出したり、最も大きな文字群又は左上等の予め定められた位置にある文字群を、第2の属性情報であるタイトルとして抽出したりする。第2の属性情報として、例えば、「ヘッダー記載」、「フッター記載」、「タイトル」等が該当する。
キー・バリュー抽出モジュール325は、予め定められた規則にしたがって、キー・バリュー抽出処理によって抽出した文字群を、第2の属性情報として抽出する。第2の属性情報として、例えば、前述の「請求番号」、「担当者名」、「金額」等が該当する。
なお、属性A用設定ファイル372の内容は、例えば、後述する
図14に示す環境設定(属性A抽出規則)画面1400によって設定される。また、属性B用設定ファイル374の内容は、例えば、後述する
図15に示すキー・バリュー抽出テーブル1500によって設定されている。
付与属性リスト380は、文書管理ソフトウェア300の属性付与モジュール140、検索処理モジュール350と接続されている。付与属性リスト380は、文書に付与された第1の属性、第2の属性を記憶している。付与属性リスト380の内容は、例えば、後述する
図7に示すようになっている。
【0049】
文書一覧表示ユーザーインタフェースモジュール330は、文書記憶モジュール125、属性設定ユーザーインタフェースモジュール335、検索条件入力ユーザーインタフェースモジュール340と接続されている。文書一覧表示ユーザーインタフェースモジュール330は、文書記憶モジュール125に格納された文書を、例えば、縮小表示(サムネイル表示ともいわれる)して表示装置187に表示させる。
属性設定ユーザーインタフェースモジュール335は、文書一覧表示ユーザーインタフェースモジュール330と接続されている。属性設定ユーザーインタフェースモジュール335は、文書一覧表示ユーザーインタフェースモジュール330によって表示された文書に関して、抽出された第1の属性、第2の属性を、ユーザーの操作によって変更可能に表示する。そして、ユーザーによって確認された第1の属性、第2の属性を文書に付与する。
【0050】
検索条件入力ユーザーインタフェースモジュール340は、文書一覧表示ユーザーインタフェースモジュール330、再検索条件入力ユーザーインタフェースモジュール345、検索処理モジュール350と接続されている。検索条件入力ユーザーインタフェースモジュール340は、ユーザーによって入力された検索式を受け付け、検索処理モジュール350に検索を行わせる。
再検索条件入力ユーザーインタフェースモジュール345は、検索条件入力ユーザーインタフェースモジュール340、検索処理モジュール350と接続されている。再検索条件入力ユーザーインタフェースモジュール345は、検索処理モジュール350による検索が行われた後に、再度、ユーザーによって入力された検索式を受け付け、検索処理モジュール350に検索を行わせる。
【0051】
検索処理モジュール350は、通常検索処理モジュール352、推定検索処理モジュール354、全文検索処理モジュール356を有しており、文書記憶モジュール125、検索条件入力ユーザーインタフェースモジュール340、再検索条件入力ユーザーインタフェースモジュール345、結果表示ユーザーインタフェースモジュール360、設定ファイル370、付与属性リスト380と接続されている。検索処理モジュール350は、検索条件入力ユーザーインタフェースモジュール340による検索式にしたがって、通常検索処理モジュール352、推定検索処理モジュール354、全文検索処理モジュール356のいずれか1つ以上のモジュールに検索を行わせる。
通常検索処理モジュール352は、文書の文書名に対する検索を行う。
推定検索処理モジュール354は、第1の属性又は第2の属性を対象とした検索を行う。
全文検索処理モジュール356は、文書の内容(いわゆる全文)に対する検索を行う。
結果表示ユーザーインタフェースモジュール360は、通常検索結果表示モジュール362、推定検索結果表示モジュール364、全文検索結果表示モジュール366、属性情報表示モジュール368を有しており、文書記憶モジュール125、検索処理モジュール350と接続されている。結果表示ユーザーインタフェースモジュール360は、検索処理モジュール350による検索結果を、表示装置187に表示させる。
通常検索結果表示モジュール362は、通常検索処理モジュール352による検索処理の結果を、表示装置187に表示させる。
推定検索結果表示モジュール364は、推定検索処理モジュール354による検索処理の結果を、表示装置187に表示させる。
全文検索結果表示モジュール366は、全文検索処理モジュール356による検索処理の結果を、表示装置187に表示させる。
属性情報表示モジュール368は、検索された文書に付与されている第1の属性情報、第2の属性情報を、表示装置187に表示させる。
【0052】
図4は、本実施の形態による処理例を示すフローチャートである。
ステップS402では、ユーザー400は、環境設定画面を起動する。
ステップS404では、文書管理ソフトウェア300は、付与属性/検索結果の最大表示件数/サムネイル表示の設定をする。
【0053】
ステップS406では、ユーザー400は、文書種類を指定して、フォルダに文書を格納する指示を行う。
ステップS408では、文書管理ソフトウェア300は、格納された文書に属性を付与する。
ステップS410では、文書管理ソフトウェア300は、付与した属性をリストとして記憶する。
ステップS412では、文書管理ソフトウェア300は、格納された文書の全文に文字認識処理を行って、文書の内容情報として記憶する。
【0054】
ステップS414では、ユーザー400は、検索条件を入力して、検索の指示を行う。
ステップS416では、文書管理ソフトウェア300は、文書を検索する。
ステップS418では、文書管理ソフトウェア300は、通常検索/属性検索/全文検索の検索結果を表示する。
【0055】
ステップS420では、文書管理ソフトウェア300は、探している文書が見つかったか否かを判断し、見つかった場合は処理を終了し(ステップS499)、それ以外の場合はステップS422へ進む。
ステップS422では、ユーザー400は、再検索用の検索画面を表示する指示を行う。
【0056】
ステップS424では、ユーザー400は、検索条件を変更して再検索の指示を行う。
ステップS426では、文書管理ソフトウェア300は、文書を検索する。
ステップS428では、文書管理ソフトウェア300は、再検索結果を表示する。
【0057】
図5は、本実施の形態による処理例を示す説明図である。
図4の例に示すフローチャートのステップS406、ステップS414の処理における表示を例示するものである。
ステップS502では、例えば、ユーザーは、フォルダ500内の文書群510を文書一覧画面520に、ドラッグ・アンド・ドロップ(複写操作)を行う。
【0058】
ステップS504では、属性付与モジュール140は、ドラッグ・アンド・ドロップの操作を検知すると、対象となる文書群510の各文書に属性を付与する。
文書一覧画面520には、検索用領域530、文書表示領域540、属性表示領域550を表示する。
検索用領域530には、検索キーワード入力欄532、検索ボタン534を表示する。
文書表示領域540には、ドラッグ・アンド・ドロップされた文書である文書501~文書508を、縮小表示する。各文書の下には、文書名を表示している。
属性表示領域550には、属性名欄552、属性値欄554を表示する。ユーザーの操作によって選択された文書表示領域540内の文書に付与されている属性名、対応する属性値を表示する。
図5の例では、文書501が選択され、その文書501に付与されている属性名、属性値を、属性表示領域550に表示している。具体的には、例えば、属性表示領域550の1行目は、属性名「有効期限」は、属性値が「2020/08/21」であることを示しており、2行目は、属性名「分類」は、属性値が「領収書」であることを示しており、3行目は、属性名「担当者」は、属性値が「佐藤」であることを示しており、4行目は、属性名「取引先」は、属性値が「A社」であることを示している。
この処理によって、各文書には、例えば、文書管理テーブル800が付与される。
図8は、文書管理テーブル800のデータ構造例を示す説明図である。文書管理テーブル800は、文書ID欄805、文書名欄810、文書作成者欄815、文書作成日時欄820、データ形態欄825、有効期限欄830、文書種類欄835、タイトル欄840、担当者名欄845、金額欄850を有している。文書ID欄805は、本実施の形態において、文書を一意に識別するための情報(具体的には、文書ID:IDentificationの略)を記憶している。文書名欄810は、その文書の文書名を記憶している。文書作成者欄815は、その文書の作成者を記憶している。文書作成日時欄820は、その文書の作成日時(年、月、日、時、分、秒、秒以下、又はこれらの組み合わせであってもよい)を記憶している。データ形態欄825は、その文書のデータ形態を記憶している。有効期限欄830は、その文書の有効期限を記憶している。文書種類欄835は、その文書の種類を記憶している。タイトル欄840は、その文書のタイトルを記憶している。担当者名欄845は、その文書の担当者名を記憶している。金額欄850は、その文書の金額を記憶している。例えば、属性Aとして、文書作成者欄815、文書作成日時欄820、データ形態欄825、有効期限欄830、文書種類欄835が該当し、属性Bとして、タイトル欄840、担当者名欄845、金額欄850が該当する。
【0059】
ステップS506では、検索処理モジュール350は、ユーザーの操作に応じて、文書の検索を行う。
例えば、ユーザーは、検索キーワード入力欄532に「領収書 A社 佐藤」と入力する。なお、ここで、ユーザーは、検索キーワードの入力時に「属性A」「属性B」を意識する必要はない。
検索結果を、
図6の例を用いて説明する。
【0060】
図6~
図10の例を用いて、
図4の例に示すフローチャートのステップS418の処理を説明する。
図6は、本実施の形態による処理例を示す説明図である。
図5の例で示したように、検索キーワード入力欄532に「領収書 A社 佐藤」と入力され、検索ボタン534が選択された場合の表示例を示すものである。
文書表示領域540を、3つの領域(通常検索結果表示領域542、属性検索結果表示領域544、全文検索結果表示領域546)に分けて表示する。通常検索結果表示領域542は検索対象が文書名であり、属性検索結果表示領域544は検索対象が属性であり、全文検索結果表示領域546は検索対象が文書の内容である。つまり、属性検索結果表示領域544は、第1の検索と第2検索の結果を表示し、全文検索結果表示領域546は、第3の検索と第4検索の結果を表示する。
【0061】
通常検索結果表示領域542には、文書521、文書522が検索結果として表示される。ここでの検索は、文書の文書名に対して、検索を行う。この場合、複数の検索項目(「領収書」、「A社」、「佐藤」)がある場合、その検索項目を必須条件(いわゆるAND条件)とする検索を行っている。したがって、文書名として、「領収書」、「A社」、「佐藤」が含まれている文書が検索結果となっている。文書521の文書名は「領収書_A社_佐藤_01」であり、文書522の文書名は「領収書_A社_佐藤_02」であり、各検索項目を有している。なお、「_」は区切り記号として機能しており、検索対象とはならない。
【0062】
属性検索結果表示領域544には、文書501、文書507、文書502、文書503が検索結果として表示される。ここでの検索は、文書の属性に対して、検索式内の属性Aを用いた第1の検索と、検索式内の属性Bを用いた第2の検索が行われている。第1の検索は、各検索項目に対して完全一致による検索を行っている。そして、複数の検索項目がある場合は、その検索項目を必須条件とする検索を行っている。第2の検索は、各検索項目に対して部分一致による検索を行っている。そして、複数の検索項目がある場合は、その検索項目を任意条件(いわゆるOR条件)とする検索を行っている。
【0063】
検索キーワード入力欄532に入力された検索項目のうち、いずれが属性Aであり、いずれが属性Bであるかについては、付与属性リスト380を用いて判断する。
図7は、付与属性リスト380のデータ構造例を示す説明図である。付与属性リスト380は、属性Aリスト382、属性Bリスト384を記憶している。例えば、属性Aリスト382に、『[属性A]領収書/請求書/納品書…』とし、属性Bリスト384に、『[属性B]A社/B社/C社/D社…、佐藤/鈴木/田中…』としている。つまり、属性Aとして、領収書、請求書、納品書等があることを示しており、属性Bとして、A社、B社、C社、D社等、佐藤、鈴木、田中等があることを示している。検索項目が、属性Aリスト382、属性Bリスト384のいずれに属しているかを判断して、属性Aに属している検索項目であれば、第1の検索を行い、属性Bに属している検索項目であれば、第2の検索を行う。
検索キーワード入力欄532に入力された「領収書」、「A社」、「佐藤」のうち、属性Aは「領収書」であり、属性Bは「A社」、「佐藤」である。したがって、第1の検索は、属性として「領収書」の完全一致の検索となる。第2の検索は、属性として「A社」、「佐藤」の部分一致であり、複数の検索項目がある場合に該当するので、その検索項目を任意条件とする検索となる。したがって、例えば、第2の検索では、属性として「A社XXX」、「佐藤YY」等も該当し、属性として「A社」、「佐藤」のいずれか一方のみでも該当することになる。
そして、属性検索結果表示領域544には、第1の検索結果に該当し、さらに、第2の検索結果に該当する文書を表示するようにしてもよい。また、属性検索結果表示領域544には、第1の検索結果、第2の検索結果のいずれかに該当する文書を表示するようにしてもよい。また、属性検索結果表示領域544には、第1の検索結果が無い場合には、第2の検索結果があったとしても、該当文書無しとしてもよい。
【0064】
なお、付与属性リスト380は、予め定められている。また、属性を付与した際に、付与属性リスト380を生成するようにしてもよい。例えば、属性Aである属性名から、その属性値を抽出して、属性Aリスト382に加えるようにしてもよい。例えば、属性名「分類」は属性Aであり、その属性値「領収書」を属性Aリスト382に加えている。そして、属性Bである属性名から、その属性値を抽出して、属性Bリスト384に加えるようにしてもよい。例えば、属性名「担当者」、「取引先」は属性Bであり、その属性値「佐藤」、「A社」を属性Bリスト384に加えている。
また、検索項目が属性A、属性Bのいずれにも該当しない場合は、不要な検索項目として、その検索項目では検索を行わないようにしてもよい。
また、付与属性リスト380には、属性Aリスト382のみとしてもよい。その場合、属性Aリスト382以外の検索項目があった場合には、属性Bであると判断するようにしてもよい。
【0065】
全文検索結果表示領域546には、文書502、文書504、文書505、文書501が検索結果として表示される。ここでの検索は、文書の内容(いわゆる全文)に対して、検索式内の属性Aを用いた第3の検索と、検索式内の属性Bを用いた第4の検索が行われている。第3の検索は、各検索項目に対して完全一致による検索を行っている。そして、複数の検索項目がある場合は、その検索項目を必須条件とする検索を行っている。第4の検索は、各検索項目に対して部分一致による検索を行っている。そして、複数の検索項目がある場合は、その検索項目を任意条件とする検索を行っている。
【0066】
第3の検索は、属性として「領収書」の完全一致の検索となる。第4の検索は、属性として「A社」、「佐藤」の部分一致であり、複数の検索項目がある場合に該当するので、その検索項目を任意条件とする検索となる。
そして、全文検索結果表示領域546には、第3の検索結果に該当し、さらに、第4の検索結果に該当する文書を表示するようにしてもよい。また、全文検索結果表示領域546には、第3の検索結果、第4の検索結果のいずれかに該当する文書を表示するようにしてもよい。また、全文検索結果表示領域546には、第3の検索結果が無い場合には、第4の検索結果があったとしても、該当文書無しとしてもよい。
【0067】
属性検索結果表示領域544、全文検索結果表示領域546の検索結果の優先順位(表示順位)について説明する。
属性Aが多いほど検索結果の優先順位を上げる。属性Aの数が同じ数のときは、属性Bの数を比較して多い方の優先順位を高くする。例えば、優先順位決定テーブル900のように行う。
図9は、優先順位決定テーブル900のデータ構造例を示す説明図である。優先順位決定テーブル900は、文書ID欄905、属性Aの数欄910、属性Bの数欄915、優先順位欄920を有している。文書ID欄905は、検索結果(第1の検索と第2の検索による検索結果、又は、第3の検索と第4の検索による検索結果)である文書IDを記憶している。属性Aの数欄910は、その文書に付与されている属性のうち、検索項目内の該当する属性Aの数を記憶している。属性Bの数欄915は、その文書に付与されている属性のうち、検索項目内の該当する属性Bの数を記憶している。優先順位欄920は、優先順位を記憶している。
例えば、優先順位決定テーブル900の1行目の文書ID:0003は、属性Aの数が「2」、属性Bの数が「1」、優先順位が「3」であることを示しており、2行目の文書ID:0005は、属性Aの数が「2」、属性Bの数が「2」、優先順位が「2」であることを示しており、3行目の文書ID:0001は、属性Aの数が「1」、属性Bの数が「3」、優先順位が「4」であることを示しており、4行目の文書ID:0007は、属性Aの数が「0」、属性Bの数が「4」、優先順位が「ヒットしない」であることを示しており、5行目の文書ID:0011は、属性Aの数が「3」、属性Bの数が「0」、優先順位が「1」であることを示している。つまり、この優先順位決定テーブル900の場合、文書ID:0011、文書ID:0005、文書ID:0003、文書ID:0001の順で表示する。具体的には、
図6に示す例の場合、属性検索結果表示領域544又は全文検索結果表示領域546で、左側から順に表示する。そして、文書ID:0007は、属性Bはあるが、属性Aはないので、表示しない。
【0068】
また、検索項目に、属性Aが含まれている場合と、属性Aが含まれていない場合とで、検索結果の優先順位の規則を変更するようにしてもよい。検索項目が属性Bだけで構成されている場合は、属性Aがそもそも検索項目にないので、優先順位決定テーブル900のように優先順位を定めると、何も検索結果がないことになってしまう。そこで、優先順位決定テーブル1000のように、属性Bの数で優先順位を定める。
図10は、優先順位決定テーブル1000のデータ構造例を示す説明図である。優先順位決定テーブル1000は、文書ID欄1005、属性Bの数欄1010、優先順位欄1015を有している。文書ID欄1005は、文書IDを記憶している。属性Bの数欄1010は、属性Bの数を記憶している。優先順位欄1015は、優先順位を記憶している。
例えば、優先順位決定テーブル1000の1行目は、文書ID:0022は、属性Bの数が「5」、優先順位が「2」であることを示しており、2行目は、文書ID:0031は、属性Bの数が「3」、優先順位が「3」であることを示しており、3行目は、文書ID:0043は、属性Bの数が「0」、優先順位が「ヒットしない」であることを示しており、4行目は、文書ID:0055は、属性Bの数が「10」、優先順位が「1」であることを示している。つまり、この優先順位決定テーブル1000の場合、文書ID:0055、文書ID:0022、文書ID:0031の順で表示する。具体的には、
図6に示す例の場合、属性検索結果表示領域544又は全文検索結果表示領域546で、左側から順に表示する。そして、文書ID:0043は、属性Bがないので、表示しない。
【0069】
図11~
図15の例を用いて、
図4の例に示すフローチャートのステップS404の処理を説明する。
図11は、サムネイルの設定画面1100の表示例を示す説明図である。検索結果を縮小表示する際に、どのページを表示するかを指定できるようにしている。
サムネイルの設定画面1100には、表示ページ選択肢1110、表示ページ選択肢1120、表示ページ選択肢1130、OKボタン1190、キャンセルボタン1195を表示し、表示ページ選択肢1120は、ページ指定欄1125を有しており、表示ページ選択肢1130は、表示ページ数欄1135を有している。
表示ページ選択肢1110には、「表紙を表示」と表示し、表示ページ選択肢1120には、「指定したページを表示(最大4ページ)」と表示し、表示ページ選択肢1130には、「特徴ページを表示(最大4ページ)」と表示する。つまり、3種類の表示ページの指定ができるようにしている。具体的には、(1)表紙、(2)指定ページ、(3)検索項目を多く含むページ、がある。ここでの「特徴ページ」とは、検索に利用した文字列(検索項目)があるページを特徴ページとし、出現数の多い順に表示するページを決定する。なお、属性に対する検索(第1の検索、第2の検索)の場合であって、属性Bを文書の文字認識結果から抽出している場合、検索項目である属性Bが含まれているページが該当することになる。また、全文に対する検索(第3の検索、第4の検索)の場合、検索に利用した文字列が多く含まれているページが該当することになる。
ユーザーの操作によって、OKボタン1190が選択されると、表示ページ選択肢1110、表示ページ選択肢1120、表示ページ選択肢1130のいずれかが選択された設定での表示対象ページとなる。ユーザーの操作によって、キャンセルボタン1195が選択されると、初期値、又は、設定前の状態に戻る。
【0070】
図12は、サムネイル表示領域1200の表示例を示す説明図である。
サムネイル表示領域1200は、
図11のページ指定欄1125で2ページ分が指定された場合、又は、表示ページ数欄1135で2ページ分が指定された場合の表示例を示すものである。
サムネイル表示領域1200は、1つの文書についてのサムネイルの表示領域である。複数のページを表示することが可能である。なお、サムネイル表示領域1200そのものの大きさは1ページのみを表示する場合と複数ページを表示する場合とで同じであってもよいし、複数ページを表示する場合は、1ページのみを表示する場合よりも大きくしてもよい。
【0071】
図13は、検索結果の最大表示件数画面1300の表示例を示す説明図である。検索結果を縮小表示する際に、最大表示数を指定できるようにしている。
検索結果の最大表示件数画面1300には、最大表示件数指定領域1310、増加ボタン1312、減少ボタン1314、OKボタン1390、キャンセルボタン1395を表示する。
最大表示件数指定領域1310には、デフォルト値、又は、ユーザーの操作によって入力された値、が表示される。そして、増加ボタン1312、減少ボタン1314により、サムネイル文書1210内の件数を増減できる。ユーザーの操作によって、OKボタン1390が選択されると、最大表示件数指定領域1310内の値が最大表示数となる。ユーザーの操作によって、キャンセルボタン1395が選択されると、初期値、又は、設定前の状態に戻る。
【0072】
図14は、環境設定(属性A抽出規則)画面1400の表示例を示す説明図である。属性Aの抽出ルールを定める一例である。
環境設定(属性A抽出規則)画面1400は、属性Aを抽出する規則(属性A用設定ファイル372)を定めるために表示され、ユーザーの操作にしたがって設定される。
環境設定(属性A抽出規則)画面1400には、文書作成者欄1405、文書作成日時欄1410、データ形態欄1415、有効期限欄1420を表示する。
文書作成者欄1405では、属性Aとして文書の作成者を抽出する規則を定めている。例えば、画像処理装置200の操作者である「画像処理装置200のログイン者」の他に、ユーザー端末210の操作者、文書作成プログラムで作成した場合は、その文書作成プログラムの操作者等がある。文書作成日時欄1410では、属性Aとして文書が作成された日時を抽出する規則を定めている。例えば、「画像処理装置200によるスキャン日時」の他に、文書作成プログラムで作成した場合は、その文書作成プログラムによる格納日時等がある。データ形態欄1415は、文書のデータ形態を抽出する規則を定めている。例えば、「文書のヘッダー情報にしたがう」の他に、画像処理装置200による読み取り時の設定にしたがう等がある。読み取り時の設定として、例えば、文書をスキャンする際の設定として、解像度、カラー又は白黒等がある。有効期限欄1420は、その文書の有効期限を設定する規則を定めている。例えば、「作成日時から1年」の他に、無期限、不要等がある。
【0073】
図15は、キー・バリュー抽出テーブル1500のデータ構造例を示す説明図である。属性Bの抽出ルールを定める一例である。
図15は、キー・バリュー抽出テーブル1500のデータ構造例を示す説明図である。「予め定められた文字列とその文字列と予め定められた位置関係にある文字列」を抽出するための規則の一例を示すものである。キー・バリュー抽出テーブル1500は、キー欄1505、バリュー抽出規則欄1510を有している。キー欄1505は、「予め定められた文字列」であるキーを記憶している。バリュー抽出規則欄1510は、バリュー抽出規則を記憶している。
例えば、規則1として、キー・バリュー抽出テーブル1500の1行目は、キーである「請求番号」のバリュー抽出規則は『「請求番号」が記載された位置の右側にある英数字の10桁を「請求書番号」として抽出』であることを示している。画像処理装置200のオプション機能、又は、情報処理装置100は、このキー・バリュー抽出テーブル1500にしたがって、属性値を抽出する。具体的には、文書内の文字画像を文字認識し、その文字認識結果にキー欄1505内の文字例がある場合は、バリュー抽出規則欄1510内の規則にしたがって、属性値を抽出する。これによって、予め定められた文字列とその文字列と予め定められた位置関係にある文字列を抽出することができる。
【0074】
図16は、本実施の形態による処理例を示す説明図である。
図16の例を用いて、
図4の例に示すフローチャートのステップS422の処理を説明する。つまり、再検索におけるユーザーインタフェース、検索結果の表示例を示すものである。
1回目の検索においては、第1の検索と第3の検索においては、完全一致であり、複数の検索項目がある場合は、その検索項目を必須条件とする検索を行っていた。そして、第2の検索と第4の検索においては、部分一致であり、複数の検索項目がある場合は、その検索項目を任意条件とする検索を行っていた。そのような検索のために、ユーザーが所望の文書が取り出せなかった可能性がある。そこで、本実施の形態では、再検索のユーザーインタフェースにおいては、完全一致又は部分一致の変更、必須条件又は任意条件の変更を可能として、検索を行うようにしている。
【0075】
図16(a)に示す例は、再検索におけるユーザーインタフェースである。
属性検索(再検索)画面1600には、検索キーワード入力欄1610、検索キーワード入力欄1620、検索キーワード入力欄1630、再検索ボタン1690を表示する。
1行目に前回の検索項目である「領収書」と表示された検索キーワード入力欄1610、完全一致・部分一致指定欄1612、必須・任意指定欄1614、削除ボタン1616を表示し、2行目に前回の検索項目である「A社」と表示された検索キーワード入力欄1620、完全一致・部分一致指定欄1622、必須・任意指定欄1624、削除ボタン1626を表示し、3行目に前回の検索項目である「佐藤」と表示された検索キーワード入力欄1630、完全一致・部分一致指定欄1632、必須・任意指定欄1634、削除ボタン1636を表示する。これらは、前回の検索において、検索項目の数だけ表示されることになる。
なお、初期値として、1行目は属性Aであるので、完全一致・部分一致指定欄1612は完全一致、必須・任意指定欄1614は必須、2行目と3行目は属性Bであるので、完全一致・部分一致指定欄1622と完全一致・部分一致指定欄1632は部分一致、必須・任意指定欄1624と必須・任意指定欄1634は任意となっている。これらを、ユーザーは変更することができる。また、ユーザーの操作によって削除ボタン1616、削除ボタン1626、削除ボタン1636が選択された場合は、その行の検索項目自体を削除する。再検索ボタン1690が選択された場合は、各行の設定にしたがって再度の検索を行う。
【0076】
図16(b)に示す例は、再検索におけるユーザーインタフェースである。
図6の例で示した表示例とは異なった文書、異なった表示順位で表示されている。具体的には、属性検索結果表示領域544には、文書501、文書509、文書507、文書503の順で表示され、全文検索結果表示領域546には、文書502、文書515、文書551、文書501の順で表示されている。
なお、
図16(a)の例で示した属性検索(再検索)画面1600は、文書の属性、文書の内容に対する検索の指定であったが、文書の文書名に対する検索においても、同様に、完全一致又は部分一致の変更、必須条件又は任意条件の変更を可能として、検索を行うようにしてもよい。この場合、再検索を行うことによって、通常検索結果表示領域542内も文書、表示順位が変わることがある。
また、文書の属性に対する検索と、文書の内容に対する検索に分けて、完全一致又は部分一致の変更、必須条件又は任意条件の変更を可能としてもよい。例えば、変更されたのが、文書の属性に対する検索だけである場合は、再検索を行うことによって、属性検索結果表示領域544内だけが、文書、表示順位が変わることがある。
【0077】
図17は、属性設定画面1700の表示例を示す説明図である。文書に付与される属性を、ユーザーの操作で指定できるようにするものである。
属性設定画面1700には、文書種類設定欄1710、属性設定管理テーブル1720、追加ボタン1780、変更ボタン1782、削除ボタン1784、OKボタン1790、キャンセルボタン1795を表示する。
属性設定管理テーブル1720は、属性名欄1722、参照する値欄1724、属性種類欄1726を有している。属性名欄1722では、属性名を表示し、参照する値欄1724では、その属性名の属性値として、参照する値を表示し、属性種類欄1726では、その属性名の属性種類を表示する。属性設定管理テーブル1720の1行目では、属性名欄1722に「文書作成日時」、参照する値欄1724に「文書の格納日時」、属性種類欄1726に「属性A」と指定されている。具体的には、属性「文書作成日時」は、対象となっている文書を格納した日時を属性値とし、ユーザーが意図して付与することはできない属性Aである。2行目では、属性名欄1722に「文書作成者」、参照する値欄1724に「ログインしていたユーザー名」、属性種類欄1726に「属性A」と指定されている。具体的には、属性「文書作成者」は、ログインしているユーザー名を属性値とし、属性Aである。3行目では、属性名欄1722に「タイトル」、参照する値欄1724に「領域指定」、属性種類欄1726に「属性B」と指定されている。具体的には、属性「タイトル」は、ユーザーの操作によって指定された領域内の文字列(文書がテキストである場合は、ユーザーによって選択された文字列であり、文書が画像である場合は、ユーザーによって指定された領域内の文字画像を文字認識した結果である)を属性値とし、ユーザーが付与できる属性Bである。4行目では、属性名欄1722に「担当者名」、参照する値欄1724に「キー・バリュー抽出」、属性種類欄1726に「属性B」と指定されている。具体的には、属性「担当者名」は、例えば、「担当」と記載された位置の右側にある文字列を「担当者名」として抽出するキー・バリュー処理によって抽出された文字列を属性値とし、ユーザーが付与できる属性Bである。5行目では、属性名欄1722に「金額」、参照する値欄1724に「キー・バリュー抽出」、属性種類欄1726に「属性B」と指定されている。具体的には、属性「金額」は、例えば、「合計金額」と記載された位置の右側にある数字列を「金額」として抽出するキー・バリュー処理によって抽出された数字を属性値とし、ユーザーが付与できる属性Bである。
ユーザーの操作によって、追加ボタン1780が選択されると、属性設定管理テーブル1720に属性を追加することができる。変更ボタン1782が選択されると、その際に選択されている属性(属性設定管理テーブル1720内の1行)の内容を変更することができる。なお、属性種類欄1726内の値は、管理者等の特権ユーザーは変更可能であるが、一般のユーザーの操作では変更できないようにしてもよい。属性によって、その属性種類(属性A、属性B)は固定されたものである。削除ボタン1784が選択されると、その際に選択されている属性を削除することができる。ただし、追加、変更、削除できるのは、属性Bの属性のみであり、属性Aの属性を追加、変更、削除することはできないようにする。
ユーザーの操作によって、OKボタン1790が選択されると、文書種類設定欄1710で指定された文書種類について、属性設定管理テーブル1720で設定された属性が付与されることになる。ユーザーの操作によって、キャンセルボタン1795が選択されると、初期値、又は、設定前の状態に戻る。
【0078】
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通等のために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク(DVD)であって、DVDフォーラムで策定された規格である「DVD-R、DVD-RW、DVD-RAM等」、DVD+RWで策定された規格である「DVD+R、DVD+RW等」、コンパクトディスク(CD)であって、読出し専用メモリ(CD-ROM)、CDレコーダブル(CD-R)、CDリライタブル(CD-RW)等、ブルーレイ・ディスク(Blu-ray(登録商標) Disc)、光磁気ディスク(MO)、フレキシブルディスク(FD)、磁気テープ、ハードディスク、読出し専用メモリ(ROM)、電気的消去及び書換可能な読出し専用メモリ(EEPROM(登録商標))、フラッシュ・メモリ、ランダム・アクセス・メモリ(RAM)、SD(Secure Digitalの略)メモリーカード等が含まれる。
そして、前記のプログラムの全体又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク(LAN)、メトロポリタン・エリア・ネットワーク(MAN)、ワイド・エリア・ネットワーク(WAN)、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、又は無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分若しくは全部であってもよく、又は別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して記録されていてもよい。また、圧縮や暗号化等、復元可能であればどのような態様で記録されていてもよい。
【符号の説明】
【0079】
100…情報処理装置
105…プロセッサ
110…メモリ
115…データメモリ
120…プログラムメモリ
125…文書記憶モジュール
130…属性記憶モジュール
135…検索モジュール
140…属性付与モジュール
145…属性付与(A)モジュール
150…属性付与(B)モジュール
185…出力装置
187…表示装置
189…印刷装置
190…受付装置
192…指示受付装置
194…文書読取装置
195…通信装置
198…バス
200…画像処理装置
210…ユーザー端末
290…通信回線