์ปดํ“จํ„ฐ ๋น„์ „ ๋ฐ ๋”ฅ๋Ÿฌ๋‹ ํ”„๋ ˆ์ž„์›Œํฌ์ธ Savant 0.2.7 ์ถœ์‹œ

Savant 0.2.7 Python ํ”„๋ ˆ์ž„์›Œํฌ๊ฐ€ ์ถœ์‹œ๋˜์–ด NVIDIA DeepStream์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ธฐ๊ณ„ ํ•™์Šต๊ณผ ๊ด€๋ จ๋œ ๋ฌธ์ œ๋ฅผ ๋” ์‰ฝ๊ฒŒ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ”„๋ ˆ์ž„์›Œํฌ๋Š” GStreamer ๋˜๋Š” FFmpeg๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋“  ์–ด๋ ค์šด ์ž‘์—…์„ ์ฒ˜๋ฆฌํ•˜๋ฏ€๋กœ ์„ ์–ธ์  ๊ตฌ๋ฌธ(YAML) ๋ฐ Python ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ตœ์ ํ™”๋œ ์ถœ๋ ฅ ํŒŒ์ดํ”„๋ผ์ธ์„ ๊ตฌ์ถ•ํ•˜๋Š” ๋ฐ ์ง‘์ค‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Savant๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ฐ์ดํ„ฐ ์„ผํ„ฐ์˜ ๊ฐ€์†๊ธฐ(NVIDIA Turing, Ampere, Hopper)์™€ ์—ฃ์ง€ ์žฅ์น˜(NVIDIA Jetson NX, AGX Xavier, Orin NX, AGX Orin, New Nano)์—์„œ ๋™์ผํ•˜๊ฒŒ ์ž‘๋™ํ•˜๋Š” ํŒŒ์ดํ”„๋ผ์ธ์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Savant๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์—ฌ๋Ÿฌ ๋น„๋””์˜ค ์ŠคํŠธ๋ฆผ์„ ๋™์‹œ์— ์‰ฝ๊ฒŒ ์ฒ˜๋ฆฌํ•˜๊ณ  NVIDIA TensorRT๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ œ์ž‘ ์ค€๋น„๊ฐ€ ์™„๋ฃŒ๋œ ๋น„๋””์˜ค ๋ถ„์„ ํŒŒ์ดํ”„๋ผ์ธ์„ ๋น ๋ฅด๊ฒŒ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ ์ฝ”๋“œ๋Š” Apache 2.0 ๋ผ์ด์„ผ์Šค์— ๋”ฐ๋ผ ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค.

Savant 0.2.7์€ 0.2.X ๋ถ„๊ธฐ์˜ ์ตœ์‹  ๊ธฐ๋Šฅ ๋ณ€๊ฒฝ ๋ฆด๋ฆฌ์Šค์ž…๋‹ˆ๋‹ค. 0.2.X ๋ธŒ๋žœ์น˜์˜ ํ–ฅํ›„ ๋ฆด๋ฆฌ์Šค์—๋Š” ๋ฒ„๊ทธ ์ˆ˜์ •๋งŒ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ์€ DeepStream 0.3๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ 6.4.X ๋ธŒ๋žœ์น˜์—์„œ ์ง„ํ–‰๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. NVIDIA๊ฐ€ DS 6.4์—์„œ ์ง€์›ํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ ์ด ๋ถ„๊ธฐ์—์„œ๋Š” Jetson Xavier ์žฅ์น˜ ์ œํ’ˆ๊ตฐ์„ ์ง€์›ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ฃผ์š” ํ˜์‹ :

  • ์ƒˆ๋กœ์šด ์‚ฌ์šฉ ์‚ฌ๋ก€:
    • RT-DETR ๋ณ€ํ™˜๊ธฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ ๊ฐ์ง€ ๋ชจ๋ธ ์ž‘์—…์˜ ์˜ˆ์ž…๋‹ˆ๋‹ค.
    • YOLOV8-Seg์šฉ CuPy๋ฅผ ์‚ฌ์šฉํ•œ CUDA ํ›„์ฒ˜๋ฆฌ;
    • Savant ํŒŒ์ดํ”„๋ผ์ธ์— PyTorch CUDA๋ฅผ ํ†ตํ•ฉํ•œ ์˜ˆ์ž…๋‹ˆ๋‹ค.
    • ์ง€ํ–ฅ ๊ฐ์ฒด๋ฅผ ์‚ฌ์šฉํ•œ ์ž‘์—… ์‹œ์—ฐ.

    ์ปดํ“จํ„ฐ ๋น„์ „ ๋ฐ ๋”ฅ๋Ÿฌ๋‹ ํ”„๋ ˆ์ž„์›Œํฌ์ธ Savant 0.2.7 ์ถœ์‹œ

  • ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ :
    • ํ”„๋กœ๋ฉ”ํ…Œ์šฐ์Šค์™€์˜ ํ†ตํ•ฉ. ํŒŒ์ดํ”„๋ผ์ธ์€ ์„ฑ๋Šฅ ๋ชจ๋‹ˆํ„ฐ๋ง ๋ฐ ์ถ”์ ์„ ์œ„ํ•ด ์‹คํ–‰ ์ธก์ •ํ•ญ๋ชฉ์„ Prometheus ๋ฐ Grafana๋กœ ๋‚ด๋ณด๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ์ž๋Š” ์‹œ์Šคํ…œ ์ธก์ •ํ•ญ๋ชฉ๊ณผ ํ•จ๊ป˜ ๋‚ด๋ณด๋‚ด์ง€๋Š” ์‚ฌ์šฉ์ž ์ง€์ • ์ธก์ •ํ•ญ๋ชฉ์„ ์„ ์–ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ๋ฒ„ํผ ์–ด๋Œ‘ํ„ฐ - ์–ด๋Œ‘ํ„ฐ์™€ ๋ชจ๋“ˆ ๊ฐ„ ๋ฐ์ดํ„ฐ ์ด๋™์„ ์œ„ํ•ด ๋””์Šคํฌ์— ์˜๊ตฌ ํŠธ๋žœ์žญ์…˜ ๋ฒ„ํผ๋ฅผ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์˜ˆ์ธกํ•  ์ˆ˜ ์—†์„ ์ •๋„๋กœ ๋ฆฌ์†Œ์Šค๋ฅผ ์†Œ๋น„ํ•˜๊ณ  ํŠธ๋ž˜ํ”ฝ ๊ธ‰์ฆ์„ ๊ฒฌ๋””๋Š” ๋กœ๋“œ๊ฐ€ ๋งŽ์€ ํŒŒ์ดํ”„๋ผ์ธ์„ ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์–ด๋Œ‘ํ„ฐ๋Š” ์š”์†Œ ๋ฐ ํฌ๊ธฐ ๋ฐ์ดํ„ฐ๋ฅผ Prometheus๋กœ ๋‚ด๋ณด๋ƒ…๋‹ˆ๋‹ค.
    • ๋ชจ๋ธ ์ปดํŒŒ์ผ ๋ชจ๋“œ. ์ด์ œ ๋ชจ๋“ˆ์€ ํŒŒ์ดํ”„๋ผ์ธ์„ ์‹คํ–‰ํ•˜์ง€ ์•Š๊ณ ๋„ TensorRT์—์„œ ๋ชจ๋ธ์„ ์ปดํŒŒ์ผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • PyFunc ์ข…๋ฃŒ ์ด๋ฒคํŠธ ํ•ธ๋“ค๋Ÿฌ. ์ด ์ƒˆ๋กœ์šด API๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ํŒŒ์ดํ”„๋ผ์ธ ์ข…๋ฃŒ๋ฅผ ์ ์ ˆํ•˜๊ฒŒ ์ฒ˜๋ฆฌํ•˜์—ฌ ๋ฆฌ์†Œ์Šค๋ฅผ ํ™•๋ณดํ•˜๊ณ  ์ข…๋ฃŒ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Œ์„ ํƒ€์‚ฌ ์‹œ์Šคํ…œ์— ์•Œ๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ์ž…๋ ฅ ๋ฐ ์ถœ๋ ฅ์—์„œ โ€‹โ€‹ํ”„๋ ˆ์ž„ ํ•„ํ„ฐ๋ง. ๊ธฐ๋ณธ์ ์œผ๋กœ ํŒŒ์ดํ”„๋ผ์ธ์€ ๋น„๋””์˜ค ๋ฐ์ดํ„ฐ๊ฐ€ ํฌํ•จ๋œ ๋ชจ๋“  ํ”„๋ ˆ์ž„์„ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ž…๋ ฅ ๋ฐ ์ถœ๋ ฅ ํ•„ํ„ฐ๋ง์„ ํ†ตํ•ด ๊ฐœ๋ฐœ์ž๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ํ•„ํ„ฐ๋งํ•˜์—ฌ ์ฒ˜๋ฆฌ๋ฅผ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • GPU์—์„œ ๋ชจ๋ธ์„ ํ›„์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์„ ํ†ตํ•ด ๊ฐœ๋ฐœ์ž๋Š” ๋ชจ๋ธ ์ถœ๋ ฅ ํ…์„œ๋ฅผ CPU ๋ฉ”๋ชจ๋ฆฌ์— ๋กœ๋“œํ•˜์ง€ ์•Š๊ณ  GPU ๋ฉ”๋ชจ๋ฆฌ์—์„œ ์ง์ ‘ ์•ก์„ธ์Šคํ•˜๊ณ  CuPy, TorchVision ๋˜๋Š” OpenCV CUDA๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • GPU ๋ฉ”๋ชจ๋ฆฌ ํ‘œํ˜„ ํ•จ์ˆ˜. ์ด๋ฒˆ ๋ฆด๋ฆฌ์Šค์—์„œ๋Š” OpenCV GpuMat, PyTorch GPU ํ…์„œ ๋ฐ CuPy ํ…์„œ ๊ฐ„์— ๋ฉ”๋ชจ๋ฆฌ ๋ฒ„ํผ๋ฅผ ๋ณ€ํ™˜ํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ–ˆ์Šต๋‹ˆ๋‹ค.
    • ํŒŒ์ดํ”„๋ผ์ธ ๋Œ€๊ธฐ์—ด ์‚ฌ์šฉ์— ๋Œ€ํ•œ ํ†ต๊ณ„์— ์•ก์„ธ์Šคํ•˜๊ธฐ ์œ„ํ•œ API์ž…๋‹ˆ๋‹ค. Savant๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด PyFunc ์‚ฌ์ด์— ๋Œ€๊ธฐ์—ด์„ ์ถ”๊ฐ€ํ•˜์—ฌ ๋ณ‘๋ ฌ ์ฒ˜๋ฆฌ ๋ฐ ๋ฒ„ํผ๋ง ์ฒ˜๋ฆฌ๋ฅผ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ถ”๊ฐ€๋œ API๋ฅผ ํ†ตํ•ด ๊ฐœ๋ฐœ์ž๋Š” ํŒŒ์ดํ”„๋ผ์ธ์— ๋ฐฐํฌ๋œ ๋Œ€๊ธฐ์—ด์— ์•ก์„ธ์Šคํ•˜๊ณ  ์šฉ๋„๋ฅผ โ€‹โ€‹์ฟผ๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ ๋ฆด๋ฆฌ์Šค(0.3.7)์—์„œ๋Š” ๊ธฐ๋Šฅ ํ™•์žฅ ์—†์ด DeepStream 6.4๋กœ ์ด๋™ํ•  ๊ณ„ํš์ž…๋‹ˆ๋‹ค. ์•„์ด๋””์–ด๋Š” 0.2.7๊ณผ ์™„์ „ํžˆ ํ˜ธํ™˜๋˜์ง€๋งŒ DeepStream 6.4 ๋ฐ ํ–ฅ์ƒ๋œ ๊ธฐ์ˆ ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜์ง€๋งŒ API ์ˆ˜์ค€์—์„œ ํ˜ธํ™˜์„ฑ์„ ์†์ƒ์‹œํ‚ค์ง€ ์•Š๋Š” ๋ฆด๋ฆฌ์Šค๋ฅผ ์–ป๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€