Closed arun-kumark closed 1 year ago
Update:
The GDB logs are here:
Error while mapping shared library sections:
`/home/arun/.local/lib/python3.8/site-packages/pypylon': not in executable format: Is a directory
WARNING: [TRT]: Using an engine plan file across different models of devices is not recommended and is likely to affect performance or even cause errors.
0:00:17.299842368 3044 0x1d7d350 INFO nvinfer gstnvinfer.cpp:646:gst_nvinfer_logger:<primary-inference> NvDsInferContext[UID 1]: Info from NvDsInferContextImpl::deserializeEngineAndBackend() <nvdsinfer_context_impl.cpp:1909> [UID = 1]: deserialized trt engine from :/home/arun/Documents/DeepStream-Yolo/model_b1_gpu0_fp32.engine
WARNING: [TRT]: The getMaxBatchSize() function should not be used with an engine built from a network created with NetworkDefinitionCreationFlag::kEXPLICIT_BATCH flag. This function will always return 1.
INFO: [Implicit Engine Info]: layers num: 4
0 INPUT kFLOAT input 3x640x640
1 OUTPUT kFLOAT boxes 25200x4
2 OUTPUT kFLOAT scores 25200x1
3 OUTPUT kFLOAT classes 25200x1
0:00:17.385788128 3044 0x1d7d350 INFO nvinfer gstnvinfer.cpp:646:gst_nvinfer_logger:<primary-inference> NvDsInferContext[UID 1]: Info from NvDsInferContextImpl::generateBackendContext() <nvdsinfer_context_impl.cpp:2012> [UID = 1]: Use deserialized engine model: /home/arun/Documents/DeepStream-Yolo/model_b1_gpu0_fp32.engine
[New Thread 0xffff7ecad1e0 (LWP 3067)]
[New Thread 0xffff7e4ac1e0 (LWP 3068)]
[New Thread 0xffff7be351e0 (LWP 3069)]
0:00:17.401732096 3044 0x1d7d350 INFO nvinfer gstnvinfer_impl.cpp:328:notifyLoadModelStatus:<primary-inference> [UID 1]: Load new model:/home/arun/Documents/DeepStream-Yolo/python/../config_infer_primary_yoloV5.txt sucessfully
[New Thread 0xffff7b6341e0 (LWP 3070)]
[Thread 0xffff7b6341e0 (LWP 3070) exited]
[New Thread 0xffff7b6341e0 (LWP 3071)]
[Detaching after fork from child process 3072]
[New Thread 0xffff7ae331e0 (LWP 3073)]
[New Thread 0xffff7a6321e0 (LWP 3074)]
[New Thread 0xffff413a51e0 (LWP 3075)]
[New Thread 0xffff40ba41e0 (LWP 3076)]
[New Thread 0xffff33fff1e0 (LWP 3077)]
[New Thread 0xffff337fe1e0 (LWP 3078)]
--Type <RET> for more, q to quit, c to continue without paging--c
**Thread 24 "pylon-source0:s" received signal SIGSEGV, Segmentation fault.**
[Switching to Thread 0xffff7a6321e0 (LWP 3074)]
0x0000fffff5585710 in ?? () from /home/arun/.local/lib/python3.8/site-packages/pypylon/libpylonbase.so.7.2
Sorry to open it again, The pipeline stalls, and not able to see the live view when running via python code. I already set the property self.source[index].set_property("capture-error", "skip")
0:00:13.151531150 18746 0x1194890 INFO nvinfer gstnvinfer.cpp:646:gst_nvinfer_logger:<primary-inference> NvDsInferContext[UID 1]: Info from NvDsInferContextImpl::generateBackendContext() <nvdsinfer_context_impl.cpp:2012> [UID = 1]: Use deserialized engine model: /home/arun/Downloads/Lego/Lego_Demo/deepstream_configs/detectnet_v2_resnet10.etlt_b1_gpu0_fp16.engine
[New Thread 0xffff822e11e0 (LWP 18776)]
[New Thread 0xffff812691e0 (LWP 18777)]
[New Thread 0xffff80a681e0 (LWP 18778)]
0:00:13.253318751 18746 0x1194890 INFO nvinfer gstnvinfer_impl.cpp:328:notifyLoadModelStatus:<primary-inference> [UID 1]: Load new model:/home/arun/Downloads/Lego/Lego_Demo/python_scripts/../deepstream_configs/lego_pgie_resnet10_config.txt sucessfully
[New Thread 0xffff5bfff1e0 (LWP 18779)]
[New Thread 0xffff5b7fe1e0 (LWP 18780)]
[New Thread 0xffff591871e0 (LWP 18781)]
[New Thread 0xffff589861e0 (LWP 18782)]
[New Thread 0xffff4bfff1e0 (LWP 18783)]
Thread 26 "pylon-source0:s" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xffff5bfff1e0 (LWP 18779)]
0x0000fffff54c5710 in ?? () from /home/arun/.local/lib/python3.8/site-packages/pypylon/libpylonbase.so.7.2
(gdb) backtrace
#0 0x0000fffff54c5710 in () at /home/arun/.local/lib/python3.8/site-packages/pypylon/libpylonbase.so.7.2
#1 0x0000fffff54c5290 in Pylon::CGrabResultPtr::Release() () at /home/arun/.local/lib/python3.8/site-packages/pypylon/libpylonbase.so.7.2
#2 0x0000ffffe08bba38 in Pylon::CDeviceSpecificGrabResultPtr<Pylon::CBaslerUniversalGrabResultData>::Release() (this=0xffff50007e58) at /opt/pylon/include/pylon/private/DeviceSpecificGrabResultPtr.h:324
#3 Pylon::CDeviceSpecificInstantCameraT<Pylon::CBaslerUniversalInstantCameraTraits>::RetrieveResult(unsigned int, Pylon::CBaslerUniversalGrabResultPtr&, Pylon::ETimeoutHandling)
(this=0x1e2e010, timeoutMs=3767253480, grabResult=..., timeoutHandling=Pylon::TimeoutHandling_ThrowException) at /opt/pylon/include/pylon/private/DeviceSpecificInstantCamera.h:405
#4 0x0000fffff54d64a4 in () at /home/arun/.local/lib/python3.8/site-packages/pypylon/libpylonbase.so.7.2
#5 0x0000fffff54d68a8 in () at /home/arun/.local/lib/python3.8/site-packages/pypylon/libpylonbase.so.7.2
#6 0x0000fffff54db7e0 in () at /home/arun/.local/lib/python3.8/site-packages/pypylon/libpylonbase.so.7.2
#7 0x0000ffffe08b33c4 in gst_pylon_start(_GstPylon*, _GError**) (self=<optimized out>, err=err@entry=0xffff5bffe710) at /usr/include/c++/9/bits/shared_ptr_base.h:1020
#8 0x0000ffffe08bfcac in gst_pylon_src_set_caps(GstBaseSrc*, GstCaps*) (src=<optimized out>, caps=0xb74770) at ../ext/pylon/gstpylonsrc.cpp:706
#9 0x0000fffff1eb8720 in gst_base_src_set_caps (src=src@entry=0x12b0ab0, caps=caps@entry=0xb74770) at gstbasesrc.c:951
#10 0x0000fffff1eb8c74 in gst_base_src_default_negotiate (basesrc=0x12b0ab0) at gstbasesrc.c:3347
#11 0x0000fffff1eb65d4 in gst_base_src_negotiate (basesrc=0x12b0ab0) at gstbasesrc.c:3387
#12 gst_base_src_loop (pad=0x12a6420) at gstbasesrc.c:2807
#13 0x0000fffff64ea710 in () at /lib/aarch64-linux-gnu/libgstreamer-1.0.so.0
#14 0x0000fffff7347e20 in () at /lib/aarch64-linux-gnu/libglib-2.0.so.0
#15 0x0000fffff7347484 in () at /lib/aarch64-linux-gnu/libglib-2.0.so.0
#16 0x0000fffff7e0f624 in start_thread (arg=0xfffff736b8f0) at pthread_create.c:477
#17 0x0000fffff7f0a49c in thread_start () at ../sysdeps/unix/sysv/linux/aarch64/clone.S:78
(gdb)
Please help where could it go wrong. My gdb logs above.
thanks
Hi @arun-kumark,
can you show, which plugin version you are running?
e.g. by calling gst-inspect-1.0 pylonsrc | grep -E "Descr.*pylon.*|\s+Version\s+[0-9]+"
Thanks for providing the backtrack. This look like the buffer lifetime issue that we are currently debugging in the new NVMM support code.
Can you, as a quick check, switch back to gst-plugin-pylon https://github.com/basler/gst-plugin-pylon/releases/tag/v0.6.2. This code can't work with NVMM directly, but has the old buffer lifetime management code.
Thanks for further looking this issue. I am on vacations now and will continue on this issue again once i am back. Thanks..
Hello, I am trying to setup the Python code for the Basler to run the Gstreamer pipeline using Deepstream 6.1.
When I execute the Pipeline, it runs without issue:
gst-launch-1.0 pylonsrc capture-error=skip cam::ExposureTime=20000 cam::Gain=10.3 ! "video/x-raw(memory:NVMM),width=640,height=480,framerate=10/1, format=GRAY8" ! videoconvert ! nvvideoconvert ! m.sink_0 nvstreammux name=m batch-size=1 width=640 height=480 ! nvinfer config-file-path=/home/arun/Documents/DeepStream-Yolo/config_infer_primary_yoloV5.txt ! nvdsosd ! nvegltransform ! nveglglessink sync=0
Now I am preparing the equivalent Python code to get the Bounding box coordinates from my Yolo detector via nvdsosd. below is my python script: The camera class is attached please see camera.txt (its a python file)
When I execute this pipeline, I get the Segmentation fault like:
I am trying for past two days, and in the end, I need your help to debug this issue, Could you please help to pointout the problem.
UPDATED:
The Debug logs with GST_DEBUG=3 are also shown below:
Thank you very much for your kind support.
Arun