deepstream yolo issue on Xavier

Hi,

I’m currently deploying deepstream-reference-apps-YOLO from github source GitHub - NVIDIA-AI-IOT/deepstream_reference_apps: Samples for TensorRT/Deepstream for Tesla & Jetson I’m facing issue, while running yolov3 plugin on either mode deepstream-yolo-app and trt-yolo-app. i have couple of question, please help us to resolve this issue;

  1. when i run using deepstream-yolo-app make issue;
[ 50%] Building CXX object CMakeFiles/deepstream-yolo-app.dir/deepstream-yolo-app.cpp.o
/home/nvidia/Downloads/deepstream_reference_apps/yolo/apps/deepstream-yolo/deepstream-yolo-app.cpp:29:10: fatal error: gstnvdsmeta.h: No such file or directory
 #include "gstnvdsmeta.h"
          ^~~~~~~~~~~~~~~
compilation terminated.
CMakeFiles/deepstream-yolo-app.dir/build.make:62: recipe for target 'CMakeFiles/deepstream-yolo-app.dir/deepstream-yolo-app.cpp.o' failed
make[2]: *** [CMakeFiles/deepstream-yolo-app.dir/deepstream-yolo-app.cpp.o] Error 1
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/deepstream-yolo-app.dir/all' failed
make[1]: *** [CMakeFiles/deepstream-yolo-app.dir/all] Error 2
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2
  1. trt-yolo-app --flagfile=/home/nvidia/Downloads/deepstream_reference_apps/yolo/config/yolov3.txt

core-dumped issue;

  1. is there possible to give input video on yolov3.txt or realtime streaming protocol ip;

Hi,

1. Please noticed that there are two different kinds of deepstreamSDK: Tesla and Tegra(=Jetson).
gstnvdsmeta.h is not a Jetson header so it won’t be available for Xavier.

Please make sure you have specified the correct platform first:
https://github.com/NVIDIA-AI-IOT/deepstream_reference_apps/blob/master/Makefile.config#L28

PLATFORM:=TEGRA

2. Please remember to download the yolov3 weight first:
https://github.com/NVIDIA-AI-IOT/deepstream_reference_apps/tree/master/yolo#setup

$sh prebuild.sh

3. The deepstream-yolo-app is by default using the video mode.
https://github.com/NVIDIA-AI-IOT/deepstream_reference_apps/tree/master/yolo#deepstream-yolo-app
Just update the configure to the location of your video.

$ deepstream-yolo-app <Platform-Telsa/Tegra> <H264 filename> <yolo-plugin config file>

Thanks.

Hi AastaLLL,

  • still i won’t be able to run both a way, either deepstream-yolo and trt-yolo-app.
    In Deepstream yolo app after i change platform= TEGRA, this issue is still present;
  • still trt-yolo-app has been issue core-dumped issue.
Building complete!
  Serializing the TensorRT Engine...
  trt-yolo-app: /home/nvidia/Downloads/deepstream_reference_apps-master/yolo/lib/yolo.cpp:676: void 
  Yolo::writePlanFileToDisk(): Assertion `!m_EnginePath.empty() && "Enginepath is empty"' failed.
  Aborted (core dumped)

We are unnable to proceed, we stuck on this problem. Please help us

Hi,

Could you check if these paths are valid first?

https://github.com/NVIDIA-AI-IOT/deepstream_reference_apps/blob/3a8957b2d985d7fc2498a0f070832eb145e809ca/yolo/config/yolov3-tiny.txt#L35

...
--network_type=yolov3-tiny
--config_file_path=data/yolov3-tiny.cfg
--wts_file_path=data/yolov3-tiny.weights
--labels_file_path=data/labels.txt
...

Please noticed that since the relative path is used in the config file.
You will need to run the application in folder ${deepstream_reference_apps}/yolo/.

Thanks.

Hi AastaLLL,

Thanks for the response. Yeah i did relative path location. please have a look;

--network_type=yolov3
--config_file_path=/home/nvidia/Downloads/deepstream_reference_apps-master/yolo/config/data/yolov3.cfg
--wts_file_path=/home/nvidia/Downloads/deepstream_reference_apps-master/yolo/config/data/yolov3.weights
--labels_file_path=/home/nvidia/Downloads/deepstream_reference_apps-master/yolo/config/data/labels.txt

Hi,

I’m afraid that you are confused by my reply.

To run the sample on the Jetson, please update PLATFORM:=TEGRA.

$ cd plugins/gst-yoloplugin-tegra
$ mkdir build && cd build
$ cmake -D DS_SDK_ROOT=<DS SDK Root> -D CMAKE_BUILD_TYPE=Release ..
$ make && sudo make install

The original missing gstnvdsmeta.h header is for TESLA platform.
That’s why I recommend you to set PLATFORM:=TESLA in comment 2.

Please check if the config is correct first.

Thanks.

Thanks AastaLL,

Yeah Already i did, whatever github instruction gave, i follow. But i couldn’t able to complete; Please have a look. I got new log;

nvidia@jetson-0423418048925:~/Downloads/deepstream_reference_apps-master/yolo/plugins/gst-yoloplugin-tegra/build$ make && sudo make install
[ 84%] Built target yolo-lib
Scanning dependencies of target gstnvyolo
[ 92%] Building CXX object CMakeFiles/gstnvyolo.dir/gstyoloplugin.cpp.o
In file included from /home/nvidia/Downloads/deepstream_reference_apps-master/yolo/plugins/gst-yoloplugin-tegra/gstyoloplugin.cpp:26:0:
/home/nvidia/Downloads/deepstream_reference_apps-master/yolo/plugins/gst-yoloplugin-tegra/gstyoloplugin.h:35:10: fatal error: nvbuf_utils.h: No such file or directory
 #include "nvbuf_utils.h"
          ^~~~~~~~~~~~~~~
compilation terminated.
CMakeFiles/gstnvyolo.dir/build.make:62: recipe for target 'CMakeFiles/gstnvyolo.dir/gstyoloplugin.cpp.o' failed
make[2]: *** [CMakeFiles/gstnvyolo.dir/gstyoloplugin.cpp.o] Error 1
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/gstnvyolo.dir/all' failed
make[1]: *** [CMakeFiles/gstnvyolo.dir/all] Error 2
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2
nvidia@jetson-0423418048925:~/Downloads/deepstream_reference_apps-master/yolo/plugins/gst-yoloplugin-tegra/build$

Hi,

nvbuf_utils.h is included in the MMAPI. Have you installed it?
If not, could you give it a try? MMAPI is available in the JetPack/SDKmanager.

Thanks.

Hi Varun_Rathinam,

I’m deploying deepstream-yolo-app on a Jetson Nano and I face the same issue, did you find the solution for this problem ?

Thanks,