MATLAB を使用して、画像の逆グリーン チャネル応答を抽出したいと考えています。私はそれを実装しましたが、それが正しいかどうかはわかりません。私は助けてくれてとても感謝しています。
y = x(:, :, 2); %green channel
z=255-y; % inverted green channel
MATLAB を使用して、画像の逆グリーン チャネル応答を抽出したいと考えています。私はそれを実装しましたが、それが正しいかどうかはわかりません。私は助けてくれてとても感謝しています。
y = x(:, :, 2); %green channel
z=255-y; % inverted green channel
やや汎用性の高いアプローチは次のようになります
%// Green channel
y = x(:, :, 2);
%// Invert the green
if isinteger(y)
z = intmax(class(y))-y;
elseif isfloat(y)
z = 1 - y;
elseif islogical(y)
z = ~y;
else
error('Strange image you''ve got there...');
end
注: これは画像が RGB 色空間にあるfloat
ことを前提としています。さらに、それが class の場合、値が 1 に正規化されていることを前提としています。これが異なる可能性がある場合は、さらにいくつかのチェックが必要になる場合があります。
いずれにせよ、これらの制限を文書化してください!