Как получить полученные кадры на полной скорости? - Image Event Listener, кажется, не выполняется после каждого события

Моя цель — считывать 1 пиксель с GIF-камеры в режиме VIEW (живой захват) и сохранять его в файл каждый раз, когда данные обновляются. Камера якобы обновляется каждые 0,0001 секунды, потому что это минимальное время сбора данных, которое Digital Micrograph позволяет мне выбрать в режиме VIEW для этой камеры.

Я могу прикрепить прослушиватель событий изображения к живому изображению камеры с картой сообщений (messagemap = "data_changed:MyFunctiontoExecute"), и MyFunctiontoExecute успешно запускается, что дает мне файл с многочисленными значениями пикселей.

Однако, если я позволю этому обработчику событий запуститься на секунду, я получу только значения, близкие к 100 пикселям, когда я ожидал ближе к 10 000 (если живое изображение обновляется каждые 0,0001 секунды).

Это потому, что живое изображение не обновляется так быстро, как я думаю?

На самом деле это может быть больше аппаратный вопрос, чем вопрос кодирования, и ответ, безусловно, будет зависеть от используемой вами камеры который. Существует много разных типов камер, и «GIF-камера» не указывает это, а указывает только место, в котором установлена ​​камера. Сказав это, обновление дисплея безусловно не выполняется с безумной частотой кадров, которую могут достичь высококачественные камеры, и прослушивание событий обновления не даст вам полной производительности.

BmyGuest 16.05.2019 12:53
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
1
70
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

The event-listener certainly is executed at each event.

Однако живое изображение высокоскоростной камеры почти наверняка не будет обновляться при каждом полученном кадре. Он либо выполнит какой-то кумулятивный, либо выборочный дисплей. Точный ответ будет зависеть от конкретной системы, в которой вы работаете, и от сделанных конфигураций.

Следует отметить, что сверхвысокая частота кадров обычно может быть достигнута только с помощью специальной прошивки и оптимизированных систем. Маловероятно, что "общий программный подход" - в частности интерпретируемый и некомпилируемый код - сможет обеспечить необходимую скорость. При таком подходе проблема может быть обречена с самого начала.

(Вместо этого, скорее всего, придется создать буфер, а затем настроить систему для сбора данных непосредственно в буфер с максимально возможной частотой кадров. Это будет непосредственное кодирование захвата камеры)

Еще раз спасибо за ответ @BmyGuest! Из любопытства, насколько сложным было бы непосредственное кодирование захвата камеры? Спасибо за вашу помощь!

danielkangell 17.05.2019 04:44

Другие вопросы по теме