Agisoft Metashape

Agisoft Metashape => Python and Java API => Topic started by: Pieter on July 01, 2020, 10:02:51 AM

Title: Force transformation matrix with local coordinate system
Post by: Pieter on July 01, 2020, 10:02:51 AM
Is there a way to force metashape to use my calculated transformation matrix with a local coordinate system? I’ve tried defining it at the start of my script, but it is overwritten once I align photos.

What I want to do is translate the coordinate system origin to a point within my dense point cloud (capture is a tunnel) and rotate it so that the centre line of the tunnel is parallel to the y-axis (north-south; i.e. yz-plane; positive y is north, positive x is east and positive z is elevation increase). Then remove points that are on the opposite side of the tunnel direction relative to the new origin. The points are in ground support and account for 2/3 of the points and cannot be used for downstream processes. I was thinking of using a modified version of to resize the region. Which will be far simpler with a translated and single axis rotation vs. the 3 axis rotation that metashape does.
I’ve gone through the forum to see if someone had a similar request as mine, but the closest to my expected results was this one But, given the 3 axis rotation it is difficult to determine which points to remove.
I can do this outside of metashape, but some of my colleagues prefer meshes. It seems nonsensical to export the points out of metashape, remove some and then import it again to process a mesh. 

I’ve run out of ideas of what to do, so any help will be greatly appreciated.