Pixy cmucam5(以下、Pixy)のレビューを書いた記事です。
IMG_6243 
<特徴>
Pixyの主な特徴は、以下の通りです。
 ・カメラ
  解像度:640 x 400
  フレームレート:50 fps
 ・インターフェース
  UART、SPI、I2C、USB、デジタルorアナログ出力
 ・CPU
  LPC4330FET256(ARM® Coretex®-M4/M0、デュアルコア、204 MHz)
 ・使用アプリケーション
  pixymon(対応OS:macOS、Windows、Linux)
  31(2)
 ・登録可能な色の数
  最大7色までをPixyに登録して、認識させることが可能
 ・ライブラリ
  公式ホームページにArduinoでPixyを使用するためのライブラリがあります。
  また、mbedで使用するために、有志がmbed向けに書かれたライブラリも存在します。
  ・その他
  Pixyは、LEGO EV3でも使用できます。
  また、githubにPixy自体のソースコードもあるので、カスタマイズしてみるのも面白いかもしれませんね。 


<レビュー>
このカメラモジュールは、かなり優秀です。
2053
上の画像を見てもわかるように、黄色とオレンジ、青色とオレンジの区別がはっきりついています。
青色に関しては、背景から光が多く差し込むような環境だと、認識しづらくなることがあります。
ただし、ブライトネス(明るさ)のパラメータを調節することで、見えるようになることもありますが、これは青色の種類によってまちまちです。

下の画像のように赤色をオレンジと誤認識することもあります。
赤みがかったドットが出ている部分(赤丸で囲まれている部分)が、誤認識中の部分です。
20のコピー
また、ノイズとして茶色などオレンジに近い色を誤認識することもあります。
こういった誤認識は、レンジの調節や認識するブロックのサイズを調節することで、ある程度防ぐことができます。
5357

ただし、これだけの処理をやっているので、かなりCPUには負荷がかかっています。
そのため、カメラの下に取り付けられているCPUが多少熱を帯びます。
IMG_6246IMG_6248
電源投入して5分ほどで、約41度まで上昇しています。
ただ、ここから温度が大きく変動することはなかったので、この辺りで落ち着くものなんだと思います。
これまで実戦投入してきた限りでは、こういった熱によって画像認識の結果に差が出たり、スピードが落ちたりしたことはありません。

Pixyは購入時に、本体の10ピンMILコネクタを6ピンMILコネクタ(AVR ICSP配列)に変換するケーブルが付属しているので、これを使ってすぐにArduinoで使い始めることができます。
IMG_6244
でもこのケーブルはリリーフがついてないし、10ピン側に6本しかケーブルが入ってないしで、ロボット(とりわけRCJ競技向け)に搭載する目的での使用はあまりオススメできません・・・
IMG_6249
自分は、10ピンMILコネクタのリリーフの部分までリボンケーブルを10本出してきて、そこから先を6本だけ残して切り落としたものを作ってロボットに搭載しています。

このようにPixyは、1万円弱という価格でかなり高精度な画像認識をすることができます。
かなりオススメです。
(「オススメとか言いながら、こんなモジュールをみんな使っちゃったらあんま面白くないなー」ってのは心の声ですすみませんw)
Pixyは米Amazon(amazon.com)のほか、今は別のショップでも販売しているようです。

今回はここまでです。
あと2回くらいに分けて、Pixyの設定方法とPixyと各種マイコンとの接続&読み出し方法について書きたいと思います。
(今日中に全部できるといいなぁ)