Opencv(python)人臉識別和標定
""" @author: wangquaxiu @time: 2018/9/11 14:36 facerec """ import cv2 import numpy as np # 載入Load xml 引數1 file name face_xml = cv2.CascadeClassifier('D:/opencv/sources/data/haarcascades/haarcascade_frontalface_default.xml') eye_xml = cv2.CascadeClassifier('D:/opencv/sources/data/haarcascades/haarcascade_eye.xml') if face_xml != None: print("xml檔案下載成功!") # load jpg img = cv2.imread('G:/photos/lena.jpg', 1) if img is not None: print("圖片讀取成功!") cv2.imshow('src', img) # haar gray gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) # detect faces 1 data 2 scale 3 5 # 檢測人臉 1 灰度圖片資料 2 縮放係數 3目標大小 faces = face_xml.detectMultiScale(gray, 1.3, 5) # 人臉個數 print('face=', len(faces)) # 方框標定 for (x, y, w, h) in faces: # 起始座標 cv2.rectangle(img, (x, y), (x + w, y + h), (255, 0, 0), 2) # 我們已經找到的人臉區域 roi_face = gray[y:y + h, x:x + w] roi_color = img[y:y + h, x:x + w] # 引數1 gray eyes = eye_xml.detectMultiScale(roi_face) print('eye=', len(eyes)) for (e_x, e_y, e_w, e_h) in eyes: cv2.rectangle(roi_color, (e_x, e_y), (e_x + e_w, e_y + e_h), (0, 255, 0), 2) cv2.imshow('dst', img) cv2.waitKey()
效果:
相關推薦
Opencv(python)人臉識別和標定
""" @author: wangquaxiu @time: 2018/9/11 14:36 facerec """ import cv2 import numpy as np # 載入Load xml 引數1 file name face_xml = cv2.Casc
TensorFlow+實戰Google深度學習框架學習筆記(12)------Mnist識別和卷積神經網路LeNet
一、卷積神經網路的簡述 卷積神經網路將一個影象變窄變長。原本【長和寬較大,高較小】變成【長和寬較小,高增加】 卷積過程需要用到卷積核【二維的滑動視窗】【過濾器】,每個卷積核由n*m(長*寬)個小格組成,每個小格都有自己的權重值, 長寬變窄:過濾器的長寬決定的 高度變高:過濾器的個數決定的 &nb
TensorFlow+實戰Google深度學習框架學習筆記(13)------Mnist識別和卷積神經網路AlexNet
一、AlexNet:共8層:5個卷積層(卷積+池化)、3個全連線層,輸出到softmax層,產生分類。 論文中lrn層推薦的引數:depth_radius = 4,bias = 1.0 , alpha = 0.001 / 9.0 , beta = 0.75 lrn現在僅在AlexNet中使用,
TensorFlow+實戰Google深度學習框架學習筆記(13)------Mnist識別和卷積神經網絡AlexNet
net dev adding 筆記 learn 明顯 lex test info 一、AlexNet:共8層:5個卷積層(卷積+池化)、3個全連接層,輸出到softmax層,產生分類。 論文中lrn層推薦的參數:depth_radius = 4,bias = 1.0 ,
OpenCV(3)圖片變換和圖片特效
(1)圖片縮放 圖片的縮放常用於圖片的預處理,對圖片進行歸一化大小。這裡採用OpenCV庫進行實現。 cv.resize()實現圖片縮放(預設雙線性插值法),固定大小 import cv2 as cv import numpy as np img = cv.imread("dog.jpg
opencv(c++)檔案輸入和輸出使用XML和YAML檔案
你會找到以下問題的答案: 如何使用YAML或XML檔案列印和讀取文字和OpenCV檔案? 如何為OpenCV資料結構做同樣的事情? 如何為你的資料結構做到這一點? 使用OpenCV資料結構,如cv :: FileStorage,cv :: F
安卓開發(二)人臉識別相簿FaceMap
本篇主要講本科時做的一個應用,人臉識別相簿。主要包含JNI和業務邏輯。最終程式碼會公佈在github。 演算法部分 當時深度學習還沒有很火,所以用的是經典的PCA方法,降維之後直接作為特徵。人臉檢測部分用的也是Opencv的Haar特徵人臉檢測。現在來看效能
Ubuntu 16.04編譯安裝OpenCV(Python)
環境: Ubuntu 16.04 64bit ,openCV opencv-3.1.0 1.安裝opencv依賴包 $ sudo apt-get install build-essential $ sudo apt-get install cmake git libgtk2
Harris角點檢測原理與opencv(python)實現
在學習時主要參考了1.http://blog.csdn.net/xiaowei_cqu/article/details/7805206和opencv-python官方的關於harris的文件(http://opencv-python-tutroals.readthedocs
人臉識別之人臉檢測(二)--人臉識別樣本製作及訓練測試
閒得沒事,折騰下opencv 人臉識別,從樣本製作到評估。 1.直接copy opencv裡的原始碼,建立工程,新增opencv庫,可以直接cmake原始碼,但我之所以自己建立工程,是想多學習,並且降低與原始碼框架的耦合度。 這裡如果出現_imp__CreateToo
OpenCV(Python)學習筆記(One):幾何變換之對影象的旋轉
最近學習中會用到OpenCV,感覺OpenCV簡單且功能強大,Python語言也簡單易用,於是就學了Python版OpenCV。裡面講的比較簡單,就先從簡單的入手吧。 因為已經學習一段時間了,所以文章並不是按照OpenCV的順序來寫的,我會慢慢補齊以前學過的一些例子。 都是些簡單
人臉識別(8)----人臉識別主要演算法原理
人臉識別主要演算法原理 【嵌牛導讀】:人臉識別,是基於人的臉部特徵資訊進行身份識別的一種生物識別技術。用攝像機或攝像頭採集含有人臉的影象或視訊流,並自動在影象中檢測和跟蹤人臉,進而對檢測到的人臉進行臉部的一系列相關技術,通常也叫做人像識別、面部識別。 【嵌牛鼻子】
opencv(python)影象處理之三
一、函式簡介 1、zeros—構造全0矩陣 函式原型:zeros(shape, dtype=None, order=’C’) shape:矩陣大小;例如:300x300; dtype:資料型別;例如:”uint8” order:資料排列順序,預設按列排的 2、line—畫線
opencv(python)影象處理之九
一、函式簡介 1、threshold—影象簡單閾值化處理 函式原型:threshold(src, thresh, maxval, type, dst=None) src:影象矩陣 thresh:閾值 maxVal:畫素最大值 type:閾值化型別 2、adaptiveThre
學習OpenCV(七)——隨機數發生器和繪製文字
本次範例是在上一次博客學習OpenCV範例(六)——基本繪圖的基礎上,加上隨機數發生器和文字顯示,進行更加有趣的開發,當本次範例學習完之後,基本的繪圖函式也就學習完了。 1、介紹 範例通過使用 隨機數發生器類 (RNG) 並得到均勻分佈的隨機數,代入到繪製函式的引數裡面,使
Opencv(Python) 教程-輪廓(2)輪廓特徵求取
目標 查詢輪廓的不同特徵,例如面積,周長,重心,邊界框等,這些特徵在未來的影象識別中,會大量的用到。 矩的概念 影象識別的一個核心問題是影象的特徵提取,簡單描述即為用一組簡單的資料(影象描述量)來描述整個影象,這組資料越簡單越有代表性越好。良好的特徵不受光線、噪點、幾何形
人臉檢測(二)--人臉識別樣本製作及訓練測試
閒得沒事,折騰下opencv 人臉識別,從樣本製作到評估。 1.直接copy opencv裡的原始碼,建立工程,新增opencv庫,可以直接cmake原始碼,但我之所以自己建立工程,是想多學習,並且降低與原始碼框架的耦合度。 這裡如果出現_imp__CreateToolb
OpenCV學習筆記(五十五)——用OpenCV做人臉識別和性別識別contrib
人臉識別的故事說也說不完,調研的事還是交給大家吧。這裡說的是用OpenCV做人臉識別。 因為是真正的人臉識別,不是搞笑娛樂的東西,所以資料庫一定要強大的,推薦個網站http://www.face-rec.org/databases/。這裡有最全的人臉庫的概述,希望大家能找到
openCV學習筆記(十四) —— 人臉識別演算法(3/3)—— 區域性二值模式LBP
LBP(Local Binary Patterns,區域性二值模式)是提取區域性特徵作為判別依據的。LBP方法顯著的優點是對光照不敏感,但是依然沒有解決姿態和表情的問題。不過相比於特徵臉方法,LBP的識別率已經有了很大的提升。在[1]的文章裡,有些人臉庫的識別率已經達到了
OpenCV學習筆記(二十一)——車輛識別和跟蹤
今天在GitHub上看到一個對車輛訓練好的模型,即xml檔案,於是拿來測試了一個效果。我用這個xml檔案對視訊中的每一幀畫面進行簡單的車輛識別定位,演示程式碼如下:import cv2 import numpy as np camera = cv2.VideoCa