python opencv 기반 조작 카메라
#
import cv2 as cv
# 0
capture = cv.VideoCapture(0)
while(True):
#
# 1 ret(return value ) ,
ret, frame = capture.read()
#
gray = cv.cvtColor(frame, cv.COLOR_BGR2GRAY)
cv.imshow('frame', gray)
if cv.waitKey(1) == ord('q'):
break
카메라 에 포 착 된 그림:카메라 속성 값 가 져 오기 및 수정
capture.get(propid)을 통 해 캡 처 해상도,밝기,대비 도 등 카메라 의 일부 속성 을 얻 을 수 있 습 니 다.propid 는 0~18 의 숫자 로 서로 다른 속성 을 대표 합 니 다.카메라 의 속성 치 를 수정 하려 면 capture.set(propid,value)를 사용 할 수 있 습 니 다.예 를 들 어 while 전에 아래 코드 를 추가 하면 위의 2 배 해상도 영상 을 캡 처 할 수 있 습 니 다.
#
# propId , OpenCV
width, height = capture.get(3), capture.get(4)
print(width, height)
#
capture.set(cv.CAP_PROP_FRAME_WIDTH, width * 2)
capture.set(cv.CAP_PROP_FRAME_HEIGHT, height * 2)
캡 처 한 2 배 해상 도 는 원래 의 그림 과 같 습 니 다:로 컬 비디오 재생
카 메 라 를 켜 는 것 과 마찬가지 로 카메라 번 호 를 동 영상 경로 로 바 꾸 면 로 컬 동 영상 을 재생 할 수 있다.cv.waitkey()를 돌 이 켜 보면 매개 변 수 는 일시 정지 시간 을 표시 하기 때문에 이 값 이 클 수록 동 영상 재생 속도 가 느 리 고 반대로 재생 속도 가 빠 를 수록 보통 25 또는 30 으로 설정 합 니 다.
# opencv
import cv2 as cv
capture = cv.VideoCapture('E:/1.mp4')
while(capture.isOpened()):
ret, frame = capture.read()
gray = cv.cvtColor(frame, cv.COLOR_BGR2GRAY)
cv.imshow('frame', gray)
if cv.waitKey(30) == ord('q'):
break
재생 중인 E:/1.mp4:비디오 녹화 및 저장
이전에 저희 가 그림 을 저장 할 때 cv.imwrite()를 사 용 했 습 니 다.영상 을 저장 하려 면 VideoWriter 의 대상 을 만들어 야 합 니 다.네 개의 인 자 를 입력 해 야 합 니 다.
1.'output.avi'와 같은 출력 파일 이름
2.인 코딩 방식 FourCC 코드
3.프레임 레이트 FPS
4.저장 할 해상도 크기
FourCC 는 비디오 인 코딩 방식 을 지정 하 는 데 사용 되 는 4 바이트 코드 입 니 다.예 를 들 어 MJPG 인 코딩 은 이렇게 쓸 수 있 습 니 다:cv.VideoWriterfourcc(*'MJPG')또는 cv.VideoWriterfourcc('M','J','P','G')
import cv2 as cv
capture = cv.VideoCapture(0)
# VideoWriter
fourcc = cv.VideoWriter_fourcc(*'MJPG')
outfile = cv.VideoWriter('output.avi', fourcc, 25., (640, 480))
while(capture.isOpened()):
ret, frame = capture.read()
if ret:
outfile.write(frame) #
cv.imshow('frame', frame)
if cv.waitKey(1) == ord('q'):
break
else:
break
원 하 는 대로 현재 경로 에서 output.avi 를 생 성 했 습 니 다.이상 은 python 이 opencv 를 바탕 으로 카 메 라 를 조작 하 는 상세 한 내용 입 니 다.python opencv 조작 카메라 에 관 한 자 료 는 다른 관련 글 을 주목 하 십시오!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
로마 숫자를 정수로 또는 그 반대로 변환그 중 하나는 로마 숫자를 정수로 변환하는 함수를 만드는 것이었고 두 번째는 그 반대를 수행하는 함수를 만드는 것이었습니다. 문자만 포함합니다'I', 'V', 'X', 'L', 'C', 'D', 'M' ; 문자열이 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.