MIVisionX

MIVisionX toolkit is a set of comprehensive computer vision and machine intelligence libraries, utilities, and applications bundled into a single toolkit. AMD MIVisionX also delivers a highly optimized open-source implementation of the Khronos OpenVX™ and OpenVX™ Extensions.

rocAL Introduction

Today’s deep learning applications require loading and pre-processing data efficiently to achieve high processing throughput. This requires creating efficient processing pipelines fully utilizing the underlying hardware capabilities. Some examples are load and decode data, do a variety of augmentations, color-format conversions, etc. Deep learning frameworks require supporting multiple data formats and augmentations to adapt to a variety of data-sets and models.

AMD ROCm Augmentation Library (rocAL) is designed to efficiently do such processing pipelines from both images and video as well as from a variety of storage formats. These pipelines are programmable by the user using both C++ and Python APIs.

Key Components of rocAL

Prerequisites

Refer to the rocAL to follow and install pre-requisites.

Build instructions

Follow the build instructions in rocAL

rocAL Python

rocAL Python API

amd.rocal.fn

Image Augmentation Reader and Decoder Geometric Ops
ColorTwist File Reader CropMirrorNormalize
Brightness ImageDecoder Resize
Gamma Correction ImageDecoderRandomCrop ResizeCrop
Snow COCOReader WarpAffine
Rain TFRecordReader FishEye
Blur   LensCorrection
Jitter   Rotate
Hue    
Saturation    
Fog    
Contrast    
Vignette    
SNPNoise    
Pixelate    
Blend    

amd.rocal.pipeline

amd.rocal.types

amd.rocal.types are enums exported from C++ API to python. Some examples include CPU, GPU, FLOAT, FLOAT16, RGB, GRAY, etc..

amd.rocal.plugin.pytorch

installing rocAL python plugin (Python 3.6)

Steps to run MLPerf Resnet50 classification training with rocAL on a system with MI50+ and ROCm

MIVisionX Pytorch Docker