【问题标题】:Extract face from image of face extracted ( resize face extracted )从提取的人脸图像中提取人脸(调整提取人脸的大小)
【发布时间】:2020-07-16 00:30:26
【问题描述】:

我正在尝试从图像中提取人脸的最小可能大小,我的意思是,我想最小化检测人脸的绘制矩形的大小。 例如:

输入图像:

想要的输出:

源代码:

import numpy as np
import cv2

face_cascade =cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
img=cv2.imread('swaa.jpg')
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
faces = face_cascade.detectMultiScale(gray, 1.3,5,maxSize=(150,150))
for (x,y,w,h) in faces:
    img = cv2.rectangle(img,(x,y),(x+w,y+h),(255,0,0),2)
    roi_gray = gray[y:y+h, x:x+w]
    roi_color = img[y:y+h, x:x+w]
    cv2.imwrite("imgg1.png",roi_color)
    cv2.imwrite("imggg1.png",roi_gray)

cv2.imshow('img',img)
cv2.imwrite("img1.png",img)
cv2.waitKey(0)
cv2.destroyAllWindows()

图片来源:https://www.researchgate.net/publication/322649666_Emotion_Recognition_from_Facial_Expressions_using_Hybrid_Feature_Descriptors

更新:使用贴出的解决方案,结果如下:

【问题讨论】:

    标签: python opencv haar-classifier


    【解决方案1】:

    只需使用 cv2.resize 函数。 https://www.tutorialkart.com/opencv/python/opencv-python-resize-image/

    import numpy as np
    import cv2
    H = 64
    W = 64
    face_cascade =cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
    img=cv2.imread('swaa.jpg')
    gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
    faces = face_cascade.detectMultiScale(gray, 1.3,5,maxSize=(150,150))
    for (x,y,w,h) in faces:
        img = cv2.rectangle(img,(x,y),(x+w,y+h),(255,0,0),2)
        roi_gray = cv2.resize(gray[y:y+h, x:x+w], (H, W))
        roi_color = cv2.resize(img[y:y+h, x:x+w], (H,W))
        cv2.imwrite("imgg1.png",roi_color)
        cv2.imwrite("imggg1.png",roi_gray)
    
    cv2.imshow('img',img)
    cv2.imwrite("img1.png",img)
    cv2.waitKey(0)
    cv2.destroyAllWindows()
    

    【讨论】:

    • 您发布的解决方案并不能解决我的问题,确实,您编写的代码仅更改图像的大小,而不更改围绕脸部绘制的矩形的大小。
    • 你的问题非常不清楚,把所有的要求都说清楚。
    • 还是不清楚。也许更新列表what change do you need?如果可能的话,使用示例输入和输出。
    • 我又做了一次更新。看看帖子。
    猜你喜欢
    • 2013-08-20
    • 2012-02-26
    • 2013-11-24
    • 2011-04-26
    • 1970-01-01
    • 2018-04-26
    • 1970-01-01
    • 2013-08-21
    • 2021-12-15
    相关资源
    最近更新 更多