看官方讲解一些博客感觉一直不是很懂,下面是我的个人理解结合官方文档,有问题欢迎指出

tf.expand_dims

tf.expand_dims(
    input, axis=None, name=None, dim=None
)

给定的张量input,该操作插入尺寸索引处的1维axisinput的形状。维度索引axis从零开始;如果您为其指定负数,axis则从末开始算起。

如果要将批次尺寸添加到单个元素,此操作很有用。例如,如果您有一个shape的图像[height, width, channels],则可以用制作一批1张图像expand_dims(image, 0),这将使shape成为[1, height, width, channels]

简单来说增加一个维度

import numpy as np
import tensorflow as tf
from numpy import array

current=np.array([
        [0,7,1,2,2],
        [1,7,3,4,3],
        [2,7,5,6,6],
        [3,7,7,8,7],
        [4,7,7,8,7],
        [5,7,7,8,7]
])

current = array(current)
current = tf.constant(current)
points_e = tf.expand_dims(current, axis=0)

注意看处理结果 

官方例子 shape维度

# 't' is a tensor of shape [2]
tf.shape(tf.expand_dims(t, 0))  # [1, 2]
tf.shape(tf.expand_dims(t, 1))  # [2, 1]
tf.shape(tf.expand_dims(t, -1))  # [2, 1]

# 't2' is a tensor of shape [2, 3, 5]
tf.shape(tf.expand_dims(t2, 0))  # [1, 2, 3, 5]
tf.shape(tf.expand_dims(t2, 2))  # [2, 3, 1, 5]
tf.shape(tf.expand_dims(t2, 3))  # [2, 3, 5, 1]
Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐