AIの画像認識に使えるおすすめWebカメラ(Papalook製Webカメラを試してみた)

2020年2月16日

今日は、AIで画像認識させたいときにどんなWebカメラ使えばいいのか、私のおすすめを紹介していきます。

WebカメラってAmazonとかで探すとすごい種類があるじゃないですか。

でも実際に画像認識に使いたいんだけど、どのWebカメラが良いか迷いますよね。

私が最初に買ったのはこれです。

PythonにOpenCVを入れて、映像をCaptureするプログラムを作って画像認識を始めたのがはじまりでした。今思うと懐かしい。

メーカーは、PAPALOOKっていう所のものみたいです。型式は、PA452 Pro です。

カメラのスペックと価格

サイズ(縦×横×奥行)約900×525×640mm(台座込み)
解像度1920×1080
動画モードMJPG/YUY2
表示フレームレート10~30FPS
インターフェースUSB2.0/1.1
フォーカスマニュアル(レンズ筒を手で回す)
価格3,699円(Amazon:2019年1月9日時点)

このカメラの良い所

  • インターフェースがUSB2.0対応である
  • 表示フレームレートが30FPSまである
  • フォーカスがマニュアルである
  • 価格が安い

大抵のパソコンはUSB2.0なら標準装備していると思います。あと、表示フレームレートが10~30FPSまであり、Captureさせるときの画像サイズによってこの値は変わります。

つまり、画像サイズが大きいとFPSは小さくなり、画像サイズを小さくするとFPSは大きくなります。

ちなみに、FPSとは一秒間に何枚の画像を画面に表示できるかを示したものです。確か640×480ピクセルサイズなら30FPS出せたはずです。

なお、解像度は1920×1080ピクセルまでありますが、リアルタイムでCaptureさせたいとなると、10FPS程度しか出ないと思います。静止画をCaptureしたいなら全然ありですけど。

あと、最近の市販のWebカメラでオートフォーカス機能が付いているものがありますが、画像認識用に使用したいならやめた方が良いです。

オートフォーカスの性能にもよりますが、一眼レフカメラレベルの精度があるなら良いですが、逆に明度や色の影響を受けフォーカスがふらつく場合が多いと思ます。

室内で一定の明度の環境で物体の色味もあまり変わらない等の条件ならオートフォーカスが迷うことも少ないかもしれませんが、市販の数千円のWebカメラでは多分フォーカスがふらふらすると思います。

なので、画像認識に使いたいならマニュアルフォーカスがおすすめです!

画像認識とWebカメラの解像度について

AIの画像認識プログラムを作ったことがある方なら承知のことだと思いますが、解像度を上げることが必ずしも認識精度を上げることにつながる訳ではないということがあります。たまに、Captureする解像度を上げれば認識精度が上がると勘違いしている人がいますが、それは違います。

Deep Learning で画像認識させる際、一般的にはCNN(Convolutional Neural Network、畳み込みニューラルネットワーク)を用いて学習させると思います。学習の際、撮影した画像をある程度のサイズに縮小して学習させるため、HDサイズ(1920×1080ピクセル)でCaputureしようが最終的には300×300ピクセル~512×512ピクセルサイズへ縮小させてしまいます。

つまり、認識させたい物体のサイズは画面サイズに対して相対的にある程度の大きさを持っていることが必要であり、そうでなければ特徴量をうまく抽出できないんです。

この辺は、例えばVGG16の各conv層やpooling層を可視化して見れば分かります。画面サイズに対して物体サイズが小さすぎると、何回も畳み込みを繰り返す中で特徴がなくなってしまうことが確認できます。なので、解像度は900×900ピクセル程度でCaptureしておいて、その中に映る物体の大きさに注意すべきなんです。

ちょっと説明が長くなりましたが、このカメラで画像認識の基礎を勉強させてもらいました。

とても良い買い物だったと思います。

まとめ

AIの画像認識に使用するWebカメラは、以下のスペックを有するものならOKです。

  • インターフォースはUSB2.0
  • マニュアルフォーカス
  • FPSは30FPS以上
  • 解像度はHD必須でない(900×900ピクセル程度で十分)

次回は、私がこのカメラの次に購入したおすすめのWebカメラをご紹介します。

本日もお読みいただき、ありがとうございました。