im_measure(3) measure colour patches off images


#include <vips/vips.h>

DOUBLEMASK *im_measure(in, box, h, v, sel, nsel, name)
IMAGE *in;
int h, v;
int *sel;
int nsel;
char *name;


Analyse a grid of colour patches, producing a DOUBLEMASK of averages. Pass an IMAGE, an IMAGE_BOX, the number of horizontal and vertical patches, an array giving the numbers of the patches to measure (patches are numbered left-to-right, top-to-bottom, starting with 1) and the name we should give the output mask. Return a DOUBLEMASK in which rows are patches and columns are bands. Only the central 50% of each patch is averaged.

Example: 6 band image of 4x2 block of colour patches.
 | 1 | 2 | 3 | 4 |
 | 5 | 6 | 7 | 8 |

Then call im_measure( im, box, 4, 2, { 2, 4 }, 2, "fred" ) makes a mask "fred" which has 6 columns, two rows. The first row contains the averages for patch 2, the second for patch 4.

Output warnings: a warning is issued if the standard deviation of any patch is greater than 20% of the mean of that patch.


NULL on error.