Как сохранить файл изображения захвата на USB с помощью функции python opencv с именем «imwrite» в Linux - PullRequest
0 голосов
/ 10 июля 2019

Я пытался сохранить изображение веб-камеры на USB с помощью Python в среде Linux.

«Imwrite» - это работа в каталоге файлов, но не работа в каталоге USB.

Я пытался использовать пакет 'os' и путь к нему.

Есть ли другой способ сделать это?

path='/media/odroid/MYUSB/savefolder/'
capture_img=/demo/capture.jpg
image=cv2.imread(capture_img)
cv2.imwrite(os.path.join(path, resave.jpg),image)

Весь код работает без ошибок, но файл jpg не сохраняется в MYUSB

1 Ответ

0 голосов
/ 10 июля 2019

Возможно, вам не нужно использовать os.join() попробуйте это:

import cv2
import numpy as np

cap = cv2.VideoCapture(0)
savePath = 'output.jpg' #Replace this with your own path say /media/odroid/MYUSB/savefolder/output.jpg
ret, frame = cap.read()

cv2.imwrite(savePath,frame)

Если вы хотите сохранить все видео, пожалуйста, обратитесь к этому ответу

Вот код:

import cv2
import numpy as np


cap = cv2.VideoCapture(0)

savePath = 'output.avi' #Replace this with your own path say /media/odroid/MYUSB/savefolder/output.avi
fourcc = cv2.VideoWriter_fourcc(*'MJPG')

out = cv2.VideoWriter(savePath, fourcc, 20.0, (int(cap.get(3)), int(cap.get(4))))

while True:

    newret, newframe = cap.read()

    cv2.imshow('orig',newframe)
    out.write(newframe)

    k = cv2.waitKey(5) & 0xFF

    if k == 27:
        break

ret, frame = cap.read()

cv2.imwrite(savePath,frame)

cap.release()
out.release()
cv2.destroyAllWindows()

Кроме того, у вашего кода есть некоторые проблемы, вот исправленная версия, которая должна работать:

path='/media/odroid/MYUSB/savefolder/'
capture_img='/demo/capture.jpg' #it seems path should be demo/capture.jpg
image=cv2.imread(capture_img)
cv2.imwrite(os.path.join(path, 'resave.jpg'),image)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...