opencv拍摄照片,录制保存视频
程序员文章站
2022-05-16 14:57:46
...
拍摄照片
import cv2
import numpy
import time
'''
实现了拍摄OK或者NG图片q
按O拍摄OK的照片
按N拍摄NG的照片
按q退出
'''
# 调整参数实现读取视频或者调用摄像头
cap = cv2.VideoCapture(0) # 调用摄像头
cap.set(cv2.CAP_PROP_FRAME_WIDTH, 1920) # 分辨率
cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 1080) # 分辨率
cap.set(cv2.CAP_PROP_FPS, 20) # 帧数
index_ok = 0
index_ng = 0
# current_day = time.strftime('%Y-%m-%d')
current_day = "20190925"
print(current_day)
cv2.namedWindow('Frame',cv2.WINDOW_FULLSCREEN)
while(cap.isOpened()):
# 从摄像头读取一帧,ret是表明成功与否
ret, frame = cap.read()
if ret:
cv2.imshow('Frame', frame)
else:
break
input = cv2.waitKey(1) & 0xFF
# 按O保存OK图片
if input == ord('o'):
cv2.imwrite("./OK/ok-%s-%s.jpg" % (current_day, index_ok), frame)
index_ok += 1
print("已拍摄%s张OK图片,%s张OK图片" % (index_ok, index_ng))
# 按N保存NG图片
elif input == ord('n'):
cv2.imwrite("./NG/ngq-%s-%s.jpg" % (current_day, index_ng), frame)
index_ng += 1
print("已拍摄%s张OK图片,%s张NG图片" % (index_ok, index_ng))
# 监听键盘,按下q键退出
if input == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
拍摄并保存视频
import cv2
'''
实现了拍摄视频的功能
可以自定义分辨率、帧率
'''
# 调整参数实现读取视频或者调用摄像头
cap = cv2.VideoCapture(1) # 调用摄像头
cap.set(cv2.CAP_PROP_FRAME_WIDTH, 1920) # 分辨率
cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 1080) # 分辨率
cap.set(cv2.CAP_PROP_FPS, 20) # 帧数
fourcc = cv2.VideoWriter_fourcc("I", "4", "2", "0")
out = cv2.VideoWriter("./video/test.mp4", fourcc, 20, (1920, 1080))
cv2.namedWindow('Frame', cv2.WINDOW_FULLSCREEN)
while (cap.isOpened()):
# 从摄像头读取一帧,ret是表明成功与否
ret, frame = cap.read()
if ret:
out.write(frame)
cv2.imshow('Frame', frame)
else:
break
input = cv2.waitKey(1) & 0xFF
# 监听键盘,按下q键退出
if input == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
推荐阅读
-
iOS中读取照片库及保存图片或视频到照片库的要点解析
-
python+opencv打开摄像头,保存视频、拍照功能的实现方法
-
Python OpenCV对本地视频文件进行分帧保存的实例
-
iOS中读取照片库及保存图片或视频到照片库的要点解析
-
9月10日发!OPPO预告Reno2新细节:照片与视频拍摄均支持防抖
-
python+opencv打开摄像头,保存视频、拍照功能的实现方法
-
Python OpenCV对本地视频文件进行分帧保存的实例
-
Android10相机拍摄保存照片并显示(解决各种闪退,添加v4包)
-
基于opencv下对视频的灰度变换,高斯滤波,canny边缘检测处理,同窗体显示并保存
-
抖音怎么拍照片保存手机里(加文字发布视频的方法)