Я новичок в Open CV и Python, и у меня возникла проблема:
Я выполняю проект на моем Raspberry Pi, где веб-камера принимает серое изображение, удаляетфон и сохраняет его в папке.
Используется алгоритмом машинного обучения для обнаружения объекта на изображении.
Веб-камера зафиксирована в определенной точке, поэтому сначала я возьмуизображение фона, а затем сфотографировать объект.Затем фон удаляется с объекта и выглядит нормально.
Но если я повторяю процесс и перезаписываю изображение, оно становится размытым.
Этот эффект продолжается до тех пор, пока примерно через три или четыреснимки изображение становится размытым, и моя программа не может определить объект в нем.
Мой код:
#get Background
import cv2
cam = cv2.videoCapture(0)
ret, frame = cam.read()
if ret:
img_name = '/home/pi/Desktop/background.png'
grey_img = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
cv2.imwrite(img_name, grey_img)
print('{} written'.format(img_name))
cam.release()
#takeImage
import cv2
import numpy as np
ret, frame = cam.read()
back = cv2.imread('/home/pi/Desktop/background.png')
if ret:
img_name = '/home/pi/Desktop/img_capture.png'
grey_img = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
cv2.imwrite(img_name, grey_img)
grey_obj = cv2.subtract(cv2.imread(img_name), back)
cv2.imwrite(img_name, grey_obj)
print('{} written'.format(img_name))
cam.release()
Я использую веб-камеру Logitech, но я не уверенточной модели
Пожалуйста, помогите мне, и спасибо заранее.
Очистите в начале:
Не так много:
Совсем нет: