What is RPP?#
AMD ROCm Performance Primitives (RPP) library is a comprehensive, high-performance computer vision library for AMD processors that have HIP, OpenCL, or CPU backends.
Supported functionalities and variants#
The following tables show the CPU and GPU support for various RPP functionalities and variants. You can view image samples following the tables.
Image augmentations#
Type |
CPU |
GPU |
---|---|---|
brightness |
✅ |
✅ |
gamma correction |
✅ |
✅ |
blend |
✅ |
✅ |
blur |
✅ |
✅ |
contrast |
✅ |
✅ |
pixelate |
✅ |
✅ |
jitter |
✅ |
✅ |
snow |
✅ |
✅ |
noise |
✅ |
✅ |
random shadow |
✅ |
✅ |
fog |
✅ |
✅ |
rain |
✅ |
✅ |
random crop letterbox |
✅ |
✅ |
exposure |
✅ |
✅ |
histogram balance |
✅ |
❌ |
Statistical functions#
Type |
CPU |
GPU |
---|---|---|
thresholding |
✅ |
✅ |
min |
✅ |
✅ |
max |
✅ |
✅ |
min max loc |
✅ |
❌ |
integral |
✅ |
❌ |
histogram_equalization |
✅ |
❌ |
mean stddev |
✅ |
❌ |
Geometry transforms#
Type |
CPU |
GPU |
---|---|---|
flip |
✅ |
✅ |
resize |
✅ |
✅ |
resize crop |
✅ |
✅ |
rotate |
✅ |
✅ |
warp affine |
✅ |
✅ |
fisheye |
✅ |
✅ |
lens correction |
✅ |
✅ |
scale |
✅ |
✅ |
warp perspective |
✅ |
✅ |
Advanced augmentations#
Type |
CPU |
GPU |
---|---|---|
water |
✅ |
✅ |
non-linear blend |
✅ |
✅ |
color cast |
✅ |
✅ |
erase |
✅ |
✅ |
crop and patch |
✅ |
✅ |
lut |
✅ |
✅ |
glitch |
✅ |
✅ |
Fused functions#
Type |
CPU |
GPU |
---|---|---|
color twist |
✅ |
✅ |
crop |
✅ |
✅ |
crop mirror normalize |
✅ |
✅ |
resize crop mirror |
✅ |
✅ |
Morphological transforms#
Type |
CPU |
GPU |
---|---|---|
erode |
✅ |
✅ |
dilate |
✅ |
✅ |
Color model conversions#
Type |
CPU |
GPU |
---|---|---|
hue |
✅ |
✅ |
saturation |
✅ |
✅ |
color convert |
✅ |
✅ |
color temperature |
✅ |
✅ |
vignette |
✅ |
✅ |
channel extract |
✅ |
❌ |
channel combine |
✅ |
❌ |
lookup table |
✅ |
✅ |
tensor table lookup |
✅ |
❌ |
Filter operations#
Type |
CPU |
GPU |
---|---|---|
box filter |
✅ |
✅ |
sobel filter |
✅ |
✅ |
median filter |
✅ |
✅ |
custom convolution |
✅ |
❌ |
non-max suppression |
✅ |
✅ |
gaussian filter |
✅ |
✅ |
non-linear filter |
✅ |
✅ |
Arithmetic operations#
Type |
CPU |
GPU |
---|---|---|
absolute difference |
✅ |
✅ |
accumulate weighted |
✅ |
✅ |
accumulate |
✅ |
✅ |
add |
✅ |
✅ |
subtract |
✅ |
✅ |
magnitude |
✅ |
✅ |
multiply |
✅ |
✅ |
phase |
✅ |
✅ |
tensor add |
✅ |
✅ |
tensor subtract |
✅ |
✅ |
tensor multiply |
✅ |
✅ |
accumulate squared |
✅ |
✅ |
Logical operations#
Type |
CPU |
GPU |
---|---|---|
bitwise |
✅ |
✅ |
bitwise |
✅ |
✅ |
exclusive |
✅ |
✅ |
inclusive |
✅ |
✅ |
Computer vision#
Type |
CPU |
GPU |
---|---|---|
local binary pattern |
✅ |
✅ |
data object copy |
✅ |
✅ |
gaussian image pyramid |
✅ |
✅ |
laplacian image pyramid |
✅ |
✅ |
canny edge detector |
✅ |
✅ |
harris corner detector |
✅ |
✅ |
tensor convert bit depth |
✅ |
❌ |
fast corner detector |
✅ |
❌ |
reconstruction laplacian image pyramid |
✅ |
❌ |
control flow |
✅ |
✅ |
hough lines |
✅ |
❌ |
hog |
✅ |
❌ |
remap |
✅ |
❌ |
tensor matrix multiply |
✅ |
✅ |
tensor transpose |
✅ |
✅ |
Image examples#
3D images#
The following is an example of a 3D medical image before and after fused_multiply_add_scalar
.
Original image |
Modified image |