以前は、画像のすべてのピクセルで RGB の値を表示するコード「pixval on」がありました。
現在はすでに廃止されています。
LAB に変換された画像に対して同じことを行うにはどうすればよいでしょうか。
1 に答える
1
まず、画像で図を作成します
function so1
global im;
im = imread('peppers.png');
figure;imshow(im);
end
次に、新しいデータカーソルを作成し、「テキスト更新関数の選択」を選択します
次のコールバック ファイルを選択します。
function output_txt = NewCallback(obj,event_obj)
% Display the position of the data cursor
% obj Currently not used (empty)
% event_obj Handle to event object
% output_txt Data cursor text string (string or cell array of strings).
global im;
pos = get(event_obj,'Position');
val = squeeze(im(pos(2),pos(1),:))';
srgb2lab = makecform('srgb2lab');
labVal = applycform(val,srgb2lab);
output_txt = sprintf('LAB = [%d,%d,%d]',labVal(1),labVal(2),labVal(3));
ここでの唯一の欠点は、global の醜い使い方です。これはおそらく削除できますが、それは問題ではありません。
于 2011-12-20T08:25:39.140 に答える