WAMAWAMA / TNSCUI2020-Seg-Rank1st

This is the source code of the 1st place solution for segmentation task in MICCAI 2020 TN-SCUI challenge.
481 stars 78 forks source link

ValueError: invalid literal for int() with base 10: '3jbOZBlx' #27

Closed DDxk369 closed 3 years ago

DDxk369 commented 3 years ago

大佬,还请教个问题,当我用自己的数据集跑的时候,报错如下所示,我发现您的数据文件都是用整数命名的,而我的都是字母,假如文件名不使用数字而是字母的话需要在哪里更改代码呢? per epoch training cost Time 00 h:26 m:09 s Epoch [1/40], Loss: 0.5587 1e-12 @,,@ testing with TTA Traceback (most recent call last): File "D:/TNSCUI2020-Seg-Rank1st-master/step2to4_train_validate_inference/step2_TrainAndValidate.py", line 188, in main(config) File "D:/TNSCUI2020-Seg-Rank1st-master/step2to4_train_validate_inference/step2_TrainAndValidate.py", line 114, in main solver.train() File "D:\TNSCUI2020-Seg-Rank1st-master\step2to4_train_validate_inference\tnscui_utils\solver.py", line 352, in train acc, SE, SP, PC, DC, IOU= self.test_tta(mode='valid') File "D:\TNSCUI2020-Seg-Rank1st-master\step2to4_train_validate_inference\tnscui_utils\solver.py", line 564, in test_tta tmp_index = int(tmpstr.split('\')[-1]) #tmp_index = int(tmpstr.split('\')[-1]) ValueError: invalid literal for int() with base 10: '3jbOZBlx'

WAMAWAMA commented 3 years ago

tmp_index 只是用来保存训练过程中的测试结果用到的 如果要修改,可以把int去掉,result_tmp直接存为list而不是转换为array 最后转换成字符写道csv里面,修改的地方大致在这三处附近(570594596

参考代码如下


# 不要转化为array
result_tmp = [tmp_index,
    get_accuracy(SR_tmp, GT_tmp),
    get_sensitivity(SR_tmp, GT_tmp),
    get_specificity(SR_tmp, GT_tmp),
    get_precision(SR_tmp, GT_tmp),
    get_DC(SR_tmp, GT_tmp),
    get_IOU(SR_tmp, GT_tmp)]

# 存到list
detail_result.append(result_tmp)

# 最后以str 的形式存到csv
import csv
with open(save_csv,'w',newline='') as f:
    writer=csv.writer(f)
    for ii in list_pinyin:
        tmpii = [str(f) for f in ii]
        writer.writerow([tmpii])
    f.close()

另外你这个是tta模式 普通模式的话,对应部分代码一样修改即可

DDxk369 commented 3 years ago

跪谢大佬 !ORZ 学分割就从你得代码入门了