python - 当预期为 3 时,Imread 返回 4 个维度。为什么?
问题描述
我正在研究基于 tensorflow 的卷积神经网络。为了处理这些转换,SciKit 函数重塑了原始图像。我有一个意想不到的情况:
def read_img(file):
img = skimage.io.imread(img_folder + file)
print(img.shape)
img = skimage.transform.resize(img, (img_width, img_height), mode=mode)
return img[:,:,:img_channels]
阻止模型形成为以下回溯:
File "A:\anoth\...\newmodel.py", line 76, in read_img
img = skimage.transform.resize(img, (img_width, img_height), mode=mode)
File "A:\anoth\...\\skimage\transform\_warps.py", line 124, in resize
raise ValueError("len(output_shape) cannot be smaller than the image "
ValueError: len(output_shape) cannot be smaller than the image dimensions
输入变量 ( print(img.shape)
) 的打印表明有一个图像进入模型,由 4 个维度组成
(2, 480, 720, 3)
当以前的文件有 3 个时:
(480, 720, 3)
这里可能会发生什么?当输入都是图像时,这个第 4 维是什么?
解决方案
该数组是动画 GIF 的数组。
推荐阅读
- r - 是否以正确的方式执行缩放以进一步使用多元线性回归?
- python - 西皮。插值 griddata 三次样条返回 nan 而不是值
- python - 通过询问用户的输入在 python 中查找重复项
- mysql - 前一行 id 在 MySQL 中连续显示在父列的下两行中
- python - 使用 BeautifulSoup 在 DIV 类中的 H 标记中查找部分文本
- sql - SQL Batch editing with Regexp (i think)
- symfony - 将日光浴室与 Solr 一起使用
- libvirt - 在 Ubuntu 18.04 上为 virtiofs 构建(或只是获取)最新的 libvirtd
- node.js - 将图像 URL 上传到 Azure Blob SAS URL
- reactjs - 无法将我当前的应用程序部署到 Heroku,应用程序错误