Попытка сделать фотографию на паспорт с помощью OpenCV-PythonPython

Программы на Python
Ответить
Anonymous
 Попытка сделать фотографию на паспорт с помощью OpenCV-Python

Сообщение Anonymous »

Заранее извиняюсь, так как я новичок в OpenCV-Python. Я поставил перед собой задачу создать изображение типа «Паспорт» из видеозахвата.

С помощью «Голова и плечи Хаара Каскада» мне удалось создать портретную фотографию, но теперь я хочу превратить фон в белый фон (оставив портрет «Голова и плечи» на переднем плане).

Просто не знаю, как/лучше всего это сделать. Будем рады любой помощи.

Заранее большое спасибо.

Вот код:

import numpy as np
import cv2

# face file
face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
# eye file
eye_cascade = cv2.CascadeClassifier('haarcascade_eye.xml')
# head shoulders file
hs_cascade = cv2.CascadeClassifier('HS.xml')

cap = cv2.VideoCapture(1)

while 1:
ret, img = cap.read()
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
headshoulders = hs_cascade.detectMultiScale(gray, 1.3, 3)

# find the head and shoulders
for (x,y,w,h) in headshoulders:
# variable change to make portrait orientation
x = int(x*1.5)
w = int(w/1.5)
cv2.rectangle(img,(x,y),(x+w,y+h),(255,0,0),2)

# crop the image
crop_img = img[y: y + h, x: x + w]

# show original and crop
cv2.imshow('crop', crop_img)
cv2.imshow('img', img)

k = cv2.waitKey(30) & 0xff
if k == 27:
break
elif k == ord('s'):
# save out the portrait image
cv2.imwrite('cropimage.png',crop_img)

# release the camera
cap.release()
cv2.destroyAllWindows()
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»