Henryjiepanli / Uncertainty-aware-Network

UANet: an Uncertainty-Aware Network for Building Extraction from Remote Sensing Images
55 stars 4 forks source link

使用"massbuilding"数据时,遭遇参数计算错误。 #7

Closed yunxuanDLRS closed 5 months ago

yunxuanDLRS commented 5 months ago

您好!感谢您的贡献!

我在使用“Massachusetts Buildings Dataset_datasets”时,遇到如下错误: “”“ File "/root/autodl-tmp/BuildingExtraction/Uncertainty-aware-Network-master/tools/metric.py", line 67, in add_batch assert gt_image.shape == pre_image.shape, 'pre_image shape {}, gt_image shape {}'.format(pre_image.shape, AssertionError: pre_image shape (1536, 1536), gt_image shape (1536, 1536, 3) ”“”

这里显示预测结果与标签维度不匹配。加载的数据如下所示: “”“ train_dataset = MassBuildDataset(mosaic_ratio=0.25, transform=get_training_transform() train_loader = DataLoader(dataset=train_dataset, batch_size=12, num_workers=4, pin_memory=True, shuffle=True, drop_last=True).

for i, sample_batched in enumerate(train_loader): image, depth = sample_batched['img'], sample_batched['gt_semantic_seg'] print(image.shape) print(depth.shape) 输出: torch.Size([12, 3, 1024, 1024]) torch.Size([12, 1024, 1024, 3]) ...... ”“”

请问这种情况该如何解决?

Henryjiepanli commented 5 months ago

您好,这个应该是您标签哪里处理错了吧,标签的尺寸应该是(1536,1536),请仔细检查一下

-----原始邮件----- 发件人:yunxuan @.> 发送时间:2024-06-01 10:54:13 (星期六) 收件人: Henryjiepanli/Uncertainty-aware-Network @.> 抄送: Subscribed @.***> 主题: [Henryjiepanli/Uncertainty-aware-Network] 使用"massbuilding"数据时,遭遇参数计算错误。 (Issue #7)

您好!感谢您的贡献!

我在使用“Massachusetts Buildings Dataset_datasets”时,遇到如下错误: “”“ File "/root/autodl-tmp/BuildingExtraction/Uncertainty-aware-Network-master/tools/metric.py", line 67, in add_batch assert gt_image.shape == pre_image.shape, 'pre_image shape {}, gt_image shape {}'.format(pre_image.shape, AssertionError: pre_image shape (1536, 1536), gt_image shape (1536, 1536, 3) ”“”

这里显示预测结果与标签维度不匹配。加载的数据如下所示: “”“ train_dataset = MassBuildDataset(mosaic_ratio=0.25, transform=get_training_transform() train_loader = DataLoader(dataset=train_dataset, batch_size=12, num_workers=4, pin_memory=True, shuffle=True, drop_last=True).

for i, sample_batched in enumerate(train_loader): image, depth = sample_batched['img'], sample_batched['gt_semantic_seg'] print(image.shape) print(depth.shape) 输出: torch.Size([12, 3, 1024, 1024]) torch.Size([12, 1024, 1024, 3]) ...... ”“”

请问这种情况该如何解决?

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you are subscribed to this thread.Message ID: @.***>

yunxuanDLRS commented 5 months ago

您好!感谢您的回复! 我确信使用的是您提供的geoseg/datasets/mass_dataset.py中MassBuildDataset类来加载数据,但加载的结果就是torch.Size([12, 1024, 1024, 3])。请问是还有什么步骤没有执行到吗?

加载示例如截图所示。 屏幕截图 2024-06-01 125945

Henryjiepanli commented 5 months ago

您好!感谢您的回复! 我确信使用的是您提供的geoseg/datasets/mass_dataset.py中MassBuildDataset类来加载数据,但加载的结果就是torch.Size([12, 1024, 1024, 3])。请问是还有什么步骤没有执行到吗?

加载示例如截图所示。 屏幕截图 2024-06-01 125945

depth是什么,我看为什么打印的是depth?

yunxuanDLRS commented 5 months ago

您好!记得记得回复! 我完成了您提供的geoseg/datasets/mass_dataset.py中MassBuildDataset类来加载数据,但加载的结果就是torch.Size([12, 1024, 1024, 3])。 加载示例如图所示。正在播放 2024-06-01 125945

深度是什么,我看为什么打印的是深度?

就是mask。这是一个变量表示错误。 正确的展示如下 屏幕截图 2024-06-02 104537

Henryjiepanli commented 5 months ago

您好!记得记得回复! 我完成了您提供的geoseg/datasets/mass_dataset.py中MassBuildDataset类来加载数据,但加载的结果就是torch.Size([12, 1024, 1024, 3])。 加载示例如图所示。正在播放 2024-06-01 125945

深度是什么,我看为什么打印的是深度?

就是mask。这是一个变量表示错误。 正确的展示如下 屏幕截图 2024-06-02 104537

应该是你没有把标签进行one-hot编码,这个是[255,255,255]表示建筑物,[0,0,0]是背景,先要one-hot编码,转换为0,1