Image Sequence with CXP boards

  • Hi there,


    I am just working on a possible new project where we would need the Image Sequence operator wihtin a CXP board.


    According to the documentation this operator is only available for the microEnable IV hardware. Is this true?


    I have an va. file which was implemented with an older VA-Version in which the Image Sequence is actually used for a CXPQuadCamera on the mE5VQ8-CXP6D hardware. Well, might be that was a copy-paste thing...but then this applet would have never been successfully built.


    ImageSequence.PNG


    So I wonder if that might be my VA version (which is 3.2.0 currently).


    Also and more important (of course) if there is a good workaround to implement this feature with another buffer?


    Regards,

    Theo

  • Hi Theo,


    The ImageSequence operator does not exist for platforms using shared memory.

    Image Sequence operator wihtin a CXP board.

    But the simple workaround is using the FrameBufferRandomRead(FBRR) Operator:

    • AppendImage : Glue all images for sequence together and put it into FBRR
    • CreateBlankImage : Address FBRR with the expected output; Pixel By Pixel, Line By Line

    After FBRR you can Use SplitKernel/MergeKernel/ParallelUP/ImageFIFO to meet the expected bandwidth again.

    How to get bandwidth at paralleism = 1?

    Hide the input parallelism in a kernel-environment to meet the target memory depth.

    For a mE5-MA-VCX-QP the memory depth is 512 bit = 64 * 8 bit value:
    to get highest performance use the complete memory depth.


    In case of questions do not hesitate to contact me.


    Best regards,

  • Hi Theo


    see some examples of the alternative implementation to ImageSequence as Björn mentioned with FrameBufferRandomRd in the HDR examples: https://docs.baslerweb.com/liv…gh%20Dynamic%20Range.html


    Copy & Paste of the old ImageSequence operator into a CXP project is allowed as the operator was available in earlier versions for CXP. But it is very likely that you get a timing error. Moreover the operator can only be used with parallelism of four which makes it very inefficient at the share memory concept.


    Johannes


    Johannes Trein
    Group Leader R&D
    frame grabber

    Basler AG



  • Hello Johannes,

    But it is very likely that you get a timing error. Moreover the operator can only be used with parallelism of four which makes it very inefficient at the share memory concept.

    While it may be possible to instanciate the ImageSequence operator by copy/paste into a shared memory platform design, please avoid this and use the alternative on the basis of FrameBufferRandomRead.

    @Lothar: Please use the approach I send to you by BDX.

    Best regards,