Захват кадров с веб-камеры, изображение обрезаноPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Захват кадров с веб-камеры, изображение обрезано

Сообщение Anonymous »


К сожалению, все, что я использую, работает на Windows 10 Enterprise.

Я подключаю удаленный рабочий стол к этому компьютеру с Windows, у него есть Flask API, у которого есть маршрут, который захватывает последний кадр с веб-камеры с помощью Open CV и записывает изображения в папку.

Если я отключусь от компьютера (без выхода из системы), примерно через 2 часа снятые и записанные изображения будут обрезаны в левом верхнем углу экрана. Я не могу повторить это, когда подключаюсь удаленно. Что странно, обрезанное изображение имеет то же разрешение, что и необрезанное полное изображение.

Они выглядят так:

Обрезанное изображение

Все изображения, обрезанные или нет, имеют размер 640 x 480.

Вот маршрут, который записывает текущее изображение с веб-камеры в папку.

app = Flask(__name__) крышка = cv2.VideoCapture(0) cap.set(cv2.CAP_PROP_BUFFERSIZE, 1) cap.set(cv2.CAP_PROP_FRAME_WIDTH, 640) cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 480) # Используйте функцию кэширования Flask для кэширования CAP (поэтому он не устанавливает его каждый раз, когда мы вызываем маршрут) app.cache = крышка @app.route('/следующий') защита следующего(): cv_cap = app.cache имя_файла = urllib.parse.unquote(request.args.get('fileName')).replace("{{}}", "{}") если нет os.path.exists('C:/Users/Public/photos'): os.madeirs('C:/Users/Public/photos') если cv_cap.isOpened(): ret, кадр = cv_cap.read() если возврат: # Вставляем кадры в общую папку out_path = "C:/Users/Public/photos" кадр = Frame.reshape((480, 640, 3)) cv2.imwrite(os.path.join(out_path, file_name), фрейм) # Проверяем, нужно ли нам освободить место photo_files = glob(os.path.join(out_path, f'*.jpg')) если len(photo_files) > 5000: delete_old_photos(photo_files) ответ = { 'имя_изображения': имя_файла } вернуть jsonify(ответ), 200 еще: print("Изображение не удалось прочитать") вернуть ответ (статус = 500) еще: print("НЕ МОЖЕТ ОТКРЫТЬ КРЫШКУ") вернуть ответ (статус = 500) Мне удалось решить эту проблему, открыв приложение Windows Camera. Для этого необходимо сбросить драйвер или что-то еще, что исправит проблему.

Есть ли в Windows параметр, который мне нужно выбрать? Возможно, драйвер USB перешел в спящий режим или что-то в этом роде.

Я изо всех сил пытаюсь понять, почему это происходит, и сейчас просто отключаю это, поскольку Windows есть Windows.
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Изображение обрезано с «неправильной» стороны
    Гость » » в форуме CSS
    0 Ответы
    13 Просмотры
    Последнее сообщение Гость
  • Изображение обрезано с «неправильной» стороны
    Гость » » в форуме CSS
    0 Ответы
    16 Просмотры
    Последнее сообщение Гость
  • Почему изображение SVG обрезано?
    Anonymous » » в форуме CSS
    0 Ответы
    43 Просмотры
    Последнее сообщение Anonymous
  • Список с прокручиваемыми горизонтальными строками — содержимое элементов переменной высоты обрезано
    Anonymous » » в форуме IOS
    0 Ответы
    26 Просмотры
    Последнее сообщение Anonymous
  • TCP-сервер Netty получает от клиента только 536 байт. Остальное обрезано
    Anonymous » » в форуме JAVA
    0 Ответы
    33 Просмотры
    Последнее сообщение Anonymous

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