python--关于切割一个滑动窗口的问题

这篇博客介绍了如何利用skimage库中的view_as_windows和view_as_blocks函数,以提高从大型16x16矩阵中按4x4窗口取块的效率。通过示例代码展示了这两个函数的用法,以及如何访问和操作切块后的数据,为处理大数据集提供了一种有效的方法。
摘要由CSDN通过智能技术生成

目的:想要实现从一个1616的矩阵中依次取44的一个块大小
常规做法就是写一个for循环,如果数据量太大,速度就会减慢。
调用包的做法;
包:from skimage.util.shape import view_as_windows

a=np.random.randint(1,10,(16,16))
#input_array : 要切割的数据;window_shape:切割窗口大小;step:窗口移动的步幅
window_shape = (4,4)
window_clip = view_as_windows(a, window_shape, 4)
print(window_clip)

结果如下:
在这里插入图片描述

后面没写完整就暂时省略。
skimage另外一个库;
from skimage.util.shape import view_as_blocks

效果相同:
如下:

print('----------这是一个分割线 -------------')
b=view_as_blocks(a,block_shape=(4,4))
print(b)

结果如下:
在这里插入图片描述
取块里面的值:


print('------输出块里面的值-----')
print(b[0,0])#输出第一个块
print(b[0,1])#输出第二个块
print(b[0,0,0,2])#输出第一个块的第1行第3列元素的值

结果如下:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值