我试图理解,为什么plt.imshow()生成的图比librosa.display.specshow生成的图更不详细,更模糊。作为情节,或者更好地说,情节背后的数据是我进一步分析的基础,我想尽可能详细地说明。因此我想知道,什么样的黑魔法/增强/处理是由librosa在窗帘后面完成的。x1c 0d1x正如您在屏幕截图中看到的,我使用相同的数组以及相同的图形大小和分辨率。
plt.imshow()
librosa.display.specshow
librosa
33qvvth11#
这种模糊效果可能是plt.imshow进行插值的结果。此函数中interpolation参数的默认值为antialiased,您可以通过使用plt.imshow中的interpolation="none"将其关闭。您还可以根据Matplotlib文档更改plt.imshow的默认行为。总而言之,并不是librosa有黑魔法,而是matplotlib使图像变得模糊,这对于真实世界的图像来说可能是一个有趣的功能,但在试图查看光谱图等数据时会降低质量。
plt.imshow
interpolation
antialiased
interpolation="none"
1条答案
按热度按时间33qvvth11#
这种模糊效果可能是
plt.imshow
进行插值的结果。此函数中interpolation
参数的默认值为antialiased
,您可以通过使用plt.imshow
中的interpolation="none"
将其关闭。您还可以根据Matplotlib文档更改plt.imshow
的默认行为。总而言之,并不是librosa有黑魔法,而是matplotlib使图像变得模糊,这对于真实世界的图像来说可能是一个有趣的功能,但在试图查看光谱图等数据时会降低质量。