博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python np.ceil()和np.repeat(),图像通道赋值的用法
阅读量:3951 次
发布时间:2019-05-24

本文共 4864 字,大约阅读时间需要 16 分钟。

import numpy as npa = np.zeros((2, 10))a[np.arange(2), 4] = 1print("逐个赋值后的值:", a)b = np.array([0.34, 1.3, 0.75, -0.23, -1.1])b = np.ceil(b)print("向上取整的值:", b)
逐个赋值后的值: [[0. 0. 0. 0. 1. 0. 0. 0. 0. 0.] [0. 0. 0. 0. 1. 0. 0. 0. 0. 0.]]向上取整的值: [ 1.  2.  1. -0. -1.]
print('np.repeat()的用法')t = np.array([[1, 2, 4, 5, 7], [-0.23, 0.45, -1.2, 7, 0.7],             [3.2, 0.44, -0.65, -0.6, 0.5]])t0 = np.repeat(t, 2, axis=0)t0_reshape = t0.reshape(t.shape[0], -1)t1 = np.repeat(t, 2, axis=1)t1_reshape = t1.reshape(-1, t.shape[1])print('输入值:', t, t.shape)print("按第1维度复制矩阵结果:", t0, t0.shape)print("按第1维度复制并reshape矩阵结果:", t0_reshape, t0_reshape.shape)np_class = np.ones((3, 20))t0_reshape = np.concatenate([t0_reshape, np_class], axis=1)print('拼接后的结果:', t0_reshape, t0_reshape.shape)print("按第2维度复制矩阵结果:", t1, t1.shape)print("按第2维度复制并reshape矩阵结果:", t1_reshape, t1_reshape.shape)np_target = np.zeros((7, 7, 30))y_idx = np.array([[3], [5], [4]])x_idx = np.array([[3], [5], [2]])for i in range(3):    np_target[int(y_idx[i]), int(x_idx[i])] = t0_reshape[i]print('矩阵直接赋值结果:', np_target, np_target.shape)
np.repeat()的用法输入值: [[ 1.    2.    4.    5.    7.  ] [-0.23  0.45 -1.2   7.    0.7 ] [ 3.2   0.44 -0.65 -0.6   0.5 ]] (3, 5)按第1维度复制矩阵结果: [[ 1.    2.    4.    5.    7.  ] [ 1.    2.    4.    5.    7.  ] [-0.23  0.45 -1.2   7.    0.7 ] [-0.23  0.45 -1.2   7.    0.7 ] [ 3.2   0.44 -0.65 -0.6   0.5 ] [ 3.2   0.44 -0.65 -0.6   0.5 ]] (6, 5)按第1维度复制并reshape矩阵结果: [[ 1.    2.    4.    5.    7.    1.    2.    4.    5.    7.  ] [-0.23  0.45 -1.2   7.    0.7  -0.23  0.45 -1.2   7.    0.7 ] [ 3.2   0.44 -0.65 -0.6   0.5   3.2   0.44 -0.65 -0.6   0.5 ]] (3, 10)拼接后的结果: [[ 1.    2.    4.    5.    7.    1.    2.    4.    5.    7.    1.    1.   1.    1.    1.    1.    1.    1.    1.    1.    1.    1.    1.    1.   1.    1.    1.    1.    1.    1.  ] [-0.23  0.45 -1.2   7.    0.7  -0.23  0.45 -1.2   7.    0.7   1.    1.   1.    1.    1.    1.    1.    1.    1.    1.    1.    1.    1.    1.   1.    1.    1.    1.    1.    1.  ] [ 3.2   0.44 -0.65 -0.6   0.5   3.2   0.44 -0.65 -0.6   0.5   1.    1.   1.    1.    1.    1.    1.    1.    1.    1.    1.    1.    1.    1.   1.    1.    1.    1.    1.    1.  ]] (3, 30)按第2维度复制矩阵结果: [[ 1.    1.    2.    2.    4.    4.    5.    5.    7.    7.  ] [-0.23 -0.23  0.45  0.45 -1.2  -1.2   7.    7.    0.7   0.7 ] [ 3.2   3.2   0.44  0.44 -0.65 -0.65 -0.6  -0.6   0.5   0.5 ]] (3, 10)按第2维度复制并reshape矩阵结果: [[ 1.    1.    2.    2.    4.  ] [ 4.    5.    5.    7.    7.  ] [-0.23 -0.23  0.45  0.45 -1.2 ] [-1.2   7.    7.    0.7   0.7 ] [ 3.2   3.2   0.44  0.44 -0.65] [-0.65 -0.6  -0.6   0.5   0.5 ]] (6, 5)矩阵直接赋值结果: [[[ 0.    0.    0.   ...  0.    0.    0.  ]  [ 0.    0.    0.   ...  0.    0.    0.  ]  [ 0.    0.    0.   ...  0.    0.    0.  ]  ...  [ 0.    0.    0.   ...  0.    0.    0.  ]  [ 0.    0.    0.   ...  0.    0.    0.  ]  [ 0.    0.    0.   ...  0.    0.    0.  ]] [[ 0.    0.    0.   ...  0.    0.    0.  ]  [ 0.    0.    0.   ...  0.    0.    0.  ]  [ 0.    0.    0.   ...  0.    0.    0.  ]  ...  [ 0.    0.    0.   ...  0.    0.    0.  ]  [ 0.    0.    0.   ...  0.    0.    0.  ]  [ 0.    0.    0.   ...  0.    0.    0.  ]] [[ 0.    0.    0.   ...  0.    0.    0.  ]  [ 0.    0.    0.   ...  0.    0.    0.  ]  [ 0.    0.    0.   ...  0.    0.    0.  ]  ...  [ 0.    0.    0.   ...  0.    0.    0.  ]  [ 0.    0.    0.   ...  0.    0.    0.  ]  [ 0.    0.    0.   ...  0.    0.    0.  ]] ... [[ 0.    0.    0.   ...  0.    0.    0.  ]  [ 0.    0.    0.   ...  0.    0.    0.  ]  [ 3.2   0.44 -0.65 ...  1.    1.    1.  ]  ...  [ 0.    0.    0.   ...  0.    0.    0.  ]  [ 0.    0.    0.   ...  0.    0.    0.  ]  [ 0.    0.    0.   ...  0.    0.    0.  ]] [[ 0.    0.    0.   ...  0.    0.    0.  ]  [ 0.    0.    0.   ...  0.    0.    0.  ]  [ 0.    0.    0.   ...  0.    0.    0.  ]  ...  [ 0.    0.    0.   ...  0.    0.    0.  ]  [-0.23  0.45 -1.2  ...  1.    1.    1.  ]  [ 0.    0.    0.   ...  0.    0.    0.  ]] [[ 0.    0.    0.   ...  0.    0.    0.  ]  [ 0.    0.    0.   ...  0.    0.    0.  ]  [ 0.    0.    0.   ...  0.    0.    0.  ]  ...  [ 0.    0.    0.   ...  0.    0.    0.  ]  [ 0.    0.    0.   ...  0.    0.    0.  ]  [ 0.    0.    0.   ...  0.    0.    0.  ]]] (7, 7, 30)

矩阵格式:(3,4,2),对应于图片的格式:(heght,width,channge_num)

在这里插入图片描述

print('多维矩阵赋值向量')c = np.zeros((3, 4, 2))a = np.array(([3, 4], [5, 6]))c[0, 1] = a[0]print('赋值到第1块矩阵第2行向量:',c)c[1, 2] = a[1]print('赋值到第2块矩阵第3行向量:',c)c[2, 3] = a[0]print('赋值到第3块矩阵第4行向量:',c)
多维矩阵赋值向量赋值到第1块矩阵第2行向量: [[[0. 0.]  [3. 4.]  [0. 0.]  [0. 0.]] [[0. 0.]  [0. 0.]  [0. 0.]  [0. 0.]] [[0. 0.]  [0. 0.]  [0. 0.]  [0. 0.]]]赋值到第2块矩阵第3行向量: [[[0. 0.]  [3. 4.]  [0. 0.]  [0. 0.]] [[0. 0.]  [0. 0.]  [5. 6.]  [0. 0.]] [[0. 0.]  [0. 0.]  [0. 0.]  [0. 0.]]]赋值到第3块矩阵第4行向量: [[[0. 0.]  [3. 4.]  [0. 0.]  [0. 0.]] [[0. 0.]  [0. 0.]  [5. 6.]  [0. 0.]] [[0. 0.]  [0. 0.]  [0. 0.]  [3. 4.]]]

转载地址:http://rvkzi.baihongyu.com/

你可能感兴趣的文章
android恢复出厂设置以及系统升级流程
查看>>
嵌入式系统 Boot Loader 技术内幕
查看>>
浅析linux开发工具adb具体实现
查看>>
Adb源码学习
查看>>
浅析linux开发工具adb具体实现
查看>>
清炒土豆丝的做法详细介绍
查看>>
adb 协议
查看>>
Android Debug Bridge 服务详解
查看>>
linux access函数判断文件存取权限
查看>>
epoll使用
查看>>
C语言的常用类型转换函数(atoi,atol,strtod,strtol,strtoul)
查看>>
C语言宏定义##连接符和#符的使用
查看>>
对FrameBuffer的一夜hack
查看>>
Linux framebuffer ---double buffer
查看>>
android电源管理
查看>>
Android电源管理相关应用技巧分享
查看>>
Linux关机重启流程分析
查看>>
MOS管及MOS管的驱动电路设计
查看>>
ARM中的程序状态寄存器(CPSR)
查看>>
关于c语言的sizeof
查看>>