1. 21 May, 2019 8 commits
  2. 20 May, 2019 5 commits
  3. 19 May, 2019 7 commits
    • Francisco Massa's avatar
      Split mask_rcnn.py into several files (#921) · cf401a70
      Francisco Massa authored
      * Split mask_rcnn.py into several files
      
      * Lint
      cf401a70
    • Francisco Massa's avatar
    • Francisco Massa's avatar
      Fixes for PyTorch 1.1 (#919) · 12d2c737
      Francisco Massa authored
      12d2c737
    • Francisco Massa's avatar
      Move segmentation models to its own folder (#918) · 86db394e
      Francisco Massa authored
      * Move segmentation models to its own folder
      
      * Add missing files
      86db394e
    • ekka's avatar
      Remove dependency from functool in ShuffleNetsV2 (#916) · 967ef26c
      ekka authored
      * Remove dependency from functool in ShuffleNetsV2
      
      This PR removes the dependence of the ShuffleNetV2 code from `functool`.
      
      * flake fix
      967ef26c
    • Francisco Massa's avatar
      Add Faster R-CNN and Mask R-CNN (#898) · ccd1b27d
      Francisco Massa authored
      * [Remove] Use stride in 1x1 in resnet
      
      This is temporary
      
      * Move files to torchvision
      
      Inference works
      
      * Now seems to give same results
      
      Was using the wrong number of total iterations in the end...
      
      * Distributed evaluation seems to work
      
      * Factor out transforms into its own file
      
      * Enabling horizontal flips
      
      * MultiStepLR and preparing for launches
      
      * Add warmup
      
      * Clip gt boxes to images
      
      Seems to be crucial to avoid divergence. Also reduces the losses over different processes for better logging
      
      * Single-GPU batch-size 1 of CocoEvaluator works
      
      * Multi-GPU CocoEvaluator works
      
      Gives the exact same results as the other one, and also supports batch size > 1
      
      * Silence prints from pycocotools
      
      * Commenting unneeded code for run
      
      * Fixes
      
      * Improvements and cleanups
      
      * Remove scales from Pooler
      
      It was not a free parameter, and depended only on the feature map dimensions
      
      * Cleanups
      
      * More cleanups
      
      * Add misc ops and totally remove maskrcnn_benchmark
      
      * nit
      
      * Move Pooler to ops
      
      * Make FPN slightly more generic
      
      * Minor improvements or FPN
      
      * Move FPN to ops
      
      * Move functions to utils
      
      * Lint fixes
      
      * More lint
      
      * Minor cleanups
      
      * Add FasterRCNN
      
      * Remove modifications to resnet
      
      * Fixes for Python2
      
      * More lint fixes
      
      * Add aspect ratio grouping
      
      * Move functions around
      
      * Make evaluation use all images for mAP, even those without annotations
      
      * Bugfix with DDP introduced in last commit
      
      * [Check] Remove category mapping
      
      * Lint
      
      * Make GroupedBatchSampler prioritize largest clusters in the end of iteration
      
      * Bugfix for selecting the iou_types during evaluation
      
      Also switch to using the torchvision normalization now on, given that we are using torchvision base models
      
      * More lint
      
      * Add barrier after init_process_group
      
      Better be safe than sorry
      
      * Make evaluation only use one CPU thread per process
      
      When doing multi-gpu evaluation, paste_masks_in_image is multithreaded and throttles evaluation altogether. Also change default for aspect ratio group to match Detectron
      
      * Fix bug in GroupedBatchSampler
      
      After the first epoch, the number of batch elements could be larger than batch_size, because they got accumulated from the previous iteration. Fix this and also rename some variables for more clarity
      
      * Start adding KeypointRCNN
      
      Currently runs and perform inference, need to do full training
      
      * Remove use of opencv in keypoint inference
      
      PyTorch 1.1 adds support for bicubic interpolation which matches opencv (except for empty boxes, where one of the dimensions is 1, but that's fine)
      
      * Remove Masker
      
      Towards having mask postprocessing done inside the model
      
      * Bugfixes in previous change plus cleanups
      
      * Preparing to run keypoint training
      
      * Zero initialize bias for mask heads
      
      * Minor improvements on print
      
      * Towards moving resize to model
      
      Also remove class mapping specific to COCO
      
      * Remove zero init in bias for mask head
      
      Checking if it decreased accuracy
      
      * [CHECK] See if this change brings back expected accuracy
      
      * Cleanups on model and training script
      
      * Remove BatchCollator
      
      * Some cleanups in coco_eval
      
      * Move postprocess to transform
      
      * Revert back scaling and start adding conversion to coco api
      
      The scaling didn't seem to matter
      
      * Use decorator instead of context manager in evaluate
      
      * Move training and evaluation functions to a separate file
      
      Also adds support for obtaining a coco API object from our dataset
      
      * Remove unused code
      
      * Update location of lr_scheduler
      
      Its behavior has changed in PyTorch 1.1
      
      * Remove debug code
      
      * Typo
      
      * Bugfix
      
      * Move image normalization to model
      
      * Remove legacy tensor constructors
      
      Also move away from Int and instead use int64
      
      * Bugfix in MultiscaleRoiAlign
      
      * Move transforms to its own file
      
      * Add missing file
      
      * Lint
      
      * More lint
      
      * Add some basic test for detection models
      
      * More lint
      ccd1b27d
    • Francisco Massa's avatar
      Upload pre-trained weights for MobileNet and ResNeXt (#917) · 6272c412
      Francisco Massa authored
      Also move weights from ShuffleNet to PyTorch bucket. Additionally, rename shufflenet to make it consistent with the other models
      6272c412
  4. 18 May, 2019 1 commit
  5. 17 May, 2019 1 commit
  6. 14 May, 2019 1 commit
  7. 10 May, 2019 1 commit
    • Francisco Massa's avatar
      Initial version of segmentation reference scripts (#820) · 50d54a82
      Francisco Massa authored
      * Initial version of the segmentation examples
      
      WIP
      
      * Cleanups
      
      * [WIP]
      
      * Tag where runs are being executed
      
      * Minor additions
      
      * Update model with new resnet API
      
      * [WIP] Using torchvision datasets
      
      * Improving datasets
      
      Leverage more and more torchvision datasets
      
      * Reorganizing datasets
      
      * PEP8
      
      * No more SegmentationModel
      
      Also remove outplanes from ResNet, and add a function for querying intermediate outputs. I won't keep it in the end, because it's very hacky and don't work with tracing
      
      * Minor cleanups
      
      * Moving transforms to its own file
      
      * Move models to torchvision
      
      * Bugfixes
      
      * Multiply LR by 10 for classifier
      
      * Remove classifier x 10
      
      * Add tests for segmentation models
      
      * Update with latest utils from classification
      
      * Lint and missing import
      50d54a82
  8. 08 May, 2019 2 commits
  9. 07 May, 2019 4 commits
    • Francisco Massa's avatar
      Add C++ ops to torchvision (#826) · dc3ac290
      Francisco Massa authored
      * Initial layout for layers with cpp extensions
      
      * Move files around
      
      * Fix import after move
      
      * Add support for multiple types to ROIAlign
      
      * Different organization
      
      CUDA extensions work now
      
      * Cleanups
      
      * Reduce memory requirements for backwards
      
      * Replace runtime_error by AT_ERROR
      
      * Add nms test
      
      * Add support for compilation using CPP extensions
      
      * Change folder structure
      
      * Add ROIPool cuda
      
      * Cleanups
      
      * Add roi_pool.py
      
      * Fix lint
      
      * Add initial structures folder for bounding boxes
      
      * Assertion macros compatible with pytorch master (#540)
      
      * Support for ROI Pooling (#592)
      
      * ROI Pooling with tests. Fix for cuda context in ROI Align.
      
      * renamed bottom and top to follow torch conventions
      
      * remove .type().tensor() calls in favor of the new approach to tensor initialization (#626)
      
      * Consistent naming for rois variable (#627)
      
      * remove .type().tensor() calls in favor of the new approach to tensor initialization
      
      * Consistent naming for rois variable in ROIPool
      
      * ROIPool: Support for all datatypes (#632)
      
      * Use of torch7 naming scheme for ROIAlign forward and backward
      
      * use common cuda helpers in ROIAlign
      
      * use .options() in favor of .type() where applicable
      
      * Added tests for forward pass of ROIAlign, as well as more consistent naming scheme for CPU vs CUDA
      
      * working ROIAlign cuda backwards pass
      
      * working ROIAlign backwards pass for CPU
      
      * added relevant headers for ROIAlign backwards
      
      * tests for ROIAlign layer
      
      * replace .type() with .options() for tensor initialization in ROIAlign layers
      
      * support for Half types in ROIAlign
      
      * gradcheck tests for ROIAlign
      
      * updated ROIPool on CPU to work with all datatypes
      
      * updated and cleaned tests for ROI Pooling
      
      * Fix rebase problem
      
      * Remove structures folder
      
      * Improve cleanup and bugfix in test_layers
      
      * Update C++ headers
      
      * Add CUDAGuard to cu files
      
      * Add more checks to layers
      
      * Add CUDA NMS and tests
      
      * Add multi-type support for NMS CUDA
      
      * Avoid using THCudaMalloc
      
      * Add clang-format and reformat c++ code
      
      * Remove THC includes
      
      * Rename layers to ops
      
      * Add documentation and rename functions
      
      * Improve the documentation a bit
      
      * Fix some lint errors
      
      * Fix remaining lint inssues
      
      * Area computation doesn't add +1 in NMS
      
      * Update CI to use PyTorch nightly
      
      * Make NMS return indices sorted according to the score
      
      * Address reviewer comments
      
      * Lint fixes
      
      * Improve doc for roi_align and roi_pool
      
      * move to xenial
      
      * Fix bug pointed by @lopuhin
      
      * Fix RoIPool reference implementation in Python 2
      
      Also fixes a bug in the clip_boxes_to_image -- this function needs a test!
      
      * Remove change in .travis
      dc3ac290
    • ekka's avatar
      Refactoring of ShuffleNetV2 (#889) · 0564df43
      ekka authored
      * Minor refactoring of ShuffleNetV2
      
      Added progress flag following #875. Further the following refactoring was also done:
      
      1) added `version` argument in shufflenetv2 method and removed the operations for converting the `width_mult` arg to float and string.
      2) removed `num_classes` argument and **kwargs from functions except `ShuffleNetV2`
      
      * removed `version` arg
      
      * Update shufflenetv2.py
      
      * Removed the try except block
      
      * Update shufflenetv2.py
      
      * Changed version from float to str
      
      * Replace `width_mult` with `stages_out_channels`
      
      Removes the need of  `_getStages` function.
      0564df43
    • Francisco Massa's avatar
      78ed423d
    • bddppq's avatar
  10. 06 May, 2019 2 commits
  11. 03 May, 2019 1 commit
  12. 02 May, 2019 1 commit
  13. 01 May, 2019 1 commit
  14. 30 Apr, 2019 3 commits
  15. 29 Apr, 2019 1 commit
  16. 26 Apr, 2019 1 commit