Segmenting lesioned T1s and getting subcortical volumes

Hi. Im trying to get the volumes for the Hammers ROI for a set of T1 that have lesions (zeroed out)
Initially I tried using FSL flirt to make sure the masked_t1 was in the hammers_atlas space. After that, i used fslmaths to get the volume of each ROI. This was the command:

    # Iterate over selected ROIs
    for roi_id, roi_name in lut.items():
        # Set lower and upper thresholds
        lower_thresh = roi_id - 1
        upper_thresh = roi_id + 1
        
        # Run fslstats command to calculate the volume
        try:
            command = [
                "fslstats",
                masked_file_path,
                "-l", str(lower_thresh),
                "-u", str(upper_thresh),
                "-V"
            ]

i ran a non lesioned image using this method and in cat12 to compare the volume outputs. the output i’m getting using FSL is way off (way way larger). Is the fslmaths command correct? should I move the subject into template space or the other way around? is this the best way to get the volume of subcortical ROIs for images with lesions?

many thanks for the help!