Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

Awesome Machine Vision

A curated list of practical computer vision, machine vision, edge AI, object detection, datasets, annotation tools, deployment runtimes, and production resources.

Awesome GitHub Sponsors Topics

Machine vision is where cameras, models, sensors, infrastructure, and operations meet. This list focuses on tools that help people build real systems: fire and smoke monitoring, industrial inspection, agricultural vision, safety analytics, security cameras, traffic analytics, robotics, and edge AI deployments.

I maintain this list as part of my work with DevOps, infrastructure automation, monitoring, and production computer vision, including a real project for detecting smoke and fire on farms in Brazil.

Contents

Learning Paths

Practical Selection Guide

Use this quick map when choosing tools for a real project:

Scenario Start with Add when needed
Fast object detection prototype Ultralytics YOLO, Roboflow, OpenCV SAHI for small objects, FiftyOne for error analysis
Industrial inspection OpenCV, HALCON, camera SDKs calibration, controlled lighting, PLC or alert integration
Fire and smoke monitoring fire/smoke datasets, YOLO, video pipelines temporal smoothing, weather-aware thresholds, human review
Farm or rural camera deployment RTSP, edge device, local queue offline sync, camera health metrics, solar/power monitoring
Large dataset cleanup CVAT, Label Studio, FiftyOne Cleanlab, DVC, active learning workflows
Edge inference ONNX Runtime, OpenVINO, TensorRT model quantization, runtime benchmarks, watchdog monitoring
Production monitoring Prometheus, Grafana, Zabbix drift checks, false positive review, alert fatigue metrics

Before moving from a notebook to production, validate:

  • camera placement, lens condition, frame rate, and night/day behavior
  • latency on the target hardware, not only on a development machine
  • false positives and false negatives by scene, camera, and time of day
  • recovery behavior after network, power, or RTSP stream failures
  • model version, dataset version, thresholds, and alert rules

Core Libraries

  • OpenCV - The standard computer vision library for image processing, camera I/O, calibration, tracking, and classical CV.
  • scikit-image - Image processing algorithms for Python.
  • Pillow - Python Imaging Library fork for basic image handling.
  • Kornia - Differentiable computer vision library for PyTorch.
  • Albumentations - Fast image augmentation library widely used for detection and segmentation.
  • imgaug - Image augmentation for machine learning experiments.
  • TorchVision - PyTorch datasets, transforms, models, and vision utilities.
  • TensorFlow Image - TensorFlow image operations.
  • JAX Image - Image utilities for JAX workflows.

Object Detection

  • Ultralytics YOLO - Popular YOLO package for object detection, segmentation, pose, classification, tracking, and export.
  • YOLOv5 - Widely used YOLO implementation with a large ecosystem.
  • YOLOX - Anchor-free YOLO detector.
  • MMDetection - OpenMMLab object detection toolbox with many model families.
  • Detectron2 - Meta AI object detection and segmentation framework.
  • TensorFlow Object Detection API - TensorFlow model zoo and detection training pipeline.
  • PaddleDetection - Detection toolbox from PaddlePaddle.
  • RT-DETR - Real-time detection transformer.
  • D-FINE - Detection foundation model for real-time object detection.
  • DETR - End-to-end object detection with transformers.
  • Grounding DINO - Open-set object detection with language prompts.
  • OWLv2 - Open-vocabulary object detection model in Transformers.
  • SAHI - Slicing aided hyper inference for small object detection in large images.
  • Supervision - Reusable utilities for detections, annotations, tracking, zones, and counting.

Segmentation

Tracking

  • ByteTrack - Multi-object tracking by associating almost every detection box.
  • BoT-SORT - Robust multi-object tracker.
  • Deep SORT - Tracking-by-detection with deep appearance descriptors.
  • Norfair - Lightweight Python multi-object tracking library.
  • MMTracking - OpenMMLab video perception and tracking toolbox.
  • OpenCV Tracking - Classical tracking algorithms in OpenCV.

OCR and Document Vision

  • Tesseract OCR - Open source OCR engine.
  • PaddleOCR - Multilingual OCR toolkit.
  • EasyOCR - Ready-to-use OCR in Python.
  • docTR - Document text detection and recognition.
  • TrOCR - Transformer OCR models.
  • LayoutParser - Toolkit for document image analysis.
  • Donut - OCR-free document understanding transformer.

Pose, Face, and Human Analysis

  • MediaPipe - Cross-platform perception pipelines for pose, hands, face, and more.
  • OpenPose - Real-time multi-person keypoint detection.
  • MMPose - OpenMMLab pose estimation toolbox.
  • InsightFace - 2D and 3D face analysis.
  • DeepFace - Face recognition and facial attribute analysis.
  • face_recognition - Simple face recognition API built on dlib.
  • YOLO pose - Pose estimation with Ultralytics models.

Fire and Smoke Detection

Resources for wildfire detection, farm monitoring, environmental risk, cameras in rural areas, and early warning systems.

Practical notes for fire and smoke systems:

  • Use video clips, not only still images. Smoke evolves over time.
  • Include negative samples: clouds, fog, dust, sunlight, soil, shadows, machinery, and camera glare.
  • Separate fire, smoke, and smoke-like labels when possible.
  • Track false positives by camera, time of day, weather, crop type, and lens condition.
  • Add confidence thresholds by zone. A camera pointed at a road needs different thresholds from a camera pointed at dry pasture.
  • Keep human review in the loop for alarms that trigger operational response.

Agriculture, Environment, and Remote Monitoring

  • PlantCV - Image analysis software for plant phenotyping.
  • AgML - Agricultural machine learning datasets and tools.
  • DeepForest - Tree crown detection from aerial imagery.
  • TorchGeo - Geospatial datasets and models for PyTorch.
  • Raster Vision - Framework for deep learning on satellite and aerial imagery.
  • GeoPandas - Geospatial data analysis in Python.
  • QGIS - Open source geographic information system.
  • OpenDroneMap - Drone mapping and photogrammetry.
  • Sentinel Hub - Satellite imagery API and tooling.
  • NASA FIRMS - Fire Information for Resource Management System.

Industrial Machine Vision

  • HALCON - Commercial machine vision software for industrial inspection.
  • Cognex VisionPro - Industrial vision software.
  • Basler pylon SDK - Camera SDK for Basler industrial cameras.
  • FLIR Spinnaker SDK - Camera SDK for FLIR/Teledyne cameras.
  • GenICam - Generic programming interface for machine vision cameras.
  • Aravis - Vision library for GenICam cameras.
  • OpenPnP - Open source SMT pick-and-place software with machine vision components.
  • OpenCV Calibration - Camera calibration basics.

Datasets

  • COCO - Common Objects in Context dataset for detection, segmentation, and captioning.
  • Open Images - Large-scale image dataset with labels, boxes, and segmentation masks.
  • ImageNet - Large-scale image classification dataset.
  • Visual Genome - Dense annotations for objects, attributes, and relationships.
  • KITTI - Autonomous driving vision benchmark.
  • Cityscapes - Urban scene understanding dataset.
  • BDD100K - Driving dataset with images, video, detection, lane, and segmentation labels.
  • Mapillary Vistas - Street-level semantic segmentation dataset.
  • Roboflow Universe - Public computer vision datasets across many domains.
  • Kaggle Datasets - Public datasets for image classification, detection, and segmentation.
  • Hugging Face Datasets - Image datasets hosted on Hugging Face.
  • Papers With Code Datasets - Dataset index connected to papers and benchmarks.

Annotation Tools

  • CVAT - Open source annotation tool for images and videos.
  • Label Studio - Multi-modal data labeling platform.
  • LabelImg - Simple graphical image annotation tool.
  • Labelme - Polygon annotation tool.
  • Roboflow Annotate - Hosted annotation and dataset workflow.
  • VGG Image Annotator - Lightweight browser-based annotation tool.
  • makesense.ai - Free online image annotation tool.
  • Supervisely - Computer vision platform for annotation, training, and deployment.
  • Encord - Data platform for annotation and model evaluation.
  • Dataloop - Data management and annotation platform.

Dataset Management and Data Quality

  • FiftyOne - Dataset visualization, curation, evaluation, and error analysis.
  • Cleanlab - Find label errors and improve dataset quality.
  • Lightly - Data curation and active learning for computer vision.
  • DVC - Version control for data and ML pipelines.
  • LakeFS - Data lake version control.
  • Datumaro - Dataset management, conversion, and transformation.
  • FiftyOne Brain - Similarity, uniqueness, and mistake analysis.
  • Roboflow - Dataset hosting, conversion, augmentation, and deployment workflows.

Training Frameworks

  • PyTorch - Deep learning framework widely used in research and production.
  • TensorFlow - Deep learning framework with training and deployment ecosystem.
  • Keras - High-level deep learning API.
  • PyTorch Lightning - Structured PyTorch training.
  • Hugging Face Transformers - Vision transformers, multimodal models, and training utilities.
  • Hugging Face Accelerate - Distributed and mixed-precision training.
  • OpenMMLab - Ecosystem for detection, segmentation, pose, tracking, and deployment.
  • Ultralytics - End-to-end YOLO training, validation, prediction, export, and tracking.
  • timm - Large collection of PyTorch image models.
  • NVIDIA TAO Toolkit - Transfer learning toolkit for vision models.

Experiment Tracking and MLOps

  • MLflow - Experiment tracking, model registry, and deployment workflows.
  • Weights & Biases - Experiment tracking and model monitoring.
  • ClearML - Experiment management, orchestration, and data management.
  • DVC - Data and pipeline versioning.
  • Kubeflow - ML workflows on Kubernetes.
  • Metaflow - Human-friendly ML workflows.
  • ZenML - MLOps framework for pipelines.
  • BentoML - Model serving framework.
  • Seldon Core - Model deployment on Kubernetes.
  • KServe - Kubernetes model serving.

Model Evaluation

Production evaluation checklist:

  • Track false positives and false negatives separately.
  • Evaluate by camera, scene, lighting, weather, and time of day.
  • Save low-confidence and high-impact examples for review.
  • Use a holdout set that reflects real deployment cameras.
  • Measure latency, throughput, memory, and dropped frames, not only mAP.

Model Formats and Conversion

  • ONNX - Open Neural Network Exchange model format.
  • ONNX Runtime - Cross-platform inference runtime for ONNX models.
  • TensorRT - NVIDIA SDK for optimized deep learning inference.
  • OpenVINO - Intel toolkit for optimized model inference.
  • TensorFlow Lite - Lightweight inference for mobile and edge devices.
  • Core ML Tools - Convert models for Apple platforms.
  • NCNN - High-performance neural network inference framework for mobile.
  • MNN - Lightweight deep learning framework.
  • TVM - Deep learning compiler stack.
  • Open Neural Network Compiler - ONNX-MLIR compiler.

Inference Runtimes

Edge AI Hardware

Video Analytics and Streaming

  • GStreamer - Multimedia framework for video pipelines.
  • FFmpeg - Video processing, transcoding, and streaming.
  • MediaMTX - RTSP, RTMP, WebRTC, and HLS media server.
  • Frigate - NVR with real-time object detection.
  • ZoneMinder - Open source video surveillance software.
  • Shinobi - CCTV and NVR platform.
  • WebRTC - Real-time browser video transport.
  • RTSP - Common IP camera streaming protocol.
  • SRS - Simple Realtime Server for streaming.

Deployment Patterns

  • Camera to edge device to alerting API.
  • RTSP camera to GStreamer or FFmpeg pipeline to inference runtime.
  • Edge inference with local queue and cloud synchronization.
  • Batch image processing for drone, satellite, or inspection imagery.
  • Human-in-the-loop review dashboard for high-impact alerts.
  • Model service behind REST or gRPC with async worker queues.
  • Multi-camera deployment with per-camera thresholds and health checks.
  • Kubernetes deployment for centralized inference.
  • Offline-first deployment for rural areas with unstable connectivity.

Example fire/smoke production architecture:

IP cameras / rural towers
        |
        v
RTSP ingest -> frame sampler -> detection model -> temporal smoothing
        |                              |
        |                              v
        |                       event confidence
        v                              |
camera health                    alert rules
        |                              |
        v                              v
monitoring dashboard       WhatsApp/SMS/email/radio workflow
        |
        v
logs, clips, false positive review, retraining dataset

Monitoring Production Vision Systems

  • Prometheus - Metrics collection and alerting.
  • Grafana - Dashboards and observability.
  • Zabbix - Infrastructure and service monitoring.
  • OpenTelemetry - Observability standard for traces, metrics, and logs.
  • Loki - Log aggregation.
  • Sentry - Error tracking.
  • Evidently AI - ML monitoring and data drift checks.
  • WhyLabs - ML observability platform.

Useful metrics:

  • Camera online/offline state.
  • Frames per second received.
  • Frames per second processed.
  • Inference latency p50, p95, p99.
  • Model confidence distribution.
  • Alert count by camera and class.
  • False positive and false negative review counts.
  • Dropped frames and reconnect attempts.
  • Disk usage for video clips.
  • Temperature, CPU, GPU, RAM, and power status on edge devices.

Security, Privacy, and Responsible AI

Responsible deployment checklist:

  • Document what the model can and cannot detect.
  • Keep humans in the loop for safety-critical decisions.
  • Store only the video clips needed for verification and improvement.
  • Avoid face/person identification unless it is required and legally approved.
  • Record model versions, dataset versions, and alert rules.
  • Test under local weather, lighting, camera angle, and connectivity conditions.

Useful Awesome Lists

Contributing

Contributions are welcome. Good additions should be useful for people building real computer vision or machine vision systems.

Before adding a link, check:

  • Is the project active or still useful?
  • Does it solve a real computer vision problem?
  • Is the description clear and neutral?
  • Is it open source, documented, or widely used?
  • Would it help someone building, deploying, monitoring, or maintaining a vision system?

Suggested format:

- [Project Name](https://example.com) - One short sentence explaining why it matters.

Maintainer

Maintained by Marcos Max, DevOps and infrastructure engineer working with automation, monitoring, networking, Python, and production computer vision for smoke and fire detection in Brazilian farms.

If this list helps your work, consider supporting it through GitHub Sponsors.

About

Curated resources for practical computer vision, machine vision, edge AI, object detection, and fire/smoke monitoring systems.

Topics

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors