首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >1通道图像/1输入通道卷积神经网络

1通道图像/1输入通道卷积神经网络
EN

Data Science用户
提问于 2020-08-12 11:39:47
回答 2查看 4.7K关注 0票数 0

我正在为图像跟踪一个关于tensorflow使用卷积神经网络的教程,但我希望用灰度图像来实现它。如果是针对灰度图像而不是3个通道的彩色图像,那么在那里发布的代码会有什么不同呢?

代码语言:javascript
复制
model = models.Sequential()
model.add(layers.Conv2D(32, (3, 3), activation='relu', input_shape=(32, 32, 3)))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(64, (3, 3), activation='relu'))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(64, (3, 3), activation='relu'))
EN

回答 2

Data Science用户

发布于 2020-08-16 06:20:16

以下是更新的灰度图像代码:

代码语言:javascript
复制
model = models.Sequential()
model.add(layers.Conv2D(32, (3, 3), activation='relu', input_shape=(32, 32, 1)))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(64, (3, 3), activation='relu'))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(64, (3, 3), activation='relu'))

为什么?

因为对于RGB图像,有3个通道,'R','G‘和'B’所以,输入的形状将是(height, width, 3)

但是由于灰度只有一个通道,所以输入的形状变成(height, width, 1)

注意,如果您使用带有Tensorflow后端的Keras,那么data_format是channels_last,这意味着输入形状应该是(height, width, channels)

否则,如果您使用Theano作为后端,则输入形状应该是(channels, height, width),因为Theano使用channels_first数据格式。

希望这能帮上忙。如果有帮助,请投上票。

票数 2
EN

Data Science用户

发布于 2020-08-12 12:02:55

input_shape=(32, 32, 3)))

会变成

代码语言:javascript
复制
 input_shape=(32, 32, 1)))

通道默认是最后一个参数。

...When使用该层作为模型的第一层,提供关键字参数input_shape (整数元组,不包括样本轴),例如input_shape=(128、128、3)用于data_format=“channels_last.”中的128x128 RGB图片。

参参-Keras

票数 0
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/80163

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档