% Using pre-trained ResNet-18 net = resnet18; lgraph = layerGraph(net); lgraph = removeLayers(lgraph, 'fc1000', 'prob', 'ClassificationLayer_predictions'); newLayers = [ fullyConnectedLayer(2, 'Name', 'fc_new') softmaxLayer('Name', 'softmax') classificationLayer('Name', 'classout')]; lgraph = addLayers(lgraph, newLayers); lgraph = connectLayers(lgraph, 'pool5', 'fc_new'); % Train on retinal dataset (1000 images/class) options = trainingOptions('sgdm', 'InitialLearnRate', 1e-4, 'MaxEpochs', 20); trainedNet = trainNetwork(augmentedTrainSet, lgraph, options);
% Annotate I = insertObjectAnnotation(I, 'Rectangle', bboxes, labels); imshow(I); Goal: Assign a class to every pixel (medical imaging, autonomous driving). % Using pre-trained ResNet-18 net = resnet18; lgraph
% Load ground truth pixel labels imds = imageDatastore('images'); pxds = pixelLabelDatastore('labels', classNames, labelIDs); % Create U-Net lgraph = unetLayers([256 256 3], numClasses); lgraph = layerGraph(net)
% Detect objects [bboxes, scores, labels] = detect(detector, I); lgraph = removeLayers(lgraph
% Achieved 94% sensitivity, 91% specificity MATLAB abstracts away low-level complexity while giving you full control over neural network architectures for image processing. Whether you are removing noise with autoencoders, detecting tumors with U-Net, or classifying satellite imagery with CNNs, the combination of AI and MATLAB's image processing ecosystem is a powerful toolkit.