youdao-ai / SRNet

A tensorflow reproducing of paper “Editing Text in the wild”

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Training does not converge. T_sk generations are extremely bad.

lksshw opened this issue · comments

I have tried training using data from SynthText. However the results are very bad. T_sk generations after 130,000 iterations look really bad. Generator loss is between 15-19. I cannot seem to recreate your results whatsoever.
Attached below is an example of all o_b, o_f, o_sk, o_t after 130k iterations.

o_b : https://ibb.co/VSxmL3r
o_f : https://ibb.co/mbvVbqC
o_sk : https://ibb.co/jyXMDfn
o_t : https://ibb.co/Cw5dqfm

I have tried downloading weights from the link given. However, It's insanely difficult to download the pre-trained weights from Baidu cloud storage if you are not in China. Could you perhaps upload the weights to a different link ? My email: lakshwin045@gmail.com

I have tried training using data from SynthText. However the results are very bad. T_sk generations after 130,000 iterations look really bad. Generator loss is between 15-19. I cannot seem to recreate your results whatsoever.
Attached below is an example of all o_b, o_f, o_sk, o_t after 130k iterations.

o_b : https://ibb.co/VSxmL3r
o_f : https://ibb.co/mbvVbqC
o_sk : https://ibb.co/jyXMDfn
o_t : https://ibb.co/Cw5dqfm

I have tried downloading weights from the link given. However, It's insanely difficult to download the pre-trained weights from Baidu cloud storage if you are not in China. Could you perhaps upload the weights to a different link ? My email: lakshwin045@gmail.com

Because the original Synthtext project was rendered character by character and I didn't make changes, I think the t_sk data generation is not good because the text is too tight to separate the characters. You can modify the render_normal and render_curved functions in the render_text_mask.py file in Synthtext directory to increase the spacing between characters or directly render words.

I got the results of your example after training about 50,000 to 100,000 iterations, but after training 100,000 iterations, I can see that the correct results are roughly presented, and the generator loss is finally between 10-15. I've just upload my weights to Google drive: weights

My result still have some badcases. I think that increasing the distance between characters and not rendering curved words may improve the data quality to a certain extent and may lead to a better result. I'll find time to modify the model and data generation code and do some experiments, and the project will be updated.

Thank you.