【发布时间】:2016-11-26 03:42:03
【问题描述】:
我正在开发一个 CNN 来进行生物医学图像的分割。
作为输入,我有 572x572x3 图像,我的标签是具有基本事实的图像。
这是我的数据层:
layer {top: 'image' name: 'loadMydata_image' type: 'HDF5Data' hdf5_data_param { source: '/home/alexandra/Documents/my-u-net/my_data.txt' batch_size: 1} include: { phase: TRAIN }}
layer {top: 'anno' name: 'loadMydata_anno' type: "HDF5Data" hdf5_data_param { source: '/home/alexandra/Documents/my-u-net/my_data.txt' batch_size: 1} include: { phase: TRAIN }}
问题是,最后我的输出小于标签图像,欧几里得损失层不能工作。 这是我的最后一层:
layer { name: 'label_reshape' type: 'Reshape' bottom: 'anno' top: 'anno_reshaped' reshape_param { shape : {dim:0 dim:-1 dim:0 dim:0} }}
layer { bottom: 'score' bottom: 'anno_reshaped' top: 'loss' name: 'loss_tune' type: "EuclideanLoss" include: { phase: TRAIN }}
我有这个错误:
F0722 10:43:42.478071 10809 euclidean_loss_layer.cpp:12] Check failed: bottom[0]->count(1) == bottom[1]->count(1) (980000 vs. 981552) Inputs must have the same dimension.
我尝试使用重塑图层,但无法获得完全相同的大小..
有人知道如何解决这个问题吗?
【问题讨论】:
标签: neural-network protocol-buffers caffe labels