- 19 Feb, 2019 4 commits
-
-
Csaba Botos authored
-
Csaba Botos authored
* Remove Detectron dependency I have looked into the boxes.py to swap [these lines](https://github.com/facebookresearch/Detectron/blob/8170b25b425967f8f1c7d715bea3c5b8d9536cd8/detectron/utils/boxes.py#L51L52): ``` import detectron.utils.cython_bbox as cython_bbox import detectron.utils.cython_nms as cython_nms ``` ``` from maskrcnn_benchmark.structures.boxlist_ops import boxlist_iou from maskrcnn_benchmark.structures.boxlist_ops import boxlist_nms ``` However some functions are missing from the `boxlist_ops` like the [`soft_nms`](https://github.com/facebookresearch/Detectron/blob/master/detectron/utils/cython_nms.pyx#L98L203) . So I just tried to modify the `maskrcnn-benchmark/tools/cityscapes/convert_cityscapes_to_coco.py` script. Here we have `polys_to_boxes` function from `segms.py` and I could not find its analogous in the maskrcnn_benchmark lib. It seems to me that the original function in `segms.py` is using pure lists so I just wrote two auxiliary functions reusing the boxList's convert method( https://github.com/facebookresearch/maskrcnn-benchmark/blob/master/maskrcnn_benchmark/structures/bounding_box.py#L67L70 ) and Detectron's polys_to_boxes ( https://github.com/facebookresearch/Detectron/blob/b5dcc0fe1d091cb70f9243939258215dd63e3dfa/detectron/utils/segms.py#L135L140 ): ``` def poly_to_box(poly): """Convert a polygon into a tight bounding box.""" x0 = min(min(p[::2]) for p in poly) x1 = max(max(p[::2]) for p in poly) y0 = min(min(p[1::2]) for p in poly) y1 = max(max(p[1::2]) for p in poly) box_from_poly = [x0, y0, x1, y1] return box_from_poly def xyxy_to_xywh(xyxy_box): xmin, ymin, xmax, ymax = xyxy_box TO_REMOVE = 1 xywh_box = (xmin, ymin, xmax - xmin + TO_REMOVE, ymax - ymin + TO_REMOVE) return xywh_box ``` * removed leftovers * Update convert_cityscapes_to_coco.py
-
Preston Parry authored
Finishing the clean up in https://github.com/facebookresearch/maskrcnn-benchmark/pull/455, unsetting the proper variable. In general, thanks for making this so easy to install! I'd run into all kinds of versioning issues (version of Ubuntu not playing nicely with versions of CUDA/pytorch/libraries) trying to install other libraries implementing these algorithms. I'm super impressed by the quality of support, and the easy install, for this library.
-
Csaba Botos authored
the env variable is misused in the current version
-
- 18 Feb, 2019 2 commits
-
-
Preston Parry authored
The previous instruction examples assumed that the directory `~/github` existed, and did not include any check to create it if the directory did not exist. I updated to install in whatever directory the user is current in. I also updated to make it clear how the CUDA version is specified, and fixed a typo in activating the conda env.
-
Csaba Botos authored
A few addition: I added the top level directory `cityscapes` since the `tools/cityscapes/convert_cityscapes_to_coco.py` script has the directory structure `gtFine_trainvaltest/gtFine` hardcoded into it which is fine but was not clear at first. Also added a **Note** to warn people to install detectron as well, since the script uses `detectron.utils.boxes` and `detectron.utils.segm` modules which has further dependencies in the detectron lib.
-
- 15 Feb, 2019 5 commits
-
-
Ren Jin authored
-
Cheng-Yang Fu authored
* Add RetinetNet parameters in cfg. * hot fix. * Add the retinanet head module now. * Add the function to generate the anchors for RetinaNet. * Add the SigmoidFocalLoss cuda operator. * Fix the bug in the extra layers. * Change the normalizer for SigmoidFocalLoss * Support multiscale in training. * Add retinannet training script. * Add the inference part of RetinaNet. * Fix the bug when building the extra layers in retinanet. Update the matching part in retinanet_loss. * Add the first version of the inference of RetinaNet. Need to check it again to see if is there any room for speed improvement. * Remove the retinanet_R-50-FPN_2x.yaml first. * Optimize the retinanet postprocessing. * quick fix. * Add script for training RetinaNet with ResNet101 backbone. * Move cfg.RETINANET to cfg.MODEL.RETINANET * Remove the variables which are not used. * revert boxlist_ops. Generate Empty BoxLists instead of [] in retinanet_infer * Remove the not used commented lines. Add NUM_DETECTIONS_PER_IMAGE * remove the not used codes. * Move retinanet related files under Modeling/rpn/retinanet * Add retinanet_X_101_32x8d_FPN_1x.yaml script. This model is not fully validated. I only trained it around 5000 iterations and everything is fine. * set RETINANET.PRE_NMS_TOP_N as 0 in level5 (p7), because previous setting may generate zero detections and could cause the program break. This part is used in original Detectron setting. * Fix the rpn only bug when the training ends. * Minor improvements * Comments and add Python-only implementation * Bugfix and remove commented code * keep the generalized_rcnn same. Move the build_retinanet inside build_rpn. * Add USE_C5 in the MODEL.RETINANET * Add two configs using P5 to generate P6. * fix the bug when loading the Caffe2 ImageNet pretrained model. * Reduce the code depulication of RPN loss and RetinaNet loss. * Remove the comment which is not used. * Remove the hard coded number of classes. * share the foward part of rpn inference. * fix the bug in rpn inference. * Remove the conditional part in the inference. * Bug fix: add the utils file for permute and flatten of the box prediction layers. * Update the comment. * quick fix. Adding import cat. * quick fix: forget including import. * Adjust the normalization part according to Detectron's setting. * Use the bbox reg normalization term. * Clean the code according to recent review. * Using CUDA version for training now. And the python version for training on cpu. * rename the directory to retinanet. * Make the train and val datasets are consistent with mask r-cnn setting. * add comment.
-
Himanshu Pandey authored
-
CoinCheung authored
-
Levi Viana authored
* Adding support to Caffe2 ResNeXt-152-32x8d-FPN-IN5k backbone for Mask R-CNN * Clean up * Fixing path_catalogs.py * Back to old ROIAlign_cpu.cpp file
-
- 13 Feb, 2019 2 commits
-
-
Rodrigo Berriel authored
-
Francisco Massa authored
-
- 12 Feb, 2019 2 commits
-
-
Francisco Massa authored
* Add RPN config files * Add more RPN models
-
Francisco Massa authored
* [WIP] Keypoints inference on C2 models work * Training seems to work Still gives slightly worse results * e2e training works but gives 3 and 5 mAP less * Add modification proposed by @ChangErgou Improves mAP by 1.5 points, to 0.514 and 0.609 * Keypoints reproduce expected results * Clean coco.py * Linter + remove unnecessary code * Merge criteria for empty bboxes in has_valid_annotation * Remove trailing print * Add demo support for keypoints Still need further cleanups and improvements, like adding fields support for the other ops in Keypoints * More cleanups and misc improvements * Fixes after rebase * Add information to the readme * Fix md formatting
-
- 07 Feb, 2019 1 commit
-
-
Tong Xiao authored
* Registry for RoI Box Predictors - Add a registry ROI_BOX_PREDICTOR - Use the registry in roi_box_predictors.py, replacing the local factory - Minor changes in structures/bounding_box.py: when copying a box with fields, check if the field exists - Minor changes in logger.py: make filename a optional argument with default value of "log.txt" * Add Argument skip_missing=False
-
- 06 Feb, 2019 1 commit
-
-
Alexander Pacha authored
Fixing build-errors on Windows due to invalid types when calling THCCeilDiv. Adding type-cast to (long) to first parameter to fix the errors. (#409)
-
- 05 Feb, 2019 2 commits
-
-
Akiomi KAMAKURA authored
-
zimenglan authored
* make pixel indexes 0-based for bounding box in pascal voc dataset * replacing all instances of torch.distributed.deprecated with torch.distributed * replacing all instances of torch.distributed.deprecated with torch.distributed * add GroupNorm * add GroupNorm -- sort out yaml files * use torch.nn.GroupNorm instead, replace 'use_gn' with 'conv_block' and use 'BaseStem'&'Bottleneck' to simply codes * modification on 'group_norm' and 'conv_with_kaiming_uniform' function * modification on yaml files in configs/gn_baselines/ and reduce the amount of indentation and code duplication * use 'kaiming_uniform' to initialize resnet, disable gn after fc layer, and add dilation into ResNetHead * agnostic-regression for bbox
-
- 04 Feb, 2019 1 commit
-
-
Levi Viana authored
-
- 01 Feb, 2019 1 commit
-
-
Sameer Indarapu authored
Since IMS_PER_BATCH is global, it shouldn't be multiplied with the # of GPUs.
-
- 31 Jan, 2019 1 commit
-
-
Rodrigo Berriel authored
-
- 30 Jan, 2019 1 commit
-
-
夜阑听风 authored
-
- 25 Jan, 2019 1 commit
-
-
wat3rBro authored
-
- 23 Jan, 2019 4 commits
-
-
zimenglan authored
* make pixel indexes 0-based for bounding box in pascal voc dataset * replacing all instances of torch.distributed.deprecated with torch.distributed * replacing all instances of torch.distributed.deprecated with torch.distributed * add GroupNorm * add GroupNorm -- sort out yaml files * use torch.nn.GroupNorm instead, replace 'use_gn' with 'conv_block' and use 'BaseStem'&'Bottleneck' to simply codes * modification on 'group_norm' and 'conv_with_kaiming_uniform' function * modification on yaml files in configs/gn_baselines/ and reduce the amount of indentation and code duplication * use 'kaiming_uniform' to initialize resnet, disable gn after fc layer, and add dilation into ResNetHead
-
Forest authored
-
Cheng-Yang Fu authored
* Add new section "Projects using maskrcnn-benchmark". * Update README.md update the format. * Update README.md * Add coco_2017_train and coco_2017_val * Update README.md Add the instructions about COCO_2017
-
Cheng-Yang Fu authored
* Add new section "Projects using maskrcnn-benchmark". * Update README.md update the format. * Update README.md
-
- 22 Jan, 2019 1 commit
-
-
Aaron Lelevier authored
fixes #339
-
- 21 Jan, 2019 4 commits
-
-
Francisco Massa authored
This reverts commit 6cbb3d27.
-
103yiran authored
-
zimenglan authored
* make pixel indexes 0-based for bounding box in pascal voc dataset * replacing all instances of torch.distributed.deprecated with torch.distributed * replacing all instances of torch.distributed.deprecated with torch.distributed * add GroupNorm * add GroupNorm -- sort out yaml files * use torch.nn.GroupNorm instead, replace 'use_gn' with 'conv_block' and use 'BaseStem'&'Bottleneck' to simply codes * modification on 'group_norm' and 'conv_with_kaiming_uniform' function * modification on yaml files in configs/gn_baselines/ and reduce the amount of indentation and code duplication
-
103yiran authored
-
- 14 Jan, 2019 2 commits
-
-
guanfuchen authored
-
任广辉 authored
-
- 30 Dec, 2018 1 commit
-
-
夜阑听风 authored
sort keys before reduction
-
- 22 Dec, 2018 1 commit
-
-
Francisco Massa authored
-
- 21 Dec, 2018 2 commits
-
-
Lei Yang authored
* Update checkpoint.py if edit "{save_dir}/last_checkpoint" by vim, "\n" will auto append to the end of file. which will raise ``` FileNotFoundError: [Errno 2] No such file or directory: 'save_dir/model_0060000.pth\n' ``` * Update checkpoint.py if edit "{save_dir}/last_checkpoint" by vim, "\n" will auto append to the end of file. which will raise ``` FileNotFoundError: [Errno 2] No such file or directory: 'save_dir/model_0060000.pth\n' ```
-
benjaminrwilson authored
-
- 18 Dec, 2018 1 commit
-
-
Gu Wang authored
-