CityLens
CityLens is a service for capturing and processing images that allows you to:
- Get an image in driving mode through the mobile app.
- Process images, detect incidents and classify them using AI Computer Vision algorithms.
- Plan tasks for covering territories, analyze the results, and make reports.
Architecture
CityLens consists of the following components:
- Mobile Application — application for collecting tracks and frames.
- CityLens API — API for transferring data from external applications to Kafka (Broker on the diagram) and proxying requests from the mobile application.
- CityLens Routes API — API for creating driving tasks and building routes for them.
- CityLens Routes worker — service for internal planning operations: reading from Kafka (Broker on the diagram), analyzing task completion, and sending results to other services (2GIS Pro).
- CityLens Routes UI — React-based web application for managing tasks (Planner). Interacts with CityLens Routes API via HTTP.
- CityLens Web — web-based dashboard for managing detailed information on tasks, drivers, detections, and more.
Dependencies
Shared infrastructure:
- Apache Kafka — data storage for storing events, related to API keys.
- PostgreSQL — data storage for tasks.
- S3 storage — frames data storage.
- OpenID Connect provider to authorize users via Single Sign-On (SSO) technology. See the instruction on configuring an authentication provider.
Note
You can use alternatives from the unified register of Russian programs for the software listed above. For available alternatives, see the System requirements section.
On-Premise services:
- Maps service (with MapGL JS API)
- Search service (with Catalog APIs)
- Navigation service (with Directions API)
- 2GIS Pro
For more information on how to check requirements for each service, refer to the System requirements document.
What's next?
-
Find out how to install or update the service:
-
Read more about On-Premise: