insight-platform / Savant

Python Computer Vision & Video Analytics Framework With Batteries Included
https://savant-ai.io
Apache License 2.0
542 stars 44 forks source link

face_reid error #410

Closed MyraBaba closed 1 year ago

MyraBaba commented 1 year ago

Hi,

I indexed faces and start demo it gives error

ERROR python::exception > [python.exception.value=(0, 1), python.exception.traceback=Traceback (most recent call last): face_reid-module-1 | File "/usr/local/lib/python3.8/dist-packages/savant/deepstream/pyfunc.py", line 141, in process_buffer face_reid-module-1 | self.process_frame(buffer, frame_meta) face_reid-module-1 | File "/usr/local/lib/python3.8/dist-packages/savant/deepstream/base_drawfunc.py", line 37, in process_frame face_reid-module-1 | self.draw(buffer, frame_meta) face_reid-module-1 | File "/usr/local/lib/python3.8/dist-packages/savant/deepstream/drawfunc.py", line 49, in draw face_reid-module-1 | self.draw_on_frame(frame_meta, artist) face_reid-module-1 | File "/opt/savant/samples/face_reid/overlay.py", line 125, in draw_on_frame face_reid-module-1 | face_img = self.processed_gallery[(person_id, image_n)] face_reid-module-1 | , python.version=3.8.10 (default, May 26 2023, 14:05:08) face_reid-module-1 | [GCC 9.4.0], python.exception.type=<class 'KeyError'>] Exception occurred face_reid-module-1 | stty: 'standard input': Inappropriate ioctl for device face_reid-module-1 | ERROR insight::savant::pyfunc > Failed to process buffer/frame. face_reid-module-1 | Aliases for entries in sys.path: face_reid-module-1 | : /usr/local/lib/python3.8/dist-packages face_reid-module-1 | : /opt/savant face_reid-module-1 | : /opt/savant face_reid-module-1 | Traceback (most recent call last): face_reid-module-1 | /gst_plugins/python/pyfunc.py:171 do_transform_ip self.pyfunc.instance.process_buffer(buffer) face_reid-module-1 | /savant/deepstream/pyfunc.py:141 process_buffer self.process_frame(buffer, frame_meta) face_reid-module-1 | /savant/deepstream/base_drawfunc.py:37 process_frame self.draw(buffer, frame_meta) face_reid-module-1 | /savant/deepstream/drawfunc.py:49 draw self.draw_on_frame(frame_meta, artist) face_reid-module-1 | /samples/face_reid/overlay.py:125 draw_on_frame face_img = self.processed_gallery[(person_id, image_n)] face_reid-module-1 | KeyError: (0, 1) face_reid-module-1 | 0:00:18.344201296 1 0x7fa03ce13de0 WARN nvinfer gstnvinfer.cpp:2397:gst_nvinfer_output_loop: error: Internal data stream error. face_reid-module-1 | 0:00:18.344211152 1 0x7fa03ce13de0 WARN nvinfer gstnvinfer.cpp:2397:gst_nvinfer_output_loop: error: streaming stopped, reason error (-5) face_reid-module-1 | ERROR insight::savant::gstreamer::runner > Received error "gst-stream-error-quark: Internal data stream error. (1)" from adaface_ir50_webface4m_90fb74c. face_reid-module-1 | INFO insight::savant::gstreamer::runner > Setting pipeline status to PipelineStatus.STOPPING. face_reid-module-1 | ERROR python::exception > [python.exception.value=(0, 1), python.exception.type=<class 'KeyError'>, python.version=3.8.10 (default, May 26 2023, 14:05:08) face_reid-module-1 | [GCC 9.4.0], python.exception.traceback=Traceback (most recent call last): face_reid-module-1 | File "/usr/local/lib/python3.8/dist-packages/savant/deepstream/pyfunc.py", line 141, in process_buffer face_reid-module-1 | self.process_frame(buffer, frame_meta) face_reid-module-1 | File "/usr/local/lib/python3.8/dist-packages/savant/deepstream/base_drawfunc.py", line 37, in process_frame face_reid-module-1 | self.draw(buffer, frame_meta) face_reid-module-1 | File "/usr/local/lib/python3.8/dist-packages/savant/deepstream/drawfunc.py", line 49, in draw face_reid-module-1 | self.draw_on_frame(frame_meta, artist) face_reid-module-1 | File "/opt/savant/samples/face_reid/overlay.py", line 125, in draw_on_frame face_reid-module-1 | face_img = self.processed_gallery[(person_id, image_n)] face_reid-module-1 | ] Exception occurred face_reid-module-1 | stty: 'standard input': Inappropriate ioctl for device face_reid-module-1 | ERROR insight::savant::pyfunc > Failed to process buffer/frame. face_reid-module-1 | Aliases for entries in sys.path: face_reid-module-1 | : /usr/local/lib/python3.8/dist-packages face_reid-module-1 | : /opt/savant face_reid-module-1 | : /opt/savant face_reid-module-1 | Traceback (most recent call last): face_reid-module-1 | /gst_plugins/python/pyfunc.py:171 do_transform_ip self.pyfunc.instance.process_buffer(buffer) face_reid-module-1 | /savant/deepstream/pyfunc.py:141 process_buffer self.process_frame(buffer, frame_meta) face_reid-module-1 | /savant/deepstream/base_drawfunc.py:37 process_frame self.draw(buffer, frame_meta) face_reid-module-1 | /savant/deepstream/drawfunc.py:49 draw self.draw_on_frame(frame_meta, artist) face_reid-module-1 | /samples/face_reid/overlay.py:125 draw_on_frame face_img = self.processed_gallery[(person_id, image_n)] face_reid-module-1 | KeyError: (0, 1)

bwsw commented 1 year ago

@MyraBaba hello. Please provide your hardware specs.

We test regularly, but intermittent errors may occur. We will check.

bwsw commented 1 year ago

@MyraBaba

face_reid-module-1 | stty: 'standard input': Inappropriate ioctl for device

how do you run the demo? This is completely unexpected error, not connected with the demo,

bwsw commented 1 year ago

@MyraBaba it looks like a Docker issue: https://github.com/docker/compose/issues/1876#issuecomment-604006192

what Docker version you have? Never have seen an issue like that.

MyraBaba commented 1 year ago

| NVIDIA-SMI 535.86.05 Driver Version: 535.86.05 CUDA Version: 12.2 | |-----------------------------------------+----------------------+----------------------+ | GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. | | | | MIG M. | |=========================================+======================+======================| | 0 Quadro RTX 5000 Off | 00000000:01:00.0 Off | N/A | | N/A 69C P0 34W / 90W | 1684MiB / 16384MiB | 11% Default | | | | N/A | +-----------------------------------------+----------------------+----------------------+

git clone https://github.com/insight-platform/Savant.git cd Savant/samples/face_reid git lfs pull ../../utils/check-environment-compatible

docker compose -f docker-compose.x86.yml up after indexed;

than

docker compose -f docker-compose.x86.yml --profile demo up

bwsw commented 1 year ago

@abramov-oleg take a look please

bwsw commented 1 year ago

@MyraBaba please keep an eye on #415. When it is merged the bug must no longer be present.

MyraBaba commented 1 year ago

@bwsw thanks its working. :)

One suggestion for face_reid demo.:

each scene detected and recognized faces on the right. but when the scene changed all detected faces deleted and start over.

is it very good to see and compare that keep all the detected faces with or without recognized on the right and keep the newest one on top.

bwsw commented 1 year ago

@MyraBaba well, the behaviour is based on tracking. In the real-life situations there are no sudden scene changes like that, so no problem must occur, actually. But we discuss your suggestion internally.