Hello,
I am currently working on a Convolutional Neural Network (CNN) for image classification on an FPGA. I have already imported a pre-trained neural network into a SeriesNetwork object and successfully performed inference on the FPGA using the Deep Learning Toolbox. However, I would like to perform inference using the int8 data type. According to MATLAB documentation, I need to quantize the network and perform inference using an int8 deep learning processor. To achieve this, I need to convert the neural network into a dlquantizer object, calibrate it, and validate it before obtaining the quantized neural network.
My input data consists of 3D arrays (image format), and the labels are in the form of 2D arrays of binary data (where each 3D input corresponds to a 2D label). My question is how to handle these data using either the ImageDatastore or arrayDatastore object in order to calibrate the neural network or if it is possible to use data arrays as calibration data.
Initially, 3D array were .png files and the 3D arrays are the imported and preprocessed (padding + normalization) images, so I tried to use imageDatastore format but labes, in contrast, are .txt files. Is there any possiplibity to combine imageDatastore nd set the labels to the imported 2D arrays (from .txt files), and then use TransformDatastore to apply the preprocessing functions or any other alternative?
As a summary I need to calibrate a classification image where the label is a binary array. The primitive data are .png and .txt files and I have them procesed into arrays or cell of arrays.