python - 如何在python中将图像从(n,m,4)重塑为(n,m,3)?
问题描述
我的图像值如下:
A = [[[ 7, 23, 0, 255],
[ 14, 25, 1, 255],
[ 23, 26, 1, 255],
[ 49, 41, 33, 255],
[ 43, 37, 30, 255],
[ 42, 33, 25, 255]],
[[ 59, 69, 59, 255],
[ 77, 83, 72, 255],
[ 86, 91, 84, 255],
[ 16, 16, 8, 255],
[ 9, 7, 2, 255],
[ 1, 0, 0, 255]]]
print(np.array(A).shape) ## (3,6,4)
我想像这样重塑它(3,6,3)
,以便跳过255
矩阵。
我能怎么做?
解决方案
您需要切片而不是重塑,它保留所有元素但改变数组的形状;对于您的情况,只需沿第三轴放置最后一个元素:
np.array(A)[:,:,:-1].shape
# (2, 6, 3)
推荐阅读
- javascript - 如何使用 SwiftSoup 抓取重定向的特定网站?
- html - 带有变量的SVG过滤器?
- android - Android - 如何在内部存储中保存数组
- cuda - 使用 CUDA 流和 memCpyAsync 的错误结果,添加 cudaDeviceSynchronize 变得正确
- java - ImageMetadataReader.readMetadata(file) 缺少数据
- django - 在模板中选择不会在编辑中更新
- javascript - 用于循环的 Dojo 模板不在 html 表中循环
- javascript - 如何在单击时在表格上的单元格上显示对话框
- jquery - 创建 localhost 并运行 jquery 应用程序
- node.js - 如何防止 fs.readdirSync 将文件名中的逗号解释为单独的文件?