EVA is a visual data management system (think MySQL for videos).
Project description
EVA (Exploratory Video Analytics)
What is EVA?
EVA is a visual data management system (think MySQL for videos). It supports a declarative language similar to SQL and a wide range of commonly used computer vision models.
What does EVA do?
-
EVA enables querying of visual data in user facing applications by providing a simple SQL-like interface for a wide range of commonly used computer vision models.
-
EVA improves throughput by introducing sampling, filtering, and caching techniques.
-
EVA improves accuracy by introducing state-of-the-art model specialization and selection algorithms.
Quick Links
Installation
Dependency
EVA requires Python 3.8 or later and JAVA 8. On Ubuntu, you can install the JAVA by sudo -E apt install -y openjdk-8-jdk openjdk-8-jre
.
Recommended
To install EVA, we recommend using virtual environment and pip:
python3 -m venv env38
. env38/bin/activate
pip install --upgrade pip
pip install evatestdb
Install from source
git clone https://github.com/georgia-tech-db/eva.git && cd eva
python3 -m venv env38
. env38/bin/activate
pip install --upgrade pip
sh script/antlr4/generate_parser.sh
pip install .
QuickStart
1. Set up the server and client - Activate the virtual environment: `. env37/bin/activate`
-
Launch EVA database Server:
eva_server
-
Launch CLI:
eva_client
- Run the
UPLOAD
command in the client terminal (use the ua_detrac.mp4 as an example):
UPLOAD INFILE 'data/ua_detrac/ua_detrac.mp4' PATH 'test_video.mp4';
- Run the
LOAD
command in the client terminal:
LOAD DATA INFILE 'test_video.mp4' INTO MyVideo;
- Below is a basic query that should work on the client
SELECT id, data FROM MyVideo WHERE id < 5;
Example Queries
- Search frames with a car
SELECT id, frame FROM MyVideo WHERE ['car'] <@ FastRCNNObjectDetector(frame).labels;
- Search frames with a pedestrian and a car
SELECT id, frame FROM MyVideo WHERE ['pedestrian', 'car'] <@ FastRCNNObjectDetector(frame).labels;
- Search frames containing greater than 3 cars
SELECT id, frame FROM DETRAC WHERE array_count(FastRCNNObjectDetector(frame).labels, 'car') > 3;
Documentation
You can find documentation for EVA here.
Contributing
To file a bug or request a feature, please file a GitHub issue. Pull requests are welcome.
For information on installing from source and contributing to EVA, see our contributing guidelines.
Contributors
See the people page for the full listing of contributors.
License
Copyright (c) 2018-2022 Georgia Tech Database Group Licensed under Apache License.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file evatestdb-0.0.56.tar.gz
.
File metadata
- Download URL: evatestdb-0.0.56.tar.gz
- Upload date:
- Size: 150.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 90dc66dd1be61c98930e6c1cc637032d734b415c0c7ab2c7087eff9b9961abd7 |
|
MD5 | 6d7be310c130ec7676173c499b1dc1ef |
|
BLAKE2b-256 | 11c2a8ae74a73423ea53ecb10e4fcca3efef0c237aa9897439561730745d8e16 |
File details
Details for the file evatestdb-0.0.56-py3-none-any.whl
.
File metadata
- Download URL: evatestdb-0.0.56-py3-none-any.whl
- Upload date:
- Size: 250.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | aa2a2f1f5046dcec9c6961a9d465ed4f0e9ae84a6b9a054893385c0981129d14 |
|
MD5 | a34480eb7d0b6a5d08ff67854c189196 |
|
BLAKE2b-256 | b9e426a7ecbaa23b6a67f31b30821a2a68efe0ffbae99f54d3d50bf0d8395758 |