あなたが最初imshow
で画像をプロットし、それが作成した画像オブジェクトへのハンドルを返す必要があります。新しいデータで画像を更新するには、次に
A = (the initial matrix of image data);
hImage = imshow(A);
、次の代わりに、再びimshow
を呼び出すことを試してみてください:
B = (modification of the original image matrix A);
set(hImage, 'CData', B);
すでに作成したイメージオブジェクト変更されますset
コマンドを使用する(画像オブジェクトのプロパティのリストをhere見つけることができます)。あなたの追加のアドレッシング
:
hAxes = (the handle to an axes object);
imshow(A, 'Parent', hAxes);
EDIT:
また、あなたはまた、画像をプロットするオブジェクトを軸それを伝えるためにimshow
への呼び出しにパラメータを追加することができます関数間でGUIデータを共有する問題がある場合は、hereのMATLABドキュメントを参照してください。そこに記載されているように、GUIに含まれるさまざまな関数間でデータを渡す方法はいくつかあります。入れ子関数(SO hereに記載)、オブジェクトのUserDataプロパティ(SO hereに記載)、または関数setappdata
/getappdata
またはguidata
。 guidata
オプションは、GUIDEで作成されたGUIで使用するのに最適です。
:
がすることで、この操作を更新し、保存することを忘れないでください。 MATLAB(2009a)の最新バージョンです。この特定の問題に関するv7.0.1以降、どれだけ変化しているのか分かりません。私は、v7.1とv7.7の間でIMSHOWを実行したときに、IMSHOWの動作が少し違っていたことを知っています。コードの一部(全部ではない)を投稿することができれば、おそらくもっと役立つかもしれません。 – gnovice