1

我需要合并 RGB 和 YCRCB 通道,作为使用 mobilenet_1.0_224 模型对 tensorflow 进行再训练的输入数据。

/tensorflow/examples/image_retraining/retrain.py我在 func 中更改了文件get_random_distorted_bottlenecks

bottlenecks.append(bottleneck_values) 

ground_truths.append(ground_truth)

bottlenecks.append(bottleneck_values)
image = cv2.imread(image_path)
image_ycrcb = cv2.cvtColor(image,cv2.COLOR_RGB2YCrCb)
bottlenecks = np.dstack(bottlenecks, image_ycrcb)
ground_truths.append(ground_truth)

和 func create_bottleneck_file,我插入:

image = cv2.imread(image_path)
image_ycrcb = cv2.cvtColor(image,cv2.COLOR_RGB2YCrCb)
bottlenecks = np.dstack(bottleneck_values, image_ycrcb)

bottleneck_string = ','.join(str(x) for x in bottleneck_values)
with open(bottleneck_path, 'w') as bottleneck_file:
  bottleneck_file.write(bottleneck_string)

最后,我将“mobilenet”输入通道从3更改为6

我认为现在mobilenet-retraining的输入数据通道是6。我运行retrain.py,然后得到这个:

InvalidArgumentError(参见上面的回溯):通道必须是 0、1、3 或 4,得到 6
°°节点:DecodeJpeg_1 = DecodeJpeg°acceptable_fraction=1,channels=6,dct_method="",fancy_upscaling=true,ratio=1 , try_recover_truncated=false, _device="/job:localhost/replica:0/task:0/cpu:0"§(_arg_DistortJPGInput_0_0)§§

我该如何解决?是否合法更改频道超过 4 ?

4

0 回答 0