RaspberryPi Zero とOpenCV


これも調査中の記事。

[ラズパイの決定版「Raspberry Pi Zero W」がついに技適通過
メーカーズに人気のスイッチサイエンスでも販売開始](http://iottoday.jp/articles/-/7922)



[5ドルのラズパイ、本格普及に向けて国内取り扱い開始
Raspberry Pi Zero、702円で販売](http://ascii.jp/elem/000/001/438/1438920/)
となり、いよいよ入手しやすくなりました。

[Raspberry Pi Zero用モータコントローラ拡張ボード「ZeroBorg」](https://fabcross.jp/news/2016/03/20160308_piborg_zeroborg.html)
も出てきています。


###**Installing OpenCV on your Raspberry Pi Zero**
http://www.pyimagesearch.com/2015/12/14/installing-opencv-on-your-raspberry-pi-zero/

この記事によると
OpenCV-Pythonをインストールしている。
OpenCVはソースコードからインストールしている。
CMakeをコマンドラインで動作させている。
make
にほぼ10時間要している。

###**5ドルのコンピュータ「Raspberry Pi Zero」初期設定とベンチマーク (1/3)**
http://monoist.atmarkit.co.jp/mn/articles/1512/07/news062.html

たった5ドルの超小型コンピュータ「Raspberry Pi Zero」登場
価格を5ドル（約610円）にまで下げた超小型コンピュータ「Raspberry Pi Zero」が登場した。
http://www.itmedia.co.jp/news/articles/1511/26/news117.html

>1GHz動作のARM11コアによるBroadcom BCM2835、512Mバイトメモリ、microSDメモリーカードスロット、mini-HDMIポート、microUSBポート、拡張端子などを搭載。サイズは65×30×5ミリと、Raspberry Piとしては最小だ。

紹介されている　図には 40 Pin Unpopulated GPIO Headerがあります。


###**洋書 [Raspberry Pi Computer Vision Programming](http://shop.oreilly.com/product/9781784398286.do)**
![洋書](http://akamaicovers.oreilly.com/images/9781784398286/cat.gif)

は通常のRaspberryPiを想定して書かれているもの。
目次を見ていただければわかるように、
OpenCV-Python　の枠組みでComputer Visionを紹介しているものです。
他の本などでOpenCV-Pythonを既に習得している人には、ありがたみが薄いでしょうし、
OpenCV-Pythonの枠組みに不慣れであって、英語を苦にしない人にはお勧めかもしれません。

###**洋書 [Learning Raspberry Pi Samarth Shah](https://www.packtpub.com/hardware-and-creative/learning-raspberry-pi)**
![洋書](https://dz13w8afd47il.cloudfront.net/sites/default/files/imagecache/ppv4_main_book_cover/2820OS.jpg)
あるいは[アマゾンのリンク先](http://www.amazon.co.jp/Learning-Raspberry-Pi-Samarth-Shah/dp/1783982829/ref=sr_1_1?s=english-books&ie=UTF8&qid=1451137049&sr=1-1)
はGPIOの使い方や、OpenCV-Pythonの使い方を記述している。オブジェクト検出（顔検出・目検出）、オブジェクト追跡などのページも目次に見える。
これらが、どの程度RaspberryPi Zeroのリソースで動くかは、ぜひ試してみたいところだ。



画像認識技術ができあがったときに、そのアプリケーションは必ずしも、コンソール入力を必要とするとは限らないものですし、結果をディスプレイに表示しなければならないわけでもないのです。できあがったときの構成には、キーボードレス、ディスプレイレスとしてもかまいません。もちろん開発中は、USBハブをもちいて、USBキーボードやマウスを接続し、結果をHDMIに表示させるうえで、なんの不自由もなさそうです。


私が想定する使い方
・OpenCV-Pythonを軸にアルゴリズムを開発する。（WindowsPCでも可）
・RaspberryPi2[(販売先の１つ)](http://jp.rs-online.com/web/p/processor-microcontroller-development-kits/8326274/)でのGPIOやUSB-serialやその他の方法でのIOでアプリケーションを開発する。
・その後、同じGPIOを利用して、RaspberryPi Zeroで動きやすいように作る。
・RaspberryPi Zeroで動かす。


###**関連情報:ARMボードでのOpenCV**
####Armadillo

[Howto : Armadillo-810でOpenCVを用いた画像処理](http://armadillo.atmark-techno.com/howto/armadillo-810-opencv)

[Armadillo-800](http://armadillo.atmark-techno.com/products#a800)

####Zynq
 OpenCVの関数をFPGAの回路で高速化させることは、Altera, Xilinxの両社のFPGAで可能になっています。ボトルネックになっているOpenCVの関数が両社が提供しているOpenCV互換のFPGAデザインに置き換えることで高速化が図れます。ARM系のCPUと標準化されたバスのデザインが利用できるので、回路化をFPGA単独で検討していたときよりもはるかに楽をすることができます。以下の資料をみると、VerilogHDL をまったく知らなくても、既にFPGAベンダが作成済みのOpenCV互換の関数を利用できることがわかります。

[Vivado HLS ビデオライブラリを使用して Zynq で OpenCV アプリケーションを高速化]
http://japan.xilinx.com/support/documentation/application_notes/j_xapp1167.pdf

Vivado での OpenCV および高位合成の使用 (日本語吹替)
http://japan.xilinx.com/training/vivado/leveraging-opencv-and-high-level-synthesis-with-vivado.htm


---------------
Raspberry Pi Zeroが小型で軽量で消費電力が少なく演算能力も高いから、
Droneとの相性がよいらしい。

以下のような記事を見つけた。


How to build a $200 smart drone with the Pi Zero
http://www.zdnet.com/article/how-to-build-a-200-smart-drone-with-the-pi-zero/


A Raspberry Pi Zero drone
https://www.youtube.com/watch?v=LWwkB6hGD4M


Strapping on a Raspberry Pi Zero to a drone!
http://www.recantha.co.uk/blog/?p=14978


無線はGW-450D2(無線LANドングル)を使うことで対処できる。
Raspberry Pi ZEROでGW-450D2(無線LANドングル)を使う


----------------------
参考記事
OpenCV 備忘録 [Raspberry Pi 2 で OpenCV 3.1.0 + contrib 3.1.0 をビルドした]
(http://iwaki2009.blogspot.jp/2015/12/raspberry-pi-2-opencv-310-contrib-310.html)


[Raspberry Pi Zero (W) 事始め HW入手からSSH、ブラウザ環境](http://qiita.com/hidenorly/items/142590ff594b6e083092)

[Raspberry Pi (Zero (W)) 上で OpenCV を動かして USB Camera からの画像をJPEG保存してみる](http://qiita.com/hidenorly/items/864e25be64b41b53d0ef)