Class NppiResizeBatchCXR

  • All Implemented Interfaces:
    AutoCloseable

    @Properties(inherit=nppig.class)
    public class NppiResizeBatchCXR
    extends Pointer
    \defgroup image_resize_batch ResizeBatch ResizeBatch functions use scale factor automatically determined by the width and height ratios for each pair of input / output images in provided batches. In this function as in nppiResize the resize scale factor is automatically determined by the width and height ratios of oSrcRectROI and oDstRectROI. If either of those parameters intersect their respective image sizes then pixels outside the image size width and height will not be processed. Details of the resize operation are described above in the Resize section. ResizeBatch generally takes the same parameter list as Resize except that there is a list of N instances of those parameters (N > 1) and that list is passed in device memory. A convenient data structure is provided that allows for easy initialization of the parameter lists. The only restriction on these functions is that there is one single source ROI rectangle and one single destination ROI rectangle which are applied respectively to each image in the batch. The primary purpose of this function is to provide improved performance for batches of smaller images as long as GPU resources are available. Therefore it is recommended that the function not be used for very large images as there may not be resources available for processing several large images simultaneously. A single set of oSrcRectROI and oDstRectROI values are applied to each source image and destination image in the batch in the nppiResizeBatch version of the function while per image specific oSrcRectROI and oDstRectROI values can be used in the nppiResizeBatch_Advanced version of the function. Source and destination image sizes may vary but oSmallestSrcSize and oSmallestDstSize must be set to the smallest source and destination image sizes in the batch. The parameters in the NppiResizeBatchCXR structure represent the corresponding per-image nppiResize parameters for each image in the nppiResizeBatch functions and the NppiImageDescriptor and NppiResizeBatchROI_Advanced structures represent the corresponding per-image nppiResize parameters for the nppiResizeBatch_Advanced functions. The NppiResizeBatchCXR or NppiImageDescriptor and NppiResizeBatchROI_Advanced arrays must be in device memory. ResizeBatch supports the following interpolation modes:
    
       NPPI_INTER_NN
       NPPI_INTER_LINEAR
       NPPI_INTER_CUBIC
       NPPI_INTER_SUPER
     
    Below is the diagram of batch resize functions for variable ROIs. Figure shows the flexibility that the API can handle. The ROIs for source and destination images can be any rectangular width and height that reflects the needed resize factors, inside or beyond the image boundary. \image html resize.png \section resize_error_codes Error Codes The resize primitives return the following error codes: - ::NPP_RESIZE_NO_OPERATION_ERROR if either destination ROI width or height is less than 1 pixel. - ::NPP_INTERPOLATION_ERROR if eInterpolation has an illegal value. - ::NPP_SIZE_ERROR if source size width or height is less than 2 pixels.

    Common parameters for nppiResizeBatch functions include: