私は少し赤い点を描く必要がある800x800のダブルマトリックスを持っています。私はmat2gray(配列、[0,1])で画像に変換しようとしましたが、matlabは画面に描画する前に67%スケールします。つまり、plot(x、y、 'r')を使って小さな点を描くことはできません。数字が画面に対して大きすぎますか?
画像を重ねて見て、見えないようにしてみましたが、どうやってこれを行うのか分かりません。簡単な方法が必要です。何か案は?ここで
は私の現在のコードです:%map is an 800x800 matrix of doubles
img = mat2gray(map,[0,1]);
hold on;
plot(point.x, point.y,'r.','MarkerSize',10);
hold off
img = imresize(img,0.66); %so that matlab doesn't yell at me
set(figHandle, 'visible','on');
imshow(img);
これは機能しました!しかし、警告メッセージが表示されないようにしたいと思います。 imshowを使用する前にimresizeを使用すると、ポイントを歪ませることなく画像をリサイズできますか? – DEED
Matlabは画像のサイズを変更しません。ズームアウトのみ表示されます。あなたの画像マトリックスは同じままです。この警告は無視しても問題ありません。周囲のコードのパフォーマンスには影響しません。警告が表示されないようにすることができますが、後で実際の問題を隠す可能性があるため、警告を強く推奨します。一方、 'imresize'はデータを変更するので、ポイントの座標を一致させるように変更する必要があります –