deeplabv3plusLayersの事例の最後にあるサポート関数preprocessTrainingData(data, imageSize)に怪しい箇所があります。画像のリサイズ後、データを3層重ねる処理があります。DeepLab v3+CNNの基のResNet-18CNNがカラー画像しか受け付けないから、グレースケール画像の色は白黒のまま画像形式をRGBに変える処理です。学習用データがカラー画像であればこの処理は不要で、この処理をしてしまうと質問のエラーが発生する事になると想定します。
% Convert grayscale input image into RGB for use with ResNet-18, which
% requires RGB image input.
%data{1} = repmat(data{1},1,1,3); % ここをコメントアウトすればエラーが解消するはず!
deeplabv3plusLayersの事例で検証に使った画像'triangleTest.jpg'がグレースケールである事を確認しました。学習用データもグレースケール画像なのでしょう。カラー表示されているのは「白い背景に黒線で三角形が描かれた元画像」に「セマンティックセグメンテーション結果の画像」を重ねた画像だからです。
size(imread('triangleTest.jpg'))