最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python學(xué)習(xí)筆記之圖片人臉檢測(cè)識(shí)別實(shí)例教程

 更新時(shí)間:2019年03月06日 09:21:03   作者:小柒  
這篇文章主要給大家介紹了關(guān)于Python學(xué)習(xí)筆記之圖片人臉檢測(cè)識(shí)別的相關(guān)資料,文中通過(guò)示例代碼以及圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

前言

隨著科技的發(fā)展,人臉識(shí)別技術(shù)在許多領(lǐng)域得到的非常廣泛的應(yīng)用,手機(jī)支付、銀行身份驗(yàn)證、手機(jī)人臉解鎖等等。

識(shí)別

廢話(huà)少說(shuō),這里我們使用 opencv 中自帶了 haar人臉特征分類(lèi)器,利用訓(xùn)練好的 haar 特征的 xml 文件,在圖片上檢測(cè)出人臉的坐標(biāo),利用這個(gè)坐標(biāo),我們可以將人臉區(qū)域剪切保存,也可以在原圖上將人臉框出。

代碼實(shí)現(xiàn):

# -*-coding:utf8-*-#
import os
import cv2
from PIL import Image, ImageDraw
from datetime import datetime

"""
分類(lèi)器 https://github.com/opencv/opencv/tree/master/data/haarcascades
安裝模塊:pip install Pillow pip install opencv-python
博客:https://blog.52itstyle.vip/archives/3771/
"""


def detectFaces(image_name):
 img = cv2.imread(image_name)
 face_cascade = cv2.CascadeClassifier(os.getcwd()+"\\haarcascade\\haarcascade_frontalface_alt.xml")
 if img.ndim == 3:
  gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
 else:
  gray = img # if語(yǔ)句:如果img維度為3,說(shuō)明不是灰度圖,先轉(zhuǎn)化為灰度圖gray,如果不為3,也就是2,原圖就是灰度圖

 faces = face_cascade.detectMultiScale(gray, 1.2, 5) # 1.3和5是特征的最小、最大檢測(cè)窗口,它改變檢測(cè)結(jié)果也會(huì)改變
 result = []
 for (x, y, width, height) in faces:
  result.append((x, y, x + width, y + height))
 return result


# 保存人臉圖
def saveFaces(image_name):
 faces = detectFaces(image_name)
 if faces:
  # 將人臉保存在save_dir目錄下。
  # Image模塊:Image.open獲取圖像句柄,crop剪切圖像(剪切的區(qū)域就是detectFaces返回的坐標(biāo)),save保存。
  save_dir = image_name.split('.')[0] + "_faces"
  os.mkdir(save_dir)
  count = 0
  for (x1, y1, x2, y2) in faces:
   file_name = os.path.join(save_dir, str(count) + ".jpg")
   Image.open(image_name).crop((x1, y1, x2, y2)).save(file_name)
   count += 1


if __name__ == '__main__':
 time1 = datetime.now()
 result = detectFaces(os.getcwd()+"\\images\\gaoyuanyuan.jpg")
 time2 = datetime.now()
 print("耗時(shí):" + str(time2 - time1))
 if len(result) > 0:
  print("有人存在?。?--》人數(shù)為:" + str(len(result)))
 else:
  print('視頻圖像中無(wú)人??!')

 drawFaces(os.getcwd()+"\\images\\", "hanxue.jpg")
 saveFaces(os.getcwd()+\\images\\gaoyuanyuan.jpg)

識(shí)別效果圖:

多人識(shí)別效果:

經(jīng)過(guò)測(cè)試,最終選用了 haarcascade_frontalface_alt.xml 做人臉識(shí)別,識(shí)別率最高。

人臉檢測(cè)分類(lèi)器對(duì)比:

級(jí)聯(lián)分類(lèi)器的類(lèi)型 XML文件名
人臉檢測(cè)器(默認(rèn)) haarcascade_frontalface_default.xml
人臉檢測(cè)器(快速的Haar) haarcascade_frontalface_alt2.xml
人臉檢測(cè)器(Tree) haarcascade_frontalface_alt_tree.xml
人臉檢測(cè)器(Haar_1) haarcascade_frontalface_alt.xml

小結(jié)

開(kāi)源的人臉檢測(cè)分類(lèi)器對(duì)于標(biāo)準(zhǔn)的人臉識(shí)別足夠了,要想精確識(shí)別比如,側(cè)臉、模糊、光照、遮擋的人臉,只能通過(guò)深度機(jī)器學(xué)習(xí)進(jìn)一步優(yōu)化識(shí)別精度和速度。

源碼

https://gitee.com/52itstyle/Python/tree/master/Day09本地下載

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

相關(guān)文章

  • Python+pandas編寫(xiě)命令行腳本操作excel的tips詳情

    Python+pandas編寫(xiě)命令行腳本操作excel的tips詳情

    這篇文章主要介紹了Python+pandas編寫(xiě)命令行腳本操作excel的tips詳情,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下
    2022-07-07
  • python文件讀寫(xiě)并使用mysql批量插入示例分享(python操作mysql)

    python文件讀寫(xiě)并使用mysql批量插入示例分享(python操作mysql)

    這篇文章主要介紹了python文件讀寫(xiě)并使用mysql批量插入示例,可以學(xué)習(xí)到python操作mysql數(shù)據(jù)庫(kù)的方法,需要的朋友可以參考下
    2014-02-02
  • Python調(diào)用百度AI實(shí)現(xiàn)人像分割詳解

    Python調(diào)用百度AI實(shí)現(xiàn)人像分割詳解

    本文主要介紹了如何通過(guò)Python調(diào)用百度AI從而實(shí)現(xiàn)人像的分割與合成,文中的示例代碼對(duì)我們的工作或?qū)W習(xí)有一定的幫助,需要的朋友可以參考一下
    2021-12-12
  • Keras自定義實(shí)現(xiàn)帶masking的meanpooling層方式

    Keras自定義實(shí)現(xiàn)帶masking的meanpooling層方式

    這篇文章主要介紹了Keras自定義實(shí)現(xiàn)帶masking的meanpooling層方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-06-06
  • python簡(jiǎn)單批量梯度下降代碼

    python簡(jiǎn)單批量梯度下降代碼

    大家好,本篇文章主要講的是python簡(jiǎn)單批量梯度下降代碼,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話(huà)記得收藏一下,方便下次瀏覽
    2022-01-01
  • centos下更新Python版本的步驟

    centos下更新Python版本的步驟

    安裝完CentOS5.9(Final)后,執(zhí)行#Python與#python -V,看到版本號(hào)是2.4.3,很老了,而且之前寫(xiě)的都是跑在python3.X上面的,3.X和2.X有很多不同,有興趣的朋友可以參考下這篇文章
    2013-02-02
  • Python解決ModuleNotFoundError: No module named 'PIL'的問(wèn)題

    Python解決ModuleNotFoundError: No module named&

    ModuleNotFoundError: No module named 'PIL'是一個(gè)常見(jiàn)的Python錯(cuò)誤,通常出現(xiàn)在使用Pillow庫(kù)時(shí),Pillow是Python中用于圖像處理的一個(gè)庫(kù),其前身是PIL,本文介紹了Python解決ModuleNotFoundError: No module named 'PIL'的問(wèn)題,需要的朋友可以參考下
    2024-09-09
  • 基于Python獲取亞馬遜的評(píng)論信息的處理

    基于Python獲取亞馬遜的評(píng)論信息的處理

    這篇文章主要介紹了基于Python獲取亞馬遜的評(píng)論信息的處理方法,用戶(hù)的評(píng)論能直觀的反映當(dāng)前商品值不值得購(gòu)買(mǎi),亞馬遜的評(píng)分信息也能獲取到做一個(gè)評(píng)分的權(quán)重,感興趣的朋友跟隨小編一起看看吧
    2022-02-02
  • 關(guān)于windos10環(huán)境下編譯python3版pjsua庫(kù)的問(wèn)題

    關(guān)于windos10環(huán)境下編譯python3版pjsua庫(kù)的問(wèn)題

    pjsua默認(rèn)綁定的python版本是python 2.4,使用起來(lái)有諸多限制,希望可以使用python3調(diào)用pjsua的庫(kù)實(shí)現(xiàn)軟電話(huà)的基礎(chǔ)功能。這篇文章主要介紹了windos10環(huán)境下編譯python3版pjsua庫(kù),需要的朋友可以參考下
    2021-10-10
  • Python 基于FIR實(shí)現(xiàn)Hilbert濾波器求信號(hào)包絡(luò)詳解

    Python 基于FIR實(shí)現(xiàn)Hilbert濾波器求信號(hào)包絡(luò)詳解

    今天小編就為大家分享一篇Python 基于FIR實(shí)現(xiàn)Hilbert濾波器求信號(hào)包絡(luò)詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-02-02

最新評(píng)論

肇东市| 庄浪县| 宣威市| 庆城县| 志丹县| 襄樊市| 德令哈市| 兴文县| 巴塘县| 巩义市| 汕头市| 丰顺县| 金寨县| 舞钢市| 南京市| 汽车| 华蓥市| 鹰潭市| 花莲市| 重庆市| 峡江县| 洪泽县| 犍为县| 闸北区| 和平县| 唐海县| 星子县| 三台县| 广平县| 桓台县| 安塞县| 油尖旺区| 江油市| 海原县| 明星| 株洲市| 沙坪坝区| 宁化县| 顺昌县| 通海县| 静宁县|