Matlab imshow()没有正确显示图像

时间:2012-12-04 00:54:24

标签: matlab

我有一个简单的代码来在Matlab中显示图像。我使用imread()来阅读它并imshow()来显示它。它下面的代码,结果没有正确显示。希望有人能帮助我。

img = imread('/home/samuelpedro/Desktop/API - Projecto/coimbra_aerea.jpg');
figure, imshow(img);

结果图像如下。 enter image description here

另外,如果我选择将其保存为新的jpg文件,则会正确保存。

更新1:

奇怪的是,如果我选择在首选项>图像处理中显示轴,则会更正

1 个答案:

答案 0 :(得分:3)

锁定屏幕截图,缺少x和y刻度。它们应该出现在Matlab的标准配置中。也许有些东西只是在Matlab配置中搞砸了。尝试使用干净的新~/.matlab文件夹(之前重命名旧文件夹)。

或者......再次通过你的屏幕截图判断,这看起来像是背景中的Ubuntu / Unity。 Unity需要加速(OpenGL),这可能是一些Linux图形驱动程序的随机错误。您可能想尝试在“干净”的X服务器(可能是twm环境)中启动matlab来排除这种情况。

将图像保存为(未压缩)位图(bmp)并使用imread读取它。如果jpg被imread-routine搞砸了,这应该排除它。

最后但并非最不重要的是,你的磁盘上的jpg损坏副本,一些翻转位。在文件的副本上运行md5sums。