---
name: "pto_var"
section: "1"
platform: "linux"
package: "hugin"
version: "2025.0.1-5"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/pto_var"
---

# pto\_var(1)

change image variables inside Hugin .pto project files

## NAME

pto\_var - change image variables inside Hugin .pto project files

## SYNOPSIS

**pto\_var** \[options\] --opt\|--link\|--unlink\|--set "image variables list input.pto

## DESCRIPTION

**pto\_var** is a command line tool, suitable for inclusion in shell scripts, and allows the change of image variables inside a Hugin .pto project file. Optimisation variables can be set, altered, linked and unlinked,   The following image variables are allowed:

position: y, p, r, TrX, TrY, TrZ lens parameters: v, a, b, c, d, e, g, t photometric parameters: EeV, Er, Eb, Vb, Vc, Vd, Vx, Vy, Ra, Rb, Rc, Rd, Re (Vignetting and response parameter will treated as group.)

The image numbers start with zero. If the number is missing this applies to the variables of all images (In this case a special treatment applies to the position of the anchor image). An exclamation mark before the variable will remove the variable from the list of variables to optimised.

## OPTIONS

- **-o\|--output** = file.pto

  Output Hugin PTO file. Default: \<filename\>\_var.pto

- **-h\|--help**

  Shows help

- **--opt** varlist

  ```
   Change optimizer variables
  ```

- **--modify-opt**

  ```
     Modify the existing optimizer variables
     (without pto_var will start with an
      empty variables set)
     Examples:
     --opt=y,p,r           Optimize yaw, pitch and roll of all images
                           (special treatment for anchor image applies)
     --opt=v0,b2           Optimize hfov of image 0 and barrel distortion
                           of image 2
     --opt=v,!v0           Optimize field of view for all images except
                           for the first image
     --modify-opt --opt=!v will not optimize field of view.
     --opt=!a,!b,!c        Don't optimise distortion (works only with
                           switch --modify-opt together)
  ```

- **--link varlist**

  ```
     Example:
     --link=v3          Link hfov of image 3
     --link=a1,b1,c1    Link distortions parameter for image 1
  ```

- **--unlink varlist**

  ```
     Examples:
     --unlink=v5        Unlink hfov for image 5
     --unlink=a2,b2,c2  Unlink distortions parameters for image 2
  ```

- **--set varlist**

  ```
     Examples:
     --set=y0=0,r0=0,p0=0  Resets position of image 0
     --set=Vx4=-10,Vy4=10  Sets vignetting offset for image 4
     --set=v=20            Sets the field of view to 20 for all images
     --set=y=val+20        Increase yaw by 20 deg for all images
     --set=v=val*1.1       Increase fov by 10 % for all images
     --set=y=i*20        Set yaw to 0, 20, 40, ...
  ```

- **--set-from-file filename**

  ```
                           Sets variables to new values
                           It reads the varlist from a file
  ```

## AUTHORS

Thomas Modes
