figitaki / deep-retrieval Goto Github PK
View Code? Open in Web Editor NEWπ Image retrieval using deep learning of global descriptors.
License: Other
π Image retrieval using deep learning of global descriptors.
License: Other
I finally added the roi pooling and normalize layers into the official version of caffe, and compile it with success, and get the features of query and dataset, together with 55 queries' rank. But after I read your code -- test.py, it appeares that I found nowhere RPN is applied when generating rois for afterwards process, such as feature extraction, instead I saw the r-mac operation. So I'm wondering if you generated the rois using r-mac, instead of what the authors written in his paper that the rois were generated by RPN.
Thanks!
I am trying to run this repo and see that roi_pooling_param is not found. Where can I download this file from?
python test.py --gpu 0 --S 800 --L 2 --proto deploy_resnet101_normpython.prototxt --weights model.caffemodel --dataset datasets/Oxford --eval_binary datasets/evaluation/compute_ap --temp_dir tmp --dataset_name Oxford
WARNING: Logging before InitGoogleLogging() is written to STDERR
W0603 19:52:39.543620 1416 _caffe.cpp:139] DEPRECATION WARNING - deprecated use of Python interface
W0603 19:52:39.543644 1416 _caffe.cpp:140] Use this instead (with the named "weights" parameter):
W0603 19:52:39.543646 1416 _caffe.cpp:142] Net('deploy_resnet101_normpython.prototxt', 1, weights='model.caffemodel')
[libprotobuf ERROR google/protobuf/text_format.cc:274] Error parsing text-format caffe.NetParameter: 4539:22: Message type "caffe.LayerParameter" has no field named "roi_pooling_param".
F0603 19:52:39.545574 1416 upgrade_proto.cpp:88] Check failed: ReadProtoFromTextFile(param_file, param) Failed to parse NetParameter file: deploy_resnet101_normpython.prototxt
*** Check failure stack trace: ***
how can train the premodel?
I have modified the caffe source code according to
Region of Interest pooling layer (ROIPooling). This is the same layer used by fast RCNN and faster RCNN. A C++ implementation can be found in BVLC/caffe#4163
But cannot succeed compilation. The error is showed in the following. Is there some modification of caffe code between my version (cloned in April,2019) and yours?
And how to run your test code of deep retrieval model At present.
src/caffe/solver.cpp: In member function 'void caffe::Solver<Dtype>::InitTrainNet()': src/caffe/solver.cpp:116:38: error: 'class caffe::SolverParameter' has no member named 'weights_size' for (int w_idx = 0; w_idx < param_.weights_size(); ++w_idx) { ^ src/caffe/solver.cpp:117:33: error: 'class caffe::SolverParameter' has no member named 'weights' LoadNetWeights(net_, param_.weights(w_idx)); ^ src/caffe/solver.cpp: In member function 'void caffe::Solver<Dtype>::InitTestNets()': src/caffe/solver.cpp:194:40: error: 'class caffe::SolverParameter' has no member named 'weights_size' for (int w_idx = 0; w_idx < param_.weights_size(); ++w_idx) { ^ src/caffe/solver.cpp:195:44: error: 'class caffe::SolverParameter' has no member named 'weights' LoadNetWeights(test_nets_[i], param_.weights(w_idx)); ^ Makefile:591: recipe for target '.build_release/src/caffe/
def rmac_regions(W, H, L):#θΏιLδ½Ώη¨ηζ―3
ovr = 0.4 # desired overlap of neighboring regions
steps = np.array([2, 3, 4, 5, 6, 7], dtype=np.float) # possible regions for the long dimension
w = min(W,H)
b = (max(H,W) - w)/(steps-1)
idx = np.argmin(abs(((w ** 2 - w*b)/w ** 2)-ovr)) # steps(idx) regions for long dimension
Wd, Hd = 0, 0
if H < W:
Wd = idx + 1
elif H > W:
Hd = idx + 1
What does step,b,idx,Wd,Hd mean here?Thank you.
there is no pretrained model
Can you post it out
I am trying to compile the caffe model adding ROI pooling layer, however, getting some errors. It would be great if someone provide any guideline how to do that.
Thanks in advance.
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.