Программное обеспечение FastVCR для камер машинного зрения XIMEA

Компания XIMEA - известный производитель камер для промышленных, медицинских и научных приложений. Эта компания предлагает компактные и высококачественные продукты с различными разрешениями, частотой кадров, интерфейсами USB3 и PCIe, спектральной чувствительностью, разнообразными сенсорами. Камеры XIMEA могут поставляться с интерфейсом PCI-Express, который значительно улучшает пропускную способность и позволяет использовать приложения в реальном времени для камер с высоким разрешением и высокой частотой кадров.

софт FastVCR

Камеры XIMEA поставляются с программным обеспечением CamTool, которое может использоваться для тестирования или для приложений с низкой частотой кадров. Чтобы преодолеть это существенное ограничение, мы разработали программное обеспечение на базе графического процессора NVIDIA для работы с камерами XIMEA, обеспечивающее максимальную производительность и высокое качество изображений в режиме реального времени. Вы можете скачать это программное обеспечение (версия для Windows) и протестировать его с камерами XIMEA (8/12-бит, монохромные или цветные).

Для чего нужен быстрый софт для камер XIMEA?

Если мы посмотрим на технические характеристики последней серии сенсоров SONY Pregius 4-го поколения, то увидим, что большинство из них имеют версию "high speed", что означает, что у этих матриц не только высокое разрешение, но и высокая частота кадров. Камеры XIMEA с этими сенсорами оснащены высокоскоростными интерфейсами USB3 или PCIe, поэтому они могут передавать полученные кадры с очень высокой пропускной способностью.

Это относится не только к сенсорам SONY, аналогичная ситуация наблюдается и с сенсорами Gpixel, On-Semi и AMS (CMOSIS). Современные камеры машинного зрения обеспечивают высокое разрешение и высокую частоту кадров, поэтому непросто делать обработку в реальном времени с высоким качеством и без потерь кадров, это довольно сложная задача. Но это именно то, что мы делаем с помощью программного обеспечения FastVCR, работающего на графическом процессоре NVIDIA. Параллельная реализация алгоритмов обработки изображений значительно повышает скорость, что очень критично для приложений с камерами.

Камеры машинного зрения могут обеспечивать высокое качество изображения в режиме реального времени, поэтому кроме промышленных приложений они также используются и в приложениях для потоковой передачи данных, цифрового кино, 3D, дополненной реальности и виртуальной реальности VR.

Камеры XIMEA

Серии камер xiC и xiX

Камеры xiC - это чрезвычайно разнообразное семейство камер, разработанное для сенсоров Sony Pregius™. Оно предлагает множество вариантов сочетаний сенсоров и интерфейсов.

Камеры xiX основаны на той же концепции на уровне платы и могут передавать изображения в компьютер через шину PCI Express Gen2. В сочетании с минимальными задержками и нагрузкой на процессор, камеры идеально подходят для встраиваемых систем видеонаблюдения и для мультикамерных приложений. Благодаря гибким плоским кабелям, встроенные камеры можно интегрировать в ограниченном пространстве и в непосредственной близости друг от друга.

Возможности программы FastVCR для управления камерами XIMEA

  • Инициализация камеры (модель камеры, параметры по умолчанию для разрешения, частоты кадров, экспозиции и т.д.)
  • Битность и формат исходных данных, получаемых от камеры
  • Разрешение полного кадра и установка области интереса (ROI)
  • Частота кадров
  • Длительность экспозиции
  • Аналоговый коэффициент усиления (Gain)
  • Контроль пропускной способности камеры
  • Автоматическое управление экспозицией и аналоговым коэффициентом усиления (exposure/gain)
  • Дополнительные режимы: биннинг, децимация и т.д.
  • Предустановки софта для быстрой смены наборов параметров сенсора

Возможности FastVCR для обработки исходных данных от камер XIMEA на видеокартах NVIDIA

  • Получение "сырых" данных от камеры
  • Распаковка данных
  • Линеаризация исходных данных
  • Вычитание темнового кадра
  • Коррекция виньетирования (плоское поле)
  • Автоматическое удаление битых пикселов
  • Баланс белого / автоматический ББ
  • Адаптивное управление экспозицией и аналоговым коэффициентом усиления
  • Демозаика по алгоритму MG (окно 23 × 23)
  • Шумодав на базе вейвлетов
  • Шумодав по алгоритму NLM
  • Цветокоррекция с помощью матрицы или DCP профиля
  • Восстановление светов
  • Коррекция экпозиции (управление яркостью)
  • Кривые и уровни
  • Повороты на 90/180/270 градусов, отражения по вертикали и по горизонтали
  • Кроп
  • Ресайз (уменьшение или увеличение размера кадра масштабированием)
  • Поворот кадра на произвольный угол
  • Подавление дисторсии с помощью LCP-профиля или с картами ремапа
  • Резкость (локальный контраст)
  • Гамма
  • Сжатие в JPEG и сохранение кадров на SSD
  • Конвертация RGB в формат NV12 для сжатия видео в h264/h265
  • Автоматическое разбиение видео на отдельные файлы в формате AVI/MP4 при записи
  • Встроенный RTSP-сервер для стриминга с минимальной латентностью
  • Вывод обработанных кадров на монитор в реальном времени

Варианты вывода данных для программы FastVCR

  • Видео вывод на монитор через OpenGL в реальном времени
  • Вывод статистики работы камеры
  • Сжатие в JPEG с сохранением кадров на SSD
  • Сжатие видео в MJPEG (AVI), H.264/H.265/AV1 (MP4) и сохранение в видео контейнер на SSD
  • Видео стриминг с минимальной задержкой через RTSP (плеер и сервер включены в комплект поставки)
  • Сохранение сырых данных в форматах RAW/PGM/DNG на SSD в реальном времени
  • Возможность интеграции с другим софтом, работающим на CUDA
  • Интеграция с нейросетями, в том числе и на уровне GPU

Бенчмарки для FastVCR

Это программное обеспечение работает на графическом процессоре NVIDIA для параллельной обработки изображений и таким образом достигается высокая производительность, что крайне важно для приложений с камерами. Камеры XIMEA с интерфейсами USB3 и PCIe как раз и дают огромные потоки данных, которые нужно обрабатывать в реальном времени. Для камер USB3 программное обеспечение может работать с многокамерными системами, обрабатывая сырые кадры со всех камер в режиме реального времени без потери кадров. Тем не менее, наибольшая скорость передачи может быть достигнута с камерами PCIe. Программное обеспечение FastVCR может обрабатывать изображения с 65-мегапиксельной камеры (10 бит) со скоростью 60 кадров в секунду (до 70 кадров в секунду для 8 бит) на NVIDIA GeForce RTX 4090, включая импорт RAW, обработку кадров на графическом процессоре, кодирование в формате JPEG и сохранение на SSD. Это всего лишь один пример, который показывает высочайший уровень производительности. В целом, производительность зависит от сложности конвейера обработки изображений и используемого оборудования (CPU/GPU/SSD и т.д.). Демо версию программы можно загрузить для тестирования камер XIMEA для оценки качества обработки изображений, производительности и латентности.

Это программное обеспечение также может работать в режиме эмулятора камеры, чтобы дать возможность проверить производительность обработки изображений на графическом процессоре даже при отсутствии камеры. Пользователь может загрузить для обработки произвольное изображение в формате RAW/PGM/TIFF и работать с ним как с виртуальной камерой. Это очень полезно для проверки качества обработки и производительности работы софта на имеющейся у пользователя видеокарте. Таким образом, можно сразу оценить предполагаемый результат, даже без камеры.

Дополнительные модули обработки на видеокарте NVIDIA

  • Захват RAW кадров, обработка и сохранение на SSD
  • Вычисление гистограмм для сырых и для обработанных кадров
  • Кривые и уровни для RAW, RGB, HSV
  • Поддержка профилей DCP
  • Поддержка 3D LUT
  • Геометрические и аффинные преобразования
  • Возможность работы в режиме HDR
  • Локальный и глобальный тонмаппинг
  • Возможность вывода через SDI
  • Поддежка многокамерных систем
  • Быстрый повтор (replay, синхронизированный вьюер) для многокамерных систем
  • Высокопроизводительные кодеки JPEG2000 и Raw-JPEG на CUDA
  • Возможность интеграции с FFmpeg
  • Внешнее управление через скрипты на питоне
  • Калибровка камер и объективов: FPN, FFC, DCP, дисторсия
  • Поддержка GenICam (GenTL) и SDK от следующих производителей камер: Basler, Imperex, DALSA/Flir, IO Industries, Emergent Vision Technologoes, Lucid Vision, Daheng Imaging, Mindvision, Hikrobot и др.
  • Подавление поперечных хроматических аберраций - в разработке

CLI приложение FastVCR (приложение для командной строки)

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

Чтобы соответствовать этим требованиям, мы разработали CLI приложение, которое обладает всеми вышеперечисленными функциями программного обеспечения FastVCR и может работать без графического интерфейса пользователя. Это приложение позволяет удалённо контролировать камеру, а также параметры обработки и сохранения кадров/видео.

cuda image processing sdk

Все указанные выше модули обработки изображений реализованы на базе нашего CUDA image processing SDK. Наши заказчики могут использовать эти функции в своих приложениях для быстрой обработки изображений. Здесь можно посмотреть на бенчмарки для Fastvideo SDK.

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

Загрузить FastVCR

Блог Фаствидео на английском

Форма для отправки запроса

Эта форма сохраняет вашу должность и адрес электронной почты.