デジタルカメラ基礎

概要

工業用デジタルカメラは、高精細、高フレームレート、大きい画像サイズ、カメラ属性のプログラム的な変更機能などの長所があり、マシンビジョンシステムで多く使用されるようになりました。このドキュメントには、デジタルカメラの基本概念、およびIMAQハードウェアとソフトウェアとの通信方法が記載されています。

内容

構造

デジタルカメラから出力されるデジタル信号の3つの重要な要素は、データライン、ピクセルクロック、有効ラインです。

  • データラインはピクセル値に対応するデジタル信号を伝送する信号線です。通常、デジタルカメラは、8ビット、10ビット、12ビット、14ビットで1ピクセルを表します。したがって、1ピクセルを表すために8、10、12、14デジタルラインが必要です。ピクセルごとのライン数はピクセル深度として参照されます。すべての画像データは、同時に画像集録デバイスの各ラインに転送され、絶えずトグルアップ・トグルダウンします。

  • ピクセルクロックは、データラインに有効データがあるタイミングを決定する高周波数のパルス列です。ピクセルクロックのアクティブエッジ(立ち上がりエッジまたは立ち下りエッジ)では、すべてのデジタルラインにデータでラッチする画像集録デバイスに入力される定数があります。データは、ピクセルクロックにおいて次のアクティブエッジの前に次のピクセル値に変更されるので、次のピクセル値は画像集録デバイスにラッチされます。ピクセルクロック周波数は、集録するピクセルレートを決定します。

  • 有効ラインは、画像でのピクセル位置を決定するために使用されます。H-Enable(HSYNCまたはライン有効信号とも呼ばれます)は、ピクセルの行全体が入力している間はアクティブです。H-Enableは、ピクセル行の最後で、次のピクセル行の始まりが開始するまで無効になります。対となる信号のV-Enable(VSYNCまたはフレーム有効信号とも呼ばれます)は、フレーム全体の間はアクティブです。1フレームが完了すると、信号は次のフレームの始まりまで無効になります。
    有効信号は、HIGHアクティブまたはLOWアクティブのどちらかになります。カメラの有効ラインの一部は、レベルに対する感度ではなく、エッジに対する感度が高くなります。これは、レベルよりもタイミング信号の立ち上がりエッジが使用されていることを示します。ナショナルインスツルメンツのIMAQ画像集録デバイスは、レベル感度の高い有効ラインとエッジ感度の高いピクセルクロックで動作するように設計されています。

デジタルカメラの多くは画像集録にCCD(Charge Coupled Device)センサを使用しています。CCDは、シャッターが開いて電荷が増えている間、光量子を吸収する数千の小さいセンサで構成されています。カメラで写真を撮る場合、CCD素子を放電し、電圧をカメラのデジタルデータに変換します。CCD素子は、ピクセルに対応する各素子で長方形またはラインを形成します。
そのため、カメラの種類には、ラインスキャンとエリアスキャンの2種類があります。

ラインスキャンカメラでは、CCD素子が一列に並んでいるものです。ラインが1つしかないため、ラインスキャンカメラはH-Enable信号のみを必要とします。

エリアスキャンカメラは、一般的なカメラと同様にCCDが長方形で定義された幅と高さでフレームを形成し、フレーム構築にH-Enable信号とV-Enable信号の両方を使用します。

以下の図は、ラインスキャンカメラとエリアスキャンカメラの有効信号とピクセルクロック信号を示します。この図のデータラインは、ピクセルクロックの各アクティブエッジ間で変更する可能性があることに注目してください。H-Enable信号とV-Enable信号がアクティブな場合に、ピクセルクロックのアクティブエッジ間でライン上のデータが画像集録デバイスにラッチされます。


図1. ラインスキャンカメラ ― ピクセルクロックの立ち下りエッジ上の有効データ付き


図2. エリアスキャンカメラ ― 12 x 4 (12ピクセル/ラインおよび4ライン/フレーム)

タップ数

デジタルカメラのピクセルクロック速度を上げる、または一度に1ピクセルよりも多くのピクセルを集録すると、カメラの集録速度を著しく上げられます。ピクセルクロックのアクティブエッジ間に1ピクセルのみをラッチするカメラは、単一タップカメラとして知られています。 タップまたはチャンネルは、1ピクセルごとに生じるデータラインのグループとして定義されます。カメラの中には、ピクセルクロックの同じアクティブエッジで異なるデータライン上に複数のピクセルをラッチできるものがあります。これらのカメラは複数タップカメラと呼ばれ、デジタルカメラは4タップで使用可能です。これらの技術はより多くのラインが必要ですが、より高速な転送が可能です。

NI 1422シリーズデバイスは16デジタルライン、NI 1424シリーズデバイスは32デジタルラインが特徴です。したがって、NI 1422デバイスは1つの16ビットタップまたは2つの8ビットタップでカメラをサポートでき、NI 1424デバイスは1つの32ビットタップ、2つの16ビットタップ、4つの8ビットタップを処理できます。画像集録デバイスは8ビットの倍数になるタップを要求するので、カメラに10ビット/ピクセルのみがある場合でも、16ビットのタップを要求し、データを処理して上位6ビットを無視します。

複数タップカメラのデータを格納するために、複数の異なる構成があります。単一タップカメラは、左上ピクセルで始まるデータを格納し、次のラインに移動する前に右に移動します。そのフレームに対して最後のラインが完了するまで、この方法を継続します。次に、カメラは次のフレームの上部でピクセルの集録を開始します。以下の図は、複数タップカメラにより使用される格納の構成をそれぞれ示します。


図3. タップ図

カメラ通信

多くの場合、デジタルカメラはシリアルコマンドまたは制御信号を介して機能を変更することができます。Measurement & Automation Explorer(MAX)で該当カメラを右クリックし、プロパティを選択して上級タブをクリックすると、カメラ属性を変更できます。このタブでご使用のカメラのプロパティのすべてを表示して変更することができます。また、「imgSetCameraAttributeString」関数または「IMAQ Set Camera Attribute」VIを使用し、プログラム的にこれらのプロパティにアクセスすることもできます。

メモ: カメラプロパティを設定する場合、スペルが正しいかどうかと属性の順番を確認してください。常に、より高レベルの属性を最初に設定してください。以下のダイアグラムはより高いレベルの属性を最初に設定する方法を示します。(例: パルス幅の変更前にシャッター制御器とシャッタースピードを正しい設定にします。

シリアルコマンド

デジタルカメラは、シリアルコマンドまたは制御パルスのどちらかを使用して制御されています。これらのメソッドは同じVIまたは関数の呼び出しを使用します。NI-IMAQとご使用のカメラのカメラファイルは、シリアルコマンドと制御パルスを管理します。IMAQ 1422および1424シリアルデバイスは、デジタルカメラを使用したシリアル通信用に設計されたUARTチップを特徴としています。カメラ属性関数で呼び出された高レベルコマンドにより、低レベルコマンドの明示的な知識なしでこれらのプロパティを設定できます。また、カメラファイルはシリアルコマンドと制御パルスを定義しています。

制御パルス

カメラを制御するもう一つの方法は、デジタル制御パルスを送信することです。一般的には、露光時間が制御信号で制御されています。カメラによっては、シャッターを開く前に信号が立ち上がりエッジがあり、シャッターは信号が立ち下がりエッジになるまで開いたままになることがあります。立ち下がりエッジが発生するとすぐに、シャッターが閉じて、カメラは画像集録デバイスにデジタルデータの転送を開始します。制御パルスの周波数はフレームレートを決定し、制御パルスの長さはシャッター時間を決定します。

メモ: シリアルコマンド、制御パルス、またはその両方で、シャッターを設定できます。カメラでどのメソッドを使用するかに関する詳細については、ご使用のカメラのドキュメントを参照してください。

画像変更

プロパティによっては画像のフォーマットを変更することができます。ただし、これらの変更はタイムアウトエラーを引き起こす場合があります。たとえば、1000 x 1000画像を作成し、画像サイズを500 x 500に変更する属性を使用した場合、NI-IMAQは1000 x 1000画像を引き続き検索するため、結果的にエラーメッセージが発生します。

画像サイズを変更する一般的なサンプルは、ビニング属性です。ビニング は、連続する2つのピクセルを組み合わせて、単一ピクセル値にして解像度を下げ、なめらかな画像を作成するメソッドです。この属性は画像に影響するため、ウィンドウが適切に縮小されているかどうか確認する必要があります。適切であれば、縮小された画像サイズでエラーが発生しません。カメラ属性関数がシリアルコマンドや制御パルスを送信して属性変更のNI-IMAQを通知する間、集録サイズを変更し続ける必要があります。

カメラファイル

カメラファイルは、NI-IMAQでカメラがピクセルを構成する方法、カメラがサポートする属性の種類、属性の変更方法、シリアルコマンドと制御パルスのどちらを使用するかという内容が記述されているファイルです。

サポートするデータとモードのフォーマット方法などすべてのデジタルカメラに対応できるように、NI-IMAQはデータの受信方法、および集録のモードや属性の変更にカメラに送信するシリアルコマンドと制御パルスの種類を指定するカメラファイルを必要とします。ご使用のカメラに使用できるデジタルカメラファイルがあるかどうかを確認するには、カメラアドバイザを確認してください。カメラがリストにない場合は、NI Camera File Generatorで独自のカスタムカメラファイルを作成する必要があります。詳しくは NI Camera File Generatorを参照してください。

信号タイプ

デジタルカメラには、画像データを画像集録デバイス送信する4種類の信号タイプがあります。

  • TTLは、0 - 5 Vのシングルエンド信号です。転送距離は約2 mまでで、信号の電圧振幅が大きいため20 MHz以上のピクセルクロックは利用できません。これらの制限のため、デジタルカメラの信号タイプとしてTTL信号は一般ではありません。

  • RS-422は、転送距離が約6~8 mまで利用できる差動信号です。ピクセルクロックについては、最大20 MHzの制限があります。このタイプの信号は、通常、20 MHz以上のピクセルクロックを必要としないデジタルカメラに使用されています。

  • LVDS (低電圧差動信号)は、より低い電圧振幅を使用した差動信号です。転送距離は約6~8 mまでで、20 MHz周波数以上の高い信号が扱えます。より高速なピクセルクロックを必要とするカメラはLVDS信号を使用しています。

  • カメラリンクは、パラレル通信の代わりにシリアル通信を採用したデジタル規格です。すべてのビットは、カメラのオンボードコンバータを介して渡され、シングルラインにデータのすべてを配置します。これにより、デバイスはコンバータを介してこのシングルラインを送り戻し、データをカメラに返します。この規格により、より細いケーブルと共通コネクタの使用ができるようになります。カメラリンク規格は、20 MHz以上のピクセルクロックに対応し、最大10 mまで転送可能です。カメラリンクの有効ラインは、LVDS信号を使用します。カメラリンクケーブルは各カメラリンク対応の画像集録デバイスに互換性があるため、特注ケーブルを必要とせず、コスト削減につながります。


以下の表は、4つのデジタルフォーマットをサポートしているボードです。

メモ: IMAQ 1424と1422シリーズデバイスはそれぞれRS-422とLVDSバージョンがあります。

NI PCI/PXI-1422
RS-422版 製品番号: 777959-01
LVDS版 製品番号: 777959-02

NI PCI/PXI-1424
RS-422/TTL版 製品番号: 777662-01
LVDS/TTL版 製品番号: 777662-02

IMAQ PCI-1428
カメラリンク 製品番号: 777315-01

Was this information helpful?

Yes

No