diff --git a/setup.py b/setup.py
index 976cc4bde23e2dd54433379e280a1fd2df543dd1..3c8f55c7c28e03a22801d568f1cc078becc0cb15 100644
--- a/setup.py
+++ b/setup.py
@@ -119,6 +119,13 @@ def make_cython_ext(name, module, sources):
     return extension
 
 
+def get_requirements(filename='requirements.txt'):
+    here = os.path.dirname(os.path.realpath(__file__))
+    with open(os.path.join(here, filename), 'r') as f:
+        requires = [line.replace('\n', '') for line in f.readlines()]
+    return requires
+
+
 if __name__ == '__main__':
     write_version_py()
     setup(
@@ -146,10 +153,7 @@ if __name__ == '__main__':
         license='Apache License 2.0',
         setup_requires=['pytest-runner', 'cython', 'numpy'],
         tests_require=['pytest'],
-        install_requires=[
-            'mmcv>=0.2.10', 'numpy', 'matplotlib', 'six', 'terminaltables',
-            'pycocotools', 'torch>=1.1', 'imagecorruptions'
-        ],
+        install_requires=get_requirements(),
         ext_modules=[
             make_cython_ext(
                 name='soft_nms_cpu',