Проблемы с преобразованием команды ffmpeg между Linux и Windows — для видеорадиометрических данных InfiRay P2 ProLinux

Ответить
Anonymous
 Проблемы с преобразованием команды ffmpeg между Linux и Windows — для видеорадиометрических данных InfiRay P2 Pro

Сообщение Anonymous »

Я использую тепловизионную камеру InfiRay P2 Pro (https://www.xinfrared.com/products/infi ... 1PYLrtO1Uf) и хочу извлечь данные о температуре из каждого пикселя в области просмотр записанного видео.
Я пробовал следующее:
  • SharpInfraredAnalyzer.exe (из InfiRay https://www.xinfrared.com/pages/download-center [Windows P2 Pro для ПК]) позволяет вручную сохранять отдельные изображения, которые можно перезагрузить и проанализировать для измерения температуры. Он также может записывать видео, но видео не сохраняет информацию о температуре. Кроме того, поскольку диапазон температур не является статическим (масштабирование до максимума/минуты с каждым кадром), я не могу извлечь надежные данные из видео в Matlab.
  • Метод (опубликованный Aurel в https://www.eevblog.com/forum/thermal-i ... ssion/200/) с использованием ffmpeg извлекает часть потока, который, как предполагает этот пост, является необработанным данные.
Я попробовал метод 2. и могу воспроизвести некоторые результаты из сообщения, включая просмотр и сохранение видео объединенных потоков.
Исходное сообщение для Linux

Код: Выделить всё

# Look a the combined streams
ffplay -input_format yuyv422 -video_size 256x384 -i /dev/video4
Изображение

У меня работает следующая команда (Windows 10)

Код: Выделить всё

ffplay -f dshow -video_size 256x384 -i video="USB Camera"
Изображение

Когда дело доходит до извлечения данных из нижней половины объединенных потоков, опубликованный код Linux:

Код: Выделить всё

# Use ffmpeg to grab the combined stream, crop to keep only the bottom half
# then pipe the raw data to ffplay and reinterpret it as gray16le.
# The resulting picture will be almost uniform gray due to the low range of
# the raw values in the 16 bits dynamic range.
# The raw values in a 0°C to 100°C environment ranges around 19000 to 24000
# (in a 0 to 65535 dynamic range).
ffmpeg -input_format yuyv422 -video_size 256x384 -i /dev/video4 -vf 'crop=h=(ih/2):y=(ih/2)' -pix_fmt yuyv422 -f rawvideo - | ffplay -pixel_format gray16le -video_size 256x192 -f rawvideo -i -
и позже

Код: Выделить всё

# To make the resulting raw stream more useful, you can add a normalization filter
# followed by a pseudocolor filter with typical IR camera colors
ffmpeg -input_format yuyv422 -video_size 256x384 -i /dev/video4 -vf 'crop=h=(ih/2):y=(ih/2)' -pix_fmt yuyv422 -f rawvideo - | ffplay -pixel_format gray16le -video_size 256x192 -f rawvideo -i - -vf 'normalize=smoothing=10, format=pix_fmts=rgb48, pseudocolor=p=inferno'
Однако мне не удалось создать рабочий код, соответствующий этим последним командам. Моя попытка в Windows 10.

Код: Выделить всё

ffmpeg -pixel_format yuyv422 -video_size 256x384 -i video="USB Camera" -vf 'crop=h=(ih/2):y=(ih/2)' -pix_fmt yuyv422 -f rawvideo - | ffplay -pixel_format gray16le -video_size 256x192 -f rawvideo -i -
приводит к ошибке:
Ошибка открытия ввода: нет такого файла или каталога
Ошибка открытия входного файла video=USB-камера
Можете ли вы помочь мне понять, что я сделал неправильно в этой последней команде? Конечная цель — сохранить видео необработанных значений в 16-битной градации серого.

Подробнее здесь: https://stackoverflow.com/questions/798 ... ray-p2-pro
Ответить

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

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

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

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

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