Цветовое разделение материалов.
Используем данные низко- и высокоэнергетического каналов, чтобы определять классы материалов и отображать их разными цветами.
Двухэнергетическая обработка · LE / HE
Кейс / Интроскоп / C++ · Qt
Создали для заказчика программное обеспечение интроскопа — с собственным алгоритмом обработки изображений и интерфейсом оператора.
Посмотреть результатДвухэнергетические рентгеновские данные
Используем данные низко- и высокоэнергетического каналов, чтобы определять классы материалов и отображать их разными цветами.
Двухэнергетическая обработка · LE / HE
Реализовали настройку контраста и усиление границ. Для просмотра отдельных участков скана предусмотрели масштабирование и перемещение по изображению.
Контраст · контуры · масштабирование
В приложении оператор переключает режимы отображения, работает с текущим сканом и открывает сохранённые измерения.
C++ / Qt · приложение для заказчика
О проекте
Разработали для заказчика настольное приложение, которое принимает данные детектора, строит рентгеновское изображение и выводит его на экран оператора.
В основе обработки — данные низко- и высокоэнергетического каналов. Реализовали калибровку, цветовое представление материалов и настройку контраста.
Как устроена обработка
Измерения проходят калибровку и обработку перед отображением на экране.
Работа с низко- и высокоэнергетическим каналами детектора.
Учёт тёмных и световых кадров при подготовке измерений.
Построение изображения из последовательных полос по мере их поступления.
Цветовое представление материалов и переключение режимов просмотра.
Примеры обработки
Результаты обработки сохранённых измерений в приложении. Каждый скан можно открыть в полном размере.

Возможности приложения
Оператор может менять режим отображения, масштаб и контраст, а также открывать сохранённые сканы.

Реальные скриншоты приложения: один сохранённый скан в двух режимах.
Цветной и чёрно-белый просмотр, негатив, выделение органики и неорганики, режимы высокого и низкого проникновения.
Масштабирование и перемещение по изображению, регулировка контраста и усиление границ. Для навигации и изменения масштаба предусмотрены клавиатурные команды.
Приложение сохраняет данные сканирования вместе с калибровочными кадрами. Запись можно открыть повторно и выбрать другой режим обработки.
Запись можно воспроизвести по частям, имитируя поступление данных от детектора. Так проверяем обработку без подключения оборудования.
Построение скана
Детектор передаёт данные полосами. Приложение достраивает изображение по мере их поступления, и оператор видит полученную часть скана до завершения сканирования.
На сохранённых записях проверяли, как добавление полос влияет на цвет и классификацию материалов в уже показанной области. Промежуточные кадры сравнивали с полным сканом.
Одинаковые записи и калибровочные данные для сравнения вариантов обработки.
Проверка изменений изображения при поступлении очередных полос скана.
Сопоставление цвета и классов материалов с итоговым изображением.
Технологии
Основное ПО разработали на C++ и Qt. Связали обработку измерений, отображение скана, управление режимами и работу с архивом.
Приём измерений, построение изображения, алгоритм обработки, запись и восстановление сканов.
Рабочее окно, режимы просмотра, масштабирование, управление контрастом и навигация по изображению.
Результат проекта
Приложение строит изображение из данных детектора и предоставляет инструменты просмотра. Сохранённые измерения можно открыть повторно и обработать в другом режиме.
Нужны обработка данных детектора, новый интерфейс или доработка существующего приложения? Обсудим оборудование и требования к результату.