回顾:细分、纵深、高端、上游、积累、极致。
回顾:资本化,规模化,国际化,大干快上,小农思维必死无疑。
春节在深圳新地中央,学习anomalib1.0。
一、安装:
1、常规安装
采用的是如下图的方式:
不过,后来运行时,还是提示如下:
还有很多东西需要安装啊.
那我又搞了一次:
pip install -e .[full]
增加的[full]什么意思呢?详见下面的图
2、 注意pytorch
我发现,
import torch
torch.cuda.is_available()
返回的结果是false。说明我的pytorch安装不成功。
我发现,根本原因是,anomalib要求的pytorch版本,2.1.2,必须要求cuda11.8以上。所以,
我重新安装cuda11.8和相应的cudnn。
并且重新安装下图版本的torch和torchvision
一直到 确认
import torch
torch.cuda.is_available()
返回true。
二、修改BUG
下图212行是我加的。没他就报错
三、train
在src文件夹下面,我搞了个mytrain.py文件。如下图:
文件内容如下:
# Import the required modules
from anomalib.data import MVTec
from anomalib.models import Patchcore
from anomalib.engine import Engine
# 在主模块中执行代码
if __name__ == '__main__':
# Initialize the datamodule, model and engine
datamodule = MVTec()
model = Patchcore()
engine = Engine()
# Train the model
engine.fit(datamodule=datamodule, model=model)
运行即可。
四、Infer
我把 .ckpt文件,拷贝到c盘根目录下,如下两图所示:
然后执行我的myinfer.py文件,
# Import the required modules
from anomalib.data import MVTec
from anomalib.models import Patchcore
from anomalib.engine import Engine
# 在主模块中执行代码
if __name__ == '__main__':
# Initialize the datamodule, model and engine
datamodule = MVTec()
model = Patchcore()
engine = Engine()
# Assuming the datamodule, model and engine is initialized from the previous step,
# a prediction via a checkpoint file can be performed as follows:
predictions = engine.predict(
datamodule=datamodule,
model=model,
ckpt_path="c:\\checkpoint.ckpt",
)
print("fack")
如果出现bug,请重新启动vscode试试。