gallenszl / CFNet

CFNet: Cascade and Fused Cost Volume for Robust Stereo Matching(CVPR2021)
MIT License
155 stars 23 forks source link

Some errors in the code #23

Closed gangweiX closed 2 years ago

gangweiX commented 2 years ago

for cfnet.py, First error: def generate_search_range(self, sample_count, input_min_disparity, input_max_disparity): """ Description: Generates the disparity search range. Returns: :min_disparity: Lower bound of disparity search range :max_disparity: Upper bound of disaprity search range. """

    min_disparity = torch.clamp(input_min_disparity - torch.clamp((
            sample_count - input_max_disparity + input_min_disparity), min=0) / 2.0, min=0, max=self.maxdisp)
    max_disparity = torch.clamp(input_max_disparity + torch.clamp(
            sample_count - input_max_disparity + input_min_disparity, min=0) / 2.0, min=0, max=self.maxdisp)

    return min_disparity, max_disparity

it should be "min_disparity = torch.clamp(input_min_disparity - torch.clamp(( sample_count - input_max_disparity + input_min_disparity), min=0) / 2.0, min=0, max=self.maxdisp//4-1) max_disparity = torch.clamp(input_max_disparity + torch.clamp( sample_count - input_max_disparity + input_min_disparity, min=0) / 2.0, min=0, max=self.maxdisp//4-1)" or "min_disparity = torch.clamp(input_min_disparity - torch.clamp(( sample_count - input_max_disparity + input_min_disparity), min=0) / 2.0, min=0, max=self.maxdisp//2-1) max_disparity = torch.clamp(input_max_disparity + torch.clamp( sample_count - input_max_disparity + input_min_disparity, min=0) / 2.0, min=0, max=self.maxdisp//2-1)"

Second error: in line 643 of cfnet.py, it should be "predmid_s2 = F.upsample(predmid_s2 2, [left.size()[2], left.size()[3]], mode='bilinear', align_corners=True)", not "predmid_s2 = F.upsample(predmid_s2 4, [left.size()[2], left.size()[3]], mode='bilinear', align_corners=True)"

gallenszl commented 2 years ago

Thank you very much! I have fixed the two bugs in the cfnet.py file.