← Портфолио

Кейс / Интроскоп / C++ · Qt

Разработка ПО
для рентгеновского оборудования

Создали для заказчика программное обеспечение интроскопа — с собственным алгоритмом обработки изображений и интерфейсом оператора.

Посмотреть результат

Двухэнергетические рентгеновские данные

Собственный алгоритм
обработки изображений.

01 / Материалы

Цветовое разделение материалов.

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

Двухэнергетическая обработка · LE / HE
Фрагмент реального рентгеновского скана рюкзака с электроникой: цветовое представление материалов
Рюкзак с электроникой · фрагмент реального скана
02 / Детали

Контраст и усиление контуров.

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

Контраст · контуры · масштабирование
Фрагмент реального скана платы, вентиляторов, проводов и металлических инструментов
Электроника и инструменты · фрагмент реального скана
03 / Интерфейс

Рабочее место оператора.

В приложении оператор переключает режимы отображения, работает с текущим сканом и открывает сохранённые измерения.

C++ / Qt · приложение для заказчика
Реальный интерфейс разработанного приложения для интроскопа в цветном режиме
Рабочее приложение · реальный скриншот

О проекте

Программная часть
рентгеновского комплекса

Разработали для заказчика настольное приложение, которое принимает данные детектора, строит рентгеновское изображение и выводит его на экран оператора.

В основе обработки — данные низко- и высокоэнергетического каналов. Реализовали калибровку, цветовое представление материалов и настройку контраста.

Продукт
ПО для интроскопа
Разработка
Алгоритм и интерфейс
Технологии
C++ / Qt

Как устроена обработка

От измерений детектора
до изображения на экране

Измерения проходят калибровку и обработку перед отображением на экране.

  1. 01

    Приём данных

    Работа с низко- и высокоэнергетическим каналами детектора.

  2. 02

    Калибровка

    Учёт тёмных и световых кадров при подготовке измерений.

  3. 03

    Сборка скана

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

  4. 04

    Отображение

    Цветовое представление материалов и переключение режимов просмотра.

Примеры обработки

Рентгеновские изображения
из приложения

Результаты обработки сохранённых измерений в приложении. Каждый скан можно открыть в полном размере.

Возможности приложения

Инструменты оператора
для работы со сканом

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

Интерфейс приложения
Интерфейс ПО интроскопа в цветном режиме

Реальные скриншоты приложения: один сохранённый скан в двух режимах.

01

Переключение режимов

Цветной и чёрно-белый просмотр, негатив, выделение органики и неорганики, режимы высокого и низкого проникновения.

02

Работа с деталями

Масштабирование и перемещение по изображению, регулировка контраста и усиление границ. Для навигации и изменения масштаба предусмотрены клавиатурные команды.

03

Архив исходных измерений

Приложение сохраняет данные сканирования вместе с калибровочными кадрами. Запись можно открыть повторно и выбрать другой режим обработки.

04

Воспроизведение потока

Запись можно воспроизвести по частям, имитируя поступление данных от детектора. Так проверяем обработку без подключения оборудования.

ЦветнойЧёрно-белыйНегативОрганикаНеорганикаВысокое / низкое проникновение

Построение скана

Изображение строится
по мере сканирования

Детектор передаёт данные полосами. Приложение достраивает изображение по мере их поступления, и оператор видит полученную часть скана до завершения сканирования.

На сохранённых записях проверяли, как добавление полос влияет на цвет и классификацию материалов в уже показанной области. Промежуточные кадры сравнивали с полным сканом.

Повторяемые условия

Одинаковые записи и калибровочные данные для сравнения вариантов обработки.

Промежуточные кадры

Проверка изменений изображения при поступлении очередных полос скана.

Сравнение с полным сканом

Сопоставление цвета и классов материалов с итоговым изображением.

Инструменты разработки: Quality Lab

Для настройки и проверки алгоритмов использовали Quality Lab: просмотр исходных каналов и результата обработки на сохранённых измерениях.

Исходный низкоэнергетический канал в инструменте Quality Lab
Исходный низкоэнергетический канал
Результат обработки в инструменте Quality Lab
Экспериментальная обработка в Quality Lab

Технологии

Реализация на C++ и Qt

Основное ПО разработали на C++ и Qt. Связали обработку измерений, отображение скана, управление режимами и работу с архивом.

C++

Обработка данных

Приём измерений, построение изображения, алгоритм обработки, запись и восстановление сканов.

Qt

Интерфейс оператора

Рабочее окно, режимы просмотра, масштабирование, управление контрастом и навигация по изображению.

Результат проекта

ПО для интроскопа,
разработанное под задачу заказчика

Приложение строит изображение из данных детектора и предоставляет инструменты просмотра. Сохранённые измерения можно открыть повторно и обработать в другом режиме.

Алгоритм обработки изображений Операторское приложение Запись и воспроизведение данных

ПО для вашего рентгеновского оборудования

Нужны обработка данных детектора, новый интерфейс или доработка существующего приложения? Обсудим оборудование и требования к результату.