-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
- Loading branch information
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
{ | ||
"CurrentProjectSetting": null | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
{ | ||
"ExpandedNodes": [ | ||
"" | ||
], | ||
"SelectedNode": "\\train.py", | ||
"PreviewInSolutionExplorer": false | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,94 @@ | ||
## Contributing to YOLOv5 🚀 | ||
|
||
We love your input! We want to make contributing to YOLOv5 as easy and transparent as possible, whether it's: | ||
|
||
- Reporting a bug | ||
- Discussing the current state of the code | ||
- Submitting a fix | ||
- Proposing a new feature | ||
- Becoming a maintainer | ||
|
||
YOLOv5 works so well due to our combined community effort, and for every small improvement you contribute you will be | ||
helping push the frontiers of what's possible in AI 😃! | ||
|
||
## Submitting a Pull Request (PR) 🛠️ | ||
|
||
Submitting a PR is easy! This example shows how to submit a PR for updating `requirements.txt` in 4 steps: | ||
|
||
### 1. Select File to Update | ||
|
||
Select `requirements.txt` to update by clicking on it in GitHub. | ||
<p align="center"><img width="800" alt="PR_step1" src="https://user-images.githubusercontent.com/26833433/122260847-08be2600-ced4-11eb-828b-8287ace4136c.png"></p> | ||
|
||
### 2. Click 'Edit this file' | ||
|
||
Button is in top-right corner. | ||
<p align="center"><img width="800" alt="PR_step2" src="https://user-images.githubusercontent.com/26833433/122260844-06f46280-ced4-11eb-9eec-b8a24be519ca.png"></p> | ||
|
||
### 3. Make Changes | ||
|
||
Change `matplotlib` version from `3.2.2` to `3.3`. | ||
<p align="center"><img width="800" alt="PR_step3" src="https://user-images.githubusercontent.com/26833433/122260853-0a87e980-ced4-11eb-9fd2-3650fb6e0842.png"></p> | ||
|
||
### 4. Preview Changes and Submit PR | ||
|
||
Click on the **Preview changes** tab to verify your updates. At the bottom of the screen select 'Create a **new branch** | ||
for this commit', assign your branch a descriptive name such as `fix/matplotlib_version` and click the green **Propose | ||
changes** button. All done, your PR is now submitted to YOLOv5 for review and approval 😃! | ||
<p align="center"><img width="800" alt="PR_step4" src="https://user-images.githubusercontent.com/26833433/122260856-0b208000-ced4-11eb-8e8e-77b6151cbcc3.png"></p> | ||
|
||
### PR recommendations | ||
|
||
To allow your work to be integrated as seamlessly as possible, we advise you to: | ||
|
||
- ✅ Verify your PR is **up-to-date with upstream/master.** If your PR is behind upstream/master an | ||
automatic [GitHub actions](https://github.com/ultralytics/yolov5/blob/master/.github/workflows/rebase.yml) rebase may | ||
be attempted by including the /rebase command in a comment body, or by running the following code, replacing 'feature' | ||
with the name of your local branch: | ||
|
||
```bash | ||
git remote add upstream https://github.com/ultralytics/yolov5.git | ||
git fetch upstream | ||
git checkout feature # <----- replace 'feature' with local branch name | ||
git merge upstream/master | ||
git push -u origin -f | ||
``` | ||
|
||
- ✅ Verify all Continuous Integration (CI) **checks are passing**. | ||
- ✅ Reduce changes to the absolute **minimum** required for your bug fix or feature addition. _"It is not daily increase | ||
but daily decrease, hack away the unessential. The closer to the source, the less wastage there is."_ — Bruce Lee | ||
|
||
## Submitting a Bug Report 🐛 | ||
|
||
If you spot a problem with YOLOv5 please submit a Bug Report! | ||
|
||
For us to start investigating a possible problem we need to be able to reproduce it ourselves first. We've created a few | ||
short guidelines below to help users provide what we need in order to get started. | ||
|
||
When asking a question, people will be better able to provide help if you provide **code** that they can easily | ||
understand and use to **reproduce** the problem. This is referred to by community members as creating | ||
a [minimum reproducible example](https://stackoverflow.com/help/minimal-reproducible-example). Your code that reproduces | ||
the problem should be: | ||
|
||
* ✅ **Minimal** – Use as little code as possible that still produces the same problem | ||
* ✅ **Complete** – Provide **all** parts someone else needs to reproduce your problem in the question itself | ||
* ✅ **Reproducible** – Test the code you're about to provide to make sure it reproduces the problem | ||
|
||
In addition to the above requirements, for [Ultralytics](https://ultralytics.com/) to provide assistance your code | ||
should be: | ||
|
||
* ✅ **Current** – Verify that your code is up-to-date with current | ||
GitHub [master](https://github.com/ultralytics/yolov5/tree/master), and if necessary `git pull` or `git clone` a new | ||
copy to ensure your problem has not already been resolved by previous commits. | ||
* ✅ **Unmodified** – Your problem must be reproducible without any modifications to the codebase in this | ||
repository. [Ultralytics](https://ultralytics.com/) does not provide support for custom code ⚠️. | ||
|
||
If you believe your problem meets all of the above criteria, please close this issue and raise a new one using the 🐛 ** | ||
Bug Report** [template](https://github.com/ultralytics/yolov5/issues/new/choose) and providing | ||
a [minimum reproducible example](https://stackoverflow.com/help/minimal-reproducible-example) to help us better | ||
understand and diagnose your problem. | ||
|
||
## License | ||
|
||
By contributing, you agree that your contributions will be licensed under | ||
the [GPL-3.0 license](https://choosealicense.com/licenses/gpl-3.0/) |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,64 @@ | ||
# YOLOv5 🚀 by Ultralytics, GPL-3.0 license | ||
|
||
# Start FROM Nvidia PyTorch image https://ngc.nvidia.com/catalog/containers/nvidia:pytorch | ||
FROM nvcr.io/nvidia/pytorch:21.10-py3 | ||
|
||
# Install linux packages | ||
RUN apt update && apt install -y zip htop screen libgl1-mesa-glx | ||
|
||
# Install python dependencies | ||
COPY requirements.txt . | ||
RUN python -m pip install --upgrade pip | ||
RUN pip uninstall -y nvidia-tensorboard nvidia-tensorboard-plugin-dlprof | ||
RUN pip install --no-cache -r requirements.txt coremltools onnx gsutil notebook wandb>=0.12.2 | ||
RUN pip install --no-cache -U torch torchvision numpy Pillow | ||
# RUN pip install --no-cache torch==1.10.0+cu113 torchvision==0.11.1+cu113 -f https://download.pytorch.org/whl/cu113/torch_stable.html | ||
|
||
# Create working directory | ||
RUN mkdir -p /usr/src/app | ||
WORKDIR /usr/src/app | ||
|
||
# Copy contents | ||
COPY . /usr/src/app | ||
|
||
# Downloads to user config dir | ||
ADD https://ultralytics.com/assets/Arial.ttf /root/.config/Ultralytics/ | ||
|
||
# Set environment variables | ||
# ENV HOME=/usr/src/app | ||
|
||
|
||
# Usage Examples ------------------------------------------------------------------------------------------------------- | ||
|
||
# Build and Push | ||
# t=ultralytics/yolov5:latest && sudo docker build -t $t . && sudo docker push $t | ||
|
||
# Pull and Run | ||
# t=ultralytics/yolov5:latest && sudo docker pull $t && sudo docker run -it --ipc=host --gpus all $t | ||
|
||
# Pull and Run with local directory access | ||
# t=ultralytics/yolov5:latest && sudo docker pull $t && sudo docker run -it --ipc=host --gpus all -v "$(pwd)"/datasets:/usr/src/datasets $t | ||
|
||
# Kill all | ||
# sudo docker kill $(sudo docker ps -q) | ||
|
||
# Kill all image-based | ||
# sudo docker kill $(sudo docker ps -qa --filter ancestor=ultralytics/yolov5:latest) | ||
|
||
# Bash into running container | ||
# sudo docker exec -it 5a9b5863d93d bash | ||
|
||
# Bash into stopped container | ||
# id=$(sudo docker ps -qa) && sudo docker start $id && sudo docker exec -it $id bash | ||
|
||
# Clean up | ||
# docker system prune -a --volumes | ||
|
||
# Update Ubuntu drivers | ||
# https://www.maketecheasier.com/install-nvidia-drivers-ubuntu/ | ||
|
||
# DDP test | ||
# python -m torch.distributed.run --nproc_per_node 2 --master_port 1 train.py --epochs 3 | ||
|
||
# GCP VM from Image | ||
# docker.io/ultralytics/yolov5:latest |