プログラミングサンプル

ここでは、IDS 産業用カメラをすばやく簡単に統合するための、プログラミング例を紹介します。サンプルは英語で記述されていますので、ご了承ください。

プログラミング例のダウンロードには、登録またはログインが必要です。IDS Web サイトの登録は無料で、多数の便利な機能が追加され、弊社製品についての詳細な情報にアクセスできます。

個人データの保存と処理について、弊社ではお客様のプライバシー保護は非常に重要であると捉えています。登録用にお客様から収集したデータが第三者に転送されることはありません。お客様の詳細情報は、弊社固有の情報として、最適なサービスを提供するためにのみ使用されます。

C/C++ で記述した uEye 画像キューによる画像撮影

C/C++ で記述した uEye 画像キューによる画像撮影

このサンプルでは、フレームを損失せずに連続して画像を撮影する方法の基本的アイデアを示しています。3 つ以上のバッファーを持つリング型画像バッファーが使用されます。これらのバッファーは画像キューに格納されます。撮影した画像は、バッファーシステムに格納されます。画像キューを使用すると、最も古いバッファーが常に取得されます。画像バッファーは自動的にロックされます。画像データが正常に処理されると、バッファーのロックは解除され、キューに戻されて再利用されます。

画像バッファーの回収はデタッチされたスレッドで実行されます。このスレッドは GUI インターフェースに依存せず、中断されずに画像を収集できます。

.NET C# で記述した uEye 画像キューによる画像撮影

.NET C# で記述した uEye 画像キューによる画像撮影

このサンプルでは、uEye 画像キューを使用して連続して画像を撮影する方法の基本的アイデアを示しています。1 秒のビデオの撮影に、リング型画像バッファーが使用されます。

画像キューを使用すると、最も古いバッファーが常に取得されます。画像バッファーは自動的にロックされます。画像データが正常に処理されると、バッファーのロックは解除され、キューに戻されて再利用されます。

画像バッファーの回収はデタッチされたワーカースレッドで実行されます。このスレッドは GUI インターフェースに依存せず、中断されずに画像を収集できます。

ソフトウェア側でのクロップ操作 (C/C++)

ソフトウェア側でのクロップ操作 (C/C++)

このサンプルは、uEyeImageQueue デモをベースにしています。画像キュースレッドの処理部分では、別のタイプのクロップ操作を実行できます。すべての操作は、ホストで受信された画像に基づいてデジタルで実行されます。クロップ操作は、カメラセンサーでは実行されません。

センサー上のハードウェアクロップ機能とは異なり、ソフトウェアソリューションでは奇数のスケーリング係数も使用できます。

デモでは、C/C++ ポインター操作を使用して画像データにアクセスして処理する方法を示します。さまざまなクロップ操作の結果を視覚化して、簡単に比較できます。

GigE uEye カメラ向けマルチキャストモード

このプログラミングサンプルでは、IDS GigE uEye カメラのマルチキャストモードを構成し、マルチキャスト機能をクライアントとして使用する方法を示します。

初期化とメモリ管理の他に、このソースコード例では、is_GetSensorInfo()、is_DeviceInfo()、is_Multicast() という、uEye のメイン API 関数が使用されています。

uEye .NET C# - マスターカメラとスレーブカメラによる GPIO

uEye .NET C# - マスターカメラとスレーブカメラによる GPIO

このサンプルでは、マスターカメラの PWM (パルス幅変調) 出力を使用して、2 台のカメラによる画像撮影を同期させる方法を示しています。両方のカメラ (マスターとスレーブ) はハードウェアトリガーモード (立ち上がりエッジ) で実行され、トリガー入力として GPIO 1 のトリガー信号を待機します。トリガー信号はマスターカメラの GPIO 2 の PWM 出力で生成されます。

これによって、両方のカメラの画像撮影が同時に実行されます。

uEye .NET C# - 画像シーケンス

uEye .NET C# - 画像シーケンス

このサンプルは、DIB モードで画像を撮影し、画像バッファーのシーケンスに取り込む方法を示しています。シーケンスには 10 個のバッファーがあります。サンプルでは、バッファーを割り当ててアクティブに設定し、シーケンスに追加する方法を示しています。

この他に、シーケンス ID のリストを読み出し、メモリ ID に変換してこれらのバッファーを読み出す (10 個のうち 5 個) 方法を示しています。

uEye .NET C# - ビットマップ画像上のテキスト

uEye .NET C# - ビットマップ画像上のテキスト

このサンプルでは、DIB モードで画像を撮影して以前定義した画像メモリからビットマップに画像を変換する方法、別のビットマップにコピーする方法、テキストとビットマップを画像に描画する方法を示しています。これは .NET System.Drawing.Graphics class を使用して実行されます。