首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么scipy.ndimage变焦增加了新的频道?

为什么scipy.ndimage变焦增加了新的频道?
EN

Stack Overflow用户
提问于 2018-07-25 18:29:36
回答 1查看 239关注 0票数 1

当我发现python scipy.ndimage.zoom在执行缩放时会自动添加新频道时,我很惊讶:

代码语言:javascript
复制
from scipy.misc import imread
from scipy.ndimage import zoom
img = imread('lena.jpg')
img=imread('lena.jpg')
img.shape
(468, 792, 3)
x = zoom(img, 1.0)
x.shape
(468, 792, 3)
x = zoom(img, 1.5)
x.shape
(702, 1188, 4)
x = zoom(img, 2)
x.shape
(936, 1584, 6)

宽度,高度尺寸都是正确的,我不能理解从哪里来的其他尺寸。

这种奇怪的行为只在彩色图像中表现出来:

代码语言:javascript
复制
x = zoom(img[:, :, 0], 2)
x.shape
(936, 1584)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-26 00:13:13

ndimage.zoom对通道(或图像)一无所知。它使用n维数组进行操作。如果你给出一个形状为(9, 5, 3)的数组,并要求以2的因子缩放它,它将产生一个形状为(18, 10, 6)(9*2, 5*2, 3*2)数组。

当然,当第三个轴是颜色通道时,这不是您想要的。使用逐轴缩放,将最后一个轴的缩放设置为1:

代码语言:javascript
复制
zoom(img, (2, 2, 1))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51516644

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档