WO2016121998A1 - 情報マッチング装置及びその方法 - Google Patents
情報マッチング装置及びその方法 Download PDFInfo
- Publication number
- WO2016121998A1 WO2016121998A1 PCT/JP2016/052928 JP2016052928W WO2016121998A1 WO 2016121998 A1 WO2016121998 A1 WO 2016121998A1 JP 2016052928 W JP2016052928 W JP 2016052928W WO 2016121998 A1 WO2016121998 A1 WO 2016121998A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- coordinate
- information
- storage means
- data
- matching
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
Definitions
- the present invention relates to an information matching apparatus and method for matching array information in space.
- the memory with this information refinement detection function was developed for the purpose of processing pattern matching hardware in the memory without relying on sequential CPU processing, and is indispensable for sequence information matching processing.
- a parallel replacement method (address swap) of memory addresses of a simple memory is realized by replacing a flag by means such as a shift register so as to achieve an extremely high speed of pattern matching.
- Japanese Patent No. 4588114 Memory equipped with information narrowing detection function enables very high-speed pattern matching, but develops and stores three-dimensional array information used for protein structure analysis and object shape matching in memory. In this case, when all the spatial information is stored like normal image information, the address space of the memory expands enormously.
- the present invention provides a hardware information matching algorithm and apparatus of a new technique that overcomes the above problems.
- an information matching device for matching arrangement information in space, the first storage means, the second storage means, and the third storage means.
- the first storage means and the second storage means each store in advance coordinate data indicating the position of the coordinate point of one or more array information in space in parallel in a predetermined address.
- the first storage means outputs the coordinate data stored in the address based on an address designated from the outside, and the second storage means outputs inquiry coordinate data (coordinates) given from the outside.
- the coordinate data stored in each address of the second storage means is converted according to the query), and the coordinate data after the coordinate conversion and the coordinate data output by the first storage means match.
- a matching address is detected and output, and the third storage means stores the detection result by the second storage means and outputs the same to the outside.
- the information matching apparatus further includes a fourth storage unit, and the fourth storage unit corresponds to coordinate points of one or more array information on the space.
- Information data to be stored at a predetermined address based on inquiry information data (data query) given from the outside, the matching information data is detected from the stored information data, and the address is output, Further, the first storage means outputs the coordinate data stored at an address corresponding to the address detected by the fourth storage means, and the second storage means performs the coordinate conversion. And detecting and outputting an address at which the coordinate data after the coordinate conversion matches the coordinate data output by the first storage means. Matching apparatus.
- the coordinate data indicating the position of the coordinate point of the array information is an absolute coordinate
- the inquiry coordinate data (coordinate query) is a relative coordinate.
- the relative conversion of the coordinates of the second storage means is based on an addition / subtraction operation process.
- the array information is stored and used as pattern information.
- the coordinates of the coordinate storage & output unit of the first means and the coordinate storage conversion & detector of the second means described above are arranged in any one of one-dimensional coordinates, two-dimensional coordinates, three-dimensional coordinates, and N-dimensional coordinates. Information is stored, converted and detected. If this apparatus 29 of three-dimensional coordinates is present, it means that it can be used in common for array information from one to three dimensions.
- the color information data 3 of the coordinate points r, s, t in the space 2 is stored in the data storage & detectors 1, 2 and 3 at addresses 1, 2, 3 of the fourth means in the order of r, s, t from the external input. 3 is stored.
- the coordinate data 6 of the absolute coordinate 7 of the coordinate point r, s, t in the space 2 is stored in the coordinate storage & detector 1 of the addresses 1, 2, 3 of the first means in the order of r, s, t from the external input. 2 and 3 and the coordinate storage conversion & detectors 1, 2 and 3 at the addresses 1, 2 and 3 of the second means.
- a coordinate point to be set as the reference coordinate 19 is selected. If a is a coordinate point of the reference coordinate 19, information data (red) 3 of this coordinate point 1 is used as a data query 9, and information data which is the fourth means by external input. Give to memory & data detector.
- the fourth means turns on the output of the information data storage & data detector 1 in which the coordinate point r (red) is stored, and in this example, the data query 9 designates the address 1 Outputs that there is information data (red) 3.
- the first means When the coordinate storage & output device 1 as the first means accepts the address output output by the fourth means, the first means outputs the absolute coordinates of the coordinate point r stored in advance.
- the absolute coordinates of the coordinate point r outputted from the first means are given (in parallel) to the coordinate memory conversion & detector which is the second means.
- coordinate point b (blue) is the next query condition. If the coordinate point b is a query, the information data (blue) 3 of this coordinate point 1 is given as a data query 9 to an information data storage & data detector as a fourth means from an external input.
- the output of the information data storage & data detector 2 in which the coordinate point s (blue) is stored is turned ON, and there is information data (blue) 3 specified by the query at the address 2 Means output.
- the first means When the coordinate storage & output device 2 as the first means receives this address output, the first means outputs the absolute coordinates of the coordinate point s stored in advance.
- the relative coordinate 8 that is the difference between the coordinate point b (blue) and the coordinate point a (red) is input as the coordinate query 10 to the second means
- the absolute coordinates 7 of r, s, and t are converted by relative coordinate values by addition / subtraction, and each address 2 of the second means is converted from the converted coordinates 20 and the first means outputted previously. Matching with the output absolute coordinate 7 is performed.
- the timing when the second means receives the output of the first means is after the coordinate conversion of the second means is completed.
- the coordinate point c (black) is set as the next query condition. If the coordinate point c is a query, the information data (black) 3 of this coordinate point 1 is given as a data query 9 to the information data storage & data detector as the fourth means from an external input.
- the fourth means is that the output of the information data storage & data detector 1 in which the coordinate point t (black) is stored is turned ON, and the address 3 has the information data (black) 3 specified by the query. Output that.
- the first means When the coordinate storage & output device 3 as the first means receives this address output, the first means outputs the absolute coordinates 7 of the coordinate point t stored in advance.
- the coordinate storage conversion & detection that is the second means
- the absolute coordinates of the coordinate points r, s, and t stored in advance in the container are values converted by addition and subtraction operations for the relative coordinate values.
- the coordinates stored in the coordinate storage conversion & detector of the second means are the converted coordinates 20, and the absolute coordinates of the converted coordinates and the coordinate point t output by the first means. If the coordinates match (match), matching is established.
- the above matching includes matching of coordinates that have no meaning. As described above, whether or not the unknown coordinate points r, s, and t are meaningfully matched using the coordinate points a, b, and d as templates is whether the pattern matching condition is satisfied in the standard coordinates 19 specified first. What is necessary is just to read from a 3rd means. In the case of this example, if the count value of the match number counter (CNT) 15 at address 1 is “3”, the pattern matching 24 between the coordinate points a, b, d and the coordinate points r, s, t is established. It will be. When a plurality of standard coordinates 19 are designated, the address of the match number counter (CNT) which is the maximum count value among them is the match address.
- the coordinates of coordinate points r, s, and t are written in order from address 1 to address 2 of the first means and the second means.
- the coordinate point r is the reference coordinate 19
- the X matching range is set to MIN131, MAX137
- the Y matching range is set to MIN55, MAX61
- the Z matching range is set to MIN86, MAX92.
- the absolute coordinate of the address 3 where the coordinate point t shown in the drawing exists matches the coordinate match range of the reference coordinate 19 (match).
- Matching 1 designates the address 2 serving as the reference coordinates 19, and designates the data query 9 given from the outside to the fourth means, detects the corresponding information data 3, and detects the address 2 of the information data 3 Is output.
- the first means reads the address 2 output from the fourth means and outputs the absolute coordinate 7 of the corresponding address 2.
- the range of matching coordinates can be arbitrarily specified by the range query 16.
- a large error range is given, and when the distance between coordinate points is short, a small error calculation range is given to greatly reduce calculation errors and small object errors. It can be absorbed efficiently.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
3次元パターン認識など情報処理の最大の課題はアドレス空間の肥大化と座標同志のマッチング処理の高速化とその演算回数の削減である。形状マッチングやパターンマッチングに不可欠な座標同志のマッチング処理を空間配列情報の座標の相対性を利用し、座標ポイント同志の相対座標位置をクエリとして与えることにより座標マッチングを全並列で処理する。座標マッチングの際の許容範囲を任意に設定可能な方式としてマッチング演算回数を削減する。
Description
本発明は、空間上の配列情報をマッチングするための情報マッチング装置及びその方法に関するものである。
本願発明に関連する発明としては本願発明者による「情報の絞り込み検出機能を備えたメモリ」があり、当該発明はすでに特許第4588114号として設定登録されている。この「情報の絞り込み検出機能を備えたメモリ」は、画像情報や音声情報などを世界で初めて「ハードウエアパターンマッチ」することを可能にするメモリ型情報処理技術として誕生し、注目を集めている。
すなわち、この情報の絞り込み検出機能を備えたメモリはパターンマッチをCPUの逐次処理に頼ることなくメモリ内でハード的に処理することを目的に開発されたものであり、配列情報のマッチング処理に不可欠なメモリのメモリアドレスの並列置き換え手法(アドレススワップ)をシフトレジスタなどの手段によるフラグの置き換えにより実現しパターンマッチの超高速化を図ったものである。
この情報の絞り込み検出機能を備えたメモリによるパターンマッチは従来のCPUで実現したパターンマッチ比較して数万倍~数100万倍も高速に実現できることがこれまでの研究で実証されている。具体的なパターンマッチ手法やその効果については、先願特許や論文を参考にされたい。
しかしながら、アドレスの空間が1次元、2次元情報に比較して大きくなる3次元情報さらには4次元、多次元情報などのパターンマッチを実現させる場合メモリならびに周辺回路が膨大になり半導体先端技術プロセスを用いても実現が困難である場合が多い。またパターンマッチングの概念をさらに拡大し、単に物体の頂点や表面の座標以外の属性データを持たない座標のみの情報で構成される配列情報の形状マッチングについても考慮する必要がある。
最近の技術によるハードウエアによる情報のマッチング技術を調査したが、本願特許の最大の特徴である、パターンや形状の配列情報の座標の相対性を活用し座標変換を並列に行うような先願は見当らない、一般的なパターンマッチ技術を参考文献として紹介する。
特許第4588114号情報の絞り込み検出機能を備えたメモリは極めて高速なパターンマッチを可能にするが、タンパク質の構造解析や物体の形状照合などに利用される3次元の配列情報をメモリに展開記憶させる場合、通常の画像情報のように空間情報の全てを記憶させる場合メモリのアドレス空間が巨大に膨れ上がる。
また3次元情報の場合マッチングの回数が2次元情報に比較して比べ物にならない程に多くなりより高速化が求められる。また、3次元の配列情報の解析は未知の分野の解析が多いのでカット&トライが多くASIC化が困難、FPGAでも実現させる手段が必要である。本願発明は以上のような課題を克服する新しい手法のハードウエア情報マッチングのアルゴリズムと装置を提供するものである。
(1) この発明の第1の主要な観点によれば、空間上の配列情報をマッチングするための情報マッチング装置であって、第1の記憶手段、第2の記憶手段及び第3の記憶手段を有し、第1の記憶手段ならびに第2の記憶手段は、それぞれ、空間上の1又は2以上の配列情報の座標ポイントの存在位置を示す座標データを予め所定のアドレに並列に記憶するものであり、前記第1の記憶手段は、外部から指定されるアドレスに基づき、そのアドレスに記憶された前記座標データを出力し、前記第2の記憶手段は、外部から与えられる問い合わせ座標データ(座標クエリ)に従ってこの第2の記憶手段の各アドレスに記憶された前記座標データの座標変換を行い、座標変換後の座標データと前記第1の記憶手段により出力された座標データとが合致するアドレスを検出して出力し
第3の記憶手段は、上記第2の記憶手段による検出結果を記憶し外部に出力するものであることを特徴とする情報マッチング装置が提供される。
第3の記憶手段は、上記第2の記憶手段による検出結果を記憶し外部に出力するものであることを特徴とする情報マッチング装置が提供される。
この第1の主要な観点によれば、以下の(2)~(16)の実施態様が提供される。
(2) 第1の主要な観点の情報マッチング装置において、さらに、第4の記憶手段を有し、この第4の記憶手段は、前記空間上の1又は2以上の配列情報の座標ポイントに対応する情報データを所定のアドレスに記憶し、外部から与えられる問い合わせ情報データ(データクエリ)に基づき、上記記憶した情報データの中から合致する前記情報データを検出しそのアドレスを出力するものであり、さらに、前記第1の記憶手段は、前記第4の記憶手段で検出されたアドレスに対応するアドレスに記憶された前記座標データを出力し、前記第2の記憶手段は、前記座標変換を行うと共に、座標変換された座標データと前記第1の記憶手段により出力された座標データとが合致するアドレスを検出して出力するものであることを特徴とする情報マッチング装置。
(3) この発明の第1の主要な観点の情報マッチング装置において、前記配列情報の座標ポイントの存在位置を示す前記座標データは、絶対座標、前記問い合わせ座標データ(座標クエリ)は相対座標であることを特徴とする情報マッチング装置。
(4) この発明の第1の主要な観点の情報マッチング装置において、前記第1の記憶手段、前記第2の記憶手段、前記第3の記憶手段の少なくとも1つは並列処理を行うものであることを特徴とする情報マッチング装置。
(5) この発明の第1の主要な観点の情報マッチング装置において、前記第4の記憶手段は、並列処理を行うものであることを特徴とする情報マッチング装置。
(6) この発明の第1の主要な観点の情報マッチング装置において、前記第2の記憶手段の座標の相対変換は加減算演算処理によるものであることを特徴とする情報マッチング装置。
(7) この発明の第1の主要な観点の情報マッチング装置において、前記第1の記憶手段で出力された前記絶対座標が前記第2の記憶手段で変換された座標に合致するか否かの検出は範囲を指定して検出するものであることを特徴とする情報マッチング装置。
(8) この発明の第1の主要な観点の情報マッチング装置において、前記第3の記憶手段の検出された出力の記憶はカウンタであることを特徴とする情報マッチング装置。
(9) この発明の第1の主要な観点の情報マッチング装置において、前記第4の記憶手段のデータ検出は、データの一致または不一致、データの範囲一致または範囲不一致、データの類似または非類似、データのカウント、データの多数決、指定する検出手段、以上の組合せの手段、のいずれかでデータ検出されるものであることを特徴とする情報マッチング装置。
(10) この発明の第1の主要な観点の情報マッチング装置において、前記第2の記憶手段の座標記憶/出力ならびに前記第3の記憶手段の座標記憶変換/検出の座標は、1次元座標、2次元座標、3次元座標、N次元座標、のいずれかの配列情報で記憶され変換され検出されるものであることを特徴とする情報マッチング装置。
(11) この発明の第1の主要な観点の情報マッチング装置において、複数のマッチング対象情報を記憶する第5の記憶手段をさらに備えることを特徴とする情報マッチング装置。
(12) この発明の第1の主要な観点の情報マッチング装置において、前記第2ならびに前記第3の記憶段のアドレス数を前記第1の記憶手段のアドレス数より少なく構成したことを特徴とする情報マッチング装置。
(13) この発明の第1の主要な観点の情報マッチング装置において、前記配列情報は形状情報として記憶され利用されるものであることを特徴とする情報マッチング装置。
(14) この発明の第1の主要な観点の情報マッチング装置において、前記配列情報はパターン情報として記憶され利用されるものであることを特徴とする情報マッチング装置。
(15) この発明の第1の主要な観点の情報マッチングアルゴリズムを書き込んだLSI。
(16) この発明の第1の主要な観点の情報マッチングアルゴリズムを書き込んだFPGA。
(17) この発明の第2の主要な観点によれば、第1の記憶手段、第2の記憶手段及び第3の記憶手段を有する情報マッチング装置を用いて、空間上の配列情報をマッチングするための方法であって、第1の記憶手段ならびに第2の記憶手段が、それぞれ、空間上の1又は2以上の配列情報の座標ポイントの存在位置を示す座標データを予め所定のアドレに並列に記憶する工程と、前記第1の記憶手段が、外部から指定されるアドレスに基づき、そのアドレスに記憶された前記座標データを出力する工程と、前記第2の記憶手段が、外部から与えられる問い合わせ座標データ(座標クエリ)に従ってこの第2の記憶手段の各アドレスに記憶された前記座標データの座標変換を行い、座標変換後の座標データと前記第1の記憶手段により出力された座標データとが合致するアドレスを検出して出力する工程と、第3の記憶手段が、上記第2の記憶手段による検出結果を記憶し外部に出力する工程と、を有することを特徴とする情報マッチング方法が提供される。
(18) 第2の主要な観点の方法による1の好ましい実施態様によれば、前記情報マッチング装置は、さらに第4の記憶手段を有し、この方法は、さらに、この第4の記憶手段が、前記空間上の1又は2以上の配列情報の座標ポイントに対応する情報データを所定のアドレスに記憶し、外部から与えられる問い合わせ情報データ(データクエリ)に基づき、上記記憶した情報データの中から合致する前記情報データを検出しそのアドレスを出力する工程と、前記第1の記憶手段が、前記第4の記憶手段で検出されたアドレスに対応するアドレスに記憶された前記座標データを出力する工程と、前記第2の記憶手段が、前記座標変換を行うと共に、座標変換された座標データと前記第1の記憶手段により出力された座標データとが合致するアドレスを検出して出力する工程とを有することを特徴とする方法が提供される。
上記した構成によれば、以下の効果を得ることができる。
・情報マッチング装置やLSIのメモリ空間ならびに周辺回路の規模を極めて小さくすることができる。
・情報のマッチングに不可欠な座標位置判定の速度が極めて速くなる。
・パターンマッチングのみならず形状マッチングに利用できる。
・3次元情報のみならず、N次元情報のマッチングに利用できる。
・FPGAで実現できるので、カット&トライ的な研究分野に最適である。
・高速なマッチング技術はリアルタイム認識に不可欠であり人間の脳の代替え手段として期待される。
配列情報21の第1は、時間や事象、物体、物体の頂点などが存在する空間の位置を示す座標ポイント1のみからなる配列情報である。配列情報21の第2は、以上の位置を示す座標ポイント1に属性データ(何らかの意味をもつ情報データ3)が付与され一体になった配列情報であり、その代表的なものが
・ある時間(位置=座標ポイント)の気温や株価(情報データ)
・ある画素(位置=座標ポイント)の色や輝度(情報データ)
・ある宇宙空間(位置=座標ポイント)の星座(情報データ)
・ある分子空間(位置=座標ポイント)の原子(情報データ)
などが代表的である
配列情報21は配列条件によって全く別の情報配列となる。これは、日本で利用される世界地図は日本が中心位置に表示され、他国の世界地図はその国が中心に表示され、北半球と南半球では天地が逆になるのと同様である。原点と座標の向きをどのように定義するかによって全く異なった情報のように配列されることである。
このような、空間に存在する配列情報同士が同一であるか類似しているかを判断する際の有効な手段は形状マッチングもしくはパターンマッチングである。言うまでもなく、形状マッチングは物体同志の形状が同一であるか類似しているか、パターンマッチングは形状のみならず属性データを含め同一であるか、類似しているかを判断することを意味している。本願発明では、形状マッチング並びにパターンマッチングを総称して情報マッチング26と表現している。
・ある時間(位置=座標ポイント)の気温や株価(情報データ)
・ある画素(位置=座標ポイント)の色や輝度(情報データ)
・ある宇宙空間(位置=座標ポイント)の星座(情報データ)
・ある分子空間(位置=座標ポイント)の原子(情報データ)
などが代表的である
配列情報21は配列条件によって全く別の情報配列となる。これは、日本で利用される世界地図は日本が中心位置に表示され、他国の世界地図はその国が中心に表示され、北半球と南半球では天地が逆になるのと同様である。原点と座標の向きをどのように定義するかによって全く異なった情報のように配列されることである。
このような、空間に存在する配列情報同士が同一であるか類似しているかを判断する際の有効な手段は形状マッチングもしくはパターンマッチングである。言うまでもなく、形状マッチングは物体同志の形状が同一であるか類似しているか、パターンマッチングは形状のみならず属性データを含め同一であるか、類似しているかを判断することを意味している。本願発明では、形状マッチング並びにパターンマッチングを総称して情報マッチング26と表現している。
図1は空間に配列される物体の座標ポイント1とその座標5の関係を説明するものである。空間1に存在する物体1の表面には座標ポイントa,b,c,d,e,fが存在し座標ポイント1はそれぞれが情報データ3を持っており、情報データの座標4で情報データ3の位置が示される。
同様に空間2に存在する物体2の座標ポイントr,s,t,u,vも同様である。このような物体同士の同一性や類似性を判定する上でポイント同志の形状マッチング25やパターンマッチング24など情報マッチング26させることにより同一、相似、類似などを判断することが出来る。先に述べた通り座標ポイント1が属性データである情報データ3を持たない場合は形状マッチング25となる。
情報データ3という手掛かりを持たない座標5のみの形状マッチングは回転角と平行移動を組合せした網羅的なマッチングが必要になる。形状マッチングの場合の演算回数の一例として例えば空間のグリッドがXYZ各100座標ポイントの形状マッチング25を網羅的に行う場合
XYZ3軸回転、100×100×100=100万回(1M回)
XYZ3軸平行移動、100×100×100=100万回(1M回)
回転と平行移動双方の組合せ100万回×100万回=1兆回(1T回)の情報マッチング26が必要になる。
XYZ3軸回転、100×100×100=100万回(1M回)
XYZ3軸平行移動、100×100×100=100万回(1M回)
回転と平行移動双方の組合せ100万回×100万回=1兆回(1T回)の情報マッチング26が必要になる。
仮に1つの物体の配列情報21と他の物体の配列情報21との1セットのマッチングが100サンプリングポイントで行われ1サンプリンポイントのマッチングが1μ秒であれば、1セットのマッチングは100μ秒となる。以上の1セットの形状マッチングを1兆回繰り返し実行すると27.7時間という気が遠くなるような、とてつもない時間が掛かかることになる。如何にマッチング時間の短縮と、組合せ回数の組合せを少なくできるかが鍵になる。
座標ポイント1が属性データである情報データ3を持つ場合はパターンマッチング24が可能になる。パターンマッチング25の場合、情報データ3を特定(手掛かりを持つ)することが出来るので、見かけ上回転のみのマッチングを考慮すればよいので形状マッチング25に比較すれば極めて効率的なマッチングになる。しかしながら上記の演算回数が回転角方向のみに限定されれば0.1秒という現実的な処理になる。3次元情報の場合、以上のような網羅的なマッチングの回数を削減して実現できるようにするなど、利用の仕方を工夫することが重要である。
また一方、パターンマッチに不可欠な情報データ3は気温や色のような単純なデータから、たとえば宇宙空間の場合の地球や火星の大きさや、体積、比重、温度やその成分など様々な属性データが一体になった複雑な構造を持つものも少なくない。物体同士を判定する際、これらのデータの一致性や類似性、さらにはその反対性を判定するための複雑な演算が必要になる場合があり、1回のマッチングに要する時間が大きくなる場合が多い。
従って、3次元情報の形状マッチやパターンマッチはスパコン京のような超高速なコンピュータを利用するか、諦めるしかなかった。従って3次元以上の空間のマッチングを現実的なものにするためには従来のCPU(GPUを含む)型逐次処理型演算によらない新しい情報のマッチング26方法を検討する必要がある。
図2は配列情報のメモリの記憶方法を説明するものである。以上のような座標ポイント1を情報処理する上でメモリに記憶させる場合の例を示している。図に示す通り例えば座標ポイントa,b,c,d,e,fの属性データである情報データ3が色の場合、従来のアドレススワップ方式の情報絞り込み検出機能を備えたメモリの場合メモリ記憶方法1で記憶する必要がある。例えば、XYZ軸のグリッドを128×128×128とした場合、200万ものアドレスが必要になるが実際に利用する(記憶する)アドレスの数は6であり極めて効率が悪い記憶方法である。
図2は配列情報のメモリの記憶方法を説明するものである。以上のような座標ポイント1を情報処理する上でメモリに記憶させる場合の例を示している。図に示す通り例えば座標ポイントa,b,c,d,e,fの属性データである情報データ3が色の場合、従来のアドレススワップ方式の情報絞り込み検出機能を備えたメモリの場合メモリ記憶方法1で記憶する必要がある。例えば、XYZ軸のグリッドを128×128×128とした場合、200万ものアドレスが必要になるが実際に利用する(記憶する)アドレスの数は6であり極めて効率が悪い記憶方法である。
一方メモリ記憶方法2はメモリに情報データ3と情報データの座標4の双方を書き込んだ場合でこの場合メモリアドレスは6アドレスと極めて小さなアドレスで済むことになる。
更に配列情報が属性データである情報データ3を持たない場合にはメモリ記憶方法3で記憶させることが出来る。
従って図に示すメモリ記憶方式2もしくはメモリ記憶方式3の方式で、情報マッチングが出来る方法があれば宇宙空間やタンパク質などの3次元空間の物体の形状や特徴を超効率よく判定できるハードウエアを提供することが出来る。
本願発明はこのような観点でメモリ利用効率や周辺ロジック回路の利用効率を大幅に引き上げ上げ、情報マッチング26の速度を最大限とするようなマッチングのアルゴリズムとそのハードウエア回路を提供するものである。
図3は座標マッチングの概念を示すものである。図は3次元配列の座標ポイント1をそれぞれ3ポイントに絞って、それぞれの座標ポイントの座標と情報マッチング26に不可欠な座標マッチングの概念を説明するものである。
空間1の座標ポイントa,b,c並びに空間2の座標ポイントr,s,tの絶対座標7は図に示すように与えられる。更に空間1の場合座標ポイントaを基準座標19とした場合、b,cは図に示す相対座標8上に存在することになる。
空間2のマッチング対象27の座標ポイントrを基準座標19として場合、s,tは図に示す相対座標8上に存在することになる。従って、a-b間の相対位置とa-c間の相対位置が、r-sもしくはr-t間の相対位置と同一であれば形状マッチング25が成り立つことになる。
座標ポイント1に情報データ3があり、情報データ3の整合が取れればパターンマッチング27したことになる。
本図では座標ポイントa,b,c並びに空間2の座標ポイントr,s,tは単純に相対位置が平行移動した位置に配置され図示されている。実際の立体区間上の物体の形状マッチング25を行う上で重要なことは、図1で示したように互いの物体の回転と平行移動双方を考慮して網羅的に情報マッチング26を実施する必要がある。
もし配列情報に属性データとしての情報データ3があり、この情報データ3を手掛かりとしてパターンマッチングを行えば、見かけ上平行移動方向の情報マッチング26は削減され、図に示す回転座標23変換を行った座標をもとに回転方向の網羅的な情報マッチング26を行えばよいことになる。
具体的に示せば空間1に存在する既知の座標ポイントa,b,cの座標を元に、回転座標変換の演算を行い、互の情報データ3と情報データの座標4の相対関係がマッチするかどうかを判定すれば良いことになる。
また先に示した通り、情報のマッチング26を効率的に実施するためには、如何に網羅的なマッチングの回数を少なくできるかである。本発明はこのような、3次元情報のパターンマッチを2次元情報と同様高速に行うためのハードウエアプラットフォームを提供するものである。
図4は本発明の情報マッチングアルゴリズムをハードウエアで実現するための基本的な回路構成を説明する図である。もっとも基本となる形状マッチング25の処理は以下の通りである。
予め外部から転送される配列情報の座標ポイント1の存在位置を示す座標データを第1の手段ならびに第2の手段のアドレス2に並列に記憶しておく。第1の手段は外部から指定されるアドレス2に基づき記憶された座標データ6を出力する。
第2の手段は、外部から与えられる問い合わせ座標データ(座標クエリ)10で前記記憶された座標データ6の座標変換を行い座標変換された座標データと、前記第1の手段により出力された座標データと、が合致するアドレス1を検出し出力する。
その検出結果を記憶し記憶結果を外部に出力する第3の手段を具備する情報マッチング装置である。
以上の形状マッチングをパタ-ンマッチングにするためには以下の構成とすれば良い。
第4の手段は予め外部から転送される配列情報の座標ポイント1に対応する情報データ3をアドレスに対応して記憶しその情報データ3の中から、外部から与えられる問い合わせ情報データ(データクエリ9)に合致する前記情報データ3を検出しそのアドレス1を出力する。
この際、検出されるアドレス1が複数あった場合には図に示すプライオリテイエンコーダで優先順序順にアドレス2を出力する。
予め外部から転送される配列情報の座標ポイント1の存在位置を示す座標データ6を第1の手段ならびに第2の手段のアドレス2に並列に記憶し、第1の手段は第4の手段で検出されたアドレスの記憶された座標データ6を出力する。
第2の手段は、記憶された座標データの座標変換を行い座標変換された座標データと、前記第1の手段により出力された座標データと、が合致する前記アドレスを検出し出力する。
その検出結果を記憶し記憶結果を外部に出力する前記第3の手段を具備することにより情報マッチング装置である。
以上の情報データ3の合致は、データの一致または不一致、データの範囲一致または範囲不一致。データの類似または非類似、データのカウント、データの多数決、その他指定する検出手段、以上の組合せの手段などあらゆる比較によって得られる結果を意味している。
以上で示される座標は、予め外部から転送される配列情報の座標ポイントの存在位置を示す前記座標データは絶対座標7であり、外部から与えられる問い合わせ前記座標データ(座標クエリ)10は相対座標8とすることにより情報マッチングが可能になる。もちろん比較すべく適切なクエリ物体等が存在せず、無手数流で相対座標を与えなくてはならない場合もある。
以上で示される第1の手段の座標記憶&出力器ならびに前記第2の手段の座標記憶変換&検出器の座標は1次元座標、2次元座標、3次元座標、N次元座標のいずれかの配列情報で記憶され変換され検出される。仮に3次元座標の本装置29があれば、1次元から3次元までの配列情報共通に利用できる事を意味している。
第1の手段、第2の手段、第3の手段、第4の手段のすくなくとも1つは並列処理で実現することができる、図4に示す構成は全てを並列処理としたもので、情報データ3を探し回る手間と、座標5を探し回る手間がなくなるので従来手法に比較して数万倍から数百万倍も超高速な情報マッチングが可能になる。座標空間が大きいほど効果が大きくなるのがこの技術の特徴である。
第2の手段の座標の相対変換は加減算演算処理によるものであり、加減算演算器により高速に座標変換が可能である。
さらにこの装置には、第1の手段で出力された絶対座標が第2の手段で変換された座標に合致するか否かの検出は範囲を指定して検出することが可能な構成になっている。この構成は座標マッチングに多大な恩恵をもたらす。
言うまでもなくこのアルゴリズムはハードウエア回路に限定されるものでなく一般的なCPUによる情報処理手段でも利用できるものであり、また対象となる配列情報は3次元配列情報に限定されるものでなく1次元配列情報からN次元までの情報に共通である。
先に示した図3をもとに、この情報マッチング装置29の色情報のパターンマッチング24の動作を説明する。空間1は既知の配列情報21の座標ポイントa(赤),b(黒),c(青)が配列された空間であり、空間2の座標ポイントr(赤),s(黒),t(青)は座標ポイントa,b,cと同一な形状で回転がかかっておらず同一の形状と情報データ3を持っているもの、すなわち平行移動された空間に配列されているものとして説明する。
最初のステップとして空間2の座標ポイントr,s,tの色情報データ3は外部入力よりr,s,tの順に第4の手段のアドレス1、2、3のデータ記憶&検出器1、2、3に記憶される。
同様に空間2の座標ポイントr,s,tの絶対座標7の座標データ6は外部入力よりr,s,tの順に第1の手段のアドレス1,2,3の座標記憶&検出器1,2,3ならびに、第2の手段のアドレス1,2,3の座標記憶変換&検出器1,2,3に記憶される。
以上でパターンマッチングの対象になる未知の配列情報21は読み込まれているので、この座標ポイントr,s,tにクエリを与えパターンマッチング24のその結果を出力18するまでのステップについて説明する。
最初に基準座標19としたい座標ポイントを選ぶ、aを基準座標19の座標ポイントとすると、この座標ポイント1の情報データ(赤)3をデータクエリ9として外部入力より第4の手段である情報データ記憶&データ検出器に与える。
以上の外部入力により、第4の手段は座標ポイントr(赤)が記憶されている情報デーデ記憶&データ検出器1の出力がONになり、本例の場合アドレス1にデータクエリ9で指定した情報データ(赤)3があることを出力する。
第4の手段で出力された、このアドレス出力を第1の手段である座標記憶&出力器1が受付けると、第1の手段は事前に記憶された座標ポイントrの絶対座標を出力する。
第1の手段でから出力された座標ポイントrの絶対座標は、第2の手段である座標記憶変換&検出器に(並列)に与えられる。
このステップでは、座標クエリ10及び範囲クエリ16は与えないので、座標ポイントrの絶対座標7が記憶されている座標記憶変換&検出器1がヒットしこの検出出力がONする(本例ではアドレス1)。この検出結果は第4の手段である検出結果記憶&出力器の本例ではマッチカウンタ(CNT)1に記憶される(本例ではアドレス1である)。この操作により基準座標19としてマッチ回数カウンタ(CNT)1が「1」にカウントアップされ基準座標19に指定されたことになる。
次に指定された基準座標19に対する座標マッチングのステップを示す。
座標ポイントb(青)を次のクエリ条件とする。座標ポイントbをクエリとすると、この座標ポイント1の情報データ(青)3をデータクエリ9として外部入力より第4の手段である情報データ記憶&データ検出器に与える。
以上の入力により、座標ポイントs(青)が記憶されている情報デーデ記憶&データ検出器2の出力がONになりアドレス2にクエリで指定した情報データ(青)3があることを第4の手段が出力する。
このアドレス出力を第1の手段である座標記憶&出力器2が受付けると、事前に記憶された座標ポイントsの絶対座標を第1の手段が出力する。
一方第2の手段に座標クエリ10として座標ポイントb(青)と座標ポイントa(赤)の差分となる相対座標8が入力されると、座標記憶変換&検出器に事前に記憶された座標ポイントr,s,tの絶対座標7は、相対座標値分、加減算演算により座標変換され、第2の手段の各アドレス2はこの変換された座標20と先に出力されている第1の手段から出力される絶対座標7とのマッチングを行う。
この場合第2の手段が、第1の手段の出力を受け付けるタイミングは第2の手段の座標変換が完了した後であることは言うまでもない。
この変換された座標20と第1の手段で出力された座標ポイントsの絶対座標7がマッチ(合致)すればマッチングが成立したことになる。
次に座標ポイントc(黒)を次のクエリ条件とする。座標ポイントcをクエリとすると、この座標ポイント1の情報データ(黒)3をデータクエリ9として外部入力より、第4の手段である情報データ記憶&データ検出器に与える。
以上の入力により第4の手段は、座標ポイントt(黒)が記憶されている情報デーデ記憶&データ検出器1の出力がONになりアドレス3にクエリで指定した情報データ(黒)3があることを出力する。
このアドレス出力を第1の手段である座標記憶&出力器3が受付けると、第1の手段は事前に記憶された座標ポイントtの絶対座標7を出力する。
一方第2の手段の外部入力に座標クエリ10として座標ポイントc(黒)と座標ポイントa(赤)の差分となる相対座標値が入力されると、第2の手段である座標記憶変換&検出器に事前に記憶された座標ポイントr,s,tの絶対座標は、相対座標値分、加減算演算により変換された値になる。
この時、第2の手段の座標記憶変換&検出器に記憶された座標は変換された座標20となっており、この変換された座標と第1の手段で出力された座標ポイントtの絶対座座標がマッチ(合致)すればマッチングが成立したことになる。
以上のマッチングには意味を持たない座標同志のマッチングも含まれる。
以上座標ポイントa,b、dをテンプレートとして未知の座標ポイントr,s,tが意味のあるマッチングをしたかどうかは、最初に指定した標準座標19に、パターンマッチ条件が成り立っていたかどうかを、第3の手段から読み取ればよい。本例の場合、アドレス1のマッチ回数カウンタ(CNT)15のカウント値が「3」になっていれば、座標ポイントa,b、dと座標ポイントr,s,tのパターンマッチング24が成立したことになる。標準座標19が複数指定された場合はその中で最大のカウント値であるマッチ回数カウンタ(CNT)のアドレスがマッチアドレスである。
以上座標ポイントa,b、dをテンプレートとして未知の座標ポイントr,s,tが意味のあるマッチングをしたかどうかは、最初に指定した標準座標19に、パターンマッチ条件が成り立っていたかどうかを、第3の手段から読み取ればよい。本例の場合、アドレス1のマッチ回数カウンタ(CNT)15のカウント値が「3」になっていれば、座標ポイントa,b、dと座標ポイントr,s,tのパターンマッチング24が成立したことになる。標準座標19が複数指定された場合はその中で最大のカウント値であるマッチ回数カウンタ(CNT)のアドレスがマッチアドレスである。
図5は3次元の座標パターンマッチの実例を示すものであり、以上の概念をわかり易く説明するものである。本図では先に説明の図4の回路構成で示すようにクエリ条件として座標マッチ位置の誤差を許容するための範囲クエリ16の考え方も加味して説明する。本例では各座標が最小値(MIN)から最大値(MAX)の範囲にあれば座標位置のマッチがなされる構成である。
第1の手段並びに第2の手段のアドレス2にはアドレス1から順に座標ポイントr,s,tの座標が書き込まれている。一例として座標ポイントrが基準座標19でその絶対座標はX=58、Y=125、Z=56、座標ポイントsの絶対座標はX=63、Y=115、Z=72、座標ポイントtの絶対座標はX=134、Y=58、Z=89である。
座標ポイントr-sのマッチングの場合、本例ではマッチング誤差を許容するための範囲クエリ16がX=±1,Y=±2,Z=±3として設定されている。座標ポイントr-sの座標クエリ10として差分となる相対座標x=5、y=-10、z=16を与えると、第2の手段の全アドレスの座標は加減算演算で、相対的に座標変換するとともに、与えられたクエリ範囲設定16の条件が加味され、Xのマッチング範囲はMIN62、MAX64、Yのマッチング範囲はMIN113、MAX117、Zのマッチング範囲はMIN69、MAX75、と設定される。本例では図に示す座標ポイントsの存在するアドレス2の絶対座標が基準座標19として指定された座標マッチ範囲にマッチ(合致)する。
続いて座標ポイントr-tのマッチングにおいては、範囲クエリ16がX=±3、Y=±3、Z=±3として設定されている。座標ポイントr-tの座標クエリ10として差分となる相対座標x=76、y=-67、z=33を与えると、第2の手段の全アドレスの座標は加減算演算で、相対的に座標変換するとともに与えられたクエリ範囲設定16の条件が加味され、Xのマッチング範囲はMIN131、MAX137、Yのマッチング範囲はMIN55、MAX61、Zのマッチング範囲はMIN86、MAX92、と設定される。本例では図に示す座標ポイントtの存在するアドレス3の絶対座標が基準座標19の座標マッチ範囲にマッチ(合致)する。
以上の座標変換は全てのアドレス2共通に並列に行われていることに留意されたい、超高速な座標変換が可能になり、しかも効率の良い範囲マッチングが実現できる最大のポイントである。
以上の相対座標による座標の加減算は加減算器で超高速に実限することができる、またMIN、MAX値の演算もこの加減算器で容易に実現することができる。各8bit程度(座標分解能256)の加減算器であれば、複数の加減算器を並列に実装し処理することができる。
またこの第2ならびに第3の手段は、最初に基準値として出力されるアドレス2の最大数に制限するなど、必要最低限のアドレス数とすることも可能であるので、大幅に回路を削減することも可能である。
言うまでもなく、第4の手段を連想メモリ(CAM)手段として、連想メモリとこの装置29を組み合わせて利用することも可能である。
図4で示した通り、以上2回の位置のマッチをマッチ回数カウンタ15でカウントしその結果を読み出すことによりパターンマッチング24が成立したかどうかを判定することが出来る。
本例は説明のために2回のパターンマッチの例を説明したが、パターンマッチの回数は記憶されている座標ポイント数まで繰り返すことが可能である。
マッチ回数の記憶はカウンタに限るものでない。また、本例の座標ポイント1の情報データ3は色の情報で説明したが、大量で複雑なデータ構造をもつ、宇宙空間やタンパク質の分子構造など任意であり判定方法も任意である。
マッチ回数の記憶はカウンタに限るものでない。また、本例の座標ポイント1の情報データ3は色の情報で説明したが、大量で複雑なデータ構造をもつ、宇宙空間やタンパク質の分子構造など任意であり判定方法も任意である。
このアルゴリズムは既知の座標ポイントの情報データ3と情報データの座標4をもとにクエリ条件を与え、未知の配列情報全並列に形状マッチング並びにパターンマッチングをすることが出来るプラットフォームが実現されることを意味するものである。
本方式の座標変換は、アドレスの置き換え(アドレススワップ)アルゴリズムをシフトレジスタで実現した、特許第4588114号情報の絞り込み検出機能を備えたメモリと全く等価の効果をもたらすものであり、これまで検証し積み重ねて来たてきたハードウエアパターンマッチ手法の全て代替えすることができる。
特許第4588114号情報の絞り込み検出機能を備えたメモリは画像情報のように空間情報の全てを記憶する場合のパターンマッチに最適であるが、本方式は3次元空間である宇宙空間やタンパク質、特定物体の頂点や表面など座標ポイント1が比較的少ない情報のマッチングに最適である。
本方式は立体空間におけるパターンマッチに2つの恩恵を与えるものである。その第1は言うまでもなく、マッチング時間そのもの大幅な短縮である。
その第2は、本方式はマッチング座標の範囲を大きく広げてもマッチング時間は一定であることである。通常CPUなどが大きな範囲を持って座標マッチングを行なう場合その範囲に比例してマッチングの時間が長くなる、したがって3次元空間の場合の範囲マッチングは極めて限定された範囲しか利用できない。本アルゴリズムの場合、範囲設定が自由にでき、しかも時間を気にする必要がないので座標位置の曖昧パターンマッチが可能になる。つまり、厳密な位置同志のパターンマッチではなくて、それぞれの曖昧設定に見合った範囲クエリ16の設定を行い座標位置に曖昧性を持たせたパターンマッチが可能になる。例えば回転角XYZをそれぞれ
10度刻みで(粗設定)実施する場合は36×36×36=46,656回
5度刻みで(中設定)実施する場合は72×72×72=373,248回
1度刻みで(高精度)実施する場合は360×360×360=46,655,000回
10度刻みの場合、1度刻みと1000倍の差があることに留意されたい。
10度刻みのようなマッチングでも適正数(通常10ポイント以上)の座標サンプルポイントがあればパターンマッチは保障される。
その第2は、本方式はマッチング座標の範囲を大きく広げてもマッチング時間は一定であることである。通常CPUなどが大きな範囲を持って座標マッチングを行なう場合その範囲に比例してマッチングの時間が長くなる、したがって3次元空間の場合の範囲マッチングは極めて限定された範囲しか利用できない。本アルゴリズムの場合、範囲設定が自由にでき、しかも時間を気にする必要がないので座標位置の曖昧パターンマッチが可能になる。つまり、厳密な位置同志のパターンマッチではなくて、それぞれの曖昧設定に見合った範囲クエリ16の設定を行い座標位置に曖昧性を持たせたパターンマッチが可能になる。例えば回転角XYZをそれぞれ
10度刻みで(粗設定)実施する場合は36×36×36=46,656回
5度刻みで(中設定)実施する場合は72×72×72=373,248回
1度刻みで(高精度)実施する場合は360×360×360=46,655,000回
10度刻みの場合、1度刻みと1000倍の差があることに留意されたい。
10度刻みのようなマッチングでも適正数(通常10ポイント以上)の座標サンプルポイントがあればパターンマッチは保障される。
図6は情報マッチング26を実施する場合のタイムチャートである。例えば、マッチング回数n回を1セットとして回転条件N回を網羅的に実施する場合の例である。図に示すように、マッチング対象27となる情報データ3ならびに絶対座標7を本情報マッチング装置29に転送しておく。
マッチング1は基準座標19となるアドレス2を指定するものであり、第4の手段に外部から与えられた、データクエリ9を指定し該当する情報データ3を検出し、その情報データ3のアドレス2を出力する。第1の手段は第4の手段から出力されたアドレス2を読み込み、該当するアドレス2の絶対座標7を出力する。
第2の手段は、外部から与えられる、座標クエリ10、ならびに範囲クエリ16に基づき座標変換を行うが、マッチング1の場合は、座標クエリ10、ならびにクエリ範囲設定16に条件は与えられないので、第1の手段で出力された絶対座標7は第2の手段の同じアドレス2の検出器で検出されることになる。このマッチ座標は第3の手段のマッチ回数カウンタ(15)に「1」とカウントアップ記憶され基準座標19となる。
マッチング2は同様に、第4の手段に外部から与えられた、データクエリ9を指定し該当する情報データ3を検出し、その情報データ3のアドレス2を出力する。第1の手段は第4の手段から出力されたアドレス2を読み込み、該当するアドレス2の絶対座標7を出力する。第2の手段は、外部から与えられる、座標クエリ10、ならびに範囲クエリ16に基づき座標変換を行い、座標変換された座標に第1の手段で出力された絶対座標7とマッチするものがあるかどうかを検出する。このマッチ座標は第3の手段のマッチ回数カウンタ15に記憶される。この際、マッチした座標が先に指定された基準座標19にマッチすれば意図したマッチ座標と判定してマッチ回数カウンタ15のカウント値は「2」となる。場合によって意図しないマッチ座標であれば基準座標19以外のマッチ回数カウンタ15でカウントされる。
同様なパターンマッチを所定回数n回繰り返えし、第3の手段の基準座標19のマッチ回数カウンタ15のカウント数を読み出すことにより、同一性や類似性を判定することができる。当然のことながら同一物体同志のマッチングであれば、カウント値は1+マッチング回数になる。もし基準座標19が複数あった場合にはカウント値が多いマッチ回数カウンタ15の座標程類似性が高いマッチングがあったと評価できる。
以上の1セットの情報マッチング26を半導体で実現する場合の速度について検討する。最先端技術を使えばより高速な処理が可能になるが、クロック周波数をFPGAでも実現できる100MHZ、1クロックが10n秒程度とした場合第4の手段である情報データ3の検出が連想メモリ(CAM)演算などのように並列処理で高速に実現出来る場合、1回当たりのマッチング時間は100n秒程度で実現することが可能であるので、マッチ回数が100回の場合でも10μ秒程度あれば、1セットのマッチングが可能である。通常のCPUの逐次処理に場合には、一例としてマッチングする座標の範囲を広くすると多くの時間を消費する結果になるように与える設定条件で処理時間が大きく変化するが、本方式の処理速度は与える条件を変えてもいつも一定の処理時間であることも大きな特徴である。
従って回転を考慮する必要がない配列情報の場合1秒間で10万セットの情報マッチングが可能ある。LSI化することにより更に高速化することが可能である。
座標の回転が必要な情報マッチング26についての考え方を示す、図3に示す通り座標ポイント1同士の2点間の距離は座標ポイント1のXYZの相対座標を元に2乗平均平方根をもとめるとともに、これらの距離をもとに、回転が掛かった場合の座標の位置は回転角行列式座標変換して求めることができる。
これらの演算はCPUやGPUが得意であり、CPUやGPUで回転座標変換された相対座標を座標クエリ10として与えれば良い。
これらの演算はCPUやGPUが得意であり、CPUやGPUで回転座標変換された相対座標を座標クエリ10として与えれば良い。
以上のように回転を考慮する必要があれば、図に示すようにXYZ軸それぞれの回転角αβγ条件による回転座標23変換を行った座標クエリ10を与えるよう、先に示した1セット分のマッチングを繰り返し網羅的に実施すれば良い。
本方式の特徴の一つが範囲クエリ16によりマッチング座標の範囲を任意指定することができることである。一般的には座標ポイント同士の距離が離れている場合には、大きな誤差範囲を与え、座標ポイント同士の距離が近い場合には小さな誤算範囲を与えることにより演算誤差や物体の細かな誤差を極めて効率よく吸収することができる。
通常未知の物体のパターンマッチを行うような場合、パターンマッチの可能性があるかどうか、最初の段階では粗いマッチングから徐々に精度の良いマッチングに切り替えるとよい。
10度刻みで実施する場合、46,656回となるので先に示した1セットのマッチング時間が10μ秒の場合465m秒で網羅的なマッチングが実現出来る。5度刻みで実施する場合は373,248回となるので3.7秒で網羅的なマッチングが実現できる。1度刻みで実施する場合は46,655,000回となるので460秒で網羅的なマッチングが実現できる。これらの網羅的なマッチングを行えば必ずどこかの回転角で対象となる形状もしくはパターンは発見できる。当然のことながらパターンや形状がマッチしない場合もある。
もちろん、途中で最良なマッチング回数が検出されれば途中でストップすることが出来る。
もちろん、途中で最良なマッチング回数が検出されれば途中でストップすることが出来る。
以上のようなマッチング処理、情報探しや、座標マッチを効率的に実現するためのメタデータを用意することなくGPUなどの逐次処理プロセッサで行った場合、数万倍程度の時間がかかることに留意されたい。本方式は、情報探しや、座標マッチを効率的に実現するためのメタデータを用意する必要がないことも大きな特徴である、メタデータを作成するための時間が必要ないことも大きな特徴である。
図7は本情報マッチング装置27を使った人の顔認証の概念を示すものである。通常人間の顔の特徴は顔の全体の形状や、目や鼻などの顔のパーツの形状を総体的に判定し特定するものである。従って高精度で判定する場合は3次元空間でのマッチングが最適であるが3次元パターンマッチは多大な演算が必要になので、精度よくするためにサンプリングポイント多数使用するとリアルタイムでの実現が困難である。
図に示すとおり、個人毎の顔の座標ポイント1を必要数作成し、本情報マッチング装置に転送記憶し、比較すべき(クエリ)顔との類似性を評価することができる。一般的な顔照合の場合、ほぼ正面から見た顔の座標ポイント1同士でマッチングできるので1セットのマッチング処理が先に示した10μ秒で一人分の認証評価が実現できる。
顔の回転を含めたマッチングが必要な場合でも、一般的にはXYZ軸それぞれ360度回転させる必要はなく最大±30度程度として、5度刻みとすると、12×12×12=1,728回のマッチングで実現することが出来る。1セットのマッチング処理が先に示した10μ秒である場合17m秒で実現されることになる。
図示はしないが、図4のこの装置29に第5の手段として複数のマッチング対象を記憶するメモリ28を備えマッチング対象27を複数転送して置くことにより、多数の人物との認証評価がリアルタイムで実現できる。言うまでもなく、並列に処理させれば更に高速な処理が実現できる。本例は顔の立体座標ポイント1であるが、2次元画像処理で得られた様々な特徴の形状把握にも利用できる。例えばエッジ情報がどのような形状、たとえば円形であるか、方形であるか、三角形であるか、その組み合わせなどを見極める手段としても利用できる。
本情報マッチング装置29の特徴は速いだけではなく、単純に対象物の絶対座標を取得すれば、複雑な情報マッチングの複雑なアルゴリズムを考えたり、プログラムを組んだりする必要がない、このことは情報処理技術者の負担を大きく軽減する結果になる。
以上のように計算量と計算時間の双方が軽減出来れば、スパコンでしか実現できなかった、タンパク質や宇宙空間の物体同志のパターンマッチが手軽に実現できることを意味する。
本発明の情報マッチング装置29は、従来のフラグシフト型方式のアドレススワップに比較して、メモリリソースや周辺回路素子のリソースを大幅に少なくすることが可能である。従ってFPGAで容易に実現することが出来る、もちろんASIC、ASSPなどの半導体LSIとすることも極めて容易であることが特徴である。
この発明は配列情報とは何か、アドレスは何か、座標とは何かを原点に戻り検証し直し配列情報の形状マッチングやパターンマッチングの座標位置マッチングを加減算演算ハードウエアで解決したものである。
本方式は1次元からN次元空間に配列される情報のマッチング26に共通に利用できる。これまで困難であった、タンパク質の構造解析や3次元物体の特徴、形状の検出、顔の照合、ステレオマッチなど幅広く利用できる。
1.座標ポイント
2.アドレス
3.情報データ
4.情報データの座標
5.座標
6.座標データ
7.絶対座標
8.相対座標
9.データクエリ(情報データの問い合わせ
10.座標クエリ(座標の問い合わせ)
11.情報データ記憶&データ検出器(第4の手段)
12.座標記憶&座標出力器(第1の手段)
13.座標記憶&座標変換&座標検出器(第2の手段)
14.検出結果記憶&出力器(第3の手段)
15.マッチ回数カウンタ
16.範囲クエリ
18.マッチ結果出力
19.基準座標
20.変換座標
21.配列情報
22.相対距離
23.回転座標
24.パターンマッチング
25.形状マッチング
26.情報マッチング
27.マッチング対象
28.複数のマッチング対象情報を記憶するメモリ(第5の手段)
29.情報マッチング装置
2.アドレス
3.情報データ
4.情報データの座標
5.座標
6.座標データ
7.絶対座標
8.相対座標
9.データクエリ(情報データの問い合わせ
10.座標クエリ(座標の問い合わせ)
11.情報データ記憶&データ検出器(第4の手段)
12.座標記憶&座標出力器(第1の手段)
13.座標記憶&座標変換&座標検出器(第2の手段)
14.検出結果記憶&出力器(第3の手段)
15.マッチ回数カウンタ
16.範囲クエリ
18.マッチ結果出力
19.基準座標
20.変換座標
21.配列情報
22.相対距離
23.回転座標
24.パターンマッチング
25.形状マッチング
26.情報マッチング
27.マッチング対象
28.複数のマッチング対象情報を記憶するメモリ(第5の手段)
29.情報マッチング装置
Claims (18)
- 空間上の配列情報をマッチングするための情報マッチング装置であって、
第1の記憶手段、第2の記憶手段及び第3の記憶手段を有し、
第1の記憶手段ならびに第2の記憶手段は、それぞれ、空間上の1又は2以上の配列情報の座標ポイントの存在位置を示す座標データを予め所定のアドレに並列に記憶するものであり、
前記第1の記憶手段は、外部から指定されるアドレスに基づき、そのアドレスに記憶された前記座標データを出力し
前記第2の記憶手段は、外部から与えられる問い合わせ座標データ(座標クエリ)に従ってこの第2の記憶手段の各アドレスに記憶された前記座標データの座標変換を行い、座標変換後の座標データと前記第1の記憶手段により出力された座標データとが合致するアドレスを検出して出力し
第3の記憶手段は、上記第2の記憶手段による検出結果を記憶し外部に出力するものである
ことを特徴とする情報マッチング装置。 - 請求項1記載の情報マッチング装置において、
さらに、第4の記憶手段を有し、
この第4の記憶手段は、前記空間上の1又は2以上の配列情報の座標ポイントに対応する情報データを所定のアドレスに記憶し、外部から与えられる問い合わせ情報データ(データクエリ)に基づき、上記記憶した情報データの中から合致する前記情報データを検出しそのアドレスを出力するものであり、
さらに、
前記第1の記憶手段は、前記第4の記憶手段で検出されたアドレスに対応するアドレスに記憶された前記座標データを出力し
前記第2の記憶手段は、前記座標変換を行うと共に、座標変換された座標データと前記第1の記憶手段により出力された座標データとが合致するアドレスを検出して出力するものである
ことを特徴とする情報マッチング装置。 - 請求項1記載の情報マッチング装置において、
前記配列情報の座標ポイントの存在位置を示す前記座標データは、絶対座標、
前記問い合わせ座標データ(座標クエリ)は相対座標である
ことを特徴とする情報マッチング装置。 - 請求項1記載の情報マッチング装置において、
前記第1の記憶手段、前記第2の記憶手段、前記第3の記憶手段の少なくとも1つは並列処理を行うものである
ことを特徴とする情報マッチング装置。 - 請求項1記載の情報マッチング装置において、
前記第4の記憶手段は、並列処理を行うものである
ことを特徴とする情報マッチング装置。 - 請求項1記載の情報マッチング装置において、
前記第2の記憶手段の座標の相対変換は加減算演算処理によるものである
ことを特徴とする情報マッチング装置。 - 請求項1記載の情報マッチング装置において、
前記第1の記憶手段で出力された前記絶対座標が前記第2の記憶手段で変換された座標に合致するか否かの検出は範囲を指定して検出するものである
ことを特徴とする情報マッチング装置。 - 請求項1記載の情報マッチング装置において、
前記第3の記憶手段の検出された出力の記憶はカウンタである
ことを特徴とする情報マッチング装置。 - 請求項1記載の情報マッチング装置において、
前記第4の記憶手段のデータ検出は
データの一致または不一致
データの範囲一致または範囲不一致
データの類似または非類似
データのカウント
データの多数決
指定する検出手段
以上の組合せの手段
のいずれかでデータ検出されるものである
ことを特徴とする情報マッチング装置。 - 請求項1記載の情報マッチング装置において、
前記第2の記憶手段の座標記憶/出力ならびに前記第3の記憶手段の座標記憶変換/検出の座標は
1次元座標、2次元座標、3次元座標、N次元座標の
いずれかの配列情報で記憶され変換され検出されるものである
ことを特徴とする情報マッチング装置。 - 請求項1記載の情報マッチング装置において、
複数のマッチング対象情報を記憶する第5の記憶手段をさらに備える
ことを特徴とする情報マッチング装置。 - 請求項1記載の情報マッチング装置において、
前記第2ならびに前記第3の記憶段のアドレス数を前記第1の記憶手段のアドレス数より少なく構成した
ことを特徴とする情報マッチング装置。 - 請求項1記載の情報マッチング装置において、
前記配列情報は形状情報として記憶され利用されるものである
ことを特徴とする情報マッチング装置。 - 請求項1記載の情報マッチング装置において、
前記配列情報はパターン情報として記憶され利用されるものである
ことを特徴とする情報マッチング装置。 - 請求項1記載の情報マッチングアルゴリズムを書き込んだLSI。
- 請求項1記載の情報マッチングアルゴリズムを書き込んだFPGA。
- 第1の記憶手段、第2の記憶手段及び第3の記憶手段を有する情報マッチング装置を用いて、空間上の配列情報をマッチングするための方法であって、
第1の記憶手段ならびに第2の記憶手段が、それぞれ、空間上の1又は2以上の配列情報の座標ポイントの存在位置を示す座標データを予め所定のアドレに並列に記憶する工程と、
前記第1の記憶手段が、外部から指定されるアドレスに基づき、そのアドレスに記憶された前記座標データを出力する工程と、
前記第2の記憶手段が、外部から与えられる問い合わせ座標データ(座標クエリ)に従ってこの第2の記憶手段の各アドレスに記憶された前記座標データの座標変換を行い、座標変換後の座標データと前記第1の記憶手段により出力された座標データとが合致するアドレスを検出して出力する工程と、
第3の記憶手段が、上記第2の記憶手段による検出結果を記憶し外部に出力する工程と
を有することを特徴とする情報マッチング方法。 - 請求項17記載の方法において、
前記情報マッチング装置は、さらに第4の記憶手段を有し、
この方法は、さらに、
この第4の記憶手段が、前記空間上の1又は2以上の配列情報の座標ポイントに対応する情報データを所定のアドレスに記憶し、外部から与えられる問い合わせ情報データ(データクエリ)に基づき、上記記憶した情報データの中から合致する前記情報データを検出しそのアドレスを出力する工程と、
前記第1の記憶手段が、前記第4の記憶手段で検出されたアドレスに対応するアドレスに記憶された前記座標データを出力する工程と、
前記第2の記憶手段が、前記座標変換を行うと共に、座標変換された座標データと前記第1の記憶手段により出力された座標データとが合致するアドレスを検出して出力する工程と
を有することを特徴とする方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2016572215A JP6516775B2 (ja) | 2015-01-31 | 2016-02-01 | 情報マッチング装置及びその方法 |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2015018017 | 2015-01-31 | ||
| JP2015-018017 | 2015-01-31 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2016121998A1 true WO2016121998A1 (ja) | 2016-08-04 |
Family
ID=56543600
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2016/052928 Ceased WO2016121998A1 (ja) | 2015-01-31 | 2016-02-01 | 情報マッチング装置及びその方法 |
Country Status (2)
| Country | Link |
|---|---|
| JP (1) | JP6516775B2 (ja) |
| WO (1) | WO2016121998A1 (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN111325333A (zh) * | 2020-03-02 | 2020-06-23 | Oppo广东移动通信有限公司 | 数据处理方法、神经网络处理器、存储介质及电子设备 |
| WO2022186133A1 (ja) | 2021-03-01 | 2022-09-09 | 日本農薬株式会社 | スルホンアミド基を有する縮合複素環化合物又はその塩類及び該化合物若しくはその塩類を含有する農園芸用殺虫剤又は動物用の外部若しくは内部寄生虫防除剤並びにそれらの使用方法 |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH07105690A (ja) * | 1993-10-07 | 1995-04-21 | Nec Corp | 半導体連想メモリ装置 |
| JPH10289591A (ja) * | 1997-04-16 | 1998-10-27 | Nec Corp | 連想検索装置および方法 |
| JP4588114B1 (ja) * | 2010-02-18 | 2010-11-24 | 克己 井上 | 情報絞り込み検出機能を備えたメモリ、その使用方法、このメモリを含む装置。 |
-
2016
- 2016-02-01 WO PCT/JP2016/052928 patent/WO2016121998A1/ja not_active Ceased
- 2016-02-01 JP JP2016572215A patent/JP6516775B2/ja active Active
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH07105690A (ja) * | 1993-10-07 | 1995-04-21 | Nec Corp | 半導体連想メモリ装置 |
| JPH10289591A (ja) * | 1997-04-16 | 1998-10-27 | Nec Corp | 連想検索装置および方法 |
| JP4588114B1 (ja) * | 2010-02-18 | 2010-11-24 | 克己 井上 | 情報絞り込み検出機能を備えたメモリ、その使用方法、このメモリを含む装置。 |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN111325333A (zh) * | 2020-03-02 | 2020-06-23 | Oppo广东移动通信有限公司 | 数据处理方法、神经网络处理器、存储介质及电子设备 |
| WO2022186133A1 (ja) | 2021-03-01 | 2022-09-09 | 日本農薬株式会社 | スルホンアミド基を有する縮合複素環化合物又はその塩類及び該化合物若しくはその塩類を含有する農園芸用殺虫剤又は動物用の外部若しくは内部寄生虫防除剤並びにそれらの使用方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| JP6516775B2 (ja) | 2019-05-22 |
| JPWO2016121998A1 (ja) | 2017-11-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN114677418B (zh) | 一种基于点云特征点提取的配准方法 | |
| Svärm et al. | City-scale localization for cameras with known vertical direction | |
| CN107810522B (zh) | 实时、基于模型的对象检测及姿态估计 | |
| Chen et al. | A local start search algorithm to compute exact Hausdorff Distance for arbitrary point sets | |
| Jiang et al. | Reliable image matching via photometric and geometric constraints structured by Delaunay triangulation | |
| CN114565916B (zh) | 目标检测模型训练方法、目标检测方法以及电子设备 | |
| Shah et al. | Geometry-aware feature matching for structure from motion applications | |
| US20190294455A1 (en) | Computer architecture for emulating a correlithm object processing system that places portions of correlithm objects in a distributed node network | |
| US20250021605A1 (en) | Geometry-based design data search tool | |
| Yi et al. | Survey of structure from motion | |
| CN103970769B (zh) | 图像检索方法及装置 | |
| Peng et al. | FPGA-based parallel hardware architecture for SIFT algorithm | |
| Lin et al. | The shape interaction matrix-based affine invariant mismatch removal for partial-duplicate image search | |
| WO2016121998A1 (ja) | 情報マッチング装置及びその方法 | |
| Rezaei et al. | Deep learning-based 3D local feature descriptor from Mercator projections | |
| Geng et al. | SANet: A novel segmented attention mechanism and multi-level information fusion network for 6D object pose estimation | |
| Nanni et al. | Ensemble of shape descriptors for shape retrieval and classification | |
| Lian et al. | Rotation-invariant nonrigid point set matching in cluttered scenes | |
| CN110945499B (zh) | 应用维度混洗变换的实时三维空间搜索与点云配准的方法与系统 | |
| Shafiq et al. | Accelerating fingerprint identification using FPGA for large-scale applications | |
| Sorokin et al. | A projection local image descriptor | |
| Bhavikatti et al. | Efficient reconfigurable architecture to extract image features for face recognition using local binary pattern | |
| US10762397B1 (en) | Computer architecture for emulating image mapping in a correlithm object processing system | |
| US10896052B2 (en) | Computer architecture for emulating a correlithm object processing system that uses portions of a mapping table in a distributed node network | |
| Liu et al. | A Point Cloud Matching Algorithm Based on Multiscale Point Pair Features |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 16743601 Country of ref document: EP Kind code of ref document: A1 |
|
| ENP | Entry into the national phase |
Ref document number: 2016572215 Country of ref document: JP Kind code of ref document: A |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 16743601 Country of ref document: EP Kind code of ref document: A1 |