๋ณด์ ๊ฒฝ๋ณด ์์คํ ํ๋ก์ ํธ ์ฌ์ฉ Ultralytics YOLO11
Ultralytics YOLO11 ์ ํ์ฉํ ๋ณด์ ๊ฒฝ๋ณด ์์คํ ํ๋ก์ ํธ๋ ๊ณ ๊ธ ์ปดํจํฐ ๋น์ ๊ธฐ๋ฅ์ ํตํฉํ์ฌ ๋ณด์ ์กฐ์น๋ฅผ ๊ฐํํฉ๋๋ค. YOLO11 Ultralytics ์์ ๊ฐ๋ฐํ ์ด ์์คํ ์ ์ค์๊ฐ ๋ฌผ์ฒด ๊ฐ์ง ๊ธฐ๋ฅ์ ์ ๊ณตํ์ฌ ์ ์ฌ์ ์ธ ๋ณด์ ์ํ์ ์ฆ์ ์๋ณํ๊ณ ๋์ํ ์ ์์ต๋๋ค. ์ด ํ๋ก์ ํธ๋ ๋ช ๊ฐ์ง ์ฅ์ ์ ์ ๊ณตํฉ๋๋ค:
- ์ค์๊ฐ ํ์ง: YOLO11 ์ ํจ์จ์ฑ์ ํตํด ๋ณด์ ๊ฒฝ๋ณด ์์คํ ์ ๋ณด์ ์ฌ๊ณ ๋ฅผ ์ค์๊ฐ์ผ๋ก ํ์งํ๊ณ ๋์ํ์ฌ ๋์ ์๊ฐ์ ์ต์ํํ ์ ์์ต๋๋ค.
- ์ ํ๋: YOLO11 ๋ ๋ฌผ์ฒด ๊ฐ์ง ์ ํ๋๊ฐ ๋ฐ์ด๋ ์คํ์ ์ค์ด๊ณ ๋ณด์ ๊ฒฝ๋ณด ์์คํ ์ ์ ๋ขฐ์ฑ์ ํฅ์์ํค๋ ๊ฒ์ผ๋ก ์ ๋ช ํฉ๋๋ค.
- ํตํฉ ๊ธฐ๋ฅ: ์ด ํ๋ก์ ํธ๋ ๊ธฐ์กด ๋ณด์ ์ธํ๋ผ์ ์ํํ๊ฒ ํตํฉ๋์ด ์ ๊ทธ๋ ์ด๋๋ ์ง๋ฅํ ๊ฐ์ ๊ณ์ธต์ ์ ๊ณตํ ์ ์์ต๋๋ค.
Watch: ๋ณด์ ๊ฒฝ๋ณด ์์คํ
ํ๋ก์ ํธ Ultralytics YOLO11 ๋ฌผ์ฒด ๊ฐ์ง
์ฝ๋
์ฐธ๊ณ
์ฑ ๋น๋ฐ๋ฒํธ ์์ฑ ํ์
- Navigate to App Password Generator, designate an app name such as "security project," and obtain a 16-digit password. Copy this password and paste it into the designated
password
field in the code below.
Security Alarm System using YOLO11 Example
import cv2
from ultralytics import solutions
cap = cv2.VideoCapture("Path/to/video/file.mp4")
assert cap.isOpened(), "Error reading video file"
# Video writer
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
video_writer = cv2.VideoWriter("security_alarm_output.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))
from_email = "abc@gmail.com" # The sender email address
password = "---- ---- ---- ----" # 16-digits password generated via: https://myaccount.google.com/apppasswords
to_email = "xyz@gmail.com" # The receiver email address
# Init SecurityAlarm
security = solutions.SecurityAlarm(
show=True, # Display the output
model="yolo11n.pt", # i.e. YOLO11s.pt
records=1, # Total detections count to send an email about security
)
security.authenticate(from_email, password, to_email) # Authenticate the email server
# Process video
while cap.isOpened():
success, im0 = cap.read()
if not success:
print("Video frame is empty or video processing has been successfully completed.")
break
im0 = security.monitor(im0)
video_writer.write(im0)
cap.release()
video_writer.release()
cv2.destroyAllWindows()
๋์ ๋๋ค! ์ฝ๋๋ฅผ ์คํํ๋ฉด ๊ฐ์ฒด๊ฐ ๊ฐ์ง๋๋ฉด ์ด๋ฉ์ผ๋ก ํ ๋ฒ์ ์๋ฆผ์ ๋ฐ๊ฒ ๋ฉ๋๋ค. ์๋ฆผ์ ๋ฐ๋ณต์ ์ผ๋ก ์ ์ก๋์ง ์๊ณ ์ฆ์ ์ ์ก๋ฉ๋๋ค. ํ์ง๋ง ํ๋ก์ ํธ ์๊ตฌ ์ฌํญ์ ๋ง๊ฒ ์ฝ๋๋ฅผ ์์ ๋กญ๊ฒ ์ฌ์ฉ์ ์ง์ ํ ์ ์์ต๋๋ค.
์ด๋ฉ์ผ ์์ ์ํ
์ธ์ SecurityAlarm
๋ค์์ ํ์
๋๋ค. SecurityAlarm
์ธ์๋ฅผ ์ฌ์ฉํฉ๋๋ค:
์ด๋ฆ | ์ ํ | ๊ธฐ๋ณธ๊ฐ | ์ค๋ช |
---|---|---|---|
model |
str |
None |
Ultralytics YOLO ๋ชจ๋ธ ํ์ผ ๊ฒฝ๋ก |
line_width |
int |
2 |
๊ฒฝ๊ณ ์์์ ์ ๋๊ป์ ๋๋ค. |
show |
bool |
False |
๋น๋์ค ์คํธ๋ฆผ ํ์ ์ฌ๋ถ๋ฅผ ์ ์ดํ๋ ํ๋๊ทธ์ ๋๋ค. |
records |
int |
5 |
Total detections count to send an email about security. |
์ธ์ model.track
์ธ์ | ์ ํ | ๊ธฐ๋ณธ๊ฐ | ์ค๋ช |
---|---|---|---|
source |
str |
None |
์ด๋ฏธ์ง ๋๋ ๋์์์ ์์ค ๋๋ ํฐ๋ฆฌ๋ฅผ ์ง์ ํฉ๋๋ค. ํ์ผ ๊ฒฝ๋ก ๋ฐ URL์ ์ง์ํฉ๋๋ค. |
persist |
bool |
False |
ํ๋ ์ ๊ฐ ์ค๋ธ์ ํธ๋ฅผ ์ง์์ ์ผ๋ก ์ถ์ ํ์ฌ ๋น๋์ค ์ํ์ค ์ ์ฒด์์ ID๋ฅผ ์ ์งํ ์ ์์ต๋๋ค. |
tracker |
str |
botsort.yaml |
์ฌ์ฉํ ์ถ์ ์๊ณ ๋ฆฌ์ฆ์ ์ง์ ํฉ๋๋ค(์, bytetrack.yaml ๋๋ botsort.yaml . |
conf |
float |
0.3 |
ํ์ง ์ ๋ขฐ ์๊ณ๊ฐ์ ์ค์ ํฉ๋๋ค. ๊ฐ์ด ๋ฎ์์๋ก ๋ ๋ง์ ๊ฐ์ฒด๋ฅผ ์ถ์ ํ ์ ์์ง๋ง ์คํ์ด ํฌํจ๋ ์ ์์ต๋๋ค. |
iou |
float |
0.5 |
์ค๋ณต ๊ฐ์ง๋ฅผ ํํฐ๋งํ๊ธฐ ์ํ IoU( Intersection over Union ) ์๊ณ๊ฐ์ ์ค์ ํฉ๋๋ค. |
classes |
list |
None |
ํด๋์ค ์ธ๋ฑ์ค๋ณ๋ก ๊ฒฐ๊ณผ๋ฅผ ํํฐ๋งํฉ๋๋ค. ์๋ฅผ ๋ค์ด classes=[0, 2, 3] ์ง์ ๋ ํด๋์ค๋ง ์ถ์ ํฉ๋๋ค. |
verbose |
bool |
True |
์ถ์ ๊ฒฐ๊ณผ์ ํ์๋ฅผ ์ ์ดํ์ฌ ์ถ์ ๋ ๊ฐ์ฒด์ ์๊ฐ์ ์ถ๋ ฅ์ ์ ๊ณตํฉ๋๋ค. |
์์ฃผ ๋ฌป๋ ์ง๋ฌธ
Ultralytics YOLO11 ๋ณด์ ๊ฒฝ๋ณด ์์คํ ์ ์ ํ๋๋ฅผ ์ด๋ป๊ฒ ๊ฐ์ ํ๋์?
Ultralytics YOLO11 ๋ ๋์ ์ ํ๋์ ์ค์๊ฐ ๊ฐ์ฒด ํ์ง ๊ธฐ๋ฅ์ ์ ๊ณตํ์ฌ ๋ณด์ ๊ฒฝ๋ณด ์์คํ ์ ๊ฐํํฉ๋๋ค. ๊ณ ๊ธ ์๊ณ ๋ฆฌ์ฆ์ ์คํ์ ํฌ๊ฒ ์ค์ฌ ์์คํ ์ด ์ง์ง ์ํ์๋ง ๋์ํ๋๋ก ๋ณด์ฅํฉ๋๋ค. ์ด๋ ๊ฒ ํฅ์๋ ์์ ์ฑ์ ๊ธฐ์กด ๋ณด์ ์ธํ๋ผ์ ์ํํ๊ฒ ํตํฉ๋์ด ์ ๋ฐ์ ์ธ ๋ณด์ ๊ฐ์ ํ์ง์ ์ ๊ทธ๋ ์ด๋ํ ์ ์์ต๋๋ค.
Ultralytics YOLO11 ์ ๊ธฐ์กด ๋ณด์ ์ธํ๋ผ์ ํตํฉํ ์ ์๋์?
์, Ultralytics YOLO11 ๊ธฐ์กด ๋ณด์ ์ธํ๋ผ์ ์ํํ๊ฒ ํตํฉํ ์ ์์ต๋๋ค. ์ด ์์คํ ์ ๋ค์ํ ๋ชจ๋๋ฅผ ์ง์ํ๊ณ ์ฌ์ฉ์ ์ง์ ์ ์ ์ฐ์ฑ์ ์ ๊ณตํ๋ฏ๋ก ๊ณ ๊ธ ๊ฐ์ฒด ๊ฐ์ง ๊ธฐ๋ฅ์ผ๋ก ๊ธฐ์กด ์ค์ ์ ํฅ์์ํฌ ์ ์์ต๋๋ค. ํ๋ก์ ํธ์ YOLO11 ๋ฅผ ํตํฉํ๋ ๋ฐฉ๋ฒ์ ๋ํ ์์ธํ ์ง์นจ์ ํตํฉ ์น์ ์ ์ฐธ์กฐํ์ธ์.
Ultralytics YOLO11 ์ ์คํํ๊ธฐ ์ํ ์คํ ๋ฆฌ์ง ์๊ตฌ ์ฌํญ์ ๋ฌด์์ธ๊ฐ์?
ํ์ค ์ค์ ์์ Ultralytics YOLO11 ์ ์คํํ๋ ค๋ฉด ์ผ๋ฐ์ ์ผ๋ก ์ฝ 5GB์ ๋์คํฌ ์ฌ์ ๊ณต๊ฐ์ด ํ์ํฉ๋๋ค. ์ฌ๊ธฐ์๋ YOLO11 ๋ชจ๋ธ ๋ฐ ์ถ๊ฐ ์ข ์์ฑ์ ์ ์ฅํ๊ธฐ ์ํ ๊ณต๊ฐ์ด ํฌํจ๋ฉ๋๋ค. ํด๋ผ์ฐ๋ ๊ธฐ๋ฐ ์๋ฃจ์ ์ ๊ฒฝ์ฐ Ultralytics HUB๋ ํจ์จ์ ์ธ ํ๋ก์ ํธ ๊ด๋ฆฌ ๋ฐ ๋ฐ์ดํฐ ์ธํธ ์ฒ๋ฆฌ๋ฅผ ์ ๊ณตํ์ฌ ์คํ ๋ฆฌ์ง ์๊ตฌ ์ฌํญ์ ์ต์ ํํ ์ ์์ต๋๋ค. ํ์ฅ ์คํ ๋ฆฌ์ง๋ฅผ ํฌํจํ ํฅ์๋ ๊ธฐ๋ฅ์ ๋ํ ํ๋ก ์๊ธ์ ์ ๋ํด ์์ธํ ์์๋ณด์ธ์.
Ultralytics YOLO11 ๋ค๋ฅธ ๊ฐ์ฒด ๊ฐ์ง ๋ชจ๋ธ(์: Faster R-CNN ๋๋ SSD)๊ณผ ๋ค๋ฅธ ์ ์ ๋ฌด์์ธ๊ฐ์?
Ultralytics YOLO11 ๋ ์ค์๊ฐ ๊ฐ์ง ๊ธฐ๋ฅ๊ณผ ๋์ ์ ํ๋๋ก Faster R-CNN์ด๋ SSD์ ๊ฐ์ ๋ชจ๋ธ๋ณด๋ค ์ฐ์๋ฅผ ์ ํฉ๋๋ค. ๊ณ ์ ํ ์ํคํ ์ฒ๋ฅผ ํตํด ์ ๋ฐ๋ ์ ํ ์์ด ์ด๋ฏธ์ง๋ฅผ ํจ์ฌ ๋น ๋ฅด๊ฒ ์ฒ๋ฆฌํ ์ ์์ด ๋ณด์ ๊ฒฝ๋ณด ์์คํ ๊ณผ ๊ฐ์ด ์๊ฐ์ ๋ฏผ๊ฐํ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ด์์ ์ ๋๋ค. ๋ฌผ์ฒด ๊ฐ์ง ๋ชจ๋ธ์ ๋ํ ์ข ํฉ์ ์ธ ๋น๊ต๋ ๊ฐ์ด๋๋ฅผ ์ฐธ์กฐํ์ธ์.
Ultralytics YOLO11 ์ ์ฌ์ฉํ์ฌ ๋ณด์ ์์คํ ์์ ์คํ ๋น๋๋ฅผ ์ค์ด๋ ค๋ฉด ์ด๋ป๊ฒ ํด์ผ ํ๋์?
์คํ์ ์ค์ด๋ ค๋ฉด Ultralytics YOLO11 ๋ชจ๋ธ์ด ๋ค์ํ๊ณ ์ฃผ์์ด ์ ๋ฌ๋ฆฐ ๋ฐ์ดํฐ ์ธํธ๋ก ์ ์ ํ๊ฒ ํ๋ จ๋์๋์ง ํ์ธํ์ธ์. ํ์ดํผํ๋ผ๋ฏธํฐ๋ฅผ ๋ฏธ์ธ ์กฐ์ ํ๊ณ ์๋ก์ด ๋ฐ์ดํฐ๋ก ๋ชจ๋ธ์ ์ ๊ธฐ์ ์ผ๋ก ์ ๋ฐ์ดํธํ๋ฉด ํ์ง ์ ํ๋๋ฅผ ํฌ๊ฒ ํฅ์์ํฌ ์ ์์ต๋๋ค. ์์ธํ ํ์ดํผํ๋ผ๋ฏธํฐ ํ๋ ๊ธฐ๋ฒ์ ํ์ดํผํ๋ผ๋ฏธํฐ ํ๋ ๊ฐ์ด๋์์ ํ์ธํ ์ ์์ต๋๋ค.