TF之data_format:data_format中的NHWC&NCHW简介、转换的详细攻略

TF之data_format:data_format中的NHWC&NCHW简介、转换的详细攻略


NHWC&NCHW简介

NHWC & NCHW是两种参数呈现的表达方式。在如何表示一组彩色图片的问题上,不同的DL框架有不同的表达。

  形式 适合的框架  

NHWC

channels_first

[batch, in_height, in_width, in_channels]

批量批次、高度、宽度、通道数

TensorFlow  

NCHW

channels_last

[batch, in_channels, in_height, in_width]

批量批次、通道数、高度、宽度

Theano、Caffe  

NHWC&NCHW转换

1、NHWC →  NCHW

import tensorflow as tf

x = tf.reshape(tf.range(24), [1, 3, 4, 2])
out = tf.transpose(x, [0, 3, 1, 2])

print(x.shape)
print(out.shape)

(1, 3, 4, 2)
(1, 2, 3, 4)

2、NCHW → NHWC

import tensorflow as tf

x = tf.reshape(tf.range(24), [1, 2, 3, 4])
out = tf.transpose(x, [0, 2, 3, 1])

print(x.shape)
print(out.shape)

(1, 2, 3, 4)
(1, 3, 4, 2)
(0)

相关推荐