mengineer's blog

ニッチなネタばかりですが。

JAISDK ChunkDataを取得する(TimeStamp編)

半年ほど前の下記ネタの続きです。 (過去記事一覧はこちらから)

mengineer.hatenablog.com

この時はChunkDataがどんなものか?、JAISDK上でどう参照出来るか?等々、
取っ掛かりの部分でしたが、今回は実際のChunkDataを取得するやり方について。

ChunkDataには色々有りますが、今回はその中のTimeStampを取得してみます。

下記、JAIのWEBサイトのテクニカルインフォメーションの中に
"Chunk Dataの使い方”というpdf記事が有りましたので、参考にしました。

テクニカルインフォメーション

続きを読む

JAISDK ImageInfo内を直接アクセスする

かなり間が空きましたが、以前書いた下記ネタの続き。

JAISDK PixelFormatを指定して平均値取得
JAISDK Pixel値の取得

これらの時は、下記のようにm_ConversionBufferという中間バッファを経由して、
データを参照しましたが、PixelFormatがPackedの場合に下位ビットが欠落する?
ような現象が出ました。(上記記事参照)

void HandleImage(ref Jai_FactoryWrapper.ImageInfo ImageInfo)
{
  中略

    // Allocate conversion buffer once
    if (m_ConversionBuffer.ImageBuffer == IntPtr.Zero)
        error = Jai_FactoryWrapper.J_Image_Malloc(ref ImageInfo, ref m_ConversionBuffer);

    // Then we convert into 48bpp image format
    error = Jai_FactoryWrapper.J_Image_FromRawToImage(ref ImageInfo, ref m_ConversionBuffer, 
    Jai_FactoryWrapper.EColorInterpolationAlgorithm.BayerStandardMultiprocessor, 4096, 4096, 4096);
  
  後略
}

なので、今回は直接ImageInfoの中身を参照します、判りやすくするために、
今回は白黒カメラを使用し、テストパターン出力状態にします。

カメラ SP-5000M-USB 画像サイズ 幅:2560 × 高さ:2048 [pixel]
下図のような、左から右に明るくなっていくテストパターンです、
この先頭行(2560Pixel分)を読んでみましょう。

f:id:mengineer:20170929104448p:plain

続きを読む