Skip to content

ing-eoking/Rpi4_MOT

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

43 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Raspberry PI 4 Multiple Object Tracking

Client (Linux)

โ€ป ํ•„์š” Library : OpenCV, Cmake

โ€ป ์‚ฌ์šฉ ์–ธ์–ด : C/C++

โ€ป Raspberry PI 4 ๊ตฌ๋™ํ™˜๊ฒฝ์—์„œ ๊ตฌํ˜„

(๋‹ค๋ฅธ ๊ธฐ๊ธฐ์—์„œ๋Š” I/O Peripheral ์ฃผ์†Œ ๋ฐ Oscillators ์ฃผํŒŒ์ˆ˜ ๋ณ€๊ฒฝ ํ•„์š”)

ํด๋ผ์ด์–ธํŠธ ํ”„๋กœ๊ทธ๋žจ์—์„œ๋Š” ํฌ๊ฒŒ ๋‘๊ฐ€์ง€ ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

์ฒซ๋ฒˆ์งธ๋กœ ์˜์ƒ์„ ์‹ค์‹œ๊ฐ„์œผ๋กœ ์ดฌ์˜ํ•˜๊ณ , ์ด๋ฅผ UDP ์†Œ์ผ“์„ ํ†ตํ•ด ์„œ๋ฒ„๋กœ ์ „์†กํ•˜๋Š” ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค.
๋น ๋ฅธ ์˜์ƒ ์ „์†ก์„ ์œ„ํ•ด ์˜์ƒ์˜ ํฌ๊ธฐ๋Š” 320x240 ํฌ๊ธฐ๋กœ ๊ณ ์ •์‹œ์ผฐ์œผ๋ฉฐ, ์ด๋Š” ์„ค์ •ํŒŒ์ผ์„ ํ†ตํ•ด
์‚ฌ์šฉ์ž๊ฐ€ ์ง์ ‘ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‘๋ฒˆ์งธ๋กœ UDP ์†Œ์ผ“์—์„œ ๋ช…๋ น์–ด๋ฅผ ์ „๋‹ฌ๋ฐ›์•„ ๊ธฐ๊ธฐ์˜ ๋ชจํ„ฐ ๋ฐ ์„ผ์„œ๋ฅผ ์ œ์–ดํ•˜๋Š” ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค.
๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด ๊ธฐ๊ธฐ์—์„œ๋Š” ๋””๋ฐ”์ด์Šค ๋“œ๋ผ์ด๋ฒ„๋ฅผ ํ†ตํ•ด ์™ธ๋ถ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ 
๊ตฌํ˜„ํ•˜์˜€์œผ๋ฉฐ, ์ง์ ‘ ์„ค๊ณ„ํ•œ 1Byte ๋ช…๋ น์–ด์— ๋งž์ถ”์–ด ๊ธฐ๊ธฐ์˜ ์„ผ์„œ์™€ ๋ชจํ„ฐ๋ฅผ ์ œ์–ดํ•ฉ๋‹ˆ๋‹ค.
๋ชจํ„ฐ ์ œ์–ด์— ์žˆ์–ด ๋ฐฉํ–ฅ ๋ฐ ์†๋„ ์กฐ์ ˆ์„ ์œ„ํ•ด Breadboard์— H bridge ํšŒ๋กœ๋ฅผ ์ง์ ‘ ๊ตฌํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค.

(์ง์ ‘ ๊ตฌํ˜„ํ•œ H bridge ํšŒ๋กœ๋„)

์‚ฌ์šฉ๋ฒ•

  1. Cmake ๋ฐ OpenCV ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์„ค์น˜
  2. module ํด๋”์—์„œ make๋ฅผ ํ†ตํ•ด ์ปค๋„ ์ปดํŒŒ์ผ ๋ฐ ๋ชจ๋“ˆ ๋“ฑ๋ก
  3. build ํด๋”์—์„œ cmake ๋ฐ make๋ฅผ ํ†ตํ•ด ์ปดํŒŒ์ผ
  4. build ํด๋”์—์„œ main ํŒŒ์ผ ์‹คํ–‰
    (์ƒ์œ„ ํด๋”์—์„œ ini ์„ค์ •ํŒŒ์ผ ์ˆ˜์ •์„ ํ†ตํ•ด ip ๋ฐ port ๋ฒˆํ˜ธ ์ˆ˜์ •)

Server (PC - Windows 10)

โ€ป ํ•„์š” Library : OpenCV, keyboard, tensorflow, pytorch

โ€ป ์‚ฌ์šฉ ์–ธ์–ด : Python

์„œ๋ฒ„ ํ”„๋กœ๊ทธ๋žจ์—์„œ๋Š” 2๊ฐ€์ง€ ๋™์ž‘ ๋ชจ๋“œ๋กœ ํด๋ผ์ด์–ธํŠธ๋ฅผ ์ œ์–ดํ•ฉ๋‹ˆ๋‹ค.

์ฒซ๋ฒˆ์งธ๋กœ ์ˆ˜๋™ ์กฐ์ž‘ ๋ชจ๋“œ์ž…๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ํด๋ผ์ด์–ธํŠธ์—์„œ ์ˆ˜์‹ ๋œ ์˜์ƒ์„ ํ†ตํ•ด ๊ธฐ๊ธฐ๋ฅผ ์ œ์–ดํ•˜๋Š” ๊ฒƒ์œผ๋กœ
ํ‚ค๋ณด๋“œ์˜ ๋ฐฉํ–ฅํ‚ค์™€ +- ํ‚ค๋ฅผ ํ†ตํ•ด ๊ธฐ๊ธฐ์˜ ์†๋„์™€ ๋ฐฉํ–ฅ์„ ์ œ์–ดํ•ฉ๋‹ˆ๋‹ค.

๋‘๋ฒˆ์งธ๋กœ ์ž๋™ ์กฐ์ž‘ ๋ชจ๋“œ์ž…๋‹ˆ๋‹ค. ์ธ๊ณต์ง€๋Šฅ์„ ํ†ตํ•ด ํƒ์ง€๋œ ๊ฐ์ฒด ์ข…๋ฅ˜์— ๋”ฐ๋ผ ์šฐ์„ ์ˆœ์œ„๋ฅผ ๋‘์–ด ์ž๋™์œผ๋กœ
์ถ”์ ํ•ฉ๋‹ˆ๋‹ค. 1์ˆœ์œ„ ์‚ฌ๋žŒ, 2์ˆœ์œ„ ๊ฐœ์™€ ๊ณ ์–‘์ด, 3์ˆœ์œ„ ๋‚˜๋จธ์ง€ ๊ฐ์ฒด ์ข…๋ฅ˜๋กœ ๋‘์–ด ์ถ”์ ํ•˜๊ณ  ์žˆ์œผ๋ฉฐ, ๋™์ผ ์ˆœ์œ„์˜
๊ฐ์ฒด๊ฐ€ ๋‹ค์ˆ˜๊ฐ€ ํƒ์ง€๋  ๊ฒฝ์šฐ ๋žœ๋ค ์ถ”์ ํ•ฉ๋‹ˆ๋‹ค. ์ˆœ์œ„๊ฐ€ ๋‚ฎ์€ ๊ฐ์ฒด๋ฅผ ์ถ”์ ํ•˜๋˜ ์ค‘ ๋†’์€ ์ˆœ์œ„์œผ ๊ฐ์ฒด๊ฐ€ ๋‚œ์ž…ํ•  ๊ฒฝ์šฐ ์ถ”์  ๋Œ€์ƒ์„ ๋†’์€ ์ˆœ์œ„์˜ ๊ฐ์ฒด๋กœ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค.

๊ฐ์ฒด ์ถ”์ ์„ ์œ„ํ•ด ์‚ฌ์šฉ๋œ ์ธ๊ณต์ง€๋Šฅ์€ Yolov5์™€ deepsort์ด๋ฉฐ, tabํ‚ค๋ฅผ ํ†ตํ•˜์—ฌ ์ˆ˜๋™ ์กฐ์ž‘๊ณผ ์ž๋™ ์กฐ์ž‘์„
๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๊ฒŒ ๊ตฌํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค.

์‚ฌ์šฉ๋ฒ•

  1. keyboard, OpenCV, tensorflow, pytorch ์„ค์น˜
  2. ์‹คํ–‰ ๋ฐ ํด๋ผ์ด์–ธํŠธ ์ ‘์† ๋Œ€๊ธฐ
  3. ์™„๋ฃŒ ํ›„ ์กฐ์ž‘

About

Object Tracking & Auto Move

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published