提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

由于本人研究生课题是深度学习目标检测方向、因此需要大量的数据集。在本地采样时,可以利用openCV提供的库函数完成照片采集。


一、采集方式

本代码通过调用摄像头显示图像信息,然后利用键盘截取视频帧保存到本地文件夹实现图片采集。

二、代码部分

import cv2
import os
#import time
#打开摄像头,一般内置为0,外接为1
cap = cv2.VideoCapture(0)
#cap.set(cv2.CAP_PROP_POS_FRAMES,50) 
i = 0

#也可写成while True
while(1):
    """
    ret:True或者False,代表有没有读取到图片
    frame:表示截取到一帧的图片
    """
    ret,frame = cap.read()
    # 展示图片
    cv2.imshow('capture',frame)
    # 保存图片
    k=cv2.waitKey(1)
    if k==ord('k'):
        cv2.imwrite(r"F:\sample\\"+ str(i) + ".jpg",frame) #存储路径 
        i = i + 1
    #time.sleep(5)
    """
       cv2.waitKey(1):waitKey()函数功能是不断刷新图像,返回值为当前键盘的值
       OxFF:是一个位掩码,一旦使用了掩码,就可以检查它是否是相应的值
       ord('q'):返回q对应的unicode码对应的值(113)
    """
    if k==ord('q'):
        break
#释放对象和销毁窗口
cap.release()
cv2.destroyAllWindows()

三、效果演示

运行代码后界面如下,键盘按动‘k’即可保存图片到本地:

在这里插入图片描述
在这里插入图片描述

按动‘q’即可退出。


Logo

一站式 AI 云服务平台

更多推荐