(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-09
(45)【発行日】2024-05-17
(54)【発明の名称】コンテキスト・フリーの再帰的な文書分解による拡張性のある構造学習
(51)【国際特許分類】
G06V 30/14 20220101AFI20240510BHJP
G06V 30/412 20220101ALI20240510BHJP
【FI】
G06V30/14 340J
G06V30/412
(21)【出願番号】P 2022515803
(86)(22)【出願日】2020-09-15
(86)【国際出願番号】 IB2020058572
(87)【国際公開番号】W WO2021053510
(87)【国際公開日】2021-03-25
【審査請求日】2023-02-24
(32)【優先日】2019-09-16
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】390009531
【氏名又は名称】インターナショナル・ビジネス・マシーンズ・コーポレーション
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MACHINES CORPORATION
【住所又は居所原語表記】New Orchard Road, Armonk, New York 10504, United States of America
(74)【代理人】
【識別番号】100112690
【氏名又は名称】太佐 種一
(72)【発明者】
【氏名】ゴヤル、ムニシュ
(72)【発明者】
【氏名】アリア、アヴィナーシュ
【審査官】長谷川 素直
(56)【参考文献】
【文献】特開2000-090194(JP,A)
【文献】特開2000-298702(JP,A)
【文献】特開2000-285139(JP,A)
【文献】特開2015-153240(JP,A)
【文献】特開昭61-175877(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06V 30/00
G06T 7/00
(57)【特許請求の範囲】
【請求項1】
文書を処理する方法であって、
前記文書を、該文書を画素値のセットとして表すビットマップ画像に変換することと、
前記ビットマップ画像からの画素値のセットを行総和値のセットおよび列総和値のセットに集約することと、
局所フーリエ変換を前記行総和値のセットおよび前記列総和値のセットに適用して前記行総和値のセットおよび前記列総和値のセットの周波数表現のセットを生成することと、
前記周波数表現のセットで識別される少なくとも1つの分離位置に基づいて、前記ビットマップ画像を画像部分のセットに分解することと、
前記画像部分のセットをテキスト認識システムに送信することと、
を含む、方法。
【請求項2】
前記行総和値のセットを行総和信号にまとめることと、
前記列総和値のセットを列総和信号にまとめることと、
前記局所フーリエ変換を前記行総和信号に適用して行周波数表現を生成し、前記局所フーリエ変換を前記列総和信号に適用して列周波数表現を生成することと、
をさらに含む、請求項1に記載の方法。
【請求項3】
前記行周波数表現においてゼロ周波数領域を識別することであって、前記ゼロ周波数領域は、前記ビットマップ画像内の隣接する行の間で前記行総和値のセットのサブセットに変化がないことに対応する、識別することと、
前記ゼロ周波数領域内で前記分離位置を選択することと、
をさらに含む、請求項
2に記載の方法。
【請求項4】
前記分解することの前に、前記方法は、
前記ビットマップ画像の第1のビットマップ境界領域のセットに対応する前記列周波数表現における第1のゼロ周波数領域のセットを識別することと、
前記ビットマップ画像の第2のビットマップ境界領域のセットに対応する前記行周波数表現における第2のゼロ周波数領域のセットを識別することと、
前記ビットマップ画像から前記第1のビットマップ境界領域のセットおよび前記第2のビットマップ境界領域のセットを除去することと、
をさらに含む、請求項
2に記載の方法。
【請求項5】
前記画像部分のセットは第1の画像部分および第2の画像部分を含み、前記方法は、
前記第1の画像部分からの画素値のサブセットを行総和値のサブセットおよび列総和値のサブセットに集約することと、
前記局所フーリエ変換を前記行総和値のサブセットおよび前記列総和値のサブセットに適用して周波数表現のサブセットを生成することと、
前記周波数表現のサブセットで識別される少なくとも1つの異なる分離位置に基づいて、前記第1の画像部分を第3の画像部分および第4の画像部分に再帰的に分解することと、
をさらに含む、請求項1~4のいずれか一項に記載の方法。
【請求項6】
前記周波数表現のセットは、前記行総和値のセットに対応する行周波数表現を含み、前記画像部分のセットは第1の画像部分および第2の画像部分を含み、前記方法は、
前記第1の画像部分に対応する前記行周波数表現の部分を評価することと、
前記評価することから、ゼロ周波数信号スパン・サイズと非ゼロ周波数信号スパン・サイズとの最小の線形結合を特定することと、
前記最小の線形結合が前記第1の画像部分の高さに近いか否かを判定することと、
前記最小の線形結合が前記第1の画像部分の高さに近いと判定したことに応答して、前記第1の画像部分の分解を終了することと、
をさらに含む、請求項1~5のいずれか一項に記載の方法。
【請求項7】
前記テキスト認識システムによって、前記画像部分のセットのそれぞれに光学文字認識を適用してテキスト部分のセットを生成することであって、前記テキスト部分のセット内の各テキスト部分は、前記画像部分の1つに対応する、生成すること
をさらに含む、請求項1~6のいずれか一項に記載の方法。
【請求項8】
前記文書を変換することは、
画素強度のセットを含む黒/白の画像に前記文書を変換することと、
前記画素強度のセットを正規化して前記ビットマップ画像の前記画素値のセットを生成することと、
を含む、請求項1~7のいずれか一項に記載の方法。
【請求項9】
1つまたは複数のプロセッサと、
前記プロセッサのうちの少なくとも1つに結合されたメモリと、
前記メモリに記憶され、アクションを実行することによって文書を処理するために前記プロセッサのうちの少なくとも1つによって実行されるコンピュータ・プログラム命令のセットと、
を含む情報ハンドリング・システムであって、前記アクションは、
前記文書を、該文書を画素値のセットとして表すビットマップ画像に変換することと、
前記ビットマップ画像からの画素値のセットを行総和値のセットおよび列総和値のセットに集約することであって、前記ビットマップ画像は文書の画素化された表現である、集約することと、
局所フーリエ変換を前記行総和値のセットおよび前記列総和値のセットに適用して前記行総和値のセットおよび前記列総和値のセットの周波数表現のセットを生成することと、
前記周波数表現のセットで識別される少なくとも1つの分離位置に基づいて、前記ビットマップ画像を画像部分のセットに分解することと、
前記画像部分のセットをテキスト認識システムに送信することと、
を含む、情報ハンドリング・システム。
【請求項10】
前記プロセッサは、
前記行総和値のセットを行総和信号にまとめることと、
前記列総和値のセットを列総和信号にまとめることと、
前記局所フーリエ変換を前記行総和信号に適用して行周波数表現を生成し、前記局所フーリエ変換を前記列総和信号に適用して列周波数表現を生成することと、
を含む追加のアクションを実行する、請求項9に記載の情報ハンドリング・システム。
【請求項11】
前記プロセッサは、
前記行周波数表現においてゼロ周波数領域を識別することであって、前記ゼロ周波数領域は、前記ビットマップ画像内の隣接する行の間で前記行総和値のセットのサブセットに変化がないことに対応する、識別することと、
前記ゼロ周波数領域内で前記分離位置を選択することと、
を含む追加のアクションを実行する、請求項
10に記載の情報ハンドリング・システム。
【請求項12】
前記分解することの前に、前記プロセッサは、
前記ビットマップ画像の第1のビットマップ境界領域のセットに対応する前記列周波数表現における第1のゼロ周波数領域のセットを識別することと、
前記ビットマップ画像の第2のビットマップ境界領域のセットに対応する前記行周波数表現における第2のゼロ周波数領域のセットを識別することと、
前記ビットマップ画像から前記第1のビットマップ境界領域のセットおよび前記第2のビットマップ境界領域のセットを除去することと、
を含む追加のアクションを実行する、請求項
10に記載の情報ハンドリング・システム。
【請求項13】
前記画像部分のセットは第1の画像部分および第2の画像部分を含み、前記プロセッサは、
前記第1の画像部分からの画素値のサブセットを行総和値のサブセットおよび列総和値のサブセットに集約することと、
前記局所フーリエ変換を前記行総和値のサブセットおよび前記列総和値のサブセットに適用して周波数表現のサブセットを生成することと、
前記周波数表現のサブセットで識別される少なくとも1つの異なる分離位置に基づいて、前記第1の画像部分を第3の画像部分および第4の画像部分に再帰的に分解することと、
を含む追加のアクションを実行する、請求項9~12のいずれか一項に記載の情報ハンドリング・システム。
【請求項14】
前記周波数表現のセットは、前記行総和値のセットに対応する行周波数表現を含み、前記画像部分のセットは第1の画像部分および第2の画像部分を含み、前記プロセッサは、
前記第1の画像部分に対応する前記行周波数表現の部分を評価することと、
前記評価することから、ゼロ周波数信号スパン・サイズと非ゼロ周波数信号スパン・サイズとの最小の線形結合を特定することと、
前記最小の線形結合が前記第1の画像部分の高さに近いか否かを判定することと、
前記最小の線形結合が前記第1の画像部分の高さに近いと判定したことに応答して、前記第1の画像部分の分解を終了することと、
を含む追加のアクションを実行する、請求項9~13のいずれか一項に記載の情報ハンドリング・システム。
【請求項15】
前記プロセッサは、
前記テキスト認識システムによって、前記画像部分のセットのそれぞれに光学文字認識を適用してテキスト部分のセットを生成することであって、前記テキスト部分のセット内の各テキスト部分は、前記画像部分の1つに対応する、生成すること
を含む追加のアクションを実行する、請求項9~14のいずれか一項に記載の情報ハンドリング・システム。
【請求項16】
請求項1~8のいずれか一項に記載の方法をコンピュータに実行させるためのコンピュータ・プログラムを記憶したコンピュータ可読記憶媒体。
【請求項17】
命令を含むコンピュータ・プログラムであって、前記命令は、前記プログラムがコンピュータによって実行された場合に、請求項1~8のいずれか一項に記載の方法を前記コンピュータに実行させる、コンピュータ・プログラム。
【発明の詳細な説明】
【背景技術】
【0001】
現在の文書処理システムは、企業文書のキャプチャ、認識、および分類を合理化して、重要な情報を抽出する。文書処理システムは、光学文字認識(OCR:optical character recognition)、自然言語処理、テキスト分析、および機械学習技術を使用して、非構造化文書または可変の文書から内容を自動的に識別、分類、および抽出する。
【0002】
一部の文書処理システムは、教師ありまたは半教師あり機械学習技術を使用して、スキャンされたファイルまたはPDFファイルからテキストおよび文書構造を抽出する。他の文書処理システムは、人間に文書のフィンガー・プリントを作成することを要求し、これを使用して同様のタイプの文書から情報を抽出する。さらに他の文書処理システムは、人間による監督(human supervision)と深層学習との組み合わせを使用して、マイニングを行い、テキスト境界を学習し、オントロジーを構築し、その情報を使用することによって、同様のタイプの文書から情報を抽出することを試みる。これらの各文書処理システムは、信頼性の高いテキスト抽出、テキスト内容の理解、および文書のコンテキストの理解に依存している。
【発明の概要】
【0003】
本開示の一実施形態によれば、手法が提供され、この手法は、ビットマップ画像からの画素値のセットを行総和値のセットおよび列総和値のセットに集約する。ビットマップ画像は、文書の画素化された表現である。この手法は、局所フーリエ変換(localized Fourier transform)を行総和値のセットおよび列総和値のセットに適用して、行総和値のセットおよび周波数総和値のセットの周波数表現を生成する。この手法は、周波数表現のセットで識別される少なくとも1つの分離位置に基づいてビットマップ画像を画像部分のセットに分解し、画像部分のセットをテキスト認識システムに送信する。
【0004】
上記は概要であるので、当然ながら簡略化、一般化、および詳細の省略を含み、そのため、当業者は、本概要が例示にすぎず、決して限定を意図していないことを理解するであろう。特許請求の範囲によってのみ定義される本開示の他の態様、発明の特徴、および利点は、以下に記載する非限定的かつ詳細な説明において明らかになろう。
【0005】
添付の図面を参照することによって、本開示はよりよく理解され得、その多くの目的、特徴、および利点が当業者に明らかにされ得る。
【図面の簡単な説明】
【0006】
【
図1】本明細書に記載の方法を実装することができるデータ処理システムのブロック図である。
【
図2】本明細書に記載の方法が、ネットワーク化された環境で動作する多種多様な情報ハンドリング・システム上で実行できることを示す、
図1に示す情報ハンドリング・システム環境の拡張を提供する図である。
【
図3】文書をビットマップ画像にデジタル化し、ビットマップ画像を、テキスト認識システムに供給する画像部分に再帰的に分解するコンピュータ・システムを示す例示的な図である。
【
図4】分解する準備ができている請求書文書を示す例示的な図である。
【
図5】画像部分に分解されたビットマップ画像を示す例示的な図である。
【
図6】文書をビットマップ画像に変換し、ビットマップ画像を画像部分に再帰的に分解するために取られるステップを示す例示的なフローチャートである。
【
図7】画像部分を再帰的に分解するか否かを評価するために取られるステップを示す例示的なフローチャートである。
【
図8】ビットマップ画像分解を説明するための様々な図を示す例示的な図である。
【
図9】画像部分と、画像部分にフーリエ変換を適用することによって生成される時間ヒストグラムとを示す例示的な図である。
【
図10】画像部分のスペクトル表現を示す例示的な図である。
【発明を実施するための形態】
【0007】
本明細書で使用する用語は、特定の実施形態を説明するためのものにすぎず、本開示を限定することを意図するものではない。本明細書で使用する場合、単数形「a」、「an」および「the」は、文脈がそうでないことを明確に示さない限り、複数形も含むものとする。本明細書で使用する場合、「備える(comprises)」または「備える(comprising)」あるいはその両方の用語は、記述した特徴、整数、ステップ、動作、要素、もしくは構成要素、またはそれらの組み合わせの存在を示すものであるが、1つまたは複数の他の特徴、整数、ステップ、動作、要素、構成要素、またはそれらのグループ、あるいはそれらの組み合わせの存在または追加を排除するものではないということはさらに理解されよう。
【0008】
以下の特許請求の範囲における全てのミーンズまたはステップ・プラス・ファンクション要素の対応する構造、材料、行為、および均等物は、明確に特許請求した他の特許請求要素と組み合わせて機能を実行するための任意の構造、材料、または行為を含むものとする。本開示の説明は、例示および説明の目的で提示しているが、網羅的であることも、開示した形態の開示に限定されることも意図したものではない。本開示の範囲および思想から逸脱することなく、多くの修正および変形が当業者には明らかであろう。本開示の原理および実際の応用を最もよく説明し、企図した特定の用途に適した様々な修正を有する様々な実施形態について本開示を当業者が理解できるようにするために、実施形態を選び、説明している。
【0009】
本発明は、任意の可能な技術的詳細レベルの統合におけるシステム、方法、またはコンピュータ・プログラム製品、あるいはそれらの組み合わせであり得る。コンピュータ・プログラム製品は、本発明の態様をプロセッサに実行させるためのコンピュータ可読プログラム命令をその上に有するコンピュータ可読記憶媒体(または複数の媒体)を含み得る。
【0010】
コンピュータ可読記憶媒体は、命令実行デバイスによる使用のために命令を保持および記憶可能な有形のデバイスとすることができる。コンピュータ可読記憶媒体は、たとえば、限定はしないが、電子ストレージ・デバイス、磁気ストレージ・デバイス、光学ストレージ・デバイス、電磁ストレージ・デバイス、半導体ストレージ・デバイス、またはこれらの任意の適切な組み合わせであり得る。コンピュータ可読記憶媒体のより具体的な例の非網羅的なリストには、ポータブル・コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ(RAM)、読み取り専用メモリ(ROM)、消去可能プログラム可能読み取り専用メモリ(EPROMまたはフラッシュ・メモリ)、スタティック・ランダム・アクセス・メモリ(SRAM:static random access memory)、ポータブル式のコンパクト・ディスク読み取り専用メモリ(CD-ROM:compact disc read-only memory)、デジタル・バーサタイル・ディスク(DVD:digital versatile disk)、メモリー・スティック(R)、フレキシブル・ディスク、命令が記録されたパンチ・カードまたは溝の隆起構造などの機械的にコード化されたデバイス、およびこれらの任意の適切な組み合わせが含まれる。コンピュータ可読記憶媒体は、本明細書で使用する場合、たとえば、電波または他の自由に伝搬する電磁波、導波管もしくは他の伝送媒体を伝搬する電磁波(たとえば、光ファイバ・ケーブルを通過する光パルス)、または有線で伝送される電気信号などの一過性の信号自体であると解釈されるべきではない。
【0011】
本明細書に記載のコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体からそれぞれのコンピューティング/処理デバイスに、あるいは、たとえば、インターネット、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク、もしくはワイヤレス・ネットワーク、またはそれらの組み合わせなどのネットワークを介して外部コンピュータまたは外部ストレージ・デバイスにダウンロードすることができる。ネットワークは、銅線伝送ケーブル、光伝送ファイバ、ワイヤレス伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータ、またはエッジ・サーバ、あるいはそれらの組み合わせを含み得る。各コンピューティング/処理デバイスのネットワーク・アダプタ・カードまたはネットワーク・インターフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、コンピュータ可読プログラム命令を転送して、それぞれのコンピューティング/処理デバイス内のコンピュータ可読記憶媒体に記憶する。
【0012】
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セット・アーキテクチャ(ISA:instruction-set-architecture)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路の構成データ、あるいは、Smalltalk(R)、C++などのオブジェクト指向プログラミング言語、および「C」プログラミング言語または類似のプログラミング言語などの手続き型プログラミング言語を含む、1つまたは複数のプログラミング言語の任意の組み合わせで書かれたソース・コードまたはオブジェクト・コードであり得る。コンピュータ可読プログラム命令は、完全にユーザのコンピュータ上で、部分的にユーザのコンピュータ上で、スタンドアロン・ソフトウェア・パッケージとして、部分的にユーザのコンピュータ上かつ部分的にリモート・コンピュータ上で、あるいは完全にリモート・コンピュータまたはサーバ上で実行され得る。後者のシナリオでは、リモート・コンピュータは、ローカル・エリア・ネットワーク(LAN:Local Area Network)またはワイド・エリア・ネットワーク(WAN:wide area network)を含む任意のタイプのネットワークを介してユーザのコンピュータに接続され得、または(たとえば、インターネット・サービス・プロバイダを使用してインターネットを介して)外部コンピュータへの接続がなされ得る。一部の実施形態では、たとえば、プログラマブル論理回路、フィールド・プログラマブル・ゲート・アレイ(FPGA:field-programmable gate array)、またはプログラマブル・ロジック・アレイ(PLA:programmable logic array)を含む電子回路は、本発明の態様を実行するために、コンピュータ可読プログラム命令の状態情報を利用してコンピュータ可読プログラム命令を実行することによって、電子回路を個人向けにし得る。
【0013】
本発明の態様は、本発明の実施形態による方法、装置(システム)、およびコンピュータ・プログラム製品のフローチャート図またはブロック図あるいはその両方を参照して本明細書で説明している。フローチャート図またはブロック図あるいはその両方の各ブロック、およびフローチャート図またはブロック図あるいはその両方におけるブロックの組み合わせが、コンピュータ可読プログラム命令によって実装できることは理解されよう。
【0014】
これらのコンピュータ可読プログラム命令を、コンピュータまたは他のプログラム可能データ処理装置のプロセッサに提供して、それらの命令がコンピュータまたは他のプログラム可能データ処理装置のプロセッサを介して実行された場合に、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックにおいて指定された機能/行為を実装するための手段が生成されるようなマシンを生成し得る。また、これらのコンピュータ可読プログラム命令を、コンピュータ、プログラム可能データ処理装置、または他のデバイス、あるいはそれらの組み合わせに特定の方法で機能するように指示することが可能なコンピュータ可読記憶媒体に記憶して、命令が記憶されたコンピュータ可読記憶媒体が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックにおいて指定された機能/行為の態様を実装する命令を含む製造品を構成するようにし得る。
【0015】
また、コンピュータ可読プログラム命令をコンピュータ、他のプログラム可能データ処理装置、または他のデバイスにロードして、コンピュータ、他のプログラム可能装置、または他のデバイス上で一連の動作ステップを実行させることによって、それらの命令がコンピュータ、他のプログラム可能装置、または他のデバイス上で実行された場合に、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックにおいて指定された機能/行為が実装されるようなコンピュータ実装処理を生成し得る。
【0016】
図中のフローチャートおよびブロック図は、本発明の様々な実施形態によるシステム、方法、およびコンピュータ・プログラム製品の可能な実装形態のアーキテクチャ、機能、および動作を示している。これに関して、フローチャートまたはブロック図の各ブロックは、指定された論理的機能(複数可)を実装するための1つまたは複数の実行可能命令を含むモジュール、セグメント、または命令の一部を表し得る。いくつかの代替的な実装形態では、ブロックに記載した機能は、図示した順序以外で行われ得る。たとえば、関与する機能に応じて、連続して示した2つのブロックは、実際には1つのステップとして実現され、同時に実行され、実質的に同時に実行され、部分的にまたは完全に時間的に重なる方法で実行され得、またはそれらのブロックは、場合により逆の順序で実行され得る。ブロック図またはフローチャート図あるいはその両方の各ブロック、およびブロック図またはフローチャート図あるいはその両方におけるブロックの組み合わせは、指定された機能もしくは行為を実行するか、または専用ハードウェアおよびコンピュータ命令の組み合わせを実行する専用のハードウェア・ベースのシステムによって実装できることにも気付くであろう。以下の詳細な説明は概して上記の本開示の概要に従い、必要に応じて本開示の様々な態様および実施形態の定義をさらに説明および拡張する。
【0017】
図1は、本明細書に記載のコンピューティング動作を実行することが可能なコンピュータ・システムの簡略化した例である情報ハンドリング・システム100を示している。情報ハンドリング・システム100は、プロセッサ・インターフェース・バス112に結合された1つまたは複数のプロセッサ110を含む。プロセッサ・インターフェース・バス112は、プロセッサ110をノースブリッジ115に接続し、ノースブリッジ115は、メモリ・コントローラ・ハブ(MCH:Memory Controller Hub)としても知られている。ノースブリッジ115は、システム・メモリ120に接続され、プロセッサ(複数可)110がシステム・メモリにアクセスするための手段を提供する。グラフィック・コントローラ125もノースブリッジ115に接続される。一実施形態では、ペリフェラル・コンポーネント・インターコネクト(PCI:Peripheral Component Interconnect)Express(R)バス118は、ノースブリッジ115をグラフィック・コントローラ125に接続する。グラフィック・コントローラ125は、コンピュータ・モニタなどのディスプレイ・デバイス130に接続される。
【0018】
ノースブリッジ115およびサウスブリッジ135は、バス119を使用して相互に接続される。いくつかの実施形態では、このバスは、ノースブリッジ115とサウスブリッジ135との間で各方向に高速でデータを転送するダイレクト・メディア・インターフェース(DMI:Direct Media Interface)バスである。いくつかの実施形態では、PCIバスが、ノースブリッジとサウスブリッジとを接続する。入力/出力(I/O:Input/Output)コントローラ・ハブ(ICH:I/O Controller Hub)としても知られているサウスブリッジ135は、ノースブリッジによって提供される機能よりも低速で動作する機能を一般的に実装するチップである。サウスブリッジ135は、典型的には、様々なコンポーネントを接続するために使用される様々なバスを提供する。これらのバスには、たとえば、PCIおよびPCI Express(R)バス、ISAバス、システム管理バス(SMBusまたはSMB)、またはロー・ピン・カウント(LPC:Low Pin Count)バス、あるいはそれらの組み合わせが含まれる。LPCバスは、ブートROM196および「レガシー」I/Oデバイス(「スーパーI/O」チップを使用)などの低帯域幅デバイスを接続することが多い。「レガシー」I/Oデバイス(198)には、たとえば、シリアル・ポートおよびパラレル・ポート、キーボード、マウス、またはフレキシブル・ディスク・コントローラ、あるいはそれらの組み合わせを含めることができる。サウスブリッジ135に含まれることが多い他のコンポーネントには、ダイレクト・メモリ・アクセス(DMA:Direct Memory Access)コントローラ、プログラマブル割り込みコントローラ(PIC:Programmable Interrupt Controller)、およびストレージ・デバイス・コントローラが含まれ、これらはバス184を使用してハード・ディスク・ドライブなどの不揮発性ストレージ・デバイス185にサウスブリッジ135を接続する。
【0019】
ExpressCard(R)155は、ホットプラグ可能なデバイスを情報ハンドリング・システムに接続するスロットである。ExpressCard(R)155は、サウスブリッジ135への接続時にUSBおよびPCI Express(R)バスの両方を使用してPCI Express(R)およびユニバーサル・シリアル・バス(USB:Universal Serial Bus)の両方の接続をサポートする。サウスブリッジ135は、USBに接続されるデバイスへのUSB接続を提供するUSBコントローラ140を含む。これらのデバイスには、ウェブカメラ(カメラ)150、赤外線(IR:infrared)レシーバー148、キーボードおよびトラックパッド144、ならびにBluetooth(R)デバイス146が含まれ、これらはワイヤレス・パーソナル・エリア・ネットワーク(PAN:personal area network)を提供する。USBコントローラ140は、たとえば、マウス、リムーバブル不揮発性ストレージ・デバイス145、モデム、ネットワーク・カード、統合サービス・デジタル・ネットワーク(ISDN:Integrated Services Digital Network)コネクタ、ファックス、プリンタ、USBハブ、および他の多くのタイプのUSB接続デバイスなど、他の種々のUSB接続デバイス142へのUSB接続も提供する。リムーバブル不揮発性ストレージ・デバイス145は、USB接続デバイスとして示しているが、リムーバブル不揮発性ストレージ・デバイス145は、Firewire(R)インターフェースなどの異なるインターフェースを使用して接続することができる。
【0020】
ワイヤレス・ローカル・エリア・ネットワーク(LAN)デバイス175は、PCIまたはPCI Express(R)バス172を介してサウスブリッジ135に接続される。LANデバイス175は、典型的には、情報ハンドリング・システム100と他のコンピュータ・システムまたはデバイスとの間でワイヤレス通信を行うために全て同じプロトコルを使用する、無線変調技術の電気電子技術者協会(IEEE:the Institute of Electrical and Electronic Engineers).802.11規格の1つを実装する。光学ストレージ・デバイス190は、シリアル・アナログ・テレフォン・アダプタ(ATA:Analog Telephone Adapter)(SATA:Serial ATA)バス188を使用してサウスブリッジ135に接続される。シリアルATAアダプタおよびデバイスは、高速シリアル・リンクを介して通信する。シリアルATAバスは、サウスブリッジ135をハード・ディスク・ドライブなどの他の形態のストレージ・デバイスにも接続する。サウンド・カードなどのオーディオ回路160は、バス158を経由してサウスブリッジ135に接続される。オーディオ回路160はまた、オーディオ・ライン入力および光デジタル・オーディオ入力ポート162、光デジタル出力およびヘッドフォン・ジャック164、内蔵スピーカー166、および内蔵マイクロフォン168などのオーディオ・ハードウェアに関連する機能を提供する。Ethernet(R)コントローラ170は、PCIまたはPCI Express(R)バスなどのバスを使用してサウスブリッジ135に接続される。Ethernet(R)コントローラ170は、情報ハンドリング・システム100を、ローカル・エリア・ネットワーク(LAN)、インターネット、および他のパブリックおよびプライベート・コンピュータ・ネットワークなどのコンピュータ・ネットワークに接続する。
【0021】
図1は1つの情報ハンドリング・システムを示しているが、情報ハンドリング・システムは多くの形態を取り得る。たとえば、情報ハンドリング・システムは、デスクトップ、サーバ、ポータブル、ラップトップ、ノートブックの形態、または他のフォーム・ファクタのコンピュータまたはデータ処理システムの形態を取り得る。また、情報ハンドリング・システムは、パーソナル・デジタル・アシスタント(PDA:personal digital assistant)、ゲーム・デバイス、現金自動預払機(ATM:Automated Teller Machine)、携帯電話デバイス、通信デバイス、またはプロセッサおよびメモリを含む他のデバイスなどの他のフォーム・ファクタを取り得る。
【0022】
図2は、本明細書に記載の方法が、ネットワーク化された環境で動作する多種多様な情報ハンドリング・システム上で実行できることを示す、
図1に示す情報ハンドリング・システム環境の拡張を提供する。情報ハンドリング・システムのタイプは、ハンドヘルド・コンピュータ/携帯電話210などの小型のハンドヘルド・デバイスから、メインフレーム・コンピュータ270などの大型のメインフレーム・システムにまで及ぶ。ハンドヘルド・コンピュータ210の例には、パーソナル・デジタル・アシスタント(PDA)、パーソナル・エンターテインメント・デバイス、たとえば、ムービング・ピクチャー・エキスパート・グループ・レイヤ3オーディオ(MP3)プレーヤー、ポータブル・テレビ、およびコンパクト・ディスク・プレーヤーなどが含まれる。情報ハンドリング・システムの他の例には、ペンまたはタブレット・コンピュータ220、ラップトップまたはノートブック・コンピュータ230、ワークステーション240、パーソナル・コンピュータ・システム250、およびサーバ260が含まれる。
図2に個別に示していない他のタイプの情報ハンドリング・システムは、情報ハンドリング・システム280によって表される。図示のように、様々な情報ハンドリング・システムは、コンピュータ・ネットワーク200を使用して一緒にネットワーク化することができる。様々な情報ハンドリング・システムを相互接続するために使用することができるコンピュータ・ネットワークのタイプには、ローカル・エリア・ネットワーク(LAN)、ワイヤレス・ローカル・エリア・ネットワーク(WLAN:Wireless Local Area Network)、インターネット、公衆交換電話網(PSTN:Public Switched Telephone Network)、他のワイヤレス・ネットワーク、および情報ハンドリング・システムを相互接続するために使用することができる他の任意のネットワーク・トポロジが含まれる。情報ハンドリング・システムの多くは、ハード・ドライブまたは不揮発性メモリあるいはその両方などの不揮発性データ・ストアを含む。
図2に示す情報ハンドリング・システムの実施形態は、別々の不揮発性データ・ストアを含む(より具体的には、サーバ260は不揮発性データ・ストア265を利用し、メインフレーム・コンピュータ270は不揮発性データ・ストア275を利用し、情報ハンドリング・システム280は不揮発性データ・ストア285を利用する)。不揮発性データ・ストアは、様々な情報ハンドリング・システムに外付けするか、情報ハンドリング・システムの1つに内蔵することができるコンポーネントとすることができる。また、リムーバブル不揮発性ストレージ・デバイス145は、リムーバブル不揮発性ストレージ・デバイス145を情報ハンドリング・システムのUSBポートまたは他のコネクタに接続するなど、様々な技術を使用して、2つ以上の情報ハンドリング・システム間で共有することができる。
【0023】
上述のように、従来の文書処理システムは、信頼性の高いテキスト抽出、テキスト内容の理解、および文書のコンテキストの理解に依存している。しかしながら、企業の要求が様々なソースからの数百万の文書に拡張することである場合、同じコンテキスト内(たとえば、金銭関連の文書)であっても、コンテキスト内で様々な文書構造に一貫性がないので(たとえば、異なる構成、異なる行/列フィールドなど)、従来の文書処理システムは適切に機能しない。したがって、コンテキスト・フリーであり(文書のコンテキストによらず)、信頼性高く複数の文書/文書タイプに拡張する文書処理システムを手に入れる必要がある。
【0024】
市販のOCRエンジンは、文書または適度な解像度の画像からテキストを抽出する。しかしながら、OCRエンジンでは、文書構造(たとえば、「5345」が請求書番号なのか、電話番号なのか、金額なのか、など)が失われるので、抽出されたテキストは、データ分析の観点からは使用に適さない。多くの企業の問題では、たとえば、請求書、履歴書、注文書、チケットなどの場合、文書構造の理解も必要となるので、抽出は重要である。現在の文書処理システムでは、学習または訓練処理が必要であり、これにより抽出処理の拡張が困難になる。さらに、各文書およびそのソース(たとえば、異なるベンダーの請求書)は、その構造が固有である。その結果、サンプル文書セットでの学習は、構造が異なる大規模な文書に対しては信頼性が低いことが多い。
【0025】
図3から
図10は、文書をビットマップ画像にデジタル化し、フーリエ変換により文書の構造を識別することに基づいて、ビットマップ画像を画像部分に再帰的に分解する手法を示している。この手法は、文書の内容を理解することに依存せず、文書をビットマップ画像として扱い、文書の根底にある構造を抽出して文書画像を分解する。次いで、この手法は、分解された画像部分をテキスト認識システムに提供し、標準的なOCR技術を使用して画像部分を信頼性高く解析することによって、非常に信頼性の高い抽出を行う。この手法は、元の文書に対応する分解された画像部分ごとに背景(均一な背景)および組版(typesetting)を除去することによって、信頼性を向上させる。本明細書で説明するように、テキスト認識システムは、画像に含まれるテキストを認識する任意のシステムである。
【0026】
本明細書で論じるように、この手法は、(i)文書ビットマップ画像および文書正規化の集約強度信号を測定し、(ii)局所フーリエ変換を使用して、文書の周波数スペクトルを推定し、画像の低周波(行/列間でのビットマップ値の変化が小さい)部分および高周波(行/列間でのビットマップ値の変化が大きい)部分を分析し、(iii)フーリエ・スペクトルベースの決定木分割方法を使用して、情報内容がばらばらの画像部分へと画像を分解し、(iv)決定木ベースの分解停止方法を使用して過剰な分解を回避し、(v)分解された文書をセルのマトリックス(たとえば、スプレッドシート)にマッピングする。
【0027】
図3は、文書310をビットマップ画像340にデジタル化し、ビットマップ画像340を、テキスト認識システム370に供給する画像部分360に再帰的に分解するコンピュータ・システム320を示す例示的な図である。本明細書で論じるように、コンピュータ・システム320は、(i)自動で拡張性のあるコンテキスト・フリーの文書構造の抽出と、(ii)同じ文書内で様々な背景を有する文書310からのテキストの信頼性の高い抽出(知られているテキスト抽出器の平均的な動作を克服する)と、(iii)カラー・シェード(color shades)と、を提供することによって現在のコグニティブ・デジタイゼーション製品を強化し、文書の文言に関係なく低品質のソース文書で信頼性高く機能する。
【0028】
コンピュータ・システム320は、文書ストア300から文書310を取り出す。文書310は、たとえば、
図4に示すような請求書であり得る。コンピュータ・システム320は、ビットマップ生成器330を使用して、文書310の白黒のビットマップ画像340を作成する。一実施形態では、ビットマップ生成器330は、再帰的分解器350によって処理する前に、ビットマップ画像の画素強度を正規化する(さらなる詳細については、
図6および対応するテキストを参照されたい)。
【0029】
再帰的分解器350は、正規化された画素値を行/列ごとに行総和値(RSV:row sum value)および列総和値(CSV:column sum value)に集約する。次いで、再帰的分解器350は、行総和値を行総和信号にグループ化し、列総和値を列総和信号にグループ化し、行総和信号および列総和信号に局所フーリエ変換(たとえば、短時間フーリエ変換(STFT:Short-Time Fourier Transform))を適用して、行総和信号および列総和信号の周波数表現を生成する(さらなる詳細については、
図6、
図8、および対応するテキストを参照されたい)。
【0030】
再帰的分解器350は、局所フーリエ変換の結果に基づいて、境界をトリミングし(たとえば、余白を除去し)、画像を2つの画像部分360に切断する。再帰的分解器350は、画像部分360がそれ以上分解不可能なサイズに達するまで画像部分360を再帰的に分解し、その時点で画像部分360はさらなる処理のためにテキスト認識システム370に送信される。
【0031】
たとえば、テキスト認識システム370は、各画像部分360に個別に光学文字認識(OCR)を適用し得る。このため、テキスト認識システム370は従来のOCRエンジンよりも有利であり、その理由は、分解された文書の各構成要素が均一な背景および組版を有するので、各画像部分360に個別にOCRを適用することにより、テキスト認識システム370がより信頼性高く情報を抽出するためである。また、本明細書で論じる手法は、各属性に意味を割り当てる必要なく、テキスト認識システム370が関連付けルールを発見するのを支援する。たとえば、テキスト認識システム370は、「請求書番号」という見出しに対応する数字が常にその見出しと同じセルにあるか、もしくはそのセルの右側のセルにあるか、または所与のセルの下のセルにあるかという関連付けルールを発見し得る。
【0032】
図4は、本明細書で論じる手法を使用して分解する準備ができている請求書文書を示す例示的な図である。文書310は、様々な量の情報を含む請求書である。文書310は、以前に評価された請求書とは異なる文書構造を有し得、これは本明細書で論じる手法とは無関係であり、その理由は、コンピュータ・システム320が、文書のコンテキストではなく、文書構造に基づいて各文書を個別に分解するためである(さらなる詳細については、
図5および対応するテキストを参照されたい)。
【0033】
図5は、画像部分に分解されたビットマップ画像を示す例示的な図である。
図3に示すように、ビットマップ生成器330は、文書310からビットマップ画像340を作成する。次いで、再帰的分解器350は、画像部分360を生成する。
図5は
図4に示す文書310に対応する画像部分360の詳細を示しており、これらは画像部分500、510、520、530、540、550、および560である。
【0034】
本明細書で論じるように、画像の分解の最初の通過によって、さらに分解できる画像部分が生成された場合、再帰的分解器350は、その画像部分をさらに分解するためのステップを実行する。その結果、再帰的分解器350は、画像部分560を後続の再帰的分解(1回または複数回)において別々の画像部分565、570、575、580、および590に分解する(さらなる詳細については、
図6、
図7、および対応するテキストを参照されたい)。
【0035】
図6は、文書をビットマップ画像に変換し、ビットマップ画像を画像部分に再帰的に分解するために取られるステップを示す例示的なフローチャートである。処理は600から始まり、次いでステップ610において、処理は文書を取り出し、文書を黒/白のビットマップ画像に変換する。ステップ620において、処理は黒/白のビットマップ画像の画素強度を正規化する。この時点で、一実施形態では、各画素は「1」(黒画素)または「0」(白画素)のいずれかで表される。
【0036】
ステップ625において、処理は正規化された画素値を行/列ごとに行総和値(RSV)および列総和値(CSV)に集約する。たとえば、行が1,000画素を含むと仮定すると、黒い線の行総和は1,000個の「1」の総和=1,000であり、白いスペースの行総和は1,000個の「0」の総和=0である。ステップ630において、処理は行総和値を行総和信号にグループ化し、列総和値を列総和信号にグループ化する(さらなる詳細については、
図8および対応するテキストを参照されたい)。
【0037】
ステップ635において、処理は行総和信号および列総和信号に局所フーリエ変換を適用する。一実施形態では、処理は局所フーリエ変換として短時間フーリエ変換(STFT)を使用する。
【0038】
【0039】
ここで、
x(n)=時刻nでの入力信号
w(n)=長さMの窓関数(たとえば、ハミング窓)
Xm(w)=時刻mRを中心として窓掛けされたデータのDTFT(離散時間フーリエ変換:Discrete Time Fourier Transform)
R=連続するDTFT間のサンプルのホップ・サイズ
【0040】
この実施形態では、窓の長さMは、一般的には文書に対して固定されており、典型的には行間隔の倍数に等しく設定される。行間隔は、ピークの純粋なゼロ周波数信号が得られるまで窓の長さをゆっくりと増加させることによって導出される。窓の長さが長いと、DTFTポイントが増えて、周波数分解能が高くなるが、時間の精度は低下する。窓の長さが短いと、タイム・スライスが増えて、時間の精度が高くなるが、周波数分解能は低下する。
【0041】
ステップ640において、処理は境界(たとえば、余白)をトリミングして、最大スパンのゼロ周波数信号を除去する。ゼロ周波数信号は、同じ行/列総和値を有する連続した行の塊(たとえば、行1のRSV=1,000、行2のRSV=1,000、...)に対応する。ステップ650において、処理は、隣接する行/列の値が変化しない領域(たとえば、白いスペース)であるゼロ周波数信号の分離位置で画像を2つの画像部分に切断する。複数のゼロ周波数信号がある場合、一実施形態では、処理は最も長いスパンを有するゼロ周波数信号の分離位置を選択する。ステップ660において、処理は2つの画像部分をスタック・ストア665にスタック(記憶)し、それらの相対位置を登録し、親画像を削除する。
【0042】
事前定義された処理670において、処理は画像部分を分析して、画像部分の一方または両方がさらに分解可能であるか否かを判定する(処理の詳細については
図7および対応するテキストを参照されたい)。ステップ675において、処理はこれ以上分解できない画像部分を「ポップ」し、それらをレジスタ・ストア680にマークする。
【0043】
処理は、670の結果に基づいて、さらに分解できる画像部分がまだあるか否かを判定する(判定685)。さらなる分解が可能な画像部分がある場合、判定685は「yes」の分岐に分岐し、次いで、ステップ690において、処理はさらなる分解のために識別された画像部分のうちの1つの画素値を行/列総和値に集約する。次いで、処理は上記のステップ630から675に従って、行/列総和値を処理する。
【0044】
このループは、さらなる分解が可能な画像部分がなくなるまで続き、その時点で判定685は「no」の分岐に分岐してループを抜ける。その後、
図6の処理は695で終了する。
【0045】
図7は、画像部分を再帰的に分解するか否かを評価するために取られるステップを示す例示的なフローチャートである。処理は700から開始され、次いでステップ710において、処理はスタック・ストア665の最初の画像部分を選択する。下記で論じる以下の手順は、選択された画像部分の行総和信号(RSS:row sum signal)ヒストグラムを評価して、その行間隔およびフォント・サイズを特定し、これは、画像があまりに「細く」分解されないようにするための停止基準として機能する。画像があまりに細く分解されると、たとえば、文字「I」は、画像の高さがフォント・サイズに近い場合に黒線に見え、その結果、その文字で画像が分割される。
【0046】
ステップ720において、処理は選択された画像部分の行総和信号(RSS)ヒストグラムを評価し、ゼロ周波数信号スパン・サイズを決定する。一実施形態では、処理は
図6で生成されたRSSヒストグラムを分離位置で2つのヒストグラムに分離して、評価中の2つの画像部分を表すようにする。たとえば、
図9のRSSヒストグラム900は、画像部分510に対応し、複数のゼロ周波数信号スパン(x軸の値25~60、145~155、180~200など)を示している。ステップ730において、処理は選択された画像部分のRSSヒストグラムを評価し、非ゼロ周波数信号スパン・サイズ(たとえば、ゼロ周波数信号間のスパン)を決定する。たとえば、
図9のRSSヒストグラム900は、複数の非ゼロ周波数行信号スパン(x軸の値60~80、156~175など)を示している。
【0047】
処理は、選択された画像部分の高さが、ゼロ周波数信号スパン・サイズと非ゼロ周波数信号スパン・サイズとの最小の線形結合と同等のサイズであるか否かを判定する(判定740)。ある時点での最小の線形結合は、テキスト行の間のスペース(行間隔)と、最小の非ゼロ周波数信号スパン・サイズ(フォント・サイズ)とになる。一実施形態では、処理は「高さバッファ」を追加して、画像部分の高さがフォント・サイズに匹敵するサイズまで減少しないようにする。たとえば、処理は、「画像の高さ<1.5*最小のゼロ周波数信号スパン・サイズ+1*2つの連続するゼロ周波数信号スパン・サイズの間の最小のスパン(非ゼロ周波数信号スパン)の長さである場合に画像分割を停止する」という停止ルールを使用し得る。
【0048】
選択された画像部分の高さが、最小のゼロ周波数信号スパン・サイズと最小の非ゼロ周波数行信号スパンとの線形結合と同等のサイズである場合、判定740は「yes」の分岐に分岐し、次いでステップ750において、処理は選択された画像部分を最終的な画像部分の分解としてマークする。
【0049】
一方、選択された画像部分の高さが、最小のゼロ周波数信号スパン・サイズと最小の非ゼロ周波数行信号スパンとの線形結合と同等のサイズでない場合、判定750は「no」の分岐に分岐する。
【0050】
処理は、特定の分析ラウンド中に分析すべき画像部分がまだあるか否かを判定する(判定760)。分析すべき画像部分がまだある場合、判定760は「yes」の分岐に分岐し、この分岐はループ・バックして、次の画像部分を選択および処理する。このループは、特定の分析ラウンド中に分析すべき画像部分がなくなるまで続き、その時点で判定760は「no」の分岐に分岐してループを抜ける。その後、
図7の処理は、795で呼び出し元のルーチン(
図6を参照)に戻る。
【0051】
図8は、ビットマップ画像分解を説明するための様々な図を示す例示的な図である。図解800は、再帰的分解器350がビットマップ画像値を行総和値810および列総和値820に集約する方法のグラフィカルなビューを示している。各行総和値810は、対応する行の画素値を集約したものである。同様に、各列総和値820は、対応する列の画素値を集約したものである。図解800に示す値は、説明を目的としたものであり、ビットマップ画像340の実際の値とは相関していない。
【0052】
次いで、再帰的分解器350は、行総和値810を行総和信号(RSS)815にまとめて、本明細書で論じた局所フーリエ変換に供給することによって、行総和値810間の差の周波数表現を生成し、これをRSSヒストグラム830に示し、以下で論じる。同様に、再帰的分解器350は、列総和値820を列総和信号(CSS:column sum signal)825にまとめて、本明細書で論じた局所フーリエ変換に供給することによって、列総和値820間の差の周波数表現を生成し、これをCSSヒストグラム855に示し、以下で論じる。
【0053】
RSSヒストグラム830はゼロ周波数領域835および840を示しており、これらは、ステップ640(
図6)の間にトリミングされる文書310内の上部および下部のビットマップ境界領域(マージン)に対応する。領域845は、文書310の水平ラインに対応するいくつかの高いバーを示している。領域850は、「合計」の行の後の最後の水平ラインと、文書310の下部にある取引条件の文言との間の領域に対応するゼロ周波数領域を示している(
図4を参照)。
【0054】
CSSヒストグラム855はゼロ周波数領域860および870を示しており、これらは、ステップ640(
図6)の間にトリミングされる文書310内の左側および右側のビットマップ境界領域(マージン)に対応する。領域880は、文書310の垂直ラインに対応するいくつかの高いバーを示している。時間ヒストグラム830および855に基づいて、再帰的分解器350は、それらに応じてビットマップ画像340を画像部分360に分解する。たとえば、再帰的分解器350は、領域850の中央の分離位置を選択してビットマップ画像を分離し得る。
図9は、画像部分360の1つのさらなる分析を示している。
【0055】
図9は、画像部分510と、画像部分510にフーリエ変換を適用することによって生成される時間ヒストグラム900および950とを示す例示的な図である。画像部分510は、本明細書で論じているように、ビットマップ画像340から分解される。再帰的分解器350は、画像部分510に対応する行総和信号および列総和信号に局所フーリエ変換を適用し、RSSヒストグラム900およびCSSヒストグラム950を生成する。
【0056】
RSSヒストグラム900は、画像510の高さに対応し、画像部分510内の水平ラインに対応する高いバー910、920、および930を示す。RSSヒストグラム900に基づいて、再帰的分解器350は、本明細書で論じているように、高いバー910、920、および930に基づいて画像部分510がさらに垂直方向に分解可能であると判定する。
【0057】
CSSヒストグラム950は画像510の幅に関するものであり、高いバー960およびゼロ周波数領域970を示し、これらはそれぞれ、位置0の垂直ラインと、位置375~500のブランク領域とに対応する。時間ヒストグラム950に基づいて、再帰的分解器350は、画像部分510がさらに垂直方向に分解可能ではないと判定する。
【0058】
図10は、幅(X軸)に沿った文書空間(時間として表される)と、高さ(Y軸)に沿った周波数成分と、大きさ(Z軸)に沿った周波数の大きさまたは強度とを有する画像部分の時間スペクトル表現1000を示す例示的な図である。一実施形態では、スペクトル表現1000は、行総和信号(RSS)および列総和信号(CSS)などの信号を結合したものの短時間フーリエ変換(STFT)である。
【0059】
本開示の特定の実施形態を図示および説明してきたが、本開示およびそのより広い態様から逸脱することなく、本明細書の教示に基づいて変更および修正が行われ得ることは当業者には明らかであろう。したがって、添付の特許請求の範囲は、本開示の範囲内にある全てのそのような変更および修正をその範囲内に包含するものとする。導入する請求項要素の特定の数を意図する場合、そのような意図はその請求項に明示的に記載し、そのような記載がない場合、そのような制限は存在しないことが当業者によって理解されよう。非限定的な例では、理解を助けるものとして、以下の添付の特許請求の範囲は、請求項要素を導入するための導入語句「少なくとも1つ」および「1つまたは複数」の使用を含む。しかしながら、そのような語句の使用は、同じ請求項が「1つまたは複数」または「少なくとも1つ」という導入語句および「a」または「an」などの不定冠詞を含む場合であっても、不定冠詞「a」または「an」による請求項要素の導入が、そのような導入した請求項要素を含む特定の請求項を、そのような要素をただ1つ含む開示に限定することを意味すると解釈されるべきではなく、特許請求の範囲での定冠詞の使用についても同じことが言える。