Documentation / IM - An Imaging Tool / IM: Image Resize
IM: Image Resize
From IM - An Imaging Tool
Detailed Description
Operations to change the image size.
See im_process_loc.h
Functions
int imProcessReduce (const imImage *src_image, imImage *dst_image, int order)
int imProcessResize (const imImage *src_image, imImage *dst_image, int order)
void imProcessReduceBy4 (const imImage *src_image, imImage *dst_image)
void imProcessCrop (const imImage *src_image, imImage *dst_image, int xmin, int ymin)
void imProcessInsert (const imImage *src_image, const imImage *region_image, imImage *dst_image, int xmin, int ymin)
void imProcessAddMargins (const imImage *src_image, imImage *dst_image, int xmin, int ymin)
Function Documentation
int imProcessReduce
(
const imImage *
src_image ,
imImage *
dst_image ,
int
order
)
Only reduze the image size using the given decimation order.
Supported decimation orders:
0 - zero order (mean)
1 - first order (bilinear decimation) Images must be of the same type.
Returns zero if the counter aborted.
int imProcessResize
(
const imImage *
src_image ,
imImage *
dst_image ,
int
order
)
Change the image size using the given interpolation order.
Supported interpolation orders:
0 - zero order (near neighborhood)
1 - first order (bilinear interpolation)
3 - third order (bicubic interpolation) Images must be of the same type.
Returns zero if the counter aborted.
void imProcessReduceBy4
(
const imImage *
src_image ,
imImage *
dst_image
)
Reduze the image area by 4 (w/2,h/2).
Images must be of the same type. Destiny image size must be source image width/2, height/2.
void imProcessCrop
(
const imImage *
src_image ,
imImage *
dst_image ,
int
xmin ,
int
ymin
)
Extract a rectangular region from an image.
Images must be of the same type. Destiny image size must be smaller than source image width-xmin, height-ymin.
ymin and xmin must be >0 and <size.
void imProcessInsert
(
const imImage *
src_image ,
const imImage *
region_image ,
imImage *
dst_image ,
int
xmin ,
int
ymin
)
Insert a rectangular region in an image.
Images must be of the same type. Region image size can be larger than source image.
ymin and xmin must be >0 and <size.
Source and destiny must be of the same size. Can be done in place.
void imProcessAddMargins
(
const imImage *
src_image ,
imImage *
dst_image ,
int
xmin ,
int
ymin
)
Increase the image size by adding pixels with zero value.
Images must be of the same type. Destiny image size must be greatter than source image width+xmin, height+ymin.