MATLAB Answers

How to store count pixel in 3D viewing

3 views (last 30 days)
mohd akmal masud
mohd akmal masud on 11 Oct 2021
Hi all,
I have one set of 3D images Dicom. below is one of the slices.
ok, lets look the the 3D image dicom here, the location (148, 109) have count is 323.
then after did the code below,
% For binary images (png format, each pixel just have value 1 and 0.)
clear all
dataSetDir = fullfile('C:\Users\Akmal\Desktop\I-131 256 28.02.2020\I-131 SPECT NEMA VALIDATION 01112019 256X256 26.09.2021 petang');
imageDir = fullfile(dataSetDir,'bnwaftersegmentation');
imds = imageDatastore(imageDir);
for i = 1:3
% subplot(6,7,i)
I = readimage(imds,i);
% binary
Is{i} = logical(I);
% For 3D images spect
myFolder = ('C:\Users\Akmal\Desktop\I-131 256 28.02.2020\I-131 SPECT NEMA VALIDATION 01112019 256X256 26.09.2021 petang\dcmoriextract');
filePattern = fullfile(myFolder, '*.dcm'); % Change to whatever pattern you need.
theFiles = dir(filePattern);
for K = 1 : length(theFiles)
baseFileName = theFiles(K).name;
fullFileName = fullfile(theFiles(K).folder, baseFileName);
fprintf(1, 'Now reading %s\n', fullFileName);
% Now do whatever you want with this file name,
% such as reading it in as an image array with imread()
P(:,:,K) = double(dicomread(fullFileName));
P(:,:,K) = double(P(:,:,K)) .* double( Is{K} );
%for viewing as 3D images
Ds = smooth3(P);
hiso = patch(isosurface(Ds,5),...
hcap = patch(isocaps(P,5),...
colormap copper
axis tight
set(gcf,'Renderer','zbuffer'); lighting phong
the 3D viewing like below. But, if you look at the same coordinate, (148, 109), its not show the count itself (332). its show the z coordinate. How to do for the 3D viewing(isosurface) can stored also the counts itself (332)??

Answers (0)

Community Treasure Hunt

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

Start Hunting!