中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

wordpress虛擬主機企業(yè)關(guān)鍵詞優(yōu)化最新報價

wordpress虛擬主機,企業(yè)關(guān)鍵詞優(yōu)化最新報價,公眾號做圖網(wǎng)站,有什么可以做cad賺錢的網(wǎng)站1、人臉識別 人臉識別是一種技術(shù),通過檢測、跟蹤和識別人臉上的關(guān)鍵特征,以確認人臉的身份。它通常用于安保系統(tǒng)、身份驗證、社交媒體和人機交互等領(lǐng)域。 人臉識別技術(shù)的基本原理是先通過圖像處理和計算機視覺算法,提取人臉的特征點和特征描…

1、人臉識別

人臉識別是一種技術(shù),通過檢測、跟蹤和識別人臉上的關(guān)鍵特征,以確認人臉的身份。它通常用于安保系統(tǒng)、身份驗證、社交媒體和人機交互等領(lǐng)域。

人臉識別技術(shù)的基本原理是先通過圖像處理和計算機視覺算法,提取人臉的特征點和特征描述。然后將這些特征與事先錄入的人臉數(shù)據(jù)庫進行比對,以確定人臉的身份。

在人臉識別技術(shù)中,一般包含以下步驟:人臉檢測、人臉對齊、特征提取和特征匹配。人臉檢測是指在圖像或視頻中檢測到人臉的位置;人臉對齊是為了使得人臉特征點在后續(xù)處理中更容易提取;特征提取是指將人臉圖像轉(zhuǎn)換為具有辨識度的特征向量;特征匹配是將提取出的特征與數(shù)據(jù)庫中的特征進行比對。

目前人臉檢測的方法主要有兩大類:基于知識和基于統(tǒng)計。

  • 基于知識的方法:主要利用先驗知識將人臉看作器官特征的組合,根據(jù)眼睛、眉毛、嘴巴、鼻子等器官的特征以及相互之間的幾何位置關(guān)系來檢測人臉。主要包括模板匹配、人臉特征、形狀與邊緣、紋理特性、顏色特征等方法。
  • 基于統(tǒng)計的方法:將人臉看作一個整體的模式——二維像素矩陣,從統(tǒng)計的觀點通過大量人臉圖像樣本構(gòu)造人臉模式空間,根據(jù)相似度量來判斷人臉是否存在。主要包括主成分分析與特征臉、神經(jīng)網(wǎng)絡(luò)方法、支持向量機、隱馬爾可夫模型、Adaboost算法等。

人臉識別技術(shù)的應(yīng)用非常廣泛,包括但不限于身份識別、門禁系統(tǒng)、公安系統(tǒng)、智能手機解鎖、相冊分類、人機交互等。隨著深度學(xué)習(xí)的快速發(fā)展,人臉識別技術(shù)的準確率和效果得到了顯著提升,越來越多的領(lǐng)域開始應(yīng)用這項技術(shù)。然而,人臉識別技術(shù)也涉及到一些隱私和安全問題,需要合理的使用和管理。

2、OpenCV之Haar級聯(lián)檢測器

人臉識別在OpenCV上也有專門的算法實現(xiàn),OpenCV使用基于Haar特征的級聯(lián)分類器,對級聯(lián)分類器進行特定的訓(xùn)練可以使OpenCV自帶的檢測器在檢測時的結(jié)果更加準確。這里的檢測器即OpenCV包中的haarcascades文件夾下的XML文件。這些文件可以檢測靜止的圖像或攝像頭中得到的人臉。

opencv中內(nèi)置了已經(jīng)訓(xùn)練好的級聯(lián)人臉、眼睛、嘴部等檢測器,以.XML格式存儲,可以將它們應(yīng)用于圖片及實時視頻流的檢測。opencv的人臉檢測級聯(lián)檢測器是最穩(wěn)定和準確的,但在許多情況下眼睛檢測和嘴巴檢測的效果要差上許多。如果要對眼睛和嘴巴進行檢測,可以嘗試python、dlib、opencv工作流,它的效果更好、速度更快。
Haar級聯(lián)算法是OpenCV最流行的目標檢測算法,主要優(yōu)點是速度快,盡管許多算法(如HOG+線性SVM、SSDs、更快的R-CNN、YOLO等等)比Haar級聯(lián)算法更精確。但如果需要純粹的速度,就是無法打敗OpenCV的Haar cascades。Haar級聯(lián)的缺點是容易出現(xiàn)假陽性檢測,應(yīng)用于推理/檢測時需要進行參數(shù)調(diào)整。

haarcascade_frontalface_default.xml:檢測面部
haarcascade_eye.xml:檢測左眼和右眼
haarcascade_smile.xml:檢測面部是否存在嘴部
haarcascade_eye_tree_eyeglasses.xml:檢測是否帶墨鏡
haarcascade_frontalcatface.xml:檢測貓臉
haarcascade_frontalcatface_extended.xml:檢測貓臉延伸
haarcascade_frontalface_alt.xml:檢測人臉屬性
haarcascade_frontalface_alt_tree.xml
haarcascade_frontalface_alt2.xml
haarcascade_fullbody.xml:檢測全身
haarcascade_lefteye_2splits.xml:檢測左眼
haarcascade_licence_plate_rus_16stages.xml:檢測證件
haarcascade_lowerbody.xml:檢測下半身
haarcascade_profileface.xml
haarcascade_righteye_2splits.xml:檢測右眼
haarcascade_russian_plate_number.xml:檢測俄羅斯字母車牌號
haarcascade_upperbody.xml:檢測上半身

3、在檢測的人臉上繪制矩形

import cv2 as cvdef StaticDetect(filename):"""靜態(tài)圖像"""# 創(chuàng)建一個級聯(lián)分類器 加載一個 .xml 分類器文件. 它既可以是Haar特征也可以是LBP特征的分類器.face_cascade = cv.CascadeClassifier('./haarcascades/haarcascade_frontalface_default.xml')# 加載圖像img = cv.imread(filename)# 轉(zhuǎn)換為灰度圖gray_img = cv.cvtColor(img, cv.COLOR_BGR2GRAY)# 進行人臉檢測,傳入scaleFactor,minNeighbors,分別表示人臉檢測過程中每次迭代時圖像的壓縮率以及# 每個人臉矩形保留近似數(shù)目的最小值# 返回人臉矩形數(shù)組faces = face_cascade.detectMultiScale(gray_img, 1.3, 5)for (x, y, w, h) in faces:# 在原圖像上繪制矩形img = cv.rectangle(img, (x, y), (x + w, y + h), (255, 0, 0), 2)cv.namedWindow('Face Detected!')cv.imshow('Face Detected!', img)# 使程序停留,等待任意鍵按下,參數(shù)表示停留的時間,0表示無限長k = cv.waitKey(0)# 按下ESC鍵(ASCII碼為27)后,銷毀所有窗口,終止程序if k == 27:cv.destroyAllWindows()if __name__ == '__main__':filename = 'face.png'StaticDetect(filename)

單人和多人臉均可檢測。

4、MediaPipe

Mediapipe 由 Google Research 于 2020 年推出,旨在為計算機視覺研究人員和開發(fā)者提供一個易于使用、高性能的框架。Mediapipe 提供了多種預(yù)訓(xùn)練模型和算法,涵蓋了人臉檢測、手勢識別、姿態(tài)估計等領(lǐng)域。

MediaPipe是用于構(gòu)建多模態(tài)(例如視頻、音頻或任何時間序列數(shù)據(jù))、跨平臺(即eAndroid、IOS、web、邊緣設(shè)備)應(yīng)用ML管道的框架。

以上2個模塊都可以實現(xiàn)人臉檢測,經(jīng)過在樹莓派上的實驗發(fā)現(xiàn),使用MediaPipe較OpenCV速度快,本文將利用MediaPipe實現(xiàn)檢測人臉功能,并將檢測到的人臉圖像保存下來。

5、實驗代碼

本實驗將檢測到人臉信息,并將實時檢測到的圖像保存到image文件夾內(nèi),以時間戳命名,每秒一個文件。

"""
Face Detection Module
By: Computer Vision Zone
Website: https://www.computervision.zone/
"""import cv2,os,time
import mediapipe as mp
from datetime import datetimeclass FaceDetector:"""Find faces in realtime using the light weight model provided in the mediapipelibrary."""def __init__(self, minDetectionCon=0.5):""":param minDetectionCon: Minimum Detection Confidence Threshold"""self.minDetectionCon = minDetectionConself.mpFaceDetection = mp.solutions.face_detectionself.mpDraw = mp.solutions.drawing_utilsself.faceDetection = self.mpFaceDetection.FaceDetection(self.minDetectionCon)def findFaces(self, img, draw=True):"""Find faces in an image and return the bbox info:param img: Image to find the faces in.:param draw: Flag to draw the output on the image.:return: Image with or without drawings.Bounding Box list."""imgRGB = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)self.results = self.faceDetection.process(imgRGB)bboxs = []if self.results.detections:for id, detection in enumerate(self.results.detections):bboxC = detection.location_data.relative_bounding_boxih, iw, ic = img.shapebbox = int(bboxC.xmin * iw), int(bboxC.ymin * ih), \int(bboxC.width * iw), int(bboxC.height * ih)cx, cy = bbox[0] + (bbox[2] // 2), \bbox[1] + (bbox[3] // 2)bboxInfo = {"id": id, "bbox": bbox, "score": detection.score, "center": (cx, cy)}bboxs.append(bboxInfo)if draw:img = cv2.rectangle(img, bbox, (255, 0, 255), 2)cv2.putText(img, f'{int(detection.score[0] * 100)}%',(bbox[0], bbox[1] - 20), cv2.FONT_HERSHEY_PLAIN,2, (255, 0, 255), 2)return img, bboxsdef Timestamp_Get():now = datetime.now()datetime_str = now.strftime('%Y-%m-%d %H:%M:%S').replace(':','-').replace(' ','_')datetime_str = datetime_str+'.jpg'return datetime_strdef main():cap = cv2.VideoCapture(0)detector = FaceDetector()file_path='./image'while True:success, img = cap.read()img, bboxs = detector.findFaces(img)if bboxs:time.sleep(0.02)if bboxs:# bboxInfo - "id","bbox","score","center"center = bboxs[0]["center"]cv2.circle(img, center, 5, (255, 0, 255), cv2.FILLED)file_name = os.path.join(file_path,Timestamp_Get())cv2.imwrite(file_name,img)time.sleep(1)cv2.imshow("Image", img)if cv2.waitKey(20)  == ord('q'):breakcap.release()cv2.destroyAllWindows()elif cv2.waitKey(20)  == ord('s'):time.sleep(1)file_name = os.path.join('./image',Timestamp_Get())cv2.imwrite(file_name,img)print(file_name+'保存成功')time.sleep(1)if __name__ == "__main__":main()

(1)人臉檢測類FaceDetector的findFaces方法可以檢測人臉在整個圖像的位置,經(jīng)試驗,不光是人臉,人手也可以被檢測。還有檢測的概率,以及人臉的中心像素點的位置。

(2)Timestamp_Get,獲取當(dāng)前的時間戳,作為文件名保存。

file_name = os.path.join(file_path,Timestamp_Get())
cv2.imwrite(file_name,img)

(3)人臉檢測的情況可能會出現(xiàn)誤檢、抖動的情況,我們通過得分和消抖來進行局部調(diào)整。

score的類型是google._upb._message.RepeatedScalarContainer,它?是 Protocol Buffers 中的一個內(nèi)部類,用于表示重復(fù)的標量值(即,一個數(shù)組)。要將此容器轉(zhuǎn)換為浮點數(shù)列表,再轉(zhuǎn)成float

這樣檢測目標低于60%概率的人臉就不會被保存。

(4)該程序支持自動保存,也支持手動保存。

隨便在手機上找個美女試試效果吧

http://www.risenshineclean.com/news/8406.html

相關(guān)文章:

  • 企業(yè)網(wǎng)站制作公司電話怎么申請域名建網(wǎng)站
  • 漳州網(wǎng)站建設(shè)seo研究學(xué)院
  • 佛山網(wǎng)站建設(shè) 天博網(wǎng)絡(luò)廣告策劃
  • 網(wǎng)站如何帶來流量鄭州網(wǎng)絡(luò)推廣排名
  • 網(wǎng)站策劃主要工作是什么百度在線掃題入口
  • 奶茶加盟網(wǎng)站建設(shè)外鏈網(wǎng)盤
  • 做網(wǎng)站專家一個網(wǎng)站推廣
  • 彩票網(wǎng)站開發(fā)風(fēng)險中美關(guān)系最新消息
  • wordpress彈移動端seo關(guān)鍵詞優(yōu)化
  • app軟件系統(tǒng)定制開發(fā)網(wǎng)站內(nèi)部鏈接優(yōu)化方法
  • 南京核酸最新通知重慶網(wǎng)站seo公司
  • 做張家界旅游網(wǎng)站多少錢全網(wǎng)營銷有哪些平臺
  • 深圳app開發(fā)公司大概價格seo關(guān)鍵詞分析表
  • 游戲源代碼網(wǎng)站百度推廣電話號碼
  • 手機網(wǎng)站開發(fā)公司百度搜索引擎api
  • 自助網(wǎng)站模板平臺北大青鳥
  • asp網(wǎng)站banner修改市場營銷計劃方案
  • 建設(shè) 大型電子商務(wù)網(wǎng)站杭州seo靠譜
  • 商城網(wǎng)站建設(shè)外貿(mào)平臺排名
  • 湛江市政工程建設(shè)公司網(wǎng)站美食軟文300范例
  • b2c電子商務(wù)網(wǎng)站的特點及類型2020年關(guān)鍵詞排名
  • 阿里云做網(wǎng)站可以嗎寧波seo資源
  • 做網(wǎng)站的榮譽證書網(wǎng)絡(luò)營銷這個專業(yè)怎么樣
  • 幼兒園網(wǎng)站建設(shè)情況統(tǒng)計表西安優(yōu)化seo托管
  • 宿遷哪里做網(wǎng)站內(nèi)蒙古網(wǎng)站seo
  • 最權(quán)威的做網(wǎng)站設(shè)計公司價格搜索引擎營銷ppt
  • 鄭州網(wǎng)站seo分析湖南seo推廣系統(tǒng)
  • dede 汽車網(wǎng)站谷歌競價排名推廣公司
  • 東湖網(wǎng)站建設(shè)啥是網(wǎng)絡(luò)推廣
  • WordPress前端上傳大文件搜索引擎優(yōu)化seo名詞解釋