Подгонка 3D-матриц к одинаковым значениям серого

Я пытаюсь сопоставить два набора данных. Они содержат результаты измерения одного и того же объекта двумя разными измерительными устройствами (рентгеновский или микрокт).

Мне удалось восстановить данные изображения и подогнать ориентацию и смещение стеков. Выглядит это так (одно изображение из стопки около 500 изображений):

Необработанные данные рентгенографии (слева) и микроКТ

Весь смысл в том, чтобы сравнить несколько алгоритмов шумоподавления на рентгеновских данных (слева). Предполагается, что данные µCT (справа) близки к реальному сигналу без каких-либо шумов. Итак, я хочу сравнить рентгеновские данные с шумоподавлением от каждого из алгоритмов с «чистым» сигналом от микроКТ, чтобы увидеть, какой алгоритм дает наименьшую среднеквадратичную ошибку. Поэтому мне нужно каким-то образом подогнать значения серого из левой части к значениям из правой части, не слишком сильно манипулируя шумом.

Значения серого справа находятся в диапазоне от 0 до 100, тогда как данные рентгеновского излучения находятся в диапазоне от 4000 до 30000. «Пузырьки» находятся в диапазоне от 8000 до 11000 (это не настоящие пузырьки, а искусственные). фантом с дырочками из 3д принтера)

То, что я пытался сделать, это (своего рода) пропустить эти пузыри и сопоставить их с ~ 100, сдвинув все остальное к 4 (что является значением для фона на данных µCT).

Это код для этого:

zwst = zwsr;
zwsr(zwst<=8000)=round(zwst(zwst<=6500)*4/8000);
zwsr(zwst<=11000 & zwst>8000)= round(zwst(zwst<=11000 & zwst>8000)/9500*100);
zwsr(zwst>11000)=round(zwst(zwst>11000)*4/30000);

Результаты выглядят следующим образом: результаты прохождения полосы

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

РЕДАКТИРОВАТЬ: Чтобы прояснить ситуацию: предполагается, что данные µCT не содержат шума, а данные рентгеновского снимка предполагаются зашумленными. Другими словами, µCT = signal, а x-ray = signal + noise. Чтобы оценить качество моих методов шумоподавления, я хочу вычислить x-ray - µCT = noise.


person Dominic    schedule 11.06.2015    source источник


Ответы (1)


Слишком долго для комментария, и я считаю разумным ответом:

Существует огромная область обработки изображений/обработки сигналов, называемая слиянием изображений. Существует даже специальная библиотека Matlab для использования вейвлетов (http://uk.mathworks.com/help/wavelet/gs/image-fusion.html).

Идея слияния изображений заключается в следующем: имея 2 изображения одного и того же объекта, но с очень разным разрешением/данными, как мы можем создать одно изображение, содержащее информацию обоих?

Сшивание обоих изображений "вручную" обычно не дает очень хорошего результата, поэтому существует большое количество приемов, позволяющих сделать это математически. Вейвлеты здесь очень распространены.

Как правило, эти методы широко используются в медицинской визуализации, поскольку (как и в вашем случае) разные методы визуализации дают разную информацию, и врачи хотят, чтобы все они были вместе:

Пример (верхний ряд: изображения, склеенные вместе, нижний ряд: методы слияния изображений)

введите здесь описание изображения

Взгляните на некоторые документы, некоторые учебные пособия по Matlab, и, вероятно, вы доберетесь туда с простым в использовании кодом Matlab без какого-либо причудливого современного программирования.

Удачи!

person Ander Biguri    schedule 11.06.2015
comment
Спасибо за ваше предложение. Я заглянул в wfusimg из набора инструментов вейвлета в Matlab. К сожалению, это, кажется, не решает мой случай. Этот метод слияния изображений объединяет данные из двух изображений в одно новое изображение, а это не то, что мне нужно. На самом деле, данные рентгеновского снимка не должны изменяться ничем, кроме соответствующего масштабирования значений серого. Цель состоит в том, чтобы масштабировать данные рентгеновского снимка таким образом, чтобы уровень сигнала от рентгеновского снимка и µCT был (близок к) равным, чтобы остался шум. Я отредактировал сообщение, чтобы уточнить это. - person Dominic; 11.06.2015
comment
@ Доминик, понятно. Однако обратите внимание: вейвлеты УДИВИТЕЛЬНО удаляют шум. - person Ander Biguri; 11.06.2015
comment
Спасибо за подсказку, все мои методы шумоподавления основаны на манипуляциях с вейвлет-коэффициентами. ;-) Хорошая вещь. - person Dominic; 11.06.2015