๋ผ์ฆ๋ฒ ๋ฆฌํ์ด์ ์นด๋ฉ๋ผ๋ฅผ ์ด์ฉํด์ ์ค์๊ฐ์ผ๋ก ์์์ฒ๋ฆฌํด์ ๋จธ์ ๋ฌ๋์ ๋๋ฆฌ๊ธฐ ์ํด ์์นํด๋ณด๊ณ ์ ๋ฆฌํ ๋ด์ฉ๋ค์ด๋ค
์ผ๋จ ์ด๋ฒ ๊ธ์ ์ค์๊ฐ์ผ๋ก ์์์ฒ๋ฆฌ๋ฅผ ํ๊ธฐ ์ํด์ openCV์ ์ฝ๋๋ฅผ ์ ๋ฆฌ๋ฅผ ํด๋ณด์๋ค
OpenCV
- cap = cv2.VideoCapture(path or ์นด๋ฉ๋ผ์ฅ์น๋ฒํธ)
cap = cv2.VideoCapture("์์ ๊ฒฝ๋ก" or 0: ์นด๋ฉ๋ผ์ฅ์น๋ฒํธ)
์ฒซ ํ๋ ์ ์ฝ์ด cap ๊ฐ์ฒด์ ์ ์ฅ
- cap.isOpen()
if cap.isOpened():
cap์ด ์ง์ ํ ํ๋ ์์ผ๋ก ์ ๋๋ก ์ด๊ธฐํ๋์๋์ง ํ์ธ
- cap.read()
ret, img = cap.read() # ๋ฌดํ๋ฐ๋ณต
์ฐ์์ผ๋ก ํ๋ ์ ์ฝ๊ธฐ (์์ ์ ๋ณด ์ฝ๊ธฐ)
ret : true or false / img : ํ๋ ์ ์ด๋ฏธ์ง or None
- cap.get()
cap.get() # ์์์ ๋ณด ์ฝ์ด์ค๊ธฐ
cv2.CAP_PROP_FRAME_WIDTH / HEIGHT / COUNT : width ์ ๋ณด / height ์ ๋ณด / ์์ ์ด ํ๋ ์์
cv2.CAP_PROP_FPS : ์์ fps ๊ฐ
- cv2.imshow(’file’, file)
cv2.imshow(video_file, img) # ์ฐฝ์ ์ ๋ชฉ, ํ๋ฉด์ ํ์ํ ํ๋ ์ ์ด๋ฏธ์ง ๊ฐ์ฒด
์์ ํ์ผ ์ด๊ธฐ
- cap.release()
cap.release() # ์์ ๋ฐ๋ฉ
- cap.destroyAllWindows()
cv2.destroyAllWindows()
์ด๋ฆฐ ์ฐฝ(์์, ์ด๋ฏธ์ง) ๋ซ๊ธฐ
- ์ ์ง
if cv2.waitKey(1) != -1:
break
์นด๋ฉ๋ผ(์ ์ฅ๋์ด ์๋ ์์ x)๋ ๋์ด ์๊ธฐ ๋๋ฌธ์ ์ด๋ค ํค๊ฐ ๋๋ฆฌ๋ฉด ์ ์ง๋๋๋ก
's t u d y . . ๐ง > AI ์ค ML ์ค DL' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[CNN] Custom Dataset์ผ๋ก Pothole detection (1) | 2022.10.05 |
---|---|
[YOLOv3] Object Detection๊ณผ Bounding Box (0) | 2022.10.02 |
[DARKNET] ๋คํฌ๋ท์ผ๋ก YOLOV3 ๋๋ฆฌ๋ ๋ฒ (0) | 2022.10.02 |
[YOLOv3] Object detection (1) | 2022.09.30 |
[OpenCV] ์ค์๊ฐ ์์ ์ฒ๋ฆฌ : ๊ธฐ๋ณธ ํจ์ ์ ๋ฆฌ (0) | 2022.09.14 |