Grain Model how to remove smaller grains
2 次查看(过去 30 天)
显示 更早的评论
I have a grain model which consists of lots of tiny grains and clusters of of larger grains. I am wondering how it is possible to separate the smaller grains from the larger grains like the example below
I plot my grains by reading in rectilinear coordinates via reading in an Amira file to Matlab. This lets me plot my material matrix but I have no idea how to go about separating the grains. Has anyone done something similar before? I would be more than happy to share my files if anyone can point me in the right direction.
Thanks :)
0 个评论
回答(3 个)
Constantino Carlos Reyes-Aldasoro
2022-6-8
A bit difficult to help more without the data but I think that your problem can be fixed by selecting your grains by the properties using ismember
Have a look and let us know if this solves your problem or not
Image Analyst
2022-6-8
If you have a binary image of the grains, you can use bwareaopen or bwareafilt to extract grains of a certain size.
2 个评论
Image Analyst
2022-6-8
Do you have a labeled image? Or indexed image? It looks like you do because you have separate colors for them. If you do, you can do it.
Constantino Carlos Reyes-Aldasoro
2022-6-8
Ok, I think now I understand your problem. I thought you had information on the grains themselves, but if you are starting with a grainy image, what you need to do is to filter the image. Take your original image (this one includes the title and labels as it is the one you sent)
Use a median filter like this
imagesc(medfilt3(MatGrid,[5 5 1]))
And that removes the small grains from the image.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Image Processing Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!