-
-
SPE infographic problem statement
-
SPE architecture diagram
-
SPE home / sources
-
SPE configure page
-
SPE analysis page
-
perfomance
-
Reporting page (send json via webhooks)
-
3 create endpoint wizard (name and url)
-
2 create endpoint wizard (filters and payload)
-
3 create endpoint wizard endpoint (finalising)
-
SPE sdk use case
-
Use case 2 n8n automation from SPE
SPATIAL INTELLIGENCE API ENGINE (SPE)
From Spy Glasses to Spatial Intelligence
Inspiration
Imagine James Bond walking into a room wearing a pair of ordinary-looking glasses. With a glance, he can identify people, recognise objects, understand his surroundings, and turn what he sees into actionable intelligence. What once seemed like science fiction is becoming possible through modern computer vision.
But behind that seemingly effortless intelligence lies a less glamorous reality.
As developers, we discovered that building computer vision applications can feel like assembling a spy's toolkit from a hundred different suppliers. One model detects people, another recognises vehicles, and another identifies safety equipment. Each comes with its own dependencies, configuration, data formats, and limitations. Switching models or deployment platforms can mean rewriting code, rebuilding pipelines, and solving the same integration problems all over again.
Even detecting an object is not enough. Real-world applications need to know where objects are, how they move, whether they enter restricted areas, and what actions should follow.
The real challenge is not simply teaching computers to see. It is making visual intelligence accessible, adaptable, and useful to the developers building the next generation of intelligent applications.
This inspired us to build the Spatial Intelligence API Engine (SPE): a platform designed to bridge the gap between computer vision models and real-world applications. Our goal is to reduce the complexity of building vision-powered systems by providing a common, model-agnostic foundation for turning visual inputs into structured, actionable spatial intelligence.
James Bond had his spy glasses. We want developers to have the tools to build their own version of that capability.
What it does
SPE provides a foundation for developing applications that understand the physical world through computer vision.
Instead of requiring developers to build every integration from scratch, SPE brings vision analysis and spatial context into a common engine designed to support different models and application requirements.
Its core capabilities include:
- Model-agnostic vision: A common approach to working with computer vision models without making the entire application dependent on one specific model or provider.
- Image and video analysis: Extracting visual information from images and video streams to identify objects and understand scenes.
- Spatial intelligence: Working with object locations, coordinates, regions of interest, and spatial relationships to provide context beyond simple object detection.
- Tracking and counting: Supporting the interpretation of objects across video frames, enabling applications to reason about movement and activity.
- Configurable analysis: Defining areas, boundaries, and conditions that help transform visual observations into application-specific insights.
- Integration-ready outputs: Structuring vision results so downstream applications can use them for monitoring, analytics, automation, and decision-making.
The larger goal is to make computer vision a reusable capability rather than a collection of isolated, model-specific implementations.
How we built it
We approached SPE from the perspective of developers who need to build practical applications, not just demonstrate that a model can detect an object.
The architecture separates the computer vision layer from the spatial interpretation and application layers. This separation is central to the model-agnostic approach: the engine should be able to accommodate different vision models while providing downstream applications with a consistent way to work with analysis results.
We developed the platform around several connected components:
- Vision analysis: Processing image and video inputs through computer vision models.
- Spatial representation: Working with object coordinates, regions of interest, boundaries, and other spatial information.
- Video analysis workflows: Handling frame processing, detections, tracking, and counting as parts of a broader analysis process.
- Analysis configuration: Allowing users to configure relevant analysis parameters and spatial areas.
- Application interface: Providing a user interface through which users can configure analysis, inspect results, and interact with spatial information.
- Integration and automation: Exploring how structured results can be connected to external systems and workflows that act on detected events.
Throughout development, we prioritised reusable components, separation of responsibilities, and a design that can evolve as new models, use cases, and deployment requirements emerge.
SPE is not intended to replace the innovation happening in computer vision models. It is intended to make those innovations easier to use in real applications.
Challenges we ran into
One of our biggest challenges was discovering that integrating computer vision models is rarely as simple as loading a model and running inference.
Different models come with different frameworks, dependencies, output formats, and hardware requirements. Integrating multiple models into one application can quickly become a maintenance challenge, especially when each model introduces its own runtime configuration and compatibility constraints.
Hardware and deployment compatibility proved particularly challenging. Some inference workflows depend on NVIDIA GPUs, specific CUDA versions, compatible GPU drivers, and framework builds designed for particular hardware configurations. Other models may have different requirements or support different execution environments. A solution that works on one machine may fail on another because of differences in GPU architecture, available memory, drivers, or software dependencies.
This creates a difficult trade-off for developers: spend valuable time managing infrastructure and troubleshooting compatibility issues, or spend that time building the actual application.
We also faced the architectural challenge of connecting multiple models while keeping the overall system reusable. Models can differ in the tasks they support, the information they return, and how their outputs should be interpreted. Building a common engine without assuming that every model behaves identically requires careful separation of model-specific logic from shared application functionality.
Video analysis introduced another layer of complexity. Detecting an object in one frame does not guarantee that it will be detected in the next. Maintaining tracking continuity, reliable counts, and consistent spatial information requires coordination between detection, tracking, and state management.
Finally, we had to balance technical flexibility with usability. Exposing every configuration option can overwhelm users, but hiding important hardware and model requirements can make deployment unpredictable. Designing an interface that simplifies analysis without concealing meaningful technical constraints remains an important consideration.
These challenges reinforced the motivation behind SPE: developers need more than access to computer vision models. They need a consistent way to integrate, configure, and use those models without allowing model-specific dependencies and hardware constraints to dictate the entire application architecture.
Our goal is not to eliminate every compatibility limitation or make all models interchangeable. It is to isolate model-specific requirements wherever possible, manage integrations through reusable components, and make the engine more adaptable across supported models and deployment environments.
Accomplishments that we're proud of
We are proud to have taken the idea of a reusable computer vision engine beyond the model-inference stage and toward a broader developer platform.
Our key accomplishments include:
- Establishing a model-agnostic architectural direction that separates vision models from downstream application logic.
- Bringing image and video analysis into a common application workflow.
- Incorporating spatial concepts such as coordinates and regions of interest into the analysis experience.
- Addressing the practical requirements of video analysis, including detection continuity, tracking, and counting.
- Developing configurable workflows that connect visual observations with application-specific conditions.
- Building an interface that makes computer vision analysis and spatial configuration more accessible to users.
- Identifying reliability, maintainability, and developer experience as core engineering priorities rather than afterthoughts.
Most importantly, we have established a foundation that can grow beyond a single computer vision model or a single use case.
We see SPE's greatest potential in the separation it creates between the technology that interprets visual inputs and the applications that use that information to solve real problems.
What we learned
We learned that computer vision is only one part of building an intelligent application.
A model can achieve impressive detection results in isolation, but real-world usefulness depends on everything around it: consistent outputs, reliable video processing, spatial context, tracking, event interpretation, and integration with the systems that need to act on the results.
We also learned that model agnosticism is an architectural commitment, not simply the ability to select a different model from a dropdown menu. It requires clear interfaces, reusable processing components, and a deliberate separation between general engine functionality and model-specific behaviour.
Another important lesson was that developer experience matters just as much as technical capability. If configuring an analysis, understanding a result, or integrating an output requires unnecessary effort, the platform has not fully solved the developer's problem.
We learned to think beyond individual detections and toward the lifecycle of information: how it enters the system, how it is interpreted, how its meaning persists over time, and how it becomes useful to another application.
Above all, we learned to approach computer vision as infrastructure for innovation. The objective is not merely to demonstrate what a model can do, but to make it easier for others to build something meaningful with it.
What's next for SPATIAL INTELLIGENCE API ENGINE
Our next step is to evolve SPE from a capable vision-analysis platform into a more complete spatial intelligence engine for developers.
We envision several areas of continued development:
- Broader model and hardware support: Expanding compatibility across vision models, inference runtimes, and deployment environments while maintaining consistent application-facing interfaces.
- More reliable video intelligence: Improving tracking continuity, identity persistence, counting accuracy, and the handling of intermittent detections.
- Richer spatial reasoning: Supporting more sophisticated relationships between objects, zones, boundaries, and movement patterns.
- Event-driven integrations: Making it easier for downstream applications to respond to spatial events through APIs, webhooks, and automation platforms.
- Developer-first APIs and documentation: Providing clear integration contracts, practical examples, and reusable components that reduce the time needed to build new applications.
- Scalable deployment: Progressing toward flexible deployment across different infrastructure configurations and resource constraints.
- Real-world validation: Testing the engine against practical use cases, varied environments, and different models to identify where reliability and usability can improve.
Our long-term vision is to make spatial intelligence a reusable building block for software development.
A developer building a workplace safety system should not have to reinvent video analysis. A team developing a traffic monitoring application should not have to rebuild spatial logic from scratch. A robotics engineer should be able to focus on the behaviour of the robot rather than repeatedly solving the same vision integration problems.
SPE aims to provide the common foundation that makes these applications easier to create, adapt, and maintain.
From spy-glass inspiration to developer-ready spatial intelligence, our mission is to turn the complexity of computer vision into an opportunity for innovation.
We are building toward a future where developers do not need to start from zero every time they want their software to understand the physical world.
They can start with SPE and focus on what comes next.
Built With
- amazon-web-services
- flask
- html
- javascript
- opencv
- python
- tailwind
- vscode
- web
- yolo
Log in or sign up for Devpost to join the conversation.