[英]Using U-net in Python with 3-channel input images for image segmentation
我的输入图像是 256x256x3。 而相应的分割掩码为 256x256。
我已将输入的大小更改为 Unet:
def unet(pretrained_weights = None,input_size = (256,256,3)):
并为 output 获得一个具有 256x256x1 层的网络
conv2d_144 (Conv2D) (None, 256, 256, 1) 2 conv2d_143[0][0]
在这里查看完整的架构。
当我尝试运行 using.fit_generator 时,出现以下错误:
ValueError: Error when checking target: expected conv2d_144 to have shape (256, 256, 1) but got array with shape (256, 256, 3)
我能做些什么来解决这个问题? 请让我知道我可以提供哪些额外信息!
谢谢!
PS:我在输出中有三个类,这可能是原因吗?
您必须决定是否需要图像的 RGB 或灰度输入:将图像转换为灰度或更改转换层。 另一种选择是将 256x256x3 输入展平为一维并将其用作输入。
实际上,我已经通过一次性编码我的分割掩码并将最后一层的激活 function 更改为 softmax 来修复它,并使用过滤器大小来匹配类的数量!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.