成人av在线资源一区,亚洲av日韩av一区,欧美丰满熟妇乱XXXXX图片,狠狠做五月深爱婷婷伊人,桔子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積分喲!
    請驗證您的郵箱
    立即驗證
    完善賬號信息
    您的賬號已經綁定,現在您可以設置密碼以方便用郵箱登錄
    立即設置 以后再說