anomalib1.0学习纪实-续2:三个文件夹

时间:2024-02-20 22:13:00

为了读懂程序,有三个最重要的文件夹,如下图:

正好对应四个类,如下图: 

四个类的来源如下图所示:

注意,MVTec是个大类,里面用到了这里的第四个类MVTecDataset,代码如下。
 

class MVTec(AnomalibDataModule):
    """MVTec Datamodule.
。。。省略

        self.train_data = MVTecDataset(
            task=task,
            transform=transform_train,
            split=Split.TRAIN,
            root=root,
            category=category,
        )
        self.test_data = MVTecDataset(
            task=task,
            transform=transform_eval,
            split=Split.TEST,
            root=root,
            category=category,
        )

而这个MVTecDataset的父类,就是AnomalibDataset,

AnomalibDataset可了不得,里面就有一个著名的子函数:__getitem__

放在一起你看看: