ケイエルブイは、ハイパースペクトルカメラ・光学部品・光源など世界中の光学機器を取り扱う専門商社です。

03-3258-1238

お問い合わせ
KLV大学 マシンビジョンコース

ドライバー不要 UVCカメラとは

産業用カメラにも様々な種類がありますが、USBを挿すだけで簡単に使用できる産業用のUVCカメラが注目を集めています。UVCとは何なのか、UVCカメラはなぜドライバーが不要でどのようなメリットがあるのかを紹介いたします。

usb-plug.jpg

UVCカメラはなぜドライバーが不要なのか

通常、カメラに限らずUSBで周辺機器を使用するにはドライバーが必要になります。
ドライバーとは周辺機器をWindowsやMacOSなどのOSで制御するためのプログラムで、基本的には周辺機器側から提供されます。 従来は、周辺機器にドライバーが付属しており、ユーザーがドライバーをインストールする必要がありましたが、最近では、PnP(Plug and Play)という機能で、周辺機器をパソコンにUSBで接続した際に、ドライバーが自動的にインストールされることが多くなりました。このように、ユーザーがドライバーの存在を意識する場面は減っているかと思いますが、通常は周辺機器毎にドライバーが必要で、ドライバーが正しくインストールされないと周辺機器が正しく認識されないという問題が発生します。

一方、UVCカメラは上述したような周辺機器側のドライバーが必要ありません。
これは、カメラとパソコンの間の通信が規格化されていて、OS(システム)側がその規格にそったドライバーを提供しているからです。この規格をUVC(USB Video Class)と呼んでおり、USBの規格団体がその規格を決めています。

uvc-driver.png

UVCカメラのメリット・デメリット

このように、ドライバーの必要がないUVCカメラですが、それによるメリットデメリットがありますので、紹介したいと思います。

メリット

共通規格を使用すると、すでに用意されている資源が活用できるため、開発費を低く抑えることが可能になります。自社で大掛かりなシステムなどを使用しない場合には、UVCカメラが有力な候補になります。

・プログラムへの組み込みが容易

OS共通のドライバーを使用するので、プログラム側にもSDKの組み込みなど特殊な処理が必要ありません。よって、OpenCVなど画像処理関連ライブラリのコマンドを用いて容易に画像を取得、処理することが可能です。

例えば、OpenCVを用いて、簡単に画像の取得、カメラの設定の調整、顔認識やバーコード読み込みなどを簡単に実施することが可能です。 詳しくは以下のリンクを参照ください。

・既存のソフトやアプリが使用できる

UVCカメラを想定して作成されているソフトやタブレット用のアプリが多く存在するため、そのようなソフトをそのまま使用することが可能です。

デメリット

一方で、あらかじめ決められた規格に則ったI/F(インターフェース)しか実現できないため、カメラ独自で新しい機能等を実現することが基本的にはできません。主な点としては以下のようなものが挙げられます。

・圧縮形式や設定項目が限定される

規格でサポートしている項目に関しては、後述する「UVCの規格の詳細」を参照ください。
ここで注意したいのは、これらは、定義できる規格であり、各カメラがどの項目に対応しているかはカメラ毎に確認が必要です。

・複数のカメラを使用する際に、カメラ番号が固定できない。

UVCカメラは、カメラを認識した順に、カメラに番号が割り振られます。複数のUVCカメラを接続した状態でPCを起動すると、毎回各カメラのカメラ番号が変わるため、カメラ番号を固定するための工夫が必要になります。

UVCカメラの規格の詳細

UVCの規格には、"1.0" ,"1.1", "1.5"の3つのバージョンが存在します。それぞれの規格は、USBの規格団体によって細かく決められており、USBのDocument Libraryで詳細を確認することが可能です。 https://www.usb.org/documents

上記で入手できる資料では、”1.5”で使用できる圧縮形式や設定できる項目は以下のように定義されています。
特に設定に関しては多くの項目が定義されており、よほど特殊な使い方でなければUVCの規格の中で実現できることがわかります。

・対応する主な圧縮形式
  • フレームベース:Motion-Jpeg、DV、非圧縮
  • ストリームベース:MPEG2TS、MPEG2PS、MPEG1
  • エンコード形式:H.264, VP8
・設定できる主な項目
ユニット関連 制御ユニット関連 エンコードユニット関連
スキャンモード バックライト 制御モード
自動露光制御(ON/OFF) ブライトネス レイヤー選択
自動露光制御(優先度) コントラスト 解像度
露光時間 自動コントラスト 最小フレーム間隔
フォーカス ゲイン スライスモード
自動フォーカス(ON/OFF) 電源周波数 レートコントロール
絞り 色相 平均ビットレート
ズーム 自動色相 CPBサイズ
チルト 彩度 最大ビットレート
ロール シャープネス 量子化パラメータ
ガンマ シンクロコントロール
ホワイトバランス
自動ホワイトバランス

※詳細は仕様書をご確認ください。

また、1.5に関してはWindows7に対応していないなど、制限もあるためUVCのドライバを提供しているWindows側の情報も十分に確認する必要があります。
https://docs.microsoft.com/ja-jp/windows-hardware/drivers/stream/usb-video-class-driver-overview

UVCカメラのまとめ

UVCカメラはUSBの規格団体が決めた仕様に則ることで、OS側が提供する共通ドライバーで動かすことができる便利なカメラです。
共通のドライバーを使用することで、プログラムの作成負荷が減り導入しやすいという特徴がありますので、導入の工数やコストをなるべく低く抑えたいという方におすすめの選択肢です。

用語集

マシンビジョンコース

ご質問・ご相談お気軽にお問い合せください

お電話でのお問合せ 03-3258-1238 受付時間 平日9:00-18:00(土日祝日除く)
Webでのお問い合わせ