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

Implementation of Side-Refinement #58

Closed
senliuy opened this issue Aug 2, 2017 · 10 comments
Closed

Implementation of Side-Refinement #58

senliuy opened this issue Aug 2, 2017 · 10 comments

Comments

@senliuy
Copy link

senliuy commented Aug 2, 2017

Hi, TianZhi,
I am trying to implement the training phase of CTPN with TensorFlow based on your code and faster-rcnn. However, I don't quietly understand the meaning of side-refinement or offset regression in your paper.
The problems is I don't understand the meaning of x_{side} in your paper so I can't implement the training loss function.
Can you release the code of side-refinement or tell me how to calculate x_{side}? It will help me understanding the meaning of your excellent idea.
Many thanks!

@senliuy senliuy changed the title Implementation of Side-Refindment Implementation of Side-Refinement Aug 2, 2017
@tianzhi0549
Copy link
Owner

Hi @senliuy, the side-refinement means that for every anchor, which is close to horizontal sides of word bounding boxes, need also regress the relative distance to the word bounding boxes. In other words, these anchors are required to output three values (y_c, h, x_side) instead of two values (y_c, h). Hope it is useful for you.

@senliuy
Copy link
Author

senliuy commented Aug 22, 2017

Thanks, @tianzhi0549 . Now I have finished the code of CTPN.

@senliuy senliuy closed this as completed Aug 22, 2017
@dajiangxiaoyan
Copy link

@senliuy will you plan to release the code?

@senliuy
Copy link
Author

senliuy commented Sep 5, 2017

@dajiangxiaoyan Sorry, the code is for company used currently.

@dajiangxiaoyan
Copy link

@senliuy Thank you for reply. I also reimplement CTPN. But I have met two problem.

  1. when adding blstm layer after the last conv layer, the net is not converge.
  2. how to split the label text bounding box. Just split it by 16 width. Fox example. the bbox is (x0,y0, x1, y1). Split it into (x0,y0,x0+16, y1)...?

@senliuy
Copy link
Author

senliuy commented Sep 5, 2017

  1. There are lots of reasons that lead to non-convergence. I'm sorry that I can't answer your question.
  2. You are right, tianzhi gave the code of generating anchors. You can copy his code.

@dajiangxiaoyan
Copy link

@senliuy Thank you very much. I will try.

@dajiangxiaoyan
Copy link

@senliuy sorry to bother you again. I do not add side-refinement in my implementation. So i wander if i divide gt boxes directly by equal 16 witdh, the overlap between gt and anchor may be too low. For example:

  1. The gt box is (16,y0,64,y1), divide into (16,y0,32,y1) (32,y0,48,y1) (48,y0,64,y1)
  2. the anchor is (8,y0',24,y1'), (24, y0',40,y1')

Then, calc the overlap is very low.
do i understand right?

@tonmoyborah
Copy link

tonmoyborah commented Mar 27, 2018

I want to implement side refinement too. Any help on how I should proceed?
@senliuy have you implemented the side refinement part?

@hcnhatnam
Copy link

hcnhatnam commented Apr 7, 2019

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

5 participants