Skip to content

Latest commit

ย 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
ย 
ย 

Repository files navigation

๐Ÿ›ด ์ „๋™ ํ‚ฅ๋ณด๋“œ ํ—ฌ๋ฉง ์ฐฉ์šฉ ๊ฐ์ง€ ์‹œ์Šคํ…œ

์ „๋™ ํ‚ฅ๋ณด๋“œ ์ด์šฉ ์‹œ ํ—ฌ๋ฉง ์ฐฉ์šฉ ์—ฌ๋ถ€๋ฅผ ์‹ค์‹œ๊ฐ„์œผ๋กœ ๊ฐ์ง€ํ•˜๊ณ  ์‚ฌ์šฉ์ž ์ธ์ฆ์„ ์ˆ˜ํ–‰ํ•˜๋Š” AI ๊ธฐ๋ฐ˜ ์•ˆ์ „ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์ž…๋‹ˆ๋‹ค.


๐Ÿ“‹ ํ”„๋กœ์ ํŠธ ๊ฐœ์š”

๐ŸŽฏ ๋ชฉ์ 

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

๐Ÿ“Œ ๋ฐฐ๊ฒฝ

  • ์ „๋™ ํ‚ฅ๋ณด๋“œ ๋Œ€์—ฌ ์„œ๋น„์Šค ์ด์šฉ๋ฅ  ๊ธ‰์ฆ
  • ์•ˆ์ „์‚ฌ๊ณ  ๊ฑด์ˆ˜ ์ฆ๊ฐ€ ๋ฐ ํ—ฌ๋ฉง ๋ฏธ์ฐฉ์šฉ ๋ฌธ์ œ ์‹ฌ๊ฐ
  • ๋ฒ•์  ๊ทœ์ œ ์ค€์ˆ˜ ๋ฐ ์‚ฌ์ „ ์‚ฌ๊ณ  ์˜ˆ๋ฐฉ ํ•„์š”

โœ… ๊ธฐ๋Œ€ ํšจ๊ณผ

  • ํ—ฌ๋ฉง ์ฐฉ์šฉ๋ฅ  ์ฆ๊ฐ€: ์ž๋™ ๊ฐ์ง€๋ฅผ ํ†ตํ•œ ์‚ฌ์šฉ์ž ์ธ์‹ ๊ฐœ์„ 
  • ๊ทœ์ •์ค€์ˆ˜ ํ™˜๊ฒฝ ์กฐ์„ฑ: ์ฒด๊ณ„์ ์ธ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ ๊ตฌ์ถ•
  • ์‚ฌ๊ณ  ์˜ˆ๋ฐฉ: ๊ณต์œ  ๋ชจ๋นŒ๋ฆฌํ‹ฐ ์•ˆ์ „์‚ฌ๊ณ  ์‚ฌ์ „ ๋ฐฉ์ง€
  • ํ™•์žฅ ๊ฐ€๋Šฅ์„ฑ: ๊ฑด์„คํ˜„์žฅ, ์‹คํ—˜์‹ค ๋“ฑ ๋‹ค์–‘ํ•œ ์‚ฐ์—… ๋ถ„์•ผ์— ์ ์šฉ ๊ฐ€๋Šฅ

๐Ÿ› ๏ธ ํ•ต์‹ฌ ๊ธฐ์ˆ  ์Šคํƒ

๊ธฐ์ˆ  ์„ค๋ช…
OpenCV ์ด๋ฏธ์ง€ ์ฒ˜๋ฆฌ ๋ฐ ์‹ค์‹œ๊ฐ„ ์˜์ƒ ๋ถ„์„
YOLOv8 ํ—ฌ๋ฉง ์ฐฉ์šฉ ์—ฌ๋ถ€ ๊ฐ์ฒด ๊ฐ์ง€
MediaPipe ์–ผ๊ตด ์ธ์‹ ๋ฐ ๋ˆˆ ๊นœ๋นก์ž„ ๊ฐ์ง€๋ฅผ ํ†ตํ•œ ์‚ฌ์šฉ์ž ์ธ์ฆ
Pandas ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ๋ฐ ๋ถ„์„
Matplotlib ๊ฐ์ง€ ๊ฒฐ๊ณผ ๋ฐ ํ†ต๊ณ„ ์‹œ๊ฐํ™”
Streamlit ์‚ฌ์šฉ์ž ์ธ์ฆ ๊ฒฐ๊ณผ ์›น ์ธํ„ฐํŽ˜์ด์Šค ์ œ๊ณต

๐Ÿ”ง ์‹œ์Šคํ…œ ๊ตฌ์„ฑ

๐Ÿ“‚ ๊ฐ์ง€ ํด๋ž˜์Šค (YOLO ๋ผ๋ฒจ)

  • helmet: ํ—ฌ๋ฉง ์ฐฉ์šฉ ์ƒํƒœ
  • no_helmet: ํ—ฌ๋ฉง ๋ฏธ์ฐฉ์šฉ ์ƒํƒœ
  • cap: ๋ชจ์ž ์ฐฉ์šฉ ์ƒํƒœ
  • only_helmet: ํ—ฌ๋ฉง๋งŒ ์žˆ์Œ (์ฐฉ์šฉ X)

๐Ÿ‘ ์‚ฌ์šฉ์ž ์ธ์ฆ ์‹œ์Šคํ…œ

  • YOLOv8: ์‹ค์‹œ๊ฐ„ ํ—ฌ๋ฉง ๊ฐ์ง€
  • MediaPipe: ๋ˆˆ ๋‘ ๋ฒˆ ๊นœ๋นก์ด๋ฉด ์‚ฌ์šฉ์ž ์ธ์ฆ
  • QR ์ฝ”๋“œ ์Šค์บ”: ์ถ”๊ฐ€ ๋ณด์•ˆ ์ ˆ์ฐจ
  • Streamlit UI: ์ธ์ฆ ๊ฒฐ๊ณผ ๋ฐ ์•ˆ๋‚ด ๋ฉ”์‹œ์ง€ ์ถœ๋ ฅ

๐Ÿ“Š ๋ฐ์ดํ„ฐ์…‹ ๋ฐ ๋ชจ๋ธ ๊ฐœ์„ 

๐Ÿงฉ ์ดˆ๊ธฐ ๋ฌธ์ œ์ 

  • ์ •๋ฉด ๋ชจ์ž ์‚ฌ์ง„ ๋ถ€์กฑ โ†’ ์ •๋ฉด ์ธ์‹ ์ •ํ™•๋„ ์ €ํ•˜
  • ํ—ฌ๋ฉง์„ ๋“ค๊ณ  ์žˆ๋Š” ์‚ฌ์ง„์„ helmet์œผ๋กœ ์ž˜๋ชป ์ธ์‹

๐Ÿ›  ํ•ด๊ฒฐ ๋ฐฉ์•ˆ

  • cap ์ •๋ฉด ์‚ฌ์ง„ ์ถ”๊ฐ€๋กœ ๋ฐ์ดํ„ฐ ๋ถˆ๊ท ํ˜• ํ•ด์†Œ
  • only_helmet ํด๋ž˜์Šค ์ถ”๊ฐ€ โ†’ ์˜ค์ธ์‹ ๋ฐฉ์ง€
  • ๋‹ค์–‘ํ•œ ๊ฐ๋„์˜ ์ด๋ฏธ์ง€ ์ƒ์„ฑ์„ ์œ„ํ•œ ๋ฐ์ดํ„ฐ ์ฆ๊ฐ• ์ ์šฉ

๐Ÿšง ์•Œ๋ ค์ง„ ์ด์Šˆ ๋ฐ ํ•ด๊ฒฐ ๋ฐฉ์•ˆ

๋ฌธ์ œ ํ•ด๊ฒฐ ๋ฐฉ์•ˆ
์ •๋ฉด ๋ชจ์ž ์ธ์‹ ํ•œ๊ณ„ ์ •๋ฉด ๋ชจ์ž ์ด๋ฏธ์ง€ ์ถ”๊ฐ€, ์ฆ๊ฐ• ๊ธฐ๋ฒ• ํ™œ์šฉ
ํ—ฌ๋ฉง vs ๋ชจ์ž ํ˜ผ๋™ only_helmet ๋ฐ์ดํ„ฐ ๋ถ„๋ฅ˜ ๊ฐ•ํ™”
์•ˆ๊ฒฝ ์ฐฉ์šฉ ์‹œ ๋ˆˆ ์ธ์‹ ์˜ค๋ฅ˜ ์กฐ๋ช… ์ œ์–ด ๋ฐ ํ•„ํ„ฐ๋ง ๊ธฐ๋ฒ• ์ ์šฉ

๐ŸŽฎ ์‚ฌ์šฉ ๋ฐฉ๋ฒ•

  1. ์นด๋ฉ”๋ผ ์•ž์— ์„œ์„œ ํ—ฌ๋ฉง์„ ์ฐฉ์šฉ
  2. ์‹œ์Šคํ…œ์ด YOLOv8์œผ๋กœ ์‹ค์‹œ๊ฐ„ ์ฐฉ์šฉ ์—ฌ๋ถ€ ํ™•์ธ
  3. ๋ˆˆ์„ ๋‘ ๋ฒˆ ๊นœ๋นก์—ฌ ์ธ์ฆ ์ˆ˜ํ–‰ (MediaPipe ๊ธฐ๋ฐ˜)
  4. QR ์ฝ”๋“œ๋ฅผ ์Šค์บ”ํ•˜์—ฌ ๋ณด์•ˆ ์ธ์ฆ ์™„๋ฃŒ
  5. Streamlit ์›น ํŽ˜์ด์ง€์—์„œ ์ธ์ฆ ๊ฒฐ๊ณผ ํ™•์ธ

๐Ÿ”ฎ ํ™•์žฅ ๊ฐ€๋Šฅ์„ฑ

ํ•ด๋‹น ์‹œ์Šคํ…œ์€ ์ „๋™ ํ‚ฅ๋ณด๋“œ ์™ธ์—๋„ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์‚ฐ์—…์•ˆ์ „/๊ณต๊ณต ์•ˆ์ „ ๋ถ„์•ผ๋กœ ํ™œ์šฉ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค:

  • โœ… ๊ฑด์„ค ํ˜„์žฅ ์•ˆ์ „ ์žฅ๋น„ ์ฐฉ์šฉ ๋ชจ๋‹ˆํ„ฐ๋ง
  • โœ… ๊ณต์žฅ ๋‚ด ์ž‘์—…์ž ๋ณดํ˜ธ ์žฅ๋น„ ๊ฐ์ง€
  • โœ… ์‹คํ—˜์‹ค ๋‚ด ์‹ค์‹œ๊ฐ„ ์•ˆ์ „ ํ™•์ธ ์‹œ์Šคํ…œ
  • โœ… ์Šคํฌ์ธ  ๋ณดํ˜ธ ์žฅ๋น„ ์ฐฉ์šฉ ์—ฌ๋ถ€ ๊ฒ€์ฆ

๐Ÿ‘ฅ ํŒ€ ๊ตฌ์„ฑ ๋ฐ ์—ญํ• 

๋ณธ ํ”„๋กœ์ ํŠธ๋Š” ์Šค๋งˆํŠธํŒฉํ† ๋ฆฌ ๊ต์œก๊ณผ์ • 2์ฐจ ํŒ€ ํ”„๋กœ์ ํŠธ๋กœ ์ง„ํ–‰๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์—ญํ•  ๋‹ด๋‹น ์—…๋ฌด
๐Ÿ”น ๋ฐ์ดํ„ฐ ์—”์ง€๋‹ˆ์–ด๋ง Roboflow๋ฅผ ํ™œ์šฉํ•œ ํ•™์Šต ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘ ๋ฐ ๋ถ„๋ฅ˜
๐Ÿ”น ๋ชจ๋ธ ๊ฐœ๋ฐœ YOLO ๋ชจ๋ธ ํ•™์Šต, ์„ฑ๋Šฅ ๊ฐœ์„  ๋ฐ ์ตœ์ ํ™”
๐Ÿ”น ์ปดํ“จํ„ฐ ๋น„์ „ OpenCV๋ฅผ ํ†ตํ•œ ์‹ค์‹œ๊ฐ„ ๊ฐ์ฒด ํƒ์ง€
๐Ÿ”น ์ธ์ฆ ์‹œ์Šคํ…œ MediaPipe ๊ธฐ๋ฐ˜ ๋ˆˆ ๊นœ๋นก์ž„ ๊ฐ์ง€ ๋ฐ QR ์ธ์ฆ ๋กœ์ง ๊ตฌํ˜„
๐Ÿ”น ์‹œ๊ฐํ™” ๋ฐ UI Matplotlib ๊ธฐ๋ฐ˜ ํ†ต๊ณ„ ๋ถ„์„ + Streamlit ์ธํ„ฐํŽ˜์ด์Šค ๊ตฌํ˜„

๐Ÿ“ˆ ํ”„๋กœ์ ํŠธ ์„ฑ๊ณผ

  • โœ… ์‹ค์‹œ๊ฐ„ YOLOv8 ๊ธฐ๋ฐ˜ ํ—ฌ๋ฉง ๊ฐ์ง€ ์‹œ์Šคํ…œ ๊ตฌํ˜„
  • โœ… ๋ˆˆ ๊นœ๋นก์ž„ + QR ์ธ์ฆ์„ ํ†ตํ•œ ์‚ฌ์šฉ์ž ์ธ์ฆ ํ”„๋กœ์„ธ์Šค ์™„์„ฑ
  • โœ… ์ง๊ด€์ ์ธ Streamlit UI๋กœ ์‚ฌ์šฉ์„ฑ ํ™•๋ณด
  • โœ… ์‚ฐ์—… ์ „๋ฐ˜์œผ๋กœ์˜ ํ™•์žฅ ๊ฐ€๋Šฅ์„ฑ ํ™•๋ณด

๐Ÿ“Ž ์ฐธ๊ณ  ๋งํฌ


๐Ÿ“Œ ํ–ฅํ›„ ๊ฐœ์„  ์‚ฌํ•ญ (์„ ํƒ์‚ฌํ•ญ)

  • ํ—ฌ๋ฉง ์ฐฉ์šฉ ์ƒํƒœ ์™ธ์— ์‚ฌ์šฉ์ž ํ–‰์œ„(์˜ˆ: ์Œ์ฃผ ์ƒํƒœ, ํœด๋Œ€ํฐ ์‚ฌ์šฉ ๋“ฑ) ์ธ์‹ ํ™•์žฅ
  • WebRTC ๊ธฐ๋ฐ˜ ์‹ค์‹œ๊ฐ„ ์˜์ƒ ์ŠคํŠธ๋ฆฌ๋ฐ ํ†ตํ•ฉ
  • ๋ชจ๋ฐ”์ผ ์•ฑ ํ˜•ํƒœ๋กœ ์ด์‹ (Flutter ๋“ฑ)

๐Ÿ ์‹คํ–‰ ์ „ ์ค€๋น„ ์‚ฌํ•ญ (์˜ต์…˜)

# ๊ฐ€์ƒํ™˜๊ฒฝ ์ƒ์„ฑ ๋ฐ ์˜์กด์„ฑ ์„ค์น˜
pip install -r requirements.txt

# Streamlit ์•ฑ ์‹คํ–‰
streamlit run app.py

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors