Я делаю попиксельный анализ.У меня есть одно параметрическое изображение img1 и одно параметрическое матричное изображение ROI (содержит только значения в пределах области интереса и ноль в другом месте), img2, с разрешениями 256x256, которые я пытаюсь перекрывать.В моем распоряжении есть:
- Два массива изображений, img1 и img2, которые имеют одинаковую степень поля обзора, но смещены и охватывают разные области.
- Реальныемировые опорные точки (в мм) для обоих изображений, которые являются refpoint1 = (- 88,5, -98,6) и refpoint2 = (- 86,1, -96,7) соответственно для img1 и img2.Опорные точки расположены в верхнем левом пикселе (1,1) на соответствующих изображениях.
- Расстояние между пикселями для обоих изображений составляет 1,42 пикселя / мм.
Я хочусдвинуть img2 для перекрытия на img1 путем сопоставления координат.
Попытка
temp = zeros(size(img1));
s = size(img2);
x = abs(refpoint1(1) - refpoint2(1)) * pixspacing;
y = abs(refpoint1(2) - refpoint2(2)) * pixspacing;
temp(x:x+s(1)-1, y:y+s(2)-1) = img2;
Закрыть решение
x = (refpoint1(1) - refpoint2(1)) * pixspacing;
y = (refpoint1(2) - refpoint2(2)) * pixspacing;
img2 = imtranslate(img2, [x, y], 'FillValues', 0, 'OutputView', 'full');
Проблема сейчас в том, что изображения ROI выровнены и накладываются друг на друга, но я не могу выполнить операцию img1. * Img2, поскольку разрешение img2 отличается от разрешения img1.Как я могу обрезать img2 и сохранить его выровненным?