Commit Graph

289 Commits (357b0dfb366e5d088de08e8fbe914f2a0f19f3b1)

Author SHA1 Message Date
Kai Chen 821b3ad622
Fix the BC issue of ddp (#325)
* fix the BC issue of ddp

* minor fix for the docstring
2020-06-08 22:34:19 +08:00
Jerry Jiarui XU a3ae781789
add reserved key in config (#315) 2020-06-04 14:55:28 +08:00
Kai Chen 35ba152821
Add a BaseRunner and rename Runner to EpochBasedRunner (#290)
* add a BaseRunner and rename Runner to EpochBasedRunner

* fix the train/val step

* bug fix

* update unit tests

* fix unit tests

* raise an error if both batch_processor and train_step are set

* add a unit test
2020-06-02 22:23:21 +08:00
Harry 6f21d8b560
Add optimizer constructor from mmdetection (#313)
* feat: add optimizer constructor

* refactor: version
2020-06-02 19:57:24 +08:00
Harry efecf7d1fe
fix building ConvModule with Tanh activation (#309)
* fix: tanh has not inplace

* feat: add ConvModule with Tanh
2020-06-01 21:26:51 +08:00
Kai Chen 213156cebb
Allow registering new backends with decorators (#307)
* allow registering new backends with decorators

* add a docstring

* minor update to the docstring
2020-05-31 21:56:03 +08:00
Wenwei Zhang 8ceb404ea6
Use mapping rather than dict for special keys (#304)
* Support path as a key in dict of config

* reformat test case

* update pre-commit version and fix format

* fix bug

* clean code

* reformat

* fix missing parts
2020-05-30 13:03:33 +08:00
Jerry Jiarui XU d6411b7fff
BC of model zoo: add deprecate urls (#301)
* add deprecate urls

* add deprecate urls

* warning test

* rename to deprecated.json
2020-05-27 22:09:06 +08:00
Jerry Jiarui XU 37d8facfad Support default/external json for open-mmlab models (#230)
* support default/external json for open-mmlab models

* add local

* add more test

* add docs

* add docs

* update docs

* refactor

* add json in MANIFEST

* fixed json typo
2020-05-27 17:12:43 +08:00
Jerry Jiarui XU 0946feabe3
add PetrelBackend (#294)
* add PetrelBackend

* update docs

* add path_maps for Ceph

* rename to path_mapping

* fixed import
2020-05-23 01:31:11 +08:00
Kai Chen 3bf3e8ef24
Revert "add PetrelBackend (#291)" (#293)
This reverts commit 7f80a2c6b9.
2020-05-23 01:07:43 +08:00
Jerry Jiarui XU 7f80a2c6b9
add PetrelBackend (#291)
* add PetrelBackend

* update docs

* add path_maps for Ceph

* rename to path_mapping
2020-05-22 12:31:34 +08:00
Jintao Lin 25d07e3d54
Support conv layers' own `init_weights` method (#278)
* Support conv layers' own `init_weights` method

* Add related unittest about ConvModule init_weight

* make the comments more specific
2020-05-13 22:58:16 +08:00
Wenwei Zhang c35c228cbb
Support to pass args to cnn bricks (#277) 2020-05-12 10:41:11 +08:00
Jerry Jiarui XU d5936d02e3
Make Config.dump() output in original file (#275)
* add dump() from for different file type

* remove exception
2020-05-11 21:48:56 +08:00
Kai Chen d4fac3a6dd
Use parrots wrapper (#272)
* use parrots wrapper for norms

* add unittests for is_norm()

* add a test case
2020-05-08 11:24:35 +08:00
Kai Chen 6aa5131559
move test_weight_init to tests/test_cnn (#270) 2020-05-05 21:03:12 +08:00
Wenwei Zhang 19e4a06cbc
Fix CosineAnealingLr register bug (#265)
* Fall back to CosineLr

* Fix consineanealing with unittest

* Cover momentum hook

* Add comments to explain
2020-05-04 00:38:55 +08:00
Xintao 65fbc75689
Add colorspace functions: rgb2ycbcr, bgr2ycbcr, ycbcr2rgb and ycbcr2bgr (#259)
* update

* add functions

* update tests

* resolve comments

* resolve comments

* resolve comments

* update docstr
2020-05-03 23:32:48 +08:00
Jerry Jiarui XU 1d54ee217e
remove deprecate register_module (#262) 2020-05-02 00:35:30 +08:00
Jerry Jiarui XU a5b5193767
Fixed config import in config file (#261)
* fixed config import in code

* fixed isort
2020-05-01 21:55:07 +08:00
Kai Chen 45111e193d
Add building bricks of cnn (#247)
* add building bricks of cnn

* add unit tests

* use registry for building bricks

* minor updates

* add scale layer

* add test for scale

* add doc string

Co-authored-by: Jiarui XU <xvjiarui0826@gmail.com>
2020-05-01 00:32:25 +08:00
Jerry Jiarui XU 45a39dc6a8
make config merge a into b non-inplace (#254) 2020-04-29 15:09:27 +08:00
Kai Chen f7de63fdd0
Support specifying names for registry.register_module() (#251)
* support specifying names for registry.register_module()

* minor fix

* add more unittests
2020-04-27 22:47:49 +08:00
Kai Chen a338d43d78
Refactor unittests (#241)
* refactor unittests

* split test_video.py to two files
2020-04-26 22:54:27 +08:00
Cao Yuhang b7e8d7d7fb
Use f-string (#245)
* use f-string

* delete python3.5 sup

* minor fix

* fix supported python version

* fix format

* fix yapf

* remove redundant space

* fix typo
2020-04-26 00:21:54 +08:00
Jerry Jiarui XU 1e8a212187
Add DictAction and docs for config (#243)
* fixed merge_from_dict, add DictAction

* add config docs

* fixed format type

* change to easy example

* update docs

* update docs
2020-04-25 20:56:08 +08:00
Kai Chen e333d8222b
Add FileClient to access file from different backends (#237)
* add file client

* install missing requirements

* use .format() instead of f-string
2020-04-23 19:54:29 +08:00
Kai Chen a0618d1051
Refactoring mmcv.images (#239)
* refactoring mmcv.images

* update docstring and minor fix

* some renames
2020-04-23 00:34:51 +08:00
Kai Chen af02ac9f01
Use tmp dir as work_dir of runner (#236)
* use tmp dir as work_dir of runner

* only run codecov for python 3.7

* remove useless comments
2020-04-22 23:33:54 +08:00
Wenwei Zhang ba059611d1
Momentum scheduler (#167)
* track progress of iter&enum

* restore

* add momentum scheduler

* fix small bug

* cyclic scheduler"

* fix bug

* fix second phase's bug

* reformat

* feature (cosine lr): use relative ratio for more flexible scheduler

* Fix (runner): fix bugs in runner

* Refactor (hook): refactor cosing/cyclic LR/momentum hook with unittest

* Clean unnecessary files and reformat

* Fix memory key error when GPU is not avaliable

* Resolve comments

* Do not print momentum in text log

* Change hook register order

* Refactor max_iter

* Fix max_iter bugs in runner

* Enforce target_ratio to be either tuple or float
2020-04-20 01:23:53 +08:00
David de la Iglesia Castro d5f190d12d
Add MlflowLoggerHook (#221)
* Add MLflowLoggerHook

* Add MLflowLoggerHook to __all__

* Update name

* Fix tracking.MlflowClient setup

* Fix log_metric

* Fix mlflow_pytorch import

* Handle active_run

* Fix self.mlflow reference

* Simplify using high level API

* Fix set_experiment

* Add only_if_torch_available decorator and test_mlflow_hook

* Add missing import in hooks

* Fix torch available check

* Patch mlflow.pytorch in test

* Parametrize log_model

* Fix log_model parametrize

* Add docstring

* Move wand patch

* Fix flake8

* Add regression test for non numeric metric

* Only log numbers

* Rename experiment_name-> exp_name

* Remove pytest skip
2020-04-14 23:54:55 +08:00
Joanna 2ea0d51816
add contains to registry (#223)
* add contains to registry

Signed-off-by: lixuanyi <lixuanyi@sensetime.com>

* add contains to registry

* 'fix'

* 'minor'

* move

Signed-off-by: lixuanyi <lixuanyi@sensetime.com>

Co-authored-by: lixuanyi <lixuanyi@sensetime.com>
2020-04-06 12:49:13 +08:00
Jerry Jiarui XU e87a04e3c7
add pretty_text (#220)
* add pretty_text

* add test cases

* add argument indent

* change pretty_text to property

* fixed format end
2020-04-03 21:18:34 +08:00
Kai Chen cd873f9c2f
Fix a potential bug of removing temp dir (#218)
* fix a potential bug of removing temp dir

* bump version to v0.4.2
2020-03-28 22:00:19 +08:00
Xintao 1bc80610ee
support recursive scanndir (#215)
* recursive scanndir

* support python3.5

* update and add tests

* resolve comments

* remove is_str
2020-03-19 22:50:37 +08:00
Jerry Jiarui XU fa84b26422
add bias_init_with_prob (#213)
* add bia_init_with_prob

* add test_weight_init
2020-03-17 20:48:46 +08:00
Kai Chen 12e5913bb9
Remove supports for python 2.7 and bump version to 0.4.0 (#211)
* remove supports for python 2.7

* fix the unit test for python 3.5

* add python 3.8 in CI

* try ubuntu 18.04 as the environment
2020-03-16 15:15:35 +08:00
Jerry Jiarui XU 6738cd3085
add base for config (#194)
* add base for config

* fixed format

* rm terminal width

* support multiple & recursive base

* add test case

* fix format

* add test construct

* minor fix

* add more test, rewrite merge from opt

* avoid depulicate keys

* delete imported config as module

* rename merge_from_dict
2020-03-15 20:29:17 +08:00
Rui Xu 7dac84d08c
support pathlib in imageio (#208)
* support pathlib in imageio

* support pathlib in imageio

* add Path type for the annotation.

Co-authored-by: xurui4 <xurui4@sensetime.com>
2020-03-14 23:16:44 +08:00
lizz c294d2713b
Support dot in config.py file (#207)
Signed-off-by: lizz <lizz@sensetime.com>
2020-03-12 23:20:50 +08:00
Jiangmiao Pang fd066152d0
Update PaviLoggerHook (#202)
* add is_scalar in PaviLoggerHook and add unittest

* add docstrings
2020-03-02 18:48:51 +08:00
Kai Chen 3fa5851891
Update pre-commit hook config (#200)
* update pre-commit hook config

* update the contributing guide
2020-03-01 15:51:40 +08:00
Kai Chen c2c9fced2b
Add logging utils (#196)
* add logging utils

* install torch (cpu only) for CI

* fix unittests for runner

* remove python 2.7 from testing list

* add a corner case
2020-02-24 22:31:36 +08:00
Kai Chen 34197c5c89
Add registry and build_from_cfg (#195)
* add registry and build_from_cfg

* add some corner cases

* add some corner cases

* fix the unittest for python 3.5

* minor fix
2020-02-24 22:21:01 +08:00
Joanna 0bf1e80c6e
add fast imresize (#193)
* size hint

Signed-off-by: lizz <lizz@sensetime.com>

* add fast resize

Signed-off-by: lixuanyi <lixuanyi@sensetime.com>

* fix

Signed-off-by: lixuanyi <lixuanyi@sensetime.com>

* add tests

Signed-off-by: lixuanyi <lixuanyi@sensetime.com>

* fix

Signed-off-by: lixuanyi <lixuanyi@sensetime.com>

* Update tests/test_image.py

* change format

Signed-off-by: lixuanyi <lixuanyi@sensetime.com>

* add tests

Signed-off-by: lixuanyi <lixuanyi@sensetime.com>

* add docstring

Signed-off-by: lixuanyi <lixuanyi@sensetime.com>

Co-authored-by: lizz <innerlee@users.noreply.github.com>
2020-02-24 21:50:33 +08:00
Joanna 9332a1dd29
add inplace normalization (#192)
* add inplace normalization

Signed-off-by: lixuanyi <lixuanyi@sensetime.com>

* fix

Signed-off-by: lixuanyi <lixuanyi@sensetime.com>

* add dtype check

* modify inplace norm

Signed-off-by: lixuanyi <lixuanyi@sensetime.com>

* fix

Signed-off-by: lixuanyi <lixuanyi@sensetime.com>

* fix

Signed-off-by: lixuanyi <lixuanyi@sensetime.com>

* fix line
2020-02-19 22:49:15 +08:00
Joanna 5ee538d4ac
add inplace imflip (#191)
* add implace flip

* add tests

Signed-off-by: lixuanyi <lixuanyi@sensetime.com>

* modify tests

Signed-off-by: lixuanyi <lixuanyi@sensetime.com>

* add inplace tests

Signed-off-by: lixuanyi <lixuanyi@sensetime.com>

* add comments

Signed-off-by: lixuanyi <lixuanyi@sensetime.com>

* fix

Signed-off-by: lixuanyi <lixuanyi@sensetime.com>
2020-02-19 16:02:48 +08:00
Joanna 4eca2c5964
Image decoding optimization (#187)
* change image decoding method from cv2 to TurboJPEG

Signed-off-by: lixuanyi <lixuanyi@sensetime.com>

* add tests

* travis

Signed-off-by: lizz <lizz@sensetime.com>

* fix

Signed-off-by: lizz <lizz@sensetime.com>

* more doc

Signed-off-by: lizz <lizz@sensetime.com>

* change per request

Signed-off-by: lizz <lizz@sensetime.com>

* more doc

Signed-off-by: lizz <lizz@sensetime.com>

* baby-sitting

Signed-off-by: lizz <lizz@sensetime.com>

Co-authored-by: lizz <innerlee@users.noreply.github.com>
2020-02-18 20:41:03 +08:00
lizz a0506ec560
Use cv2 to normalize img (#176)
* Use cv2 to normalize img

* multipy faster than divide

* also do imdenormalize

* support more channels

* even faster

Signed-off-by: lizz <lizz@sensetime.com>

* add test

Signed-off-by: lizz <lizz@sensetime.com>

* even even faster

Signed-off-by: lizz <lizz@sensetime.com>

* fffaster

Signed-off-by: lizz <lizz@sensetime.com>

* okay

Signed-off-by: lizz <lizz@sensetime.com>

* guard against implace modification

Signed-off-by: lizz <lizz@sensetime.com>

* fix imdenormalize

Signed-off-by: lizz <lizz@sensetime.com>

* tidy

Signed-off-by: lizz <lizz@sensetime.com>

* clean

Signed-off-by: lizz <lizz@sensetime.com>

* Update test_image.py

* Update test_image.py

* Update test_image.py

* Update test_image.py

* Update test_image.py

* Update test_image.py
2020-02-15 23:59:54 +08:00
lizz 712651aab6
Adaptive progress bar length (#174)
* Adaptive progress bar length

Signed-off-by: lizz <lizz@sensetime.com>

* it works

Signed-off-by: lizz <lizz@sensetime.com>

* format

* pass test

* :lipstick

* test

* Update test_progressbar.py

* 2.7

* sort import

Signed-off-by: lizz <lizz@sensetime.com>

* try this

Signed-off-by: lizz <lizz@sensetime.com>
2020-02-02 18:18:17 +08:00
Kai Chen 43ca0e57a9
fix the shape assertion in impad (#172) 2020-01-11 17:53:35 +08:00
Kai Chen 10fa1eeaf4
Add copyright header (#171)
* add copyright header

* change # to // for cpp files
2020-01-10 13:34:42 +08:00
Wenwei Zhang da7bb063d3 Load state dict (#164)
* use load_from_state_dict to load ckpt

* reformat

* reformat

* reformat import

* pass flake8

* isort skip
2020-01-04 14:55:01 +08:00
Kai Chen 0eef3757e8
fix the code style of yapf 0.29 (#150)
* fix the code style of yapf 0.29

* fix flake8
2019-12-02 13:14:33 +08:00
Vladimir Iglovikov 56971278db Added Weight and Biases logger. (#143)
* Added wandb logger

* bugfix

* fixes

* fix

* flake8 fixes

* yapf fixes

* Refactor hook, add test

* flake8 fixes

* yapf fixes

* fix in test

* mock package => travis
2019-12-02 12:32:50 +08:00
Kai Chen 8829ff0dfd
Add rgb2gray and gray2rgb (#139)
* add rgb2gray and gray2rgb

* update version

* minor fix for the docstring
2019-10-06 22:46:06 +08:00
Dhananjai Sharma d361ef21b0 Added solarize and posterize image transformations (#132)
* Added solarize and posterize image transformations

* Added solarize and posterize transformations. Modified __init__.py

* Updated mmcv/image/__init__.py

* Updated the docstrings for solarize and posterize

* add unit tests

* fix a test case
2019-10-06 22:12:17 +08:00
lizz 25b422ab6f Let progress goes to stderr (#115)
* let progress goes to stderr

Signed-off-by: lizz <lizz@sensetime.com>

* Add argument file=sys.stdout

Signed-off-by: lizz <lizz@sensetime.com>

* For the sake of the stupid pytest

Signed-off-by: lizz <lizz@sensetime.com>

* line width < 120 is anti-humane

Signed-off-by: lizz <lizz@sensetime.com>

* flake8

Signed-off-by: lizz <lizz@sensetime.com>

* Lets try

Signed-off-by: lizz <lizz@sensetime.com>
2019-08-21 19:31:58 +08:00
ZwwWayne d5865e0cbd Track iter progress (#112)
* track progress of iter&enum

* reformat

* reformat with yapf

* add unitest

* add doc, and deprecate track_enum_progress

* update docs & comments
2019-08-20 15:05:17 +08:00
Kai Chen eae81c1e86
Add yapf and isort to travis (#96)
* add yapf and isort to travis

* minor formatting

* remove blank lines

* skip unit tests for progressbar when python2

* update travis to ubuntu 16.04

* use a newer version ffmpeg

* add -y to add-apt-repository
2019-07-30 23:15:56 +08:00
Evgeny Nizhibitsky 395efbf2e9 Make latest checkpoint symlink relative (#75)
* Make latest symlink relative. Add tests

* Skip test_save_checkpoint in the absense of torch

* Fix pep8 in test_runner

* Import runner only if torch import has succeeded
2019-06-15 19:56:27 +08:00
nbei 9097957434 C++ implementation for Flow Warp Module (#71)
* flow_warp_c

* flow_warp_c

* beautify format

* beautify format

* beautify format

* beautify format

* add Cython

* modify

* fix details

* fix details

* fix type
2019-05-28 20:03:08 +08:00
Gu Wang d4b91b8376 test bgr2hls 2019-05-07 12:04:01 +08:00
Yue Zhao 944da49fcb add iminvert (#58)
* add iminvert

* fix for flake8

* minor improvement

* add test for iminvert

* fix for flake8

* fix for flake8

* revise __init__

* revise __init__
2019-04-20 00:27:59 -07:00
Kai Chen d426585999
Support str type for loggers (#39)
* fix the time estimation when resuming from a checkpoint

* fix the time estimation when resuming from a checkpoint

* support str type for loggers

* fix yaml dump tests
2019-03-25 21:59:02 -07:00
Kai Chen 47fc7a69ed fix unit test 2018-10-07 19:31:47 +08:00
Kai Chen b98980b77b add some unit tests 2018-10-07 17:45:41 +08:00
Kai Chen 852e980eac ignore a flake8 error 2018-10-04 20:36:29 +08:00
Kai Chen 6e8d925e45 add a class decorator to register file handlers 2018-10-04 19:48:59 +08:00
Kai Chen 51b73ac173 refactoring and remove some public apis 2018-10-04 17:15:14 +08:00
Kai Chen 34eca27216 add register_handler and refactor BaseFileHandler 2018-10-04 16:58:11 +08:00
Kai Chen ddef9a5606 fix flake8 errors 2018-10-01 22:13:52 +08:00
xiongyu 6249f829c6 add negative indexing support 2018-09-27 13:38:36 +08:00
xiongyu c75ff25940 add more tests for video_reader slice 2018-09-27 13:21:59 +08:00
xiongyu c16fab7eca minor change: value error to index error 2018-09-26 22:16:11 +08:00
xiongyu 2ab73c85ee add slice support and unit test 2018-09-26 22:00:30 +08:00
xiongyu 7bea02c0fa update video reader test code 2018-09-21 21:55:37 +08:00
Kai Chen 75ee2531a0 rename *Processor to *Handler and fix bug for python 2 2018-09-21 14:00:56 +08:00
Kai Chen 31e684fcfe bug fix: raise exceptions for missing config keys 2018-09-20 14:15:12 +08:00
Kai Chen 685e8f991b fix unit test for imflip 2018-09-02 21:31:07 +08:00
Kai Chen 1f76784717 add some methods 2018-09-02 21:20:02 +08:00
Kai Chen 978ecfda84 refactoring for optflow 2018-08-28 01:38:53 +08:00
Kai Chen 4adf7006b0 add config class 2018-08-27 20:25:52 +08:00
Kai Chen f872672f58 renaming and reorganizing for subpackage 2018-08-27 17:37:13 +08:00
Kai Chen eadd1e0f4f re-organize io module as a subpackage 2018-08-27 15:29:12 +08:00
Kai Chen 5f2e58c5f2 add optical flow module 2018-08-27 03:10:39 +08:00
Kai Chen 43ebfd9a62 move some unit tests 2018-08-27 02:38:05 +08:00
Kai Chen cbcb90dc21 port from cvbase and do some refactoring 2018-08-27 02:12:31 +08:00