# tensorflow::ops::ExpandDims Class Reference

# tensorflow::
ops::
ExpandDims

`
#include <array_ops.h>
`


Inserts a dimension of 1 into a tensor's shape.

## Summary


Given a tensor
`
input
`
, this operation inserts a dimension of 1 at the dimension index
`
axis
`
of
`
input
`
's shape. The dimension index
`
axis
`
starts at zero; if you specify a negative number for
`
axis
`
it is counted backward from the end.


This operation is useful if you want to add a batch dimension to a single element. For example, if you have a single image of shape
`
[height, width, channels]
`
, you can make it a batch of 1 image with
`
expand_dims(image, 0)
`
, which will make the shape
`
[1, height, width, channels]
`
.


Other examples:


```
# 't' is a tensor of shape [2]
shape(expand_dims(t, 0)) ==> [1, 2]
shape(expand_dims(t, 1)) ==> [2, 1]
shape(expand_dims(t, -1)) ==> [2, 1]
```

<br />


```
# 't2' is a tensor of shape [2, 3, 5]
shape(expand_dims(t2, 0)) ==> [1, 2, 3, 5]
shape(expand_dims(t2, 2)) ==> [2, 3, 1, 5]
shape(expand_dims(t2, 3)) ==> [2, 3, 5, 1]
```

<br />


This operation requires that:


`
-1-input.dims() <= dim <= input.dims()
`


This operation is related to
`
squeeze()
`
, which removes dimensions of size 1.


Args:

- scope: A [Scope](https://www.tensorflow.org/versions/r2.5/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope) object
- axis: 0-D (scalar). Specifies the dimension index at which to expand the shape of `
  input
  ` . Must be in the range `
  [-rank(input) - 1, rank(input)]
  ` .

<br />


Returns:

- `
  https://www.tensorflow.org/versions/r2.5/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output
  ` : Contains the same data as `
  input
  ` , but its shape has an additional dimension of size 1 added.

<br />

| ### Constructors and Destructors ||
|---|---|
| ` https://www.tensorflow.org/versions/r2.5/api_docs/cc/class/tensorflow/ops/expand-dims#classtensorflow_1_1ops_1_1_expand_dims_1ae2cff3dc910140a50446ed380848baef (const :: https://www.tensorflow.org/versions/r2.5/api_docs/cc/class/tensorflow/scope#classtensorflow_1_1_scope & scope, :: https://www.tensorflow.org/versions/r2.5/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input input, :: https://www.tensorflow.org/versions/r2.5/api_docs/cc/class/tensorflow/input#classtensorflow_1_1_input axis) ` ||

| ### Public attributes ||
|---|---|
| ` https://www.tensorflow.org/versions/r2.5/api_docs/cc/class/tensorflow/ops/expand-dims#classtensorflow_1_1ops_1_1_expand_dims_1aefcdcc72ed92eb8f0975a90ca998bb71 ` | ` https://www.tensorflow.org/versions/r2.5/api_docs/cc/class/tensorflow/operation#classtensorflow_1_1_operation ` |
| ` https://www.tensorflow.org/versions/r2.5/api_docs/cc/class/tensorflow/ops/expand-dims#classtensorflow_1_1ops_1_1_expand_dims_1abc828c5e90fdd61142ffd01878f9f95a ` | ` :: https://www.tensorflow.org/versions/r2.5/api_docs/cc/class/tensorflow/output#classtensorflow_1_1_output ` |

| ### Public functions ||
|---|---|
| ` https://www.tensorflow.org/versions/r2.5/api_docs/cc/class/tensorflow/ops/expand-dims#classtensorflow_1_1ops_1_1_expand_dims_1a85ce8553584a8b3a50345d93f0f03b52 () const ` | ` ::tensorflow::Node * ` |
| ` https://www.tensorflow.org/versions/r2.5/api_docs/cc/class/tensorflow/ops/expand-dims#classtensorflow_1_1ops_1_1_expand_dims_1aabc0c1aba83330412277a5b6e6f2c04e () const ` | ` ` |
| ` https://www.tensorflow.org/versions/r2.5/api_docs/cc/class/tensorflow/ops/expand-dims#classtensorflow_1_1ops_1_1_expand_dims_1a280db99846027451637ac5d7e7a9d67e () const ` | ` ` |

## Public attributes

### operation

```
Operation operation
```

### output

```
::tensorflow::Output output
```

## Public functions

### ExpandDims

```
 ExpandDims(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input input,
  ::tensorflow::Input axis
)
```

### node

```
::tensorflow::Node * node() const 
```

### operator::tensorflow::Input

```
 operator::tensorflow::Input() const 
```

### operator::tensorflow::Output

```
 operator::tensorflow::Output() const 
```