jpegpixi - interpolate pixels in JFIF (JPEG) image files
jpegpixi [OPTION]... SOURCE DEST [[D:]X,Y[,S]|[,SX,SY]]...
Jpegpixi interpolates pixels or pixel blocks in JFIF images files
(commonly referred to as "JPEG images"). This is useful to correct
images from a digital camera with CCD defects. Only DCT blocks which
contain pixels to be interpolated are decoded and re-encoded, and the
re-encoding is performed with exactly the same parameters with which
the image has originally been encoded. Therefore, the image quality is
preserved as much as possible.
SOURCE and DEST are the filenames of the source file and the
destination file, respectively. In both cases, - can be used, which
refers to standard input or standard output.
The destination filename is followed by any number of pixel or pixel
block specifications. It starts with an optional direction specifier
(D), which can be 2 for 2-dimensional interpolation (the default), V or
v for 1-dimensional vertical interpolation (e.g. to remove horizontal
stripes), or H or h for 1-dimensional horizontal interpolation. X,Y
are the coordinates of the pixel or the upper-left corner of the pixel
block. S is the size of the pixel block (1 by default). Alternatively,
separate sizes can be specified for the width (SX) and the height (SY).
All numbers (X, Y, S, SX, SY) can be expressed as absolute
coordinates/sizes or percentages of the image size. If a number is
followed by a percent character (%), it is interpreted as a percentage,
otherwise as an absolute number.
-f FILE, --blocks-file=FILE
Read pixel block specifications from file FILE in addition to
the command line. The file should contain one specification
([D:]X,Y[,S]|[,SX,SY]) per line. Empty lines are ignored. The
file may also contain comments, which start with an octothorpe
(#) and extend to the end of the line.
-m METHOD, --method=METHOD
Use interpolation method METHOD (default: linear). See section
INTERPOLATION METHODS below.
Display the coordinates and size of each pixel block that is
Display information about the image, such as the size of the
image, the colorspace in which it is encoded, and sampling rates
for the different components.
Do not copy comment and extra markers from the source to the
destination file. This strips preview images, EXIF data, and
--help Display a short help text and exit immediately.
Display version information and exit immediately.
0, av, average
The pixels adjacent to the pixel block are averaged. The
resulting color is assigned to all pixels in the block. For
1-dimensional interpolation, this is done separately for one
pixel wide, horizontal or vertical stripes.
1, li, linear
The pixels which have a distance of 1 from the pixel block are
used to calculate a bilinear surface (2-dim), or a group of
linear curves (1-dim), which is then used to assign colors to
the pixels in the block.
2, qu, quadratic
The pixels which have a distance of 2 or less from the pixel
block are used to calculate a biquadratic surface (2-dim), or a
group of quadratic curves (1-dim), which is then used to assign
colors to the pixels in the block.
3, cu, cubic
The pixels which have a distance of 3 or less from the pixel
block are used to calculate a bicubic surface (2-dim), or a
group of cubic curves (1-dim), which is then used to assign
colors to the pixels in the block.
Please report bugs to <firstname.lastname@example.org>.
Copyright © 2002, 2003, 2004, 2005 Martin Dickopp
Jpegpixi is free software; it may be copied and/or modified under the
terms of the GNU General Public License version 2 or (at your option)
any later version. There is NO warranty; not even for MERCHANTABILITY
or FITNESS FOR A PARTICULAR PURPOSE.
The jpegpixi homepage: http://www.zero-based.org/software/jpegpixi/