人臉檢測--基於LBP算子

LBP特徵值原理
等級性和旋轉不變性

代碼實現人臉檢測

基於Python-OpenCV實現

# %% 導入庫函數
import cv2 as cv

img = cv.imread('face.jpg')
face_detect = cv.CascadeClassifier("lbpcascade_frontalface_improved.xml") # 檢測人臉

gray = cv.cvtColor(img, code=cv.COLOR_BGR2GRAY) # 灰度處理

# 檢查人臉 按照1.1倍放到 周圍最小像素爲5
face_zone = face_detect.detectMultiScale(gray, scaleFactor = 2, minNeighbors = 2) # maxSize = (55,55)
print ('識別人臉的信息:\n',face_zone)

for x, y, w, h in face_zone:
    # 繪製矩形人臉區域
    cv.rectangle(img, pt1 = (x, y), pt2 = (x+w, y+h), color = [0,0,255], thickness=2)
    # 繪製圓形人臉區域 radius表示半徑
    cv.circle(img, center = (x + w//2, y + h//2), radius = w//2, color = [0,255,0], thickness = 2)

# 設置圖片可以手動調節大小
cv.namedWindow("Easmount-CSDN", 0)

# 顯示圖片
cv.imshow("Easmount-CSDN", img)

# 等待顯示 設置任意鍵退出程序
cv.waitKey(0)
cv.destroyAllWindows()

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章