zjhthu / oanet Goto Github PK
View Code? Open in Web Editor NEWImplementation of ICCV19 Paper "Learning Two-View Correspondences and Geometry Using Order-Aware Network"
Implementation of ICCV19 Paper "Learning Two-View Correspondences and Geometry Using Order-Aware Network"
The link you provided to download the raw_data_yfcc.tar.gz file is not working. The reason should be that altizure platform is closed. Do you have any other downloading methods?
I look forward to your reply. Thank you.
Hi,
I was just wondering if you could please clarify some inconsistencies between the paper and the provided implementation. Specifically, in the paper you state that you use learning rate of 10^-4 and that the weight alpha is 0.1 after 20k iterations. However, in the provided config the weight of the essential loss is 0.5 and the learning rate is 10^-3.
Thanks
Zan
firstly, thanks for your great work. But when I have downloaded the YFCC100M dataset, and I try to generate the yfcc dataset, I can not find the yfcc_train.txt in this dataset.
# dump yfcc training seqs with open('yfcc_train.txt','r') as ofp: train_seqs = ofp.read().split('\n') if len(train_seqs[-1]) == 0: del train_seqs[-1]
I tried to re-train the fundamental model using 8000 sift keypoints. However, using the default setting of in extract_feature.py , only 4000-6000 keypoints can be extracted. And the trained model performed bad compared with provided fundamental estimation model. Is there any suggestion on the setting of get more points. Thanks~
when i use contextdesc-yfcc model in the demo script
self.class.name, "\n\t".join(error_msgs)))
RuntimeError: Error(s) in loading state_dict for OANet:
size mismatch for weights_init.conv1.weight: copying a param with shape torch.Size([128, 5, 1, 1]) from checkpoint, the shape in current model is torch.Size([128, 4, 1, 1]).
size mismatch for weights_iter.0.conv1.weight: copying a param with shape torch.Size([128, 7, 1, 1]) from checkpoint, the shape in current model is torch.Size([128, 6, 1, 1]).
how to use the contextdesc model ? thanks
Excuse me, I wonder where is the implementation of the Spatial Correlation Layer.
In your paper, you added the Spatial Correlation Layer into the original PointnetCN structure to:
explicitly model relation between different nodes and capture the complex global context
The graph in your paper displayed as two transpose charts but I can not find it in the code.
Could you please tell me where is the implementation?
Thanks.
Hi Zixin,
I just noticed that there is a bit of an issue with the license notification and citation acknowledgement for the CVPR 2018 paper. Could you please add them? EPFL and UVic have copyrights to the code and they are only released for research purposes. Thus, you are actually violating it by releasing your code as MIT. Can you please make that part explicit?
Thanks!
Kwang
the first time i extract feature and run yfcc.py,the file just is 5.1G,but the second time i extract feature and run yfcc.py,the file is 32.7G,so which is right?
when i run yfcc.py,there is a error. how to fix it?
`../raw_data/yfcc100m//buckingham_palace/test
dump dir ../data_dump//buckingham_palace/sift-2000/test
Error while loading ../raw_data/yfcc100m//buckingham_palace/test/calibration/calibration_000001.h5
Traceback (most recent call last):
File "/media/data/wzy/OANet/dump_match/utils.py", line 98, in loadh5
raise e
File "/media/data/wzy/OANet/dump_match/utils.py", line 95, in loadh5
dict_from_file = readh5(h5file)
File "/media/data/wzy/OANet/dump_match/utils.py", line 111, in readh5
dict_from_file[_key] = h5node[_key].value
AttributeError: 'Dataset' object has no attribute 'value'
Process finished with exit code 1`
Hi,
why is the code implementation inconsistent with the paper...
thanks ahead. I have read your preprocessing code on the yfcc dataset, but I do not understand the process of it. Now If I want to do the feature matching on my own dataset, what steps should I do?
in the paper, why the mAP of Known less than Unknown?
Hi,
thanks for sharing the code.
Why use iteration instead of epoch when training?
Look forward to your reply.
Regards
Hi zjhthu,
The specific value is not found inthe paper.
Hi,
Thanks for the amazing work.
I'm trying to train your OANet and my own method on YFCC100M dataset. But there is a segmentation fault(core dump) error after hundreds of or thousands of training iterations. Have you ever got the similar error?
Hi, I have a question about the GL3D model. When I test it on the YFCC test set, the results are very bad:
test result [0.09993750000000001, 0.029445680575755823, 0.5177923955358564, 0.9643927037450776, 0.446788042617176, 0.6026962917102501, 0.46986473430161074]
Is it something wrong with the test setting? And what hyperparameters do you use for training the GL3D model? I cannot see any codes in the repo.
Thank you very much.
Hello, i can't find the test data scene in raw SUN3D data, due to i need find their depth data. Could you tell me how did you generate these test data.
Thank you for a great project. As I dig deeper into your code, I see that the run function of the NNMatcher(Learnedmatcher.py) function returns corr, sides, corr_Idx. Corr and corr_Idx are the corresponding match point and the index of descriptor respectively, but what does sides mean? Distribution of inside and outside points? Hope you can help answer, thank you
请问什么时候会放出Learning Two-View Correspondences and Geometry Using Order-Aware Network的代码?
Hi,
I have successfully downloaded the model however I have a ERROR 400: Bad Request when I try to download the data with wget https://research.altizure.com/data/oanet_data/data_dump.tar.gz
Cheers,
François Darmon
Hello @zjhthu ,
I really appreciate your great work, but I wanted to know how the 3D construction results are attained (using the output of OANet)
Thanks in advance!
I understand that variables d1
and d2
are the sum of squares of each descriptor
But I don't know why the distance matrix in NNMatcher.run
is calculated like this
d1, d2 = (desc1**2).sum(1), (desc2**2).sum(1)
distmat = (d1.unsqueeze(1) + d2.unsqueeze(0) - 2*torch.matmul(desc1, desc2.transpose(0,1))).sqrt()
Especially the part - 2*torch.matmul(desc1, desc2.transpose(0,1))
is confusing me
Anybody knows how it works?
https://research.altizure.com/data/oanet_data/raw_data.tar.gz
Proxy request sent, awaiting response... 403 Forbidden
2020-12-07 11:49:19 ERROR 403: Forbidden.
hi,
thanks for your great job. Recently, i want to use the dataset of YFCC100M, but i don't find the depth data. while depth.txt exists. Can you tell me how to get the all data
best.
Hi,
The inference is performed on unknown scenes in default. How to perform experiments on known scenes of YFCC100M and sun3d?
Bests,
Hi,
thanks for sharing the code.
I found that on the dataset yfcc, the best model for the estimation of the fundamental matrix is in sift-side-8k directory. Does this mean that both use_ratio and use_mutual are used?
Look forward to your reply.
Regards
Hi Jiahui, I'm trying to reproduce the results on YFCC.
I have a question about the computation of loss.
I find that the essential loss is used after 20k steps and only those essential loss less than 0.1 is used in the backward. (https://github.com/zjhthu/OANet/blob/master/core/loss.py#L49 and https://github.com/zjhthu/OANet/blob/master/core/loss.py#L84) I am wondering what is the motivation behind this implementation and what will happen if we use all essential losses all the time.
Thank you for the excellent work.
Hi,
I have a minor question about the evaluation metrics. In the paper, the standard metric is mAP under 5 degree. But I find that the computation of mAP uses an interval of 5 degree (
Line 47 in 51d71ff
Thank you!
Will the gradient explosion affect the training results? Do you also encounter during training?
Hi, thanks for you perject. I want to get the mAP on my data,what should I do? thanks
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.