SVD line fitting or ransac line fitting in multidimensionl image
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
prashant singh
am 26 Dez. 2017
Bearbeitet: Matt J
am 28 Dez. 2017
i have a multidimensional image of size 1024*512*128. For each slice(1024*512), I have single point from the mid slice of an image say from slice 40 to 128. So, i have 89 points in my multidimensional (volumetric) image. how can i fit the straight line using svd/ ransac or any other method and then extrapolate that line to the end of the volumetric image?
0 Kommentare
Akzeptierte Antwort
Matt J
am 27 Dez. 2017
Bearbeitet: Matt J
am 27 Dez. 2017
This will give you the equations Aeq*x=beq for the line,
Q=[X(:),Y(:),Z(:)];
m=mean(Q,1).';
Q=Q-m.';
[~,~,Z]=svd(Q,0);
Aeq=Z(:,2:3).';
beq=Aeq*m;
Because you know the vertices of the volume's bounding box (put them in the rows of a matrix V), you can then use intersectionHull (download here) to find the intersection points of the line with the box,
I=intersectionHull('vert',V,'lcon',[],[],Aeq,beq);
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Image Filtering and Enhancement finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!