最近在學習影像辨識,才發現影像的資源好少...,所以想上來詢問一下。
如果我想做到「除了人臉以外的背景都灰階」,該怎麼做呢?
我使用的圖是復仇者聯盟~
#colab
from google.colab.patches import cv2_imshow
import numpy as np
import cv2
face_cascade = cv2.CascadeClassifier('/usr/local/lib/python3.7/dist-packages/cv2/data/haarcascade_frontalface_default.xml')
img = cv2.imread('/content/drive/MyDrive/pic.jpg')
cv2_imshow(img)
#灰階
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
#人臉辨識
faces = face_cascade.detectMultiScale(
gray,
scaleFactor=1.08,
minNeighbors=6,
minSize=(10, 10))
# 繪製人臉部份的方框(能不能不要方匡啊,要輪廓就好)
for (x, y, w, h) in faces:
cv2.rectangle(img, (x, y), (x + w, y + h), (0, 255, 0), 2)
# 顯示成果
cv2_imshow(img)