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

No check point for the encoder is loaded. #9

Open
Athenanna opened this issue Apr 10, 2019 · 9 comments
Open

No check point for the encoder is loaded. #9

Athenanna opened this issue Apr 10, 2019 · 9 comments

Comments

@Athenanna
Copy link

Athenanna commented Apr 10, 2019

thanks for your kind.. emmm猛然看到了中文,那我直接中文问吧>< 感谢大佬的分享!我下载了链接里给出的Xception的model (text_seg_model_681epos),运行python Examples/demo_segmentation.py提示No check point for the encoder is loaded,伴随有大量not fonud: Parameter encoder*** is not in the model...Parameter feature_4x_conv*****not in the model..Parameter out_conv.0.weight fails to load.
请问有对应的model可以下载吗?大神求分享。另外尽管如此还是跑出了mask图,但是是整张图密密麻麻的纹理,请问我少了什么操作么,望回复,感恩

@yu45020
Copy link
Owner

yu45020 commented Apr 10, 2019

不是大神,别客气。

请用最新的commit下的 demo_segmentation.py 再试下。 如果没N卡的话将下面改掉

# model = model.cuda()

for i in evalset:
    process(i, 'cpu')

我最近几乎重构了整个项目,改的面目全非了 ......

text segment 这一部分用收集来的图训练总是不满意,得想别的方法。

@Athenanna
Copy link
Author

谢谢~用了新的脚本就work了。不过在demo_segmentation.py中line 19
b, c = cv2.findContours(mask, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)会报错(opencv-python 3.4.3),改为img, b, c = cv2.findContours(mask, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
另外,实验中发现对于漫画图效果不错,但是真人图、中文/英文图,以及当字号偏大时没有那么好。请问您介意分享这版训练代码吗?同时恭祝你重构大业早日完成!

@yu45020
Copy link
Owner

yu45020 commented Apr 11, 2019

我的cv2 是4.0 ,改了api吧。

训练图都是来自于汉化组的无子图加上原图,所以模型只对漫画有效。可以图源的去字并不完全统一,导致出来的效果并不好。 字号大小问题可以直接缩小/放大输入图像大小解决。

训练代码依赖于具体模型,我就不放出来了见笑了。有兴趣的话推荐参考这里

@Athenanna
Copy link
Author

好的,谢谢你的解答与帮助!

@absolutelynot
Copy link

看了上面的解答,终于运行出来了,但是遇到一个问题,就是_contour.jpg 是一片绿色,请问是这么设定的?还是我这边运行有问题?

@yu45020
Copy link
Owner

yu45020 commented Apr 14, 2019

@absolutelynot
输入的图片默认是单页的漫画,尺寸为1k x 1k 左右最好。 如果全部是绿色的话,应该是模型把全部点都认为是字体了。目前的模型还在试验阶段, 远远没达到能用的底部。

或者你贴出图片,让我试下。

@absolutelynot
Copy link

absolutelynot commented Apr 15, 2019

就mask.jpg是正确的,但是contour就是一片绿色了,如下。还想问一下,模型训练时使用的是原图和清理了文字的图么?看到mask里面基本实现了仅把文字部分以白色显示,所以很震惊。
1 jpg_contour
1
1 jpg _mask

@yu45020
Copy link
Owner

yu45020 commented Apr 15, 2019

我估计可能是opencv 的版本不同。 我用的是4.0, 绿色部分是用cv 绕着mask的白点画多边形。 这一块只是用来展示模型效果。 生成的mask才是重点,用来下一步的去字后图像修复。

下图可以看到,字体识别并不统一。 这似乎有训练数据带来的。 不同的汉化组有不同的规则要求, 正字都会去掉,但其他的部分就不同了,这给模型训练带来了难度。 即使用上了 不同的loss也不能很好的解决。 在尝试直接给图片加正字后求掉,这样起码可以统一效果。

a jpg_contour

@absolutelynot
Copy link

absolutelynot commented Apr 17, 2019

我用的opencv是4.1的,有可能是这个问题,想再问一下,“直接给图片加正字”是什么意思啊?

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

3 participants