(57)【特許請求の範囲】
【請求項１】
メモリアドレスごとに情報を記憶しその情報を読み出し可能なメモリであって、
このメモリは、
外部から与えられる、各メモリアドレスに記憶された情報を比較するための第１の入力と、各メモリアドレス同士を比較するための第２の入力と、集合演算条件として（１）部分集合、（２）論理和、（３）論理積、（４）論理否定のいずれか若しくはそれらの２以上の組み合わせを選択可能に指定する第３の入力と、を入力するための入力手段と、
第１の入力に基づき、アドレス毎にこのメモリに記憶された情報と前記第1の入力とを比較し判定する手段と、
第２の入力に基づき、このメモリに記憶された情報同士を比較し判定する手段と、
第３の入力に基づき、前記第１及び第２の入力に基づく判定結果について論理演算する手段と、
この集合演算結果を出力する手段と
を有することを特徴とする集合演算機能を備えたメモリ。
【請求項２】
請求項１記載の集合演算機能を備えたメモリにおいて、
前記第１〜第３の入力による前記集合演算結果に、新たに与えられる前記第１〜第３の入力により集合演算を繰り返し実行する手段を有することを特徴とする集合演算機能を備えたメモリ。
【請求項３】
請求項１記載の集合演算機能を備えたメモリにおいて、
前記情報の、前記第１〜第３の入力による集合演算の少なくとも１つ以上を並列処理で実行する手段を具備することを特徴とするメモリ。
【請求項４】
請求項１記載の集合演算機能を備えたメモリにおいて、
前記第１の入力は、
比較する情報を表す値、及び
比較条件として完全一致、部分一致、範囲一致、若しくはこれらの組み合わせの指定、
を含むものであることを特徴とする集合演算機能を備えたメモリ。
【請求項５】
請求項１記載の集合演算機能を備えたメモリにおいて、
前記第１の入力による判定を連想メモリ手段で実現するものである
ことを特徴とする請求項１記載の集合演算機能を備えたメモリ。
【請求項６】
請求項１記載の集合演算機能を備えたメモリにおいて、
第２の入力は、
比較する情報の位置、その位置を基準にした一定の領域、若しくはそれらの組み合わせ
を含むものであることを特徴とするメモリ。
【請求項７】
請求項６記載の集合演算機能を備えたメモリにおいて、
前記第２の入力の前記比較する情報の位置は、
相対的位置、絶対的位置若しくはそれらの組み合わせを含むものであることを特徴とするメモリ。
【請求項８】
請求項１記載の集合演算機能を備えたメモリにおいて、
前記第２の入力による判定を行う手段は、
メモリアドレスを並列操作することによって実行する手段を含むものである
ことを特徴とするメモリ。
【請求項９】
請求項１記載の集合演算機能を備えたメモリにおいて、
前記入力手段は情報の配列・順序を指定する第４の入力（画像の大きさなど）をさらに入力するためのものであり、
前記第４の入力に指定された情報の配列・順序に基づいて、前記情報の判定を実行させるものである
ことを特徴とする請求項１記載の集合演算機能を備えたメモリ。
【請求項１０】
請求項１記載の集合演算機能を備えたメモリにおいて、
前記第１〜第３の入力は、メモリに記憶された集合情報に対してパターンマッチングする問い合わせ情報パターンを指定するものであることを特徴とするメモリ。
【請求項１１】
請求項１０記載の集合演算機能を備えたメモリにおいて、
前記問い合わせ情報パターンは、エッジ検出のための問い合わせ情報であることを特徴とするメモリ。
【請求項１２】
請求項１０記載の集合演算機能を備えたメモリにおいて、
前記パターンマッチングは、
文字情報を一例とする１次元情報
画像情報を一例とする２次元情報
動画情報を一例とする３次元情報
配列が定義されたＮ次元情報
のいずれかに対して実行されるものであることを特徴とするメモリ。
【請求項１３】
請求項１０記載の集合演算機能を備えたメモリにおいて、
前記パターンマッチングの前記問い合わせ情報パターンにより
視覚認識
聴覚認識
味覚認識
臭覚認識
触覚認識
の少なくとも１つを処理するものであることを特徴とするメモリ。
【請求項１４】
ＣＰＵを一例とする他の半導体と一体に組み込みされたことを特徴とする請求項１記載の集合演算機能を備えたメモリ。
【請求項１５】
請求項１記載の集合演算機能を備えたメモリを含んだ装置。
【請求項１６】
請求項１記載の集合演算機能を備えたメモリにおいて、
前記第１〜第２の入力は、メモリに記憶された集合情報に対してパターンマッチングする問い合わせ情報パターンを指定するものであり、
画像のＸＹ配列の大きさが定義された画像において
（１）画像を構成する、画素の画像情報データ値と、その画素のデータ位置と、の双方を適宜組合せして構成される画像問い合わせパターンを作成するステップと、
（２）画像検出の対象となる画像に上記画像問い合わせパターンを問合せする事によりこの画像問い合わせパターンにパターンマッチする画素を上記対象となる画像の中から検出するステップと
により画像処理することを特徴とする画像認識方法。
【請求項１７】
請求項１６記載の方法において、
前記画素の画像情報は
（１）物体の色または輝度情報
（２）物体の輪郭（エッジ）または領域（エリア）情報
（３）物体の奥行き情報
の少なくとも１つの画素の画像情報を基に画像処理することを特徴とする画像認識方法。
【請求項１８】
請求項１７記載の方法において、
前記、物体の輪郭（エッジ）または領域（エリア）情報は、画像上の任意の１画素と、
その近隣画素と、の比較結果によるコードを画面全体の画素に符号化するとすることを特徴とする、画像認識方法。
【請求項１９】
請求項１６記載の方法において、
（１）単眼カメラで撮像された静止画像または動画像
（２）複眼カメラで撮像された静止画像または動画像
（３）ＣＧで作成された静止画像または動画像
の少なくとも１つの画像の認識をすることを特徴とする画像認識方法。
【請求項２０】
請求項１６記載の方法において、
（１）複眼カメラで撮像された静止画像の認識ステップと、
（２）複眼画像に表示される物体の対応点をパターンマッチで検出するステップと、
（３）以上で検出された物体を立体計測するステップと
を有し、画像物体の形状の認識をすること特徴とする画像認識方法。
【請求項２１】
請求項１記載の集合演算機能を備えたメモリにおいて、
前記第１〜第２の入力は、メモリに記憶された集合情報に対してパターンマッチングする問い合わせ情報パターンを指定するものであり、
上記問い合わせ情報パターンは、画像を構成する、画素の画像情報データ値と、その画素のデータ位置と、の双方を適宜組合せして構成されるものであり、
（１）画像全体の中から無作為にパターンを採取し、採取されたパターンを問い合わせ情報パターンとしその特徴に合致する物体を検出するステップ、
（２）予め認識する物体を特定しその物体の特徴を検出するための問い合わせ情報パターンを作成し、画像全体の中からそのパターンに合致する物体を検出するステップ、
（３）以上（１）（２）の組み合わせによるパターンに合致する物体を検出するステップ、
の少なくとも１つのステップにより物体を認識する物体認識方法。
【請求項２２】
請求項１記載の集合演算機能を備えたメモリにおいて、
前記第１〜第２の入力は、メモリに記憶された集合情報に対してパターンマッチングする問い合わせ情報パターンを指定するものであり、
（１）音声のそれぞれの音素から得られる、スペクトラムもしくはケプストラムのパターンを音素別、周波数別に配列データベースとして用意し
（２）発声される音声の音素から得られる、スペクトラムもしくはケスペクトラムベクトルのパターンを、上記配列データベースに問い合わせすることにより、上記条件にパターンマッチする上記配列データベースのアドレスを検出し
以上（１）（２）により問い合わせ条件の音素を検出することを特徴とする音素認識方法。
【請求項２３】
請求項２２記載の方法において、
前記パターンの変化許容する範囲を設定しパターンマッチすることを特徴とする音素認識方法。
【請求項２４】
請求項２２記載の方法において、
登録された、前記周波数別のスペクトルもしくはケプストラムのデータの配列データベースの中から必要とする周波数のみをパターンマッチ条件とすることを特徴とする音素認識方法。
【請求項２５】
請求項１記載の集合演算機能を備えたメモリにおいて、
前記第１〜第２の入力は、メモリに記憶された集合情報に対してパターンマッチングする問い合わせ情報パターンを指定するものであり、
（１）言葉のそれぞれの語彙を、語彙別に音素の配列データベースとして用意し
（２）発音される音声の音素の配列を、上記配列データベースに問い合わせすることにより、上記条件にパターンマッチする上記データベースのアドレスを検出し
以上（１）（２）により問い合わせ条件の語彙を検出することを特徴とする音声認識方法。
【請求項２６】
請求項２５記載の音声認識方法において、
前記音素の配列の変化を許容するパターンマッチすることを特徴とする音声認識方法。
【請求項２７】
請求項１記載の集合演算機能を備えたメモリにおいて、
前記第１〜第２の入力は、メモリに記憶された集合情報に対してパターンマッチングする問い合わせ情報パターンを指定するものであり、
（１）画像中の文字の書体を構成する、画素の画像情報データ値と、その画素の位置と、
の双方を適宜組合せして構成される画像文字問い合わせパターンを作成登録用意するステップと
（２）画像文字認識の対象となる画像に上記画像文字問い合わせパターンを問い合わせする事によりこの画像問い合わせパターンにパターンマッチする画素を上記対象となる画像の中から検出するステップと
以上（１）（２）のステップにより画像文字認識処理することを特徴とする画像文字認識方法。
【請求項２８】
請求項２７記載の画像文字認識方法において、
前記その画素の位置は
（１）前記文字書体の領域内を示すサンプリングポイント
（２）前記文字書体の領域外を示すサンプリングポイント
以上（１）（２）の画素の位置を基に画像文字認識処理することを特徴とする画像文字認識方法。
【請求項２９】
請求項２７記載の画像文字認識方法において、
前記サンプリングポイントは座標変換によって
（１）拡大縮小された文字
（２）回転された文字
以上（１）（２）の画像文字認識処理することを特徴とする画像文字認識方法。
【請求項３０】
請求項２７記載の画像文字認識方法において、
前記サンプリングポイントを範囲パターンマッチによって画像文字認識処理することを特徴とする画像文字認識方法。
【請求項３１】
請求項２７記載の画像文字認識方法において、
前記画素の画像情報データ値は
（１）前記領域内を示すサンプリングポイントの画素情報は前記文字書体の色データ値もしくは輝度データ値
（２）前記領域外を示すサンプリングポイントの画素情報は前記文字書体の色データ値もしくは輝度データ値以外のデータ値
以上（１）（２）の画素の画像情報データ値を基に画像文字認識処理することを特徴とする画像文字認識方法。
【請求項３２】
請求項２７記載の画像文字認識方法において、
複数種類の前記文字書体を１文字毎に重ね合わせ当該文字の
（１）前記文字書体共通領域内に前記文字書体の領域内を示すサンプリングポイント
（２）いずれの前記文字書体の領域に含まれない部分に前記文字書体の領域外を示すサンプリングポイント
以上（１）（２）のサンプリングポイントを決めることを特徴とする画像文字認識方法。
【請求項３３】
請求項２７記載の画像文字認識方法において、
前記画像文字問い合わせパターンは相対アドレスとし、この相対アドレスを絶対アドレスに変換してパターンマッチすることを特徴とする画像文字認識方法。
【請求項３４】
請求項２７記載の画像文字認識方法において、
前記文字は
単一言語文章に必要な文字全てを対象にして一文字毎に、シーケンシャルに画像空間内全区間パターンマッチすることを特徴とする画像文字認識方法。
【請求項３５】
請求項２７記載の画像文字認識方法において、
全世界言語文章に必要な文字全てを対象にして一文字毎に、シーケンシャルに画像空間内全区間をパターンマッチすることを特徴とする画像文字認識方法。
【請求項３６】
請求項１記載のメモリを有し、
（１）画像中の文字の書体を構成する、画素の画像情報データ値と、その画素の位置と、
の双方を適宜組合せして構成される画像文字問い合わせパターンを登録したデータベースと
（２）画像文字認識の対象となる画像に上記データベースの画像文字問い合わせパターンをシーケンシャルに問い合わせする事によりこの画像問い合わせパターンにパターンマッチする画素を上記対象となる画像の中から逐次検出する手段と
（３）逐次検出されたパターンマッチアドレスから画像上の文字とその位置を認識して、認識された文字とその配列を記憶する手段と
以上（１）から（３）の手段を具備することを特徴とする画像文字認識機能を備えた情報処理装置。
【請求項３７】
請求項３６記載の情報処理装置において、
前記認識された文字とその配列による文字列をアノテーションデータとすることを特徴とする画像文字認識機能を備えた情報処理装置。
【請求項３８】
請求項１記載の集合演算機能を備えたメモリにおいて、
前記第１〜第２の入力は、メモリに記憶された集合情報に対してパターンマッチングする問い合わせ情報パターンを指定するものであり、
情報の配列が定義されて記憶された情報のパターンマッチ検出において
（１）前記第４の入力として情報の配列の定義を指定するステップと
（２）パターンマッチの候補となる情報のデータ値（前記第１の入力）を指定して基準情報とするステップと
（３）以上（２）の基準情報にマッチさせる複数のマッチ情報のそれぞれのデータ値をそれぞれ独立して指定するとともにこのそれぞれ情報の位置（前記第２の入力）をそれぞれ独立して指定するステップ
（４）以上（１）の基準情報、および（２）の複数のマッチ情報を１つの問い合わせ情報パターンとしてこの問い合わせ情報パターンにマッチする上記（２）の基準情報のアドレスを検出するステップ
以上（１）から（４）のステップにより情報をパターンマッチ検出することを特徴とするパターンマッチ標準化方法。
【請求項３９】
請求項１記載の集合演算機能を備えたメモリにおいて、
前記第１〜第２の入力は、メモリに記憶された集合情報に対してパターンマッチングする問い合わせ情報パターンを指定するものであり、
情報の配列が定義されて記憶された情報のパターンマッチ検出において
（５）前記第４の入力として情報の配列の定義を指定するステップ
（６）パターンマッチの候補となる情報のデータ値とその範囲を指定して基準情報とするステップ
（７）以上（６）の基準情報にマッチさせる複数のマッチ情報のそれぞれのデータ値とその範囲をそれぞれ独立して指定するとともにこのそれぞれ情報の位置とその範囲をそれぞれ独立して指定するステップ
（８）以上（６）の基準情報、および（７）の複数のマッチ情報を１つの問い合わせ情報パターンとしてこの問い合わせ情報パターンにマッチする上記（６）の基準情報のアドレスを検出するステップ
以上（５）から（８）のステップにより曖昧情報をパターンマッチ検出することを特徴とするパターンマッチの標準化方法。
【請求項４０】
前記（２）又は（６）のステップを並列にマッチ実行することを特徴とする請求項３８又は３９記載の情報のパターンマッチの標準化方法。
【請求項４１】
前記（４）又は（８）のステップを並列にマッチ実行することを特徴とする請求項３８又は３９記載の情報のパターンマッチの標準化方法。
【請求項４２】
前記（２）又は（６）の基準情報ならびに前記（３）又は（７）のマッチ情報の位置を座標で指定することを特徴とする請求項３８又は３９記載の情報のパターンマッチの標準化方法。
【請求項４３】
前記（２）又は（６）の基準情報ならびに前記（３）又は（７）のマッチ情報の位置を距離で指定することを特徴とする請求項３８又は３９記載の情報のパターンマッチの標準化方法。
【請求項４４】
前記座標は前記情報の配列の次元に合せた次元座標であることを特徴とする請求項４２記載の情報のパターンマッチの標準化方法。
【請求項４５】
前記座標は座標変換をすることが可能であることを特徴とする請求項４２記載の情報のパターンマッチの標準化方法。
【請求項４６】
画像情報の前記（２）（３）又は（６）（７）のデータ値およびその範囲を色情報Ｒ、Ｇ、Ｂ、それぞれ独立して指定することを特徴とする請求項３８又は３９記載の情報のパターンマッチの標準化方法。
【請求項４７】
前記（４）又は（８）のステップをマッチ実行する際、前記１つの問い合わせパターンの内、幾つかの前記マッチ情報がマッチしない場合（ミスマッチ）を許容することを特徴とする請求項３８又は３９記載の情報のパターンマッチの標準化方法。
【請求項４８】
前記パターンマッチを分散処理して実施することを特徴とする請求項３８又は３９記載の情報のパターンマッチの標準化方法。
【請求項４９】
請求項１記載の集合演算機能を備えたメモリにおいて、
前記第１、第２の入力は、メモリに記憶された集合情報に対してパターンマッチングする問い合わせ情報パターンを指定するものであり、
これを指定するパターンマッチ方法において
（９）第４の入力として配列を指定するステップ
（１０）問い合わせパターンの設定ステップは、
（１０−１）パターンマッチの候補となる情報のデータ値を指定して基準情報とするステップ、
（１０−２）以上（１０−１）の基準情報にマッチさせる複数のマッチ情報のそれぞれのデータ値をそれぞれ独立して指定するとともにこのそれぞれ情報の位置をそれぞれ独立して指定するステップ
（１１）以上（１０−１）（１０−２）の指定に基づきマッチ指令をするステップ
（１２）マッチ指令に基づき情報処理されたパターンマッチ結果を表示するステップ
以上（９）から（１２）のステップにより情報をパターンマッチ検出させることを特徴とするパターンマッチ方法。
【請求項５０】
請求項１記載の集合演算機能を備えたメモリにおいて、
前記第１、第２の入力は、メモリに記憶された集合情報に対してパターンマッチングする問い合わせ情報パターンを指定するものであり、
これを指定するパターンマッチ方法において
（９）配列を指定するステップ
（１０）問い合わせ情報パターンの設定ステップは、
（１０−１）パターンマッチの候補となる情報のデータ値とその範囲を指定して基準情報とするステップ
（１０−２）以上（１０−１）の基準情報にマッチさせる複数のマッチ情報のそれぞれのデータ値とその範囲をそれぞれ独立して指定するとともにこのそれぞれ情報の位置とその範囲をそれぞれ独立して指定するステップ
（１１）以上（１０−１）（１０−２）の指定に基づきマッチ指令をするステップ
（１２）マッチ指令に基づき情報処理されたパターンマッチ結果を表示するステップ
以上（９）から（１２）のステップにより曖昧情報をパターンマッチ検出させることを特徴とするパターンマッチ方法。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は集合演算機能を備えたメモリ及びこれを用いた集合演算処理方法に関する。
【背景技術】
【０００２】  現在のノイマン型コンピュータが誕生して以来、情報処理の全てはＣＰＵに委ねられてきた。ＣＰＵが実行出来る命令の数は多数存在するが、その目的は、数値演算処理、制御処理、そして集合演算処理、の３つの処理に大別される。【０００３】  数値演算処理や制御処理のすべての情報処理行為は、１ステップ、１ステップが意味をもつ価値のある情報処理であるが、データを相手にする集合演算処理は利用分野が極めて広範囲であるとともに頻繁に発生する処理であり、また専用となることも多い処理である、しかしながらノイマン型バスボトルネックがあるのでＣＰＵにとって理不尽で過酷な情報処理になっている。（情報の集合を一括して論理演算することの意義）  Wikipediaによれば、数学における集合とは、大雑把に言えばいくつかの「もの」からなる「集まり」である。集合を構成する個々の「もの」を元という、と紹介されている。この定義を情報の集合に当てはめて考えると、現在の情報の集合演算は全て元を対象として個別になされる情報処理である。論理和、論理積をはじめとする基本的な論理素子はもとより、現在の情報処理の主役をなす中央処理装置（ＣＰＵ）による集合演算も、情報集合の元を対象とした情報処理である。【０００４】  具体的に述べれば、ＣＰＵを使ったプログラムによる集合演算は、メモリに記憶された集合情報データの中から、特定の情報を探し出す処理であり、メモリ上の情報（元）を逐次アクセスし、参照し、集合演算の解を求める方法である。【０００５】  この問題を最小限に食い止めるよう様々なソフトウエアアルゴリズムが考え出されているものの抜本的な対策はなく、ＣＰＵを多数利用して分散する並列処理もＣＰＵにとってみれば「犬も歩けば棒に当たる」のたとえのように大量のデータを片っ端からめくって特定のデータを探し出すという理不尽で過酷な情報処理となっている。従ってこの処理を高速化する場合ＣＰＵの発熱、それに伴う装置の肥大化が避けられない。【０００６】  もし、オイラー図やベン図の概念のように、情報の集合（メモリ全体）を一括して演算処理できるプロセッサが出来れば情報処理の概念は一変する。なぜなら、情報の集合を一括して論理演算する素子は元を対象とした個別の逐次情報処理に比較して、比べ物にならない程高速な論理演算が期待できるからである。【０００７】  ここで、情報処理おいて、メモリに記憶された集合情報の中から、特定の情報を探し出す処理は無限に存在するが、サーチ、検索、照合、認識、などの言葉で表現される処理が代表的なものであり、これらの情報処理は、意識するかしないかは別として、通常データベース用のプログラム言語を用いた集合演算である。【０００８】  したがって、情報の集合を一括して演算処理できるプロセッサが実現されれば、現在のコンピュータが最も苦手であったこれらの情報処理全体に大きな恩恵がもたらされることになる。（情報処理における「認識」について）  以上のメモリに記憶された集合情報の中から、特定の情報を探し出す処理の中で最も困難な情報処理である「認識」について説明する。【０００９】  情報処理における認識とは、対象となる情報の中から、いくつかの特徴を探し出し、その特徴から、我々が理解し判断できる���念、つまり名詞や形容詞などの言葉に当てはめる技術である。幾つかの特徴は通常個別に探す必要があり、何回も何回も繰り返し情報を探し出す必要がある。【００１０】  またこれらの特徴は多くの場合お互いの位置の関係が重要な鍵を握っているため位置の演算を行う必要も有り極めて複雑な情報処理になる。このような認識情報処理においてパターンマッチは知識処理の最重要技術の一つであるパターン認識の屋台骨、大黒柱となる基本技術であり、画像や音声、文字あらゆる分野の認識情報処理に不可欠の存在である。【００１１】  以上説明のパターンマッチは情報の集合論理演算の典型的な例であるものの、現在のところパターンマッチを始めとする情報の集合演算は専門のプロセッサがないため、ＣＰＵによる極めて効率の悪い情報処理となっている。【００１２】  もしパターンマッチという技術をどのような情報にも汎用的で共通的に利用できるように定義し実現すること、さらにこのパターンマッチの考え方を拡張した集合論理演算専用の素子プロセッサが実現できれば、情報処理上図り知れない恩恵が得られることになる。（情報処理における「パターンマッチング」について）  次に情報におけるパターンやパターンマッチの重要性やその概要を説明する。【００１３】  我々が探したい、認識したい情報は独立した１つのデータではない、それはデータの塊り（配列パターン）である。たとえば、認識したい画像データは画素データの集合体であり、認識したい音声データは音のスペクトラムの集合体である。一般的なデータ、例えば株価の動きや気温の変動、文字列、ＤＮＡ、ウイルスなど我々人間が認識したい情報の殆どは配列パターンデータである。【００１４】  例えば、株価は独立した一つのデータでは何の役に立たない、前日の株価との差や、一週間前の株価との差や動き（パターン）に意味があり、高い、安い、景気が良い悪いなどの認識が成り立つ。【００１５】  同様に我々が暑さ寒さを感じるのは昨日や数日前の気温との差を寒暖として感じているのであり一年中同じような気温では、今日は暑い、寒いなどの気温の変化の認識は生じない。【００１６】  文字や言葉にしても、幾つかの文字の塊が、単語となり、単語の組み合わせが意味を現し、相手に意図を伝えることが可能になる。つまり認識したい情報は情報の塊、パターンそのものであり、情報の集合演算を解くことにほかならない。しかしながら現在のところパターン、およびパターンマッチは極めて多様で漠然とした概念であり標準化、汎用化がなされていない。【００１７】  これまで、情報集合をＣＰＵ以外の手段で実現させる取り組みは数少ない、特願平４−２９８７４１はファジィ集合処理用演算装置、記憶装置および計算機システム、であり一般情報の集合そのものを集合演算するものではない。
【先行技術文献】
【特許文献】
【００１８】
【特許文献１】特許第４５８８１１４号
【特許文献２】特願平４−２９８７４１号公報
【発明の概要】
【発明が解決しようとする課題】
【００１９】  本願発明は、以上述べたように、従来のノイマン型情報処理の最大の弊害であるノイマンボトルネックを避けるため、ＣＰＵに頼ることなく素子自身が自らの機能でサーチ、検索、照合、認識などの言葉で表現される情報の集合演算をして一括して処理をできるプロセッサを提供することを目的とするものである。
【課題を解決するための手段】
【００２０】  上記目的を達成するため、本願発明の主要な観点によれば、メモリアドレスごとに情報を記憶しその情報を読み出し可能なメモリであって、このメモリは、外部から与えられる、各メモリアドレスに記憶された情報を比較するための第１の入力と、各メモリアドレス同士を比較するための第２の入力と、集合演算条件として（１）部分集合、（２）論理和、（３）論理積、（４）論理否定のいずれか若しくはそれらの２以上の組み合わせを選択可能に指定する第３の入力と、を入力するための入力手段と、第１の入力に基づき、アドレス毎にこのメモリに記憶された情報と比較し判定する手段と、第２の入力に基づき、このメモリに記憶された情報同士を比較し判定する手段と、第３の入力に基づき、前記第１及び第２の入力に基づく判定結果について論理演算する手段と、この集合演算結果を出力する手段と、を有することを特徴とする集合演算機能を備えたメモリが提供される。【００２１】  この発明の１の実施態様実施によれば、このメモリは、前記第１〜第３の入力による前記集合演算結果に、新たに与えられる前記第１〜第３の入力により集合演算を繰り返し実行する手段を有するものである。【００２２】  また、別の１の実施態様によれば、前記情報の、前記第１〜第３の入力による集合演算の少なくとも１つ以上を並列処理で実行する手段を具備するものである。【００２３】  更なる別の１の実施態様によれば、前記第１の入力は、比較する情報を表す値、及び比較条件として完全一致、部分一致、範囲一致、若しくはこれらの組み合わせの指定、を含むものである。【００２４】  更なる別の１の実施態様によれば、前記第１の入力による判定は連想メモリ手段で実現するものである。【００２５】  更なる別の１の実施態様によれば、第２の入力は、比較する情報の位置、その位置を基準にした一定の領域、若しくはそれらの組み合わせを含むものである。この場合、前記第２の入力の前記比較する情報の位置は、相対的位置、絶対的位置若しくはそれらの組み合わせを含むものであることが好ましい。【００２６】  更なる別の１の実施態様によれば、前記第２の入力による判定を行う手段は、メモリアドレスを並列操作することによって実行する手段を含む。【００２７】  更なる別の１の実施態様によれば、前記入力手段は情報の配列・順序を指定する第４の入力（画像の大きさなど）をさらに入力するためのものであり、前記第４の入力に指定された情報の配列・順序に基づいて、前記情報の判定を実行させるものである。【００２８】  更なる別の１の実施態様によれば、前記第１〜第３の入力は、メモリに記憶された集合情報に対してパターンマッチングする問い合わせ情報パターンを指定するものである。この場合、前記問い合わせ情報パターンは、エッジ検出のための問い合わせ情報であることが好ましい。また、前記パターンマッチングは、文字情報を一例とする１次元情報、画像情報を一例とする２次元情報、動画情報を一例とする３次元情報、配列が定義されたＮ次元情報、のいずれかに対して実行されるものであることが望ましい。また、前記パターンマッチングの前記問い合わせ情報パターンにより、視覚認識、聴覚認識、味覚認識、臭覚認識、触覚認識の少なくとも１つを処理するものであることが好ましい。【００２９】  更なる別の１の実施態様によれば、上記メモリは、ＣＰＵを一例とする他の半導体と一体に組み込みされたものである。【００３０】  更なる別の１の実施態様によれば、請求項１記載の集合演算機能を備えたメモリを含んだ装置が提供されるものである。【００３１】  このような構成によれば、情報の任意の集合演算を、ＣＰＵによる情報の元（メモリ個別の情報）を対象にすることなく、メモリ自身が自分自身に記憶された集合情報（メモリ全体）を一括して集合演算することにより、情報を探す処理、つまりサーチ、検索、照合、認識のいずれにも共通に利用可能であり、任意の集合演算が可能である集合演算機能を備えたメモリ（素子）を実現することができる。【００３２】  この構成により、現在のコンピュータの弱点であった情報認識の最も基本的で最も重要な技術であるパターンマッチやエッジ検出の概念を標準化・汎用化することができる。【００３３】  またＣＰＵが一番苦手であった情報処理のほとんどをこの技術で解決できるので、ＣＰＵによる発熱や装置の肥大化を極限まで解消することが出来る。
【図面の簡単な説明】
【００３４】
【図１】図１は、集合演算の概念を示すオイラー図である。
【図２】図２は、位置ならびに領域の概念の含めたオイラー図である。
【図３】図３は、連想メモリ（ＣＡＭ）のブロック図の例である。
【図４】図４は、連想メモリ（ＣＡＭ）のデータ比較回路の例である。
【図５】図５は、情報絞込み機能を備えたメモリのブロック図の例１である。
【図６】図６は、情報絞込み機能を備えたメモリによる全文検出の例である。
【図７】図７は、情報絞込み機能を備えたメモリのブロック図の例２である。
【図８】図８は、情報絞込み機能を備えたメモリによる画像検出の例１である。
【図９】図９は、情報絞込み機能を備えたメモリによる画像検出の例２である。
【図１０】図１０は、情報絞込み機能を備えたメモリによる画像検出の例３である。
【図１１】図１１は、情報絞込み機能を備えたメモリによる画像検出の例４である。
【図１２】図１２は、情報絞込み機能を備えたメモリによる画像検出の例５である。
【図１３】図１３は、情報絞込み機能を備えたメモリによる画像検出の例６である。
【図１４】図１４は、情報絞込み機能を備えたメモリによる画像検出の例７である。
【図１５】図１５は、情報絞込み機能を備えたメモリによる画像検出の例８である。
【図１６】図１６は、情報絞込み機能を備えたメモリによる画像検出の例９である。
【図１７】図１７は、情報絞込み機能を備えたメモリによる画像検出の例１０である。
【図１８】図１８は、情報絞込み機能を備えたメモリによる画像検出の例１１である。
【図１９】図１９は、情報絞込み機能を備えたメモリのグラフィックユーザーインターフェイス（ＧＵＩ）の例である。
【図２０】図２０は、１次元情報の検出例を示すものである。
【図２１】図２１は、２次元情報の検出例を示すものである。
【図２２】図２２は、３次元情報の検出例を示すものである。
【図２３】図２３は、１次元情報の曖昧検出例を示すものである。
【図２４】図２４は、２次元情報の曖昧検出例を示すものである。
【図２５】図２５は、３次元情報の曖昧検出例を示すものである。
【図２６】図２６は、２次元情報の曖昧検出例２を示すものである。
【図２７】図２７は、２次元情報の座標変換の例を示すものである。
【図２８】図２８は、集合演算機能を備えたメモリのブロック図の例である。
【図２９】図２９は、集合演算機能を備えたメモリの詳細ブロック図の例である。
【図３０】図３０は、文献検索のグラフィックユーザーインターフェイス（ＧＵＩ）の例である。
【図３１】図３１は、集合演算機能を備えたメモリによる集合演算例１である。
【図３２】図３２は、集合演算機能を備えたメモリによる集合演算例２である。
【図３３】図３３は、集合演算機能を備えたメモリによる集合演算例３である。
【図３４】図３４は、集合演算機能を備えたメモリによる集合演算例４である。
【図３５】図３５は、集合演算機能を備えたメモリによるエッジ検出の例である。
【図３６】図３６は、画像パターンのおよび画像パターンマッチの説明図である。
【図３７】図３７は、情報絞込みメモリを用いた画像パターンマッチの原理の説明図である。
【図３８】図３８は、画像の領域・輪郭の例の説明図である。
【図３９】図３９は、画像の排他パターンマッチの説明図である。（実施例１−１）
【図４０】図４０は、近傍４画素パターンによるエッジコード符号化の説明図である。（実施例１−２）
【図４１】図４１は、近傍８画素パターンによるエッジコード符号化の説明図である。（実施例１−３）
【図４２】図４２は、情報絞込みメモリを用いた画像パターンマッチの情報配列の説明図である。（実施例１−４）
【図４３】図４３は、物体のエッジコードの応用例の説明図である。（実施例１−５）
【図４４】図４４は、局部パターンマッチによる無作為および作為パターンマッチの説明図である。（実施例１−６）
【図４５】図４５は、物体の変化画像検出の説明図である。
【図４６】図４６は、局部パターンマッチによる物体の対応点検出の説明図である。（実施例１−７）
【図４７】図４７は、エッジコードによる物体認識の説明図である。（実施例１−８）
【図４８】図４８は、立体計測を利用した人物認識の説明図である。（実施例１−９）
【図４９】図４９は、空間内の物体認識の説明図である。（実施例１−１０）
【図５０】図５０は、パターンマッチによる物体認識の概念説明図である。（実施例１−１１）
【図５１】図５１は、音素の振幅波形の参考例である。
【図５２】図５２は、音素の周波数スペクトラム波形の参考例Ａである
【図５３】図５３は、音素の周波数スペクトラム波形の参考例Ｂである
【図５４】図５４は、音素判別のための範囲データの例である。
【図５５】図５５は、情報絞込み機能を備えたメモリによる音素認識の例である。
【図５６】図５６は、語彙パターンマッチの例である。
【図５７】図５７は、画像パターンおよび画像パターンマッチの説明図である。
【図５８】図５８は、情報絞込みメモリを用いた画像パターンマッチの原理の説明図である。
【図５９】図５９は、排他パターンマッチの説明図である。
【図６０】図６０は、文字の書体例である。
【図６１】図６１は、文字パターンサンプリングポイント作成例Ａの説明図である。
【図６２】図６２は、文字パターンサンプリングポイント作成例Ｂの説明図である。
【図６３】図６３は、特定書体の文字パターンサンプリングポイント作成例である。
【図６４】図６４は、字幕付き画像の文字認識の例である。
【図６５】図６５は、リアルタイムＯＣＲ機能を備えた情報処理装置の例である。
【図６６】図６６は、文書画像の文字認識の例である。
【図６７】図６７は、１次元情報のパターンマッチの例である。
【図６８】図６８は、２次元情報のパターンマッチの例である。
【図６９】図６９は、１次元情報パターンマッチのＧＵＩの例である。
【図７０】図７０は、２次元情報パターンマッチのＧＵＩの例である。
【図７１】図７１は、画像情報パターンマッチのＧＵＩの例である。
【図７２】図７２は、本方式を用いたパターンマッチの情報処理の概念図である。
【発明を実施するための最良の実施形態】
【００３５】  以下、本発明の最良の実施形態を、添付図面等を参照して詳しく説明する。（本発明の目的）  本発明は、情報の集合を一括演算処理するための、情報の集合演算機能を備えたプロセッサを提供するものである。
【００３６】  このようなプロセッサの実現により、情報を探す処理、つまりサーチ、検索、照合、認識のいずれにも共通に利用可能であり、任意の集合演算が可能でパターンマッチやエッジ検出、を高速で実現するために大規模なシステム、専用ＬＳＩや特殊なソフトウエア上のアルゴリズムさらにはスーパーコンピュータを使用することなく、画像、音声、文字認識を始めとする認識処理の原点となる高速なハードウエアパターンマッチやエッジ検出技術を汎用技術的にすることが可能になり、コンピュータによる本格的な知識処理を我々の身近なものとすることができる。（優先権主張の基礎となる特許出願に記載された発明）  本願に先立って、本願発明者は、以下のような優先権主張の基礎となる特許出願を行っている。
【００３７】  特願２０１２−０８３３６１号は、音素認識方法、語彙認識方法、音声パターンマッチ方法に関するものである。特願２０１２−１０１３５２号は、画像認識方法、物体認識方法、パターンマッチ方法に関するものである。特願２０１２−１１０１４５号は、画像文字認識方法、画像文字認識機能を備えた情報処理装置、以上の３つは人間の３大認識の音声、画像、文字の認識にかかわるものである。
【００３８】  また特願２０１２−１２１３９５号は、パターンマッチの標準化方法、パターンマッチＧＵＩの標準化方法であり、認識にかかわるパターンマッチに不可欠な共通項をとりまとめ、汎用、標準化パターンマッチに必要最低限の内容をまとめたものである。
【００３９】  以下にその概要を示す。
【００４０】  特願２０１２−０８３３６１（音素認識方法、語彙認識方法、音声パターンマッチ方法）の請求項１に記載された発明は、「（１）音声のそれぞれの音素から得られる、スペクトラムもしくはケプストラムのパターンを音素別、周波数別に配列データベースとして用意し（２）発声される音声の音素から得られる、スペクトラムもしくはケスペクトラムベクトルのパターンを、上記配列データベースに問い合わせすることにより、上記条件にパターンマッチする上記配列データベースのアドレスを検出し  以上（１）（２）により問い合わせ条件の音素を検出することを特徴とする音素認識方法。」  である。
【００４１】  特願２０１２−１０１３５２号（画像認識方法、物体認識方法、パターンマッチ方法）の請求項１に記載された発明は、「画像のＸＹ配列の大きさが定義された画像において（１）画像を構成する、画素の画像情報データ値と、その画素のデータ位置と、の双方を適宜組合せして構成される画像問い合わせパターンを作成するステップ（２）画像検出の対象となる画像に上記画像問い合わせパターンを問合せする事によりこの画像問い合わせパターンにパターンマッチする画素を上記対象となる画像の中から検出するステップ以上（１）（２）のステップにより画像処理することを特徴とする画像認識方法。」  である。
【００４２】  特願２０１２−１１０１４５号（画像文字認識方法、画像文字認識機能を備えた情報処理装置）の請求項１に記載された発明は、「（１）画像中の文字の書体を構成する、画素の画像情報データ値と、その画素の位置と、の双方を適宜組合せして構成される画像文字問い合わせパターンを作成登録用意するステップ（２）画像文字認識の対象となる画像に上記画像文字問い合わせパターンを問い合わせする事によりこの画像問い合わせパターンにパターンマッチする画素を上記対象となる画像の中から検出するステップ以上（１）（２）のステップにより画像文字認識処理することを特徴とする画像文字認識方法。」  である。
【００４３】  特願２０１２−１２１３９５号（パターンマッチの標準化方法、パターンマッチＧＵＩの標準化方法）の請求項１に記載された発明は、「情報の配列が定義されて記憶された情報のパターンマッチ検出において（１）情報の配列の定義を指定するステップ（２）パターンマッチの候補となる情報のデータ値を指定して基準情報とするステップ（３）以上（３）の基準情報にマッチさせる複数のマッチ情報のそれぞれのデータ値をそれぞれ独立して指定するとともにこのそれぞれ情報の位置をそれぞれ独立して指定するステップ（４）以上（１）の基準情報、および（２）の複数のマッチ情報を１組みの問い合わせパターンとしてこの問い合わせパターンにマッチする上記（２）の基準情報のアドレスを検出するステップ以上（１）から（４）のステップにより情報をパターンマッチ検出することを特徴とするパターンマッチの標準化方法。」  である。
【００４４】  これらの先願のいずれの場合もパターンマッチが基本になり、パターンマッチの基本である、情報と、その情報の位置と、の双方を入力条件として情報処理を行い、その情報処理結果を出力する、これらのことは、画像や画像の文字情報、音声などの集合情報に演算条件を与え、その演算結果を求めたものである。
【００４５】  本願発明は、以上の考え方を実施できるプロセッサを提供するものである。
【００４６】  本発明の最終目的は、数学の集合の概念のように、全く演算時間を意識させない論理演算プロセッサを実現することである。（情報処理における「集合」について）  先に述べた通りWikipediaによれば、数学における集合とは、大雑把に言えばいくつかの「もの」からなる「集まり」である。集合を構成する個々の「もの」を元という、と紹介されている。
【００４７】  図１は、集合演算の概念を示すオイラー図である  オイラー図は集合論の考え方を最も理解しやすくするための概念であり、全体集合１０３の中から、特定の元１０５やその部分集合１０４を探し出す際の考え方をまとめる場合などに頻繁に利用されている。
【００４８】  図が情報の集合１０２である場合、全体集合情報の中から探し出したい元１０５、つまり情報（図に示すＡおよびＢ）を部分集合で指定するとともに、これらの論理否定１１１、論理和１０９、論理積１１０、の演算ならびにその組み合わせにより、論理差や論理対象などあらゆる集合演算１１５が可能になることは周知の通りであり、この考え方は現在の情報処理（コンピュータ）の根幹をなすものである。
【００４９】  数学的な概念は以上のように極めて単純であるものの、情報処理における元の場所は、図のように一箇所にまとまって存在することは少なくバラバラな場所に点在するのが一般的である。
【００５０】  図２は位置ならびに領域の概念の含めたオイラー図である。
【００５１】  図１で説明の集合演算１１５に、情報の位置１０６ならびに領域１０７の概念を組み合わせしたものである。（情報の集合演算における情報の場所の意義）  そもそも集合演算、つまり情報を探し出し出す処理とは、情報を探し出す対象のメモリ自体の物理的な構造が、アドレスとメモリセルの２つの要素のみで構成されていることから、メモリに記憶された何の情報がアドレス上どこにあるか、反対に一定のアドレスに何の情報があるかを特定すること以外のなにものでもない。
【００５２】  従ってメモリ上の、何が何処に、もしくは何処に何が、あるかが集合演算である。何が（データの値）と、何処（アドレス）との双方を一括して演算処理できれば、メモリ上の情報の集合演算をすべて実現できることを意味している。逆に言えば情報処理における集合演算は、情報（情報データ）の位置１０６や領域１０７を抜きにして処理することができないことを意味する。
【００５３】  情報処理の場合、当然のことながら図２における情報の位置１０６とは、メモリの特定のアドレスである情報データの位置４１４、領域１０７は特定のアドレスである情報データの領域４１５を意味する。
【００５４】  もちろん１アドレスを対象とする場合から、複数のアドレス、広範囲なアドレス領域の場合、離散したアドレスなどを含む広い概念である。
【００５５】  特定の位置１０６と領域１０７のＸにおける、集合演算１１５の実施結果を示すものである。
【００５６】  例えば、１次元情報の代表的な例である時系列データの場合、その時間の位置ならびに領域を指定し演算を行うことであり、２次元情報の代表的な例である画像データの場合、画像の位置ならびに領域を指定して演算を行うこと、そしてその演算結果がどの場所１１４にあるかを求める集合演算１１５である。
【００５７】  これらの考え方は日常極自然に行われている情報処理行為であり、この考えをなくして集合演算１１５をする意味がない重要な概念であり、情報の集合演算を行うためには絶対的に必要不可欠な概念である。
【００５８】  これまでの集合演算１１５は元１０５を対象としたものであったので、アドレス２０３の存在は暗黙の条件であり、特段の説明の必要もなかったものの、メモリ全体を対象にして集合演算１１５を一括演算するためには避けて通れない考え方であり、詳細を後述するパターンマッチやエッジ検出に不可欠の概念である。
【００５９】  本願特許では、これらの多様さを持ち、極めて重要な意味をもつ情報（情報データ）の位置１０６や領域１０７を情報の場所１１４と表現し説明する。
【００６０】  大きなデータベースから、小さなデータベースまで、様々な分野のデータベースで集合演算１１５が利用されているが、このような集合演算１１５の代表的な例は、特許庁の特許文献検索システムである。
【００６１】  例えば特許の先願を調査する場合、いくつかの言葉をキーワードにして、大量の特許文献の中から、論理和１０９、論理積１１０、論理否定１１１などの集合演算を用いて、特定の特許文献を見つけ出す処理はこの概念そのものである。
【００６２】  情報処理１０１の新しい産業の一つとして誕生したデーターマイニングもまさにこのような集合演算１１５を、名前を変えて行っているに過ぎない。これらの集合演算１１５の情報処理１０１は通常プログラムに基づくＣＰＵの情報処理行為によってなされるものである。
【００６３】  集合論の説明のオイラー図は数学的な解釈で表現されたものであり元１０５の存在が理解しにくいが、実際の情報処理１０１では元１０５を対象に集合演算１１５がなされている。
【００６４】  ＣＰＵはメモリ上に記憶された大量の情報（元）を集合演算１１５する際、ＣＰＵはメモリ上のどこに何の情報（元）があるのかわからないので、１枚１枚トランプをめくるようにメモリをアドレス（元）毎に照合し、意図する結果が出るまでこれを繰り返す(サーチ)必要がある。
【００６５】  我々がものを探す（サーチ）時、その殆どは無駄な時間である、ＣＰＵによるメモリ空間のサーチも全く同様でそのほとんどが無いところを探す処理となってしまい、その大半が無駄な情報処理時間となっている。
【００６６】  したがって集合演算１１５はＣＰＵにとって極めて過酷で理不尽な情報処理である。（本願発明の概念）  本願発明は、メモリアドレスごとに情報を記憶しその情報を読み出し可能なメモリであって、このメモリは、外部から与えられる、各メモリアドレスに記憶された情報を比較するための第１の入力２２１と、各メモリアドレス同士を比較するための第２の入力２２２と、集合演算条件として（１）部分集合、（２）論理和、（３）論理積、（４）論理否定のいずれか若しくはそれらの２以上の組み合わせを選択可能に指定する第３の入力２２３と、を入力するための入力手段と、第１の入力に基づき、アドレス毎にこのメモリに記憶された情報と比較し判定する手段２０８，２０９と、第２の入力に基づき、このメモリに記憶された情報同士を比較し判定する手段２１０，２１１と、第３の入力に基づき、前記第１及び第２の入力に基づく判定結果について論理演算する手段２２４と、この集合演算結果を出力する手段２０７とを有するメモリである。
【００６７】  以下、この発明の構成要件ごとに説明することで、上記の集合演算１１５をＣＰＵに頼ることなくメモリが自ら情報処理する新しい考え方のプロセッサを実現するための考えを説明する。（連想メモリ）  本願発明のメモリは、大きな潜在能力を持ちながらその実力を十分発揮することができなかった連想メモリをヒントにしたプロセッサである。したがって、まず、連想メモリについて説明する。
【００６８】  図３は、連想メモリ（ＣＡＭ）のブロック図の例である。
【００６９】  従来からメモリベースアーキテクチャデバイス、つまりメモリ自身が自主的に情報処理を行うデバイスとして、連想メモリ（ＣＡＭ）３０１の存在が知られている。この連想メモリ（ＣＡＭ）３０１は通常のメモリ同様にメモリアドレス２０３ごとにメモリセル２０２が配列された構造で、通常のメモリ同様に、メモリセル２０２に情報の読み書きが出来ると同時に、データ比較回路２０８で外部から与えられるデータ条件２２１に基づき並列に比較演算を行いその結果を出力することの出来るデバイスである。
【００７０】  このブロック図では、アドレスバスからのアドレス指定をアドレスデコーダ回路２０６でデコードし、アドレス選択を行い、メモリ上にデータの書き込みや読み出しが可能な構成であると同時に、メモリアドレス毎に並列に配列されたデータ比較回路２０８により、外部から与えられる、データ条件２２１に合致するメモリセル２０２を並列に検出し、本例ではこの検出結果をプライオリテイアドレスエンコーダ２０７で、マッチアドレスバスに出力する構成になっている。
【００７１】  以上の内容の連想メモリ（ＣＡＭ）３０１は一般的には、完全一致タイプのものであり、実用上利用できる情報の範囲が限定されるため、現在ではインターネット通信機器のＩＰアドレスの検出に利用される程度である。
【００７２】  次に、連想メモリに、本願発明の１つ目の構成要素であるデータを比較処理する手段を設けた例について説明する。
【００７３】  図４は、その連想メモリ（ＣＡＭ）のデータ比較回路の例である。
【００７４】  図に示す連想メモリ（ＣＡＭ）３０１は、１アドレスのデータ幅が１byteつまり８bit構成のものであるが、1アドレスのデータの幅は、自由であり対象となる情報に適切なデータ幅とすればよい。
【００７５】  上述した完全一致形の連想メモリ（ＣＡＭ）３０１の弱点を補うためには図に示すように、データ比較回路２０８やデータ範囲比較回路２０９で、データの大小比較並びに一致の比較ができる構成にすることにより利用できる情報の種類が大幅に拡大できる。
【００７６】  例えば画像情報４０５などは連続性を持ったアナログデータをデジタルに変換したものであり、これらのデータを取り扱うためには、完全一致の比較は不十分であり、範囲をもった比較が不可欠である。
【００７７】  また部分的な一致も重要である、たとえば画像情報４０５の色４０２情報は例えばＲ（赤）、Ｇ（緑）、Ｂ（青）の３色の組み合わせにより画素４０６として成り立っており、赤に関わるデータの一致、緑に関わるデータの一致、青に関わるデータの一致、などがこれに相当する。
【００７８】  本願特許では、これらの多様なデータ条件一致の様態を、情報データの値１１７の合致１１６と表現し説明する。
【００７９】  以上の構成により、データの合致が並列に行われ、データ条件２２１の部分集合１０４、複数のデータ条件２２１による論理和１０９、論理積１１０など基本的な集合演算１１５が可能になる。
【００８０】  次に、重要な要素はデータの場所１１４を含めた集合演算１１５である。
【００８１】  例えば部分的な一致の部分集合を複数回行い、その情報データの場所１１４の集合演算１１５を高速で行うには並列演算が不可欠となるが、連想メモリ（ＣＡＭ）３０１のアドレス毎に並列の四則演算器を個別に設けることは現実的な方法ではないため、通常ＣＰＵやＧＰＵなどの逐次処理型の情報処理デバイスに頼る意外なかった。つまりこれまで、情報のデータ条件２２１の集合演算１１５は連想メモリ（ＣＡＭ）３０１で実現できても、その情報のデータの場所１１４を含めた並列集合演算１１５の技術がなかったことを意味する。すなわち、連想メモリ（ＣＡＭ）３０１は情報の場所１１４の集合演算１１５ができないため片手落ちのデバイスとなり利用されることは少なかった。
【００８２】  以下に複数のデータ条件２２１の情報データの場所１１４の集合演算１１５を極めて単純でしかも、集合空間の全体を並列処理で求めるための基本的原理を説明する。（情報データの値を集合演算する手段（データ比較回路）及び（情報データの場所の集合演算の手段（アドレス比較回路）について）  図５は、情報絞込み機能を備えたメモリのブロック図の例１である。この情報絞込み機能を備えたメモリ３０２は、先に説明の連想メモリ（ＣＡＭ）３０１の機能に、外部から与えられるアドレス条件２２２をもとに、データの場所１１４を検出するためにアドレス比較回路２１０を加え、更にその結果を累積カウントするための、マッチ回数カウンタ２１２、そして勝ち抜いたアドレス、つまりマッチアドレス２１３を出力するためのプライオリテイアドレスエンコーダ２０７で構成されたメモリである。
【００８３】  すなわち、この情報絞込み機能を備えたメモリ３０２は、連想メモリ（ＣＡＭ）３０１の出力に並列に取り付けられた、アドレス比較回路２１０、およびアドレス領域比較回路２１１、によって情報の場所１１４、つまりアドレスの位置１０６や領域１０７を指定して、情報の絞込み、つまり情報同士の論理積１１０集合が出来る構成にしたものである。
【００８４】  アドレス比較回路２１０、およびアドレス領域比較回路２１１は、連想メモリ（ＣＡＭ）３０１の出力フラグのアドレスの位置替えを行うようなメモリアドレスの並列操作２１６で実現でき、この構成が連想メモリ（ＣＡＭ）３０１の情報の場所１１４の集合演算１１５の片手落ちを解消している。
【００８５】  この例で示す情報絞込み機能を備えたメモリ３０２は、例えば１次元（線形配列）のシフトレジスタなどで単純に実現できる構成であり１次元配列情報に最適な構成である。
【００８６】  以下にこの情報絞込み機能を備えたメモリ３０２の動作の概要を示す。（１次元情報のパターンマッチの情報処理例）  図６は、全文検出の例である。
【００８７】  この図６に示すように、文字データの集合１０２である文字列がデータベース４０７として、情報絞込み機能を備えたメモリ３０２に記憶されている。
【００８８】  一例としてこのデータベース４０７の中から問い合わせパターン４０８、文字列「情、報、処、理」を検出する場合の例を以下に示す。
【００８９】  １次判定として、情報絞込み機能を備えたメモリ３０２の連想メモリ（ＣＡＭ）３０１機能で、外部から与えられたデータ条件２２１により、文字「情」の検出を行う。この検出結果は今後の文字検出の基準情報４２１となるものである。
【００９０】  ２次判定として、同様に文字「報」の検出を行うと共に、この２次判定結果を１アドレス分、アドレス全体を並列に図の左側にシフトする。
【００９１】  ３次判定として、同様に文字「処」の検出を行うと共に、この３次判定結果を２アドレス分、アドレス全体を並列に図の左側にシフトする。
【００９２】  ４次判定として、同様に文字「理」の検出を行うと共に、この４次判定結果を３アドレス分、アドレス全体を並列に図の左側にシフトする。
【００９３】  以上４つの判定結果フラグが揃うアドレス、つまりマッチ回数カウンタ２１２が「４」になるアドレス、つまり論理積１１０が成り立つアドレスは図示するようにマッチアドレス２１３であり、対象となるデータベース全領域の中から、本例の場合、絶対アドレス２０４ｎ±０のアドレスが文字列「情、報、処、理」の文字列の先頭番地になっている。
【００９４】  つまり、この場合、マッチ回数カウンタ２１２は累積論理積１１０演算結果を記憶していることと等価である。
【００９５】  またこの際、必ずしも、「情、報、処、理」の順序である必要もなく、「理、処、報、情」の順序場合には、アドレス２０３のシフトの方向が逆転し、「理」のアドレスが基準情報４２１となりマッチアドレス２１３となる。さらに「処、理、情、報」でも、途中の文字を飛ばしても、アドレス２０３をシフト比較する際の方向とその位置の対応が的確になされていればどのような配列でも可能である。
【００９６】  いうまでもなく、データベース４０７全体で、１つもマッチアドレス２１３が存在しない場合も、複数のマッチアドレス２１３が存在し検出される場合もある。
【００９７】  重要なことは最初に指定される情報が基準情報４２１となり、順次これらの基準情報４２１が絞り込まれ、最後まで勝ち抜いたアドレスのみが検出されることである。
【００９８】  更に重要なことは、メモリアドレスの並列操作２１６でアドレスをシフトする量、つまり比較する情報の場所は互の相対位置、つまり相対アドレス２０５であり、その結果検出されるアドレスは絶対アドレス２０４であることである。従って、探し出したい情報の元１０５の組み合わせ順序のみが分かっていれば、どのような情報でも探し出せることになる。従来このような検索を高速で実施する場合には、インデックステーブルや頻繁に検索される情報を引き出しやすくする配列方法など特殊なアルゴリズムを考える必要があったが、データが更新される度にこれらのテーブルやアルゴリズムを変更する必要があった、この技術はこれら情報データの事前加工を全く不要にする。
【００９９】  後述するが、画像などの２次元画像でも同様である。以上の文字列は背景技術で説明のパターン４０１の代表的なものであり、上記説明の通り、以上のような文字列は通常の検索を行うことなく、連想メモリ（ＣＡＭ）３０１機能と、その出力フラグの位置替えを行うようなメモリアドレスの並列操作２１６はシフトレジスタの数クロックのシフト演算により容易に検出することが出来るようになる。
【０１００】  更に高速なメモリアドレスの並列操作２１６を行う場合には、マルチプレクサやバレルシフタなどを適宜組み合わせすることにより実現可能である。したがってこのような完全並列の手法による情報の集合全体の集合演算１１５はＣＰＵのメモリ空間個別の（情報の元）のスキャン（検索）を全く不要にするので、従来の情報処理１０１に比較にならない程高速な全文検出が可能になる。
【０１０１】  また完全並列であるために情報の大きさに左右されないので、情報の集合１０２が大きければ大きいほどその演算速度の差が顕著に現れやすい。先に述べた特許文献検索に話を戻せば、このような高速情報検出技術を利用することにより、例えば類似、同類な用語（例えばシソーラス）の繰り返しの検出も極めて単純に実現できることを意味する。
【０１０２】  図７は、情報絞込み機能を備えたメモリのブロック図の例２である。この例で示す情報絞込み機能を備えたメモリ３０２は、先に示した情報の場所１１４の集合演算１１５を行なうアドレス比較回路２１０、およびアドレス領域比較回路２１１を２次元（Ｘ軸、Ｙ軸の２軸）のシフトレジスタで構成したもので、２次元配列情報に最適な構成である。（２次元情報のパターンマッチの情報処理例）  図８から図１８は、以上の構成の情報絞込み機能を備えたメモリ３０２による２次元情報である画像検出の概念を説明するものである。図８に示すように、画素４０６の集合１０２である画像情報４０５が、情報絞込み機能を備えたメモリ３０２に配列記憶されている。
【０１０３】  本図では黒、赤、青、緑の４色の色４０２の情報データが、図に示すアドレス０からＮ―１までそれぞれのアドレス２０４に配列記憶されている。
【０１０４】  もちろん、これらの情報データは色４０２以外の輝度４０３でも、その他の方式の情報データでも、情報データの値１１７の種類は問わない。通常のメモリに情報を記憶することと全く同様である。
【０１０５】  問い合わせパターン４０８は黒、赤、青の画素４０６で示される、３画素のサンプリングポイント４１０からなるパターンである。
【０１０６】  以上の画像問い合わせパターン４０８をもとに、情報絞込み機能を備えたメモリ３０２が情報の集合１０２の中からパターンマッチ４０９して、マッチアドレス２１３を出力するまでの概念を以下に示す。
【０１０７】  以上のような２次元情報のパターンマッチ４０９は、図９に示すような概念で捉えると理解しやすい。
【０１０８】  先ほどの画像情報４０５の上に一枚のマスク２１７が被されており、このマスク２１７全体にマッチ回数カウンタ２１２が配列されていると考えると良い。この場合カウンタは０からＮ―１個がそれぞれのアドレス、つまり画素４０６毎に配列されている。
【０１０９】  先に１次元情報の文字検出で説明の通り、どのような順番でパターンマッチを行っても良いが本例では「黒、赤、青」の画素４０６の順序でパターンマッチ４０９を行う場合の説明を行う。
【０１１０】  図１０は黒の画素４０６を連想メモリ（ＣＡＭ）３０１機能で並列に検出した状態を示すものである。
【０１１１】  黒の３つの画素４０６が、座標４０４、データの位置４１４として検出されている。
【０１１２】  いうまでもなく、これは指定した情報データの値１０７に合致１１６する情報データ４１２が画素４０６の場所１１４つまりデータの位置４１４を座標４０４で示したものにほかならない。
【０１１３】  以上の黒の３つの画素の座標４０４、データの位置４１４は、今後のパターンマッチの基準情報４２１となるもので、図１１に示すように、この基準情報４２１の座標４０４、データの位置４１４のマスク２１７位置に窓を開けて、黒の画素が覗けるようにする。
【０１１４】  このマスク２１７の窓から黒の画素４０６が覗けたことを持って、マッチ回数カウンタ２１２を「１」にカウントアップする。
【０１１５】  以上の操作で、全画像集合中、３箇所の画素４０６のマッチ回数カウンタ２１２が「１」となり、この周辺に問い合わせパターン４０８と同様のパターンが存在する可能性があることを意味する。
【０１１６】  次に図１２に示すように赤画素の検出を同様に行う。
【０１１７】  この場合、３箇所の画素が赤である。
【０１１８】  これらの赤画素の座標４０４、データの位置４１４と、先ほど検出された黒の画素の位置つまり座標４０４、データの位置４１４の演算は図１３のように行う。図１２に示すように、黒画素４０６で定めた基準情報４２１が乗っているマスク２１７を、問い合わせパターンの、黒と赤の画素の位置、つまり座標４０４、データの位置４１４に相当する分、マスク２１７を移動させてみる。この時、先ほど窓を開けた基準情報４２１の位置、座標４０４、データの位置４１４から赤の画素が覗けるのは、図中の上部の画素１箇所のみである。つまり、この基準情報４２１のマッチ回数カウンタ２１２が「２」にカウントアップされ、勝ち残り、他の２つの基準位置のマッチ回数カウンタ２１２は「１」のままで、脱落となる。
【０１１９】  図１４に示すように、次は青画素４０６の検出である。本例の場合、６画素が検出されている。
【０１２０】  図１５で示すように、今度は先ほどのマスクを問い合わせパターン４０８の、黒と青の画素の位置、つまり座標４０４、データの位置４１４に相当する分、マスクを移動させてみる。
【０１２１】  この時、先ほどマスク２１７に窓を開けた基準情報４２１の位置、座標４０４、データの位置４１４から青の画素が覗けるのは、図中の上部の画素１箇所のみである。
【０１２２】  つまり、この基準情報４２１のマッチ回数カウンタ２１２が「３」にカウントアップされ、勝ち残り、他の２つの基準位置のマッチ回数カウンタ２１２は「１」のままである。
【０１２３】  つまり、問い合わせパターン４０８の黒を基準情報４２１として赤、青の２つの画素４０６の位置つまり、座標４０４、データの位置４１４は、マッチ回数カウンタ２１２のカウンタ値が「３」である座標４０４、データの位置４１４がパターンマッチ４０９し、マッチアドレス２１３として、勝ち残り、検出されたことになる。
【０１２４】  以上の説明のマスク２１７の移動は、いうまでもなくアドレス比較回路２１０、アドレス領域比較回路２１１によるメモリアドレスの並列操作２１６で実現される。
【０１２５】  以上のパターンマッチの際、外部から与える条件となる問い合わせパターン４０８の、座標４０４、データの位置４１４は、画素同士の相対距離１０８、つまり相対アドレス２０５で指定し、その演算結果のパターンマッチ４０９のマッチアドレス２１３を絶対アドレス２０４として出力できることは、後工程の処理の負担を軽減させる結果となる。
【０１２６】  本例は説明のための画像であるため、極めて小さなサイズの画像と、極めて少ないサンプリングポイント４１０の問い合わせパターン４０８によるパターンマッチ４０９の例であるが、画像のサイズが大きくなっても、確率上絞込み効果が大きいので、一般的には数画素から十数画素の問い合わせパターン４０８で十分にマッチアドレス２１３を絞り込んだパターンマッチ４０９を期待することができる。
【０１２７】  先に説明の１次元情報の時と同様に、以上の画像パターンマッチは、連想メモリ（ＣＡＭ）３０１機能と、シフトレジスタの数クロックのシフト演算によるものであり、ＣＰＵのメモリ空間のスキャンならびにそれに基づく情報の元同士の場所のベクトル演算を全く不要にするので、従来手法に比較にならない程高速な検出が可能になる。
【０１２８】  以上の説明は、完全一致型のパターンマッチ４０９の例であるが、図１６は基準情報４２１の領域を、Ｘ軸、Ｙ軸共に±１領域拡大したものである。このように座標４０４、データの位置４１４に領域を持たせることにより、曖昧なパターンマッチ４１８が可能になる。
【０１２９】  このような曖昧パターン４１７によるパターンマッチ４０９は、情報の位置の領域のみならず、情報データ値に範囲を持たせることや、マッチ回数カウンタ２１２の計測回数のミスマッチ回数を一定回数許容４２５することなどにより、極めて合理的で、しかも人間の感性に沿った曖昧なパターンマッチ４１８による曖昧認識４１９が行える。
【０１３０】  例えば図１７は、基準情報４２１を黒にして、Ｘ軸、Ｙ軸双方の座標４０４、データの位置４１４の領域を±２にした場合の例である。
【０１３１】  以上のように範囲指定することにより、この場合マスクを移動することなく、パターンを見つけ出すことも可能になる。
【０１３２】  これまでの、パターンマッチ４０９は、まず基準となる情報を指定する方法により、基準情報４２１、その結果により基準となる情報の場所１１４を決めるものであったが、この考え方と反対に、絶対アドレス２０４を対象として位置１０６や領域１０７などの情報の場所１１４を指定する方法を説明する。
【０１３３】  例えば、情報絞込み機能を備えたメモリ３０２に記憶する画像をオール白として、図１８に示すように、目的の座標４０４、データの位置４１４に、特定の色情報、本例の場合「緑」を記憶させる。
【０１３４】  以上の画像の１画素を、これまでの説明の、連想メモリ（ＣＡＭ）機能３０１機能で検出し、この検出結果フラグをアドレス領域比較回路２１１により、フラグの領域を領域拡大することにより、簡単に絶対位置やその領域、つまり絶対アドレス２０４による場所１１４を指定することが出来る。
【０１３５】  このような絶対アドレス空間の指定は、限られた空間の色のヒストグラムや濃度を検出する場合などに利用することができる。このような、絶対的なアドレス領域の濃度検出は、人間の顔や手など皮膚などの色の領域や、特別な色４０２や輝度４０３を持った物体の存在を検出するのに最適である。
【０１３６】  もちろん、アドレス条件が全領域であれば、メモリ全体が演算の対象になり、領域指定であれば、該当する領域のみの演算結果となる。
【０１３７】  このことは極めて重要である。
【０１３８】  膨大な情報がメモリに記憶されている場合、該当するアドレス領域のみが出力されることにより、マッチアドレス２１３を順次読み込み出す際の後処理を軽減することができるからである。
【０１３９】  これまでの説明の内容は、情報（データ）の値１１７を指定する手段と、情報（データ）の場所１１４を指定する手段によって、認識技術の基本となるパターンマッチ４０９を行った実例である。
【０１４０】  いうまでもなく、情報（データ）の値１１７は様々な情報の種類と、その合致１１６を意図しており、情報の場所１１４は、情報の位置１０６と情報の領域１０７の双方を意図しているとともに、情報の場所１１４は、相対的場所と絶対的場所の双方を意図している。
【０１４１】  これまで文字情報ならびに画像情報をもとにこれらの情報データの場所１１４の概念を説明してきた。
【０１４２】  情報処理における情報の場所１１４の概念は極めて広範囲でとらえどころがなく極めて漠然とした概念であるが、我々が情報処理を行う上で不可欠となる情報の種類の情報集合演算の標準化の例について説明する。
【０１４３】  図１９は、このメモリのグラフィックユーザーインターフェイス（ＧＵＩ）の例である。
【０１４４】  汎用のグラフィックユーザーインターフェイス（ＧＵＩ）とするには１次元配列、２次元配列、３次元配列のいずれかのデータ配列４１１を選択することにより、その情報の場所１１４つまり情報の位置１０６や領域１０７を適切に指定できるような構成とする。
【０１４５】  本例では基準情報４２１を基準として、本例ではＭ１からＭ１６までの、マッチ順序４２０のマッチ情報４２２をそれぞれ、情報のデータ４１２、とその範囲４１３、並びに情報の場所１１４、つまり情報データの位置４１４、とその領域４１５、を指定することにより、基本的な構成ができる。
【０１４６】  さらにデータの配列４１１の指定や、情報の場所の座標変換４２８、並びに、マッチ回数カウンタのミスマッチ回数を許容４２５する、機能が盛り込まれた構成になっている。
【０１４７】  これらのパターンマッチ条件を指定して、パターンマッチ４０９指定することにより、情報絞込み機能を備えたメモリ３０２は、指定にもとづき、パターンマッチを行い、マッチアドレス２１３を、絶対アドレス２０４として本グラフィックユーザーインターフェイス（ＧＵＩ）に返す構造とすれば良い。
【０１４８】  以下にパターンマッチ４０９による情報集合演算の標準化の例を紹介する。
【０１４９】  図２０は１次元情報の検出例を示すものである。季節の温度の変化や、景気の動向など時系列の集合情報、つまり１次元情報の中から、問い合わせパターンに、合致（マッチ）する情報を探し出す際の、イメージであり、一般的な文章などのテキストもこれらの一次元情報の仲間である。
【０１５０】  図の左側は全体集合１０３であるデータベース４０７であり、データの配列４１１の定義がなされ、絶対アドレス２０４に配列記憶された情報の元１０５の集合１０２である。
【０１５１】  一方図の右側に示す、問い合わせパターン４０８は、いくつかの、サンプリングポイント４１０からなる、探し出したい情報のパターンであり、それぞれのサンプリングポイント４１０は、データとその場所の関係が指定された基準情報４２１ならびに、マッチ情報４２２で１セットの問い合わせパターン４０１となっている。
【０１５２】  基準情報４２１は一つであるが、マッチ情報４２２はいくつでも構わない。図に示すように、それぞれの情報はそのデータ値（図ではＤの値）と基準情報４２１との相対距離、この場合相対アドレス２０５（図ではＸの値）が指定されている。
【０１５３】  以上の問い合わせパターン４０８に基づき、情報絞込み機能を備えたメモリの、指定された情報（データ）に合致１１６する情報を探し出す手段と、情報（データ）の場所１１４を探し出す手段によって、パターンマッチ４０９が行われマッチアドレス２１３が絶対アドレス２０４として出力される。図２１は２次元情報の検出例を示すものである。
【０１５４】  画像などの集合情報、つまり２次元情報の中から、問い合わせパターンに、合致（マッチ）する情報を探し出す際のイメージであり、その内容は図２０と同様である。  図２２は３次元情報の検出例を示すものである。分子や星座などの集合情報、つまり３次元情報の中から、問い合わせパターン４０８に、合致（マッチ）する情報を探し出す際のイメージであり、その内容は図２０と同様である。図２３は、１次元情報の曖昧検出例を示すものである。図２０で示した１次元情報の中から、曖昧な問い合わせ情報に、合致（マッチ）させる曖昧パターンマッチ４１８のイメージである。
【０１５５】  図に示すように、情報のデータにはデータの範囲４１３が指定され、情報の場所にも領域１０７が指定されている。
【０１５６】  以上のようなパターンマッチは一例として、株価の変動パターンや、気温の変動パターン、音声認識の音素パターンの検出（認識）などの分野に最適である。
【０１５７】  図２４は２次元情報の曖昧検出例を示すものである。
【０１５８】  図２１で示した２次元情報の中から、曖昧な問い合わせパターンに、合致（マッチ）させる曖昧パターンマッチ４１８のイメージである。以上のようなパターンマッチは一例として、画像中の人の顔位置、非顔部分の高速な検出や、車のナンバープレートの高速な文字読み取りなどの分野に最適である。
【０１５９】  図２５は、３次元情報の曖昧検出の例を示すものである。
【０１６０】  図２２で示した３次元情報の中から、曖昧な問い合わせパターンに、合致（マッチ）させる曖昧パターンマッチ４１８のイメージである。以上のようなパターンマッチは一例として、分子構造の特定や、宇宙空間の星座の特定、気象データの解析などの分野に最適である。
【０１６１】  図２６は、２次元情報の曖昧検出の例２を示すものである。図は図２４で示した２次元情報の曖昧検出の概念をさらに拡張したものである。図に示すように、領域内のいずれかの場所１１４に、対象となる情報があるかどうかを検出するものである。
【０１６２】  このような概念で検出するパターンは、パターンマッチ４０９の情報の場所１１４の概念を大きく拡大し、数学的な集合演算１１５を連想させるものである。
【０１６３】  図２７は、２次元情報の座標変換の例を示すものである。
【０１６４】  図は、パターンマッチの際の、情報の場所１１４の変換を座標変換４２８した例である。
【０１６５】  図に示す通り、座標の拡大、縮小や回転を行うことにより、画像のサイズ変更や、回転があっても、パターンマッチ４０９が有効に行われることを示している。
【０１６６】  以上の説明で特に重要なことは、パターン４０１は、情報（データ）の値１１７と、その情報データの場所１１４、の組み合わせであること、さらに少ないサンプリングポイント４１０でも、確率上、十分に絞り込みが行われ、特定のアドレスを抽出することができ、様々な種類の認識技術この考え方が応用できることである。
【０１６７】  これまでの説明で理解できるようにすべて情報の配列が定義された情報であればパターンマッチ４０９が可能であり、全てのデータ配列４１１はパターンマッチ４０９の情報集合演算の標準化、汎用化ができることである。
【０１６８】  以上のようなパターンマッチ４０９が、従来のＣＰＵによるソフトウエア情報処理１０１でどの程度の時間が必要か幾つかの検証を行った。
【０１６９】  もちろんこの検証は、特殊なアルゴリズムや特殊なハードウエアを使用しないＣＰＵの裸の実力だけに頼るものである。（ＣＰＵによるパターンマッチ時間）  検証結果の一つとして、高性能なパソコンで２次元配列の画像（ＢＭＰ形式）の６４０×４８０ピクセルの画像を検索対象画像として、１セット合計５ポイントのサンプリングポイント４１０によるパターンマッチを行ってみた。完全一致の場合１１４ｍ秒の時間が必要であった。
【０１７０】  さらに１セット合計５ポイントの曖昧パターンマッチをさせた場合、１１秒を超える処理時間がかかることが確認された。
【０１７１】  曖昧なパターンマッチ、つまり情報（データ）の領域４１５をもつパターンマッチは、情報と情報の、組み合せベクトル演算となる。
【０１７２】  知られているように組み合せ演算は、多大な情報処理時間となる。
【０１７３】  曖昧パターンマッチの領域を大きく拡大すると、組み合せ的な爆発を生じ分単位、またはそれ以上の時間が必要になる。
【０１７４】  しかしながら画像の認識などには情報の領域をもった曖昧パターンマッチは不可欠な技術である。
【０１７５】  以上のことは、情報の認識にパターンマッチは不可欠な技術であり、もっとも基本になる技術であるが、画像情報のように大きなサイズの情報では、パターンマッチは実用化できないことを物語っている。
【０１７６】  以上のような要因で多くの場合、認識の最も基本となり、重要な手段であるパターンマッチが利用できないので、他の複雑で特殊な認識手段に頼らなくてはならないのが現状である。
【０１７７】  例えば画像処理の多くは、認識処理の１次処理として、画像空間をフーリエ変換で周波数成分のデータに変換する場合や、アナログ処理によりエッジや領域の検出をしている。
【０１７８】  そのための変換時間や処理時間が必要になり、これらの認識手段の多くは、撮影条件や照明の条件など一定の条件のもとで有効であっても、条件外の環境では利用できない場合も少なくない。
【０１７９】  以上のことが、現在のコンピュータが誕生して６６年も経つがその認識レベルは人間で言えば赤ちゃんレベルにとどまっている大きな要因である。（集合全体一括演算によるパターンマッチ時間）  これまでの情報絞込み機能を備えたメモリ３０２の研究は主としてＦＰＧＡによるものであり、ロジックリソースが不十分な回路構成によるパターンマッチであるものの１ｍ秒以下で１セット合計５ポイントの曖昧パターンマッチが可能あることが確認されている。
【０１８０】  これらの実績をもとにＡＳＩＣにすることにより、理論上であるが曖昧パターンマッチでも数μ秒での検出が可能あることが確認されており、更に高速化することも可能である。ＣＰＵによるパターンマッチの時間と比較すれば１００万倍以上である。
【０１８１】  これらのことは、現在のＣＰＵによる情報処理が集合の元１０５を対象にしたものである一方、情報絞込み機能を備えたメモリ３０２が集合全体を一括したパターンマッチ４０９であることによる決定的な違いである。
【０１８２】  一般的な動画は１秒間に３０枚の静止画が連続されたものである、１枚当たり３３ｍ秒である。
【０１８３】  １回、１セット合計５ポイントの曖昧パターンマッチを仮に５μ秒とした場合、この３３ｍ秒の間に、６６００回のパターンマッチ４０９が可能である。１秒間であれば、２００，０００回のパターンマッチ４０９が可能である。
【０１８４】  つまり認識したい様々な物体や文字、音声などの問い合わせパターン４０８をテンプレートとして用意しておくことにより、動画の中から認識したい物体や文字、音声を瞬時に検出することができる。
【０１８５】  さらに、局所画像空間から無作為にサンプリングポイント４１０を定めデータを抽出して、そのサンプリングデータを問い合わせパターン４０８とすることもできる。
【０１８６】  このようなパターンマッチは動体認識や、立体視のパターンマッチ４０９に最適である。
【０１８７】  もしＣＰＵによりこれらの速度に匹敵する速度性能を実現しようとする場合、特殊なソフトウエアアルゴリズムを用い、さらにＣＰＵの数の増設（並列）に頼る意外に解決方法はない。
【０１８８】  従って装置自体のサイズや消費電流の増大などが大きな課題である。一例として、認識処理機能を持たせたインテリジェンスなカメラの場合、数十ワットクラスのＣＰＵが内蔵されている。
【０１８９】  このようなカメラの場合、カメラの筐体はヒートシンクとなり、大型となり軽量化することができない。
【０１９０】  情報絞込み機能を備えたメモリ３０２を用いることにより、超高速で高精度な認識機能が実現できるので、ＣＰＵは高性能のものでなくても良いことになる。以上の内容は携帯用のバッテリ機器に大きな意味をもつ。（データ比較回路、アドレス比較回路に加え、集合演算回路を備えたメモリの例）  これまで様々な観点からパターンマッチ４０９が情報処理１０１で極めて有効な情報処理１０１手段であるとともに、情報絞込み機能を備えたメモリ３０２が、ＣＰＵが苦手な情報処理の一つである、情報のパターンマッチ４０９に有効であることを示してきた。そもそもパターンマッチとは、メモリ自体の物理的な構造が、アドレスとメモリセルの２つの要素のみで構成されていることから、メモリに記憶されたパターンの情報がアドレス上どこにあるか、反対に一定のアドレスに何のパターンがあるかを特定すること以外のなにものでもない。
【０１９１】  以上のパターンマッチ４０９ならびに情報絞込み機能を備えたメモリ３０２の概念をさらに拡張することにより、あらゆる情報の任意の集合を演算することができるメモリベースのプロセッサに進化させる方法について説明する。
【０１９２】  パターンマッチ４０９の上位概念は情報の集合演算１１５である、このことにまず着目する必要がある。
【０１９３】  パターンマッチに必要な情報の絞込みは、部分集合の論理積１１０を主体とした集合演算１１５であった、この考えをさらに発展させ、集合演算１１５に必要な機能、例えば論理和１０９、論理否定１１１の機能と、これらを組み合わせ演算する機能を揃えることにより、これまでＣＰＵに頼っていた集合演算１１５を、個別の情報つまりメモリ個別の元１０５を対象にした集合演算１１５をすることなく、数学的集合演算１１５のように、メモリ上の情報集合１０２を一括して、超高速で、高精度、低消費電力で、しかも極めて単純な操作によるプロセッサを実現することができるようになる。
【０１９４】  図２８は、本発明の実施形態にかかるメモリのブロック図の例である。図に示すように集合演算機能を備えたメモリ３０３は情報絞込み機能を備えたメモリ３０２のマッチ回数カウンタ２１２の部分を、演算回路２２４に置き換え、外部から与えられる論理演算条件２２３に基づく、論理和１０９、論理積１１０、論理否定１１１などの演算を指定された条件で任意に実現できるように構成したものである。
【０１９５】  つまり、情報絞込み機能を備えたメモリ３０２は、カウンタによる論理積１１０集合演算１１５を主体として行い、主としてパターンマッチ４０９など目的となる情報を絞込み集合演算１１５するものであったが、この考え方を更に進化発展させて、あらゆる種類の情報の任意の集合演算１１５を実現させるよう構成したものである。
【０１９６】  図２９は、上記集合演算機能を備えたメモリの詳細ブロック図の例である。
【０１９７】  すなわち、このメモリは、外部から与えられるデータ条件２２１によりデータ比較する回路２０８、２０９（詳しい構成は前記の説明参照）と、外部から与えられるアドレス条件２２２によりアドレス比較する回路２１０、２１１（詳しい構成は前記の説明参照）、外部から与えられる論理演算条件２２３、ならびに以上の条件に基づき論理演算する回路２２４、更にプライオリテイアドレスエンコーダ２０７で演算結果のマッチアドレス２１３を出力する構成になっている。
【０１９８】  演算回路２２４は、正論理１１２、負論理１１３変換の回路並びに、一つ以上の勝抜きフラグ２１４、もしくは領域勝抜きフラグ２１５で構成されており、連想メモリ（ＣＡＭ）３０１からの出力フラグはアドレス条件２２２、並びに論理演算条件２２３で指定される条件に基づき、勝抜きフラグ２１４、もしくは領域勝抜きフラグ２１５通じて、プライオリテイアドレスエンコーダ２０７に接続され出力される構成となっている。
【０１９９】  勝抜きフラグ２１４、もしくは領域勝抜きフラグ２１５、はフラグの多段接続を行い、従来の情報絞り込み機能を備えたメモリ３０２のようにカウンタ構成としてマッチ回数カウンタ２１２として使用することもできる。
【０２００】  また、勝抜きフラグ２１４、もしくは領域勝抜きフラグ２１５からの出力は、アドレス比較回路、２１０、２１１の入力に加えられ、論理演算条件２２３の指定に基づき、並列に再論理演算をさせることができる構成となっている。
【０２０１】  以上の構成により、外部から与えられるデータ条件２２１にもとづきデータ比較回路２０８、データ範囲比較回路２０９で連想メモリ（ＣＡＭ）３０１機能を働かせ条件に合致１１６するアドレスを並列に検出するとともに、外部から与えられるアドレス条件２２２をもとにアドレス比較回路２１０、アドレス領域比較回路２１１で、相対的なアドレス、絶対的なアドレス、の場所１１４、つまりアドレス位置１０５と領域１０７を並列に指定し、外部から与えられる論理演算条件２２３、ならびに以上の結果を論理演算する回路２２４で、任意の集合演算１１５、例えば論理和１０９、論理積１１０、論理否定１１１、ならびにその組み合わせ、さらには過去の演算結果との集合演算１１５、を並列に行いその結果のマッチアドレス２１３をプライオリテイアドレスエンコーダ２０７で出力することができる。
【０２０２】  以上の集合演算１１５は、メモリ上の元１０５を対象にした集合演算１１５ではなく、メモリ上の情報の集合を一括した集合演算１１５である。
【０２０３】  このような集合演算１１５方法であれば、１アドレスに対し、通常２つのフラグを制御するだけの回路構成で実現できるので、回路構成が極めて単純であり大型の情報処理容量を持った、集合演算機能を備えたメモリ３０３を造ることが可能である。
【０２０４】  これまで、連想メモリ（ＣＡＭ）３０１を応用した様々なデバイスの研究が行われてきたものの、メモリアドレス間の演算は規模が大きくなり並列処理を行うと大きなアドレス空間のデバイスが実現できなかった。
【０２０５】  連想メモリ（ＣＡＭ）３０１出力フラグのアドレスの位置替えを行うようなメモリアドレスの並列操作２１６は極めて単純な回路構成で実現できるので、回路構成上の負担を極めて少なくするものである。（文献検索の例）  図３０は、文献検索の場合を例にとった、グラフィックユーザーインターフェイス（ＧＵＩ）の例である。
【０２０６】  図では集合演算機能を備えたメモリ３０３で、特許情報検索のような全文検出を行う場合のグラフィックユーザーインターフェイス（ＧＵＩ）の概要を示している。
【０２０７】  本例では、演算条件が条件１から条件８まで８つあり、それぞれの条件の中にキーワードとする文字列を指定し、演算子の指定と、論理の正論理１１２、負論理１１３の指定が行われる。ここで、このＧＵＩにおいては、演算子の指定が、（１）部分集合、（２）論理和、（３）論理積、（４）論理否定のいずれか若しくはそれらの２以上の組み合わせを選択可能に指定することができるように構成されている。
【０２０８】  本例は、文字列（情報処理）の部分集合と、文字列（検索＋検出）の部分集合と、を正論理の論理積で求め、合致する文献を探し出し、その演算結果に文字列（認識）の負論理の論理積に、合致する文献を探し出す場合の例である。
【０２０９】  図３１から図３４は、集合演算機能を備えたメモリ３０３による集合演算例である。
【０２１０】  以上の文献検索を行う場合の一例として、まずは対象となる複数の文献を、集合演算機能を備えたメモリ３０３に記憶しておく。
【０２１１】  実際には多数の文献を記憶できるが説明を容易にするために、図の左側のアドレス群、図の中央のアドレス群、図の右側のアドレス群、のそれぞれに記憶された文献を左文献、中文献、右文献（それぞれ１文献とする）と表現して説明する。
【０２１２】  図３１は、文字列（情報処理）の論理積１１０集合演算を行い、勝ち残ったアドレスと、対象になる文献を示すものである。（情報処理）の論理積１１０集合演算については、この明細書中ですでに図６を参照して行った。ここで、「情」、「報」、「処」、及び「理」がこの発明の「第１の入力」に該当し、「情」、「報」、「処」、及び「理」の互いの位置関係が「第２の入力」に該当する。また、前記演算子及び正／負理論の別を示すのが「第３の入力」に該当する。
【０２１３】  文字列（情報処理）は図６で説明の通り、情報の場所１１４を含んだ論理積１１０演算により求まり、そのマッチアドレス２１３が、中文献、右文献の中に１つずつ存在し、その中文献、右文献のプライオリテイアドレスエンコーダ２０７は、勝ち残り、になっている。
【０２１４】  図３２は、文字列（検索）の論理積１１０集合演算を行い、そのマッチアドレス２１３が、右文献の中に１つ存在し、右文献のプライオリテイアドレスエンコーダ２０７は、勝ち残り、になっている。
【０２１５】  この場合、続けて論理和１０９演算が続くので、中文献のプライオリテイアドレスエンコーダ出力２０７も、勝ち残り、のままにしておく。
【０２１６】  図３３は、文字列（検出）の論理積１１０集合演算を行い、そのマッチアドレス２１３が、左文献と、中文献の中に１つずつ存在する。
【０２１７】  この際、左文献のプライオリテイアドレスエンコーダ２０７は既に、勝ち残り、から脱落しているので無視される。
【０２１８】  中文献のプライオリテイアドレスエンコーダ２０７は、勝ち残り、が継続される。
【０２１９】  当然、右文献のプライオリテイアドレスエンコーダ２０７は、勝ち残り、が継続される。
【０２２０】  図３４は、文字列（認識）の論理積１１０集合演算を行い、そのマッチアドレス２１３が、右文献の中に１つ存在する例である。
【０２２１】  この場合、論理演算条件２２３の指定が負論理１１３であった場合、右文献のプライオリテイアドレスエンコーダ２０７は、勝ち残りから脱落し、文字列（認識）の論理積１１０集合演算のマッチアドレス２１３が存在しない中文献が、最終勝ち残り、の文献となる。
【０２２２】  以上の集合演算（複数回の最集合演算）は、外部から与えられる、論理演算条件２２３をもとに図２９で示した論理回路２２４により、適切に実現される。
【０２２３】  本例では、集合演算を集合演算機能を備えたメモリ３０３のアドレス空間全体を一括して行っているが、部分的な領域を指定して集合演算できることはいうまでもない。
【０２２４】  仮に１Ｍアドレス（１００万アドレス）の集合情報の場合、高速なメモリをＣＰＵが１スキャンするだけでも数ｍ秒が必要になり、範囲を含めたベクトル演算、つまり組み合せ演算があればすぐに組み合せ的な爆発を起こし、極めて多大な情報処理時間が必要になることはこれまでの説明の通りである。本例のような集合演算の場合、１Ｍアドレスであろうと１００クロック程度の処理で集合演算が可能になるので、熱が問題にならない１０ｎ秒のクロックの場合でも１μ秒程度で全体の集合演算が完了できる。
【０２２５】  当然ながら、この演算に必要な電力も極めて削減される結果になる。仮に特許検索に、シソーラスの考えを組み込んだ検索ができるようになれば利用者の負担は大幅に軽減され、しかも見落としのない確実な特許検索が可能になる。
【０２２６】  本例は１次元配列の情報を対象としたものであるが、集合演算機能を備えたメモリ３０３は、２次元配列や、３次元配列、さらには配列の決まった情報の全てに利用することが可能であることはこれまでのパターンマッチの例を参照されたい。
【０２２７】  この場合には、図１９に示すよう、情報データ配列４１１を指定（本発明の「第４の入力」に該当）できるようにすればよい。
【０２２８】  以上のような集合演算が自由に出来れば、これまでのパターンマッチの概念もさらに拡大し、さらに高度で効果的なパターンマッチが可能になる。
【０２２９】  例えば、論理否定を利用することにより、排他データ４２６を利用した排他パターンマッチ４２７をすることができる。
【０２３０】  また、例えば、一定のアドレス領域に期待する情報が全て存在する場合、その全てのマッチアドレス２１３を逐次出力させるより、期待する情報の補数、つまり排他データ４２６で集合演算を行い、その結果マッチアドレス２１３が一つもないことを確認（マッチアドレスの読み出し）、つまり排他パターンマッチ４２７をするほうが後工程の負担を軽減することができる。（エッジ検出の例）  図３５は、集合演算機能を備えたメモリによるエッジ検出の例である。
【０２３１】  本例は情報の論理否定１１１を利用した排他パターンマッチ４２７の効果的な活用例である。
【０２３２】  図に示す実際の画像には、黒、青、緑、白、そして赤の画素４０６が複雑に混ざった画像４０５の集合１０２を示している。赤の集合１０２はこの中から赤の画素１０２のみを値１１７の集合演算１１５で求めたものである。本例の場合赤画素は球体の形状であり同一の画素で形成された一定の領域を持っている、また言うまでもなくこの球体に黒、青、緑、白などの画素が複雑に隣接している。このような場合、前述の排他データ４２６による排他パターンマッチ４２７を利用したエッジ検出が有効である。
【０２３３】  図のＳＴＥＰ１は、基準情報４２１を赤の画素として、基準情報４２１の左側に隣接する画素（Ｘ＝−１、Ｙ＝０）が赤以外の画素（赤の論理否定１１１）であることを条件として排他パターンマッチ４２７を行い球体の左側エッジをマッチアドレス２１３として検出したものである、この排他パターンマッチによりエッジ右側に存在する赤画素（領域内赤画素）は無視される結果となっている。
【０２３４】  図のＳＴＥＰ２は、基準情報４２１を赤の画素として、基準情報４２１の右側に隣接する画素（Ｘ＝＋１、Ｙ＝０）が赤以外の画素（赤の論理否定１１１）であることを条件として排他パターンマッチ４２７を行い球体の右側エッジをマッチアドレス２１３として検出したものである、この排他パターンマッチによりエッジ左側に存在する赤画素（領域内赤画素）は無視される結果となっている。
【０２３５】  図のＳＴＥＰ３は、基準情報４２１を赤の画素として、基準情報４２１の上側に隣接する画素（Ｘ＝０、Ｙ＝＋１）が赤以外の画素（赤の論理否定１１１）であることを条件として排他パターンマッチ４２７を行い球体の右側エッジをマッチアドレス２１３として検出したものである、この排他パターンマッチによりエッジ下側に存在する赤画素（領域内赤画素）は無視される結果となっている。
【０２３６】  図のＳＴＥＰ４は、基準情報４２１を赤の画素として、基準情報４２１の下側に隣接する画素（Ｘ＝０、Ｙ＝−１）が赤以外の画素（赤の論理否定１１１）であることを条件として排他パターンマッチ４２７を行い球体の右側エッジをマッチアドレス２１３として検出したものである、この排他パターンマッチによりエッジ上側に存在する赤画素（領域内赤画素）は無視される結果となっている。
【０２３７】  以上ＳＴＥＰ１から４を組合せすることにより画像の全体のエッジ（輪郭）アドレスが得られることになる。
【０２３８】  更に高度なエッジを検出する必要があれば、赤を基準として、左上、右上、左下、右下の条件を入れることや、画像上のノイズを無視するために数画素間を設けて排他パターンマッチを行うなど従来のフィルター効果を利用することなども自由である。
【０２３９】  もちろん完全一致のみならず値の範囲や一色のみならず複数の色や輝度を対象とすることにより物体の特定が容易になる。いすれにしても、領域内全てのアドレスを対象とすることなく、エッジのみのアドレスを直接検出出来ることは、エッジ検出の負担を軽減するのみならず後工程の負担も大幅に軽減する結果となる。
【０２４０】  以上のようにエッジ検出という極めて簡単な集合演算により物体の形状を認識することが出来る。
【０２４１】  言うまでもなくこのエッジ検出は画像空間全てに対して行われるものであり物体の領域が広くても、どの様な形状でも問題ない。
【０２４２】  エッジアドレスが検出できれば物体の大きさ、重心などを求め物体を特定することや、エッジによる物体の動きを追従することが極めて容易になることを意味している。
【０２４３】  以上のエッジ検出はいずれのＳＴＥＰも数クロックの集合演算で実現できるので、様々な条件を組合せ効果的なエッジ検出を行うことが出来る。以上説明の通りエッジ検出はパターンマッチ同様画像認識を行う上で必要不可欠の画像処理でありグレースケールのみならずカラーによる複雑なエッジ検出は従来概念を大きく変える画像処理ツールとなる。
【０２４４】  以上の例は集合演算機能を備えたメモリ３０３の利用方法のほんの一部に過ぎない。大量のデータベース４０７や更に高速を図る場合には、集合演算機能を備えたメモリ３０３を並列に接続して利用すればよい。この場合、集合演算機能を備えたメモリ３０３は使用するデバイスの個数に比例したパフォーマンスが期待できるのも大きな特徴である。
【０２４５】  集合演算機能を備えたメモリ３０３のメモリセル２０２は、ＤＲＡＭ、ＳＲＡＭ、ＲＯＭ、ＦＬＡＳＨタイプなどあらゆるタイプのメモリで実現させることができ、また半導体メモリ等に限定されるものではない。常に一定の集合演算を繰り返すような場合においては、論理回路１１０を固定化して使用することや、ＦＰＧＡのようなＰＬＤ（Programmable Logic Device）を用いて半固定化して使用することも可能である。
【０２４６】  本例では完全並列の集合演算を紹介したが、一部の機能を逐次処理として使用することも可能である。
【０２４７】  また情報の場所１１４の集合が単純である場合には、通常行われるアドレス設定やバンク切り替え、仮想メモリ空間の考えで場所１１４を指定することも可能である。
【０２４８】  以上、集合演算機能を備えたメモリ３０３の集合演算の実例を２例で示したが、情報を探す仕事、検索、照合、認識のいずれにも利用できることはこれまでの説明の通りである。
【０２４９】  集合演算機能を備えたメモリ３０３はＣＰＵや、ＣＣＤ、ＣＭＯＳセンサなどの半導体に組み込み込まれ使用する場合、反対に集合演算機能を備えたメモリ３０３にＣＰＵやその他の半導体を組み込み更に高度な情報処理をさせることも可能である。
【０２５０】  以下、上記集合演算機能を備えたメモリ３０３で実施できる他のパターンマッチングの例を説明する。
【０２５１】  いずれの例も、メモリアドレスごとに情報を記憶しその情報を読み出し可能なメモリであって、このメモリは、外部から与えられる、各メモリアドレスに記憶された情報を比較するための第１の入力２２１と、各メモリアドレス同士を比較するための第２の入力２２２と、集合演算条件として（１）部分集合、（２）論理和、（３）論理積、（４）論理否定のいずれか若しくはそれらの２以上の組み合わせを選択可能に指定する第３の入力２２３と、を入力するための入力手段と、第１の入力に基づき、アドレス毎にこのメモリに記憶された情報と比較する判定する手段２０８，２０９と、第２の入力に基づき、このメモリに記憶された情報同士を比較し判定する手段２１０，２１１と、第３の入力に基づき、前記第１及び第２の入力に基づく判定結果について論理演算する手段２２４と、この集合演算結果を出力する手段２０７とを有するものである。（画像パターンマッチングの例）  以下、画像パターンマッチングの例を、図３６〜図５０を参照して説明する。なお、以下の説明では、優先権主張の基礎出願との対応関係が分かりやすいように参照符号をそのままにして説明していることに留意されたい。
【０２５２】  図３６は、画像パターンのおよび画像パターンマッチの説明である。
【０２５３】  パターン１の原義は織物の柄や印刷物の絵柄を現す言葉であると同時に、特定の事象や物体の特徴を現す場合に広く使用される言葉である。画像のパターン１の場合、これらの柄や絵柄は、細かい色や輝度が、様々な位置に、組み合わされて、配列されたものと定義して良い。温度パターン１や景気のパターン１などは一次元情報のパターン１の例であり、文字列やＤＮＡ配列、コンピュータウイルスもこのパターン１の一例である。静止画、動画、ＣＧを問わず、一般的な画像はメモリ上の画像情報５をもとに表示再生が行われるもので画像情報５と画像は表裏一体の関係があり本明細書では画像情報５を単に画像５と表現する。
【０２５４】  図ではトンボのような虫眼鏡で指定されたパターンを探し出す時の概念が示されており、図では省略されているが画像５上に記憶された全範囲の画像情報の中から特定のパターン１をトンボのような虫眼鏡で検出した状況である。
【０２５５】  図に示すように画像５によるパターン１は、Ａパターン１の、ＢＬ（黒）、Ｒ（赤）、Ｇ（緑）、Ｏ（オレンジ）、Ｂ（青）で示される色２情報や、Ｂパターン１の、５、３、７、８、２で示される輝度３情報が座標上に組み合わされたものである。このパターン１の色や輝度のデータとその座標４の位置が相対的に合致する事により画像パターンマッチ１７が成立する。
【０２５６】  以上の問い合わせパターン１は人の意志にもとづき、色や輝度とその位置を適宜組み合わせパターン１として構成する場合と、何らかの他の画像の中から特定の画素とその位置を抽出して問い合わせパターン１を構成する場合、その双方を組み合わせして問い合わせパターン１を構成する場合の３通りがある、その詳細は後述する。
【０２５７】  この時、問い合わせＢパターンのように色や輝度のデータ値に一定の幅を与え、さらに組み合わせの座標４の位置にも一定の範囲を与えることにより、完全一致の画像パターンマッチ１７から類似画像パターンマッチ１７にその手段を拡大することが出来る。以上は、人間にとっては、極めて単純な事であるが、人間にとって極めて容易にパターンマッチ１７できる内容も現在のＣＰＵとメモリを中心にしてなされる情報処理では極めて負荷の掛る厄介な情報処理の一つである。
【０２５８】  図３７は、本発明の情報絞込みメモリを用いた画像パターンマッチの原理の説明である。
【０２５９】  画像５はＸＹ軸２軸の情報として扱われる２次元情報の代表的な情報である。どのような画像５も画像５を構成する画素（ピクセル）６の数がＸＹ軸両軸決められており、その積算されたものが総画素数となる。原則的に画像５の基本となる輝度３情報や色２の三原色等の色２情報はこの画素６単位で獲得され記憶媒体に記憶される。
【０２６０】  一方コンピュータのメモリは、情報を記憶する場所、その記憶された情報の場所を指定するためのアドレス７が存在する。このアドレス７は一次元、線形配列で通常０番地からＮ番地まで１６進値で指定される。図に示す通り２次元情報の画像５情報を画素６毎にメモリに記憶する場合、１ラインの画素６数（ｎ、２ｎ、３ｎ・・・）で折り返しを繰り返し、Ｎ番地までメモリのアドレス上に書き込みが行われている。
【０２６１】  一般的にアドレス等は０番地からｎ番地などの表記が一般的であるが図では説明を簡略化するために１画素からｎ画素の配列で図示している。またこの説明では便宜上、図の上方から順にアドレスを割り当てしているが、下方から順にアドレスを割り当てする場合でもなんら問題ない。また画像５を構成する画素６は輝度３情報の場合１つの種類のデータをメモリに記憶するだけであるが、色２情報の場合、通常色の３原色Ｒ、Ｇ、Ｂをそれぞれ独立して記憶する必要があり通常は１画素６当たり３つの画素情報を記憶する必要がある。従って１画素６当り３アドレスで色２情報を記憶する場合、実際のメモリは画素６数の３倍のアドレス７数が必要になる。いうまでもなく１ラインの画素６数（ｎ）が分かっていれば、画像５上のどの画素６のどの色２の情報がメモリ上のどの位置に記憶されているのか、その反対も容易に変換することが可能である。
【０２６２】  以上の画素の配列は、画像フレームバッファ情報はもとより、ビットマップ画像情報、ＪＰＥＧ、ＭＰＥＧ等の圧縮画像データ、さらに地図やアニメ―ション画像のＣＧなどの人為的に作成された画像つまり二次元配列の画像全てにおいて共通であり、一般的な画像を扱う上での基本的な約束事項である。
【０２６３】  図３７に示すＡ、Ｂの２つの画像パターン１は、５つの画素６とその位置で構成される画像パターン１であり、パターンマッチ条件が５条件である。Ａパターン１は、色２情報である、ＢＬ（黒）を基準にして、Ｒ（赤）、Ｇ（緑）、Ｏ（オレンジ）、Ｂ（青）が図示する画素位置に配列されている。Ｂパターン１は、輝度３情報である、「２」を基準にして、「５」、「３」、「７」、「８」が図示する画素位置に配列されている。基準となる画素はパターン内どの画素でも構わない、また対象とする画素の数（パターンマッチ条件）は多くても少なくてもよい。
【０２６４】  これまでの技術では、この様な問い合わせパターンをもとにして、配列記憶されたメモリ上のアドレスをＣＰＵが逐次処理して見つけ出す処理、つまりソフトウエアよるパターンマッチを行う必要があった。つまりパターンマッチと称する情報処理はその大半がＣＰＵの処理によるものであるため本質的なパターンマッチとはかけ離れた内容になっているのが実態であった。
【０２６５】  この発明の情報絞り込み検出機能を備えたメモリ５１（３０３）では、これまでのＣＰＵとメモリの逐次処理による無駄時間をなくすため、以上説明のようなＡ、Ｂのパターンを直接入力することにより、メモリ内の情報処理のみで、パターンマッチ１７させて、パターンマッチ１７したアドレス７を出力させるよう構成したものである。以下、先に述べたＡ、Ｂパターンをもとにその動作原理を紹介する。
【０２６６】  情報絞り込み検出機能を備えたメモリ５１（３０３）は指定されたデータに合致し、更に配列された情報の相対位置が合致、以上双方のマッチングをメモリの内部でとることが出来るメモリ５１（３０３）である。
【０２６７】  これまで説明してきたように、２次元座標は、図に示すように、基準画素６からの位置が線形配列の画素６位置情報に変換されている。注目すべきは、基準画素６とその周辺の画素６で構成される、一組のパターン１の画素６の相対距離はこの画像空間上どこにあってもいつも一定である、この事がこの発明の基礎となっている。
【０２６８】  以上の内容は画像情報を取り扱いするときの周知の事実であるが、この発明はこの基本的な事実を半導体デバイスとしてハードウエアに組み込みすることが可能であり、パターンマッチ１７に利用できる事を証明したものである。
【０２６９】  また、複数の画素６とその位置で構成される１組のパターン１は一定の画素数を持つことにより、そのパターン１が他に存在する確率は極めて少なくなることである。従って、パターン範囲内の画素全部を対象にする必要はなく、適切な画素６の数を選びサンプルとすることにより指定したパターン１が絞り込まれて検出できること、さらには部分毎のパターン１を組合せ全体のパターン１を検出することなど、効果的なパターンマッチ１７が行われる事が大きな特徴である。
【０２７０】  対象になる画像に拡大や縮小、更に回転等がある場合には単純な座標変換を行いパターンマッチさせればよい。画像の拡大、縮小の率、更には回転角度が未知であるような場合には、問い合わせＢパターンのようにマッチさせる座標の範囲を広げておけば、パターンマッチの回数を極限まで削減させることが出来る。まずは確認すべき座標の範囲を広げておき、対象となるパターンが存在する可能性があるかどうかを掴むことが重要である。パターン存在の可能性がなければその段階で切り上げればよい。もし絞込みが不十分であり多数のパターン１が存在する場合は、更に新しい画素をサンプルに追加し絞り込して目的のパターン１を探せばよい。
【０２７１】  以上のような情報絞込み機能を備えたメモリ５１（３０３）の原理と、その応用例で分かるように、この処理は全くＣＰＵなどの情報処理手段を使わなくても極めて高速で指定したパターン１の検出をハードウエアのみで実現できるところが大きなポイントである。
【０２７２】  通常のＣＰＵとメモリによるパターンマッチ１７とハードウエアパターンマッチのスピードの比較は背景技術に示した通りであり、７条件（画像の場合７画素）のパターンマッチが３４ｎＳで実現された事に相当する。画像に適した機能とアドレスサイズのデバイスの１条件当りのパターンマッチ時間が仮に１μs程度であっても画像認識、物体認識技術は大きく進化する、詳細は後述する。
【０２７３】  図３８は、画像の領域・輪郭の例の説明である。
【０２７４】  図に示す画像５上の物体８は画像上、領域（エリア）９ならびに輪郭（エッジ）１０でいずれも色２情報や輝度３情報を基に抽出され画像処理の基本となる情報である。
【０２７５】  これらの領域（エリア）９ならびに輪郭（エッジ）１０はアナログ情報処理が可能でありこれを高速デジタル変換し情報提供が可能であるが、実際のこのデータから、画像の特徴をＣＰＵが見つける場合は、どこにどのような情報つまり輪郭や領域情報があるのか分からずに手あたり次第探索をせざるを得ない、従って極めて負担の多い情報処理となり、一般的にはこれを避けるために様々なソフトウエア情報処理或アルゴリズムが考えられている。
【０２７６】  しかしながらどのようなソフトウエア情報処理或アルゴリズムであるにしろ本質的な問題解決とはならず、ＣＰＵによる大量な逐次情報処理は避けて通れない。この発明のメモリは、このような問題点を解決するものである。
【０２７７】  以降以上のような画像の領域・輪郭を効率的にパターンマッチする方法を説明する。（実施例１−１）  本発明の特徴を利用した物体の認識の例を説明する  図３９は画像の排他パターンマッチの説明図であり、対象となる画像情報５、の画素６の中から物体８の領域（エリア）と輪郭（エッジ）を効率的に検出する例を示している。
【０２７８】  特定の色２や輝度３の領域（エリア）９を持った物体８を探す場合、その物体の背景パターンは無限に存在するために様々な色２や輝度３のデータ５４によるパターンマッチ１７を必要回数繰り返しする必要がある。
【０２７９】  このような場合に有効なのが排他パターンマッチ５９（第３の入力として排他集合演算を行う）である。
【０２８０】  本例では画像中にボールのような球状の白い（Ｗ）物体８が３個所ある画像の場合の例であり、横幅６ピクセルの白いボール８の一定の領域（エリア）９を指定するための４つの白い範囲（Ｗ）データ５４とこれに外接する４つの白以外データ（Ｗ(━)）データ５４つまり白の排他データ５８により、この（Ｗ）、（Ｗ(━)）の境目で４個所のボールの輪郭（エッジ）１０を検出できる。つまり特定の大きさの白の物体８、本例では横幅が６画素のエリアを持った白い物体（ボール）のみが検出される。
【０２８１】  白（Ｗ）の横幅は５ピクセルでも７ピクセルでも除外されることになるので、極めて正確な物体大きさの検出が可能になる。
【０２８２】  本例では完全に隣接した画素６同士で排他パターンマッチ５９を行ったが、（Ｗ）、（Ｗ(━)）の範囲を一定範囲あけることにより、多少大きさが変化した白い物体８も容易に検出できる。この場合、ボールエリア以外の背景の画素６が白以外の何の色であっても排他データ（Ｗ(━)）を使えるので、本例のように８か所程度の画素６をパターンマッチすれば極めて単純に横幅６画素の白のボールを探し出すことが出来る。この様な（Ｗ(━)）の排他データ５８は、情報絞り込み検出機能を備えたメモリ５１（３０３）の場合、その連想メモリ（ＣＡＭ）機能の（Ｗ）出力を一旦否定（インバート）し、このインバート結果（Ｗ(━)）をＣＡＭ出力として書き換えする（ＣＡＭ出力を反転する）ことにより極めて単純な原理で利用できるので、探し出す対象物の背景の画像が不特定で無限の可能性がある場合に極めて効率的である。
【０２８３】  本例では白一色の排他パターンマッチ５９の場合であるが、その他の色を組み合わせることにより複雑な画像を極めて少数のパターンマッチで検出することが可能になる。
【０２８４】  物体の形状を精度よく求める場合には、パターンマッチのポイントの数量とその位置を適切に選べばよい。移動する物体を認識し、追従する際に不可欠のパターンマッチが可能になる。動画中のある物体が１フレーム毎に少しずつ大きさや形状が変化する場合には１フレーム毎に物体の形状を更新して次の１フレームの物体とマッチングを取ればよい。この様な移動物体の追従は映像装置やセキュリテー装置に不可欠の技術である。
【０２８５】  この技術は手書き文字認識や指紋、更に一次元情報などのパターンマッチに広く利用できる。本方式のパターンマッチは強力である、これまで大がかりになりがちな画像処理を極めて単純処理することが可能になる。（実施例１−２）  図４０は、近傍４画素パターンによるエッジコード符号化の説明図である。通常の画像情報は輝度や色を表現（表示）する目的として、獲得され記憶されている。
【０２８６】  画像処理も与えられた輝度や色情報をもとになされるが、新たに、新しい考え方の情報を利用することより極めて高速で効果的な画像処理が実現する。本コードはその目的で考えられたコードで、画像内の任意の１画素の近傍４画素と違いをコード化したものである。
【０２８７】  一例として図に示すように、全ての画素の輝度もしくは色データを２値化して、本例の場合、近傍の上（Ｕ）、下（Ｄ）、右（Ｒ）、左（Ｌ）の画素と比較し、一致するか否かを判断してその結果を「０」から「Ｆ」までの１６種の符号にコード化したエッジコード１２である。１画素が近傍の４つの画素とすべて異なる状態の画素から、近傍の４つの画素とすべて同じである、領域（エリア）内画素まで１６種類で、このコードの意味する所は上（Ｕ）、下（Ｄ）、右（Ｒ）、左（Ｌ）のいずれの輪郭（エッジ）が存在するかを示している。
【０２８８】  図に示すように、近傍４画素は必ずしも隣接画素とする必要もなく、近傍の適切な画素との比較とすることにより、画像のノイズを軽減することも可能になる。いずれにしても画像全領域の画素のこのコードを持たせることが重要である。
【０２８９】  これまで仮にこの様なデータが存在したとしても、これらの情報を読みとり特定の情報を探し出すためには情報処理上大きな負担となったが、ＣＰＵとメモリによらない新しい情報処理デバイスの出現により大きな効果が生まれる、詳細は後述する。（実施例１−３）  図４１は、近傍８画素パターンによるエッジコード符号化の説明図である。先に説明の図４０では上下左右４画素の近傍画素をエッジコード化したものであったが本図は更に４つの、左上、右上、左下、右下のコーナの画素を含み８つの画素でエッジコード１２を符号化した例である。この場合には合計２５６通りのエッジパターンが存在しより細かなエッジを検出することが出来る。
【０２９０】  以下にこれらのエッジコードの１２の応用例を説明する。（実施例１−４）  図４２は、情報絞込み機能を備えたメモリを用いた画像パターンマッチの情報配列の説明図である。
【０２９１】  情報絞込み機能を備えたメモリ５１（３０３）そのもの詳細説明は割愛するが連想メモリ（ＣＡＭ）のデータマッチ機能に加えアドレスのシフトなどアドレスの置き換え機能（スワップ機能）で、外部から指定されたデータと相対アドレスの双方を並列演算してその条件にマッチしたアドレス７をマッチアドレス５７として出力する情報処理機能を備えた情報検出デバイスである。
【０２９２】  これまで説明の画素６の情報、ここではＲ、Ｇ、Ｂ３色の色２情報と、Ｒ、Ｇ，Ｂのエッジコード１２の合計６つの種類の画素６情報を情報絞込み検出機能を備えたメモリ５１（３０３）に情報配列した例である。これらの６種類の情報をそれぞれ個別の情報絞込み機能を備えたメモリ５１（３０３）に記憶させる方法でもよいが、本例では情報絞込み機能を備えたメモリ５１（３０３）の機能を最大に発揮させるための方法例である。
【０２９３】  本例では情報絞込み機能を備えたメモリ５１（３０３）全体を６つのバンクに分割して、６種の情報をそれぞれのアドレスバンク５２に記憶させた場合である。６種類の情報は１アドレス７からＮアドレス７まで画素の順番で同一配列で記憶すればよい。
【０２９４】  このような構成にする事により、いずれのバンク内の同一アドレスが同一画素となり、色２の情報と、領域（エリア）９、輪郭（エッジ）１０の情報を使い分けして情報を絞り込んで行く、つまり効率的なパターンマッチ１７をすることが出来る。
【０２９５】  バンク指定５３はどの種類の情報を対象にするかの選択である、データ指定５５は記憶されたデータ５４値の一致アドレス７を検出するものである。相対アドレス指定５６は画素間の相対アドレス（相対位置）を検出するものであり、マッチアドレス５７は以上の条件にマッチする絞込みされたアドレス７（画素６）である。
【０２９６】  この絞り込みの効果は絶大である、データとその位置がマッチする確率は極めて少ないからである。データ値と、相対アドレスを１対ずつ指定することも、複数の画素のデータ値と、相対アドレスをまとめて一括指定することも自由である。またデータ値を範囲で指定することも、相対アドレスを範囲で指定することも可能である。もちろん単純に連想メモリ（ＣＡＭ）機能によりデータ値のみのマッチも可能である。
【０２９７】  以上のような配列で画素情報を情報絞込み機能を備えたメモリ５１（３０３）に配列することにより極めて効率の良い画像処理が可能となる。（実施例１−５）  図４３は、物体のエッジコードの応用例の説明図である。
【０２９８】  色２情報、ならびにエッジコード１２から、物体の大きさを効果的に実施する方法を示している。図に示すように、２つの物体の色２の情報とのエッジコード１２は図示するように記憶配列されている。
【０２９９】  ここで物体の大きさの概要は以下の極めて効果的な処理により実現ででる。
【０３００】  まず、当該情報が記憶されているバンクを指定し、Ｆのコードを出力させる、その際、アドレス値の最も若い（少ない）領域最少アドレス、とその反対の領域最大アドレスは物体の高さを示しており、その範囲に必ず領域最右アドレス並びに領域最左アドレスが存在する。物体の高さ、並びに幅が限定されればその詳細を調べるのは容易である、このコードで当該物体のすべての輪郭を求めるのにコード「Ｆ」を除く「０」から「Ｅ」までのコードの１５回のマッチングで、凹凸や平面を含む領域周辺の輪郭をすべて識別することが出来る。
【０３０１】  更に、色情報と組み合わせすることにより、複雑で高度な画像物体の形状認識が可能になる。
【０３０２】  一例であるが丸いエッジ、四角のエッジ、鋭いエッジなど物体の形状１６を効果的に表す情報となる。これらの情報をパターンとして採取もしくは作成し、作成されたパターンでパターンマッチをかけることにより物体の形状認識が極めて効率的に実現できる、詳細は後述する。
【０３０３】  これまでのＣＰＵとメモリによる画像処理に比べ比較にならないほど少ない情報処理回数でしかも効率的に画像物体の形状認識が行われていることが分かる。
【０３０４】  ただしこの方法での物体の大きさは奥行きがある場合、実寸とはならないことに留意する必要がある、奥行きのある物体の実寸の計測については後述する。（実施例１−６）  図４４は、局部パターンマッチによる無作為および作為パターンマッチの説明図である。パターンマッチ技術を使って画像上の物体を論理的に効率よく見つけ出す手法を説明する。
【０３０５】  本例は、画像上の空間をいくつかの部分、もしくは局部に分割し、その部分の色とその形の情報のパターンを採取する場合の説明である。
【０３０６】  いうまでもなく我々人間が物体を認識する上での大きな比重は色の情報である。また多くの物体は画像上幾つかの色の領域の組み合わせで成り立っている。従って局部的なパターンか部分的なパターンを構成し、さらに部分的なパターンが全体パターン（画像全体）を構成している。従って局部的なパターンもしくは部分的なパターンを適宜組合せしてパターンマッチ１７をすれば物体の認識が可能になる。
【０３０７】  図示するように、本例ではＸ軸６、Ｙ軸６、合計３６個所の部分もしくは局部からそれぞれ５画素を無作為に問い合わせパターンとして採取している。さらに図では以上の３６の局部パターンの中の２つの局部パターンの詳細を示している。
【０３０８】  一つは無作為に採取された物体が、赤（Ｒ）の色情報を持つ十字パターンの物体であり、もう一つは青（Ｂ）の色情報をもつ円形の一部が欠如したパターンの物体である。図に示すように採取された５つのサンプル画素の特徴に応じて今度は作為的（意図をもって）にパターンマッチをかけて詳細を求めればよい。
【０３０９】  このような無作為に採取されたパターン１を用いたパターンマッチ１７の応用は無限に存在する。
【０３１０】  その一つはデジタルカメラの手ぶれの検出に有効である。シャッターを押した瞬間の画像とシャッターが切れる直前の画像の各部分を部分、または局部的にパターンマッチすることにより、画面全体が移動したのか（手振れ）画像の一部が移動したのか（対象物の移動）、その双方の組み合わせなどが極めて簡単に検出できる。
【０３１１】  以上説明の無作為に採取されたパターン１によるパターンマッチ１７の結果を基に、さらに局部ごとの作為的な詳細パターンマッチ１７は通常の物体検出の基礎になるものである。
【０３１２】  しかしながら眼に映るすべての物体を認識する場合には局部マッチングの繰り返しとなり、一つ一つのパターンマッチがいかに高速でもその数が大きければ処理時間は大きくなる。
【０３１３】  人間は瞬時に様々な物体を同時に認識できると誤解されがちであるが、我々の日常活動での認識処理は常にこのような広範囲で詳細な認識はしていない。つまり目に映るすべての物体を隈なく認識するのでなく、それぞれの瞬間に必要なものを必要な程度認識している。このことはコンピュータによる画像認識を人間の眼と脳の認識に当てはめる上で特に重要であり以下にその趣旨を記載する。
【０３１４】  我々が集中して物体を認識する例が車の運転時である。
【０３１５】  如何に安全運転に注意して運転しているときでも目に入る風景の一つ一つを物体認識しているのではなく、必要とする情報と刺激を受ける物体が認識の対象になり、一瞬一瞬で認識できる物体はせいぜい３から４種類程度の物体である。
【０３１６】  以上を証明するには、多くの物体が映っている写真を一瞬の間だけ見た場合に認識できる物体の数を調べればよい。人による個人差もあるが、一秒間だけ写真を見て認識できるものは数物体程度である。また眼に映っているものの中に認識したい物体があれば無意識の内に、視線をそのものに向けている、視線を注がれた以外のものは景色として見えているだけで認識の対象外である。つまり一秒間に３つから４つの物体認識でもその積み重ねが記憶され、全体的な物体認識情報となり我々人間の高度な認識がなされている事実である。
【０３１７】  以上の説明のように、最初は刺激の多いもの、たとえば目立つもの、興味をもっているものを認識し、後は時間をかけて順次写真全体を眺め、あるいは凝視し、順次物体を認識していることが良くわかる。
【０３１８】  認識の程度も様々である、一例であるが写真の中の車両を認識のレベルは、その色、形、メーカー、型名、更にはナンバープレートまで認識のレベルは様々であるが、通常の運転ではこのような細部の認識は不要で単に車と判断出来ればそれでよい。
【０３１９】  以上の説明で分かるようにコンピュータによる人間に近い画像認識の、認識の程度は意思を持って（作為的）に局部または部分的なパターンマッチをどこまで繰り返すかであることが分かる。
【０３２０】  無作為のパターンマッチは運転席から眺めた全体風景、景色のようなもの、さらに必要があり意思を持った作為的なパターンマッチは前車のナンバープレートを認識するような人間の認識に例えられる。
【０３２１】  つまりコンピュータによる人間の眼と脳による物体認識は、無作為（無意識）なパターンマッチと、画素情報とその位置を適宜組み合わせして問い合わせパターンとして構成する場合の作為的（意図的）なパターンマッチを組み合わせして、その時点で必要な物体を必要な精度で認識出来ればよいことになる。
【０３２２】  対象となる画像は必ずしも大画面で高精細度の画像でなくても人間の眼球同様に重点的に認識したいものに焦点を当て必要に応じ拡大してパターンマッチをかければよい。
【０３２３】  個別の情報を探しまわる画像認識に比較して、複数の画素の配列で構成されるパターンによるハードウエアパターンマッチは絞り込み効果が極めて高いので究極的な画像認識手段である。
【０３２４】  最初の段階では絞り込み条件を、２から３に条件に緩くしてパターンマッチさせ、パターンの有無の存在が確認出来たら５条件や１０条件など詳細なパターンマッチを掛けるなどパターンマッチの使い方は自由である。
【０３２５】  １条件のパターンマッチが仮に１μsの場合でも、１秒間に実現できるパターンマッチ回数は１００万回であり、この事は理論上、画面上１０００箇所を個別に１０００回パターンマッチさせる事が可能であることを意味している。
【０３２６】  さらに必要に応じてこのデバイスを並列に使用し、適切なパターンマッチと知識処理を実行すれば、一秒間の間に認識できる物体の数を人間並みそれ以上に進化させる事も可能になる。
【０３２７】  一言で言えば使い方次第である。
【０３２８】  車の安全運転のみを考えた場合、運転席から眼に入る建物、ビル、樹木、道路や車両そのすべてを個別に認識する必要はなく、建物、ビル、樹木などは固定物として一括して認識しても問題ない、また遠景の物体は無視してもかまわない。
【０３２９】  更に高速道路での運転であれば道路上の物体を中心に認識すればよい。
【０３３０】  後は如何に必要とする情報を高速で効率的に検出できるかであり、その代表的な例が、交通信号や交通標識である。
【０３３１】  これらは刺激色（ハイライト色）、刺激色の組み合わせとして画像からその部分を検出し易い。
【０３３２】  以上は色を特徴とした作為的なパターンマッチングで実現できる。
【０３３３】  さらに距離の近いもの、大きいものが認識すべき重要なものである、この件に関しては後述する。
【０３３４】  安全運転をする上で不可欠な歩行者の飛び出しや前車の異常などは画像の動きとして容易にその部分を検出できる。
【０３３５】  以下にその例を説明する。    図４５は、物体の変化画像検出の説明図である。
【０３３６】  画像の動きは本図に示すように、時間Ｔ０と時間Ｔ１の二つの画像の差分を取ることにより動いていない画素を削除し、動いた、移動した画像部分を効果的に検出することが出来る。この変化画像１１部分をパターンとすることにより、動画像上の物体の動きや、カメラのアングルの動きをキャッチして様々な応用が可能になる。特定対象物をパターンとして捉え、何時もこのパターンが画面の中心になるようにするなどの自動カメラアングル追従など極めて簡単である。
【０３３７】  以上のように検出された画像部分を対象パターンとすることが出来るので、先に示した全範囲の無作為パターンマッチングのみに頼らず、動きのある部分のみのパターンマッチングをすることが出来る。本方式の差分画像検出は、標準画像との比較による位置ずれ検出や製品の欠陥検出など様々な利用方法がある。
【０３３８】  （実施例１−７）  図４６は、局部パターンマッチによる物体の対応点検出の説明図である。本図では空間中に赤（Ｒ）、Ｂ（青）、黄（Ｙ）、緑（Ｇ）の４色の風船のような物体８が浮かんでいる画像を左右のカメラの画像としてとらえたものである。両眼カメラで捉えた物体の画像と実際の物体はエピポーラ平面で構成されるので、両眼カメラの距離が分かれば三角測量により物体の奥行きを含むＸＹＺ軸の位置が計測可能である。
【０３３９】  図では物体はＹ軸（高さ）が省略され、Ｘ軸、Ｚ軸２軸で表現されており、一方左画像１４、ならびに右画像１５は、Ｚ軸が省略されＸ、Ｙの２軸が表現されている。左右いずれかを基準として、基準からサンプルパターンを採取し、もう一方の画像に問い合わせして一致したところが互いに対応点２１である。
【０３４０】  説明上図では、単色でのパターンマッチ１７で説明しているが、通常は単色以外の色の組み合わせで局部マッチすればよい。物体の画像の多くの部分は左右双方の画像（パターン）と同様または類似した画像（パターン）として存在するはずである、また画像処理上課題になる照明の問題や撮影環境も同一であることから対応点２１の対応付けがし易い。左右画像の対応点２１が検出出来れば、その対応点２１の画素位置から物体の奥行１８方向を含む３軸の計測可能である。
【０３４１】  以上の手法によりその画像物体の実際の寸法を極めて高速で計測できることになり、画像処理上その効果は計り知れない恩恵を生み出す。（実施例１−８）  図４７は、エッジコードによる物体認識の説明図である。
【０３４２】  以上の図４６で示されたパターンマッチ１７原理の実例である、先ほどのエッジコード１２がそれぞれ左画像１４、右画像１５で記憶されている場合、左右のエッジコード１２でパターンマッチ１７を掛けると、その対応点２１パターンはその物体固有のパターンとなり画面空間上、他に存在する確率は極めて少ない。
【０３４３】  従って左右いずれかのエッジパターンを採取して問い合わせパターンとして、左右の対応点２１をパターンマッチで探し出せばよい。
【０３４４】  例えば左右別々のエッジが一つの物体であるか否かの判定も極めて高速に認識出来、その奥行き（Ｚ軸）距離が求められるとともにその物体のＸ、Ｙ、Ｚ３軸の物体寸法１３を導きだす事が出来る。（実施例１−９）  図４８は、立体計測を利用した人物認識の例である。
【０３４５】  単眼カメラ画像の局部パターンマッチ１７でも顔認識技術のレベルは格段に進歩できるが、以下に立体計測を利用した人物認識の例を説明する。ここで説明の人物認識は画像範囲の中から人物の特徴を認識して個人名を特定することを意味している。
【０３４６】  これまでカメラセンサやズーム機能等の性能が上がり高精細度の画像が得られても画像処理技術が進化出来ないため人物認識は極めて困難な技術のままである。
【０３４７】  本発明を利用したパターンマッチにより人物認識は大きく前進する。    本例では図に示すように画像に表示される顔の眼や鼻、ホクロ、キズなどの特徴をパターンとして捉え両眼視差による対応点をパターンマッチ１７させ、その結果から得られた、Ｘ、Ｙ、Ｚの３軸の実寸法つまり眼の大きさ、鼻の高さなどを計測した例である。
【０３４８】  これらの計測結果はその人固有の大きな特徴である。    言うまでもなく、このような特徴は眼や、鼻、ホクロ、キズなどの顔にかかわらず、口、眉、髭、手、足など人物として固有の特徴が得られるものであれ人体のどの部分でも構わない。色によらない形状や寸法による認識が出来れば人種を越えた人物認識が可能になる。これらの人物を識別するに相応しい特徴をサンプリンし計測できる解像度の立体計測カメラシステムを用いればよい。
【０３４９】  高速なパターンマッチ１７が実現でき、かつＺ軸の情報が利用できるようになればこれまでの顔認識は人物認識に大きく前進する。従来の顔認識技術を組み合わせると、極めて高速で高精度な人物認識技術が完成する。
【０３５０】  図４９は、空間内の物体認識の説明図である。  以上のような物体の寸法やその距離が容易に求められる事は物体の実寸が分かる事になり、図に示した、３つの物体の大きさから、トラックのような大きさの物体、顔のような大きさの物体、リンゴのような大きさの物体と、物体の範囲を限定することが可能になり、後は色の情報や詳細な情報を基にクラス分けして物体を認識することが可能になる。
【０３５１】  赤く、丸い物体で、寸法が１３センチメートルであればリンゴの可能性が極めて高い。このように物体の実寸が分かる事により物体の認識率は極めて向上できる。
【０３５２】  さらに安全運転をする上で不可欠なのが、前方方向の物体の大きさとその距離である。これらの奥行き情報を画素毎に画像情報として持つことによって、例えば前方５０ｍ以内の画像のみを認識させるなど効果的な画像検出が実現できる。
【０３５３】  これらの物体の大きさと距離を正しく認識できることにより人間に近い車の運転をコンピュータで実現できるようになる。
【０３５４】  以上の方法の多くはＣＰＵとメモリによる通常のパターンマッチ１７で実施可能である、ただしリアルタイム処理等は実現困難である。このような物体の実寸計測は言うまでもなく、高速で効果的なパターンマッチ１７の手段が確立されたからに他ならない。
【０３５５】  これまでの物体認識技術は特別なハードウエアやソフトウエアの上に成り立っていたがこの情報絞り込み検出機能を備えたメモリ５１（３０３）で実現することにより画像認識技術が汎用化されることを意味する。
【０３５６】  本発明の目的とは異なるが、参考のため以上のような空間認識に基づく知識処理を更に効果的に実現する方法を説明する。
【０３５７】  一例であるが車両の安全運転に的を絞った物体認識であれば地図情報が極めて効果的にこの認識技術をサポートする。市街の交差点付近での安全確保や高速道路での安全確保のための物体認識はおのずからその内容は大きく異なる。これらの地図情報や車両の走行条件等を入力条件とすることにより画像として認識すべき物体の範囲を絞り込む事、すなわち知識処理の組合せ数を効果的に軽減出来る。
【０３５８】  いまや多くの携帯端末にＧＰＳが内蔵されているので、この情報を利用すれば日常のあらゆる環境に適用することが出来る。
【０３５９】  さらに人の言葉を認識しこの言葉で認識すべき物体を絞り込みすることが出来る。
【０３６０】  これまでの説明の繰り返しであるが、人間が認識できる物体の数は極めて多いが、一遍に認識できる物体の数は限定される、認識すべき必要のある物体を絞り込みして、最優先で認識すべきもの、その次のものと、手順を定め順次実行することにより人間の眼と脳に近い画像による物体認識が完成される。（実施例１−１１）  図５０は、パターンマッチによる物体認識の概念説明図であり、これまでの説明をまとめたものである。
【０３６１】  物体認識は画像処理と知識処理の双方が合体され成り立っている。    知識処理は物体の様々な特徴が様々なカテゴリーでクラス分けされて登録されており、画像処理から与えられた特徴を基に、データベースに登録された物体を知識処理で探し出す。また反対に知識処理で特徴を指定し画像処理でその特徴に合う特徴があるか否かを探し出すことも同様に行われる。
【０３６２】  一方画像処理は、この発明の趣旨である特徴を探し出す処理と、その他の処理に分割される。
【０３６３】  その他の処理の代表的な処理が演算処理や表示処理でありこれらの処理は従来通りＣＰＵを中心とした情報処理で行う、この部分はサーチの無駄時間が全くなくＣＰＵの機能を１００％無駄なく利用できる。演算処理はこの発明のパターンマッチにより大幅に軽減されるのでＣＰＵによるこの部分の負担も極めて少なくなる。
【０３６４】  本発明の目的である特徴を探し出す処理は、色や輝度、エッジやエリア、更には奥行きなどの基本情報を基にパターンマッチで行い、得られる物体の特徴は、形状、寸法、動き、対応点、奥行き、空間など極めて広範囲で重要な特徴で、物体の特徴データベースからの物体の特定を効果的に実現することが出来る。言うまでもなく特徴を探し出す処理にかかる時間は情報絞り込み機能を備えたメモリ５１（３０３）を利用することによって、サーチによる無駄時間を抜本的に解消することが出来るが、従来手法によるＣＰＵとメモリによる逐次処理によっても実現可能である。
【０３６５】  本発明では、画像処理の高速化並びに高精度化を中心にした物体の認識を中心にしているが、知識処理におけるデータベースの中から与えられた特徴に最も類似している物体を探し出す処理はパターンマッチそのものであり、画像処理のパターンマッチと、知識処理のパターンマッチ双方にこの技術が利用可能である。
【０３６６】  知識の獲得とその格納方法については本発明とは別にする。    本発明の請求項の内容を本明細書の内容に照らし合わせてその要点記述する。画像のパターンマッチに関する特許は数多く出願されているが、メモリ上の画像情報のデータ配列そのものに着目し、極めて単純に画素の画像情報データ値と、その画素のデータ位置と、の２つを基にパターンマッチさせる例はない。
【０３６７】  従ってこの例に記載されたメモリは、  画像のＸＹ配列の大きさが定義された画像において（１）画像を構成する、画素の画像情報データ値と、その画素のデータ位置と、の双方を適宜組合せして構成される画像問い合わせパターンを作成するステップは、情報絞り込み機能を備えたメモリ５１（３０３）上に配列された画像の中から特定のパターンを見つけ出す際の一例として無作為もしくは作為的な問い合わせパターンの作成方法で示した内容である。（パターンマッチングしたデータを検索する行程）更に（２）画像検出の対象となる画像に上記画像問い合わせパターンを問合せする事によりこの画像問い合わせパターンにパターンマッチ１７する画素を上記対象となる画像の中から検出するステップは、対象となるメモリ画像にサンプリングされたパターンを問い合わせして、パターンマッチしたアドレス（画素）を検出することである。（パターンマッチングしたアドレスを検索する行程）  以上（１）（２）のステップにより画像処理することを特徴とする画像認識方法（様々なパタンーンマッチの組合せ）が本発明の画像認識の特徴である。（音声パターンマッチングの例）  以下、音声パターンマッチングの例を、図５１〜図５７を参照して説明する。なお、以下の説明では、優先権主張の基礎出願との対応関係が分かりやすいように参照符号をそのままにして説明していることに留意されたい。
【０３６８】  情報絞込み機能を備えたメモリ５０（３０３）そのもの詳細説明は割愛するが、上述したように、連想メモリ（ＣＡＭ）のデータ５２のマッチ１９機能に加えアドレス５１のシフトなどアドレス５１の置き換え機能で、外部から指定されたデータ５２と相対アドレス５４の双方を並列演算してその条件で絞込みしたアドレス５１を、パターンマッチ９したマッチアドレス５６として出力する情報処理機能を備えた情報検出デバイスである。
【０３６９】  音声認識技術はパタ―ンマッチ９技術の塊であり、このデバイスは音声認識に最適である。最近の言語学の研究では、最大の音素をもつ言語はアフリカ系の言語で２００、英語４６、日本語２０、一番少ないのはハワイ語で１３との研究事例が報告されている。研究者によってその数は異なるものの以上のような世界中の言語の音素を包含して、最大２５６程度の音素を高精度で認識出来れば音声認識は飛躍的に進化できる。
【０３７０】  図５１は、音素の振幅波形の参考例である。
【０３７１】  本図は我々の言葉のある一瞬の音素５の振幅３波形の例であり、図に示すように、音素５は音声１信号として様々な周波数２が含まれた信号である。日本語の場合、母音、子音、半母音など２０程度の音素の組み合わせでアイウエオの５０音並びに擬音を発音することが出来る。
【０３７２】  図５２は、音素の周波数スペクトラム波形の参考例Ａである。    本図はある音素の周波数２毎の強度（パワー）４をスペクトラム１６計測したものであり、周波数２毎のその強度（パワー）４を配列番号１５として配列８したものである。
【０３７３】  本例では低周波成分から高周波成分まで５０の配列８で、配列番号１５毎にその強度（パワー）４が示されている。本図の音声１、音素５は低音域と高音域に大きな強度（パワー）４を持った音素パターン１７である。
【０３７４】  図５３は、音素の周波数スペクトラム波形の参考例Ｂである。    一方、本図の音素パターン１７は高音域に大きな強度（パワ―）４を持った音素パターン１７である。図５２、図５３で示した通り、音素５をスペクトラム１６波形は音素のパターン１７を意味しているので、このパターンを正しくパターンマッチさせ読みとることが出来れば、確実な音素５認識が可能になる。
【０３７５】  近年の音声認識技術では、音素スペクトラムパターンそのものを取り使うのではなく音声発声の声道の形状に注目して、音声スペクトラムを対数変換し、逆フーリエ変換したケプストラム系列を用いる場合も多いが、この場合で同様で各音素毎の周波数毎のデータをパターンとして解釈すれば全く同様である。
【０３７６】  音素の認識をする上でで、重要なことは、同一音素５でも、個人差がある、その象徴的な例でとして男性と女性では低音域と高音域など微妙な差がある。従ってこのような個人差を許容するためには、多くの人の声を収集して、音素５の周波数２の配列８毎に音素の強度（パワー）４のデータ５２の最大値１０、最小値１１を統計的な手法で範囲１８をもとめ、これを範囲１８をもったパターンマッチ９、つまりあいまいパターンマッチ１３が可能なようにするとよい。
【０３７７】  この様なあいまいパターンマッチ１３を行う場合、データの分解能を高くしても全く意味がない、通常１０レベル、最大でも２０レベル程度の分解能があれば十分である。１６レベルであれば、４ｂｉｔで符号化可能である。この様な範囲検索を行う場合の方法として、データベース側に範囲１８を設ける場合と、問い合わせするデータに範囲１８を設ける２つの方法が考えられる。
【０３７８】  図５４は、音素判別のための範囲データの例である。    本例では、先に説明した、問い合わせするデータに範囲１８を設ける場合の例であり、強度（パワー）４のレベルを１６レベルとして、与えられたデータ５２に最大値１０、最小値１１の範囲１８を持ってパターンマッチ９をかける、あいまいパターンマッチ１３の例を示している。
【０３７９】  本例では与えられたデータに一律±２の範囲１８を与え、それぞれ５つのデータ範囲を与えた場合のデータ５２を示している。与えられたデータが下限値、上限値およびその周辺であればその範囲は減少する。以上のような考えに基づき強度（パワー）４のあいまいパターンマッチ１３をすればよい。
【０３８０】  図５５は、情報絞込み機能を備えたメモリによる音素認識の例である。    図５４で説明の配列８を、情報絞込み機能を備えたメモリ５０（３０３）に配列８記憶させたものである。
【０３８１】  図に示すように、本例では１つの音素５パターンを５０の配列８として、情報絞込み機能を備えたメモリ５０（３０３）の絶対アドレス５１に、配列割り付けされ、データ５２に強度（パワー）４データが記憶登録されている。
【０３８２】  最大２５６種の音素を１音素当たり５０の配列４パターンとする場合、そのアドレス空間は１２Ｋアドレス程度である。
【０３８３】  以上の極めて小さなデータベースで世界中の言語の音素の認識が可能になる。
【０３８４】  発音され、スペクトラム変換された音素スペクトラム１６は問い合わせ音素１４として、情報絞込み機能を備えたメモリ５０（３０３）に条件入力される。
【０３８５】  この音素５データは配列番号１５毎に強度（パワー）４のデータ５２が配列されたものであり、この配列番号は、絶対アドレス５１の相対アドレス５４を指定する相対アドレス指定５５である。
【０３８６】  この相対アドレス指定５５と、データ５２を指定するデータ指定５３の双方の指定データにより、情報絞込み機能を備えたメモリ５０（３０３）の内部で絞込みが行われ、その絞り込まれた結果がマッチしたアドレス５６として出力される。
【０３８７】  このアドレスは音素５を指定するものであり、音素５そのものをパターンマッチ９させて認識させたものである。
【０３８８】  次にデータの範囲１８を含んだあいまいさを含んだパターンマッチ１３を説明する。
【０３８９】  この様な範囲１８を持ったパターンマッチ９に当たっては範囲検出機能を持った情報絞込み機能を備えたメモリ５０（３０３）をハード的に創ることも可能であるが、図５４で説明の最大、最小の範囲をもったあいまいパターンマッチの場合、完全一致型のデバイス５０でも、単純に与えられたデータ値に範囲１８、最大値１０、最小値１１まで本例では５回の連想メモリ（ＣＡＭ）機能のデータ５２のマッチ１９を範囲回数分、本例では５回繰り返し、都度マッチしたアドレスの論理和（ＯＲ）を取ることにより容易に範囲マッチングが可能になる。
【０３９０】  以上の５回の繰り返しマッチングは並列処理であり極めて高速で処理可能であり、１配列５回ずつの配列を５０まで順次パターンマッチ９をかけて行けばあいまいパターンマッチ１３実現できる。
【０３９１】  このパターンマッチは並列演算であるので極めて高速でしかも正確である。本例では５０配列全体のパターンマッチ９を紹介しているが、統計確率上以上のようなすべての配列８に対してパターンマッチ９、１３を実施することもなく必要数たとえば半数程度をパターンマッチ９，１３することでも十分である。
【０３９２】  たとえば車両の中の発音の中には車両特有のエンジンの回転音やエアコンの音など固有周波数のノイズが含まれる、このような場合、その時々の外来ノイズのその固有周波数の配列８のデータ５２のパターンマッチ９、１３を除外することにより信頼性の高い音素認識が可能になる。
【０３９３】  このような動的なパターンマッチが出来るのも高速なハードウエアパターンマッチが実現できるお蔭である。
【０３９４】  音素５を認識する際、とかく問題になる、音素の区間の問題も高速なパターンマッチの有効性を活かし、常に一定の時間、例えば１０ミリセカンドずつでパターンマッチ繰り返し実行し、一定時間の範囲の音素のパターンの平均値をとる、フィルターをかけるなどすることにより、極めて合理的なパターンマッチが可能になる。
【０３９５】  さらに以下に説明する語彙のパターンマッチと組み合わせすることにより総合的な認識率が向上する。
【０３９６】  図５６は、語彙パターンマッチの例である。    以上により検出された音素の組み合わせさえたものが単語、語彙である、音素の配列で定まる語彙６のマッチングにもこのパターンマッチ方法が応用できる。
【０３９７】  一例として「音声」の発声は「o-n-s-e-i」のような音素の配列パターンであり、音素の配列は言葉としての最小限単位の語彙（単語）をなすものである。
【０３９８】  図に示すように、本例では一つの語彙を１６の音素５の配列８として、情報絞込み機能を備えたメモリ５０（３０３）に配列割り付けし、絶対アドレス５１に音素５をデータ５２として記憶登録したものである。
【０３９９】  問い合わせ語彙２０は配列番号１５に音素５がデータ５２として条件入力される。この問い合わせ語彙２０にパターンマッチ９する絶対アドレス５１を読むだけで語彙６が検出されたことになる。
【０４００】  本例の場合１６配列条件を一括でパターンマッチする構成である。    極めてシンプルで高速な語彙検出であり、複雑なアルゴリズムや他のデータテーブル等全く不要である。
【０４０１】  本方式はどの語彙から記憶配列させてもよくその順番は関係ない、語彙の追加や修正の度に通常実施する配列のし直しが不要であることも大きな特徴である。
【０４０２】  一般的水準の語彙５万語を本方式で登録する場合、５０Ｋ×１６配列＝８００Ｋアドレス空間あれば実現可能である。本例では１６配列の１例を示しているが、語彙の長さによって８配列や、１６配列、２４配列など複数のデバイスに分割すれば、無駄のないアドレスの利用が可能になる。
【０４０３】  現在多くの語彙マッチングでは通常３音素程配列程度の小さな音素配列を基に語彙データベースにパターンマッチをかけるのが一般的である、その原因は配列数を大きくすると語彙データベースを構成するテーブルやインデックスが組み合わせ的な爆発を引き起こし実現できないからである。
【０４０４】  複数の言語が存在する場合、別な記憶媒体に言語毎のデータベースを用意しておき都度この情報絞込み機能を備えたメモリ５０（３０３）にダウンロードすればよい。ここで語彙認識のあいまいパターンマッチ１３について説明する。
【０４０５】  先に示した、音素の列「o−n−s−e−i」は時系列上、「o」−「n」−「s」−「e」−「i」の順に出現するが、この情報絞込み機能を備えたメモリ５０（３０３）による、パターンマッチの特徴は、一部が欠落しても、その順序も無関係である。
【０４０６】  具体的に示せば先に説明の音素の列は情報配列上、相対番地Ｘ＋０「o」−相対番地Ｘ＋１「n」−相対番地Ｘ＋２「s」−相対番地Ｘ＋３「e」−相対番地Ｘ＋４「i」の配列である。しかもＸは絞込みのマチングの結果、本例の場合１から１６までの相対値として認識可能である。
【０４０７】  従って一部が欠落した相対番地Ｘ＋０「o」−相対番地Ｘ＋１「n」-相対番地Ｘ＋２「s」−相対番地Ｘ＋４「i」の配列でも、その配列の順序が相対番地Ｘ＋４「i」−相対番地Ｘ＋０「o」相対番地Ｘ＋１「n」-相対番地Ｘ＋２「s」の配列でも全く問い合わせに問題ないことが大きな特徴である、問い合わせはその音素の配列が指定出来ればよいことになる。
【０４０８】  つまり配列中の一部を任意のデータを指定する場合のワイルドカードや、音素配列を逆から絞り込む場合（逆引き）、中間から絞り込む場合（中引き）などの、パターンマッチが完璧に保障される。つまり不確実に認識された音素を除外してパターンマッチさせる場合や外部の騒音などで全体的に不確実な音素の場合でも、繰り返しパターンマッチして、可能性の高い語彙を探し出す場合にも極めて効果的である。
【０４０９】  情報絞込み機能を備えたメモリ５０（３０３）はアドレスのサイズや様々なオプションする機能により並列演算マッチング処理時間は大きく変動するが、以上のような語彙マッチングをさせるような構成のデバイスの例として１６配列１組のパターンマッチに要する時間を１マイクロセカンド以下とすることが可能である、速さは認識の精度に直結する。
【０４１０】  なお、この実施例は、上記で説明したマッチング回数を計測するためのカウンタを備えた情報絞り込み機能を備えたメモリ５０（３０３）を使うと、上記のようなあいまいな情報のパターンマッチがさらに効果的に実現できる。
【０４１１】  以上説明してきた通りこれまで説明の音素並びに語彙のパターンマッチはこれまでのどの技術によるパターンマッチに比較して、高速であり、正確であり、しかも簡単である。
【０４１２】  継続的に音声の一定期間の録音をとって置き、仮にこれらの音素や語彙にパターンマッチされない場合は、録音された音声をもとに繰り返しパターンマッチをかけるなどの余裕も十分にある。
【０４１３】  以上で検出された語彙を文法との確認をすることにより話し言葉としての本質的な音声認識が実現できる、文法上のマッチングもこのマッチング手法で実現可能であるが割愛する。（文字パターンマッチングの例）  以下、文字画像パターンマッチングの例を、図５７〜図６６を参照して説明する。なお、以下の説明では、優先権主張の基礎出願との対応関係が分かりやすいように参照符号をそのままにして説明していることに留意されたい。
【０４１４】  図５７は、画像パターンのおよび画像パターンマッチの説明である。
【０４１５】  パターン１の原義は織物の柄や印刷物の絵柄を現す言葉であると同時に、特定の事象や物体の特徴を現す場合に広く使用される言葉である。画像のパターン１の場合、これらの柄や絵柄は、細かい色や輝度が、様々な位置に、組み合わされて、配列されたものと定義して良い。温度パターン１や景気のパターン１などは一次元情報のパターン１の例であり、文字列やＤＮＡ配列、コンピュータウイルスもこのパターン１の一例である。
【０４１６】  静止画、動画、ＣＧを問わず、一般的な画像はメモリ上の画像情報５をもとに表示再生が行われるもので画像情報５と画像は表裏一体の関係があり本明細書では画像情報５を単に画像５と表現する。図ではトンボのような虫眼鏡で指定されたパターンを探し出す時の概念が示されており、図では省略されているが画像５上に記憶された全範囲の画像情報の中から特定のパターン１をトンボのような虫眼鏡で検出した状況である。
【０４１７】  図に示すように画像５によるパターン１は、Ａパターン１の、ＢＬ（黒）、Ｒ（赤）、Ｇ（緑）、Ｏ（オレンジ）、Ｂ（青）で示される色２情報や、Ｂパターン１の、５、３、７、８、２で示される輝度３情報が座標上に組み合わされたものである。このパターン１の色や輝度のデータとその座標４の位置が相対的に合致する事により画像パターンマッチ１７が成立する。
【０４１８】  以上の問い合わせパターン１は人の意志にもとづき、色や輝度とその位置を適宜組み合わせパターン１として構成する場合と、何らかの他の画像の中から特定の画素とその位置を抽出して問い合わせパターン１を構成する場合、その双方を組み合わせして問い合わせパターン１を構成する場合の３通りがある、その詳細は後述する。
【０４１９】  この時、問い合わせＢパターンのように色や輝度のデータ値に一定の幅を与え、さらに組み合わせの座標４の位置にも一定の範囲を与えることにより、完全一致の画像パターンマッチ１７から類似画像パターンマッチ１７にその手段を拡大することが出来る。
【０４２０】  以上は極めて単純な事であり、人間にとって極めて容易にパターンマッチ１７できる内容も現在のＣＰＵとメモリを中心にしてなされる情報処理では極めて負荷の掛る厄介な情報処理の一つである。
【０４２１】  図５８は、情報絞込みメモリを用いた画像パターンマッチの原理の説明である。    画像５はＸＹ軸２軸の情報として扱われる２次元情報の代表的な情報である。どのような画像５も画像５を構成する画素（ピクセル）６の数がＸＹ軸両軸決められており、その積算されたものが総画素数となる。原則的に画像５の基本となる輝度３情報や色２の三原色等の色２情報はこの画素６単位で獲得され記憶媒体に記憶される。
【０４２２】  コンピュータのメモリは、情報を記憶する場所、その記憶された情報の場所を指定するための絶対アドレス７が存在する。この絶対アドレス７は一次元、線形配列で通常０番地からＮ番地まで１６進値で指定される。
【０４２３】  図に示す通り２次元情報の画像５情報を画素６毎にメモリに記憶する場合、１ラインの画素６数（ｎ、２ｎ、３ｎ・・・）で折り返しを繰り返し、Ｎ番地までメモリのアドレス上に書き込みが行われている。一般的にアドレス等は０番地からｎ番地などの表記が一般的であるが図では説明を簡略化するために１画素からｎ画素の配列で図示している。
【０４２４】  またこの説明では便宜上、図の上方から順にアドレスを割り当てしているが、下方から順にアドレスを割り当てする場合、折り返しをＸ軸でなくＹ軸とする場合でもなんら問題ない。また画像５を構成する画素６は輝度３情報の場合１つの種類のデータをメモリに記憶するだけであるが、色２情報の場合、通常色の３原色Ｒ、Ｇ、Ｂをそれぞれ独立して記憶する必要があり通常は１画素６当たり３つの画素情報を記憶する必要がある。従って１画素６当り３アドレスで色２情報を記憶する場合、実際のメモリは画素６数の３倍のアドレス数が必要になる。いうまでもなく１ラインの画素６数（ｎ）が分かっていれば、画像５上のどの画素６のどの色２の情報がメモリ上のどの位置に記憶されているのか、その反対も容易に変換することが可能である。
【０４２５】  以上の画素の配列は、画像フレームバッファ情報はもとより、ビットマップ画像情報、ＪＰＥＧ、ＭＰＥＧ等の圧縮画像データ、さらに地図やアニメ―ション画像のＣＧなどの人為的に作成された画像つまり二次元配列の画像全てにおいて共通であり、一般的な画像を扱う上での基本的な約束事項である。
【０４２６】  図５８に示すＡ、Ｂの２つの画像パターン１は、５つの画素６とその位置で構成される画像パターン１であり、パターンマッチ条件が５条件である。Ａパターン１は、色２情報である、ＢＬ（黒）を基準（±０）にして、Ｒ（赤）、Ｇ（緑）、Ｏ（オレンジ）、Ｂ（青）が図示する画素位置に配列されている。Ｂパターン１は、輝度３情報である、「２」を基準（±０）にして、「５」、「３」、「７」、「８」が図示する画素位置に配列されている。基準（±０）となる画素はパターン内どの画素でも構わない、また対象とする画素の数（パターンマッチ条件）は多くても少なくてもよい。これまでの技術では、この様な問い合わせパターンをもとにして、配列記憶されたメモリ上のアドレスをＣＰＵが逐次処理して見つけ出す処理、つまりソフトウエアよるパターンマッチである。
【０４２７】  つまりパターンマッチと称する情報処理はその大半がＣＰＵの処理によるものであるため本質的なパターンマッチとはかけ離れた内容になっているのが実態である。
【０４２８】  これまでのＣＰＵとメモリの逐次処理による無駄時間をなくすため、以上説明のようなＡ、Ｂのパターンを直接入力することにより、メモリ内の情報処理のみで、パターンマッチ１７させて、パターンマッチ１７した絶対アドレス７を出力させるよう構成されたのが、本発明者の発明による、情報絞り込み検出機能を備えたメモリ５１（３０３）であり、その詳細は特許明細書に詳しく紹介されているが、ここでは先に述べたＡ、Ｂパターンをもとにその原理を紹介する。
【０４２９】  情報絞り込み検出機能を備えたメモリ５１（３０３）は指定されたデータに合致し、更に配列された情報の相対位置が合致、以上相方のマッチングをメモリの内部でとることが出来るメモリである。
【０４３０】  これまで説明してきたように、２次元座標は、図に示すように、基準画素６からの位置が線形配列の画素６位置情報に変換されている。
【０４３１】  注目すべきは、基準画素６とその周辺の画素６で構成される、一組のパターン１の画素６の相対距離はこの画像空間上どこにあってもいつも一定である、この事がこの発明の基礎となっている。以上の内容はローカルアドレス１０３とグローバルアドレス１０４の関係として詳しく後述する。
【０４３２】  以上の内容は画像情報を取り扱いするときの周知の事実であるが、先願発明はこの基本的な事実を半導体デバイスとしてハードウエアに組み込みすることが可能であり、パターンマッチ１７に利用できる事を証明したものである。
【０４３３】  また、複数の画素６とその位置で構成される１組のパターン１は一定のサンプリングポイント６０を持つことにより、その組み合わせパターン１が他に存在する確率は極めて少なくなることである。
【０４３４】  従って、パターン範囲内の画素全部を対象にする必要はなく、適切な画素６の数を選びサンプルとすることにより指定したパターン１が絞り込まれて検出できること、さらには部分毎のパターン１を組合せ全体のパターン１を検出することなど、効果的なパターンマッチ１７が行われる事が大きな特徴である。対象になる画像に拡大や縮小、更に回転等がある場合には単純な座標変換を行いパターンマッチ１７させればよい。画像の拡大、縮小の率、更には回転角度が未知であるような場合には、問い合わせＢパターンのようにマッチさせる座標の範囲を広げておけば、パターンマッチの回数を極限まで削減させることが出来る。
【０４３５】  まずは確認すべき座標の範囲を広げておき、対象となるパターンが存在する可能性があるかどうかを掴むことが重要である。パターン存在の可能性がなければその段階で切り上げればよい。
【０４３６】  もし絞込みが不十分であり多数のパターン１が存在する場合は、更に新しい画素をサンプルに追加し絞り込して目的のパターン１を探せばよい。以上のような情報絞込み機能を備えたメモリ５１（３０３）の原理と、その応用例で分かるように、この処理は全くＣＰＵなどの情報処理手段を使わなくても極めて高速で指定したパターン１の検出をハードウエアのみで実現できるところが大きなポイントである。
【０４３７】  通常のＣＰＵとメモリによるパターンマッチ１７とハードウエアパターンマッチのスピードの比較は背景技術に示した通りであり、７条件（画像の場合７画素）のパターンマッチが３４ｎＳで実現された事に相当する。本ハードウエアパターンマッチは並列処理にありがちな回路構成を大型化することなく、回路規模を現在考えうる最低限の構成で実現可能にしたことによるものであり、結果として画像処理が可能な大型の情報処理容量のデバイスが実現可能になることである。
【０４３８】  背景技術で紹介のプロトタイプ機は高速性を求めた完全一致タイプのパターンマッチであったが、機能が追加されることにより多少処理時間は低下し情報処理容量は低減するが問い合わせＢパターンに示すように、パターンマッチ１７する画素６を範囲指定とすることも、検出データ値も固定値のみならず範囲指定し類似画像等の検出も可能である。
【０４３９】  画像に適した機能とアドレスサイズのデバイスの１条件当りのパターンマッチ時間が仮に１マイクロ秒程度であっても画像文字認識技術は大きく進化する、詳細は後述する。対象となる画像のサイズが情報絞込み機能を備えたメモリ５１（３０３）の情報処理容量より大きい場合は、画像をいくつかに分割して、分割単位ごとにパターンマッチをかければよい。この場合、分割部分の画像のパターンマッチ１７に影響されないよう、パターンマッチ１７する画像の大きさの分Ｘ軸、Ｙ軸互いにオーバラップするよう分割し、いずれかの分割画像内に対象なる画像がパターンマッチ掛るようにパターンマッチすればよい。
【０４４０】  ここで、ローカル（相対）アドレス１０３ならびにグローバル（絶対）アドレス１０４について説明する。例えば、現在のデジタルフルハイビジョン画像は横（Ｘ軸）１９２０ピクセル×縦（Ｙ軸）１０８０、合計約２，０７３，６００ピクセルの画素で構成された映像であり、０ピクセルから２，０７３，５９９ピクセルまで線形配列された絶対アドレス７に画素毎の画像情報が記憶される。この画像空間の任意の２つのピクセルの相対位置は一次元データのグローバルアドレス１０４の距離で表現することが出来る。
【０４４１】  一方この画像の中に字幕などの文字が存在する場合、文字単位のＸ軸、Ｙ軸２軸座標４のローカルアドレス１０４を使用した方が便利である。例えば映像中の字幕の文字サイズが１２８×１２８ピクセルの場合この空間をローカルアドレスと表現する。
【０４４２】  ローカルアドレスは対象となる画像の横幅（Ｘ軸）の最大値（デジタルフルハイビジョンの場合１９２０）が決まればグローバルアドレスに変換可能である。例えば、Ｘ＝０、Ｙ＝０のローカルアドレス１０３を基準としてＸ＝０、Ｙ＝１２７のローカルアドレス１０３はグローバルアドレスに変換すると、「いずれかのピクセル」を基準として１２８*１９２０＝２４５，７６０ピクセル目のアドレスであり、Ｘ＝１２７、Ｙ＝１２７のローカルアドレス１０３はグローバルアドレスに変換すると、「いずれかのピクセル」を基準として１２７＋１２８*１９２０＝２４５，８８７ピクセル目のアドレスである。
【０４４３】  複数のグローバルアドレス１０４のサンプリングポイント６０を与えパターンマッチさせることにより、上記の「いずれかのピクセル」が絞り込まれ、最終的にマッチした「いずれかのピクセル＝アドレス」が絶対値アドレス７として出力されるのが、情報絞込み機能を備えたメモリ５１（３０３）の特色である。画像上のすべてのピクセルを対象として全ピクセル並列（同時）にパターンマッチが出来る（ハードウエアパターンマッチ）からである。時間はかかるがこの２次元配列を利用した手法はＣＰＵとメモリを使った通常の処理でも実現可能である。
【０４４４】  本発明の文字のパターンマッチをする上で必要不可欠な技術を紹介する。図５９は排他パターンマッチの説明図であり、対象となる画像情報５、の画素６の中から物体８の領域（エリア）９と輪郭（エッジ）１０を効率的に検出する例を示している。特定の色２や輝度３の領域（エリア）９を持った物体８を探す場合、その物体の背景パターンは無限に存在するために様々な色２や輝度３のデータ５４によるパターンマッチ１７を必要回数繰り返しする必要がある。
【０４４５】  このような場合に有効なのが排他パターンマッチ５９である。
【０４４６】  本例では画像中にボールのような球状の白い（Ｗ）物体８が３個所ある画像の場合の例であり、横幅６ピクセルの白いボール８の一定の領域（エリア）９を指定するための４つの白い範囲（Ｗ）データ５４とこれに外接する４つの白以外データ（Ｗ(━)）データ５４つまり白の排他データ５８により、この（Ｗ）、（Ｗ(━)）の境目で４個所のボールの輪郭（エッジ）１０を検出できる。
【０４４７】  つまり特定の大きさの白の物体８、本例では横幅が６画素のエリアを持った白い物体（ボール）のみが検出される。白（Ｗ）の横幅は５ピクセルでも７ピクセルでも除外されることになるので、極めて正確な物体大きさの検出が可能になる。本例では完全に隣接した画素６同士で排他パターンマッチ５９を行ったが、（Ｗ）、（Ｗ(━)）の範囲を一定範囲あけることにより、多少大きさが変化した白い物体８も容易に検出できる。
【０４４８】  この場合、ボールエリア以外の背景の画素６が白以外の何の色であっても排他データ（Ｗ(━)）を使えるので、本例のように８か所程度の画素６をパターンマッチすれば極めて単純に横幅６画素の白のボールを探し出すことが出来る。この様な（Ｗ(━)）の排他データ５８は、情報絞り込み検出機能を備えたメモリ５１（３０３）の場合、その連想メモリ（ＣＡＭ）機能の（Ｗ）出力を一旦否定（インバート）し、このインバート結果（Ｗ(━)）をＣＡＭ出力として書き換えする（ＣＡＭ出力を反転する）ことにより極めて単純な原理で利用できるので、探し出す対象物の背景の画像が不特定で無限の可能性がある場合に極めて効率的である。
【０４４９】  本例では白一色の排他パターンマッチ５９の場合であるが、その他の色を組み合わせることにより複雑な画像を極めて少数のパターンマッチで検出することが可能になる。物体の形状を精度よく求める場合には、パターンマッチのポイントの数量とその位置を適切に選べばよい。
【０４５０】  移動する物体を認識し、追従する際に不可欠のパターンマッチが可能になる。    動画中のある物体が１フレーム毎に少しずつ大きさや形状が変化する場合には１フレーム毎に物体の形状を更新して次の１フレームの物体とマッチングを取ればよい。この様な移動物体の追従は映像装置やセキュリテー装置に不可欠の技術である。
【０４５１】  この技術は文字認識や指紋、更に一次元情報などのパターンマッチに広く利用できる。本方式のパターンマッチは強力である、これまで大がかりになりがちな画像処理を極めて単純処理することが可能になる。一般の文字は一定の色とその形状（領域）で成り立つものであり、文字以外の部分が特定の色であったり、特定の柄や映像であっても文字以外の色で領域外を指定することが出来るので、この排他パターンマッチを利用すると極めて簡素化した文字認識のパターンマッチが可能になる。
【０４５２】  言うまでもなく全てのサンプリングポイントを領域内サンプリングポイントにした場合は文字と同一文字色のベタ塗り領域がある場合、パターンマッチされてしまうからである。
【０４５３】  図６０は文字の書体例である。  本例で示す日本語は様々な種類の文字が組み合わされた言語である、そのうち特に数の多い漢字は、常用漢字で２０００文字程度、複雑な漢字を含めて３０００文字程度、さらにこれらに日常使用される、ひらがな、カタカナ、アラビア数字、アルファベット、これら以外の記号等を含め最大５０００種の文字記号を認識する必要がある。最大の文字数を持つ漢字でも現在日常中国使用されている漢字は６０００文字から７０００文字と言われている。従って、中国語の場合、最大１０，０００文字を認識する必要がある。
【０４５４】  全世界の文字を共通に認識する場合には２万文字程度を認識する必要があり、さらに文字には様々な種類の書体（フォント）１０２があり、文字認識をさらに複雑なものにしている。画像中の文字を認識するには大きく２つの方法がある。一つは画像中の文字一つ一つの書体の特徴を抽出して、その特徴を基にその文字が何であるかを問い合わせする場合。この方法による文字認識は本願発明者により出願された特願２０１２−１０１３５２に紹介する画像認識や物体認識によって実現できる。もう一つは文字一つ一つの書体の領域と非領域を識別するために必要な複数のサンプリングポイントをあらかじめ決めておいて、このサンプリングポイントにマッチする画像を文字と認識する場合である。この方は文字の特徴を予めサンプリングしておき、画像上のすべての文字を対象として並列にパターンマッチさせることが出来るので、前者に比較してより効率よく高速で精度よくパターンマッチ指定した文字が認識できる。本願発明は後者の方法による文字認識方法を対象にしている。  図６１は、文字パターンサンプリングポイント作成例Ａの説明図である。    特定の日本語文字「あ」を文字認識するために、Ｎｏ１、Ｎｏ２、Ｎｏ３、Ｎｏ４、まで文字の領域部分には領域内サンプリングポイント６１と領域外部分には領域外サンプリングポイント６２のそれぞれ２つの４つのサンプリングポイント６０をローカルアドレス１０３の座標４上に付与した場合の例である。
【０４５５】  パターンマッチ１７はＮｏ１、Ｎｏ２、Ｎｏ３、Ｎｏ４、の順序で行われる、その順序はどこからでも良いがＮｏ１に指定したローカルアドレスの座標が、マッチしたグローバルアドレスの絶対アドレス７として出力される。これら４つのサンプリングポイント６０は図５８に示すようにＸ軸、Ｙ軸それぞれのローカルアドレス１０３が座標４として与えられる。これらの２種のサンプリングポイント６０の意味するものは、当該サンプリングポイントおよびその近傍が、文字の領域部分であるかそれ以外であるかを特定するためのものである。一般的な文字の場合、座標４空間中の領域面積は、領域外面積より少なくなり、全ての文字の領域の存在確率は１／２以下となるが、その反対に非領域の存在確率は１／２以上になる。以上のようにどのような文字においても領域部分には領域内サンプリングポイント６１と領域外部分（非領域）には領域外サンプリングポイント６２の双方を同一数配置した場合、１サンプルポイントのそれぞれの座標４が文字の領域であるか否か、反対に領域外であるか否かの平均確率は１／２となる。従って以上の４つのサンプリングポイントがマッチする確率は概ね１／（２*２*２*２）＝１／１６となる。
【０４５６】  厳密に言えば、座標の中心部は領域の確率が高く、座標のコーナ付近は領域の確率が少ない。従ってこのような特性を積極的に利用して、座標のコーナ付近は領域内サンプリングポイント、座標の中心部は領域外サンプリリングポイントを利用することにより確率を下げて認識率を向上することも可能となる。言うまでもなくサンプリングポイントの数が多いほど識別能力が高くなるが、サンプリングポイントが多ければパターンマッチ時間が増えるので適切なサンプリングポイント数を決める必要がある。
【０４５７】  一例として２０サンプリングポイントでパターン化する場合、１／１００万程度の識別確率になり、３０サンプリングポントでパターン化した場合は１／１０億程度の識別能力になる。印刷された文字の品質や紙質による文字のカスレや異物等でサンプリングポイントのいくつかが正常に読めない場合でも大半がマッチすれば合格とするような構成にすればばよい、詳細は後述する。
【０４５８】  言うまでもなく、この方法はどのような文字に対しても共通に利用でき、全世界の文字を共通に認識させる場合や、認識率の安全を見込む場合でも、３０程度のサンプリングポイントでパターン化すれば十分である。図６２は文字パターンサンプリングポイント作成例Ｂの説明図であり、特定文字「あ」のいくつかの書体（フォント）を重ね合わせ、領域が一致する部分に領域内サンプリングポイント６１、いずれの書体（フォント）の領域外部分に領域外サンプリングポイント６２を合計３０個所付与した場合である。
【０４５９】  以上のように代表的な書体（フォント）１０２の文字の領域が合致する部分といずれの領域に属さない部分を区分して適切にサンプリングポイントを付与することにより、特殊な書体（フォント）１０２の文字以外は共通にパターンマッチすることが可能になる。万一複数の文字が認識選択される場合には、その文字のサンプリングポイントを部分的に修正すればよい。
【０４６０】  図６３は、特定書体の文字パターンサンプリングポイント作成例であり、これまでの説明に基づき、それぞれの文字に３０個所のサンプリングポイントを付与したものである。日本語の場合は５千文字、中国語では１万文字に対しこのようなパターンマッチ用のサンプルポイントを作成すればよい。全世界の文字をすべて集めても２万文字程度あれば十分である。
【０４６１】  サンプリングポイントを作成する際は、大きなサイズの書体（フォント）１０２で作成し、小さな文字サイズの場合には自動的に座標４値を縮小してパターンマッチさせればよい。従って一度これらのサンプリングポイントを作成すれば未来永劫活用することが出来る人類共通の財産となる。
【０４６２】  図６４は、字幕付き画像の文字認識の例である。    外国映画に字幕は付き物である。    映画の字幕の場合、１シーンに現れる字幕は最大２行、文字数４０文字程度であり表示時間は１秒から５秒程度である。情報絞り込み機能を備えたメモリ５１（３０３）は完全なるハードウエアパターンマッチなので１マイクロ秒もあれば1回のパターンマッチが可能である。１マイクロ秒１回のパターンマッチで３０サンプルポイントの場合、一文字が３０マイクロ秒であり、５千文字の日本語では０．１５秒、１万文字の中国語の場合でも０．３秒で一画面当たりのすべての文字をパターンマッチさせることが出来る。全世界文字２万文字でも０．６秒で一画面当たりのすべての文字をパターンマッチさせる事が可能である。
【０４６３】  書体サイズが不明の場合、頻繁に出てくる文字の大きさを変動させてパターンマッチを掛ればよい。日本語の場合、頻繁に出てくるひらがな、５０文字でパターンマッチを行えばよい、対象となる文字が、文書であるかその他の例えば映画の字幕などであると判断がつく場合はその文字の一般的な文字のサイズを中心にしてパターンマッチをかけパターンマッチの絶対アドレス７が必要数かえって来るところがその文字サイズである。特殊な書体（フォント）を用意して、特殊な書体を文字認識することも可能である。文字の色も、通常は黒もしくは白、続いて赤、青、緑、ならびにその近傍の色でパターンマッチを行えばよい。
【０４６４】  以上のような前処理を全て行っても１秒もあれば十分であり、映画の字幕の場合は最初から最後まで書体や文字の大きさ色は同一な場合がほとんどであり、字幕位置も固定されている。世界中のどの言語の字幕でも共通にリアルタイムに文字認識することが可能なシステムが可能になる。
【０４６５】  図６５はリアルタイムＯＣＲ機能を備えた情報処理装置の例である。    図に示すように、日本語５千種文字のそれぞれの文字１０１にＮｏ１からＮｏ３０までのサンプリングポイント６０のパターンマッチ１７用のＯＣＲパターンデータベース１０５が登録されている。本例では日本語を例にしているが、英語でも、中国語でも、全世界の言語を一括して登録することも可能である。
【０４６６】  サンプリングポイント６０には、文字１０１毎の「ＸＹ」ローカルアドレス１０３ならびに、「Ｄ」すなわち文字１０１の領域の色２、または輝度３を指定するデータ５４、ならびにその領域外の色２、または輝度３を示す排他データ５８が登録されている。このデータ５４ならびに排他データ５８は一括し別途指定して登録することが出来る、最低限必要なことはそれぞれのサンプリングポイント６０が文字１０１の領域内サンプリンポイント６１であるか領域外サンプリングポイント６２であるかを明確化しておく必要がある。
【０４６７】  さらにこの装置には情報絞込み機能を備えたメモリ５１（３０３）が組み込まれ、このメモリ５１（３０３）には文字認識の対象となる画像情報５が記憶されている。前述のデータベース１０５から順次文字１０１を指定して５千回パターンマッチをかける。この際、パターンマッチ１７に必要なことは文字の色とサイズを把握してローカルアドレス１０３をグローバルアドレス１０４に変換してパターンマッチをかけるだけである。
【０４６８】  これらの処理はＣＰＵによって高速で確実な情報絞込み機能を備えたメモリ５１（３０３）への指定が可能になる。情報絞込み機能を備えたメモリ５１（３０３）に記憶された画面上で問い合わせパターン１にマッチ文字１０１があれば、マッチするアドレスが絞りこまれパターンマッチ１７する絶対アドレス７が出力される、この絶対アドレス７は、ローカルアドレス１０３で指定したサンプリングポイント６０のＮｏ１の位置である。もしパターンマッチ１７する同一文字が複数ある場合にはその文字分の絶対アドレス７が出力される。
【０４６９】  以上の絶対アドレス７をＣＰＵで読み取りＣＰＵで必要な処理を行えばよい。    以上の説明通りＣＰＵは文字認識そのものにかかわる一切の処理をする必要がなく、必要なのは文字認識処理全体を統括し、情報絞込み機能を備えたメモリ５１（３０３）にパターンマッチの指示を与え、パターンマッチ結果（絶対アドレス７）を読み取り、その結果必要な処理をするだけである。日本語だけの場合、５千文字として０．１５秒で全てのパターンマッチが実現できる。通常映画の場合の字幕の文字色は白で、書体（フォント）１０２も固定されており変化しない。
【０４７０】  考慮すべき点はデジタル画像特有のブロックノイズによる文字ノイズ等である。これらの色もしくは輝度のノイズは適切にフィルターを掛けるなり、データ５４の範囲を指定してパターンマッチ可能にすればよい。
【０４７１】  以上のようなパターンマッチで認識された文字は、再生された時刻とともにテキストデータとすれば、これらのテキストデータは映像シーンのアノテーションデータとして利用することが可能である。
【０４７２】  例えばＨＤＤ（ハードデスクドライブ）型の録画機は情報記憶容量が数Ｔ（テラ）バイトを超えるものが出回っており、録画時間は数百時間を超える。録画しておいた画像をまた見たい場合、番組名やタイトル名は思い出せない場合も多く、さらにはどのあたりに見たいシーンがあるのかは全く分からない。家庭用の録画機では、あとで再度見たいシーンにはチャプターマークを付して後々サムネイル画像を参照できるようにするなどの方式が一般的であるが目的に叶うようタイミングよくチャプターマークを付ける操作は大変に煩雑で困難である。この様な場合、字幕を読みとったこれらの文字アノテーションデータ１０８を検索することにより思い出のシーンを意のままに検索することが可能になる。
【０４７３】  一般的なテレビ画像においても字幕映像シーンは番組の始まりや重要な映像シーンに出現する場合が多い。これらの重要なシーンの字幕をリアルタイムで読み取りして、テキストデータして検索が可能なようにすることにより、検索指定した文字情報があるシーンのみ、例えば人物の名前を登録しておくことにより、その人物が画像に現れている場面のみを録画しておくことも可能になる。
【０４７４】  音楽番組で自分のひいきの歌手が出現するところのみを録画することが出来ればその他のシーンを見る無駄な時間がなくなる。その他の応用例として、テキストデータを音声合成したり、点字文字にすることも可能になる。
【０４７５】  以上の内容は、インターネット情報においても同様である。    図６６は、文書画像の文字認識の例である。    先に示した通り、本方式の特徴であるハードウエアによる並列処理によるパターンマッチを使用すれば画像の中に含まれる文字の数が幾つであってもパターンマッチに要する時間は一定である。従って先ほどの映画の字幕の場合でも文字数が数百に及ぶ文書画像であっても1画面当たりの文字認識は同じ時間で可能である。
【０４７６】  またローカルアドレスの座標を回転させることによって回転した文字や逆さになった文字や、これらが組合された複雑な構成の文字も自由に認識することが可能である。複雑なソフトウエアアルゴリズムを用いる必要も、また装置を大型化することなく文字認識装置を構成することが可能である。
【０４７７】  印刷された文書をスキャナーで画像読み取りした場合には、文字のカスレや異物などにより、サンプリングポイントの幾つがパターンマッチ出来ない場合がある。サンプリングポイントの内１個所でもパターンマッチが出来ないと当該文字が認識できなくなる可能性がある。
【０４７８】  対象となる画像文字の品質が良くない場合には、情報絞込み機能を備えたメモリ５１（３０３）にカウンタ機能を備えた情報絞込み機能を備えたメモリ５１（３０３）を利用すると効果的である。例えばカウンタ機能を用いて３０ポイントのサンプルポイントの内２５ポイント以上を持って合格とし、その絶対アドレス７を認識出力するなどの方法が活用できる。
【０４７９】  文字品質がそれほど問題にならない場合は、サンプリングポイントの順番を変え幾通りか繰り返すことにより確実に文字認識が可能になる。時間はかかるがこの２次元配列を利用した手法はＣＰＵとメモリを使った通常の処理でも実現可能である。
【０４８０】  本願発明は完全一致タイプのパターンマッチを中心に説明してきたが、サンプルポイントの位置を範囲検索可能にすることによって類似パターンマッチさせ手書き文字認識にも応用することが可能である。人間が認識できる文字の数は極めて多いが、一遍に認識できる文字の数は限定される、つまり文字を読まない限り画像として眼に映っているだけである。従ってこの方式の文字認識は人間の能力をはるかに超えた認識能力を持つことになる。
【０４８１】  これまで、画像上の文字の領域の配列がローカルアドレスからグローバルアドレスに単純に変換できることを積極的に利用してパターンマッチを行う文字認識の前例はない。言うまでもなく本願発明のパターンマッチによる文字認識は情報絞り込み機能を備えたメモリ５１（３０３）を利用することによって、サーチによる無駄時間を抜本的に解消することが出来るが、従来手法によるＣＰＵとメモリによる逐次処理によっても実現可能である。
【０４８２】  本願発明者はこれまで、情報絞込み機能を備えたメモリ５１（３０３）の高速なパターンマッチを利用して、先願発明では画像の認識と音声の認識、そして本願発明の文字認識で人間が認識すべき３つの認識に関わる特許を出願した。動画像と同じように１つの情報絞込み機能を備えたメモリ５１（３０３）に必要な情報を都度記憶させ必要な文字認識や画像認識、音声認識を行い、次の瞬間では新しい別な情報の認識に利用できるところが大きな特徴である。これらの事は我々の脳の情報処理と類似している、我々人間も五官すべて同時に神経を集中することは困難で、通常は画像、音声、文字のいずれかに集中して処理を行っている。このことは情報絞込み機能を備えたメモリ５１（３０３）は汎用ブレインチップと表現することが出来る。
【０４８３】  情報絞込み機能を備えたメモリ５１（３０３）はＣＰＵとのコラボレーションによりコンピュータを賢くパワフルに大きく変身する。（パターンマッチの標準化）  以下、パターンマッチングの標準化の例を、図６７〜図７２を参照して説明する。なお、以下の説明では、優先権主張の基礎出願との対応関係が分かりやすいように参照符号をそのままにして説明していることに留意されたい。
【０４８４】  情報の塊である配列情報の標準化パターンマッチを考えるときに一番重要なことは、何を基準としてパターンマッチするかが最も基本となる。大きく分類すれば、特定のデータを基準とするのか、特定のデータの位置を基準とするのか、その双方を基準にするのかなどである。さらにデータの位置の定義をどのように定めるかは特に重要である。
【０４８５】  １組の情報の単純なマッチであれば、比較的簡単であるが、複雑な情報のパターンマッチである場合でも単純でしかも実現できなくては意味がない。本発明は対象となる配列情報の中の情報をパターンマッチする際、探したいパターンに含まれるであろう候補になるデータを最初に指定し基準情報にする事がベースになっている。
【０４８６】  また本発明では配列の定義に基づき、上記候補データとマッチングのための他の情報の相対関係は座標で指定することも距離で指定することも可能であるので単に位置としている。
【０４８７】  以下の説明では、情報のデータ１０１のその位置１０３をローカル座標１１２で指定する方法で説明する。
【０４８８】  具体的には先ず最初に含まれるであろう特定のデータを基準にとって、この基準データと異なる他のデータを一対の情報とし、その双方の相対座標がマッチするかを判定する方法をとり、この考え方を拡張して常に基準データを一対の情報の片側において繰り返しマッチングする方法をベースとして単純化している。もちろん、探したいパターンに含まれるであろう候補データがなければ最初の時点でパターンマッチが成立しなかったことになり切り上げればよい。
【０４８９】  このデータとその位置の考え方を原則にするパターンマッチ方法であれば一次元情報から多次元情報、さらにはパターンマッチサンプル数が幾つであっても汎用的に利用することが可能になり、この発明の一番基本になるところである。
【０４９０】  この様な視点で注目すべき事は、大量のデータの中から特定の情報を見つけ出す事を目的としたメモリベースアキテクチャのハードウエアデバイスである連想メモリ（ＣＡＭ）は単純な情報を探し出す事（マッチ）は出来るがパターンのような複雑な情報を探し出す事は出来ない。常にＣＰＵの力を借りる必要があるので、現在では大型高速通信機器のＩＰアドレスの検出など特定の分野に応用されるのみである。
【０４９１】  次に情報処理における曖昧パターンマッチについて検討する。    現在のコンピュータのメモリの配列情報でとり得る曖昧さは、メモリに記憶格納する情報データの曖昧さと、メモリに記憶格納する場所（アドレス）の２つのみである。つまり情報の集合体であるパターンは一定の定義に基づき配列情報として記憶格納されているのでこの二つを曖昧に情報処理することが出来れば人間に極めて近い認識が可能になることである。
【０４９２】  従って情報処理における、曖昧パターン情報は、情報（データ値）に幅（範囲）を持たせ、格納するアドレスに幅（範囲）を持って情報（データ値）を格納した情報の集合体の情報配列と定義できる。
【０４９３】  しかしながら、現在の一般のメモリはその性格上以上のようにデータ値そのものを曖昧にしたり、格納するアドレスを曖昧にすることは出来ない。データ値を複数のアドレスに格納したり、データの範囲を別途指定する必要があり複雑な情報処理が必要になり曖昧情報そのものを作ることは困難である。考え方を変えて、記憶される情報（データ値）と格納するアドレスは固定にして、これを検出する際の問い合わせパターン９のデータ値とその位置の双方に範囲（最大、最小、以上、以下を含む）を持たせ曖昧にすることにより曖昧なパターンマッチが可能になる。
【０４９４】  以上の事により一般的な半導体メモリを用いて曖昧パターンを取扱いし曖昧パターンマッチさせることが可能になる。    この方法によればメモリに記憶する情報（データ）とその場所（メモリアドレス）は通常のままで、その配列も一般的な情報配列で実現することが出来る。
【０４９５】  図６７は１次元情報のパターンマッチの例である。
【０４９６】  株価や気温などの時系列データや文字データ、ＤＮＡデータなどは代表的な１次元配列のデータであるので、線形配列のメモリには情報（データ値）を書き込む先頭番地を決め１アドレス毎にそのデータ値を順次記憶格納すればよい。もちろんこの際、１アドレスずつ間を開けて２アドレス毎に順次情報を格納することも、３アドレス毎に順次情報を格納することであってもかまわない、通常は若い番地から順に書き込むが反対であってもかまわない、情報格納の定義（配列）が定められていればよい。
【０４９７】  本例ではデータベース８の情報は絶対アドレス７、グロ−バルアドレス１１３として、パターンマッチの情報データ１０１のその位置１０３は相対アドレス５７、ローカル座標１１２として説明している。
【０４９８】  図がある都市の最高気温の月毎の時系列データベースであった場合を考える。    前述のように、温度の時系列データはデータベースに毎月の最高平均気温が定められた定義によって曖昧さを持たずに記憶格納（配列）されている。人間が感じる感触は通常の絶対的な尺度を持たない曖昧なものであり、例えば暑さを示す尺度であれば、極めて暑い、暑い、過ごしやすい、寒い、極めて寒い、などのような５段階から精々１０段階のレベルである。
【０４９９】  このような曖昧さを含まないデータの中から、例えば異常気象のようなパターンを探す場合、極めて暑い、を３５℃、暑い３０℃、過ごしやすい２０℃、寒い１０度、極めて寒い５℃、として、これらのデータにそれぞれ±５℃の範囲を与えるとともに、変化するまでの期間に一定の範囲を与え（本例の場合±１月、２月）パターンマッチ１７することにより人間に近い曖昧なパターンマッチによる温度分析が可能になる。
【０５００】  本方式のパターンマッチ１７は、基準（候補）となる情報１１０をパターンマッチ１７の候補として予め選んでおき、パターンマッチの対象となるマッチ情報１１１を次々に与え、マッチ情報１１１とマッチしない基準情報１１０の候補を次々とふるい落とし、一定の回数のマッチングが終了した時に勝ち残ったアドレスをマッチアドレス５７とするものである。従って問い合わせパターン９を作成する時に特に重要なのが最初の基準となるサンプリングポイント６０である、この場合３つのデータをサンプルポイントとしており、基準情報１０１、Ｎｏ１は左側のサンプルとなっている、中心でも右のサンプリングポイントを選んでも全く問題ないが、前述のように、在ることが期待できるデータでなければ意味がない、従って本例の場合に一番可能性が高いデータ（データの中央値）を最初に選んでいる。またＮｏ１のデータの範囲を適切に選択することによりミスマッチの可能性を低減することが出来る。もしこのデータに該当するものがなければパターンマッチを切れ上げればよい。
【０５０１】  以上のように本例のパターンマッチ情報処理をする基準情報１１０がＮｏ１となり、このＮｏ１を基準として、Ｎｏ２、Ｎｏ３の双方にマッチするデータを探し出すことになる。Ｎｏ３の情報を探し出す際もＮｏ２との相対位置によるものでなく、Ｎｏ１とＮｏ３でマッチする情報を探し出すことがこの発明の原点である。
【０５０２】  後述するがサンプリングポイントの数が増えてもこの原則が最重要である。従ってＮｏ１の基準サンプルには位置の範囲設定をしない方が賢明である（データ値は範囲設定があっても問題ない）。
【０５０３】  本例では問い合わせパターン１にマッチしたパターン１がデータベース８内に存在（パターンマッチ１７）した場合を図示している。    以上の例は３組の情報データのパターンマッチ１７であるが、情報データの組合せはいくら多くてもかまわない。またこれらの３つの情報のデータ１０１値ならびにその範囲１０２は任意設定可能であり、そのデータの位置１０３ならびにその位置１０４も任意設定可能であればよい。
【０５０４】  いうまでもなく、データ値の範囲１０２、その位置の範囲１０４のいずれかを「０」にすることも可能であり、双方を「０」にすれば完全一致のパターンマッチになる。
【０５０５】  図６８は２次元情報のパターンマッチの例である。    画像情報や地図情報などの情報は代表的な２次元情報である。    この様な２次元情報は通常Ｘ軸またはＹ軸をラスタースキャン方式（折り返し）Ｘ軸方向の１ライン毎に線形配列のメモリに順次記憶格納（配列）されている。１次元情報同様に、Ｘ軸を左から記憶するのか右から順に記憶するのか、Ｙ軸で折り返すのかなどは任意であり、情報格納（配列）の定義が定められていればよい。
【０５０６】  図ではトンボのような虫眼鏡で指定された問い合わせパターン９を探し出す時の概念が示されており、画像５上に記憶された全範囲の画像情報５の中から特定のパターン１をトンボのような虫眼鏡で検し出す際のイメージである。
【０５０７】  図に示すように画像５によるパターン１は、Ｎｏ１、からＮｏ５までの５つの画素６、本例では７、５、３、８、２などの輝度値データ、ならびにその位置、つまり画素（ピクセル）６の位置に範囲を持って曖昧パターンマッチ１０７設定をした例である。例えばＮｏ１サンプリングポイントの画素は、データ値７±１、でありＸ＝０、Ｙ＝０つまりローカル座標の基準点であり基準となる情報１１０を意味している。またＮｏ２サンプリングポイントの画素は、データ値Ｄ＝５±２、でＸ＝−４±３、のデータ１０１、１０２値ならびのその位置１０３に範囲１０４を持った設定になっている。対象となる画像情報５の中から、この問い合わせパターン９の色や輝度のデータとその座標４の位置が相対的に合致するアドレスが検出される事により曖昧パターンマッチ１７、１０７が成立する。
【０５０８】  この様な画像の曖昧パターンマッチは画像認識を行う上で不可欠なツールになる。    図に示すように、パターンマッチするアドレス５７が存在する場合、ローカル座標１１２で指定された問い合わせパターン９は、情報配列上ではメモリの絶対アドレス７として検出されれば、パターンを構成するそれぞれの画素６の位置を相対的に見つけ出すこと、つまり情報の塊としてパターン１が検出出来る。
【０５０９】  １次元情報でも述べたように、特に重要なのが最初の基準情報１１０となるサンプリングポイント６０である、この場合５つのデータをサンプルポイントとしており、基準情報１１０、Ｎｏ１はパターンの中心部のサンプルとなっている、他のサンプリングポイントを基準情報１１０に選んでも全く問題ない。この際常にパターンマッチ１７情報処理１０をする基準情報１１０がＮｏ１となり、このＮｏ１を基準として、Ｎｏ２、Ｎ５までの範囲の中から該当するデータを探し出すことになる、もしＮｏ２とＮｏ３、Ｎｏ３とＮｏ４と順次マッチをした場合、範囲が次第に拡大し発散することになる。意図的にＮｏ１のサンプリングポイントの位置に範囲を持たせることも可能であるが、通常は１次元同様Ｎｏ１の基準サンプルには位置の範囲設定をしない方が賢明である。
【０５１０】  本方式のパターンマッチは、パターン１範囲内に含まれる多くの情報の中から選択したサンプリングポイント６０である、情報のデータ１０１値が仮に２５６通りでデータが均等にばらついているときは２種のデータが意図した相対配列にある確率は１／２５６、であり、３種のデータが意図した相対配列にある確率は１／（２５６×２５６）であり、４種の場合は更に少なくなる、従って幾つかの適切なサンプルリングポイントを選択することにより確率的に、パターンマッチ候補（基準情報１１０）が絞り込まれ、特定のパターンが選択（パターンマッチ１７）されるものである。
【０５１１】  しかしながら、前述の温度の場合の５段階設定の曖昧パターンマッチの場合やさらにはデータの位置に範囲を設けた場合には、マッチの確率が多くなり十分にパターンが絞込み出来なく沢山のアドレスが出力される場合が出てくる。その場合は必要に応じサンプリングポイントを増やして目的に見合ったパターンマッチをさせることが重要である。
【０５１２】  図６９は、１次元情報パターンマッチのＧＵＩの例である。    本願発明を分かり易く効率的に使用するためには、問い合わせパターン９のデータを入力するＧＵＩ（Ｇｒａｐｈｉｃ Ｕｓｅｒ Ｉｎｔｅｒｆａｃｅ）が必要である。本例は１次元情報のパターンマッチ用ＧＵＩである。
【０５１３】  本例ではデータ配列１１０で対象となる情報やデータベースのアドレス上の先頭番地や、Ｘ軸やＹ軸のサイズが設定できるようになっている。本例の場合では1次元情報であるので、先頭アドレスとＸ軸（データのサイズ）を指定すればよい。２次元情報であればＸ軸、Ｙ軸双方のサイズを指定すればよい。いずれの場合でもローカル座標で指定した情報の相対的な位置でマッチングを行い最終的にマッチしたアドレスを見つけ出すことが可能になる。
【０５１４】  本例では、基準となる情報１０１に対してＭ１からＭ１６で示されるマッチ順序１０９でマッチ情報１１１を１から１６サンプルまでパターンマッチ１７可能にするＧＵＩの例である。本例ではサンプリングポイント６０を１６サンプルとしているがこれに限るものでなく増やすことも削減することも自由である。
【０５１５】  さらにＭ１からＭ１６までの情報のすべてにデータ指定をする必要もなく必要数のサンプルを指定して使用することが出来る。基準となる情報１１０のデータの位置１０３は固定で座標原点（Ｘ軸＝０、Ｙ軸＝０）である、本例では位置の範囲１０４の設定もない構成としている。
【０５１６】  基準となる情報１１０はデータ値１０１ならびに範囲１０２が入力可能になっている。Ｍ１からＭ１６の１６のマッチ情報１１１にはそれぞれ、データ値１０１ならびにその範囲１０２、ならびにその情報の位置１０３、およびその範囲１０４をローカル座標１１２で指定できるように構成されている。
【０５１７】  以上の問い合わせパターン９設定により、パターンマッチ１７指令を行うことにより、情報処理１０が実行されて、その結果が、マッチアドレス５７として絶対アドレス７、グルーバルアドレス１１３として出力される。この場合、当然のことながらパターンマッチ１７するアドレスが複数あれば複数のアドレスが出力され、もしなければ出力はされない。
【０５１８】  従って、これらのパターンマッチ１７の目的に合うようサンプリングポイント６０の数を選ぶとともにデータの範囲やその位置の範囲を設定することが肝心である。
【０５１９】  以上がこの発明の標準パターンマッチ１７の基本であるが、本例ではオプション機能の一例として、Ｍ１からＭ１６のデータ値に、排他データ１１５を指定し排他パターンマッチ１１６が出来るように構成されている。もちろん基準情報１１０を排他データ１１５とする構成とすることも可能である。
【０５２０】  さらに本例のオプション機能では、Ｍ１からＭ１６までの情報に複数のデータ指定した場合、その中のいくつかがパターンマッチ出来ないことを許容１１４する機能を持たせている。この様な構成とすることにより曖昧なパターンマッチをより有効に機能させることが可能になる。座標を距離に変換するなどのオプション機能を充実させることにより更に使いやすいＧＵＩが完成される。
【０５２１】  １次元情報の場合、データ配列１００は線形配列以外の特別な配列の場合以外特に設定の必要はない。当然のことながら、データ１０１ならびにそのデータの位置１０３の双方の範囲を「０」にすることにより完全一致型のパターンマッチとすることも、どちらか一方のみ範囲指定をするなど曖昧の度合いを自由に設定することが出来る。以上のような構成で、株価情報や気温情報、さらには文字情報などの１次元情報のパターンマッチに共通のＧＵＩが利用できる。
【０５２２】  図７０は２次元情報パターンマッチのＧＵＩの例である。    基本的な構成は１次元情報と全く同様であるが、２次元情報では、基準になる情報１１０ならびにマッチ情報１１１の位置がＸ軸、Ｙ軸の２次元のローカル座標１１２となっている。また、本例では２次元情報のデータ配列をＸ軸、Ｙ軸それぞれ入力可能にしてローカル座標１１２からグローバルアドレス１１３、絶対アドレス７変換が可能なように構成されている。画像のような２次元情報は、情報が拡大、縮小、回転することがしばしばおこる、このような場合、座標変換１１７機能を利用することにより、１つの問い合わせパターンを様々に座標変換してパターンマッチすることが可能になる。
【０５２３】  本例のような構成にすることにより２次元情報のパターンマッチに共通なＧＵＩが利用できる。
【０５２４】  図７１は、画像情報パターンマッチのＧＵＩの例である。    色２のついた画像は１画素（ピクセル）６毎に色２情報、Ｒ、Ｇ、Ｂが個別に記憶されている、従って１画素（ピクセル）６をグローバルアドレス１１３する場合には、１つのグリーバルアドレス１１３毎にそれぞれの色２情報を設定できるようにしたものである。この方式とすることにより、画素（ピクセル）６単位でのパターンマッチが可能になる。
【０５２５】  これまでのパターンマッチの定義に基づき以上３種類のＧＵＩを紹介したが、これらを１つのＧＵＩに統一することも、対象となる情報に最適なＧＵＩを選択して利用するなど様々な応用が可能である。
【０５２６】  図７２は、本方式を用いたパターンマッチの情報処理の概念図である。    問い合わせパターン９のデータ１０１とその範囲１０２と、問い合わせパターン９のデータの位置１０３とその範囲１０４と、の双方の条件設定を行い、パターンマッチ指令１７によって、情報処理が実行される。これらの条件設ならびに情報処理は一括して行うことも、個別に実行するのも自由である。
【０５２７】  考え方の基本は、問い合わせパターン９のデータ１０１とその範囲１０２によりデータの検出処理１０を行うとともに、問い合わせパターン９のデータの位置１０３とその範囲１０４によりアドレスマッチング処理１０を行い、これを繰り返し実行１０することにより、最初に基準情報１１０として設定したパターンマッチ候補が順次絞込み処理１０されて勝ち残った絶対アドレス７がパターンマッチアドレス７５７として出力される。この絶対アドレス７を知ることによりパターンが認識され、そのパターンの位置が検出される。
【０５２８】  以上の構成の情報処理はＣＰＵとメモリによる通常の情報処理１０でも、さらにパターンマッチ１７の対象となる情報を分散させて並列処理１０によりパターンマッチ１７させることも自由であり、情報処理の形態も自由である。さらに情報絞り込み機能を備えたメモリ５１においても実現可能であることは言うまでもない。
【０５２９】  一般的なデータベースはほとんどの場合１次元または２次元情報で構成されており、このパターンマッチは極めて汎用的に利用できることになる。自由に構成できる情報データであればこのパターンマッチの原理に適した配列とすることにより、効果的で効率的なパターンマッチが可能になる。一例であるが高次元次元情報も以上のような２次元情報を積み上げして記憶格納された配列であれば共通化して利用することが出来る。
【０５３０】  以上の本願発明の要点を示すと、まず一番の基本は情報の配列にある、従ってこの配列構成を指定して、この配列に含まれるパターンマッチ候補（基準情報）を選び出し、そのマッチ相手（マッチ情報１１１）の互いのデータ値とその位置を指定することによりパターンマッチを標準化して情報処理をすることが可能になる、さらにデータ値とその位置に範囲を定義することにより曖昧なパターンマッチも実現できることになり、あらゆるタイプのパターンマッチの標準化が出来る。    情報の位置は座標値とすることも、距離とすることのいずれでも対応可能であり引用した特願２００５−２１２９７４号文献（この言及により本願明細書に組み込まれることとする）にも示されるように、情報の種類やその目的に応じてユークリッド距離、マンハッタン距離の空間距離さらには時系列の距離で情報の位置を定義する方法が提案されている。
【０５３１】  本発明では、どのような空間、時系列上、数学的な距離、概念的な座標や距離であっても本方式の位置に変換して使用することが可能である。（本願発明の経緯とまとめ）  従来のＣＰＵを使ったプログラムによるサーチや検索、照合、認識などの言葉に代表される集合演算は、メモリに記憶された集合情報の中から、特定の情報を探し出す処理であり、メモリ上の情報（元）を逐次アクセスし、参照し、集合演算の解を求める方法である。
【０５３２】  従って処理も遅く、また消費電力も大きくならざるを得ない。
【０５３３】  以上のことから、元を対象とする情報処理ではなく、集合全体を一括集合演算することのできる新しいタイプのプロセッサが不可欠である。
【０５３４】  情報を探し出す対象のメモリ自体の物理的な構造が、アドレスとメモリセルの２つの要素のみで構成されていることから、この２つの要素を自由にコントロールできれば、更に高度な情報処理が出来ると感じていたが、特定の情報を探し出す処理の究極的な姿である数学的な集合演算を情報処理の場所を含めた集合演算の概念に置き換えるまでには困難を伴った。
【０５３５】  これまでの元を対象とする集合演算は情報の場所（アドレス）は暗黙の了解事項となり表面には出てこない、しかしながら本方式の情報処理における集合演算は場所（アドレス）を無視しては成り立たない。
【０５３６】  以上の集合演算機能を備えたメモリ３０３の構想が生まれたのは言うまでもなく、情報絞込み機能を持ったメモリ３０２の発明と、これを利用した様々なアプリケーションの恩恵によるものである。
【０５３７】  本願発明はいわば、情報の絞込み機能を備えたメモリ３０２のマッチ回数カウンタ２１を汎用集合演算回路に置き換えただけのものであるが、曖昧パターンマッチやエッジ検出に代表されるような複雑極まりないアドレスの場所を含んだ集合演算の概念を汎用化するまでに多くの時間と労力を費やした。
【０５３８】  これもひとえに情報の絞込み機能を備えたメモリ３０２をさらに便利で広範囲な情報処理に利用したいとの欲望がこの発明の原点となっている。
【０５３９】  以上、本発明の好ましい実施形態について説明したが、本発明はこれらに限定されるものではなく、発明の要旨を変更しない範囲で種々変形可能であることは言うまでもない。
【０５４０】  たとえば、上記一実施形態において、ユーザインタフェースはコンピュータディスプレイに表示されるようなＧＵＩ（グラフィックユーザインタフェース）であったが、ＧＵＩに限定されるものではなく、あらゆる種類・表示形態（非表示含む）のユーザインタフェースを含むものである。  また、上記で説明した画像、文字、音声等のパターンマッチングの例は、本実施形態にかかるメモリ３０３の演算回路２２４における演算処理を固定の状態にして実施するようにしてもよい。
【符号の説明】
【０５４１】１０１  情報処理１０２  集合１０３  全体集合１０４  部分集合１０５  元１０６  位置１０７  領域１０８  距離１０９  論理和１１０  論理積１１１  論理否定１１２  正論理１１３  負論理１１４  情報（データ）の場所１１５  集合演算１１６  情報（データ）の合致１１７  情報（データ）の値２０１  メモリ２０２  メモリセル２０３  アドレス２０４  絶対アドレス２０５  相対アドレス２０６  アドレスデコーダ２０７  プライオリテイアドレスエンコーダ２０８  データ比較回路２０９  データ範囲比較回路２１０  アドレス比較回路２１１  アドレス領域比較回路２１２  マッチ回数カウンタ２１３  マッチアドレス２１４  勝抜きフラグ（FG）２１５  領域勝抜きフラグ（FG)２１６  メモリアドレスの並列操作２１７  マスク２２１  データ条件２２２  アドレス条件２２３  論理演算条件２２４  演算回路３０１  連想メモリ（CAM)３０２  情報絞込み機能を備えたメモリ３０３  集合演算機能を備えたメモリ４０１  パターン４０２  色４０３  輝度４０４  座標４０５  画像情報４０６  画素４０７  データベース４０８  問い合わせパターン４０９  パターンマッチ４１０  サンプリングポイント４１１  データ配列４１２  データ４１３  データの範囲４１４  データの位置４１５  データの領域４１６  曖昧情報４１７  曖昧パターン４１８  曖昧パターンマッチ４１９  曖昧認識４２０  マッチ順序４２１  基準情報４２５  ミスマッチ許容４２６  排他データ４２７  排他パターンマッチ４２８  座標変換
【図１】
0006014120.tif 000002
【図２】
0006014120.tif 000003
【図３】
0006014120.tif 000004
【図４】
0006014120.tif 000005
【図５】
0006014120.tif 000006
【図６】
0006014120.tif 000007
【図７】
0006014120.tif 000008
【図８】
0006014120.tif 000009
【図９】
0006014120.tif 000010
【図１０】
0006014120.tif 000011
【図１１】
0006014120.tif 000012
【図１２】
0006014120.tif 000013
【図１３】
0006014120.tif 000014
【図１４】
0006014120.tif 000015
【図１５】
0006014120.tif 000016
【図１６】
0006014120.tif 000017
【図１７】
0006014120.tif 000018
【図１８】
0006014120.tif 000019
【図１９】
0006014120.tif 000020
【図２０】
0006014120.tif 000021
【図２１】
0006014120.tif 000022
【図２２】
0006014120.tif 000023
【図２３】
0006014120.tif 000024
【図２４】
0006014120.tif 000025
【図２５】
0006014120.tif 000026
【図２６】
0006014120.tif 000027
【図２７】
0006014120.tif 000028
【図２８】
0006014120.tif 000029
【図２９】
0006014120.tif 000030
【図３０】
0006014120.tif 000031
【図３１】
0006014120.tif 000032
【図３２】
0006014120.tif 000033
【図３３】
0006014120.tif 000034
【図３４】
0006014120.tif 000035
【図３５】
0006014120.tif 000036
【図３６】
0006014120.tif 000037
【図３７】
0006014120.tif 000038
【図３８】
0006014120.tif 000039
【図３９】
0006014120.tif 000040
【図４０】
0006014120.tif 000041
【図４１】
0006014120.tif 000042
【図４２】
0006014120.tif 000043
【図４３】
0006014120.tif 000044
【図４４】
0006014120.tif 000045
【図４５】
0006014120.tif 000046
【図４６】
0006014120.tif 000047
【図４７】
0006014120.tif 000048
【図４８】
0006014120.tif 000049
【図４９】
0006014120.tif 000050
【図５０】
0006014120.tif 000051
【図５１】
0006014120.tif 000052
【図５２】
0006014120.tif 000053
【図５３】
0006014120.tif 000054
【図５４】
0006014120.tif 000055
【図５５】
0006014120.tif 000056
【図５６】
0006014120.tif 000057
【図５７】
0006014120.tif 000058
【図５８】
0006014120.tif 000059
【図５９】
0006014120.tif 000060
【図６０】
0006014120.tif 000061
【図６１】
0006014120.tif 000062
【図６２】
0006014120.tif 000063
【図６３】
0006014120.tif 000064
【図６４】
0006014120.tif 000065
【図６５】
0006014120.tif 000066
【図６６】
0006014120.tif 000067
【図６７】
0006014120.tif 000068
【図６８】
0006014120.tif 000069
【図６９】
0006014120.tif 000070
【図７０】
0006014120.tif 000071
【図７１】
0006014120.tif 000072
【図７２】
0006014120.tif 000073