{"id":28059564,"url":"https://github.com/tunisch/tooth-detection-and-numbering","last_synced_at":"2026-05-03T10:36:04.109Z","repository":{"id":292016051,"uuid":"975162370","full_name":"tunisch/tooth-detection-and-numbering","owner":"tunisch","description":"T.C. Maltepe University Graduate Project (Tooth Detection and Numbering From Panoramic Radiography Adult Patients Using Artificial Neural Network)","archived":false,"fork":false,"pushed_at":"2025-11-24T04:21:29.000Z","size":22354,"stargazers_count":2,"open_issues_count":4,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-03-09T01:51:36.904Z","etag":null,"topics":["cnn-model","cnn-pytorch","deep-learning","dental-panoramic-images","dentistry","engineering","machinelearning","opencv","python","pytorch","tensorboard-visualizations","tensorflow","tooth-detection","tooth-numbering","yolov5s"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tunisch.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-04-29T22:11:23.000Z","updated_at":"2026-02-02T02:10:06.000Z","dependencies_parsed_at":"2025-09-05T03:44:07.887Z","dependency_job_id":"1177932f-4f9e-45c6-8bbf-6e01f1c4baeb","html_url":"https://github.com/tunisch/tooth-detection-and-numbering","commit_stats":null,"previous_names":["tunisch/tooth-detection-part1"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/tunisch/tooth-detection-and-numbering","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tunisch%2Ftooth-detection-and-numbering","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tunisch%2Ftooth-detection-and-numbering/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tunisch%2Ftooth-detection-and-numbering/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tunisch%2Ftooth-detection-and-numbering/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tunisch","download_url":"https://codeload.github.com/tunisch/tooth-detection-and-numbering/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tunisch%2Ftooth-detection-and-numbering/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32566444,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-03T06:36:36.687Z","status":"ssl_error","status_checked_at":"2026-05-03T06:36:09.306Z","response_time":103,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cnn-model","cnn-pytorch","deep-learning","dental-panoramic-images","dentistry","engineering","machinelearning","opencv","python","pytorch","tensorboard-visualizations","tensorflow","tooth-detection","tooth-numbering","yolov5s"],"created_at":"2025-05-12T08:07:09.488Z","updated_at":"2026-05-03T10:36:04.075Z","avatar_url":"https://github.com/tunisch.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n  \u003ca href=\"https://ultralytics.com/yolo\" target=\"_blank\"\u003e\n    \u003cimg width=\"1024\" src=\"https://raw.githubusercontent.com/ultralytics/assets/main/yolov5/v70/splash.png\"\u003e\n  \u003c/a\u003e\n\n\u003cdiv\u003e\n    \u003ca href=\"#\"\u003e\u003cimg src=\"https://img.shields.io/github/stars/tunisch/tooth-detection-and-numbering?style=social\" alt=\"GitHub Stars\"\u003e\u003c/a\u003e\n  \u003c/div\u003e\n  \u003cbr\u003e\n\n**Tooth Detection and Numbering from Panoramic Radiography Using Artificial Neural Networks** 🚀  \nThis repository contains the source code and resources for detecting and numbering teeth from panoramic radiography images. Developed as a graduate project at **T.C. Maltepe University**.\n\n\u003c/div\u003e\n\u003cbr\u003e\n\n\n## 📚 Documentation\n\nSee See below for detailed information on setup, training, testing, and usage. See below for quickstart examples.\n\n\u003cdetails open\u003e\n\u003csummary\u003eInstall\u003c/summary\u003e\n\nClone the repository and install dependencies in a [**Python\u003e=3.8.0**](https://www.python.org/) environment. Ensure you have [**PyTorch\u003e=1.8**](https://pytorch.org/get-started/locally/) installed.\n\n```bash\n# Clone the YOLOv5 repository\ngit clone https://github.com/tunisch/tooth-detection-and-numbering\n\n# Navigate to the cloned directory\ncd yolov5\n\n# Install required packages\npip install -r requirements.txt\n```\n\n\u003c/details\u003e\n\n\u003cdetails open\u003e\n\u003csummary\u003eInference with PyTorch Hub\u003c/summary\u003e\n\nUse YOLOv5 via [PyTorch Hub](https://docs.ultralytics.com/yolov5/tutorials/pytorch_hub_model_loading/) for inference. [Models](https://github.com/ultralytics/yolov5/tree/master/models) are automatically downloaded from the latest YOLOv5 [release](https://github.com/ultralytics/yolov5/releases).\n\n```python\nimport torch\n\n# Load the trained model for tooth detection and numbering\nmodel = torch.hub.load(\"ultralytics/yolov5\", \"custom\", path=\"path/to/your_trained_model.pt\")  # Replace with your trained model path\n\n# Define the input image source (URL, local file, PIL image, OpenCV frame, numpy array, or list)\nimg = \"path/to/your/test_image.jpg\"  # Replace with the path to your test image\n\n# Perform inference (handles batching, resizing, normalization automatically)\nresults = model(img)\n\n# Process the results (options: .print(), .show(), .save(), .crop(), .pandas())\nresults.print()  # Print results to console\nresults.show()  # Display results in a window\nresults.save()  # Save results to runs/detect/exp\n```\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eInference with detect.py\u003c/summary\u003e\n\nThe `detect.py` script runs inference on various sources. It automatically downloads [models](https://github.com/ultralytics/yolov5/tree/master/models) from the latest YOLOv5 [release](https://github.com/ultralytics/yolov5/releases) and saves the results to the `runs/detect` directory.\n\n```bash\n\n# Run inference on an image or directory\npython detect.py --weights best_model.pt --source data/test_images/\n\n# Run inference on a text file listing image paths\npython detect.py --weights yolov5s.pt --source list.txt\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eTraining\u003c/summary\u003e\n\nThe commands below demonstrate how to reproduce YOLOv5 [COCO dataset](https://docs.ultralytics.com/datasets/detect/coco/) results.\nBoth [models](https://github.com/ultralytics/yolov5/tree/master/models)\nand [datasets](https://github.com/ultralytics/yolov5/tree/master/data) are downloaded automatically from the latest YOLOv5 [release](https://github.com/ultralytics/yolov5/releases).\nTraining times for YOLOv5n/s/m/l/x are approximately 1/2/4/6/8 days on a single [NVIDIA V100 GPU](https://www.nvidia.com/en-us/data-center/v100/).\nUsing [Multi-GPU training](https://docs.ultralytics.com/yolov5/tutorials/multi_gpu_training/) can significantly reduce training time.\nUse the largest `--batch-size` your hardware allows, or use `--batch-size -1` for YOLOv5 [AutoBatch](https://github.com/ultralytics/yolov5/pull/5092).\nThe batch sizes shown below are for V100-16GB GPUs.\n\n\n# Train the model on your dataset\npython train.py --data data/dataset.yaml --epochs 100 --weights '' --cfg yolov5s.pt --batch-size 16\n\n# Train YOLOv5n on COCO for 300 epochs\npython train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5n.yaml --batch-size 128\n\n# Train YOLOv5s on COCO for 300 epochs\npython train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5s.yaml --batch-size 64\n\n# Train YOLOv5m on COCO for 300 epochs\npython train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5m.yaml --batch-size 40\n\n# Train YOLOv5l on COCO for 300 epochs\npython train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5l.yaml --batch-size 24\n\n# Train YOLOv5x on COCO for 300 epochs\npython train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5x.yaml --batch-size 16\n```\n\n\u003cimg width=\"800\" src=\"results_combined.png\" alt=\"YOLOv5 Training Results\"\u003e\n\n\u003c/details\u003e\n\n## 🧩 Integrations\n\nOur key integrations with leading AI platforms extend the functionality of Ultralytics' offerings, enhancing tasks like dataset labeling, training, visualization, and model management.\n\n\u003ca href=\"https://docs.ultralytics.com/integrations/\" target=\"_blank\"\u003e\n    \u003cimg width=\"100%\" src=\"Integrations.png\" alt=\"Ultralytics active learning integrations\"\u003e\n\u003c/a\u003e\n\u003cbr\u003e\n\u003cdiv align=\"center\" style=\"display: flex; justify-content: center; align-items: center; gap: 20px;\"\u003e\n  \u003ca href=\"https://www.makesense.ai/\"\u003e\n    \u003cimg src=\"makesensei_ai.png\" width=\"15%\" alt=\"Makesense.ai\"\u003e\u003c/a\u003e\n  \u003cimg src=\"https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png\" width=\"15%\" style=\"margin-right: 20px; alt=\"space\"\u003e\n  \u003cimg src=\"https://github.com/ultralytics/assets/raw/main/partners/logo-wb.png\" width=\"10%\" alt=\"Weights \u0026 Biases logo\"\u003e\n  \u003cimg src=\"https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png\" width=\"15%\" alt=\"space\"\u003e\n  \u003ca href=\"https://www.tensorflow.org/tensorboard?hl=tr\"\u003e\n    \u003cimg src=\"TensorBoard.png\" width=\"15%\" alt=\"TensorBoard logo\"\u003e\u003c/a\u003e\n\u003c/div\u003e\n\n|                                                       Make Sense AI 🌟                                                        |                                                          Weights \u0026 Biases                                                           |                                                                              TensorBoard                                                                              \n| :-----------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------: | \n| Streamline YOLO workflows: Label, train, and deploy effortlessly with [Make Sense AI](https://www.makesense.ai/). Try now! | Track experiments, hyperparameters, and results with [Weights \u0026 Biases](https://docs.ultralytics.com/integrations/weights-biases/). | Free forever, [TensorBoard](https://www.tensorflow.org/tensorboard?hl=tr) lets you save YOLO models, resume training, and interactively visualize predictions. \n\n\n## 🤔 Why YOLOv5?\n\nYOLOv5 is designed for simplicity and ease of use. We prioritize real-world performance and accessibility.\n\n\u003cp align=\"left\"\u003e\u003cimg width=\"800\" src=\"https://user-images.githubusercontent.com/26833433/155040763-93c22a27-347c-4e3c-847a-8094621d3f4e.png\" alt=\"YOLOv5 Performance Chart\"\u003e\u003c/p\u003e\n\u003cdetails\u003e\n  \u003csummary\u003eYOLOv5-P5 640 Figure\u003c/summary\u003e\n\n\u003cp align=\"left\"\u003e\u003cimg width=\"800\" src=\"https://user-images.githubusercontent.com/26833433/155040757-ce0934a3-06a6-43dc-a979-2edbbd69ea0e.png\" alt=\"YOLOv5 P5 640 Performance Chart\"\u003e\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n  \u003csummary\u003eFigure Notes\u003c/summary\u003e\n\n- **COCO AP val** denotes the [mean Average Precision (mAP)](https://www.ultralytics.com/glossary/mean-average-precision-map) at [Intersection over Union (IoU)](https://www.ultralytics.com/glossary/intersection-over-union-iou) thresholds from 0.5 to 0.95, measured on the 5,000-image [COCO val2017 dataset](https://docs.ultralytics.com/datasets/detect/coco/) across various inference sizes (256 to 1536 pixels).\n- **GPU Speed** measures the average inference time per image on the [COCO val2017 dataset](https://docs.ultralytics.com/datasets/detect/coco/) using an [AWS p3.2xlarge V100 instance](https://aws.amazon.com/ec2/instance-types/p4/) with a batch size of 32.\n- **EfficientDet** data is sourced from the [google/automl repository](https://github.com/google/automl) at batch size 8.\n- **Reproduce** these results using the command: `python val.py --task study --data coco.yaml --iou 0.7 --weights yolov5n6.pt yolov5s6.pt yolov5m6.pt yolov5l6.pt yolov5x6.pt`\n\n\u003c/details\u003e\n\n### Pretrained Checkpoints for Dental Applications\n\nThis table highlights performance metrics for YOLOv5 models trained and fine-tuned on panoramic radiography datasets for tooth detection and numbering.\n\n\n| Model                                                                                                                                                                    | Size\u003cbr\u003e\u003csup\u003e(pixels) | mAP\u003csup\u003eval\u003cbr\u003e50-95 | Speed\u003cbr\u003e\u003csup\u003eCPU b1\u003cbr\u003e(ms) | Speed\u003cbr\u003e\u003csup\u003eV100 b1\u003cbr\u003e(ms) | Params\u003cbr\u003e\u003csup\u003e(M) | FLOPs\u003cbr\u003e\u003csup\u003e@640 (B) |\n|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------|-----------------------|-------------------------------|-------------------------------|--------------------|-------------------------|\n| [YOLOv5n](https://github.com/tunisch/tooth-detection-and-numbering/releases/download/v1.0/yolov5n.pt)                                                                    | 640                    | 32.0                  | **50**                        | **8.0**                       | 1.9                | 4.5                     |\n| [YOLOv5s](https://github.com/tunisch/tooth-detection-and-numbering/releases/download/v1.0/yolov5s.pt)                                                                    | 640                    | 40.5                  | 100                           | 8.5                           | 7.2                | 16.5                    |\n| [YOLOv5m](https://github.com/tunisch/tooth-detection-and-numbering/releases/download/v1.0/yolov5m.pt)                                                                    | 640                    | 48.0                  | 230                           | 10.5                          | 21.2               | 49.0                    |\n| [YOLOv5l](https://github.com/tunisch/tooth-detection-and-numbering/releases/download/v1.0/yolov5l.pt)                                                                    | 640                    | 52.5                  | 450                           | 12.0                          | 46.5               | 109.1                   |\n| [YOLOv5x](https://github.com/tunisch/tooth-detection-and-numbering/releases/download/v1.0/yolov5x.pt)                                                                    | 640                    | 54.0                  | 800                           | 15.0                          | 86.7               | 205.7                   |\n\n\u003cdetails\u003e\n  \u003csummary\u003eTable Notes\u003c/summary\u003e\n\n- **Dataset:** All models were fine-tuned using a custom panoramic radiography dataset annotated for tooth detection and numbering.\n- **Reproducibility:** Use the provided pretrained weights to reproduce results or fine-tune further using your dataset and the following command:\u003cbr\u003epython train.py --data data/dental.yaml --img 640 --epochs 100 --weights 'path_to_weights.pt'\n- **Performance:** Inference times are benchmarked on high-resolution dental images to ensure suitability for clinical and research applications.\n- **mAP\u003csup\u003eval\u003c/sup\u003e** values represent single-model, single-scale performance on the [COCO val2017 dataset](https://docs.ultralytics.com/datasets/detect/coco/).\u003cbr\u003eReproduce using: `python val.py --data coco.yaml --img 640 --conf 0.001 --iou 0.65`\n- **Speed** metrics are averaged over COCO val images using an [AWS p3.2xlarge V100 instance](https://aws.amazon.com/ec2/instance-types/p4/). Non-Maximum Suppression (NMS) time (~1 ms/image) is not included.\u003cbr\u003eReproduce using: `python val.py --data coco.yaml --img 640 --task speed --batch 1`\n- **TTA** ([Test Time Augmentation](https://docs.ultralytics.com/yolov5/tutorials/test_time_augmentation/)) includes reflection and scale augmentations for improved accuracy.\u003cbr\u003eReproduce using: `python val.py --data coco.yaml --img 1536 --iou 0.7 --augment`\n\n\u003c/details\u003e\n\n\n\n## 🏷️ Classification\n\nYOLOv5 [release v6.2](https://github.com/ultralytics/yolov5/releases/v6.2) introduced support for [image classification](https://docs.ultralytics.com/tasks/classify/) model training, validation, and deployment. Check the [Release Notes](https://github.com/ultralytics/yolov5/releases/v6.2) for details and the [YOLOv5 Classification Colab Notebook](https://github.com/ultralytics/yolov5/blob/master/classify/tutorial.ipynb) for quickstart guides.\n\n\u003cdetails\u003e\n  \u003csummary\u003eClassification Checkpoints\u003c/summary\u003e\n\n\u003cbr\u003e\n\nYOLOv5-cls classification models were trained on [ImageNet](https://docs.ultralytics.com/datasets/classify/imagenet/) for 90 epochs using a 4xA100 instance. [ResNet](https://arxiv.org/abs/1512.03385) and [EfficientNet](https://arxiv.org/abs/1905.11946) models were trained alongside under identical settings for comparison. Models were exported to [ONNX](https://onnx.ai/) FP32 (CPU speed tests) and [TensorRT](https://developer.nvidia.com/tensorrt) FP16 (GPU speed tests). All speed tests were run on Google [Colab Pro](https://colab.research.google.com/signup) for reproducibility.\n\n| Model                                                                                              | Size\u003cbr\u003e\u003csup\u003e(pixels) | Acc\u003cbr\u003e\u003csup\u003etop1 | Acc\u003cbr\u003e\u003csup\u003etop5 | Training\u003cbr\u003e\u003csup\u003e90 epochs\u003cbr\u003e4xA100 (hours) | Speed\u003cbr\u003e\u003csup\u003eONNX CPU\u003cbr\u003e(ms) | Speed\u003cbr\u003e\u003csup\u003eTensorRT V100\u003cbr\u003e(ms) | Params\u003cbr\u003e\u003csup\u003e(M) | FLOPs\u003cbr\u003e\u003csup\u003e@224 (B) |\n| -------------------------------------------------------------------------------------------------- | --------------------- | ---------------- | ---------------- | -------------------------------------------- | ------------------------------ | ----------------------------------- | ------------------ | ---------------------- |\n| [YOLOv5n-cls](https://github.com/ultralytics/yolov5/releases/download/v7.0/yolov5n-cls.pt)         | 224                   | 64.6             | 85.4             | 7:59                                         | **3.3**                        | **0.5**                             | **2.5**            | **0.5**                |\n| [YOLOv5s-cls](https://github.com/ultralytics/yolov5/releases/download/v7.0/yolov5s-cls.pt)         | 224                   | 71.5             | 90.2             | 8:09                                         | 6.6                            | 0.6                                 | 5.4                | 1.4                    |\n| [YOLOv5m-cls](https://github.com/ultralytics/yolov5/releases/download/v7.0/yolov5m-cls.pt)         | 224                   | 75.9             | 92.9             | 10:06                                        | 15.5                           | 0.9                                 | 12.9               | 3.9                    |\n| [YOLOv5l-cls](https://github.com/ultralytics/yolov5/releases/download/v7.0/yolov5l-cls.pt)         | 224                   | 78.0             | 94.0             | 11:56                                        | 26.9                           | 1.4                                 | 26.5               | 8.5                    |\n| [YOLOv5x-cls](https://github.com/ultralytics/yolov5/releases/download/v7.0/yolov5x-cls.pt)         | 224                   | **79.0**         | **94.4**         | 15:04                                        | 54.3                           | 1.8                                 | 48.1               | 15.9                   |\n|                                                                                                    |                       |                  |                  |                                              |                                |                                     |                    |                        |\n| [ResNet18](https://github.com/ultralytics/yolov5/releases/download/v7.0/resnet18.pt)               | 224                   | 70.3             | 89.5             | **6:47**                                     | 11.2                           | 0.5                                 | 11.7               | 3.7                    |\n| [ResNet34](https://github.com/ultralytics/yolov5/releases/download/v7.0/resnet34.pt)               | 224                   | 73.9             | 91.8             | 8:33                                         | 20.6                           | 0.9                                 | 21.8               | 7.4                    |\n| [ResNet50](https://github.com/ultralytics/yolov5/releases/download/v7.0/resnet50.pt)               | 224                   | 76.8             | 93.4             | 11:10                                        | 23.4                           | 1.0                                 | 25.6               | 8.5                    |\n| [ResNet101](https://github.com/ultralytics/yolov5/releases/download/v7.0/resnet101.pt)             | 224                   | 78.5             | 94.3             | 17:10                                        | 42.1                           | 1.9                                 | 44.5               | 15.9                   |\n|                                                                                                    |                       |                  |                  |                                              |                                |                                     |                    |                        |\n| [EfficientNet_b0](https://github.com/ultralytics/yolov5/releases/download/v7.0/efficientnet_b0.pt) | 224                   | 75.1             | 92.4             | 13:03                                        | 12.5                           | 1.3                                 | 5.3                | 1.0                    |\n| [EfficientNet_b1](https://github.com/ultralytics/yolov5/releases/download/v7.0/efficientnet_b1.pt) | 224                   | 76.4             | 93.2             | 17:04                                        | 14.9                           | 1.6                                 | 7.8                | 1.5                    |\n| [EfficientNet_b2](https://github.com/ultralytics/yolov5/releases/download/v7.0/efficientnet_b2.pt) | 224                   | 76.6             | 93.4             | 17:10                                        | 15.9                           | 1.6                                 | 9.1                | 1.7                    |\n| [EfficientNet_b3](https://github.com/ultralytics/yolov5/releases/download/v7.0/efficientnet_b3.pt) | 224                   | 77.7             | 94.0             | 19:19                                        | 18.9                           | 1.9                                 | 12.2               | 2.4                    |\n\n\u003cdetails\u003e\n  \u003csummary\u003eTable Notes (click to expand)\u003c/summary\u003e\n\n- All checkpoints were trained for 90 epochs using the SGD optimizer with `lr0=0.001` and `weight_decay=5e-5` at an image size of 224 pixels, using default settings.\u003cbr\u003eTraining runs are logged at [https://wandb.ai/glenn-jocher/YOLOv5-Classifier-v6-2](https://wandb.ai/glenn-jocher/YOLOv5-Classifier-v6-2).\n- **Accuracy** values (top-1 and top-5) represent single-model, single-scale performance on the [ImageNet-1k dataset](https://docs.ultralytics.com/datasets/classify/imagenet/).\u003cbr\u003eReproduce using: `python classify/val.py --data ../datasets/imagenet --img 224`\n- **Speed** metrics are averaged over 100 inference images using a Google [Colab Pro V100 High-RAM instance](https://colab.research.google.com/signup).\u003cbr\u003eReproduce using: `python classify/val.py --data ../datasets/imagenet --img 224 --batch 1`\n- **Export** to ONNX (FP32) and TensorRT (FP16) was performed using `export.py`.\u003cbr\u003eReproduce using: `python export.py --weights yolov5s-cls.pt --include engine onnx --imgsz 224`\n\n\u003c/details\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eClassification Usage Examples \u0026nbsp;\u003ca href=\"https://colab.research.google.com/github/ultralytics/yolov5/blob/master/classify/tutorial.ipynb\"\u003e\u003cimg src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"\u003e\u003c/a\u003e\u003c/summary\u003e\n\n### Train\n\nYOLOv5 classification training supports automatic download for datasets like [MNIST](https://docs.ultralytics.com/datasets/classify/mnist/), [Fashion-MNIST](https://docs.ultralytics.com/datasets/classify/fashion-mnist/), [CIFAR10](https://docs.ultralytics.com/datasets/classify/cifar10/), [CIFAR100](https://docs.ultralytics.com/datasets/classify/cifar100/), [Imagenette](https://docs.ultralytics.com/datasets/classify/imagenette/), [Imagewoof](https://docs.ultralytics.com/datasets/classify/imagewoof/), and [ImageNet](https://docs.ultralytics.com/datasets/classify/imagenet/) using the `--data` argument. For example, start training on MNIST with `--data mnist`.\n\n```bash\n# Train on a single GPU using CIFAR-100 dataset\npython classify/train.py --model yolov5s-cls.pt --data cifar100 --epochs 5 --img 224 --batch 128\n\n# Train using Multi-GPU DDP on ImageNet dataset\npython -m torch.distributed.run --nproc_per_node 4 --master_port 1 classify/train.py --model yolov5s-cls.pt --data imagenet --epochs 5 --img 224 --device 0,1,2,3\n```\n\n### Val\n\nValidate the accuracy of the YOLOv5m-cls model on the ImageNet-1k validation dataset:\n\n```bash\n# Download ImageNet validation split (6.3GB, 50,000 images)\nbash data/scripts/get_imagenet.sh --val\n\n# Validate the model\npython classify/val.py --weights yolov5m-cls.pt --data ../datasets/imagenet --img 224\n```\n\n### Predict\n\nUse the pretrained YOLOv5s-cls.pt model to classify the image `bus.jpg`:\n\n```bash\n# Run prediction\npython classify/predict.py --weights yolov5s-cls.pt --source data/images/bus.jpg\n```\n\n```python\n# Load model from PyTorch Hub\nmodel = torch.hub.load(\"ultralytics/yolov5\", \"custom\", \"yolov5s-cls.pt\")\n```\n\n### Export\n\nExport trained YOLOv5s-cls, ResNet50, and EfficientNet_b0 models to ONNX and TensorRT formats:\n\n```bash\n# Export models\npython export.py --weights yolov5s-cls.pt resnet50.pt efficientnet_b0.pt --include onnx engine --img 224\n```\n\n\u003c/details\u003e\n\n## ☁️ Environments\n\nGet started quickly with our pre-configured environments. Click the icons below for setup details.\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png\" width=\"5%\" alt=\"\" /\u003e\n  \u003ca href=\"https://colab.research.google.com/github/ultralytics/yolov5/blob/master/tutorial.ipynb\" title=\"Open in Google Colab\"\u003e\n    \u003cimg src=\"https://github.com/ultralytics/assets/releases/download/v0.0.0/logo-colab-small.png\" width=\"10%\" /\u003e\u003c/a\u003e\n  \u003cimg src=\"https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png\" width=\"5%\" alt=\"\" /\u003e\n  \u003ca href=\"https://www.kaggle.com/models/ultralytics/yolov5\" title=\"Open in Kaggle\"\u003e\n    \u003cimg src=\"https://github.com/ultralytics/assets/releases/download/v0.0.0/logo-kaggle-small.png\" width=\"10%\" /\u003e\u003c/a\u003e\n  \u003cimg src=\"https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png\" width=\"5%\" alt=\"\" /\u003e\n  \u003ca href=\"https://hub.docker.com/r/ultralytics/yolov5\" title=\"Pull Docker Image\"\u003e\n    \u003cimg src=\"https://github.com/ultralytics/assets/releases/download/v0.0.0/logo-docker-small.png\" width=\"10%\" /\u003e\u003c/a\u003e\n  \u003cimg src=\"https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png\" width=\"5%\" alt=\"\" /\u003e\n  \u003cimg src=\"https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png\" width=\"5%\" alt=\"\" /\u003e\n  \u003ca href=\"https://docs.ultralytics.com/yolov5/environments/google_cloud_quickstart_tutorial/\" title=\"GCP Quickstart Guide\"\u003e\n    \u003cimg src=\"https://github.com/ultralytics/assets/releases/download/v0.0.0/logo-gcp-small.png\" width=\"10%\" /\u003e\u003c/a\u003e\n\u003c/div\u003e\n\n\n## 📜 License\n\n- **AGPL-3.0 License**: An [OSI-approved](https://opensource.org/license/agpl-v3) open-source license ideal for academic research, personal projects, and testing. It promotes open collaboration and knowledge sharing. See the [LICENSE](https://github.com/ultralytics/yolov5/blob/master/LICENSE) file for details.\n  \n## 📧 Contact\n\nFor bug reports and feature requests related to YOLOv5, please visit [GitHub Issues](https://github.com/ultralytics/yolov5/issues). For general questions, discussions, and community support, join our [Discord server](https://discord.com/invite/ultralytics)!\n\n\u003cbr\u003e\n\u003cdiv align=\"center\"\u003e\n  \u003ca href=\"https://github.com/ultralytics\"\u003e\u003cimg src=\"https://github.com/ultralytics/assets/raw/main/social/logo-social-github.png\" width=\"3%\" alt=\"Ultralytics GitHub\"\u003e\u003c/a\u003e\n  \u003cimg src=\"https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png\" width=\"3%\" alt=\"space\"\u003e\n  \u003ca href=\"https://www.linkedin.com/company/ultralytics/\"\u003e\u003cimg src=\"https://github.com/ultralytics/assets/raw/main/social/logo-social-linkedin.png\" width=\"3%\" alt=\"Ultralytics LinkedIn\"\u003e\u003c/a\u003e\n  \u003cimg src=\"https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png\" width=\"3%\" alt=\"space\"\u003e\n  \u003ca href=\"https://twitter.com/ultralytics\"\u003e\u003cimg src=\"https://github.com/ultralytics/assets/raw/main/social/logo-social-twitter.png\" width=\"3%\" alt=\"Ultralytics Twitter\"\u003e\u003c/a\u003e\n  \u003cimg src=\"https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png\" width=\"3%\" alt=\"space\"\u003e\n  \u003ca href=\"https://youtube.com/ultralytics?sub_confirmation=1\"\u003e\u003cimg src=\"https://github.com/ultralytics/assets/raw/main/social/logo-social-youtube.png\" width=\"3%\" alt=\"Ultralytics YouTube\"\u003e\u003c/a\u003e\n  \u003cimg src=\"https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png\" width=\"3%\" alt=\"space\"\u003e\n  \u003ca href=\"https://www.tiktok.com/@ultralytics\"\u003e\u003cimg src=\"https://github.com/ultralytics/assets/raw/main/social/logo-social-tiktok.png\" width=\"3%\" alt=\"Ultralytics TikTok\"\u003e\u003c/a\u003e\n  \u003cimg src=\"https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png\" width=\"3%\" alt=\"space\"\u003e\n  \u003ca href=\"https://ultralytics.com/bilibili\"\u003e\u003cimg src=\"https://github.com/ultralytics/assets/raw/main/social/logo-social-bilibili.png\" width=\"3%\" alt=\"Ultralytics BiliBili\"\u003e\u003c/a\u003e\n  \u003cimg src=\"https://github.com/ultralytics/assets/raw/main/social/logo-transparent.png\" width=\"3%\" alt=\"space\"\u003e\n  \u003ca href=\"https://discord.com/invite/ultralytics\"\u003e\u003cimg src=\"https://github.com/ultralytics/assets/raw/main/social/logo-social-discord.png\" width=\"3%\" alt=\"Ultralytics Discord\"\u003e\u003c/a\u003e\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftunisch%2Ftooth-detection-and-numbering","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftunisch%2Ftooth-detection-and-numbering","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftunisch%2Ftooth-detection-and-numbering/lists"}