### Method

# Vips Image similarity

#### Declaration [src]

    int
    vips_similarity (
      VipsImage* in,
      VipsImage** out,
      ...
    )

#### Description [src]

This operator calls `vips_affine()` for you, calculating the matrix for the affine transform from `scale` and `angle`. Other parameters are passed on to `vips_affine()` unaltered.

Optional arguments

- `scale`: `gdouble`, scale by this factor
- `angle`: `gdouble`, rotate by this many degrees clockwise
- `interpolate`: `VipsInterpolate`, interpolate pixels with this
- `background`: `VipsArrayDouble` colour for new pixels
- `idx`: `gdouble`, input horizontal offset
- `idy`: `gdouble`, input vertical offset
- `odx`: `gdouble`, output horizontal offset
- `ody`: `gdouble`, output vertical offset

See also

`vips_affine()`, `VipsInterpolate`.

This method is not directly available to language bindings.

#### Parameters

`out`

  Type: `VipsImage`

  Output image.

  The argument will be set by the function.
  The caller of the method takes ownership of the returned data, and is responsible for freeing it.

`...`

  Type: ``

  `NULL`-terminated list of optional named arguments.

#### Return value

Type: `int`

0 on success, -1 on error.