Re-sizes input image to fit into the output image size.
Function
CuviStatus resize(const CuviImage& src,
CuviImage& dst,
CuviInterpolationType inter = CUVI_INTER_LINEAR,
const CuviStream& stream = CuviStream());
|
Parameters
Name
|
Type
|
Description
|
src
|
const CuviImage&
|
Input Image
|
dst
|
CuviImage&
|
Output Image
|
inter
|
CuviInterpolationType
|
Type of interpolation to use for re-sizing. Supports:
CUVI_INTER_NN
|
CUVI_INTER_LINEAR
|
CUVI_INTER_CUBIC
|
|
stream
|
const CuviStream&
|
GPU stream ID for execution
|
Image Type Support
Input
|
Output
|
8uC1
|
8uC1
|
8uC3
|
8uC3
|
16uC1
|
16uC1
|
16uC3
|
16uC3
|
32fC1
|
32fC1
|
32fC3
|
32fC3
|
Samples
Input Image (Width = W, Height = H)
|
Resized Image (width =0.78625*W, height= 0.78625*H)
|
Input Image (Width = W, Height = H)
|
Resized Image (width = 1.2*W, height= 1.75*H)
|
Example
CuviImage gimg = cuvi::io::loadImage(path);
const Cuvi32f xScale = 0.5f, yScale = 0.7f;
const Cuvi32s newWidth = static_cast<Cuvi32s>(gimg.width() * xScale);
const Cuvi32s newHeight = static_cast<Cuvi32s>(gimg.height() * yScale);
CuviImage gout(newWidth,newHeight,gimg.type());
//Re-sizing input image to fit output container using bicubic interpolation
cuvi::geometryTransforms::resize(gimg,gout, CUVI_INTER_CUBIC);
|