How to save output image when running deepstream-image-decode-test?

Hi, dear NVIDIA community!

I tried to launch deepstream-image-decode-test on the single image. With this command:

./deepstream-image-decode-app ./image.jpg

It works, but the output image (with bounding box and label) lasts only a few milliseconds.

How can I save the output image of the inference?

Any help will be appreciated, thanks.

System Info:

  • DeepStream 5.0.1
  • JetPack Version 4.4.1
  • TensorRT Version 7.1.3.0
  • Jetson Nano

What do you mean with “save the output image”? Do you want to save the output with bbox and labels to a jpeg image? There are many ways to implement it, but all need to change the code of deepstream-image-decode-test. E.G. current pipeline is for display the output on screen, you can change the pipeline to save the output to file.
filesrc->jpegparse->nvv4l2decoder->nvstreammux->nvinfer->nvmultistreamtiler->nvvideoconvert->nvdsosd->nvvideoconvert->jpegenc->filesink

Hello, thanks for answer.
My bad. Yes, I mean to save output image as the JPEG/JPG file on the computer. Could you please give the references where I can read about pipeline construction in more details. I am quite new to deepstream and gstreamer technologies.

Returning to your answer, if starting from the code provided in deepstream_image_decode_test.c file, I need to define jpegenc and filesink objects in the pipeline, right?

Thanks in advance.

Yes. You also need to create one more nvvideoconvert.

SUggest you start with gstreamer first. https://gstreamer.freedesktop.org/ https://gstreamer.freedesktop.org/documentation/tutorials/index.html?gi-language=c It will be hard for you to understand deepstream sample codes if you don’t have basic knowledge for gstreamer.

Great. Thank you Fiona. I will try and come back.