欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python基于opencv調(diào)用攝像頭獲取個人圖片的實現(xiàn)方法

 更新時間:2019年02月21日 09:02:52   作者:Together_CZ  
今天小編就為大家分享一篇關(guān)于Python基于opencv調(diào)用攝像頭獲取個人圖片的實現(xiàn)方法,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧

接觸圖像領(lǐng)域的應(yīng)該對于opencv都不會感到陌生,這個應(yīng)該算是功能十分強勁的一個算法庫了,當(dāng)然了,使用起來也是很方便的,之前使用Windows7的時候出現(xiàn)多該庫難以安裝成功的情況,現(xiàn)在這個問題就不存在了,需要安裝包的話可以去我的資源中下載使用,使用pip安裝方式十分地便捷。

今天是基于opencv模塊來調(diào)用筆記本的內(nèi)置攝像頭,然后從視頻流中獲取到人臉的圖像數(shù)據(jù)用于之后的人臉識別項目,也就是為了構(gòu)建可用的數(shù)據(jù)集。整個實現(xiàn)過程并不復(fù)雜,具體如下:

#!usr/bin/env python
#encoding:utf-8
'''
__Author__:沂水寒城
功能: Python opencv調(diào)用攝像頭獲取個人圖片
使用方法:
    啟動攝像頭后需要借助鍵盤輸入操作來完成圖片的獲取工作
    c(change): 生成存儲目錄
    p(photo): 執(zhí)行截圖
    q(quit): 退出拍攝
OpenCV簡介
1、videoCapture()方法打開攝像
  攝像頭變量 cv2.VideoCapture(n)  n為整數(shù)內(nèi)置攝像頭為0,若有其他攝像頭則依次為1,2,3,...
  cap=cv2.VideoCapture(0) 打開內(nèi)置攝像頭
2、cap.isOpened()方法判斷攝像頭是否處于打開,返回結(jié)果為:True、False
3、ret,img=cap.read() 讀取圖像
  布爾變量,圖像變量=cap.read() 
4、cap.release() 釋放攝像頭
5、action=cv2.waitKey(n) 獲取用戶輸入,同時可獲取按鍵的ASCLL碼值
'''
import os
import cv2
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
def cameraAutoForPictures(saveDir='data/'):
  '''
  調(diào)用電腦攝像頭來自動獲取圖片
  '''
  if not os.path.exists(saveDir):
    os.makedirs(saveDir)
  count=1 #圖片計數(shù)索引
  cap=cv2.VideoCapture(0)
  width,height,w=640,480,360
  cap.set(cv2.CAP_PROP_FRAME_WIDTH,width)
  cap.set(cv2.CAP_PROP_FRAME_HEIGHT,height)
  crop_w_start=(width-w)//2
  crop_h_start=(height-w)//2
  print 'width: ',width
  print 'height: ',height
  while True:
    ret,frame=cap.read() #獲取相框
    frame=frame[crop_h_start:crop_h_start+w,crop_w_start:crop_w_start+w] #展示相框
    frame=cv2.flip(frame,1,dst=None) #前置攝像頭獲取的畫面是非鏡面的,即左手會出現(xiàn)在畫面的右側(cè),此處使用flip進(jìn)行水平鏡像處理
    cv2.imshow("capture", frame)
    action=cv2.waitKey(1) & 0xFF
    if action==ord('c'):
      saveDir=raw_input(u"請輸入新的存儲目錄:")
      if not os.path.exists(saveDir):
        os.makedirs(saveDir)
    elif action==ord('p'):
      cv2.imwrite("%s/%d.jpg" % (saveDir,count),cv2.resize(frame, (224, 224),interpolation=cv2.INTER_AREA))
      print(u"%s: %d 張圖片" % (saveDir,count))
      count+=1
    if action==ord('q'):
      break
  cap.release() #釋放攝像頭
  cv2.destroyAllWindows() #丟棄窗口
if __name__=='__main__':  
  cameraAutoForPictures(saveDir='data/')

上述代碼的運行環(huán)境需要是Python2,因為python2中才有reload方法,去掉那些語句就可以在Python3中執(zhí)行了,我們在Python2的環(huán)境中執(zhí)行結(jié)果截圖如下:

我的保存路徑是data,按q退出后,進(jìn)入data文件夾下就可以看到自己的“靚照”了哈,好了數(shù)據(jù)集準(zhǔn)備到此結(jié)束,接下來準(zhǔn)備實戰(zhàn)人臉識別。 

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接

相關(guān)文章

  • 用python給自己做一款小說閱讀器過程詳解

    用python給自己做一款小說閱讀器過程詳解

    這篇文章主要介紹了用python給自己做一款小說閱讀器過程詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-07-07
  • Python數(shù)據(jù)類型之Set集合實例詳解

    Python數(shù)據(jù)類型之Set集合實例詳解

    這篇文章主要介紹了Python數(shù)據(jù)類型之Set集合,結(jié)合實例形式詳細(xì)分析了Python數(shù)據(jù)類型中集合的概念、原理、創(chuàng)建、遍歷、交集、并集等相關(guān)操作技巧,需要的朋友可以參考下
    2019-05-05
  • python beautiful soup庫入門安裝教程

    python beautiful soup庫入門安裝教程

    Beautiful Soup是python的一個庫,最主要的功能是從網(wǎng)頁抓取數(shù)據(jù)。今天通過本文給大家分享python beautiful soup庫入門教程,需要的朋友參考下吧
    2021-08-08
  • python 如何停止一個死循環(huán)的線程

    python 如何停止一個死循環(huán)的線程

    這篇文章主要介紹了python 如何停止一個死循環(huán)的線程,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2020-11-11
  • python利用pd.cut()和pd.qcut()對數(shù)據(jù)進(jìn)行分箱操作

    python利用pd.cut()和pd.qcut()對數(shù)據(jù)進(jìn)行分箱操作

    本文主要介紹了python利用pd.cut()和pd.qcut()對數(shù)據(jù)進(jìn)行分箱操作,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • python plt可視化——打印特殊符號和制作圖例代碼

    python plt可視化——打印特殊符號和制作圖例代碼

    這篇文章主要介紹了python plt可視化——打印特殊符號和制作圖例代碼,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • Python中POST調(diào)用Restful接口示例

    Python中POST調(diào)用Restful接口示例

    這篇文章主要介紹了Python之POST調(diào)用Restful接口示例,本文結(jié)合示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-02-02
  • Python多進(jìn)程并發(fā)與多線程并發(fā)編程實例總結(jié)

    Python多進(jìn)程并發(fā)與多線程并發(fā)編程實例總結(jié)

    這篇文章主要介紹了Python多進(jìn)程并發(fā)與多線程并發(fā)編程,結(jié)合實例形式總結(jié)分析了Python編程中的多進(jìn)程并發(fā)與多線程并發(fā)相關(guān)概念、使用方法與操作注意事項,需要的朋友可以參考下
    2018-02-02
  • TensorFlow2.X使用圖片制作簡單的數(shù)據(jù)集訓(xùn)練模型

    TensorFlow2.X使用圖片制作簡單的數(shù)據(jù)集訓(xùn)練模型

    這篇文章主要介紹了TensorFlow2.X使用圖片制作簡單的數(shù)據(jù)集訓(xùn)練模型,本文通過截圖實例代碼相結(jié)合給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-04-04
  • Python實現(xiàn)多線程HTTP下載器示例

    Python實現(xiàn)多線程HTTP下載器示例

    本篇文章主要介紹了Python實現(xiàn)多線程HTTP下載器示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-02-02

最新評論