A minimalistic webapp to perform zero shot object detection based on textual prompts using GroundingDINO
- Simply run the command
pip install -r requirements.txt
to install the dependencies. - Make sure you have CUDA installed and setup. For more details in setting GroundingDINO, please refer this.
- Clone this repository and install the dependencies as mentioned above.
- Create a
weights
directory and save the model checkpoints which can be downloaded from here. - Simply run the command:
streamlit run app.py
- Navigate to http://localhost:8501 in your web-browser.
- By default, streamlit allows us to upload files of max. 200MB. If you want to have more size for uploading images, execute the command :
streamlit run app.py --server.maxUploadSize=1028
Text Prompt: orange, pear, bowl, plum, pomegranate
- Ensure you have Docker Installed and Setup in your OS (Windows/Mac/Linux). For detailed Instructions, please refer this.
- Navigate to the folder where you have cloned this repository ( where the Dockerfile is present ).
- Build the Docker Image (don't forget the dot!! ๐ ):
docker build -f Dockerfile -t app:latest .
- Run the docker:
docker run -p 8501:8501 app:latest
This will launch the dockerized app. Navigate to http://localhost:8501/ in your browser to have a look at your application. You can check the status of your all available running dockers by:
docker
@article{liu2023grounding,
title={Grounding dino: Marrying dino with grounded pre-training for open-set object detection},
author={Liu, Shilong and Zeng, Zhaoyang and Ren, Tianhe and Li, Feng and Zhang, Hao and Yang, Jie and Li, Chunyuan and Yang, Jianwei and Su, Hang and Zhu, Jun and others},
journal={arXiv preprint arXiv:2303.05499},
year={2023}
}