python - 上传形状奇特的适合图像
问题描述
我正在尝试上传适合的图像,但它一直显示相同的错误“图像数据的尺寸无效”。
我发现这是因为拟合图像的形状很奇怪(1、40、40)。有没有办法解决这个问题并在不使用 AplPy 的情况下上传实际图像?
file1 = "Downloads/PVDiagramtest1.fits"
image_data = fits.getdata(file1)
print(image_data)
print(image_data.shape)
plt.figure()
plt.imshow(image_data)
plt.show()
解决方案
图像立方体image_data
只是一个 numpy 数组,因此您只需要访问它的一部分即可获得 2D 形状。例如,这将绘制 40x40 图像:
plt.imshow(image_data[0,:,:])
通常,以 FITS 或 HDF5(或其他格式)存储的图像可能会以 3D 形状出现,即使只存储了一张图像。这允许在访问此类数据时更普遍地编写软件;始终处理 3D 形状比编写单独处理偶尔出现的 2D 情况的代码更容易。
编辑:更仔细地阅读您的问题,看起来您可能正在使用一些希望图像数据为 2D 的 API?相同的建议通常适用;切片或重塑数组,然后以这种方式保存。
推荐阅读
- css - 如何将 2 个按钮彼此相邻居中
- java - 我的任务是创建一个 Java 应用程序,该应用程序使用 2 个同步线程来计算每月利息并更新帐户余额
- c++ - msgpack:在不知道类型的情况下解压自定义类
- php - 在 SQL 中将字符串从 PHP 转换为 int
- c - 在C中通过http发送图像
- c++ - 下一个排列定义
- spring-cloud-stream - 用于多租户服务的 Spring Cloud Stream
- python - 获取函数的源文件行号
- angular - 什么是 ViewChild
- ruby-on-rails - 如何猴子补丁 ActiveRecord::QueryMethods?