Создано для открытий
База кода, рассчитанная на исследователей, а не только на пользователей. Меняйте свободно, изучайте вглубь и публикуйтесь, не платя за такую возможность.
Никакой «исследовательской лицензии»
Некоторые фреймворки берут отдельную плату за «исследовательские» или «научные» лицензии — просто за то, чтобы вы могли изучать код, не публикуя свою работу. LibreYOLO — нет.
Типичные «научные лицензии»
- Платить за то, чтобы исследование осталось закрытым
- Плата за коммерческие исследования и разработку
- Запутанные уровни лицензий
- Юридическая проверка перед публикацией
LibreYOLO (MIT)
- Исследуйте свободно, оставляйте результат закрытым
- Ноль платежей для любого сценария
- Одна простая лицензия: MIT
- Публикуйтесь без юридических забот
Загляните внутрь чёрного ящика
Встроенные инструменты интерпретируемости и объяснимости. Никаких внешних зависимостей и сложной настройки — только флаги и вызовы функций.
Извлечение карт признаков
Один флаг. Больше ничего не нужно, чтобы сохранить промежуточные активации каждого слоя. То, что надо, чтобы понять, что модель «видит» на каждом этапе.
from libreyolo import LibreYOLO
# Enable feature map saving in constructor
model = LibreYOLO(
model_path="LibreYOLO11m.pt",
size="m",
save_feature_maps=True
)
# Run inference - feature maps auto-saved
results = model(image="parkour.jpg")
# Saved to: runs/feature_maps/
Визуализации CAM
Экспериментально7 встроенных методов Class Activation Map. Вызовите model.explain(), чтобы получить тепловые карты того, на что смотрит модель. Функция экспериментальная, результаты могут отличаться.
from libreyolo import LibreYOLO
model = LibreYOLO(model_path="LibreYOLO11m.pt", size="m")
# One-line CAM visualization
result = model.explain(
image="parkour.jpg",
method="gradcam",
target_layer="neck_c2f22",
save=True
)
# Returns heatmap and overlay
print(result["heatmap"].shape)Создано для доработки
База кода написана так, чтобы её было легко читать и менять. Хотите проверить новый бэкбон? Поэкспериментировать со своим механизмом внимания? Добавить новую функцию потерь? Вперёд.
# Your modified architecture
from libreyolo.models.yolov11 import YOLOv11
class YOLOv11Custom(YOLOv11):
def __init__(self):
super().__init__()
# Swap out the backbone
self.backbone = MyCustomBackbone()
def forward(self, x):
features = self.backbone(x)
return self.head(self.neck(features))
# Train it:
model = YOLOv11Custom()
model.train(data="my_dataset.yaml")Начните исследование сегодня
Никаких лицензионных отчислений. Никаких пейволлов. Никаких ограничений на закрытость вашей работы. Просто установите и начинайте.
$ pip install libreyolo