サンプルプログラム
eGrabberのサンプルプログラムは、という専用のパッケージで提供されます。名前に含まれるはオペレーティングシステム(、、または)で、はパッegrabber-<OS>-sample-programs-<MA.MI.RE.BU>.<EXT>egrabber-<OS>-sample-programs-<MA.MI.RE.BU>.<EXT>egrabber-<OS>-sample-programs-<MA.MI.RE.BU>.<EXT>egrabber-<OS>-sample-programs-<MA.MI.RE.BU>.<EXT>egrabber-<OS>-sample-programs-<MA.MI.RE.BU>.<EXT>egrabber-<OS>-sample-programs-<MA.MI.RE.BU>.<EXT>
これらのサンプルプログラムは、デフォルトでCoaxlinkを使用しています。Gigelinkで使用するには、次のいずれかを行います。
● | 環境にEURESYS_DEFAULT_GENTL_PRODUCER=gigelinkを定義する。 |
● | Gigelink()をEGenTL コンストラクタに渡す。 |
サンプルプログラム | 説明 | 言語 | OS |
---|---|---|---|
cpp/egrabber
|
eGrabberのコードスニペット集 | C++ | Windows、Linux、macOS |
cpp/live
|
画像の取り込みと表示を示すWin32アプリケーション | C++ | Windows |
cpp/egrabber-mfc
|
画像の取り込みと表示を示すMFCアプリケーション | C++ | Windows |
cpp/amdDirectGMA
|
画像の取り込み、AMD GPUメモリへの直接転送、表示を示すOpenGLアプリケーション | C++ | Windows |
cpp/nvidia/egrabber-cuda
|
eGrabberを使用した画像の取り込みと、Nvidia GPUでCUDAを使用した処理を示すOpenGLコンソールアプリケーション | C++ | Windows、Linux |
cpp/ffcWizard
|
Coaxlink FFC(フラットフィールド補正)の係数の計算方法を示すコンソールアプリケーション | C++ | Windows、Linux、macOS |
cpp/exif
|
Coaxlink Quad CXP-12 JPEGの使用方法とEXIFファイルにメタデータを埋め込む方法を示すサンプルプログラム集 | C++ | Windows、Linux、macOS |
cs/egrabber
|
eGrabberと、C#でのコールバックの使用方法を示すコンソールアプリケーション | C# | Windows |
cs/grabn
|
画像の取り込みを示すコンソールアプリケーション | C# | Windows |
cs/live
|
画像の取り込みと表示を示すWindowsフォームアプリケーション | C# | Windows |
cs/egrabber-wpf
|
画像の取り込みと表示を示すWPFアプリケーション | C# | Windows |
python/sample* | eGrabberのサンプルプログラム集 | Python | Windows、Linux、macOS |
python/live | numpy、opencv、Pillowなどで取り込んだデータを処理する方法を示す、eGrabberの追加サンプルプログラム集 | Python | Windows、Linux、macOS |
vb/grabn
|
画像の取り込みを示すコンソールアプリケーション | VB.NET | Windows |
vb/live
|
画像の取り込みと表示を示すWindowsフォームアプリケーション | VB.NET | Windows |
その他のファイル | 説明 | 言語 | OS |
---|---|---|---|
tools/stripeGeometry.py | StripeArrangement、StripeHeight、StripePitch、StripeOffset、およびBlockHeightの画像転送設定の効果を示すPythonスクリプト。 | Python | Windows、Linux、macOS |
cpp/egrabberが含まれています。
スニペット | 説明 |
---|---|
100-grabn
|
ScopedBufferクラスを使用したNフレームの単純な取り込み |
110-get-string-list
|
EGrabberのgetStringListメソッドの基本的な使用方法 |
120-converter
|
FormatConverterの速度を測定 |
130-using-buffer
|
Bufferクラスを使用したNフレームの単純な取り込み |
140-genapi-command
|
GenApiコマンドのクエリ |
200-grabn-callbacks
|
Nフレームを取り込み、コールバックでDataStreamイベントを取得 |
201-grabn-pop-oneof | Nフレームを取り込み、pop(OneOf<>) でDataStreamイベントを取得 |
210-show-all-grabbers
|
利用可能なグラバーを表示 |
211-show-all-grabbers-ro
|
使用可能なグラバーを表示(DEVICE_ACCESS_READONLYでデバイスを開きます) |
212-create-all-grabbers
|
利用可能なグラバーを作成 |
213-egrabbers
|
EGrabbersで利用可能なグラバーを使用 |
220-get-announced-handles
|
公開されたバッファーの情報とハンドルを取得 |
221-queue-buffer-ranges
|
設定の異なる2つのバッファーを作成して使用 |
230-script-vars
|
ネイティブコードとEuresysスクリプト間でデータを渡す |
231-script-var
|
ネイティブコードとEuresysスクリプトから仮想機能を作成して使用 |
240-user-memory
|
ユーザーが割り当てたバッファーへの取り込み |
250-using-lut
|
LUTプロセッサーを設定して有効にする |
260-egrabber-recorder | Recorderコンテナへのバッファの書き込みとバッファの読み取り |
261-recorder-parameters | Recorderパラメーターを表示する |
300-events-mt-cic
|
EGrabberマルチスレッド構成でのCICイベント |
301-events-st-all
|
EGrabberシングルスレッド構成でのすべてのイベント |
302-cxp-connector-detection
|
接続とデバイス検出に関連するCoaXPressイベントを表示 |
310-high-frame-rate | 10秒間の高フレームレートモードでの取り込み |
311-high-frame-rate | 10秒間の高フレームレートモードで画像を利用できるようになった時点で処理する |
312-part-timestamps | HFRモードで、各バッファパートのタイムスタンプを表示する |
360-recorder-async-write | EGrabberのコールバックを使って、Recorderコンテナに非同期で書き込む |
361-recorder-async-write-mt | EGrabberのマルチスレッド構成を使って、Recorderコンテナに非同期で書き込む |
500-grabn-cuda-process
|
Nフレームを取り込み、cuda演算で処理 |
501-all-grabbers-cuda-process
|
利用可能なすべてのグラバーを使用してNフレームを取り込み、cuda演算で処理 |
610-line-scan-array
|
EGrabberシングルスレッドを使用したラインスキャンの(連続)バッファー配列 |
620-multiple-camera
|
すべてのカメラのデータの取り込み |
630-sublink
|
同じPC上にある2つのサブリンクグラバーのバッファーをマージ |
640-mitsubishi-kd6r807cx
|
1つの三菱KD6R807CXに接続された2つのグラバーのバッファーをマージ(memcpy演算) |
641-mitsubishi-kd6r807cx
|
1つの三菱KD6R807CXに接続された2つのグラバーのバッファーをマージ(DMA) |
650-multistream
|
同じデバイスにある4つのデータストリームのデータを取得(Coaxlink Quad G3の「1カメラ、4データストリーム」ファームウェアバリアント上) |
660-phantom
|
ファントムストリーマー16 CXP6に接続された利用可能なグラバーのバッファーをマージ |
cpp/exif
には次の情報が含まれています。
サンプル | 説明 |
---|---|
100-jpeg-exif
|
4つのJPEGエンコードデータストリームからデータを取得し、EXIFファイルを生成 |
200-jpeg-preview-exif
|
4つのプレビューと4つのJPEGエンコードデータストリームからデータを取得し、サムネイル付きのEXIFファイルを生成 |
サンプル | 説明 |
---|---|
live-capture-opencv | フレームを取得してRGB8に変換し、opencvおよびnumpyを使用してAVIファイルを生成 |
live-numpy-opencv | 取得したMono8データからnumpy配列を作成し、配列を転置し、OpenCVを使用して画像を表示 |
live-tkinter-pillow | Pillowの輪郭フィルターで処理された取得画像を表示するtkinterのシンプルなアプリケーション |
live | 画像の取り込みと表示 |
sample100 | ScopedBufferクラスを使用したNフレームの単純な取り込み |
sample120 | C++ 120-Converter eGrabberサンプルプログラムのPythonバージョン |
sample130 | 手動のバッファ管理による単純なNフレームの取り込み |
sample140 | GenApiコマンドのクエリ |
sample200 | Nフレームを取り込み、コールバックでDataStreamイベントを取得 |
sample210 | 利用可能なグラバーを表示 |
sample310 | 10秒間の高フレームレートモードでの取り込み |