先说第一个,刚刚接触pytorch,自己写网络感觉没人教感觉不容易,所以哪怕写完一个小的函数也要自己设置输入,去验证一下。
前面读取数据的小函数写的确实没啥毛病,但是当我在pytorch里要用到Dataset的时候一写就牵扯到很多函数,好像没办法验证我这个写的有什么问题,或者说不明白我一个理想输入进去,输出是个啥,如果输出不对应那不是白忙活了。
然后我在引用我重写的Dataset类的时候发现pycharm后面竟然能引导到__init__、getitem、__len__等函数,这就好办多了啊!
所以我在主函数里准备好数据以后就调用了一下__getitem__这个函数,然后给它定义一个索引,果然可以正常输出(老哥我是真滴强,一次通过,虽然写的很简单吧哈哈)。
我把主题代码段贴一下:
#这是我重写的Dataset
class DataFormFolder(data.Dataset):
def __init__(self, args, input_data_process=None, target_data_process=None):
super(DataFormFolder, self).__init__()
self.input_filenames_list = get_hr_train_name(args)
self.target_filenames_list = get_lr_train_name(args)
self.input_data_process = input_data_process
self.target_data_process = target_data_process
def __getitem__(self, item):
inp