How to generate skull striped image for all slices ?

8 次查看(过去 30 天)
Hello
I'm working on masking out the skull from original gray scale MR image for just one slice using the following code :
outputImage = grayImage; % Initialize
outputImage(binaryImage) = 0; % Mask out.
Now, I want to calculate it for all slices(slice 1 to slice 14 ), I've maked a loop for that but this doesn't work:
for j=1:14
outputImage(:,:,j) = grayImage(:,:,j); % Initialize
outputImage(binaryImage(:,:,j)) = 0; % Mask out
end
Could anyone help me please ?

采纳的回答

Image Analyst
Image Analyst 2018-2-13
You need to do something like
[rows, columns, numSlices] = size(grayImage);
for k = 1 : numSlices
thisSlice = grayImage(:, :, k); % Extract one slice
skullStrippedImage = StripSkull(thisSlice); % Call function that strips skull off just one slice.
outputImage(:,:,k) = skullStrippedImage ;
end
  2 个评论
MMSAAH
MMSAAH 2018-2-13
编辑:MMSAAH 2018-2-13
Thank You for your response.
Actually, I've tried your code posted in this question.
This code works well for just one slice, now I want to run it for all MR slices using a loop. So I've not a function to call it that strips skull. Hope that you understand me ?
Image Analyst
Image Analyst 2018-2-13
Then turn that code into a function called StripSkull
function skullStrippedImage = StripSkull(thisSlice)
% Code goes here....

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Image Segmentation and Analysis 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by