srijanparmeshwar / monodepth360

Master's project implementing depth estimation for spherical images using unsupervised learning with CNNs.
48 stars 10 forks source link

How did you train your model? #3

Open bell-one opened 6 years ago

bell-one commented 6 years ago

Hello, I'm so impressed with your job done.

but. I have question with this,

I checked that monodepth train there network with left, right image to get disparity map,

did you make left, right image of 360 and trained like original monodepth?

thanks

srijanparmeshwar commented 6 years ago

It is possible to do that, you will have issues at the left and right hand sides of the images where the viewing rays for the left and right images are collinear and the disparity tends to zero.

The model shown in the GIF is trained on top/bottom image pairs (vertical stereo instead of horizontal stereo). The disparity for a vertical stereo setup tends to zero at the poles instead.

You can generate a synthetic dataset using the scripts in the synthetic subfolder if you use Blender and the SUNCG dataset. Rendering takes quite a while even with a GPU so my original dataset was quite small.

You can also collect a real dataset by sticking two 360 degree cameras together in a vertical stereo setup. These images will likely need rectification unless your setup is very stable

Please let me know if you have any further questions.

bell-one commented 6 years ago

Thanks for your answer,

I'd like to test some ERP images with your project, but I don't have enough training dataset to do this. Can I use some trained weight value of yours?

thanks

srijanparmeshwar commented 6 years ago

I've sent a link to your email address on your profile. Let me know if you have any issues with it.

bell-one commented 6 years ago

Thanks for your kindness Srijan,

I’d like to do some little test with pre-trained values you provide, But I cannot load this values,

Tensorflow library said like below

‘Restoring from checkpoint failed. This is most likely due to a Variable name or other graph key that is missing from the checkpoint. Please ensure that you have not altered the graph expected based on the checkpoint. Original error’

I think some parts of network or variable was changed within your github version and training version.

Or is there any things to do before load pre-trained values?

Thanks,

srijanparmeshwar commented 6 years ago

Sorry for the delay in replying to you and sorry that you're having trouble using the weights. To be honest I'm not sure what I changed as it's been a while since I've worked on this code. Currently I'm quite busy so it'll be a while before I can properly debug this. Otherwise I would recommend playing about with some of the params like test_crop and dropout and the projection mode. Or possibly look back through the commits. It might help to print the weight tensors using inspect checkpoint (https://github.com/tensorflow/tensorflow/blob/master/tensorflow/python/tools/inspect_checkpoint.py). I guess this could also be a TF version problem? I developed this project in TF v1.0 and TF v1.2 if that's of any help.

Falah-Jabar-Rahim commented 5 years ago

Dear Srijan I am using your code "monodepth360" to compute the depth map for a single 360 degree image (in equirectangular format), with per-trained model that provided with the original code (e.g., model_kitti or model_eigen). However, I am encountering the following errors: W tensorflow/core/framework/op_kernel.cc:993] Not found: Key model/encoder/Conv_64/biases not found in checkpoint W tensorflow/core/framework/op_kernel.cc:993] Not found: Key model/encoder/Conv_63/weights not found in checkpoint W tensorflow/core/framework/op_kernel.cc:993] Not found: Key model/encoder/Conv_26/biases not found in checkpoint W tensorflow/core/framework/op_kernel.cc:993] Not found: Key model/encoder/Conv_25/weights not found in checkpoint W tensorflow/core/framework/op_kernel.cc:993] Not found: Key model/encoder/Conv_25/biases not found in checkpoint W tensorflow/core/framework/op_kernel.cc:993] Not found: Key model/encoder/Conv_24/weights not found in checkpoint

It seems the network can not find the weights for some of the layers. Please any advise how to overcome this issue?
I don't have enough training dataset, please can you provide me your pre-trained models?

Thanks in advance :)