PETNormalizationAcquisitionChecker
PET Normalization Acquisition Checker
Проверка сбора данных для нормализации PET
Проверяет, достаточно ли статистики и корректно ли выполнен acquisition перед расчётом normalization factors.
- total counts и длительность;
- центрирование и аксиальное покрытие;
- прерывания и detector blocks с нулевым числом событий.
Минимальные counts и duration зависят от активности источника и процедуры производителя и должны быть конфигурируемыми.
input.csv
ScannerID,AcquisitionID,CheckDate,PhantomType,SourceID,TotalCounts,MinRequiredCounts,AcquisitionDurationMin,MinRequiredDurationMin,IsCentered,HasInterruption,ZeroCountBlocks,AxialCoveragePercent PET-SIEMENS-01,ACQ-NORM-2026-001,2026-07-22,Uniform_Cylinder_Ge68,GE68-SRC-001,50000000,20000000,20,15,true,false,0,98 PET-GE-02,ACQ-NORM-2026-002,2026-07-22,Uniform_Cylinder_Ge68,GE68-SRC-002,15000000,20000000,10,15,true,false,0,97 PET-PHILIPS-03,ACQ-NORM-2026-003,2026-07-22,Uniform_Cylinder_Ge68,GE68-SRC-003,60000000,20000000,25,15,false,false,2,90
URS & FS — пользовательские требования и функциональная спецификация
URS — требования пользователя
- Утилита должна принимать input.csv с заголовками, указанными в контракте данных.
- До расчёта утилита должна выявлять отсутствующие колонки, ошибки типов, пустые обязательные значения и нелогичные даты или диапазоны.
- Утилита должна детерминированно выполнять функцию «Проверка сбора данных для нормализации PET».
- Пределы и правила должны загружаться из утверждённого профиля либо быть явно зафиксированы в валидируемой версии.
- Для каждой записи должен формироваться понятный итоговый статус: PASS, WARNING или FAIL, с указанием причины.
- Результат должен сохранять исходные значения, вычисленные показатели, применённые пределы и отдельные статусы проверок.
- Ошибка входных данных не должна возвращаться как успешный результат. Итог используется квалифицированным специалистом в рамках утверждённой процедуры.
FS — функциональная спецификация
- Запуск PETNormalizationAcquisitionChecker.exe в demo-режиме или с аргументами input.csv output.json.
- Чтение UTF-8 CSV и сопоставление колонок с контрактом.
- Преобразование значений к ожидаемым типам и проверка обязательных полей.
- Выполнение расчётов и правил для функции «Проверка сбора данных для нормализации PET».
- Формирование массива отдельных checks и итогового статуса по принципу наихудшего результата.
- Запись machine-readable output.json; errors заполняется при невозможности корректного расчёта.
Пример input.csv
ScannerID,AcquisitionID,CheckDate,PhantomType,SourceID,TotalCounts,MinRequiredCounts,AcquisitionDurationMin,MinRequiredDurationMin,IsCentered,HasInterruption,ZeroCountBlocks,AxialCoveragePercent PET-SIEMENS-01,ACQ-NORM-2026-001,2026-07-22,Uniform_Cylinder_Ge68,GE68-SRC-001,50000000,20000000,20,15,true,false,0,98 PET-GE-02,ACQ-NORM-2026-002,2026-07-22,Uniform_Cylinder_Ge68,GE68-SRC-002,15000000,20000000,10,15,true,false,0,97 PET-PHILIPS-03,ACQ-NORM-2026-003,2026-07-22,Uniform_Cylinder_Ge68,GE68-SRC-003,60000000,20000000,25,15,false,false,2,90
Минимальная структура output.json
{
"utility": "PETNormalizationAcquisitionChecker",
"source": "input.csv",
"status": "PASS|WARNING|FAIL",
"derivedValues": {},
"checks": [
{
"parameter": "example",
"value": 0,
"limit": "configured profile",
"status": "PASS",
"message": "criterion satisfied"
}
],
"errors": []
}
Минимальные OQ-сценарии
- Строка в пределах профиля должна вернуть PASS.
- Строка с нарушенным некритическим пределом должна вернуть WARNING или review-status.
- Критическое нарушение должно вернуть FAIL либо соответствующее эксплуатационное решение.
- Отсутствующая колонка, неверный тип или невозможная дата должны заполнить errors и не возвращать PASS.
Перед эксплуатацией
- Сверить формулы и пределы с manufacturer documentation и утверждённым SOP.
- Зафиксировать scanner model, software version и версию профиля.
- После изменения executable, формул или профиля повторить затронутые тесты.
- Хранить source CSV и JSON-результат вместе.
Входит в пакеты
PET Scanner State QC Suite
14 утилит для контроля состояния PET/PET-CT сканера: активность источников Ge-68/Ga-68, blank sinogram, эффективность детекторов, сбор и распределение факторов нормализации, назначение normalization file, тренды, энергетическое окно, TOF, attenuation-correction map, PET/CT cross-calibration и итоговое ежедневное решение.
ОткрытьRPH use case: PET scanner state, gamma camera и radiation physics
Связанный слой medical-device/radiation-physics: PET detector QC, normalization, AC map, cross-calibration, TOF, gamma-camera uniformity, source strength и staff dose.
ОткрытьRPH workflow: imaging QC и количественная интерпретация
Acquisition, uptake, clearance, perfusion, transit, ejection fraction, segmentation и quantitative imaging.
ОткрытьRPH workflow: instruments, devices и radiation safety
PET/gamma-camera state, calibration, detector QC, energy window, TOF, shielding и radiation safety.
Открыть