Separate touching objects and export images individually
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hi everyone,
I got an big image with a lot of histology sections in a series (look at image).

How can I separate and export the two images in the middle in an automatic way? I will have hundreds of these big images and there would probably be around 10-15 histological sections in one image.
I have tried to use watershed algorithm, but it detects several objects within a section and it didn't make a clear border between each section. I hope some of you got an better idea?
Beside that, is it possible to export the individual images afterwards without each section are touching each other? To show you how I would like the end product to look alike, I have used PhotoShop (PS) to isolate the section.

Thank you for your help
6 commentaires
Image Analyst
le 30 Juin 2018
Are all the tops tilted and bottoms tilted? If so we could find the top and bottom and then look for discontinuities.
If the background always lighter and/or smoother than the part in the tile you want to detect?
Réponse acceptée
Image Analyst
le 30 Juin 2018
Well I need to go out and do some yard work but I'm attaching what I've got so far. But I thought I'd give it to you partially finished if you want to see what you can do with it. Basically I'm identifying the top and bottom edges and the gradient. See if you can finish it. Basically you have to identify big differences on the top and bottom and associate them. Once you know the locations of the separations/gaps in the top and bottom, you can use poly2mask to erase everything outside of that section and crop it out into a new image.

When you've finished with it, post what you've got and I'll comment on it or fix it.
3 commentaires
Image Analyst
le 2 Juil 2018
Well now it's more complicated. I thought that all your sections were touching like a parade of elephants. Now we see that some are totally alone. So now you need to find the areas and if the area is around 1.5 times the expected area, split it apart, and if it's less than that leave it alone. Maybe you can just use imline() or roipolyold() to have the user do it. If there's only a few hundred images it would be faster for the user to do it than for you to develop an algorithm.
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Read, Write, and Modify Image dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


