Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Open
CHENG-EMMA1 opened this issue Oct 23, 2020 · 15 comments

Comments

@CHENG-EMMA1
Copy link

CHENG-EMMA1 commented Oct 23, 2020

一、在运行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

@CHENG-EMMA1 CHENG-EMMA1 changed the title 跑了两天 终于跑通代码了,太难了,把跑代码过程遇到问题都给整合,希望能帮到大家 ctpn跑了两天 终于跑通代码了,太难了,把跑代码过程遇到问题都给整合,希望能帮到大家 Oct 23, 2020
@maggie-c1523
Copy link

maggie-c1523 commented Oct 26, 2020

感谢,请问你有infer吗?make顺利吗?我看到了你MAKE的指南,请问easy这个文件夹在哪里?你指的是east文件夹吗?但是我没有找到setup.py这个文件,能够再详细分享一下吗

@CHENGHUIYI
Copy link

CHENGHUIYI commented Oct 28, 2020

感谢,请问你有infer吗?make顺利吗?我看到了你MAKE的指南,请问easy这个文件夹在哪里?你指的是东部文件夹吗?但是我没有找到setup.py这个文件,能够再详细分享一下吗
是的,是east文件,笔误。谢谢提醒,缺失的文件已经打包,下载即可。
need.zip

@Yaoxingtian
Copy link

Yaoxingtian commented Nov 3, 2020

您好,方便加个微信请教一下吗
请问这个环境配置是什么样的,我好像一直有问题。
还有这个make 的时候报错 build//.so ./ 没有这个文件

@XHQC
Copy link

XHQC commented Dec 24, 2020

@Yaoxingtian @ @CHENGHUIYI @maggie-c1523 @CHENG-EMMA1
在这里我分享下我的成功运行方法,按照作者的源码除了函数库import导入存在问题,需要修改下,其他地方没遇到问题的,关键的地方是在一个文件的参数上,Makefile 这个文件修改下参数,-I/usr/include/python2.7 ,这个地址比较眼熟吧,这是你系统自带的python 2.7,你环境里用的肯定不是这个版本的python吧,找到它,把它的路径复制到这里来,然后按作者的方法,进行下去不会遇到太难的问题的

@distance-nayuta
Copy link

训练出现这种错误怎么办?大佬求教
Traceback (most recent call last):
File "D:/test/CTPN-master/ctpn/infer1.py", line 416, in
random_test(net)
File "D:/test/CTPN-master/ctpn/infer1.py", line 350, in random_test
nms_result = lib.nms.cpu_nms(for_nms, NMS_THRESH)#这里是非极大值抑制得到唯一的一个候选框
File "D:\test\CTPN-master\ctpn\lib\nms.py", line 5, in cpu_nms
x1 = dets[:, 0]
IndexError: too many indices for array: array is 1-dimensional, but 2 were indexed

@2291754463
Copy link

2291754463 commented May 23, 2021

可以加微信交流一下吗? 我训练CTPN的时候正样本的loss始终下不去,或者您能否开源您的数据集&CTPN源代码 我自己训练看看

@CHENG-EMMA1
Copy link
Author

Can you add wechat for communication? When I train ctpn, the loss of positive samples is always unable to go down, or can you open source your dataset & ctpn source code? I will train and see for myself

可以加微信交流一下吗? 我训练CTPN的时候正样本的loss始终下不去,或者您能否开源您的数据集&CTPN源代码 我自己训练看看

你好,方便给我QQ号码吗?我加你,打包给你吧。

@leahyyy
Copy link

leahyyy commented Sep 22, 2021

您好,方便加个微信请教一下吗
请问这个环境配置是什么样的,我好像一直有问题。
还有这个make 的时候报错 build//.so ./ 没有这个文件

@2291754463
Copy link

2291754463 commented Sep 22, 2021 via email

@leahyyy
Copy link

leahyyy commented Sep 22, 2021

make.sh的复制路径少写了一层星号 所以没找到.os

@2291754463
Copy link

2291754463 commented Sep 22, 2021 via email

@alan3w
Copy link

alan3w commented Mar 6, 2022

你好 请问可以打包发我一份么,我在训练时时也遇到了各种不顺

@SuanNaiJiang98
Copy link

你好 请问可以打包发我一份么,我在训练时时也遇到了各种不顺

您好,这个您复现成功了吗

@CyberAI-XDU
Copy link

说一下我最近又配置成功:
1、先在前面的回答中下载安装lib中所需的文件
2、进入ctpn/lib文件夹后 python3 setup.py build_ext --inplace
3、然后修改一下make.sh,这一步卡了好久,将原文件里的mv build//.so ./修改为mv build///*.so ./,多加一层,然后./make.sh,然后sh test.sh就成功了。

啊 配置环境真的好难

@thenonetime
Copy link

这是最近的配置成功s的
就是现问题:
for_nms = np.array(for_nms, dtype=np.float32)
nms_result = lib.nms.nms(for_nms, NMS_THRESH)
出现需要long输入的情况,这个时候要改前面那个nms.pyx文件
25-29行
要改成
cdef np.ndarray[np.int64_t, ndim=1] order = scores.argsort()[::-1]
cdef int ndets = dets.shape[0]
cdef np.ndarray[np.int64_t, ndim=1] suppressed =
np.zeros((ndets), dtype=np.int64)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests