Skip to main content

The Plainsight Way: Developing Computer Vision Applications

Introduction

The "Plainsight Way" is a structured and scalable approach to developing computer vision applications. It is designed to help Embedded Vision Providers (EVPs) build, deploy, and manage sophisticated vision pipelines efficiently.

Plainsight provides a robust ecosystem of tools, templates, and support services, enabling EVPs to focus on their core expertise—integrating and customizing solutions to meet end-customer needs.

Responsibilities Overview

The development of computer vision applications requires a collaborative effort between Plainsight and the EVP. Below is a high-level breakdown of each party's responsibilities.

Plainsight Responsibilities

Plainsight provides the foundational infrastructure, tools, and best practices necessary for building, testing, and deploying vision applications efficiently.

  • Utility Filters: A library of pre-built filters designed to perform common transformations (cropping, resizing, filtering, format conversions, etc.).
  • Custom Filter Development Support: A framework for building and publishing custom filters, allowing EVPs to extend functionality.
  • Computer Vision Recipes: Pre-configured workflows that handle routine vision tasks, such as image collection, pre-processing, and model execution.
  • Protege – Model Training and Evaluation: A platform to train, evaluate, and benchmark custom models using labeled datasets.
  • Testing and Deployment Tools:
    • Al-Haytham Filter Output Verification Tool for performance benchmarking and quality assurance.
    • Jester Data Ingestion Service for automated data handling and pre-processing.
  • Templates and Examples: Example Docker Compose configurations and deployment templates for rapid prototyping.
  • Cloud-based Orchestration and Deployment: Services and tools for running Filters in cloud environments via Vision Flow, Vision Stream, and Vision Edge.
  • Ongoing Support and Consultation: Assistance with debugging, performance optimization, and customization.
  • Future Enhancements: Features like data lineage tracking, dataset curation, and advanced filter orchestration will be integrated into the platform.

EVP Responsibilities

As the primary integrator, the EVP plays a crucial role in adapting Plainsight’s technology to real-world use cases and customer environments.

  • Providing Data: Ensure the availability of quality data for model training and evaluation.
  • Filter Integration and Customization:
    • Configure and manage Docker Compose files to deploy and orchestrate Filters.
    • Customize utility filters for domain-specific applications.
  • Processing Subject Data: Handle the results generated by application filters, integrating them into customer applications and analytics pipelines.
  • Building Custom Filters: Develop specialized filters using Plainsight’s framework to extend platform capabilities.

Development Workflow Summary

Below is a high-level summary of the key steps involved in developing a computer vision application using Plainsight's ecosystem:

  • Data Collection & Ingestion (Data ingestion recipes)
  • Preprocessing & Annotation (Jester, Data Curation Tools) 🟡
  • Model Training & Evaluation (Protege, Encord Integration)
  • Filter Development & Configuration (Filter SDK, Utility Filters)
  • Testing & Benchmarking (Al-Haytham, Filter Output Verification)
  • Deployment & Orchestration (Vision Flow, Vision Stream, Vision Edge) 🟡
  • Monitoring & Continuous Improvement (Telemetry Tools, Data Lineage Tracking) 🔜

✅ Fully Available 🟡 In Progress 🔜 Coming Soon

Plainsight Tools and Their Roles

ToolPurpose
JesterAutomates data ingestion, preprocessing, and management.
ProtegeModel training and evaluation platform.
Al-HaythamBenchmarking and verification tool for filter outputs.
Filter SDKFramework for building and deploying filters.
Vision Flow, Vision Stream, Vision EdgeOrchestrate filter execution in cloud, batch, and edge environments.
Telemetry & Lineage ToolsMonitor filter execution and track data lineage.

By following the Plainsight Way, EVPs can efficiently develop, deploy, and optimize computer vision applications, ensuring high performance and reliability in real-world deployments.