文章主要是为了说明在windows平台下调试遇到的问题。
代码地址:https://github.com/Aurora11111/chinese-ocr-pytorch
按照相关说明,安装相关的pytorch和tensorflow,我使用的是python3.7
下载代码后,需要进行修改才能在windows上运行。
1.修改cython_nms.pyx文件中的第25行,修改为如下
cdef np.ndarray[np.int_t, ndim=1] order = scores.argsort()[::-1].astype('int32')
2.新建一个python文件,假如为T.py,内容如下,主要为了解决pyx文件无法在windows下调用的问题。
import sys
import numpy as npA = sys.path.insert(0, "..")
from distutils.core import setup
from distutils.extension import Extension
from Cython.Build import cythonize
from Cython.Distutils import build_ext# ext_module = cythonize("TestOMP.pyx")
ext_module = Extension("cython_nms",["cython_nms.pyx"],extra_compile_args=["/openmp"],extra_link_args=["/openmp"],
)setup(cmdclass={'build_ext': build_ext},ext_modules=[ext_module],# 注意这一句一定要有,不然只编译成C代码,无法编译成pyd文件include_dirs=[np.get_include()]
)
3.在cmd命令行下,进入该目录,执行python T.py build_ext --inplace
该工程中,需要将两个pyx文件转换,分别是bbox和cython_nms,在以上代码中修改为相应的文件名称即可。
在该目录下会生成两个文件。如图前两个文件为新生成的。

4.修改demo.py中24行
output_file = os.path.join(result_dir, image_file.split('\\')[-1])
因为在windows平台下,路径为反斜杠
运行demo.py,即可。














