MATLAB: What this function do

matconvnet dcgan

function inputs = getBatchHdd(imdb, batch)
args_data = [{imdb.images.data(batch)} imdb.args];
noise = imdb.images.noise(:,:,:, batch);
label0 = imdb.images.label0(:,:,:, batch);
label1 = imdb.images.label1(:,:,:, batch);
data = vl_imreadjpeg(args_data{:});
data = data{1}/255*2-1; % set in the range of [-1:1]
if (imdb.gpus == true)
noise = gpuArray(noise);
data = gpuArray(data);
label0 = gpuArray(label0);
label1 = gpuArray(label1);
end
inputs = ({'noise', noise, 'data', data, 'label0',label0 'label1',label1} );
return;

Best Answer

It pre-processes the data for the given batch number to scale it to [-1 +1], and creates a cell array with the corresponding noise array, data, and two label entries. If the gpus option is set it creates those arrays on the GPU. Oh, and it looks like it might read the image from disk along the way.