ModuleNotFoundError: No module named ‘lib.external.nms‘

最近在尝试CenterFace.pytorch/ CenterNet等网络,报错,

ModuleNotFoundError: No module named 'lib.external.nms'

在linux下,一般的解决办法是

cd src/lib/external
make

但在windows下,发现有一个setup.py,懒得去设置环境什么的,不过,这个setup.py中,name="coco",非常不喜欢,因为coco系统中已经有不少extension了,所以我改成了external,当然你可以改成任何名称,

import numpy
from distutils.core import setup
from distutils.extension import Extension
from Cython.Build import cythonize

extensions = [
    Extension(
        "nms", 
        ["nms.pyx"],
        extra_compile_args=[] #["-Wno-cpp", "-Wno-unused-function"]
    )
]

setup(
    name="external",
    ext_modules=cythonize(extensions),
    include_dirs=[numpy.get_include()]
)

python setup.py install

报告说安装到了这里,

copying build\lib.win-amd64-3.7\nms.cp37-win_amd64.pyd -> d:\Anaconda3\envs\tch37\Lib\site-packages
running install_egg_info
Writing d:\Anaconda3\envs\tch37\Lib\site-packages\external-0.0.0-py3.7.egg-info

我仔细看了一下,其实还另外安装了一个文件在同一目录下,叫做

nms.cp37-win_amd64.pyd

这下好办了,直接把

#from external.nms import soft_nms

改成

from nms import soft_nms 

然后就可以运行了。

 

 

你可能感兴趣的:(Python)