Interseca i raggi 3D (punto più vicino) |  di Thomas Rouch |  Febbraio 2024

 | Intelligenza-Artificiale

fotografato da Vincenzo Fleming SU Unsplash

introduzione

UA differenza del caso 2D, è altamente improbabile che due raggi 3D si intersechino. Ad esempio, provare a far sì che due puntatori laser tenuti da due persone diverse si intersechino è molto impegnativo.

Il sistema lineare Ax=b finisce per avere 3 equazioni per 2 incognite, rendendolo irrisolvibile a meno che non ci sia ridondanza all’interno delle equazioni.

Minimi quadrati

Gnche nella maggior parte dei casi non esiste una soluzione, il segmento più corto tra i due raggi può essere visto come la loro intersezione. Denotiamo p1 E p2 come punti finali di questo segmento ottimale, situato su r1 E r2 rispettivamente.

Intersezione di raggi 3D: diagramma dell’autore

Il nostro compito ora si trasforma in un problema di minimizzazione dei minimi quadrati. La sua formulazione è quindi semplice Ax-b rappresenta già il vettore tra p2 E p1.

È un problema ben noto. Azzerando il gradiente al livello ottimale si ottiene la soluzione utilizzando la matrice pseudo-inversa, che è un modo conveniente per costruire una matrice quadrata e quindi invertibile.

Ortogonalità

WSebbene dal diagramma sopra appaia che il segmento più corto è perpendicolare a entrambi i raggi, dobbiamo ancora dimostrarlo formalmente, anche se sembra intuitivo.

Il gradiente zero implica anche che il prodotto scalare tra il segmento definito da p1 E p2 ed entrambe le direzioni dei raggi d1 E d2 è zero, il che dimostra l’ortogonalità.

Sistema lineare alternativo

TL’approccio dei minimi quadrati funziona perfettamente, ma possiamo anche introdurre una terza variabile sconosciuta per rendere risolvibile il nostro sistema lineare.

Dato che i vettori d1, d2 E p2-p1 costituiscono una base ortogonale, con cui possiamo costruire un telaio ortogonale o1 come origine. I punti p1 E p2 può quindi essere derivato esprimendo le coordinate locali di o2 rispetto a questo quadro.

Indicheremo la lunghezza con segno del segmento p2-p1 come δ. Si noti che la direzione del segmento è data dal prodotto vettoriale tra le due direzioni dei raggi.

Il determinante di una matrice 3×3 può essere derivato tramite il triplo prodotto scalare, che coinvolge il prodotto scalare di una colonna con il prodotto incrociato delle altre due.

Nel nostro caso, semplificare l’equazione determinante è semplice poiché la seconda colonna è già un prodotto incrociato. Si noti che l’inserimento del prodotto incrociato come colonna finale avrebbe invece comportato la negazione della norma.

Risolvendo con la regola di Cramer otteniamo l’ottimale t1 E t2 ma anche la lunghezza con segno δ del segmento più corto.

Se ami le equazioni pulite, puoi riordinare e scambiare le colonne per rimuovere i segni meno e migliorarne l’aspetto!

Punto di intersezione

TIl punto di intersezione può essere definito come il centro del segmento più corto, cioè 0.5(p1+p2).

Fonte: towardsdatascience.com

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *