Skip to content

PyTrx v1.1

Compare
Choose a tag to compare
@PennyHow PennyHow released this 30 Jan 17:07

PyTrx v1.1 is released alongside the publication of the PyTrx toolset in the following Frontiers in Earth Science paper:
How et al. (2020) PyTrx: a Python-based monoscopic terrestrial photogrammetry toolset for glaciology. Frontiers in Earth Science, doi:10.3389/feart.2020.00021

Major changes since v1.0:

  1. Compatibilitiy with Python 3

  2. The toolset has been re-structured so that its core functionality exists as independent functions which do not depend on inputs from PyTrx's class objects. Additionally, the Velocity, Area and Line class objects have been divided into individual modules.

  3. Camera calibration functionality has been added, whereby a camera model can be
    calibrated using an inputted set of calibration chessboard images.

  4. A ‘traditional’ template matching routine has been added for deriving glacier surface velocities, with new results using this method incorporated into the PyTrx examples (specifically driver_velocity2.py and driver_velocity3.py).

  5. Optimisation routines and error estimation in the georectification process have been added (available in the CamEnv.py module) to better constrain uncertainty in the output measurements. Camera parameters are optimised by computing the pixel differences between the image GCPs and projected 3D GCPs, and refining these pixel differences over multiple iterations until an optimum solution is reached. PyTrx offers a choice of three optimisation methods – the Trust Region Reflective algorithm which is ideal for optimising many parameters; the Dogleg algorithm which is ideal for optimising a limited number of parameters (i.e. 1-3 parameters); and the Levenberg-Margquardt algorithm which is a popular and familiar method for camera optimisation.

  6. A conda environment file (.yml) has been included for easy set-up of PyTrx, and to increase usability for all users.