Welcome to the Ultralytics software directory! Our codebase is open-source and π distributed under the AGPL-3.0 license. Explore more about Ultralytics and our cutting-edge projects at our website.
This repository, located at https://github.com/ultralytics/xview-docker, is designed to help you dockerize and deploy machine learning models for the xView detection challenge π. It should be used in combination with the trained models from our xView YOLOv3 repository.
To get started, you need Docker and Python 3.6 (or newer). Ensure that you have all the required packages by installing them via pip:
pip3 install -U -r requirements.txt
You should have the following packages:
numpy
for numerical operations,scipy
for scientific computations,torch
as the deep learning framework, andopencv-python
for computer vision tasks.
Below are the steps to containerize this repository for the xView challenge using run.sh
.
Get the best performing checkpoint from our xView YOLOv3 model:
mkdir xview-docker/checkpoints
cp xview-yolov3/checkpoints/best.pt xview-docker/checkpoints
Here's how to remove older images, set the right permissions for the script, build the image, and tag it appropriately (e.g., ultralytics/xview:v30
):
sudo docker image prune -a
cd xview-docker && chmod +x run.sh
sudo docker build -t friendlyhello .
sudo docker tag friendlyhello ultralytics/xview:v30
Test the container with the example image while specifying CPU and memory usage:
time sudo docker run -it --memory=8g --cpus=1 ultralytics/xview:v30 bash -c './run.sh /1047.tif /tmp && cat /tmp/1047.tif.txt'
Here's a sample output:
Finally, upload the container to Docker Hub ready for challenge submission:
sudo docker push ultralytics/xview:v30
You can find the container now hosted at Docker Hub, prepared for the challenge π.
We welcome contributions from the community! Whether you're fixing bugs, adding new features, or improving documentation, your input is invaluable. Take a look at our Contributing Guide to get started. Also, we'd love to hear about your experience with Ultralytics products. Please consider filling out our Survey. A huge π and thank you to all of our contributors!
Ultralytics is excited to offer two different licensing options to meet your needs:
- AGPL-3.0 License: Perfect for students and hobbyists, this OSI-approved open-source license encourages collaborative learning and knowledge sharing. Please refer to the LICENSE file for detailed terms.
- Enterprise License: Ideal for commercial use, this license allows for the integration of Ultralytics software and AI models into commercial products without the open-source requirements of AGPL-3.0. For use cases that involve commercial applications, please contact us via Ultralytics Licensing.
For bug reports, feature requests, and contributions, head to GitHub Issues. For questions and discussions about this project and other Ultralytics endeavors, join us on Discord!