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

renderdepth.png and args.horizontal #3

Closed
qiminchen opened this issue Jul 30, 2020 · 2 comments
Closed

renderdepth.png and args.horizontal #3

qiminchen opened this issue Jul 30, 2020 · 2 comments

Comments

@qiminchen
Copy link

Hi Jingwei, thanks for the amazing code. I have a few questions about the dataset and train_affine_dorn. Would it be possible to release the depth.png? What is the args.horizontal in train_affine_dorn.py used for? Thank you.

@hjwdzh
Copy link
Owner

hjwdzh commented Jul 30, 2020

Our project is unrelated with the depth image/prediction. If you want to try depth estimation with our code, those images can be acquired from ScanNet.

Horizontal is a tricky thing. Basically, horizontal surfaces are those regions which are more "horizontal", or surfaces in which angles between the surface normal and gravity is smaller than 45 degree.

This is used for training the tangent directions. The story is that there is a natural ambiguity in the principal tangent directions (imagine a square room, there will be 4 directions at the floors). This ambiguity is harmful for training efficiency.

Fortunately, there is a clear definition of gravity vector for indoor scenes.

Therefore, we first train our network for those "non-horizontal" surfaces and estimate one of the four principal directions that closest to the gravity vector. This will give the network a good initialization. After that, we train all surfaces to predict any of the 4 directions.

@hjwdzh hjwdzh closed this as completed Jul 30, 2020
@qiminchen
Copy link
Author

thanks for the explanation.

it seems like args.horizontal == 1 is never used since initially args.horizontal == 0 and in the second epoch args.horizontal == 2?

By the way, how many epochs does the network need to be converged? I am training the net and it takes roughly 7 hr/epoch using single 2080ti with a batch size of 8.

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

2 participants