Images in Digital micrograph
3 次查看(过去 30 天)
显示 更早的评论
Hi,
I would like to extract the dark pixels of an DM3 image. For that I thought to get the line profile and set a threshold. Each pixel below the certain threshold would be identified as a "dark" pixel. Now my question: How can I draw such line profiles atomatically?
0 个评论
回答(2 个)
Image Analyst
2017-3-5
You can use line() to draw lines in the overlay above an image. You might like to look at improfile(). What is your definition of "automatically"?
To get the dark pixels, you can mask bright pixels to 0
brightPixels = grayImage > someValue;
grayImage(brightPixels) = 0;
imshow(grayImage, []);
0 个评论
Antonio Sereira
2017-3-6
6 个评论
Image Analyst
2017-3-7
Not quite sure I understand. You lost me when you said that you took an average vertical profile (1-D of 1000 elements) and turned it into a 100x100 2-D array and then called that a "data cube" which, to me, means a 3-D array, not a 2-D array. Did you subsample and replicate? Just reshape()? Is this something like meshgrid() produces? I have no idea what went on.
A small 4 by 4 by 3 slice example might help.
In general to extract values according to their value, try thresholding:
indexesToExtract = z >= lowValue & z <= highValue;
extractedZ = z(indexesToExtract);
where z is a 1-d vector.
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!