Ciao Gianfranco, Io sfruttarei le operazioni base della morfologia in computer vision.
Con un’operazione di closing (dilatazione e poi erosione) te la cavi in pochissimo tempo. Ludovico --- Ludovico Orlando Russo, Ph.D. ludus.ru...@gmail.com Personal Blog: http://www.ludusrusso.cc/ CTO@HotBlack Robotics www.hotblackrobotics.com > Il giorno 07 nov 2017, alle ore 09:59, Gianfranco Durin <g.du...@inrim.it> ha > scritto: > > Buongiorno a tutti, > ho bisogno di una buona idea. Non è strettamente un problema python, ma > siccome faccio tutto con python mi è sembrato il posto migliore dove chiedere. > > Guardate per favore questa immagine che rappresenta un booleano > bidimensionale: > > https://www.dropbox.com/s/mboretd7gyoenhp/domain.png?dl=0 > <https://www.dropbox.com/s/mboretd7gyoenhp/domain.png?dl=0> > > L'anello rosso come vedete non si chiude e io vorrei trovare un trucco veloce > per trovare il modo di chiuderlo facilmente. > > Infatti il mio scopo è quello di trovare il 'buco' al centro. Se l'anello è > chiuso è facile perché faccio la segmentazione dell'immagine (tecnicamente > uso la funzione label di mahotas, per chi la conoscesse). Con questo divido > l'immagine nelle sue 3 parti, una rossa e le due blu, e di queste blu una > tocca il bordo e la butto via e l'altra al centro è quella che mi interessa. > Uso un trucco simile per sapere se l'anello è chiuso o no, nel senso che > trovo solo due parti, e la blu tocca il bordo. > > Ora se l'anello non si chiude è un problema. Paradossalmente so risolvere il > problema se invece ho più di una sola zona di interruzione- Infatti è > possibile calcolare la minima distanza tra due 'isolette' con un > scipy.spatial.cKDTree. Trovati i punti costruisco facilmente dei ponti tra le > isolette. > > Potrei anche spezzare l'immagine arificialmente e creare delle isolette e > riapplicare cKDTree ma non sono entusiasta di questa idea. > > A qualcuno viene in mente un buon trucco? > > Grazie > Gianfranco > _______________________________________________ > Python mailing list > Python@lists.python.it > https://lists.python.it/mailman/listinfo/python
_______________________________________________ Python mailing list Python@lists.python.it https://lists.python.it/mailman/listinfo/python