Skip to content

Commit 28f55c5

Browse files
Merge pull request #335 from Jordan-Pierce/dev
YOLOE fixes
2 parents a9ed534 + b9d0871 commit 28f55c5

35 files changed

+4085
-210
lines changed

coralnet_toolbox/Explorer/QtExplorer.py renamed to coralnet_toolbox/Explorer/QtExplorerWindow.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
import numpy as np
66
import torch
7+
78
import faiss
89

910
from ultralytics import YOLO

coralnet_toolbox/Explorer/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# coralnet_toolbox/Explorer/__init__.py
22

3-
from .QtExplorer import ExplorerWindow
3+
from .QtExplorerWindow import ExplorerWindow
44

55
__all__ = [
66
'ExplorerWindow',

coralnet_toolbox/Explorer/transformer_models.py

Lines changed: 28 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -11,35 +11,42 @@
1111
TRANSFORMER_MODELS = {
1212
'ResNet-50': 'microsoft/resnet-50',
1313
'ResNet-101': 'microsoft/resnet-101',
14+
'Swin Transformer (Tiny)': 'microsoft/swin-tiny-patch4-window7-224',
15+
'Swin Transformer (Base)': 'microsoft/swin-base-patch4-window7-224',
16+
'ViT (Base)': 'google/vit-base-patch16-224',
17+
'ViT (Large)': 'google/vit-large-patch16-224',
1418
'DINOv2 (Small)': 'facebook/dinov2-small',
1519
'DINOv2 (Base)': 'facebook/dinov2-base',
1620
'DINOv2 (Large)': 'facebook/dinov2-large',
1721
'DINOv2 (Giant)': 'facebook/dinov2-giant',
1822
'DINOv2 (Giant ImageNet1k)': 'facebook/dinov2-giant-imagenet1k-1-layer',
19-
'Swin Transformer (Tiny)': 'microsoft/swin-tiny-patch4-window7-224',
20-
'Swin Transformer (Base)': 'microsoft/swin-base-patch4-window7-224',
21-
'ViT (Base)': 'google/vit-base-patch16-224',
22-
'ViT (Large)': 'google/vit-large-patch16-224',
2323
}
2424

25-
# Check if HF_TOKEN environment variable is set
26-
# (if not, user can definitely not access the model)
27-
hf_token = os.getenv("HF_TOKEN")
25+
try:
26+
from transformers import pipeline
27+
from huggingface_hub import snapshot_download
28+
29+
# Check if HF_TOKEN environment variable is set
30+
# (if not, user can definitely not access the model)
31+
hf_token = os.getenv("HF_TOKEN")
32+
33+
if hf_token and hf_token.strip():
34+
# Add the DINOv3 models if the HuggingFace token is set
35+
TRANSFORMER_MODELS.update({
36+
'DINOv3 ConvNext (Tiny)': 'facebook/dinov3-convnext-tiny-pretrain-lvd1689m',
37+
'DINOv3 ConvNext (Small)': 'facebook/dinov3-convnext-small-pretrain-lvd1689m',
38+
'DINOv3 ConvNext (Base)': 'facebook/dinov3-convnext-base-pretrain-lvd1689m',
39+
'DINOv3 ConvNext (Large)': 'facebook/dinov3-convnext-large-pretrain-lvd1689m',
40+
'DINOv3 ViT (Small/16)': 'facebook/dinov3-vits16-pretrain-lvd1689m',
41+
'DINOv3 ViT (Small/16+)': 'facebook/dinov3-vits16plus-pretrain-lvd1689m',
42+
'DINOv3 ViT (Base/16)': 'facebook/dinov3-vitb16-pretrain-lvd1689m',
43+
'DINOv3 ViT (Large/16)': 'facebook/dinov3-vitl16-pretrain-lvd1689m',
44+
'DINOv3 ViT (Huge/16+)': 'facebook/dinov3-vith16plus-pretrain-lvd1689m',
45+
'DINOv3 ViT (7B/16)': 'facebook/dinov3-vit7b16-pretrain-lvd1689m',
46+
})
2847

29-
if hf_token and hf_token.strip():
30-
# Add the DINOv3 models if the HuggingFace token is set
31-
TRANSFORMER_MODELS.update({
32-
'DINOv3 ConvNext (Tiny)': 'facebook/dinov3-convnext-tiny-pretrain-lvd1689m',
33-
'DINOv3 ConvNext (Small)': 'facebook/dinov3-convnext-small-pretrain-lvd1689m',
34-
'DINOv3 ConvNext (Base)': 'facebook/dinov3-convnext-base-pretrain-lvd1689m',
35-
'DINOv3 ConvNext (Large)': 'facebook/dinov3-convnext-large-pretrain-lvd1689m',
36-
'DINOv3 ViT (Small/16)': 'facebook/dinov3-vits16-pretrain-lvd1689m',
37-
'DINOv3 ViT (Small/16+)': 'facebook/dinov3-vits16plus-pretrain-lvd1689m',
38-
'DINOv3 ViT (Base/16)': 'facebook/dinov3-vitb16-pretrain-lvd1689m',
39-
'DINOv3 ViT (Large/16)': 'facebook/dinov3-vitl16-pretrain-lvd1689m',
40-
'DINOv3 ViT (Huge/16+)': 'facebook/dinov3-vith16plus-pretrain-lvd1689m',
41-
'DINOv3 ViT (7B/16)': 'facebook/dinov3-vit7b16-pretrain-lvd1689m',
42-
})
48+
except Exception as e:
49+
pass
4350

4451

4552
def is_transformer_model(model_name):

coralnet_toolbox/Explorer/yolo_models.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,13 @@
3030
# 'YOLOv12 (Medium)': 'yolo12m-cls.pt',
3131
# 'YOLOv12 (Large)': 'yolo12l-cls.pt',
3232
# 'YOLOv12 (X-Large)': 'yolo12x-cls.pt',
33+
34+
# YOLO26 classification models
35+
'YOLO26 (Nano)': 'yolo26n-cls.pt',
36+
'YOLO26 (Small)': 'yolo26s-cls.pt',
37+
'YOLO26 (Medium)': 'yolo26m-cls.pt',
38+
'YOLO26 (Large)': 'yolo26l-cls.pt',
39+
'YOLO26 (X-Large)': 'yolo26x-cls.pt',
3340
}
3441

3542

coralnet_toolbox/Icons/camera.png

1.24 KB
Loading

0 commit comments

Comments
 (0)