/ / Crea una geometria 3D irregolare da una nuvola di punti: algoritmo, 3d, geometria, geometria computazionale

Crea una geometria 3D irregolare da una nuvola di punti: algoritmo, 3d, geometria, geometria computazionale

Ho una grande serie di punti 3D che sono equidistanti su ciascun asse. Molti di questi punti vengono selezionati in base a determinati criteri e mi piacerebbe creare una geometria 3D per visualizzare meglio ciò che è rimasto.

Ho esaminato alcuni algoritmi per creare unmesh triangolare come Triangle di Delaunay o uno scafo convesso, ma sono preoccupato che alcuni punti esclusi possano rimanere intrappolati all'interno della geometria. Ad esempio, una sezione 2D potrebbe essere simile a:

0 0 0 1 1 0 0
0 0 1 1 1 1 0
0 1 1 1 1 1 1
1 1 0 1 0 1 1
0 1 0 0 0 1 0

Dove sono inclusi "1" e "0" sono esclusi. In questo caso sono preoccupato che l'algoritmo includa accidentalmente gli "0" nelle righe in basso perché hanno "1" che li fiancheggiano su entrambi i lati. Nota che gli "0" saranno sempre sul bordo, quindi non dobbiamo preoccuparci dei buchi nella geometria.

In seguito, dovrò essere in grado di ruotare la geometria e trovare la sua intersezione con un piano. Sono abbastanza sicuro di poter gestire la parte di rotazione e intersezione, ma tienilo a mente.

Potrei forzare il problema creando tuttoil triangolo è possibile per tutti i punti sulla superficie e quindi manualmente eliminando tutti i triangoli che contengono un punto escluso. Ma il set di dati può essere molto grande, quindi spero che ci sia una soluzione più elegante a questo.

risposte:

0 per risposta № 1

Se ti interessano solo le geometrie chiuse e ognuna di esse si trova su un piano, hai bisogno di una mesh / triangualtion o semplicemente di un set di poligoni?

Convertire i dati di 0,1 in un'immagine binaria e l'esecuzione di un algoritmo di contorno su sarebbe molto semplice vedere OpenCV


0 per risposta № 2

Penso che stai cercando il Libreria Point Cloud.