WindowsにおけるUVCカメラをとりまく開発のフレームワーク
1.WindowsでUVCカメラをDirectShowデバイスとして動作させる
TheImagingSource社(以下TIS)製USBカメラ(産業用UVCカメラ DFKシリーズ)は、WEBカメラなどと同様にWindows環境でUVCカメラとして使うことができます。
WindowsのOSの環境で一般的なWEBカメラなどのUVCカメラを使う場合は、「ドライバが不要」といわれています。しかし厳密に言うとこれは正しくなく、OSに標準搭載のMicrosoft UVC DriverでUVCカメラは動作しています。すなわちMicrosoft UVC DriverがUVCデバイスに当たることで、MicrosoftOS側からはDirectShowデバイスとして認識されています。
一方で、産業用UVCカメラ DFKシリーズを使いTISのドライバ(TIS WDM Base Driver)をインストールして動作させても、カメラはDirectShowデバイスとしてWindows上に認識させることができます。
もちろん産業用UVCカメラ DFKシリーズはUVCカメラなので、Microsoft UVC Driverでも動作します。
(注意点として、カメラメーカ純正のドライバを使う方が動作安定性やのちに述べるカメラのハードウェア機能をフルに使えるなどメリットがあります。やむを得ない場合を除きTIS WDM Base Driverを使うべきです。)
DirectShowデバイスとして認識させることができれば、OpenCVやHALCON、LabVIEW、Matlabなど各種サードパーティーライブラリでカメラの制御や画像処理を行うことができます。
しかしながら、サードパーティーのソフトウェアはカメラを制御するプログラムに特化していないので、開発が難しかったり、時間がかかったり、カメラの機能をフルに使えない、ハードウェアの動作のサポートをソフトウェアメーカ側で行っていないなど、カメラを開発していく上で様々なハードルがあります。
それを解決するのがICImagingControlです。