tensorflow::ops::Conv2D
#include <nn_ops.h>
Вычисляет 2-мерную свёртку, заданную 4-мерными тензорами input и filter.
Краткое описание
При заданном входном тензоре формы [batch, in_height, in_width, in_channels] и тензоре фильтра/ядра формы [filter_height, filter_width, in_channels, out_channels], данный оператор выполняет следующее:
- Сжимает фильтр в 2-мерную матрицу с формой
[filter_height * filter_width * in_channels, output_channels]. - Извлекает фрагменты изображения из входного тензора, чтобы сформировать виртуальный тензор формы
[batch, out_height, out_width, filter_height * filter_width * in_channels]. - Для каждого фрагмента справа умножает матрицу фильтра и вектор фрагмента изображения.
Подробнее, при формате NHWC по умолчанию,
output[b, i, j, k] =
sum_{di, dj, q} input[b, strides[1] * i + di, strides[2] * j + dj, q] *
filter[di, dj, q, k]
Должно выполняться условие strides[0] = strides[3] = 1. В наиболее распространённом случае одинаковых горизонтальных и вертикальных шагов, strides = [1, stride, stride, 1].
Аргументы:
- scope: Объект Scope
- input: 4-мерный тензор. Порядок измерений интерпретируется в соответствии со значением
data_format, см. подробности ниже. - filter: 4-мерный тензор формы
[filter_height, filter_width, in_channels, out_channels] - strides: 1-мерный тензор длины 4. Шаг скользящего окна для каждого измерения
input. Порядок измерений определяется значениемdata_format, см. подробности ниже. - padding: Тип алгоритма заполнения.
Необязательные атрибуты (см. Attrs):
- explicit_paddings: Если
paddingравен"EXPLICIT", список явных значений заполнения. Для i-го измерения, количество заполнения перед и после измерения соответственно равноexplicit_paddings[2 * i]иexplicit_paddings[2 * i + 1]. Еслиpaddingне равен"EXPLICIT",explicit_paddingsдолжен быть пустым. - data_format: Указывает формат данных входных и выходных данных. При формате "NHWC" по умолчанию данные хранятся в порядке: [batch, высота, ширина, каналы]. В качестве альтернативы, формат может быть "NCHW", порядок хранения данных: [batch, каналы, высота, ширина].
- dilations: 1-мерный тензор длины 4. Коэффициент расширения для каждого измерения
input. Если задано k > 1, будет k-1 пропущенных ячеек между каждым элементом фильтра в этом измерении. Порядок измерений определяется значениемdata_format, см. выше для подробностей. Расширения по измерениям batch и depth должны быть равны 1.
Возвращает:
-
Output: 4-мерный тензор. Порядок измерений определяется значениемdata_format, см. подробности ниже.
| Конструкторы и деструкторы | |
|---|---|
Conv2D(const ::tensorflow::Scope & scope, ::tensorflow::Input input, ::tensorflow::Input filter, const gtl::ArraySlice< int > & strides, StringPiece padding) | |
Conv2D(const ::tensorflow::Scope & scope, ::tensorflow::Input input, ::tensorflow::Input filter, const gtl::ArraySlice< int > & strides, StringPiece padding, const Conv2D::Attrs & attrs) |
| Общедоступные атрибуты | |
|---|---|
operation | |
output | |
| Общедоступные функции | |
|---|---|
node() const | ::tensorflow::Node * |
operator::tensorflow::Input() const | |
operator::tensorflow::Output() const | |
| Общедоступные статические функции | |
|---|---|
DataFormat(StringPiece x) | |
Dilations(const gtl::ArraySlice< int > & x) | |
ExplicitPaddings(const gtl::ArraySlice< int > & x) | |
UseCudnnOnGpu(bool x) | |
| Структуры | |
|---|---|
| tensorflow::ops::Conv2D::Attrs | Необязательные параметры настройки для Conv2D. |
Общедоступные атрибуты
операция
Operation operation
выход
::tensorflow::Output output
Общедоступные функции
Conv2D
Conv2D( const ::tensorflow::Scope & scope, ::tensorflow::Input input, ::tensorflow::Input filter, const gtl::ArraySlice< int > & strides, StringPiece padding )
Conv2D
Conv2D( const ::tensorflow::Scope & scope, ::tensorflow::Input input, ::tensorflow::Input filter, const gtl::ArraySlice< int > & strides, StringPiece padding, const Conv2D::Attrs & attrs )
узел
::tensorflow::Node * node() const
оператор::tensorflow::Вход
operator::tensorflow::Input() const
оператор::tensorflow::Выход
operator::tensorflow::Output() const
Общедоступные статические функции
Формат данных
Attrs DataFormat( StringPiece x )
Расширения
Attrs Dilations( const gtl::ArraySlice< int > & x )
ЯвныеЗаполнения
Attrs ExplicitPaddings( const gtl::ArraySlice< int > & x )
ИспользоватьCudnnНаGpu
Attrs UseCudnnOnGpu( bool x )
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.4/api_docs/cc/class/tensorflow/ops/conv2-d