【发布时间】:2017-01-01 19:12:06
【问题描述】:
我有一个真彩色图像,并在 matlab 中将其转换为灰度图像,然后将其另存为新图像。 这是新图像前几个像素的灰度。
我将此图像加载到matlab,然后我取前15行和5列的像素,我可以得到相同的灰度值(这并不奇怪)。
然而
如果我使用Paint(该软件附带windows)从转换后的灰度图像中裁剪前15行和5列像素,然后将裁剪的部分保存为新图像。
我得到的裁剪图像仍然是真彩色图像。
如果我将裁剪后的图像转换为灰度,灰度值与前两个不同。
有人知道这里发生了什么吗?非常感谢。
【问题讨论】:
-
可能是文件格式。你在摆弄 JPG?
-
@AnderBiguri。非常感谢,是的,我使用 .jpg 格式的所有图像。但这对灰度值有何影响?我该如何解决这个问题?
-
jpg 压缩图像,它不保存像素信息,而是FFT系数,所以总是有信息丢失。使用无损图片格式,如png
-
@AnderBiguri,感谢您的建议,我已尝试将原始图像转换为灰度和 .png 格式。然后我进行裁剪并将裁剪后的图像也保存为 .png。但问题依然存在。
-
@AnderBiguri,手动裁剪会改变图像中的数据吗?
标签: image matlab image-processing crop pixel