Views
No views yet
| File | Description |
|---|---|
hybrid_resnet_densenet_checkpoint.pth | Training checkpoint |
best_hybrid_resnet_densenet.pth | Best validation accuracy weights ✅ (use this) |
1import torch
2from torchvision import transforms
3from PIL import Image
4
5# Load model (define your HybridModel class first)
6model = HybridModel(num_classes=38)
7model.load_state_dict(torch.load("best_hybrid_resnet_densenet.pth", map_location="cpu"))
8model.eval()
9
10transform = transforms.Compose([
11 transforms.Resize((224, 224)),
12 transforms.ToTensor(),
13 transforms.Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225])
14])
15
16img = transform(Image.open("leaf.jpg")).unsqueeze(0)
17with torch.no_grad():
18 logits = model(img)
19 probs = torch.softmax(logits, dim=1)[0]
20 top_p, top_idx = torch.topk(probs, k=3)
21
22 for i in range(len(top_p)):
23 print(f"Class: {top_idx[i].item()}, Confidence: {top_p[i].item():.2f}")