簡単にまとめると、256bit未満の数値の並びに表現できるものならば、何でも識別処理できるチップ ということも出来ます。非線形識別器をソフトウェアでシミュレートしても同じ結果が得られますが、 こちらは完全に同期した並列計算が出来るので「速い」のがアドバンテージとの事です。
チップのリファレンスマニュアルが英語版しかなくて、書き方が原理的/一般的で「なんだか難しい」 と言うのがはじめの印象でしたが、「自分のロボットの視覚用として使う」という様に用途をはっきり させれば話は非常に簡単で、カメラから取り込んだ画像の識別したい部分を16×16ピクセルのイメージとして 切り出して、あらかじめチップにカテゴリー番号と一緒に覚えさせておくと、後に入力した16×16ピクセルのイメージ に対して、近いカテゴリー番号を返してくるというだけでした。
このページを書いている時点では、Webで「ロボットに積んでみた」みたいな情報を見かけなかった ことと、実際使ってみて応用の幅が広いので、いろいろな用途に使われるところを見てみたいと思い、 私が試した結果でだいたいどんな物か伝えられればと考えて書いてみました。
一般的なケータイ電話内蔵のカメラと同じく、画像など識別対象データ入力のパラレル8bit のバスと制御用のI2Cバスが付いています。I2Cバス経由でのデータ入出力も可能です。
今回私はI2Cバスだけ使って試してみましたが、主にC−MOSカメラ、画像処理用FPGA、 制御用マイコン、CogniMemのセットで機器に組み込んで使うような用途を想定した設計のようです。
I2Cバスというものを使ったことが無かったので、Webで比較的情報が多く、キット自体の 入手も容易な秋月のRTC-8564NBキットで練習してからCogniMemとのインターフェイスソフトを 作り始めたのでRTC-8564NBも載っています。CogniMemとは特に関係ありません。
CogniMemを使うにあたってはGeneral Vision製のCM-PM1Kという評価用の基板を利用しました。 立てた形で載っている基板がCM-PM1Kです。回路図を見ても分かるとおり、今回はパラレルバス は使わず、I2Cバスのみの利用のため至って簡単です。
ソフトウェア構成図中、点線で囲われた文字がソフトウェアの名前です。3個のソフトウェア から構成されています。
ダウンロード(2010/03/28版)
ダウンロード(2010/03/28版)