小编nic*_*ale的帖子

有效地删除numpy图像数组的行/列

我试图从Numpy数组表示的图像中删除行或列.我的图片类型为uint16和2560 x 2176.举个例子,假设我要删除前16列,使其成为2560 x 2160.

我是MATLAB-to-Numpy转换器,在MATLAB中会使用类似的东西:

A = rand(2560, 2196);
A(:, 1:16) = [];
Run Code Online (Sandbox Code Playgroud)

据我了解,这将删除列,并通过不复制到新数组节省大量时间.

对于Numpy,以前的帖子使用了像numpy.delete.但是,文档很清楚,这会返回一个副本,所以我必须将副本重新分配给A.这似乎会浪费很多时间复制.

import numpy as np

A = np.random.rand(2560,2196)
A = np.delete(A, np.r_[:16], 1)
Run Code Online (Sandbox Code Playgroud)

这真的和就地删除一样快吗?我觉得我必须错过一个更好的方法或不了解python如何在删除期间处理数组存储.

相关的先前帖子:有效
删除NumPy中的行
numpy.delete的文档

python matlab numpy image image-processing

2
推荐指数
1
解决办法
5780
查看次数

标签 统计

image ×1

image-processing ×1

matlab ×1

numpy ×1

python ×1