python调用摄像头拍摄数据集

yipeiwu_com6年前Python基础

之前需要做一些目标检测的训练,需要自己采集一些数据集,写了一个小demo来实现图片的采集

使用方法:

  • 指定name的名称,name为分类的标签
  • 按n键拍摄图片
  • 程序会在当前目录下生成一个pictures的文件夹,图片存放在其中
print("正在初始化摄像头...")
import cv2
import os
import datetime
cap = cv2.VideoCapture(0)
print("初始化成功!")
 
# name='play_phone'
# name='haqian'
# name='spleeing'
# name='zhengchang'
# name="zhedang"
name="waitou"
 
savedpath =r'./pictures/'+name
isExists = os.path.exists(savedpath)
if not isExists:
  os.makedirs(savedpath)
  print('path of %s is build' % (savedpath))
else:
  print('path of %s already exist and rebuild' % (savedpath))
print("按N键拍摄图片")
i=0
while(True):
  ret, frame = cap.read()
  gray = cv2.cvtColor(frame, 1)
  cv2.imshow('test',frame)
  now = datetime.datetime.now()
  now = now.strftime('%m-%d-%H-%M-%S')
  savedname = '/'+name+ '_' + str(i) + '_{0}' '.jpg'.format(now)
  if cv2.waitKey(1) & 0xFF == ord('n'):  #按N拍摄
    i += 1
    cv2.imwrite(savedpath + savedname, frame)
    cv2.namedWindow("Image")
    cv2.imshow("Image", frame)
    cv2.waitKey(0)
    cv2.destroyAllWindows()
 
cap.release()
cv2.destroyAllWindows()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

编写Python的web框架中的Model的教程

有了ORM,我们就可以把Web App需要的3个表用Model表示出来: import time, uuid from transwarp.db import next_id fr...

pytorch 实现打印模型的参数值

pytorch 实现打印模型的参数值

对于简单的网络 例如全连接层Linear 可以使用以下方法打印linear层: fc = nn.Linear(3, 5) params = list(fc.named_paramet...

Python使用MYSQLDB实现从数据库中导出XML文件的方法

本文实例讲述了Python使用MYSQLDB实现从数据库中导出XML文件的方法。分享给大家供大家参考。具体分析如下: 这里需要给前端以xml格式提供一些数据,这些数据在目前的数据库中已经...

使用Python脚本实现批量网站存活检测遇到问题及解决方法

做渗透测试的时候,有个比较大的项目,里面有几百个网站,这样你必须首先确定哪些网站是正常,哪些网站是不正常的。所以自己就编了一个小脚本,为以后方便使用。 具体实现的代码如下: #!/u...

Python的Asyncore异步Socket模块及实现端口转发的例子

Asyncore模块提供了以异步的方式写入套接字服务客户端和服务器的基础结构。 只有两种方式使一个程序在单处理器上实现“同时做不止一件事”。多线程编程是最简单和最流行的方式,但是有另一种...