how to crop multiple files
2 次查看(过去 30 天)
显示 更早的评论
hello guys , worked on triangular mask cropping of a DICOM image , here is the code -
clear all
I=dicomread('four.dcm');
I=uint16(I);
g=imshow(I,[0 600]);
axis on
[x,y]=ginput(3);
h = impoly(gca, [x,y]);
pos = wait(h);
BW = createMask(h,g);
BW=uint16(BW);
J=I.*BW;
figure,imshow(J,[0 600]);
I just want to perform this task on multiple DICOM images . used for loop but createMask is showing error about cell type data variables . what will be the approach ? please suggest me . Thank you
采纳的回答
Stalin Samuel
2015-10-12
for i = 1:length(fileList)
I=dicomread(fileList{i}); %fileList contains names of all dicom images
I=uint16(I);
g=imshow(I,[0 600]);
axis on
[x,y]=ginput(3);
h = impoly(gca, [x,y]);
pos = wait(h);
BW = createMask(h,g);
BW=uint16(BW);
J=I.*BW;
figure,imshow(J,[0 600]);
end
6 个评论
Sara Salimi
2016-9-29
编辑:Sara Salimi
2016-9-29
Dear Walter, thank you very much.
Question: Does cropping affect the processing and and the performance of process/calculation? I mean smoothing or derivatives?
Thanks again
Walter Roberson
2016-9-29
Generally speaking, operating on smaller matrices is faster, but for reasonably sized arrays operations like smoothing a sobel filters are pretty quick. Cropping is usually used to remove irrelevant information -- if you know that something is not part of the interesting part of the image, it is confusing to region find on it (for example might be text labels.)
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!