Skip to content

ctpn跑了两天 终于跑通代码了,太难了,把跑代码过程遇到问题都给整合,希望能帮到大家 #94

@CHENG-EMMA1

Description

@CHENG-EMMA1

一、在运行CTPN之前,可以发现其实作者ctpn文件夹中缺失了一些文件
但是在easy中其实有类似的文件,所以把easy中的make.sh、setup.py、nms.pyx 复制到ctpn/lib文件下

二、运行test之前,应该把cd到ctpn/lib中。运行以下代码生成.so文件
sudo chmod +x make.sh
./make.sh

三、可以使用两种模式进行test:
①直接运行test.sh。使用命令sh test.sh来启动文本检测。

②“ python infer.py random cpu”意味着我们将在file中提供的特定目录路径中推断出一批图片。
“ python infer.py your_pic_path cpu”表示我们将仅使用cpu根据您的图片路径推断一张图片。

test.py运行时,报错
①如果出现头文件错误,可能是你当前运行代码的路径没办法搜索到对于的头文件
例如:dataset_handler.py中No module named 'draw_image'
将import draw_image 改为import lib.draw_image

②运行test.py时候,会出现没有lib.nms.cpu_nms
只需要把脚本文件中的lib.nms.cpu_nms改成lib.nms.nms就可以运行了

train.py运行时,报错
① No module named 'ConfigParser'
可能是因为python更新迭代,目前python下的包是小写的,所以改成import configparser即可,同理74行也要改configparser.ConfigParser()
② File "train.py", line 118, in
os.mkdir(MODEL_SAVE_PATH)
这个问题是路径问题,路径下没有model文件夹,所以需要自己创建
同理,train.py 22 23 25行,路径问题都需要修改成你的本地文件夹
③ File "/home/others/storage/xiaoyi/Lets_OCR-master/detector/ctpn/lib/generate_gt_anchor.py", line 45
SyntaxError: Non-ASCII character '\xe5' in file /home/others/storage/xiaoyi/Lets_OCR-master/detector/ctpn/lib/generate_gt_anchor.py on line 45, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
这个问题是因为没有中文utf-8头文件。在generate_gt_anchor.py的最前面加入
#!/usr/bin/python # -- coding: UTF-8 --
④ No module named lmdb
解决:conda install -c conda-forge python-lmdb
⑤try 部分出现error
原因:generate_gt_anchor.py中的draw_image 全部改成 lib.draw_image
tag_anchor.py中 68行'cal_IoU' 改成 'cal_IoU2'
create_config_file.py中 import ConFigparser 改成 import configparser

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions