首页 > 解决方案 > Python 无法在 windows -EAST 上编译 lanms

问题描述

我把图片中的文字变成一个矩形。为此,我使用 EAST: An Efficient and Accurate Scene Text Detector 我使用下面的示例 https://github.com/kurapan/EAST

我在下面的代码中运行

import subprocess
import os
import numpy as np

BASE_DIR = os.path.dirname(os.path.realpath(__file__))

if subprocess.call(['make', '-C', BASE_DIR]) != 0:  # return value
    raise RuntimeError('Cannot compile lanms: {}'.format(BASE_DIR))


def merge_quadrangle_n9(polys, thres=0.3, precision=10000):
    from .adaptor import merge_quadrangle_n9 as nms_impl
    if len(polys) == 0:
        return np.array([], dtype='float32')
    p = polys.copy()
    p[:,:8] *= precision
    ret = np.array(nms_impl(p, thres), dtype='float32')
    ret[:,:8] /= precision
    return ret

但是,我得到了这个错误

Using TensorFlow backend.
Traceback (most recent call last):
  File "C:\Users\LENOVA\Desktop\east\EAST-master\eval.py", line 11, in <module>
    from lanms import *
  File "C:\Users\LENOVA\Desktop\east\EAST-master\lanms\__init__.py", line 7, in <module>
    if subprocess.call(['make', '-C', BASE_DIR]) != 0:  # return value
  File "C:\Users\LENOVA\AppData\Local\Programs\Python\Python36\lib\subprocess.py", line 267, in call
    with Popen(*popenargs, **kwargs) as p:
  File "C:\Users\LENOVA\AppData\Local\Programs\Python\Python36\lib\subprocess.py", line 707, in __init__
    restore_signals, start_new_session)
  File "C:\Users\LENOVA\AppData\Local\Programs\Python\Python36\lib\subprocess.py", line 990, in _execute_child
    startupinfo)
FileNotFoundError: [WinError 2] The system cannot find the file specified

标签: pythonopencvocr

解决方案


我尝试在以下两行中进行评论lanms/__init__.py

if subprocess.call(['make', '-C', BASE_DIR]) != 0:  # return value
    raise RuntimeError('Cannot compile lanms: {}'.format(BASE_DIR))

它对我有用。对于上述错误。


推荐阅读