A flexible image resampling library

Overview

Image Resampling Library

This is a simple yet flexible image resampling library that supports the following image samplers:

  • Nearest
  • Average
  • Bilinear
  • Gaussian
  • Bicubic
  • Catmull-Rom
  • Mitchell-Netravali
  • Cardinal
  • B-Spline
  • Spline
  • Lanczos
  • Lanczos-2
  • Lanczos-3
  • Lanczos-4
  • Lanczos-5
  • Coverage

This library supports each separable sampler in both a two-pass 1D and 2D flavor. All resampling operations also support
size constraints (e.g. symmetric or pow-2 dimensions) and pad-filling. For more information about these filters, visit this blog post.

Supported Formats

Supported image formats may select between the following parameters:

  • Fixed or Float
  • Up to 4 channels
  • Up to 32 bits per channel
  • Small or big endian
  • Signed or unsigned

The library uses a descriptive image format system, making it trivial to add new formats simply by inserting a valid new descriptor into the format list. The library also provides support for converting between formats. The following image formats are supported out of the box:

  • R8
  • R16
  • D16
  • R24
  • D32
  • R32
  • R3G3B2
  • R5G6B5
  • R5G5B5A1
  • R4G4B4A4
  • R8G8B8
  • R16G16B16
  • R32G32B32
  • R8G8B8A8
  • R10G10B10A2
  • R16G16B16A16
  • R32G32B32A32
  • R8S
  • R16S
  • R32S
  • R8G8B8S
  • R16G16B16S
  • R32G32B32S
  • R16F
  • R32F
  • R32G32F
  • R16G16B16F
  • R32G32B32F
  • R16G16B16A16F
  • R32G32B32A32F

Usage

(Taken from Tutorial.cpp in the \Source folder):

CVImage source_image;
CVImage resampled_image;

if ( VN_FAILED( vnCreateImage( VN_IMAGE_FORMAT_R8G8B8, 
                               640, 
							   480, 
							   &source_image ) ) )
{
    printf( "Error! Unable to create the source image." );
    return -1;
}

// TODO(you): Copy 640x480 RGB image data into source_image->QueryData(). 

if ( VN_FAILED( vnResizeImage( source_image, 
                               VN_IMAGE_KERNEL_BILINEAR, 
							   320, 
							   240, 
							   0, 
							   &resampled_image ) ) )
{
    printf( "Error! Unable to resample the source image." );
    return -1;
}

// TODO(you): The image is resampled! Go party with 'resampled_image'.

More Information

For more information about this library or the larger Imagine Framework, visit bertolami.com.

Flexible, portable, high-performance bit fields C++ library. unsigned a:13 becomes F<13> a;

C-plus-plus-library-bit-fields Flexible, portible, high-performance bit fields C++ library. The bit fields are specified with a dummy structure where

Walt Karas 25 Feb 27, 2022
foxBMS is a free, open and flexible development environment to design battery management systems.

foxBMS is a free, open and flexible development environment to design battery management systems. It is the first modular open source BMS development platform.

The foxBMS Team 74 Aug 8, 2022
FlexOS: Towards Flexible OS Isolation (ASPLOS'22) Artifact Evaluation Repository

FlexOS ASPLOS'22 Artifact Evaluation This repository contains the artifacts, including experiments and graphs, for the paper: FlexOS: Towards Flexible

null 10 Jul 21, 2022
☕ GDBFrontend is an easy, flexible and extensionable gui debugger.

GDBFrontend is an easy, flexible and extensionable gui debugger. Installing Requirements GDB => 8.2 (with python3) python3 => 3.2 tmux PIP Package (Py

Oğuzhan Eroğlu 2.4k Aug 7, 2022
the implementations of 'A Flexible New Technique for Camera Calibration' and Bouguet's method

StereoCameraCalibration MonocularCameraCalibration/StereoCameraCalibration/StereoCameraRectification 1、Class "MonocularCameraCalibration" provides the

gtc1072 6 Apr 14, 2022
A terse, flexible language and runtime for creating and executing visual novels.

Fabulist A terse, flexible language and runtime for creating and executing visual novels. Contributing We're open to contributions from anyone and eve

NovelRT 5 Jul 28, 2022
VDBFusion: Flexible and Efficient TSDF Integration

VDBFusion: Flexible and Efficient TSDF Integration This is a small utility library that implements the VDBFusion algorithm, similar to TSDF-based reco

Photogrammetry & Robotics Bonn 170 Aug 9, 2022
⛵ The missing small and fast image decoding library for humans (not for machines).

Squirrel Abstract Image Library The missing fast and easy-to-use image decoding library for humans (not for machines). Target Audience • Features • Im

Dmitry Baryshev 190 Aug 10, 2022
An image processing application & library built in C++20 and the Qt Framework.

Image Processing This is an image processing application & library built using C++ and Qt. It contains set of the most common image processing algorit

Rami Zouari 9 Jun 8, 2022
Builds and runs an exported image classification impulse on ESP32 Cam

ESP32 Cam and Edge Impulse How to run custom inference on a ESP32 cam using Edge Impulse. Material This code has been tested the AI Thinker ESP32 Cam

Edge Impulse 51 Jul 16, 2022
Isaac ROS image_pipeline package for hardware-accelerated image processing in ROS2.

isaac_ros_image_pipeline Overview This metapackage offers similar functionality as the standard, CPU-based image_pipeline metapackage, but does so by

NVIDIA AI IOT 31 Jul 18, 2022
Performance Evaluation of a Parallel Image Enhancement Technique for Dark Images on Multithreaded CPU and GPU Architectures

Performance Evaluation of a Parallel Image Enhancement Technique for Dark Images on Multithreaded CPU and GPU Architectures Image processing is a rese

Batuhan Hangün 5 Nov 4, 2021
sour is a complete multiplayer Sauerbraten experience in the web delivered as a single Docker image.

sour sour is a complete multiplayer Sauerbraten experience in the web delivered as a single Docker image. Overview I have always loved playing Sauerbr

Caleb Foust 45 Jul 28, 2022
Photon OS DPDK and Packet Generator, RT Test, TF2 docker image.

photongen Photon OS DPDK and packet generator , cyclictest , TF2 with CUDA docker image. DPKD libs The build proccess builds and installs all shared l

spyroot 4 Feb 7, 2022
Creating sepia, reflection, grayscale, and blur filters from scratch and returns a modified image

image-filter Created sepia, reflection, grayscale, and blur filters from scratch and returning a modified image Directories: images: contains sample i

Martin Guevara 1 Oct 14, 2021
ROS1 and ROS2 messages for event based image sensors

ROS package with array messages for event based cameras This package has definitions for messages created by event based sensors. The events are kept

Bernd Pfrommer 1 Feb 22, 2022
AviSynth plugin that renders image-based subtitles.

Description Renders image-based subtitles such as VOBSUB and PGS. It returns a list of two clips. The first one is an RGB24 clip containing the render

null 4 Feb 19, 2022
This code converts a point cloud obtained by a Velodyne VLP16 3D-Lidar sensor into a depth image mono16.

pc2image This code converts a point cloud obtained by a Velodyne VLP16 3D-Lidar sensor into a depth image mono16. Requisites ROS Kinetic or Melodic Ve

Edison Velasco Sánchez 6 May 18, 2022
Tools to read Dragon32 VDK disk image files

Quick and dirty UNIX port of ddosutils This is originally an MSDOS tool to read Dragon 32 floppy disks. This version is crudely converted to operate o

Adrien Destugues 1 Dec 12, 2021