<label id="jgr5k"></label>
    <legend id="jgr5k"><track id="jgr5k"></track></legend>

    <sub id="jgr5k"></sub>
  1. <u id="jgr5k"></u>
      久草国产视频,91资源总站,在线免费看AV,丁香婷婷社区,久久精品99久久久久久久久,色天使av,无码探花,香蕉av在线
      您正在使用IE低版瀏覽器,為了您的雷峰網賬號安全和更好的產品體驗,強烈建議使用更快更安全的瀏覽器
      此為臨時鏈接,僅用于文章預覽,將在時失效
      人工智能開發者 正文
      發私信給AI研習社
      發送

      0

      手把手教你如何用 OpenCV + Python 實現人臉識別

      本文作者: AI研習社 2017-05-02 15:33
      導語:如何實現人臉識別?

      雷鋒網按:本文作者郭璞,原文載于作者個人博客,雷鋒網已獲授權。

      下午的時候,配好了OpenCV的Python環境,OpenCV的Python環境搭建。于是迫不及待的想體驗一下opencv的人臉識別,如下文。

        必備知識

      Haar-like

      Haar-like百科釋義。通俗的來講,就是作為人臉特征即可。

      Haar特征值反映了圖像的灰度變化情況。例如:臉部的一些特征能由矩形特征簡單的描述,如:眼睛要比臉頰顏色要深,鼻梁兩側比鼻梁顏色要深,嘴巴比周圍顏色要深等。

      opencv api

      要想使用opencv,就必須先知道其能干什么,怎么做。于是API的重要性便體現出來了。就本例而言,使用到的函數很少,也就普通的讀取圖片,灰度轉換,顯示圖像,簡單的編輯圖像罷了。

      如下:

      讀取圖片

      只需要給出待操作的圖片的路徑即可。

      import cv2
      image = cv2.imread(imagepath)

      灰度轉換

      灰度轉換的作用就是:轉換成灰度的圖片的計算強度得以降低。

      import cv2
      gray = cv2.cvtColor(image,cv2.COLOR_BGR2GRAY)

      畫圖

      opencv 的強大之處的一個體現就是其可以對圖片進行任意編輯,處理。 
      下面的這個函數最后一個參數指定的就是畫筆的大小。

      import cv2
      cv2.rectangle(image,(x,y),(x+w,y+w),(0,255,0),2)

      顯示圖像

      編輯完的圖像要么直接的被顯示出來,要么就保存到物理的存儲介質。

      import cv2
      cv2.imshow("Image Title",image)

      獲取人臉識別訓練數據

      看似復雜,其實就是對于人臉特征的一些描述,這樣opencv在讀取完數據后很據訓練中的樣品數據,就可以感知讀取到的圖片上的特征,進而對圖片進行人臉識別。

      import cv2
      face_cascade = cv2.CascadeClassifier(r'./haarcascade_frontalface_default.xml')

      里賣弄的這個xml文件,就是opencv在GitHub上共享出來的具有普適的訓練好的數據。我們可以直接的拿來使用。

      訓練數據參考地址:

      https://github.com/opencv/opencv/tree/master/data/haarcascades 

      探測人臉

      說白了,就是根據訓練的數據來對新圖片進行識別的過程。

      import cv2

      # 探測圖片中的人臉

      faces = face_cascade.detectMultiScale(
         gray,
         scaleFactor = 1.15,
         minNeighbors = 5,
         minSize = (5,5),
         flags = cv2.cv.CV_HAAR_SCALE_IMAGE
      )

      我們可以隨意的指定里面參數的值,來達到不同精度下的識別。返回值就是opencv對圖片的探測結果的體現。

      處理人臉探測的結果

      結束了剛才的人臉探測,我們就可以拿到返回值來做進一步的處理了。但這也不是說會多么的復雜,無非添加點特征值罷了。

      import cv2

      print "發現{0}個人臉!".format(len(faces))

      for(x,y,w,h) in faces:
         cv2.rectangle(image,(x,y),(x+w,y+w),(0,255,0),2)

        實例

      有了剛才的基礎,我們就可以完成一個簡單的人臉識別的小例子了。

      圖片素材

      下面的這張圖片將作為我們的檢測依據。 

      手把手教你如何用 OpenCV + Python 實現人臉識別

      人臉檢測代碼

      # coding:utf-8

      import sys


      reload(sys)

      sys.setdefaultencoding('utf8')

      #    __author__ = '郭 璞'

      #    __date__ = '2016/9/5'

      #    __Desc__ = 人臉檢測小例子,以圓圈圈出人臉

      import cv2

      # 待檢測的圖片路徑

      imagepath = r'./heat.jpg'


      # 獲取訓練好的人臉的參數數據,這里直接從GitHub上使用默認值

      face_cascade = cv2.CascadeClassifier(r'./haarcascade_frontalface_default.xml')


      # 讀取圖片

      image = cv2.imread(imagepath)

      gray = cv2.cvtColor(image,cv2.COLOR_BGR2GRAY)


      # 探測圖片中的人臉

      faces = face_cascade.detectMultiScale(

          gray,

          scaleFactor = 1.15,

          minNeighbors = 5,

          minSize = (5,5),

          flags = cv2.cv.CV_HAAR_SCALE_IMAGE

      )


      print "發現{0}個人臉!".format(len(faces))


      for(x,y,w,h) in faces:

          # cv2.rectangle(image,(x,y),(x+w,y+w),(0,255,0),2)

          cv2.circle(image,((x+x+w)/2,(y+y+h)/2),w/2,(0,255,0),2)


      cv2.imshow("Find Faces!",image)

      cv2.waitKey(0)

      人臉檢測結果

      輸出圖片: 

      手把手教你如何用 OpenCV + Python 實現人臉識別

      輸出結果:

      D:\Software\Python2\python.exe E:/Code/Python/DataStructor/opencv/Demo.py
      發現3個人臉!

      詳情見:案例參考

        總結

      回顧一下,這次的實驗就是簡單的對opencv的常用的api的使用,重點在于訓練數據的使用和人臉探測的處理。

      TensorFlow & 神經網絡算法高級應用班” 要開課啦!

      從初級到高級,理論 + 實戰,一站式深度了解 TensorFlow!

      本課程面向深度學習開發者,講授如何利用 TensorFlow 解決圖像識別、文本分析等具體問題。課程跨度為 10 周,將從 TensorFlow 的原理與基礎實戰技巧開始,一步步教授學員如何在 TensorFlow 上搭建 CNN、自編碼、RNN、GAN 等模型,并最終掌握一整套基于 TensorFlow 做深度學習開發的專業技能。

      兩名授課老師佟達、白發川身為 ThoughtWorks 的資深技術專家,具有豐富的大數據平臺搭建、深度學習系統開發項目經驗。

      時間:每周二、四晚 20:00-21:00

      開課時長:總學時 20 小時,分 10 周完成,每周 2 次,每次 1 小時

      線上授課地址:http://www.mooc.ai/

      雷鋒網相關閱讀:

      老板來了:人臉識別 + 手機推送,老板來了你立刻知道!

      繼LFW之后,騰訊優圖又在難度更大的人臉識別庫MegaFace中獲得全球第一

      33歲男子如何發現自己被拐真相?除了川式烤魚,還有人臉識別技術

      雷峰網版權文章,未經授權禁止轉載。詳情見轉載須知。

      手把手教你如何用 OpenCV + Python 實現人臉識別

      分享:
      相關文章

      編輯

      聚焦數據科學,連接 AI 開發者。更多精彩內容,請訪問:yanxishe.com
      當月熱門文章
      最新文章
      請填寫申請人資料
      姓名
      電話
      郵箱
      微信號
      作品鏈接
      個人簡介
      為了您的賬戶安全,請驗證郵箱
      您的郵箱還未驗證,完成可獲20積分喲!
      請驗證您的郵箱
      立即驗證
      完善賬號信息
      您的賬號已經綁定,現在您可以設置密碼以方便用郵箱登錄
      立即設置 以后再說
      主站蜘蛛池模板: 内射视频福利在线观看| 免费又黄又裸乳的视频| 三上悠亚精品二区在线观看| 亚洲成人资源在线| 亚洲偷| 亚洲国产精品500在线观看| 久久婷婷激情综合色综合俺也去| 小13箩利洗澡无码免费视频| 亚洲免费观看视频| 91在线播| av色导航| 91拍真实国产伦偷精品| 少妇高潮喷水在线观看| 国产综合无码一区二区色蜜蜜| 91精品国产麻豆国产自产在线| 亚洲自偷自拍熟女另类| 9191久久| 欧美猛少妇色xxxxx| 黑人AV网站| 成人AV在线资源| 婷婷丁香五月亚洲中文字幕| 国产日韩精品在线视频| 熟女俱乐部五十路六十路| 久久这里都是精品一区| 久无码久无码av无码| 德兴市| 毛茸茸性xxxx毛茸茸毛茸茸| www.干| 99re6在线视频精品免费下载| 91啪在线| 中文字幕不卡av| 精品人妻少妇| 午夜福利电影| 国精品无码一区二区三区在线看| 国产亚洲精品久久久美女18黄| 这里只有精品视频| 人妻精品久久久久中文字幕| 日韩欧美亚洲国产精品字幕久久久 | 精品在免费线中文字幕久久| 日本丰满的人妻hd高清在线| 国产精品激情av在线播放|