DORN icon indicating copy to clipboard operation
DORN copied to clipboard

The usage of SID

Open lidongyv opened this issue 6 years ago • 6 comments

Since many issues are presented about SID, here, I offer my realization. The alpha and beta are determined from the ground truth, where you should compute the max and min depth value for one certain dataset. When you fine-tune on a new dataset, don't forget to modify the value. The K setting is shown in the Exp section 4.2.3, 80 is the best. Though I haven't reproduced the perfect results on NYU v2 because of the different network architecture, it seems this strategy offers the promotion for accuracy. I also try the learnable alpha and beta value but it seems it varies a lot for different scenes. When the alpha changes stably, I believe it suffers from overfitting. Using the statistic value of alpha and beta can directly reduce the error since you will not get a too small or too large value. I think it can be deemed as an interesting trick to reduce the accuracy, but I haven't tried whether changing the alpha or beta to a more free value like 0 and 10 is helpful.

lidongyv avatar Nov 19 '18 15:11 lidongyv

Hi, in Sec 3.2, do you know how to set the shift ζ? And what 's the effect of the shift ζ?

dontLoveBugs avatar Nov 25 '18 09:11 dontLoveBugs

Since many issues are presented about SID, here, I offer my realization. The alpha and beta are determined from the ground truth, where you should compute the max and min depth value for one certain dataset. When you fine-tune on a new dataset, don't forget to modify the value. The K setting is shown in the Exp section 4.2.3, 80 is the best. Though I haven't reproduced the perfect results on NYU v2 because of the different network architecture, it seems this strategy offers the promotion for accuracy. I also try the learnable alpha and beta value but it seems it varies a lot for different scenes. When the alpha changes stably, I believe it suffers from overfitting. Using the statistic value of alpha and beta can directly reduce the error since you will not get a too small or too large value. I think it can be deemed as an interesting trick to reduce the accuracy, but I haven't tried whether changing the alpha or beta to a more free value like 0 and 10 is helpful.

Hi, in Sec 3.2, do you know how to set the shift ζ? And what 's the effect of the shift ζ?

dontLoveBugs avatar Nov 25 '18 09:11 dontLoveBugs

@dontLoveBugs sorry, I just see your question, Since I did not get the answer from the author, here I offer some of my individual ideas. I use the pre-computed alpha and beta from the NYU2 dataset which is 0.7132 and 9.95. So to make the alpha* to 1, the shift is set to 0.29, which means we only take consider of the part larger than zero on the log function. The euqation 1 can be simply written only with beta. We take the smooth part of the log function, which makes SID more smooth. You can get a very bad result if the alpha is set close to zero. You can try it if you like.

lidongyv avatar Dec 01 '18 08:12 lidongyv

@dontLoveBugs sorry, I just see your question, Since I did not get the answer from the author, here I offer some of my individual ideas. I use the pre-computed alpha and beta from the NYU2 dataset which is 0.7132 and 9.95. So to make the alpha* to 1, the shift is set to 0.29, which means we only take consider of the part larger than zero on the log function. The euqation 1 can be simply written only with beta. We take the smooth part of the log function, which makes SID more smooth. You can get a very bad result if the alpha is set close to zero. You can try it if you like.

Thanks!

dontLoveBugs avatar Dec 03 '18 12:12 dontLoveBugs

@dontLoveBugs sorry, I just see your question, Since I did not get the answer from the author, here I offer some of my individual ideas. I use the pre-computed alpha and beta from the NYU2 dataset which is 0.7132 and 9.95. So to make the alpha* to 1, the shift is set to 0.29, which means we only take consider of the part larger than zero on the log function. The euqation 1 can be simply written only with beta. We take the smooth part of the log function, which makes SID more smooth. You can get a very bad result if the alpha is set close to zero. You can try it if you like.

@pobingwanghai Hi You said you use the pre-computed alpha and beta from the NYU2 dataset which is 0.7132 and 9.95. Do you compute it from test dataset or train dataset? From my experiments the min on test dataset is 0.7133 and max is 9.98 but the min on train dataset is 0.06 and max is 10

lyxlynn avatar Jan 04 '19 08:01 lyxlynn

@Liuyixuan95 you must ignore blank values, so you just check on the training data with filled depth values.

lidongyv avatar Jan 15 '19 09:01 lidongyv