How to automatically separate fibers from nuclei in a histological image ?
2 次查看(过去 30 天)
显示 更早的评论
Hi everybody !
I am working on histological images on matlab, and I would like to measure orientation of fibers on my images.
I have tried my orientation determination code on a 'simplistic' image from paint (see bellow) and it's working quite well. I am using structural elements lines that I rotate from 1 to 180° using imopen.
So know my next step is to isolate fibers in my pictures so that I can run the algorithm without measuring nucleus orientation for example.
Here is an example of the kind of images I have :
(fibers I would like to measure are the small black lines)
and without visible fibers :
For know, I have been struggling with this problem using various of thecnics such as opening with small disks, sobel filter with bwareaopen, or even clustering in L*a*b space for the image with colours.
I would like to have your point of view on how I could do such thing (maybe neural network is my only option here?). At first I would like to have a simple algorithm, even if it's no perfect !!
Thank you very much in advance for your help !
Simplistic image :
0 个评论
回答(1 个)
Maneet Kaur Bagga
2023-9-7
Hi Francois,
As per my understanding of the question, to isolate the fibres from the histological images considering a neural netwrok based approach can be a suggested option. For designing a neural network for the fibre segmentation you may use popular architectures like U-Net, FCN(Fully Convolutional Network) or DeepLab.
You may refer to the following MATLAB Documentation for the implementation of the architectures.
U-Net
FCN
DeepLab
For determining the orientation of the fibre you may refer to the Region and Image Properties from the MATLAB Documentation specifically the Orientation section:
I hope this helps!
Thank You
Maneet Bagga
2 个评论
Maneet Kaur Bagga
2023-9-13
Hi Francois,
For a smaller dataset, you can try these two alternate approaches:
- Converting the image to a gray scale image, then applying a thresholding technique(global or adaptive) followed by applying morphological operations like erosion("imerode"), dilation("imdilate"), opening("imopen") or closing("imclose") to enhance the fibre structure and separate them from the backgorund.
- Construct a graph representation of the image using the "graydiffweight" function to compute the weights between neighboring pixels based on their intensity differences. Apply graph-based segmentation algorithms like normalized cuts (nCut) or minimum spanning trees (graywatershed) to segment the fibers.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Biomedical Imaging 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!