Python:使用 np.lib.stride_tricks.sliding_window_view 将立方体切割成N个三维小块

news2024/9/24 9:28:13

函数说明:np.lib.stride_tricks.sliding_window_view(arr, window_shape)
参数说明:
arr:要创建滑动窗口视图的数组。
window_shape:滑动窗口的形状,表示切割出的小块的大小。

作用:用于创建滑动窗口视图。对多维数组进行滑动窗口操作,从而以指定的形状和步幅切割数组。

在这里插入图片描述

import numpy as np

# 创建一个 3D 数组
arr = np.arange(64).reshape(4, 4, 4)
print("原始数组:", arr)
print("原始数组形状:", arr.shape)

# 定义窗口大小
window_shape = (2, 2, 2)

# 创建滑动窗口视图
window_view = np.lib.stride_tricks.sliding_window_view(arr, window_shape)
print("滑动窗口视图形状:", window_view.shape)

# 打印所有小块
# print("所有小块:")
# for block in window_view:
#     print(block)

# 通过索引获取特定的小立方体
for x in range(window_view.shape[1]):
    for y in range(window_view.shape[2]):
        selected_block = window_view[0, x, y]
        print(x, y)
        print(selected_block)

输出结果如下:

原始数组: [[[ 0  1  2  3]
  [ 4  5  6  7]
  [ 8  9 10 11]
  [12 13 14 15]]

 [[16 17 18 19]
  [20 21 22 23]
  [24 25 26 27]
  [28 29 30 31]]

 [[32 33 34 35]
  [36 37 38 39]
  [40 41 42 43]
  [44 45 46 47]]

 [[48 49 50 51]
  [52 53 54 55]
  [56 57 58 59]
  [60 61 62 63]]]
原始数组形状: (4, 4, 4)
滑动窗口视图形状: (3, 3, 3, 2, 2, 2)
0 0
[[[ 0  1]
  [ 4  5]]

 [[16 17]
  [20 21]]]
0 1
[[[ 1  2]
  [ 5  6]]

 [[17 18]
  [21 22]]]
0 2
[[[ 2  3]
  [ 6  7]]

 [[18 19]
  [22 23]]]
1 0
[[[ 4  5]
  [ 8  9]]

 [[20 21]
  [24 25]]]
1 1
[[[ 5  6]
  [ 9 10]]

 [[21 22]
  [25 26]]]
1 2
[[[ 6  7]
  [10 11]]

 [[22 23]
  [26 27]]]
2 0
[[[ 8  9]
  [12 13]]

 [[24 25]
  [28 29]]]
2 1
[[[ 9 10]
  [13 14]]

 [[25 26]
  [29 30]]]
2 2
[[[10 11]
  [14 15]]

 [[26 27]
  [30 31]]]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/739166.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

软件设计模式与体系结构-软件体系-基于事件的软件体系结构

目录 三、基于事件的软件体系结构代码显式调用隐式调用事件系统软件体系结构的概念事件系统的连接机制 例子:图形用户界面事件系统调度策略1.带有分离的派遣模块的事件管理器 观察者模式类图观察者模式应用实例 课程作业 三、基于事件的软件体系结构 计算机中&…

Prototype Completion for Few-Shot Learning

小样本学习的目的是用很少的例子来识别新类。基于预训练的方法有效地解决了通过预训练一个特征提取器,然后通过最近的基于质心的元学习对其进行微调 (pretraining fine-tuning)。然而,结果表明微调步骤使边际改进。在本文中,1)我们找出原因,…

Kafka入门,漏消费和重复消费, 消费者事务,数据积压(二十四)

漏消费和重复消费 重复消费:已经消费了数据,但是offset没提交。 漏消费:先提交offset后消费,有可能会造成数据得漏消费 消费者事务 如果向完成consumer端得进准一次性消费,那么需要Kafka消费端将消费过程和提交offs…

Gradio库中的State模块:保存用户会话状态的神秘组件

❤️觉得内容不错的话,欢迎点赞收藏加关注😊😊😊,后续会继续输入更多优质内容❤️ 👉有问题欢迎大家加关注私戳或者评论(包括但不限于NLP算法相关,linux学习相关,读研读博…

Python Flask构建微信小程序订餐系统 (六)

🔥 账号管理 🔥 展示账户列表 默认情况下的账户列表布局 查询用户信息 查询 所有用户信息 按照 倒序 的方式查询出来 User.query.order_by( User.uid.desc() ).all() ......@route_account.route("/index") def index():#模版文件夹取名叫 "account/login…

【netty】Netty模型

工作原理 1)Netty抽象出两组线程池 BossGroup 专门负责接收客户端的连接, WorkerGroup 专门负责网络的读写; 2)BossGroup 和 WorkerGroup 类型都是 NioEventLoopGroup 3)NioEventLoopGroup 相当于一个事件循环组, 这个组中含有多…

RabbitMQ系列(17)--延迟队列的简介与实现

1、延迟队列的概念 延迟队列内部是有序的,重要的特性体现在它的延迟属性上,延迟队列中的元素希望在指定时间到了之后或之前取出处理,简单的说延迟队列就是用来存放需要在指定时间被处理的元素的队列。 2、延迟队列的应用场景 (1)订单指定时…

Python实现本地电脑启动HTTP服务

在Python中,可以使用Python内置的http.server模块来启动一个简单的HTTP服务器。以下是一个简单的Python代码示例,实现本地电脑启动HTTP服务: import http.server import socketserverport 8081# 在当前目录下启动http服务器 Handler http.…

JavaWeb 速通JavaScript

目录 一、JavaScript快速入门 1.基本介绍 : 2.JavaScript特点 : 3.JavaScript使用方式 : 1 方式一 : 写在 2 方式二 : 以外部文件形式引入 PS : 注意事项 4.JavaScript查错方式 : 二、JavaScript数据类型 1.变量 : 2.数据类型 : 3.特殊值 : 三、JavaScript运算符 1.算…

解决forest低版本请求不安全的网站出现SSL认证不通过问题

文章目录 前言解决问题的步骤1、当然是百度2、官网3、看源码4、GPT5、直接去gitee上看源代码的问题 解决一解决二 前言 先说结论:无法解决 那既然无法解决,为啥还要写这样一篇文章呢,是因为这个问题我弄了一天多,我觉得有必要记…

SpringBoot开启子线程执行任务

目录 一、EnableAsync 二、Async 三、测试 一、EnableAsync 二、Async Service public class IotLocationServiceImpl {Asyncpublic void testA() {try {// 模拟阻塞Thread.sleep(5000);System.out.println("子线程执行完毕");} catch (InterruptedException e) {…

WPS Office AI实战:智能表格化身智能助理

前面我们已经拿 WPS AI 对Word文字、PPT幻灯片、PDF 做了开箱体验,还没有看过的小伙伴,请翻看以前的文章,本文开始对【智能表格】进行AI开箱测验。 表格在日常的数据处理中占绝对地位,但表格处理并不是每一个人都擅长,…

《向量数据库指南》——Milvus 中的向量索引概览和平面索引

目录 Milvus 中的向量索引 索引概览 平面索引 在之前的教程中,我们简单介绍了单词 Embedding 示例,了解了 Embedding 的强大,以及如何在向量数据库中进行向量存储和索引。此外,我们也简单介绍了最近邻搜索算法,这个问题涉及根据所选距离度量找到距离查询向量最接近的向…

spring boot+MySQL智慧食堂”设计与实现(包论文)

“智慧食堂”系统运用springboot框架开发,MIS的总体思想,以及MYSQL等技术的支持下共同完成了该系统的开发,实现了“智慧食堂”系统管理的信息化,使用户体验到更优秀的“智慧食堂”管理系统,管理员管理操作将更加方便&a…

青岛大学_王卓老师【数据结构与算法】Week05_01_栈和队列的定义和特点1_学习笔记

本文是个人学习笔记,素材来自青岛大学王卓老师的教学视频。 一方面用于学习记录与分享, 另一方面是想让更多的人看到这么好的《数据结构与算法》的学习视频。 如有侵权,请留言作删文处理。 课程视频链接: 数据结构与算法基础…

常用排序,快速排序,归并排序算法讲解

文章目录 快速排序归并排序 排序有很多种算法,常听的十大排序有:冒泡排序、选择排序、插入排序、快速排序、归并排序、堆排序、希尔排序、计数排序、基数排序、桶排序。 这里只介绍两个常用的算法。 排序: 快速排序归并排序 你可能想知道…

python安装cartopy

1.安装cartopy 创建新环境:https://www.machinelearningplus.com/deployment/conda-create-environment-and-everything-you-need-to-know-to-manage-conda-virtual-environment/ conda create --name mlenv python3.7.5 激活环境后,安装cartopy包&#…

IDEA+springboot+mybatis+shiro+bootstrap+Mysql网上书店管理系统源码

IDEAspringbootmybatisshirobootstrapMysql网上书店管理系统 一、系统介绍1.环境配置 二、系统展示1. 首页2.图书详情3.登录4. 注册5. 购物车6. 个人信息7.我的订单8.填写订单9.用户管理10.添加用户11.店铺列表12.添加店铺13.角色列表14.添加角色15.权限管理16.店铺信息17.我的…

十、SkyWalking链路追踪

解决什么问题? 串联整个调用链路,快速定位问题。缕清服务之间的依赖关系。对各个微服务接口的进行性能分析。跟踪整个业务流程的调用处理顺序。 一、skywalking介绍 1、skywalking是什么? skywalking是一个国产开源框架,2015年…

wordpress 单页中子页面列表制作方法

一、目标&#xff1a; 1、父页面显示所有子页面&#xff0c;如果是子页面就显示子页面对应父页面下的所有子页面。 2、选中的子页面链接显示不一样的样式。 二、代码 <?php$current_page_id get_the_ID(); // 获取当前页面的ID// 判断当前页面是否为父页面$is_parent_…