1. 02 Oct, 2018 5 commits
    • Ashwin Bharambe's avatar
      Enable python3 builds · cbb0236d
      Ashwin Bharambe authored
      Reviewed By: rbgirshick
      
      Differential Revision: D9691247
      
      fbshipit-source-id: 7a9c1a33698be6907dede589965f8f4f4d337f93
      cbb0236d
    • Ashwin Bharambe's avatar
      Prepare for Python3 compatibility [3] · 4dc5e92e
      Ashwin Bharambe authored
      Summary:
      A couple small issues pointed out by Ross.
      
       - Treating bytes as strings with a subprocess' output :/
       - Controling precision of logged floats using a workaround instead of
         FLOAT_REPR which doesn't work with newer versions of Python3.
      
      Reviewed By: rbgirshick
      
      Differential Revision: D9724292
      
      fbshipit-source-id: a6aa1730f25df5d165291dc30b9350a9fff6fca6
      4dc5e92e
    • Ashwin Bharambe's avatar
      Prepare for python3 compatibility [2] · 9185b699
      Ashwin Bharambe authored
      Summary:
      There were two "bugs" associated with loading pickle files:
      
      The first is easy: these files should have been `open()`ed as binary, but
      weren't.
      
      The second is slightly nuanced. The default encoding used wwhile unpickling
      is 7-bit (ASCII.) However, the blobs are arbitrary 8-bit bytes which don't
      agree. The absolute correct way to do this is to use `encoding="bytes"` and
      then interpret the blob names either as ASCII, or better, as unicode utf-8. A
      reasonable fix, however, is to treat it the encoding as 8-bit latin1 (which
      agrees with the first 256 characters of Unicode anyway.)
      
      As part of this, I also centralized all pickling operations into
      `detectron.utils.io`.
      
      This /still/ does not change the build to Python3, but I believe it is ready
      now.
      
      Reviewed By: rbgirshick
      
      Differential Revision: D9689294
      
      fbshipit-source-id: add1f2d784fe196df27b20e65e35922536d11a3c
      9185b699
    • Ashwin Bharambe's avatar
      Prepare for python3 compatibility [1] · 88dd4b1d
      Ashwin Bharambe authored
      Summary:
      This is a first step towards python3 compatibility. Specifically, it
      tackles:
      
       - `cPickle`: uses six.moves
       - `Queue`: uses six.moves
       - `urllib2`: uses six.moves and changes `urllib2.urlopen` to `urllib.request.urlopen`
      
      Also, fundamentally it changes the types of all config "byte" types to
      "string" types. Those configurations aren't un-encoded byte streams but very
      specifically ascii (or unicode encoded) strings which are specified and
      consumed by human eyes.
      
      Reviewed By: rbgirshick
      
      Differential Revision: D9662024
      
      fbshipit-source-id: b8372f685b57ec4260ae881a2f8bb7967f337b10
      88dd4b1d
    • Yang Liu's avatar
      Back out "codemod cuda_gpu_id to device_id" · fd09e37a
      Yang Liu authored
      Summary:
      Original commit changeset: f5614a5d2607
      
      D9986213 is causing Multifeed Aggregator a [huge performance different](https://our.intern.facebook.com/intern/ads/analyze_canary/412951953278781781/) and is blocking aggregator push since last Friday night: https://fburl.com/feedtools/b6izvwjz
      We need to land this revert ASAP to unblock aggregator push.
      
      Reviewed By: orionr
      
      Differential Revision: D10123245
      
      fbshipit-source-id: d83da8e00a1250f5d09811a0a587c127e377aab2
      fd09e37a
  2. 28 Sep, 2018 1 commit
  3. 26 Sep, 2018 2 commits
  4. 22 Sep, 2018 1 commit
    • Ashwin Bharambe's avatar
      Allow overriding "regresion weights" used in GenerateProposalsOp · e8942c88
      Ashwin Bharambe authored
      Summary:
      Detectron code is inconsistent about when it uses (1, 1, 1, 1) as the
      regression weights vs. `cfg.MODEL.BBOX_REG_WEIGHTS` (which has a default
      value of (10, 10, 5, 5)). This change allows the caller to make the call
      (heh!) about what to use.
      
      Reviewed By: rbgirshick
      
      Differential Revision: D9981875
      
      fbshipit-source-id: 8798408bd2592486eb1a2e40ccb70b9bedfdbf46
      e8942c88
  5. 19 Sep, 2018 1 commit
  6. 15 Sep, 2018 1 commit
  7. 06 Sep, 2018 1 commit
    • Ashwin Bharambe's avatar
      Fix a bug in RPN proposal label generation · 3a38b7bc
      Ashwin Bharambe authored
      Summary:
      Negative labels were never set if `len(bg_inds) <= num_bg`. This
      condition happens when there aren't as many negative anchor samples compared to the
      typical batch size (256). Since detection scales are typically ~800, there are
      plenty of negative samples and this bug is likely never hit. In any case, it
      is certainly a bug which should be fixed!
      
      Reviewed By: rbgirshick
      
      Differential Revision: D9647703
      
      fbshipit-source-id: fada9f4f2e0a0b5c1619940328c505e73f9a1c7e
      3a38b7bc
  8. 03 Sep, 2018 1 commit
  9. 31 Aug, 2018 1 commit
  10. 29 Aug, 2018 1 commit
  11. 24 Aug, 2018 1 commit
    • Ross Girshick's avatar
      Make data loader threads daemonic · c9ed587c
      Ross Girshick authored
      Summary: Make data loader threads daemonic so the main process can exit when an exception is raised.
      
      Reviewed By: ashwinb, newstzpz
      
      Differential Revision: D9478059
      
      fbshipit-source-id: 00bfaab51295b63c2f95ac1be99ae56a0ccf9d94
      c9ed587c
  12. 21 Aug, 2018 1 commit
    • Ross Girshick's avatar
      Avoid negatives areas found exception · 47e457a5
      Ross Girshick authored
      Summary:
      In some cases, eg training from scratch with a high LR or w/o activation normalization, we saw a "Negative Areas Found" exception. The RPN proposal generation code filters proposals that have a height or width that are too small. By default we use a `min_size` of 0. In a distant other part of the code, it computes the area of the proposals in order to determine FPN scale assignment. An issue arises because the `+ 1` in the `x2 - x1 + 1` width (and height) computation is not scale invariant. It turns out that the filter based on `min_size` was performed in the scaled input coordinates while the FPN scale assignment areas are computed using the unscaled, original image size. Thus a `min_size` of 0 can result in proposals with a negative area as measured wrt the original image. Uuuugh :P.
      
      This diff addresses the issue by filtering based on the area in the unscaled input image and also using a generous (though still small) margin of 1 pixel for `min_size`.
      
      Reviewed By: KaimingHe
      
      Differential Revision: D8773216
      
      fbshipit-source-id: b4ffbc5b6a831176b2656810edea3d3d4e52d687
      47e457a5
  13. 17 Aug, 2018 1 commit
  14. 08 Aug, 2018 1 commit
  15. 03 Aug, 2018 1 commit
  16. 02 Aug, 2018 1 commit
    • Ashwin Bharambe's avatar
      Set logging level correctly in utils/net.py · 40c39925
      Ashwin Bharambe authored
      Summary:
      AFAIK, this is what the rest of the codebase does. I don't want to
      see logger.debug() messages show up during normal runs.
      
      Differential Revision: D9071531
      
      fbshipit-source-id: 4ac5ef57ee47bf958e35d723c379f695554f0ef0
      40c39925
  17. 31 Jul, 2018 1 commit
  18. 27 Jul, 2018 1 commit
  19. 14 Jul, 2018 1 commit
  20. 04 Jul, 2018 1 commit
    • Kaiming He's avatar
      Allow copy TRAIN.WEIGHTS to checkpoint folder · b2d24147
      Kaiming He authored
      Summary:
      Add TRAIN.COPY_WEIGHTS (default False):
      
      When setting True, training will copy TRAIN.WEIGHTS to checkpoint folder and treat it as a candidate checkpoint. This is useful if we want to resume a checkpoint from another job (instead of using ImageNet pre-training).
      
      Reviewed By: rbgirshick
      
      Differential Revision: D8710711
      
      fbshipit-source-id: 9c011227867c52eaaeb40e3c2679cff1cfccdc66
      b2d24147
  21. 03 Jul, 2018 3 commits
  22. 28 Jun, 2018 1 commit
  23. 26 Jun, 2018 1 commit
  24. 22 Jun, 2018 1 commit
  25. 21 Jun, 2018 1 commit
    • Norman Mu's avatar
      Fix typo in detectron config · ea9c76d9
      Norman Mu authored
      Summary: change _DEPCRECATED_KEYS -> _DEPRECATED_KEYS
      
      Differential Revision: D8553498
      
      fbshipit-source-id: 1431a9552efce47be3aa40718c954521481950de
      ea9c76d9
  26. 12 Jun, 2018 2 commits
    • Kaiming He's avatar
      Update from-scratch results in GN/README.md · b5dada9b
      Kaiming He authored
      Summary: Update from-scratch results in GN/README.md, given the freeze_at=0 fix.
      
      Reviewed By: ir413
      
      Differential Revision: D8369007
      
      fbshipit-source-id: a7df13364125dac09379c5aed647f4f9a8bbf23b
      b5dada9b
    • Kaiming He's avatar
      Move freeze_at to config; fix an issue of GN from-scratch · f8ffc87c
      Kaiming He authored
      Summary:
      Move freeze_at to config.
      
      Fix GN from-scratch scripts with freeze_at=0.
      
      Reviewed By: rbgirshick
      
      Differential Revision: D8325882
      
      fbshipit-source-id: 9f362cb269ffd962056dfe8adc888083cff3d9b2
      f8ffc87c
  27. 11 Jun, 2018 1 commit
  28. 07 Jun, 2018 1 commit
    • Xinlei Chen's avatar
      Remove gt_boxes, seems no longer used? · a04ed18a
      Xinlei Chen authored
      Summary: Remove code that seems redundant.
      
      Reviewed By: rbgirshick
      
      Differential Revision: D8200163
      
      fbshipit-source-id: c3096c77a1c6b33eab5dc0ceb9414f3bdbbf71e9
      a04ed18a
  29. 06 Jun, 2018 1 commit
  30. 01 Jun, 2018 1 commit
  31. 26 May, 2018 1 commit
    • Kaiming He's avatar
      fix a bug of aspect ratio grouping · 0375b05e
      Kaiming He authored
      Summary: Fix a bug of aspect ratio grouping to support training batch size > 2.
      
      Reviewed By: rbgirshick
      
      Differential Revision: D8157964
      
      fbshipit-source-id: 28eec6246cd6daf83aef30da245fe7bf340fbbc9
      0375b05e
  32. 25 May, 2018 1 commit