deepvisiontools 1.0.2__tar.gz → 1.0.4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/PKG-INFO +8 -4
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/README.md +4 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/pyproject.toml +4 -4
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/__init__.py +1 -1
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/data/data.py +1 -1
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/datasets/base.py +1 -1
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/base/basemodel.py +56 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/commons/commonblocks.py +1 -1
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/smp/smp.py +1 -1
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/yolo/yolo.py +1 -1
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/yoloseg/yoloseg.py +1 -1
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/trainconfig.py +16 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/trainer.py +464 -130
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools.egg-info/PKG-INFO +8 -4
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools.egg-info/requires.txt +3 -3
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/LICENSE.txt +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/setup.cfg +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/cli.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/config/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/config/config.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/data/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/data/data_registry.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/data/operators.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/data/ops_registry.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/datasets/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/datasets/additional_augmentations.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/datasets/coco_dataset.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/datasets/semantic_dataset.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/download_demo_datasets.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/download_tutorials.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/evaluation/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/evaluation/evaluator.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/evaluation/writers.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/inference/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/inference/nms.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/inference/predictor.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/inference/strategies/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/inference/strategies/base.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/inference/strategies/detection.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/inference/strategies/instance.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/inference/strategies/semantic.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/inference/tiling.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/install_dcnv3.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/metrics/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/metrics/accumulators.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/metrics/engines.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/metrics/factories.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/metrics/metrics_core.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/metrics/per_sample_engine.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/metrics/suites.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/base/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/base/checkpoints.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/base/protocols.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/detector.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/detector_seg.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/backbones/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/backbones/backbones.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/commons/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/commons/headregistry.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/commons/neckregistry.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/commons/outputs.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/commons/specs.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/commons/utils.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/config.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/cocopretrained/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/cocopretrained/default_detector_convnextv2-base_cascade_maskrcnn.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/cocopretrained/default_detector_convnextv2-base_cascade_rcnn.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/cocopretrained/default_detector_convnextv2-base_vfnet_stardcn.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/cocopretrained/default_detector_convnextv2-huge_cascade_maskrcnn.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/cocopretrained/default_detector_convnextv2-huge_cascade_rcnn.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/cocopretrained/default_detector_convnextv2-huge_vfnet_stardcn.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/cocopretrained/default_detector_convnextv2-large_cascade_maskrcnn.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/cocopretrained/default_detector_convnextv2-large_cascade_rcnn.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/cocopretrained/default_detector_convnextv2-large_vfnet_stardcn.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/cocopretrained/default_detector_internimage-b-1k-224_cascade_maskrcnn.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/cocopretrained/default_detector_internimage-b-1k-224_cascade_rcnn.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/cocopretrained/default_detector_internimage-b-1k-224_vfnet_stardcn.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/cocopretrained/default_detector_internimage-h-22kto1k-640_cascade_maskrcnn.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/cocopretrained/default_detector_internimage-h-22kto1k-640_cascade_rcnn.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/cocopretrained/default_detector_internimage-h-22kto1k-640_vfnet_stardcn.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/cocopretrained/default_detector_internimage-xl-22kto1k-384_cascade_maskrcnn.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/cocopretrained/default_detector_internimage-xl-22kto1k-384_cascade_rcnn.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/cocopretrained/default_detector_internimage-xl-22kto1k-384_vfnet_stardcn.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/cocopretrained/default_tabdet_vit-base-patch16-dinov3_cascade_maskrcnn.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/cocopretrained/default_tabdet_vit-base-patch16-dinov3_cascade_rcnn.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/cocopretrained/default_tabdet_vit-base-patch16-dinov3_vfnet_stardcn.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/cocopretrained/default_tabdet_vit-giant-patch16-dinov3_cascade_maskrcnn.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/cocopretrained/default_tabdet_vit-giant-patch16-dinov3_cascade_rcnn.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/cocopretrained/default_tabdet_vit-huge-plus-patch16-dinov3_cascade_maskrcnn.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/cocopretrained/default_tabdet_vit-huge-plus-patch16-dinov3_cascade_rcnn.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/default_detector_cascade_maskrcnn.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/default_detector_cascade_rcnn.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/default_detector_vfnet.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/default_tabdet_cascade_rcnn.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/model_configs/default_tabdet_vfnet.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/config/yamlutils.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/facades/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/facades/detectors.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/facades/tabdets.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/heads/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/heads/headblocks.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/heads/heads.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/losses/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/losses/losses.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/losses/lossutils.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/necks/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/necks/neckblocks.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/necks/necks.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/tiling/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/models/tiling/tiling.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/tab_seg.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/detectors/tabdet.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/helpers/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/helpers/device_amp_helpers.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/helpers/preprocess_helpers.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/smp/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/yolo/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/yoloseg/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/configregistry.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/detectors_cocopretrained/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/detectors_cocopretrained/detector_convnextv2-base_cascade_maskrcnn_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/detectors_cocopretrained/detector_convnextv2-base_cascade_rcnn_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/detectors_cocopretrained/detector_convnextv2-base_vfnet_stardcn_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/detectors_cocopretrained/detector_convnextv2-huge_cascade_maskrcnn_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/detectors_cocopretrained/detector_convnextv2-huge_cascade_rcnn_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/detectors_cocopretrained/detector_convnextv2-huge_vfnet_stardcn_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/detectors_cocopretrained/detector_convnextv2-large_cascade_maskrcnn_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/detectors_cocopretrained/detector_convnextv2-large_cascade_rcnn_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/detectors_cocopretrained/detector_convnextv2-large_vfnet_stardcn_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/detectors_cocopretrained/detector_internimage-b-1k-224_cascade_maskrcnn_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/detectors_cocopretrained/detector_internimage-b-1k-224_cascade_rcnn_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/detectors_cocopretrained/detector_internimage-b-1k-224_vfnet_stardcn_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/detectors_cocopretrained/detector_internimage-h-22kto1k-640_cascade_maskrcnn_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/detectors_cocopretrained/detector_internimage-h-22kto1k-640_cascade_rcnn_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/detectors_cocopretrained/detector_internimage-h-22kto1k-640_vfnet_stardcn_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/detectors_cocopretrained/detector_internimage-xl-22kto1k-384_cascade_maskrcnn_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/detectors_cocopretrained/detector_internimage-xl-22kto1k-384_cascade_rcnn_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/detectors_cocopretrained/detector_internimage-xl-22kto1k-384_vfnet_stardcn_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/detectors_cocopretrained/tabdet_vit-base-patch16-dinov3_cascade_maskrcnn_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/detectors_cocopretrained/tabdet_vit-base-patch16-dinov3_cascade_rcnn_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/detectors_cocopretrained/tabdet_vit-base-patch16-dinov3_vfnet_stardcn_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/detectors_cocopretrained/tabdet_vit-giant-patch16-gap-224_cascade_maskrcnn_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/detectors_cocopretrained/tabdet_vit-giant-patch16-gap-224_cascade_rcnn_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/detectors_cocopretrained/tabdet_vit-huge-plus-patch16-dinov3_cascade_maskrcnn_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/detectors_cocopretrained/tabdet_vit-huge-plus-patch16-dinov3_cascade_rcnn_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/smp_unet_resnet50_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/yolo11l-seg_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/yolo11l_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/yolo11m-seg_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/yolo11m_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/yolo11n-seg_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/yolo11n_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/yolo11x-seg_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/availableconfigs/yolo11x_default_config.yaml +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/ema.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/hooks.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/llrd.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/loggers.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/train/optuna_wrapper.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/utils/__init__.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/utils/image_and_mask.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/utils/logging.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/utils/preprocessing.py +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools.egg-info/SOURCES.txt +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools.egg-info/dependency_links.txt +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools.egg-info/entry_points.txt +0 -0
- {deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: deepvisiontools
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.4
|
|
4
4
|
Summary: deepvisiontools is a library built on torch for training and inference processes for deep learning computer vision tasks.
|
|
5
5
|
Author-email: Lucas Bernigaud Samatan <lucas.bernigaud-samatan@inrae.fr>, Jordan Bernigaud Samatan <jordan.bernigaud-samatan@inrae.fr>
|
|
6
6
|
Maintainer-email: Jordan Bernigaud Samatan <jordan.bernigaud-samatan@inrae.fr>, Lucas Bernigaud Samatan <lucas.bernigaud-samatan@inrae.fr>
|
|
@@ -688,7 +688,7 @@ Requires-Dist: torch-tb-profiler<1.0,>=0.4.0
|
|
|
688
688
|
Requires-Dist: mlflow<4.0,>=3.1.0
|
|
689
689
|
Requires-Dist: fastapi!=0.136.3,<1.0
|
|
690
690
|
Requires-Dist: starlette<2.0,>=1.0.1
|
|
691
|
-
Requires-Dist: ultralytics<8.
|
|
691
|
+
Requires-Dist: ultralytics<8.4.57,>=8.3.28
|
|
692
692
|
Requires-Dist: transformers<6.0,>=5.0.0
|
|
693
693
|
Requires-Dist: colorcet<4.0,>=3.1.0
|
|
694
694
|
Requires-Dist: segmentation-models-pytorch<1.0,>=0.4.1
|
|
@@ -696,8 +696,8 @@ Requires-Dist: openpyxl<4.0,>=3.1.5
|
|
|
696
696
|
Requires-Dist: optuna<5.0,>=4.0.0
|
|
697
697
|
Requires-Dist: optuna-dashboard<1.0,>=0.20.0
|
|
698
698
|
Requires-Dist: huggingface_hub<2.0,>=1.5.0
|
|
699
|
-
Requires-Dist: pillow<13.0,>=12.
|
|
700
|
-
Requires-Dist: setuptools<
|
|
699
|
+
Requires-Dist: pillow<13.0,>=12.3.0
|
|
700
|
+
Requires-Dist: setuptools<84,>=83.0.0
|
|
701
701
|
Provides-Extra: dev
|
|
702
702
|
Requires-Dist: pytest<10.0,>=9.0; extra == "dev"
|
|
703
703
|
Requires-Dist: pytest-cov<8.0,>=7.0; extra == "dev"
|
|
@@ -729,10 +729,14 @@ Dynamic: license-file
|
|
|
729
729
|
|
|
730
730
|
## News
|
|
731
731
|
|
|
732
|
+
- Note that some error may occur while using yolo models. If so, check the ultralytics version and downgrade it to below or equal to 8.4.56. Otherwise simply upgrade deepvisiontools above or equal to 1.0.4.
|
|
733
|
+
|
|
732
734
|
- *release 1.0.0: detector / detector-seg / tabdet / tabdet-seg model wrappers are heavy but powerful models for detection and instance segmentation. However, they are not fully pretrained (only backbone on imagenet). Therefore, on small datasets (< 1000 images ish, but depend on the dataset ...) they can be slightly less competitive than yolo models (also included in the library) that were fully pretrained on coco. We are currently pretraining some of the models but it takes time. We are goind to update the weights once done, so keep tuned for new releases. We suggest you always train a yolo model as well for a baseline comparison. However, on larger datasets they can significantly outperform yolo11x, but again it depends on the dataset ...*
|
|
733
735
|
|
|
734
736
|
### patchs
|
|
735
737
|
|
|
738
|
+
- *1.0.4: fixed inconsistency for yolo wrappers due to modified behaviour in ultralytics forward above 8.4.56 versions. Setting stricted dependency on ultralytics*
|
|
739
|
+
- *1.0.3: fixed ddp desynchronization during validation, made ddp more robust, added ddp timeout control*
|
|
736
740
|
- *1.0.2: added option to concat datasets for deepvisiondataset (DeepVisionDataset.concat)*
|
|
737
741
|
- *1.0.1: fixed inconsistency for yolo wrappers due to modified behaviour in ultralytics between 8.3 and 8.4 versions. Fixed and compatible with both.*
|
|
738
742
|
|
|
@@ -12,10 +12,14 @@
|
|
|
12
12
|
|
|
13
13
|
## News
|
|
14
14
|
|
|
15
|
+
- Note that some error may occur while using yolo models. If so, check the ultralytics version and downgrade it to below or equal to 8.4.56. Otherwise simply upgrade deepvisiontools above or equal to 1.0.4.
|
|
16
|
+
|
|
15
17
|
- *release 1.0.0: detector / detector-seg / tabdet / tabdet-seg model wrappers are heavy but powerful models for detection and instance segmentation. However, they are not fully pretrained (only backbone on imagenet). Therefore, on small datasets (< 1000 images ish, but depend on the dataset ...) they can be slightly less competitive than yolo models (also included in the library) that were fully pretrained on coco. We are currently pretraining some of the models but it takes time. We are goind to update the weights once done, so keep tuned for new releases. We suggest you always train a yolo model as well for a baseline comparison. However, on larger datasets they can significantly outperform yolo11x, but again it depends on the dataset ...*
|
|
16
18
|
|
|
17
19
|
### patchs
|
|
18
20
|
|
|
21
|
+
- *1.0.4: fixed inconsistency for yolo wrappers due to modified behaviour in ultralytics forward above 8.4.56 versions. Setting stricted dependency on ultralytics*
|
|
22
|
+
- *1.0.3: fixed ddp desynchronization during validation, made ddp more robust, added ddp timeout control*
|
|
19
23
|
- *1.0.2: added option to concat datasets for deepvisiondataset (DeepVisionDataset.concat)*
|
|
20
24
|
- *1.0.1: fixed inconsistency for yolo wrappers due to modified behaviour in ultralytics between 8.3 and 8.4 versions. Fixed and compatible with both.*
|
|
21
25
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
[build-system]
|
|
2
|
-
requires = ["setuptools>=
|
|
2
|
+
requires = ["setuptools>=83.0.0,<84"]
|
|
3
3
|
build-backend = "setuptools.build_meta"
|
|
4
4
|
|
|
5
5
|
[project]
|
|
@@ -44,7 +44,7 @@ dependencies = [
|
|
|
44
44
|
"fastapi!=0.136.3,<1.0",
|
|
45
45
|
"starlette>=1.0.1,<2.0",
|
|
46
46
|
|
|
47
|
-
"ultralytics>=8.3.28,<8.
|
|
47
|
+
"ultralytics>=8.3.28,<8.4.57",
|
|
48
48
|
"transformers>=5.0.0,<6.0",
|
|
49
49
|
"colorcet>=3.1.0,<4.0",
|
|
50
50
|
"segmentation-models-pytorch>=0.4.1,<1.0",
|
|
@@ -52,8 +52,8 @@ dependencies = [
|
|
|
52
52
|
"optuna>=4.0.0,<5.0",
|
|
53
53
|
"optuna-dashboard>=0.20.0,<1.0",
|
|
54
54
|
"huggingface_hub>=1.5.0,<2.0",
|
|
55
|
-
"pillow>=12.
|
|
56
|
-
"setuptools>=
|
|
55
|
+
"pillow>=12.3.0,<13.0",
|
|
56
|
+
"setuptools>=83.0.0,<84",
|
|
57
57
|
]
|
|
58
58
|
|
|
59
59
|
[project.urls]
|
|
@@ -1887,7 +1887,7 @@ class BatchData:
|
|
|
1887
1887
|
"""
|
|
1888
1888
|
return [d.value for d in self.datas]
|
|
1889
1889
|
|
|
1890
|
-
def scores(self) -> list[torch.Tensor |
|
|
1890
|
+
def scores(self) -> list[torch.Tensor | SemanticLogits | None]:
|
|
1891
1891
|
"""
|
|
1892
1892
|
Return scores tensors for each item as a list.
|
|
1893
1893
|
"""
|
|
@@ -1273,7 +1273,7 @@ class DeepVisionLoader(DataLoader):
|
|
|
1273
1273
|
persistent_workers=False,
|
|
1274
1274
|
pin_memory_device="",
|
|
1275
1275
|
in_order=True,
|
|
1276
|
-
batch_augmenter:
|
|
1276
|
+
batch_augmenter: BatchAugmenter | None = None,
|
|
1277
1277
|
) -> None:
|
|
1278
1278
|
self.batch_augmenter = batch_augmenter
|
|
1279
1279
|
self.base_collate_fn = collate_fn
|
{deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/base/basemodel.py
RENAMED
|
@@ -243,6 +243,62 @@ class DeepVisionModel(torch.nn.Module):
|
|
|
243
243
|
|
|
244
244
|
# ----------------------------- core steps -----------------------------
|
|
245
245
|
|
|
246
|
+
def forward(
|
|
247
|
+
self,
|
|
248
|
+
images: torch.Tensor,
|
|
249
|
+
targets: BatchData | None = None,
|
|
250
|
+
*,
|
|
251
|
+
extra_args: dict[str, Any] | None = None,
|
|
252
|
+
mode: Literal["train", "eval", "valid", "predict"] = "train",
|
|
253
|
+
) -> ModelOutput:
|
|
254
|
+
"""
|
|
255
|
+
DDP-compatible forward dispatcher.
|
|
256
|
+
|
|
257
|
+
`DeepVisionModel` keeps the public high-level façade methods
|
|
258
|
+
`train_step`, `eval_step`, and `predict`. This `forward` method is the
|
|
259
|
+
module-level entrypoint used by wrappers such as
|
|
260
|
+
`torch.nn.parallel.DistributedDataParallel`, and dispatches to the same
|
|
261
|
+
façade methods without changing their behavior.
|
|
262
|
+
|
|
263
|
+
Args:
|
|
264
|
+
images (`torch.Tensor`): Image batch.
|
|
265
|
+
targets (`BatchData | None`): Optional target batch data.
|
|
266
|
+
extra_args (`dict[str, Any] | None`): Optional backend-specific
|
|
267
|
+
keyword payload forwarded to the selected façade method.
|
|
268
|
+
mode (`Literal["train", "eval", "valid", "predict"]`): Execution
|
|
269
|
+
path. `"train"` calls `train_step`, `"eval"` and `"valid"` call
|
|
270
|
+
`eval_step`, and `"predict"` calls `predict`.
|
|
271
|
+
|
|
272
|
+
Returns:
|
|
273
|
+
`ModelOutput`: Standard DeepVisionTools model output.
|
|
274
|
+
|
|
275
|
+
???+ note "DDP note"
|
|
276
|
+
```
|
|
277
|
+
In DDP, the Trainer must call the DDP wrapper itself, not
|
|
278
|
+
ddp.module.train_step(...). Calling the wrapper triggers PyTorch's
|
|
279
|
+
distributed forward/backward bookkeeping, while this dispatcher keeps
|
|
280
|
+
the DeepVisionTools façade API unchanged.
|
|
281
|
+
```
|
|
282
|
+
"""
|
|
283
|
+
if mode == "train":
|
|
284
|
+
return self.train_step(images, targets, extra_args=extra_args)
|
|
285
|
+
|
|
286
|
+
if mode in {"eval", "valid"}:
|
|
287
|
+
return self.eval_step(images, targets, extra_args=extra_args)
|
|
288
|
+
|
|
289
|
+
if mode == "predict":
|
|
290
|
+
if targets is not None:
|
|
291
|
+
raise ValueError(
|
|
292
|
+
"DeepVisionModel.forward(mode='predict') expects targets=None."
|
|
293
|
+
)
|
|
294
|
+
return self.predict(images, extra_args=extra_args)
|
|
295
|
+
|
|
296
|
+
raise ValueError(
|
|
297
|
+
"Unsupported DeepVisionModel.forward mode. "
|
|
298
|
+
"Expected one of {'train', 'eval', 'valid', 'predict'}, "
|
|
299
|
+
f"got {mode!r}."
|
|
300
|
+
)
|
|
301
|
+
|
|
246
302
|
def train_step(
|
|
247
303
|
self,
|
|
248
304
|
images: torch.Tensor,
|
|
@@ -56,7 +56,7 @@ class SMPBackend(Module):
|
|
|
56
56
|
else:
|
|
57
57
|
self.model = arch # already constructed
|
|
58
58
|
|
|
59
|
-
def forward(self, x: torch.Tensor, extra_args:
|
|
59
|
+
def forward(self, x: torch.Tensor, extra_args: dict | None = None) -> torch.Tensor:
|
|
60
60
|
"""
|
|
61
61
|
Forward once through the SMP model.
|
|
62
62
|
|
|
@@ -412,7 +412,7 @@ class YOLOBackend(Module):
|
|
|
412
412
|
|
|
413
413
|
self.pad_mult = _stride_from_arch(arch)
|
|
414
414
|
|
|
415
|
-
def forward(self, x: torch.Tensor, extra_args:
|
|
415
|
+
def forward(self, x: torch.Tensor, extra_args: dict | None = None):
|
|
416
416
|
"""
|
|
417
417
|
Single forward for train/eval.
|
|
418
418
|
|
{deepvisiontools-1.0.2 → deepvisiontools-1.0.4}/src/deepvisiontools/models/yoloseg/yoloseg.py
RENAMED
|
@@ -366,7 +366,7 @@ class YOLOSEGBackend(Module):
|
|
|
366
366
|
|
|
367
367
|
self.pad_mult = _stride_from_arch(arch)
|
|
368
368
|
|
|
369
|
-
def forward(self, x: torch.Tensor, extra_args:
|
|
369
|
+
def forward(self, x: torch.Tensor, extra_args: dict | None = None):
|
|
370
370
|
"""
|
|
371
371
|
Single forward for train/eval.
|
|
372
372
|
|
|
@@ -3,6 +3,7 @@ from __future__ import annotations
|
|
|
3
3
|
import copy
|
|
4
4
|
import datetime as _dt
|
|
5
5
|
import importlib
|
|
6
|
+
import math
|
|
6
7
|
import platform
|
|
7
8
|
import sys
|
|
8
9
|
from collections.abc import Callable, Sequence
|
|
@@ -371,6 +372,9 @@ class DevicesConfig:
|
|
|
371
372
|
```
|
|
372
373
|
- device=None + strategy="auto": choose "cuda" if available, else "cpu" with warning.
|
|
373
374
|
- strategy="auto" matches trainer logic (DDP if >1 GPU).
|
|
375
|
+
- ddp_timeout_seconds controls the distributed process-group timeout for
|
|
376
|
+
DDP collectives. If None, DDPStrategy reads DVT_DDP_TIMEOUT_SECONDS
|
|
377
|
+
when present, otherwise it uses its internal default.
|
|
374
378
|
```
|
|
375
379
|
"""
|
|
376
380
|
|
|
@@ -381,6 +385,9 @@ class DevicesConfig:
|
|
|
381
385
|
num_workers: int | None = None
|
|
382
386
|
pin_memory: bool | None = None
|
|
383
387
|
|
|
388
|
+
# None -> DDPStrategy env/default policy
|
|
389
|
+
ddp_timeout_seconds: float | None = None
|
|
390
|
+
|
|
384
391
|
def __post_init__(self) -> None:
|
|
385
392
|
if self.device is not None:
|
|
386
393
|
dev = str(self.device).strip().lower()
|
|
@@ -400,6 +407,15 @@ class DevicesConfig:
|
|
|
400
407
|
if self.pin_memory is not None:
|
|
401
408
|
self.pin_memory = bool(self.pin_memory)
|
|
402
409
|
|
|
410
|
+
if self.ddp_timeout_seconds is not None:
|
|
411
|
+
timeout = float(self.ddp_timeout_seconds)
|
|
412
|
+
if not math.isfinite(timeout) or timeout <= 0.0:
|
|
413
|
+
raise ValueError(
|
|
414
|
+
"DevicesConfig.ddp_timeout_seconds must be a positive finite "
|
|
415
|
+
f"number of seconds. Got {self.ddp_timeout_seconds!r}."
|
|
416
|
+
)
|
|
417
|
+
self.ddp_timeout_seconds = timeout
|
|
418
|
+
|
|
403
419
|
|
|
404
420
|
@dataclass
|
|
405
421
|
class WarmupConfig:
|