Регистрация изображений двух томов с разным количеством срезов
Я пытаюсь зарегистрировать два объемных изображения из мозга (ПЭТ и КТ или даже ПЭТ и МР). Каждое из этих объемных изображений содержит различное количество 2D-изображений (срезов). Например, CT
имеет 150
ломтики и PET
имеет 100
дольки. Я думал об использовании метода интерполяции для вычисления и уменьшения количества срезов КТ до 100. Это правильный подход? Кто-нибудь знает какие-либо ресурсы, которые могут быть полезны для меня? как псевдокод, или шаги, которые я должен пройти для регистрации двух объемных изображений. Спасибо:)
1 ответ
Если вам известна информация о расстоянии между срезами 150 CT и 100 PET, вы можете посмотреть в MATLAB interp1
функция для интерполяции вдоль одной оси, чтобы масштабировать изображения к тому же числу пикселей. Отсюда можно использовать MATLAB imregister
выполнить регистрацию.
Если вы хотите узнать, как работает внутренняя регистрация (преобразование между пиксельными и физическими координатами, преобразование / повторная выборка изображений и т. Д.), Я могу направить вас к одному из ресурсов - Руководству по программному обеспечению ITK, pdf.
В частности, попробуйте прочитать Раздел 4.1.4 Книги 1 (страница 41 из pdf) о представлении изображений и Раздел 3.9 Книги 2 (страница 532 из pdf) о преобразованиях.
В общем, проблема преобразования и интерполяции трехмерных изображений при регистрации может быть довольно громоздкой для написания кода. Вам нужно спросить себя о расстоянии и ориентации пикселей, о том, как преобразовывать и интерполировать изображения так, чтобы их сетки перекрывались, и вам также нужно решить, что делать с пикселями в вашей сетке, которые находятся за границей изображения при оценке показателя сходства,
Хотя вы должны делать то, что считаете лучшим, я предлагаю вам использовать существующие программы регистрации, если они способны делать то, что вы хотите:
- от Matlab
imregister
(Я никогда не использовал это, поэтому я не могу комментировать это) - simpleITK для Python
- ITK для C++ имеет кривую обучения, но дает полный контроль над процессом регистрации
- elastix - это программа командной строки, которая использует текстовый файл параметров для регистрации.
- 3D-слайсер имеет графический пользовательский интерфейс для простой линейной регистрации