background noise and nearst point

1 ビュー (過去 30 日間)
zawaiter
zawaiter 2013 年 1 月 9 日
hi experts , i have two questions and hope you can help me.
1- i was able to form a 3d image of a brain from a 2d slices. but i want to set all the gray level values out side the brain to zero (i.e eliminate the noise at the background)
2- A(x,y,z) is a point within the 3 D volume , it could be within the brain or outside the brain. i wish to find the nearest point to A(x,y,z) on the surface of the brain.

採用された回答

Image Analyst
Image Analyst 2013 年 1 月 9 日
% Make a mask:
mask3D = image3D > thresholdValue;
% Fill it so we don't change low gray level voxels inside the head.
mask3D = imfill(mask3D, 'holes');
% Mask volume outside the mask
image3D(~mask3D) = 0;
% Then call bwdist() to get the closest distance from each point to the outer surface.
  2 件のコメント
Image Analyst
Image Analyst 2013 年 1 月 10 日
Look at the second return argument from bwdist(). I've never used it though. Be aware that there can be several voxels that are the closest one to a particular reference voxel.

サインインしてコメントする。

その他の回答 (1 件)

Amith Kamath
Amith Kamath 2013 年 1 月 9 日
For either case, I would imagine you will need a mask for the brain regions. This can be done either manually using http://www.mathworks.com/help/images/ref/imfreehand.html (which would be painful indeed) or you could also use tools like http://www.mathworks.com/matlabcentral/fileexchange/19567-active-contour-segmentation for a 3D dataset like yours.
for 1. http://www.mathworks.com/help/images/ref/bwareaopen.html is the best way to eliminate small noisy regions.
  1 件のコメント
zawaiter
zawaiter 2013 年 1 月 10 日
thank AMITH for help i need some time to try your help.

サインインしてコメントする。

カテゴリ

Find more on MRI in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by