-
Notifications
You must be signed in to change notification settings - Fork 13
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
u87249350
committed
Dec 29, 2018
1 parent
49b9639
commit 49a38d3
Showing
160 changed files
with
21,803 additions
and
11,468 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,8 +1,8 @@ | ||
# This is an example .flake8 config, used when developing *Black* itself. | ||
# Keep in sync with setup.cfg which is used for source packages. | ||
|
||
[flake8] | ||
ignore = E203, E266, E501, W503 | ||
max-line-length = 80 | ||
max-complexity = 18 | ||
select = B,C,E,F,W,T4,B9 | ||
# This is an example .flake8 config, used when developing *Black* itself. | ||
# Keep in sync with setup.cfg which is used for source packages. | ||
|
||
[flake8] | ||
ignore = E203, E266, E501, W503 | ||
max-line-length = 80 | ||
max-complexity = 18 | ||
select = B,C,E,F,W,T4,B9 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,49 +1,49 @@ | ||
--- | ||
name: "\U0001F41B Bug Report" | ||
about: Submit a bug report to help us improve Mask R-CNN Benchmark | ||
|
||
--- | ||
|
||
## 🐛 Bug | ||
|
||
<!-- A clear and concise description of what the bug is. --> | ||
|
||
## To Reproduce | ||
|
||
Steps to reproduce the behavior: | ||
|
||
1. | ||
1. | ||
1. | ||
|
||
<!-- If you have a code sample, error messages, stack traces, please provide it here as well --> | ||
|
||
## Expected behavior | ||
|
||
<!-- A clear and concise description of what you expected to happen. --> | ||
|
||
## Environment | ||
|
||
Please copy and paste the output from the | ||
[environment collection script from PyTorch](https://raw.githubusercontent.com/pytorch/pytorch/master/torch/utils/collect_env.py) | ||
(or fill out the checklist below manually). | ||
|
||
You can get the script and run it with: | ||
``` | ||
wget https://raw.githubusercontent.com/pytorch/pytorch/master/torch/utils/collect_env.py | ||
# For security purposes, please check the contents of collect_env.py before running it. | ||
python collect_env.py | ||
``` | ||
|
||
- PyTorch Version (e.g., 1.0): | ||
- OS (e.g., Linux): | ||
- How you installed PyTorch (`conda`, `pip`, source): | ||
- Build command you used (if compiling from source): | ||
- Python version: | ||
- CUDA/cuDNN version: | ||
- GPU models and configuration: | ||
- Any other relevant information: | ||
|
||
## Additional context | ||
|
||
<!-- Add any other context about the problem here. --> | ||
--- | ||
name: "\U0001F41B Bug Report" | ||
about: Submit a bug report to help us improve Mask R-CNN Benchmark | ||
|
||
--- | ||
|
||
## 🐛 Bug | ||
|
||
<!-- A clear and concise description of what the bug is. --> | ||
|
||
## To Reproduce | ||
|
||
Steps to reproduce the behavior: | ||
|
||
1. | ||
1. | ||
1. | ||
|
||
<!-- If you have a code sample, error messages, stack traces, please provide it here as well --> | ||
|
||
## Expected behavior | ||
|
||
<!-- A clear and concise description of what you expected to happen. --> | ||
|
||
## Environment | ||
|
||
Please copy and paste the output from the | ||
[environment collection script from PyTorch](https://raw.githubusercontent.com/pytorch/pytorch/master/torch/utils/collect_env.py) | ||
(or fill out the checklist below manually). | ||
|
||
You can get the script and run it with: | ||
``` | ||
wget https://raw.githubusercontent.com/pytorch/pytorch/master/torch/utils/collect_env.py | ||
# For security purposes, please check the contents of collect_env.py before running it. | ||
python collect_env.py | ||
``` | ||
|
||
- PyTorch Version (e.g., 1.0): | ||
- OS (e.g., Linux): | ||
- How you installed PyTorch (`conda`, `pip`, source): | ||
- Build command you used (if compiling from source): | ||
- Python version: | ||
- CUDA/cuDNN version: | ||
- GPU models and configuration: | ||
- Any other relevant information: | ||
|
||
## Additional context | ||
|
||
<!-- Add any other context about the problem here. --> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,24 +1,24 @@ | ||
--- | ||
name: "\U0001F680Feature Request" | ||
about: Submit a proposal/request for a new Mask R-CNN Benchmark feature | ||
|
||
--- | ||
|
||
## 🚀 Feature | ||
<!-- A clear and concise description of the feature proposal --> | ||
|
||
## Motivation | ||
|
||
<!-- Please outline the motivation for the proposal. Is your feature request related to a problem? e.g., I'm always frustrated when [...]. If this is related to another GitHub issue, please link here too --> | ||
|
||
## Pitch | ||
|
||
<!-- A clear and concise description of what you want to happen. --> | ||
|
||
## Alternatives | ||
|
||
<!-- A clear and concise description of any alternative solutions or features you've considered, if any. --> | ||
|
||
## Additional context | ||
|
||
<!-- Add any other context or screenshots about the feature request here. --> | ||
--- | ||
name: "\U0001F680Feature Request" | ||
about: Submit a proposal/request for a new Mask R-CNN Benchmark feature | ||
|
||
--- | ||
|
||
## 🚀 Feature | ||
<!-- A clear and concise description of the feature proposal --> | ||
|
||
## Motivation | ||
|
||
<!-- Please outline the motivation for the proposal. Is your feature request related to a problem? e.g., I'm always frustrated when [...]. If this is related to another GitHub issue, please link here too --> | ||
|
||
## Pitch | ||
|
||
<!-- A clear and concise description of what you want to happen. --> | ||
|
||
## Alternatives | ||
|
||
<!-- A clear and concise description of any alternative solutions or features you've considered, if any. --> | ||
|
||
## Additional context | ||
|
||
<!-- Add any other context or screenshots about the feature request here. --> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
--- | ||
name: "❓Questions/Help/Support" | ||
about: Do you need support? | ||
|
||
--- | ||
|
||
## ❓ Questions and Help | ||
--- | ||
name: "❓Questions/Help/Support" | ||
about: Do you need support? | ||
|
||
--- | ||
|
||
## ❓ Questions and Help |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,30 +1,30 @@ | ||
# compilation and distribution | ||
__pycache__ | ||
_ext | ||
*.pyc | ||
*.so | ||
maskrcnn_benchmark.egg-info/ | ||
build/ | ||
dist/ | ||
|
||
# pytorch/python/numpy formats | ||
*.pth | ||
*.pkl | ||
*.npy | ||
|
||
# ipython/jupyter notebooks | ||
*.ipynb | ||
**/.ipynb_checkpoints/ | ||
|
||
# Editor temporaries | ||
*.swn | ||
*.swo | ||
*.swp | ||
*~ | ||
|
||
# Pycharm editor settings | ||
.idea | ||
|
||
# project dirs | ||
/datasets | ||
/models | ||
# compilation and distribution | ||
__pycache__ | ||
_ext | ||
*.pyc | ||
*.so | ||
maskrcnn_benchmark.egg-info/ | ||
build/ | ||
dist/ | ||
|
||
# pytorch/python/numpy formats | ||
*.pth | ||
*.pkl | ||
*.npy | ||
|
||
# ipython/jupyter notebooks | ||
*.ipynb | ||
**/.ipynb_checkpoints/ | ||
|
||
# Editor temporaries | ||
*.swn | ||
*.swo | ||
*.swp | ||
*~ | ||
|
||
# Pycharm editor settings | ||
.idea | ||
|
||
# project dirs | ||
/datasets | ||
/models |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,65 +1,65 @@ | ||
## Abstractions | ||
The main abstractions introduced by `maskrcnn_benchmark` that are useful to | ||
have in mind are the following: | ||
|
||
### ImageList | ||
In PyTorch, the first dimension of the input to the network generally represents | ||
the batch dimension, and thus all elements of the same batch have the same | ||
height / width. | ||
In order to support images with different sizes and aspect ratios in the same | ||
batch, we created the `ImageList` class, which holds internally a batch of | ||
images (os possibly different sizes). The images are padded with zeros such that | ||
they have the same final size and batched over the first dimension. The original | ||
sizes of the images before padding are stored in the `image_sizes` attribute, | ||
and the batched tensor in `tensors`. | ||
We provide a convenience function `to_image_list` that accepts a few different | ||
input types, including a list of tensors, and returns an `ImageList` object. | ||
|
||
```python | ||
from maskrcnn_benchmark.structures.image_list import to_image_list | ||
|
||
images = [torch.rand(3, 100, 200), torch.rand(3, 150, 170)] | ||
batched_images = to_image_list(images) | ||
|
||
# it is also possible to make the final batched image be a multiple of a number | ||
batched_images_32 = to_image_list(images, size_divisible=32) | ||
``` | ||
|
||
### BoxList | ||
The `BoxList` class holds a set of bounding boxes (represented as a `Nx4` tensor) for | ||
a specific image, as well as the size of the image as a `(width, height)` tuple. | ||
It also contains a set of methods that allow to perform geometric | ||
transformations to the bounding boxes (such as cropping, scaling and flipping). | ||
The class accepts bounding boxes from two different input formats: | ||
- `xyxy`, where each box is encoded as a `x1`, `y1`, `x2` and `y2` coordinates, and | ||
- `xywh`, where each box is encoded as `x1`, `y1`, `w` and `h`. | ||
|
||
Additionally, each `BoxList` instance can also hold arbitrary additional information | ||
for each bounding box, such as labels, visibility, probability scores etc. | ||
|
||
Here is an example on how to create a `BoxList` from a list of coordinates: | ||
```python | ||
from maskrcnn_benchmark.structures.bounding_box import BoxList, FLIP_LEFT_RIGHT | ||
|
||
width = 100 | ||
height = 200 | ||
boxes = [ | ||
[0, 10, 50, 50], | ||
[50, 20, 90, 60], | ||
[10, 10, 50, 50] | ||
] | ||
# create a BoxList with 3 boxes | ||
bbox = BoxList(boxes, image_size=(width, height), mode='xyxy') | ||
|
||
# perform some box transformations, has similar API as PIL.Image | ||
bbox_scaled = bbox.resize((width * 2, height * 3)) | ||
bbox_flipped = bbox.transpose(FLIP_LEFT_RIGHT) | ||
|
||
# add labels for each bbox | ||
labels = torch.tensor([0, 10, 1]) | ||
bbox.add_field('labels', labels) | ||
|
||
# bbox also support a few operations, like indexing | ||
# here, selects boxes 0 and 2 | ||
bbox_subset = bbox[[0, 2]] | ||
``` | ||
## Abstractions | ||
The main abstractions introduced by `maskrcnn_benchmark` that are useful to | ||
have in mind are the following: | ||
|
||
### ImageList | ||
In PyTorch, the first dimension of the input to the network generally represents | ||
the batch dimension, and thus all elements of the same batch have the same | ||
height / width. | ||
In order to support images with different sizes and aspect ratios in the same | ||
batch, we created the `ImageList` class, which holds internally a batch of | ||
images (os possibly different sizes). The images are padded with zeros such that | ||
they have the same final size and batched over the first dimension. The original | ||
sizes of the images before padding are stored in the `image_sizes` attribute, | ||
and the batched tensor in `tensors`. | ||
We provide a convenience function `to_image_list` that accepts a few different | ||
input types, including a list of tensors, and returns an `ImageList` object. | ||
|
||
```python | ||
from maskrcnn_benchmark.structures.image_list import to_image_list | ||
|
||
images = [torch.rand(3, 100, 200), torch.rand(3, 150, 170)] | ||
batched_images = to_image_list(images) | ||
|
||
# it is also possible to make the final batched image be a multiple of a number | ||
batched_images_32 = to_image_list(images, size_divisible=32) | ||
``` | ||
|
||
### BoxList | ||
The `BoxList` class holds a set of bounding boxes (represented as a `Nx4` tensor) for | ||
a specific image, as well as the size of the image as a `(width, height)` tuple. | ||
It also contains a set of methods that allow to perform geometric | ||
transformations to the bounding boxes (such as cropping, scaling and flipping). | ||
The class accepts bounding boxes from two different input formats: | ||
- `xyxy`, where each box is encoded as a `x1`, `y1`, `x2` and `y2` coordinates, and | ||
- `xywh`, where each box is encoded as `x1`, `y1`, `w` and `h`. | ||
|
||
Additionally, each `BoxList` instance can also hold arbitrary additional information | ||
for each bounding box, such as labels, visibility, probability scores etc. | ||
|
||
Here is an example on how to create a `BoxList` from a list of coordinates: | ||
```python | ||
from maskrcnn_benchmark.structures.bounding_box import BoxList, FLIP_LEFT_RIGHT | ||
|
||
width = 100 | ||
height = 200 | ||
boxes = [ | ||
[0, 10, 50, 50], | ||
[50, 20, 90, 60], | ||
[10, 10, 50, 50] | ||
] | ||
# create a BoxList with 3 boxes | ||
bbox = BoxList(boxes, image_size=(width, height), mode='xyxy') | ||
|
||
# perform some box transformations, has similar API as PIL.Image | ||
bbox_scaled = bbox.resize((width * 2, height * 3)) | ||
bbox_flipped = bbox.transpose(FLIP_LEFT_RIGHT) | ||
|
||
# add labels for each bbox | ||
labels = torch.tensor([0, 10, 1]) | ||
bbox.add_field('labels', labels) | ||
|
||
# bbox also support a few operations, like indexing | ||
# here, selects boxes 0 and 2 | ||
bbox_subset = bbox[[0, 2]] | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,5 @@ | ||
# Code of Conduct | ||
|
||
Facebook has adopted a Code of Conduct that we expect project participants to adhere to. | ||
Please read the [full text](https://code.fb.com/codeofconduct/) | ||
so that you can understand what actions will and will not be tolerated. | ||
# Code of Conduct | ||
|
||
Facebook has adopted a Code of Conduct that we expect project participants to adhere to. | ||
Please read the [full text](https://code.fb.com/codeofconduct/) | ||
so that you can understand what actions will and will not be tolerated. |
Oops, something went wrong.