๐Ÿฆฅ[AWS] AWS์—์„œ Yolo(darknet)๋ฅผ ํ†ตํ•ด์„œ ๋ฌผ์ฒด๋ฅผ ๊ฒ€์ถœํ•ด๋ณด์ž!

vincaยท2023๋…„ 1์›” 13์ผ
0
post-thumbnail

Introduction

aws ํ™˜๊ฒฝ์—์„œ Darknet์„ ํ†ตํ•œ YoloV4๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌผ์ฒด๋ฅผ ๊ฒ€์ถœํ•ด๋ณด๋„๋ก ํ•˜์ž.

๋ณธ์ธ์˜ ๋”ฅ๋Ÿฌ๋‹ ๋ชจ๋ธ์„ filzila๋กœ ๋ถˆ๋Ÿฌ์™”๋‹ค๊ณ  ๊ฐ€์ •ํ•˜์ž. (๋“œ๋ž˜๊ทธ & ๋“œ๋กญ ๋„ˆ๋ฌด ํŽธ๋ฆฌํ•˜๋‹น..git clone๋„ ๋ญ”๊ฐ€์˜ ์ „์†กํ•˜๊ธฐ์œ„ํ•œ ์ถ”๊ฐ€๋ชจ๋“ˆ๋„ ์ „ํ˜€ ํ•„์š”์—†์œผ๋‹ˆ..)
์ด์ œ ์ด๋ฅผ ์‹คํ–‰์‹œํ‚ค๊ธฐ ์œ„ํ•œ darknet๋ฅผ ์„ค์น˜ํ•ด์ค˜์•ผ ํ•œ๋‹ค. 3์ค„์ด ๋์ด๋‹ค. ๋‹ค๋ฅธ opencv, tensorflow์„ค์น˜ ๊ฐ™์€ ๊ฑฐ ํ•„์š”์—†๋‹ค.

git clone https://github.com/AlexeyAB/darknet
cd darknet
make (๐Ÿ’ฅ ์•„๋ž˜ ์ฃผ์˜์‚ฌํ•ญ ๋จผ์ € ์ฐธ๊ณ )
make ๊ฐ€ ์•ˆ๋˜๋ฉด sudo apt 

๐Ÿ’ฅ ๋งŒ์ผ GPU๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค๊ณ  ํ•œ๋‹ค๋ฉด darkent make ์‹œ์— ์ด๋ฅผ ํ•ด์ฃผ๊ณ  make ํ•ด์ฃผ์–ด์•ผํ•œ๋‹ค. ๋˜ํ•œ openCV๋ฅผ ๋ฏธ๋ฆฌ ๊น”์•„์ค˜์•ผํ•œ๋‹ค.

weight ๋ฐ cfg ํŒŒ์ผ์€ ๋ณธ์ธ์˜ ๋ชจ๋ธ์— ๋งž๊ฒŒ ๊ฐ€์ ธ์˜ค๋ฉด ๋œ๋‹ค.

๋งŒ์•ฝ ๋”ฐ๋กœ weight ๋ฐ cfg๊ฐ€ ์ ์ ˆํžˆ ์—†์–ด ์˜ˆ์ œ ์ฝ”๋“œ๋ฅผ ๋Œ๋ ค๋ณด๊ณ  ์‹ถ๋‹ค๋ฉด ๋‹ค์Œ ๊ณต์‹ ์‚ฌ์ดํŠธ๋ฅผ ์ฐธ๊ณ ํ•œ๋‹ค.

https://pjreddie.com/darknet/yolo/

์ถœ์ฒ˜
https://codingcrews.github.io/2019/01/15/deeplearning-gpu/
https://webnautes.tistory.com/1482

์„œ๋ฒ„์—์„œ ๋ชจ๋ธ์„ ์‹คํ–‰

  1. ์„œ๋ฒ„ ์ฝ”๋“œ flask.py
  2. yolov4.weight
  3. yolov4.cfg
  4. ๊ฒ€์ถœ์ˆ˜ํ–‰ํ•  ์ด๋ฏธ์ง€
    ๊ฐ€ ์ค€๋น„๋˜์—ˆ๋‹ค๋ฉด ์„œ๋ฒ„๋ฅผ ๋™์ž‘์‹œํ‚ค๋ฉด ๋œ๋‹ค.

์„œ๋ฒ„ ๋‚ด ์ฝ”๋“œ์— os.system(./darknet ~~~) ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ์„œ๋ฒ„๊ฐ€ ๋™์ž‘ํ•˜๋Š” ๋™์‹œ์— ๋ช…๋ น์–ด ์ž…๋ ฅ์„ ํ†ตํ•ด ๋ชจ๋ธ์„ ๋™์ž‘์‹œํ‚ค๋„๋ก ํ•˜์ž.

์„œ๋ฒ„์—์„œ ์‹คํ–‰ ์‹œ, ์ฃผ์˜์‚ฌํ•ญ (No Search File Directory)

./darknet detect cfg/yolov3.cfg yolov3.weights data/dog.jpg ๊ณผ ๊ฐ™์ด yolo๋ชจ๋ธ์„ ๋™์ž‘์‹œํ‚จ๋‹ค.

ํ•˜์ง€๋งŒ ์ด๋Š” ์„œ๋ฒ„์—์„œ darknet๋ฅผ ๋™์ž‘์‹œ์ผœ์•ผํ•˜๋ฏ€๋กœ Flask์„œ๋ฒ„๊ฐ€ ๋™์ž‘์ค‘์ธ CLI์ฐฝ์—์„œ๋Š” ์ด๋Ÿฌํ•œ ๋ชจ๋ธ์„ ์‹คํ–‰์‹œํ‚ค๋Š” ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•  ์ˆ˜ ์—†์„ ๊ฒƒ์ด๋‹ค.

๋”ฐ๋ผ์„œ Flask ์„œ๋ฒ„ ์ฝ”๋“œ(.py) ํŒŒ์ผ์— os.chdir(home/ubuntu/darknet) os.system( ./darknet ~~)์ด๋Ÿฐ์‹์œผ๋กœ darknet ํด๋”๋กœ ์ด๋™ ํ›„, darknet์„ ์‹คํ–‰์‹œํ‚ค๋„๋ก ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•œ๋‹ค.

python์˜ subprocess ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•ด์„œ ์ด๋ฅผ ์ˆ˜ํ–‰ํ•˜๋ ค ํ–ˆ์ง€๋งŒ ls, pwd์™€ ๊ฐ™์€ ๋ช…๋ น์–ด๋Š” ์ž˜ ์ธ์‹ํ•˜๋Š”๋ฐ darknet์„ ์‹คํ–‰ํ•˜๋ ค๋‹ˆ ๊ณ„์† No Search File Directory์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜์˜€๋‹ค. ์—ฐ๊ตฌ์‹ค์—์„œ ๋žฉ์งฑ๋‹˜๊ณผ ํ•˜๋ฃจ์ข…์ผ ์—ฐ๊ตฌํ•ด๋ณด์•˜์œผ๋‚˜ ๊ทธ ์ด์œ ๋Š” ๋ชจ๋ฅด๊ฒ ๋‹ค.

์•„๋ฌดํŠผ OS.SYSTEM ์„ ์“ฐ๋ฉด ์ž˜ ๊ตด๋Ÿฌ๊ฐ„๋‹ค.

profile
๋ถ‰์€ ๋ฐฐ ์˜ค์ƒ‰ ๋”ฑ๋‹ค๊ตฌ๋ฆฌ ๊ฐœ๋ฐœ์ž ๐ŸฆƒCloud & DevOps

0๊ฐœ์˜ ๋Œ“๊ธ€