首頁 後端開發 Python教學 Python+OpenCV人臉辨識技術詳解

Python+OpenCV人臉辨識技術詳解

Oct 18, 2016 pm 02:54 PM
人臉 識別

總是在科幻電影裡看到人臉識別,現在我們也可以編程來實現啦。哈哈~~
OpenCV是Intel®開源電腦視覺庫。它由一系列 C 函數和少量 C++ 類別構成,實現了圖像處理和電腦視覺方面的許多通用演算法。
OpenCV 擁有包含 300 多個C函數的跨平台的中、高層 API。它不依賴其它的外部庫——儘管也可以使用某些外部庫。它還提供了Python、Ruby、MATLAB等語言的接口,實現了圖像處理和計算機視覺方

面的許多通用演算法。

所以整體來說OpenCV的人臉偵測功能在是很不錯的。

效果圖如下:

Python+OpenCV人臉辨識技術詳解

下面我們就用python + OpenCV實現人臉辨識。

開發運作環境:
Centos5.5
OpenCV
python2.7
PIL

下面上程式碼:

#!/usr/bin/python
# -TF- coding: 8* face_detect.py
 
# Face Detection using OpenCV. Based on sample code from:
# http://www.pythontab.com
 
# Usage: python face_detect.com
 
# Usage: python face_detect.openpy
對應組件
from opencv.cv import *
from opencv.highgui import *
#引入PIL庫
from PIL import Image, ImageDraw

from math 度模式,以便找到人臉位置
    grayscale = cvCreateImage(cvSize(image.width, image.height), 8, 1)
    cvCvtColor(image, grayscale,
    cvCvtColor(image, grayscale,
    cvCvtColor(image, grayscale, CV
AY) CV )
    cvClearMemStorage(storage)
收到     cvSize(1,1))
    faces = cvHaarDetectObjects(grayscale, cascade, storage, 1.1, 2,
        CV_HAAR_DO_CANNY_PRUNING, cvSize(20,20))
 
    result    +f.width, f.y+f.height) )
 
    return result
 
def grayscale(r, g, b):
    return int(r * .3 + g * .59 + bj.11)
= cvLoadImage(infile);
    if image:
        faces = detectObjects(image)
 
      draw = ImageDraw.Draw(im)
        for f in faces:
            draw.rectangle (f, outline=(255, 0, 255))
 
        im.save(outfile, "JPEG", quality=100)
  % infile
 
if __name__ == "__main__":
    process('input.jpg', 'output.jpg')

程式碼到此結束,上面的例子看不懂,沒關係,因為我們大量使用了庫裡面的函數和方法,如果看不懂,我們可以上網查或使用手冊,只要藉助這些看懂這段程式碼就ok,重要的是掌握其中的人臉辨識實現想法




本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆樹的耳語 - 如何解鎖抓鉤
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1665
14
CakePHP 教程
1424
52
Laravel 教程
1322
25
PHP教程
1270
29
C# 教程
1249
24
剪映怎麼把人臉p到影片上 剪映怎麼把人臉p到影片上 Feb 23, 2024 pm 12:50 PM

剪映中能夠有著很不錯的P圖功能,那麼怎麼把人臉p到影片上呢?用戶們需要將素材導入到時間軸上,然後選擇摳像,點擊智能摳像使用圓形蒙版,最後將人臉摳出來就好。這篇把人臉p到影片上方法介紹能夠告訴大家具體該怎麼使用這個功能,趕快看看吧。 《剪映使用教學》剪映怎麼把人臉p到影片上答:需要將素材拖到時間軸,然後將人臉用智慧摳像摳出來。具體方法:1、首先需要將素材導入進去,然後再加入時間軸。 2.點選右上的摳像。 3.選擇智慧摳像,找到蒙版,選擇圓形遮罩。 4.最後將人像的頭部摳出來就行了。

如何實現C++中的語音辨識與語音合成? 如何實現C++中的語音辨識與語音合成? Aug 26, 2023 pm 02:49 PM

如何實現C++中的語音辨識與語音合成?語音辨識和語音合成是當今人工智慧領域的熱門研究方向之一,它們在許多應用場景中扮演了重要的角色。本文將介紹如何使用C++實現基於百度AI開放平台的語音辨識和語音合成功能,並提供相關的程式碼範例。一、語音辨識語音辨識是將人說的語音轉換為文字的技術,在語音助理、智慧家庭、自動駕駛等領域有廣泛應用。以下是使用C++實現語音識

使用Java實現的人臉偵測與辨識技術 使用Java實現的人臉偵測與辨識技術 Jun 18, 2023 am 09:08 AM

隨著人工智慧技術的不斷發展,人臉偵測和辨識技術在日常生活中得到了越來越廣泛的應用。在各種場合,如人臉門禁系統、人臉支付系統、人臉搜尋引擎等等,人臉偵測和辨識技術都被廣泛應用。而Java作為一種廣泛使用的程式語言,也可以實現人臉偵測和辨識技術。本文將介紹如何使用Java實現人臉偵測與辨識技術。一、人臉偵測技術人臉偵測技術是指在影像或影片中偵測到人臉的技術。在J

win10正在辨識無法連線到internet的解決方案 win10正在辨識無法連線到internet的解決方案 Jul 11, 2023 pm 06:21 PM

當你使用win10電腦時,你不知道你是否遇到過辨識無法連線到internet的情況?如果你不知道如何解決這個問題,讓我們來看看這篇文章。 1.使用Win+I組合鍵調出設定窗口,點選選擇網路和Internet。 2.點選網路和INTERNET視窗左側的以太網,然後點選右側視窗的變更適配器選項。 3.在網路連線窗口,按滑鼠右鍵點選乙太網路(桌上型電腦,請酌情對待行動裝置),點選選單中的停用。 4.顯示為停用後,按一下乙太網路滑鼠右鍵,執行啟用指令。乙太網路啟用後,問題應該解決。這裡介紹了Win10網路失敗提示識別無

一文聊聊自動駕駛中交通標誌辨識系統 一文聊聊自動駕駛中交通標誌辨識系統 Apr 12, 2023 pm 12:34 PM

什麼是交通標誌辨識系統?汽車安全系統的交通標誌辨識系統,英文翻譯為:Traffic Sign Recognition,簡稱TSR,是利用前置攝影機結合模式,可以辨識常見的交通標誌 《 限速、停車、掉頭等)。這項功能會提醒駕駛注意前方的交通標誌,以便駕駛人遵守這些標誌。 TSR 功能降低了駕駛者不遵守停車標誌等交通法規的可能,避免了違法左轉或無意的其他交通違規行為,從而提高了安全性。這些系統需要靈活的軟體平台來增強探測演算法,並根據不同地區的交通標誌來進行調整。交通標誌識別原理交通標誌識別又稱為TS

如何辨識Oracle資料庫中表格被鎖定的情況? 如何辨識Oracle資料庫中表格被鎖定的情況? Mar 09, 2024 pm 01:09 PM

在Oracle資料庫中,表格被鎖定是一個常見的情況,如何識別並解決這個問題是資料庫管理員經常面臨的挑戰之一。本文將介紹如何識別Oracle資料庫中表格被鎖定的情況,並給出具體的程式碼範例,以幫助資料庫管理員快速定位和解決表被鎖定的問題。一、如何辨識表被鎖定的情況? 1.查看V$LOCK視圖V$LOCK視圖是Oracle資料庫中用來查看鎖定資訊的重要視圖。我們可以

寵物的臉部識別,已經實現了嗎? 寵物的臉部識別,已經實現了嗎? Apr 13, 2023 pm 07:52 PM

譯者 | 崔皓審校 | 孫淑娟能夠準確識別動物的技術將幫助主人與丟失的寵物團聚,農民監控飼養的牲畜,研究人員研究野生動物。基於以上的應用場景,微晶片是最受歡迎的寵物辨識方法。然而,植入晶片需要進行侵入性手術,同時需要專門的設備讀取晶片,還要防範小偷提取微晶片的風險。還有一種方法就是DNA分析,它雖然很精確,但也非常昂貴且耗時。今天要跟大家介紹的是透過臉部辨識的方式來辨識動物。 1.使用電腦視覺軟體進行寵物臉部辨識 由電腦視覺解決方案進行寵物的臉部辨識可以作為上述方案的替代品。儘管它存在缺點,但

如何利用PHP與阿里雲OCR實現二維碼辨識? 如何利用PHP與阿里雲OCR實現二維碼辨識? Jul 17, 2023 am 10:46 AM

如何利用PHP與阿里雲OCR實現二維碼辨識?隨著二維碼的廣泛應用,越來越多的項目需要識別二維碼。在傳統的方法中,我們通常使用攝影機或使用第三方函式庫進行二維碼識別。但是,這些方式有時並不是很靈活,而且無法滿足特定的需求。在這篇文章中,我們將介紹如何利用PHP和阿里雲OCR服務實現二維碼的識別,更進一步探討OCR技術在實際應用中的價值。首先,你需要註冊一個阿

See all articles