рд╕рд╛рдордЧреНрд░реА рдкрд░ рдЬрд╛рдПрдВ

Ultralytics YOLOv8 NVIDIA Jetson рдкрд░ DeepStream SDK рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдФрд░ TensorRT

рдпрд╣ рд╡реНрдпрд╛рдкрдХ рдорд╛рд░реНрдЧрджрд░реНрд╢рд┐рдХрд╛ рдкрд░рд┐рдирд┐рдпреЛрдЬрди рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рд╕реНрддреГрдд рдкреВрд░реНрд╡рд╛рднреНрдпрд╛рд╕ рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИ Ultralytics YOLOv8 рдбреАрдкрд╕реНрдЯреНрд░реАрдо рдПрд╕рдбреАрдХреЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ NVIDIA Jetson рдЙрдкрдХрд░рдгреЛрдВ рдкрд░ рдФрд░ TensorRT. рдпреЗрдереЗ рдЖрдореНрд╣реА рд╡рд╛рдкрд░рд▓реЗ TensorRT Jetson рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдкрд░ рдЕрдиреБрдорд╛рди рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдЕрдзрд┐рдХрддрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред

NVIDIA Jetson рдкрд░ рдбреАрдкрд╕реНрдЯреНрд░реАрдо

рдиреЛрдЯ

рдЗрд╕ рдЧрд╛рдЗрдб рдХрд╛ рдкрд░реАрдХреНрд╖рдг Seeed Studio reComputer J4012 рджреЛрдиреЛрдВ рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЬреЛ NVIDIA Jetson Orin NX 16GB рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ, JP5.1.3 рдХреА рдЬреЗрдЯрдкреИрдХ рд░рд┐рд▓реАрдЬрд╝ рдЪрд▓ рд░рд╣реА рд╣реИ рдФрд░ Seeed Studio reComputer J1020 v2 рдЬреЛ JP4.6.4 рдХреЗ NVIDIA Jetson рдиреИрдиреЛ 4GB рд░рдирд┐рдВрдЧ рдЬреЗрдЯрдкреИрдХ рд░рд┐рд▓реАрдЬрд╝ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИред рдпрд╣ рдирд╡реАрдирддрдо рдФрд░ рд╡рд┐рд░рд╛рд╕рдд рд╕рд╣рд┐рдд рд╕рднреА NVIDIA Jetson рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рд▓рд╛рдЗрдирдЕрдк рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЙрдореНрдореАрдж рд╣реИред

NVIDIA рдбреАрдкрд╕реНрдЯреНрд░реАрдо рдХреНрдпрд╛ рд╣реИ?

NVIDIA рдХрд╛ DeepStream SDK AI-рдЖрдзрд╛рд░рд┐рдд рдорд▓реНрдЯреА-рд╕реЗрдВрд╕рд░ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ, рд╡реАрдбрд┐рдпреЛ, рдСрдбрд┐рдпреЛ рдФрд░ рдЗрдореЗрдЬ рд╕рдордЭ рдХреЗ рд▓рд┐рдП GStreamer рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдПрдХ рд╕рдВрдкреВрд░реНрдг рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдПрдирд╛рд▓рд┐рдЯрд┐рдХреНрд╕ рдЯреВрд▓рдХрд┐рдЯ рд╣реИред рдпрд╣ рджреГрд╖реНрдЯрд┐ рдПрдЖрдИ рдбреЗрд╡рд▓рдкрд░реНрд╕, рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдкрд╛рд░реНрдЯрдирд░реНрд╕, рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдФрд░ рдЖрдИрд╡реАрдП (рдЗрдВрдЯреЗрд▓рд┐рдЬреЗрдВрдЯ рд╡реАрдбрд┐рдпреЛ рдПрдирд╛рд▓рд┐рдЯрд┐рдХреНрд╕) рдРрдк рдФрд░ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдУрдИрдПрдо рдХреЗ рд▓рд┐рдП рдЖрджрд░реНрд╢ рд╣реИред рдЕрдм рдЖрдк рд╕реНрдЯреНрд░реАрдо-рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рддрдВрддреНрд░рд┐рдХрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдФрд░ рдЯреНрд░реИрдХрд┐рдВрдЧ, рд╡реАрдбрд┐рдпреЛ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ / рдбрд┐рдХреЛрдбрд┐рдВрдЧ рдФрд░ рд╡реАрдбрд┐рдпреЛ рд░реЗрдВрдбрд░рд┐рдВрдЧ рдЬреИрд╕реЗ рдЕрдиреНрдп рдЬрдЯрд┐рд▓ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рддреЗ рд╣реИрдВред рдпреЗ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рд╡реАрдбрд┐рдпреЛ, рдЫрд╡рд┐ рдФрд░ рд╕реЗрдВрд╕рд░ рдбреЗрдЯрд╛ рдкрд░ рд░реАрдпрд▓-рдЯрд╛рдЗрдо рдПрдирд╛рд▓рд┐рдЯрд┐рдХреНрд╕ рд╕рдХреНрд╖рдо рдХрд░рддреА рд╣реИрдВред рдбреАрдкрд╕реНрдЯреНрд░реАрдо рдХрд╛ рдорд▓реНрдЯреА-рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рд╕рдкреЛрд░реНрдЯ рдЖрдкрдХреЛ рд╡рд┐рдЬрд╝рди рдПрдЖрдИ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдФрд░ рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдСрди-рдкреНрд░рд┐рдорд╛рдЗрд╕реЗрд╕, рдХрд┐рдирд╛рд░реЗ рдкрд░ рдФрд░ рдХреНрд▓рд╛рдЙрдб рдореЗрдВ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддреЗрдЬрд╝, рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рджреЗрддрд╛ рд╣реИред

рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдБ

рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐ рдЖрдк рдЗрд╕ рдЧрд╛рдЗрдб рдХрд╛ рдкрд╛рд▓рди рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░реЗрдВ:

рдиреЛрдХ

рдЗрд╕ рдЧрд╛рдЗрдб рдореЗрдВ рд╣рдордиреЗ Jetson рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ DeepStream SDK рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА Debian рдкреИрдХреЗрдЬ рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИред рдЖрдк рдбреАрдкрд╕реНрдЯреНрд░реАрдо рдХреЗ рд╡рд┐рд░рд╛рд╕рдд рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЗрдЯрд╕рди (рд╕рдВрдЧреНрд░рд╣реАрдд) рдкрд░ рдбреАрдкрд╕реНрдЯреНрд░реАрдо рдПрд╕рдбреАрдХреЗ рдкрд░ рднреА рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред

рдХреЗ рд▓рд┐рдП DeepStream рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди YOLOv8

рдпрд╣рд╛рдБ рд╣рдо рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдорд╛рд░реНрдХреЛрд╕реНрд▓реБрд╕рд┐рдпрд╛рдиреЛрдкреНрд╕/рдбреАрдкрд╕реНрдЯреНрд░реАрдо-Yolo GitHub рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдЬрд┐рд╕рдореЗрдВ NVIDIA DeepStream SDK рд╕рдкреЛрд░реНрдЯ рд╢рд╛рдорд┐рд▓ рд╣реИ YOLO рдореЙрдбрд▓ред рд╣рдо рдЙрдирдХреЗ рдпреЛрдЧрджрд╛рди рдХреЗ рд▓рд┐рдП рдорд╛рд░реНрдХреЛрд╕реНрд▓реБрд╕рд┐рдпрд╛рдиреЛрдкреНрд╕ рдХреЗ рдкреНрд░рдпрд╛рд╕реЛрдВ рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддреЗ рд╣реИрдВ!

  1. рдирд┐рд░реНрднрд░рддрд╛рдПрдБ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ

    pip install cmake
    pip install onnxsim
    
  2. рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рдХреНрд▓реЛрди рдХрд░реЗрдВ

    git clone https://github.com/marcoslucianops/DeepStream-Yolo
    cd DeepStream-Yolo
    
  3. рдбрд╛рдЙрдирд▓реЛрдб Ultralytics YOLOv8 рд╕реЗ рдЕрдкрдиреА рдкрд╕рдВрдж рдХрд╛ рдбрд┐рдЯреЗрдХреНрд╢рди рдореЙрдбрд▓ (.pt) YOLOv8 рд╡рд┐рдЬреНрдЮрдкреНрддрд┐ред рдпреЗрдереЗ рдЖрдореНрд╣реА рд╡рд╛рдкрд░рд▓реЗ yolov8s.рдкрдВ.

    wget https://github.com/ultralytics/assets/releases/download/v8.2.0/yolov8s.pt
    

    рдиреЛрдЯ

    рдЖрдк рдПрдХ рдХрд╛ рднреА рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд╕реНрдЯрдо рдкреНрд░рд╢рд┐рдХреНрд╖рд┐рдд YOLOv8 рдирдореВрдирд╛ред

  4. рдореЙрдбрд▓ рдХреЛ рдореЗрдВ рдмрджрд▓реЗрдВ ONNX

    python3 utils/export_yoloV8.py -w yolov8s.pt
    

    рдЙрдкрд░реЛрдХреНрдд рдЖрджреЗрд╢ рдХреЗ рд▓рд┐рдП рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рддрд░реНрдХреЛрдВ рдХреЛ рдкрд╛рд╕ рдХрд░реЗрдВ

    рдбреАрдкрд╕реНрдЯреНрд░реАрдо 6.0.1 рдХреЗ рд▓рд┐рдП, рдСрдкрд╕реЗрдЯ 12 рдпрд╛ рдЙрд╕рд╕реЗ рдХрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдСрдкрд╕реЗрдЯ 16 рд╣реИред

    --opset 12
    

    рдЕрдиреБрдорд╛рди рдЖрдХрд╛рд░ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП (рдбрд┐рдлрд╝реЙрд▓реНрдЯ: 640)

    -s SIZE
    --size SIZE
    -s HEIGHT WIDTH
    --size HEIGHT WIDTH
    

    1280 рдХреЗ рд▓рд┐рдП рдЙрджрд╛рд╣рд░рдг:

    -s 1280
    or
    -s 1280 1280
    

    рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП ONNX рдореЙрдбрд▓ (рдбреАрдкрд╕реНрдЯреНрд░реАрдо >= 6.0)

    --simplify
    

    рдбрд╛рдпрдиреЗрдорд┐рдХ рдмреИрдЪ-рдЖрдХрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП (рдбреАрдкрд╕реНрдЯреНрд░реАрдо >= 6.1)

    --dynamic
    

    рд╕реНрдерд┐рд░ рдмреИрдЪ-рдЖрдХрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП (рдЙрджрд╛рд╣рд░рдг рдмреИрдЪ-рдЖрдХрд╛рд░ = 4)

    --batch 4
    
  5. рд╕реНрдерд╛рдкрд┐рдд рдЬреЗрдЯрдкреИрдХ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдЕрдиреБрд╕рд╛рд░ CUDA рд╕рдВрд╕реНрдХрд░рдг рд╕реЗрдЯ рдХрд░реЗрдВ

    рдЬреЗрдЯрдкреИрдХ 4.6.4 рдХреЗ рд▓рд┐рдП:

    export CUDA_VER=10.2
    

    рдЬреЗрдЯрдкреИрдХ 5.1.3 рдХреЗ рд▓рд┐рдП:

    export CUDA_VER=11.4
    
  6. рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╕рдВрдХрд▓рд┐рдд рдХрд░реЗрдВ

    make -C nvdsinfer_custom_impl_Yolo clean && make -C nvdsinfer_custom_impl_Yolo
    
  7. рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ config_infer_primary_yoloV8.txt рдЕрдкрдиреЗ рдореЙрдбрд▓ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдлрд╝рд╛рдЗрд▓ (рдХреЗ рд▓рд┐рдП YOLOv8s 80 рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рд╕рд╛рде)

    [property]
    ...
    onnx-file=yolov8s.onnx
    ...
    num-detected-classes=80
    ...
    
  8. рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ deepstream_app_config рд░реЗрддреА

    ...
    [primary-gie]
    ...
    config-file=config_infer_primary_yoloV8.txt
    
  9. рдЖрдк рд╡реАрдбрд┐рдпреЛ рд╕реНрд░реЛрдд рдХреЛ рднреА рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ deepstream_app_config рд░реЗрддреАред рдпрд╣рд╛рдВ рдПрдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡реАрдбрд┐рдпреЛ рдлрд╝рд╛рдЗрд▓ рд▓реЛрдб рдХреА рдЧрдИ рд╣реИ

    ...
    [source0]
    ...
    uri=file:///opt/nvidia/deepstream/deepstream/samples/streams/sample_1080p_h264.mp4
    

рд░рди рдЗрдирдлрд░реЗрдВрд╕

deepstream-app -c deepstream_app_config.txt

рдиреЛрдЯ

рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдореЗрдВ рд▓рдВрдмрд╛ рд╕рдордп рд▓рдЧреЗрдЧрд╛ TensorRT рдЕрдиреБрдорд╛рди рд╢реБрд░реВ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЗрдВрдЬрди рдлрд╝рд╛рдЗрд▓ред рдЗрд╕рд▓рд┐рдП рдХреГрдкрдпрд╛ рдзреИрд░реНрдп рд░рдЦреЗрдВред

YOLOv8 рдбреАрдкрд╕реНрдЯреНрд░реАрдо рдХреЗ рд╕рд╛рде

рдиреЛрдХ

рдпрджрд┐ рдЖрдк рдореЙрдбрд▓ рдХреЛ FP16 рдкрд░рд┐рд╢реБрджреНрдзрддрд╛ рдореЗрдВ рдмрджрд▓рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдмрд╕ рд╕реЗрдЯ рдХрд░реЗрдВ model-engine-file=model_b1_gpu0_fp16.engine рдФрд░ network-mode=2 рдЕрдВрджрд░ config_infer_primary_yoloV8.txt

INT8 рдЕрдВрд╢рд╛рдВрдХрди

рдпрджрд┐ рдЖрдк рдЕрдиреБрдорд╛рди рдХреЗ рд▓рд┐рдП INT8 рдкрд░рд┐рд╢реБрджреНрдзрддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдЪрд░рдгреЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░рдирд╛ рд╣реЛрдЧрд╛

  1. рдЕрд╕реНрдд рд╣реЛ OPENCV рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░

    export OPENCV=1
    
  2. рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╕рдВрдХрд▓рд┐рдд рдХрд░реЗрдВ

    make -C nvdsinfer_custom_impl_Yolo clean && make -C nvdsinfer_custom_impl_Yolo
    
  3. COCO рдбреЗрдЯрд╛рд╕реЗрдЯ рдХреЗ рд▓рд┐рдП, рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ рд╡реИрд▓2017, рдирд┐рдХрд╛рд▓реЗрдВ, рдФрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓реЗ рдЬрд╛рдПрдБ DeepStream-Yolo рдлрд╝реЛрд▓реНрдбрд░

  4. рдЕрдВрд╢рд╛рдВрдХрди рдЫрд╡рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдИ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдмрдирд╛рдПрдВ

    mkdir calibration
    
  5. рдЕрдВрд╢рд╛рдВрдХрди рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП COCO рдбреЗрдЯрд╛рд╕реЗрдЯ рд╕реЗ 1000 рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдЫрд╡рд┐рдпреЛрдВ рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЪрд▓рд╛рдПрдБ

    for jpg in $(ls -1 val2017/*.jpg | sort -R | head -1000); do \
        cp ${jpg} calibration/; \
    done
    

    рдиреЛрдЯ

    NVIDIA рдЕрдЪреНрдЫреА рд╕рдЯреАрдХрддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдо рд╕реЗ рдХрдо 500 рдЫрд╡рд┐рдпреЛрдВ рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реИред рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдкрд░, рдмреЗрд╣рддрд░ рд╕рдЯреАрдХрддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП 1000 рдЫрд╡рд┐рдпреЛрдВ рдХреЛ рдЪреБрдирд╛ рдЬрд╛рддрд╛ рд╣реИ (рдЕрдзрд┐рдХ рдЫрд╡рд┐рдпрд╛рдВ = рдЕрдзрд┐рдХ рд╕рдЯреАрдХрддрд╛)ред рдЖрдк рдЗрд╕реЗ рд╣реЗрдб -1000 рд╕реЗ рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, 2000 рдЫрд╡рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП, рд╕рд┐рд░ -2000ред рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рд▓рдВрдмрд╛ рд╕рдордп рд▓рдЧ рд╕рдХрддрд╛ рд╣реИред

  6. рдмрдирд╛рдПрдБ calibration.txt рд╕рднреА рдЪрдпрдирд┐рдд рдЫрд╡рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдлрд╝рд╛рдЗрд▓

    realpath calibration/*jpg > calibration.txt
    
  7. рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рд╕реЗрдЯ рдХрд░реЗрдВ

    export INT8_CALIB_IMG_PATH=calibration.txt
    export INT8_CALIB_BATCH_SIZE=1
    

    рдиреЛрдЯ

    рдЙрдЪреНрдЪ INT8_CALIB_BATCH_SIZE рдореВрд▓реНрдпреЛрдВ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдЕрдзрд┐рдХ рд╕рдЯреАрдХрддрд╛ рдФрд░ рддреЗрдЬ рдЕрдВрд╢рд╛рдВрдХрди рдЧрддрд┐ рд╣реЛрдЧреАред рдЗрд╕реЗ рдЕрдкрдиреЗ GPU рдореЗрдореЛрд░реА рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╕реЗрдЯ рдХрд░реЗрдВред

  8. рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ config_infer_primary_yoloV8.txt рд░реЗрддреА

    рд╕реЗ

    ...
    model-engine-file=model_b1_gpu0_fp32.engine
    #int8-calib-file=calib.table
    ...
    network-mode=0
    ...
    

    рддрдХ

    ...
    model-engine-file=model_b1_gpu0_int8.engine
    int8-calib-file=calib.table
    ...
    network-mode=1
    ...
    

рд░рди рдЗрдирдлрд░реЗрдВрд╕

deepstream-app -c deepstream_app_config.txt

рдорд▓реНрдЯреАрд╕реНрдЯреНрд░реАрдо рд╕реЗрдЯрдЕрдк

рдПрдХ рдПрдХрд▓ рдбреАрдкрд╕реНрдЯреНрд░реАрдо рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рддрд╣рдд рдХрдИ рд╕реНрдЯреНрд░реАрдо рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдирд┐рдореНрди рдкрд░рд┐рд╡рд░реНрддрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ deepstream_app_config.txt рд░реЗрддреА

  1. рдЧреНрд░рд┐рдб рдбрд┐рд╕реНрдкреНрд▓реЗ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкрдВрдХреНрддрд┐рдпреЛрдВ рдФрд░ рд╕реНрддрдВрднреЛрдВ рдХреЛ рдЙрди рдзрд╛рд░рд╛рдУрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдмрджрд▓реЗрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдк рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, 4 рд╕реНрдЯреНрд░реАрдо рдХреЗ рд▓рд┐рдП, рд╣рдо 2 rows рдФрд░ 2 рдХреЙрд▓рдо рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред

    [tiled-display]
    rows=2
    columns=2
    
  2. рдЕрд╕реНрдд рд╣реЛ num-sources=4 рдФрд░ рдЬреЛрдбрд╝реЗрдВ uri рд╕рднреА 4 рдзрд╛рд░рд╛рдУрдВ рдореЗрдВ рд╕реЗ

    [source0]
    enable=1
    type=3
    uri=<path_to_video>
    uri=<path_to_video>
    uri=<path_to_video>
    uri=<path_to_video>
    num-sources=4
    

рд░рди рдЗрдирдлрд░реЗрдВрд╕

deepstream-app -c deepstream_app_config.txt
рдорд▓реНрдЯреАрд╕реНрдЯреНрд░реАрдо рд╕реЗрдЯрдЕрдк

рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдкрд░рд┐рдгрд╛рдо

рдирд┐рдореНрди рддрд╛рд▓рд┐рдХрд╛ рд╕рд╛рд░рд╛рдВрд╢рд┐рдд рдХрд░рддреА рд╣реИ рдХрд┐ рдХреИрд╕реЗ YOLOv8s рдореЙрдбрд▓ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкреНрд░рджрд░реНрд╢рди рдХрд░рддреЗ рд╣реИрдВ TensorRT NVIDIA Jetson Orin NX 640GB рдкрд░ 640x16 рдХреЗ рдЗрдирдкреБрдЯ рдЖрдХрд╛рд░ рдХреЗ рд╕рд╛рде рд╕рдЯреАрдХ рд╕реНрддрд░ред

рдореЙрдбрд▓ рдХрд╛ рдирд╛рдо рдпрдерд╛рд░реНрдерддрд╛ рдЕрдиреБрдорд╛рди рд╕рдордп (ms/im) рдПрдлрдкреАрдПрд╕
YOLOv8s рдПрдлрдкреА32 15.63 64
рдПрдлрдкреА16 7.94 126
INT8 5.53 181

рд╕реНрд╡реАрдХреГрддрд┐рдпрд╛рдБ

рдпрд╣ рдЧрд╛рдЗрдб рд╢реБрд░реВ рдореЗрдВ рд╕реАрдб рд╕реНрдЯреВрдбрд┐рдпреЛ, рд▓рдХреНрд╖рдВрдерд╛ рдФрд░ рдРрд▓реЗрди рдореЗрдВ рд╣рдорд╛рд░реЗ рджреЛрд╕реНрддреЛрдВ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдИ рдЧрдИ рдереАред



рдмрдирд╛рдпрд╛ рдЧрдпрд╛ 2024-07-01, рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ 2024-07-01
рд▓реЗрдЦрдХ: рд▓рдХреНрд╢рд╛рдВрддрдерд╛рдж (1)

рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ