You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何向TensorFlow CNN同时输入图像与数值数据完成分类训练及推理

方案可行性确认

你说的需求完全可以实现,属于典型的多模态输入CNN分类场景,目前RGBD图像分类、工业视觉检测等场景已经有大量成熟落地案例。

核心实现步骤

数据预处理

  • 先完成RGB图像和深度图的空间对齐,确保两者分辨率、对应像素的空间位置完全匹配
  • 深度图作为单通道数据处理,需做归一化操作,把距离数值映射到和RGB图像一致的01或者-11区间,避免单类输入尺度过大主导梯度更新
  • 你可以选择两种输入组织方式:
    1. 简单方案:直接把深度图和RGB图像在通道维度拼接,变成4通道输入喂给普通单输入CNN,适合小数据集快速验证效果
    2. 效果更优方案:两类数据作为独立输入分开走特征提取分支,后续再做特征融合,更适配两类数据特征分布差异大的场景

模型构建

用TensorFlow Keras的函数式API即可快速搭建多输入模型,核心代码逻辑参考:

import tensorflow as tf

# 定义两个输入层,尺寸按你的实际数据调整
rgb_input = tf.keras.Input(shape=(224, 224, 3), name="rgb_input")
depth_input = tf.keras.Input(shape=(224, 224, 1), name="depth_input")

# 分别搭建两个分支的特征提取网络,也可以用ResNet、MobileNet等预训练backbone做迁移学习
rgb_feature = tf.keras.layers.Conv2D(32, (3,3), activation='relu')(rgb_input)
rgb_feature = tf.keras.layers.MaxPooling2D()(rgb_feature)
rgb_feature = tf.keras.layers.Flatten()(rgb_feature)

depth_feature = tf.keras.layers.Conv2D(32, (3,3), activation='relu')(depth_input)
depth_feature = tf.keras.layers.MaxPooling2D()(depth_feature)
depth_feature = tf.keras.layers.Flatten()(depth_feature)

# 融合两类特征
concat_feature = tf.keras.layers.Concatenate()([rgb_feature, depth_feature])

# 接分类头输出结果
output = tf.keras.layers.Dense(128, activation='relu')(concat_feature)
output = tf.keras.layers.Dense(你的分类类别数, activation='softmax')(output)

# 实例化模型
model = tf.keras.Model(inputs=[rgb_input, depth_input], outputs=output)
# 编译模型,和普通单输入模型逻辑一致
model.compile(optimizer='adam', loss='sparse_categorical_crossentropy', metrics=['accuracy'])

训练与推理

  • 训练时按输入层的name传入字典格式的数据集即可:
    model.fit({"rgb_input": 训练集RGB数据, "depth_input": 训练集深度数据}, y=训练集标签, epochs=10, batch_size=32)
  • 推理逻辑和训练完全对齐,把预处理好的待推理RGB、深度数据按同样格式传入model.predict()就能拿到分类结果。
可选优化方向
  • 若深度图存在噪声、空值,可先做中值滤波、邻域补全等预处理再输入,能明显提升模型鲁棒性
  • 特征融合阶段可加入通道注意力机制,让模型自动分配两类输入的权重,比直接拼接的效果更好
  • 数据集规模较小时,可以先分别在公开RGB数据集、深度数据集上预训练两个分支的backbone,再做下游任务微调,能大幅降低过拟合风险

内容的提问来源于stack exchange,提问作者Fin M.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.09 03:45:04