Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
PUZZLE_SET(3)	       FreeBSD Library Functions Manual		 PUZZLE_SET(3)

NAME
     puzzle_set_max_width, puzzle_set_max_height, puzzle_set_lambdas,
     puzzle_set_p_ratio, puzzle_set_noise_cutoff,
     puzzle_set_contrast_barrier_for_cropping, puzzle_set_max_cropping_ratio,
     puzzle_set_autocrop -- set	tunables for libpuzzle functions.

SYNOPSIS
     #include <puzzle.h>

     int
     puzzle_set_max_width(PuzzleContext	*context, unsigned int width);

     int
     puzzle_set_max_height(PuzzleContext *context, unsigned int	height);

     int
     puzzle_set_lambdas(PuzzleContext *context,	unsigned int lambdas);

     int
     puzzle_set_p_ratio(PuzzleContext *context,	double p_ratio);

     int
     puzzle_set_noise_cutoff(PuzzleContext *context, double noise_cutoff);

     int
     puzzle_set_contrast_barrier_for_cropping(PuzzleContext *context,
	 double	barrier);

     int
     puzzle_set_max_cropping_ratio(PuzzleContext *context, double ratio);

     int
     puzzle_set_autocrop(PuzzleContext *context, int enable);

DESCRIPTION
     While default values have been chosen to be ok for	most people, the
     puzzle_set_*() functions are knobs	to fit the algorithm to	your set of
     data and to your applications.

LAMBDAS
     By	default, pictures are divided in 9 x 9 blocks.

     9 is the lambdas value, and it can	be changed with	puzzle_set_lambdas()

     For large databases, for complex images, for images with a	lot of text or
     for sets of near-similar images, it might be better to raise that value
     to	11 or even 13

     However, raising that value obviously means that vectors will require
     more storage space.

     The lambdas value should remain the same in order to get comparable vec-
     tors. So if you pick 11 (for instance), you should	always use that	value
     for all pictures you will compute a digest	for.  puzzle_set_p_ratio()

     The average intensity of each block is based upon a small centered	zone.

     The "p ratio" determines the size of that zone. The default is 2.0, and
     that ratio	mimics the behavior that is described in the reference algo-
     rithm.

     For very specific cases (complex images) or if you	get too	many false
     positives,	as an alternative to increasing	lambdas, you can try to	lower
     that value, for instance to 1.5.

     The lowest	acceptable value is 1.0.

MAXIMUM	SIZES
     In	order to avoid CPU starvation, pictures	won't be processed if their
     width or height is	larger than 3000 pixels.

     These limits are rather large, but	if you ever need to change them, the
     puzzle_set_max_width() and	puzzle_set_max_height()	are available.

NOISE CUTOFF
     The noise cutoff defaults to 2. If	you raise that value, more zones with
     little difference of intensity will be considered as similar.

     Unless you	have very specialized sets of pictures,	you probably don't
     want to change this.

AUTOCROP
     By	default, featureless borders of	the original image are ignored.	The
     size of each border depends on the	sum of absolute	values of differences
     between adjacent pixels, relative to the total sum.

     That feature can be disabled with puzzle_set_autocrop(0) Any other	value
     will enable it.

     puzzle_set_contrast_barrier_for_cropping()	changes	the tolerance. The de-
     fault value is 5. Less shaves less, more shaves more.

     puzzle_set_max_cropping_ratio() This is a safe-guard against unwanted ex-
     cessive auto-cropping.

     The default (0.25)	means that no more than	25% of the total width (or
     height) will ever be shaved.

RETURN VALUE
     Functions return 0	on success, and	-1 if something	went wrong.

SEE ALSO
     libpuzzle(3) puzzle-diff(8)

			      September	24, 2007

NAME | SYNOPSIS | DESCRIPTION | LAMBDAS | MAXIMUM SIZES | NOISE CUTOFF | AUTOCROP | RETURN VALUE | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=puzzle_set&sektion=3&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help