chineseocr / table-detect

table detect(yolo) , table line(unet)
MIT License
236 stars 86 forks source link

关于用自己训练数据,table_ceil.py报错 #4

Open Liuchen-20191106 opened 4 years ago

Liuchen-20191106 commented 4 years ago

作者代码里train.py,训练是在table-line.h5 基础上迁移学习,我使用自己的数据,table_line.py,注释model.load_weights(tableModeLinePath),训练出来的模型,在运行预测table_ceil.py,报错,运行table_line.py,不报错,但是预测图片没有任何线条 GeForce GTX 1080 Ti, pci bus id: 0000:00:06.0, compute capability: 6.1) 1 Physical GPUs, 1 Logical GPUs 2020-10-15 17:30:16.059743: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcudnn.so.7 Traceback (most recent call last): File "table_ceil.py", line 105, in <module> tableDetect = table(img) File "table_ceil.py", line 25, in __init__ self.table_ceil() ##表格单元格定位 File "table_ceil.py", line 71, in table_ceil ceilboxes[:, [0, 2, 4, 6]] += xmin IndexError: too many indices for array: array is 1-dimensional, but 2 were indexed

DLove1204 commented 4 years ago

应该是代码问题,可以优先检查下代码,希望对您有用

huabao97 commented 4 years ago

请问一下怎么用自己的数据集训练,作者能不能给出具体的标注格式,训练步骤等等?万分感激!

wenlihaoyu commented 4 years ago

用labelme软件标注直线即可,横线用0,竖线用1标注

kxzj commented 3 years ago

您好,请问使用自己的数据集训练,预测图片没有任何线条的问题有没有解决呀?我也遇到了一样的问题……谢谢啦

kxzj commented 3 years ago

您好,请问使用自己的数据集训练,预测图片没有任何线条的问题有没有解决呀?我也遇到了一样的问题……谢谢啦

这个我应该解决了,估计是训练数据量不足的问题,增加训练的数据即可。

shumeirao commented 2 years ago

您好,请问使用自己的数据集训练,预测图片没有任何线条的问题有没有解决呀?我也遇到了一样的问题……谢谢啦

这个我应该解决了,估计是训练数据量不足的问题,增加训练的数据即可。

请问一下从头训练,大概需要多少条标记数据呢?

kxzj commented 2 years ago

您好,请问使用自己的数据集训练,预测图片没有任何线条的问题有没有解决呀?我也遇到了一样的问题……谢谢啦

这个我应该解决了,估计是训练数据量不足的问题,增加训练的数据即可。

请问一下从头训练,大概需要多少条标记数据呢?

我应该是用了八百张图。

shumeirao commented 2 years ago

您好,请问使用自己的数据集训练,预测图片没有任何线条的问题有没有解决呀?我也遇到了一样的问题……谢谢啦

这个我应该解决了,估计是训练数据量不足的问题,增加训练的数据即可。

请问一下从头训练,大概需要多少条标记数据呢?

我应该是用了八百张图。

我这边用1000张左右,训练100个epoch,发现结果只有一条线,而且loss在下降,准确率竟然从90多开始在下降到20多?请问一下,这可能是什么原因呢?

kxzj commented 2 years ago

我这边用1000张左右,训练100个epoch,发现结果只有一条线,而且loss在下降,准确率竟然从90多开始在下降到20多?请问一下,这可能是什么原因呢? 你看看标注的数据集有没有问题?我这边没有出现这种问题

shumeirao commented 2 years ago

我这边用1000张左右,训练100个epoch,发现结果只有一条线,而且loss在下降,准确率竟然从90多开始在下降到20多?请问一下,这可能是什么原因呢? 你看看标注的数据集有没有问题?我这边没有出现这种问题

我是用labelme标注的,横线为0竖线为1,然后将json数据利用代码调成跟该项目中的样例数据一样的格式,数据标注如下:

image

运算后面的log如下:

image
neverstoplearn commented 2 years ago

作者代码里train.py,训练是在table-line.h5 基础上迁移学习,我使用自己的数据,table_line.py,注释model.load_weights(tableModeLinePath),训练出来的模型,在运行预测table_ceil.py,报错,运行table_line.py,不报错,但是预测图片没有任何线条 GeForce GTX 1080 Ti, pci bus id: 0000:00:06.0, compute capability: 6.1) 1 Physical GPUs, 1 Logical GPUs 2020-10-15 17:30:16.059743: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcudnn.so.7 Traceback (most recent call last): File "table_ceil.py", line 105, in <module> tableDetect = table(img) File "table_ceil.py", line 25, in __init__ self.table_ceil() ##表格单元格定位 File "table_ceil.py", line 71, in table_ceil ceilboxes[:, [0, 2, 4, 6]] += xmin IndexError: too many indices for array: array is 1-dimensional, but 2 were indexed

我也遇到了一样的问题,请问你解决了吗?谢谢。