Mac対応のWebカメラはなかなかなく,見つけても高価な事が多々あります.そこでMacに対応していないwebカメラをどうにかMacで使えない物かと思いました.
LogitechのWebカメラの場合,Macに対応していない安価なものでも,Macに対応しているカメラに対するドライバをインストールすることで認識されるようになるものが多いようです.
ただし,その場合ホワイトバランスの調整ができていないのか,画面が真っ白になって使い物にならない事があります.このときは macam (http://webcam-osx.sourceforge.net/) というアプリケーションで調整し,設定を保存することができました.
OpenCVでカメラから画像を取り込む場合,次の関数を用います.
> CVAPI(CvCapture*) cvCaptureFromCAM( int index );
このとき,indexの値を変えることで複数のカメラを選択できるはずなのですが,私のMacbookでは常にiSightが認識され,USBカメラを認識させることができませんでした.そこで,実際のソースの中で,
> CvCapture *cap = NULL;
> cap = cvCaptureFromCAM(0);
> cap = cvCaptureFromCAM(1);
のようにすることで,強引に認識されるようにしました.
一度目にiSightを認識し,二度目でUSBカメラを認識します.
> cvReleaseCapture(&cap);
と解放するまで,iSightの緑のランプはついたままになりますが,
実際にキャプチャするのはUSBカメラのみなので,(たぶん)計算の負担にはなりません.
もっとスマートな方法があればよいのですが...
