SC - Lezione 5
Checklist
Domande, Keyword e Vocabulary
Appunti SC - Lezione 5 - Laboratorio
Properties of orthogonal matrix and orthogonal transformations
Let
- The determinant of
is - The 2-norm of rows and columns is always 1
- The scalar product between rows and columns of the matrix
is always zero.
An orthogonal matrix
An orthogonal transformation also preserves the scalar product, that is:
As conseguence, an orthogonal transformation also preserves the angle between two vectors.
To calculate the angle in degress between the two vector we consider the following formula:
Another important property of orthogonal matrices is that the product of two orthogonal matrices remains an orthogonal matrix. This means that the effect of two successive orthogonal transformations is also an orthogonal transformation
A special kind of rotation is called “reflection”, that consists in flipping a vector over a given line or a plane (hyperplane).
Applicazione 4 - Blurring of Images
Toeplix Matrix:
La matrice quindi è composta solo elementi sulle diagonali e sulle sottodiagonali con un elemento mancante alla fine della matrice.
repmat(v,2,1) ripeti il vettore v due volte.
Cos’è un tensore? Un tensore è come una torta per esempio l’RGB di un immagine sono tre livelli, sono degli strati in tre dimensioni possono essere visti. (no nun agg capit)
repmat() può essere usato per creare una matrice.
Questo è un esempio di come creare un po’ di sfocatura su un immagine, una sfocatura gaussiana.
m=10 e n=8 sarebbe numero di righe e colonne di un eventuale immagine. Una prima matrice quadrata di
Sono le convoluzioni di ELIM della triennale in pratica.
B = spdiags( repmat(v,m,1), [-1 0 1],m,m);0 è la principale, -1 è la sub inferiore, 1 è la sub di sopra la diagonale. m,m è la dimensione della matrice sparsa.
L’output di spdiags è una specie di visualizzazione delle matrice sparse. La più semplice è per indice con le coordinate con il valore degli elementi.
Questa è una matrice tridiagonale.
load mandrill
% the matrix representing the picture is X;
[m,n] = size(X);
figure;
image(X), colormap(gray(256))size() in matlab ritorna sempre due parametri anche i vettori sono visti come una matrice n per uno.
Dovremmo quindi creare due matrici: una per righe e una per colonne per applicare la sfocatura in due direzioni. Si potrebbe anche creare una matrice righe e colonne.
Per incrementare i livelli di sfocatura andrebbe elevata la matrice per applicare la sfocatura ad esempio a 10.
B_10=B^10
e faccio poi image(B_10^10)
appare un po’ di sfocatura.
Application 5 - downloading and processing an external data file
Matrice delle distanze: consideriamo P1(1,2) e P2(3,4) La matrice risultato avrà 0 sulle diagonali perché ci vanno P1-P1 e P2-P2 che fanno zero. La matrice delle distanze è simmetrica rispetto alla diagonale quindi posso considerare anche solo una parte di sopra.
Il comando:
min(D(D>0) (nelle slide il secondo min è ridondante. Trova il più piccolo maggiore di 0.
La matrice D delle distanze mette dei flag delle bandierine nelle posizioni dove sta 1 significa che è >0. Dove trovo gli zeri è falsa. Quindi utilizzando questi valori che sono binari mi vado a ricavare le posizioni.
Viene una sottoforma di vettore.
QUindi il risultato viene il minimo.
[k,j] = find(D==Dmin)
D=Dmin significa cerca gli indici nella matrice che corrispondono alla condizione di verità nella parentesi. Quindi ti trova gli indici del valore per cui D è uguale a Dmin.
poi facendo D(j,k) viene restituito il minimo.