Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
image()在MATLAB中修改实际图像内容_Image_Matlab_Plot_Matlab Figure - Fatal编程技术网

image()在MATLAB中修改实际图像内容

image()在MATLAB中修改实际图像内容,image,matlab,plot,matlab-figure,Image,Matlab,Plot,Matlab Figure,我用下面的代码在MATLAB的图形窗口中显示一幅图像 im = imread('Image02.tif'); processAndDisplayImage(im); hImage = image(im); set(hImage,'ButtonDownFcn',@clickInImage); 但问题是,上面的第三行由于我不知道的原因改变了图像。有没有办法不经修改就获得图像句柄 更新:解决了问题。请参阅下面我的答案。图形命令无法更改图像。我只能猜测它以一种你不想要的方式显示图像。检查图像的范围-

我用下面的代码在MATLAB的图形窗口中显示一幅图像

im = imread('Image02.tif');
processAndDisplayImage(im);
hImage = image(im);
set(hImage,'ButtonDownFcn',@clickInImage);
但问题是,上面的第三行由于我不知道的原因改变了图像。有没有办法不经修改就获得图像句柄


更新:解决了问题。请参阅下面我的答案。

图形命令无法更改图像。我只能猜测它以一种你不想要的方式显示图像。检查图像的范围-

  max(im(:));
以及类型:

  class(im);

并尝试找出错误所在

图像图形命令无法更改图像。我只能猜测它以一种你不想要的方式显示图像。检查图像的范围-

  max(im(:));
以及类型:

  class(im);
试着找出问题所在,而不是

 hImage = image(im);
我用下列方法来解决我的问题

 [hImage hfig ha] = imhandles(gcf);
但我仍然不明白image命令对图中显示的实际图像有何影响。

而不是

 hImage = image(im);
我用下列方法来解决我的问题

 [hImage hfig ha] = imhandles(gcf);

但我仍然不明白image命令对图中显示的实际图像有何影响。

也许您可以修改
processAndDisplayImage
,使其返回显示图像的句柄作为输出变量?

也许您可以修改
processAndDisplayImage
,使其返回显示图像的句柄图像作为输出变量?

好吧,如果问题那么简单,我就不会问了。im通常与矩阵无关。image命令删除了我在图像上绘制的网格线,并以某种方式对其进行了均衡。所以image命令实际上做了一些事情。好吧,如果问题这么简单,我就不会问了。im通常与矩阵无关。image命令删除了我在图像上绘制的网格线,并以某种方式对其进行了均衡。所以image命令实际上做了一些事情,我可以做到,但是如何在函数内部获得句柄呢?相同的图像命令?我试着让它产生同样的不希望的结果。我猜,由于它被称为
processAndDisplayImage
,所以在该函数中已经有一些显示图像的代码了。通常,执行此操作的命令能够将句柄返回到显示的图像,或返回到包含该图像的轴或图形。也许可以收集这些信息,并将其作为
processAndDisplayImage
的输出返回。如果句柄指向轴或图形,而不是图像本身,则可以通过检查子对象来获得图像的句柄。我可以这样做,但如何在函数内部获得句柄?相同的图像命令?我试着让它产生同样的不希望的结果。我猜,由于它被称为
processAndDisplayImage
,所以在该函数中已经有一些显示图像的代码了。通常,执行此操作的命令能够将句柄返回到显示的图像,或返回到包含该图像的轴或图形。也许可以收集这些信息,并将其作为
processAndDisplayImage
的输出返回。如果控制柄指向轴或图形,而不是图像本身,则可以通过检查子对象来获得图像的控制柄。