日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

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

男神鹏:人工智能人脸识别操作。

發(fā)布時間:2025/5/22 178 豆豆
生活随笔 收集整理的這篇文章主要介紹了 男神鹏:人工智能人脸识别操作。 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Python 中的 人臉識別 是基于OpenCV 來進(jìn)行實(shí)現(xiàn)的。

?

OpenCV 可以通過 頭videoCapture()方法打開攝像

攝像頭變量 = cv2.VideoCapture(n)? ?n為整數(shù),內(nèi)置攝像頭為0,若有其他攝像頭則依次為1,2,3,4,。。。

cap = cv2.VideoCapture(0)

?

攝像頭是否處于打開狀態(tài)可以通過isOpened()方法進(jìn)行判斷

攝像頭變量.isOpened()

若打開返回True,反正返回False

cap.isOpened()

?

布爾變量,圖像變量 = 攝像頭變量.read()? 可以通過read() 方法讀取圖像

布爾變量為True,代表讀取成功,False代表讀取失敗

ret,img = cap.read()

?

釋放攝像頭

攝像頭變量.release()

cap.release()

按鍵變量? = cv2.waitKey(n)? ?waitKey(n)? 方法可以獲取用戶輸入,同時可獲取按鍵的ASCLL碼值

話不多說,直接上代碼。

下面是登錄注冊的人臉實(shí)現(xiàn)系統(tǒng)。

?

from django.shortcuts import render #導(dǎo)包 from django.http import HttpResponse,HttpResponseRedirect #導(dǎo)入類路由庫 from django.views import View #導(dǎo)入數(shù)據(jù)庫類 from myapp.models import User import json #導(dǎo)入時間模塊 import time import os from mymac.settings import UPLOAD_ROOT import cv2 import numpy as np from myapp.my_compare import main_my,parse_arguments from django.utils.decorators import method_decorator from django.db import connection

#定義注冊邏輯 class Sign_Up(View):
#定義注冊接收方法 def post(self,request): username = request.POST.get('username')
cap = cv2.VideoCapture(0)
face_cascade = cv2.CascadeClassifier("C:/Users/lenvov/AppData/Local/Programs/Python/Python37/Lib/site-packages/cv2/data/haarcascade_frontalface_default.xml") my_count = 1
while(1): # 獲取攝像頭屏幕對象 ret,frame = cap.read() gray = cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY ) # 識別臉部 faces = face_cascade.detectMultiScale(gray,scaleFactor=1.2,minNeighbors=3,minSize=(32,32)) for facerect in faces: # 框處人臉 x,y,w,h = facerect cv2.rectangle(gray,(x-10,y-10),(x+w+10,y+h+10),(0,255,0),3)
f = cv2.resize(gray[y:(y+h),x:(x+w)],(200,200)) # 生成攝像頭視角窗口 cv2.imshow("capture",gray)
# 等待結(jié)束 如果按q鍵就結(jié)束 if cv2.waitKey(1) & 0xff == ord('q'): cv2.imwrite(UPLOAD_ROOT+'/'+username+'_face.jpg',f) break

# 釋放攝像頭 cap.release() cv2.destroyAllWindows()

res = User.objects.filter(username=username).count() if res > 0: return HttpResponse('請換一個用戶名') else: user = User(username=username) user.save() return HttpResponse('注冊成功')



#定義登錄邏輯 class Log_IN(View):
#定義注冊接收方法 def post(self,request):
username = request.POST.get('username')

cap = cv2.VideoCapture(0)
face_cascade = cv2.CascadeClassifier("C:/Users/lenvov/AppData/Local/Programs/Python/Python37/Lib/site-packages/cv2/data/haarcascade_frontalface_default.xml") my_count = 1
while(1): # 獲取攝像頭屏幕對象 ret,frame = cap.read() gray = cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY ) # 識別臉部 faces = face_cascade.detectMultiScale(gray,scaleFactor=1.2,minNeighbors=3,minSize=(32,32)) for facerect in faces: # 框處人臉 x,y,w,h = facerect cv2.rectangle(gray,(x-10,y-10),(x+w+10,y+h+10),(0,255,0),3)
f = cv2.resize(gray[y:(y+h),x:(x+w)],(200,200)) # 生成攝像頭視角窗口 cv2.imshow("capture",gray)
# 等待結(jié)束 如果按q鍵就結(jié)束 if cv2.waitKey(1) & 0xff == ord('q'): cv2.imwrite(UPLOAD_ROOT+'/'+username+'_hou.jpg',f) break

# 釋放攝像頭 cap.release() cv2.destroyAllWindows() res = User.objects.filter(username=username)[0]
args_list = [] args_list.append('C:/20170512-110547') args_list.append(UPLOAD_ROOT+'/'+username+'_face.jpg') args_list.append(UPLOAD_ROOT+'/'+username+'_hou.jpg')
res_float = main_my(parse_arguments(args_list)) print(res_float)

if res_float > 0.50: return HttpResponse('識別頭像不匹配') else: return HttpResponse('登錄成功') 這些只是后端代碼,前端代碼就是通過axios來實(shí)現(xiàn)的。 如需有有疑問,可以在評論區(qū)里評論。

轉(zhuǎn)載于:https://www.cnblogs.com/lyp0626/p/10590499.html

《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結(jié)

以上是生活随笔為你收集整理的男神鹏:人工智能人脸识别操作。的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。