This repository contains the frontend for a video search system. The frontend interacts with the backend API, which is built using FastAPI and integrated with Elasticsearch for text data search. The system supports querying OCR, ASR, and object detection data, while also leveraging CLIP and FAISS for efficient image and text retrieval.
Before using this frontend, please make sure to set up the backend from aic_backend.
Follow these steps to set up and run the frontend.
First, clone the repository and navigate into the project directory:
git clone https://github.com/BeQuang/AIC2024
cd AIC2024Install all the required dependencies by running:
npm installBefore running Docker, make sure to update the path in the Docker configuration file. Specifically, you need to modify the "device" path for "data" to match the "backup" path. For example:
D:/Workspace/AIC2024/elasticsearch/dataReplace this with the corresponding path on your machine.
Extract the elasticsearch.zip file and run the Docker container inside the extracted folder:
- Unzip the elasticsearch.zip file.
- Navigate to the directory containing the Docker setup.
- Run the following command to start Elasticsearch via Docker:
cd elasticsearch
docker-compose up -dIf you encounter an error with exit code 78 when running Docker, follow the solution in this StackOverflow thread to resolve the issue.
Download the video dataset and image dataset to your machine Drive, then extract and set it up according to the following structure:
src/assets/videos/Videos_L01/L01_V001.mp4public/assets/images/Videos_L01/L01_V001/L01_V001_0.jpgEnsure that your hard drive has at least 40GB of free space before extracting the video files. The public folder is at the same level as the src folder.
After the setup is complete, start the frontend development server with:
npm run dev