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

Add surface_matching module. #70

Merged
merged 10 commits into from Sep 4, 2014
Merged

Add surface_matching module. #70

merged 10 commits into from Sep 4, 2014

Conversation

bmagyar
Copy link
Contributor

@bmagyar bmagyar commented Aug 19, 2014

This is the surface_matching module developed by @tolgabirdal for the GSoC 2014.

Video can be found here

bmagyar added a commit to bmagyar/opencv that referenced this pull request Aug 19, 2014
Apart from not displaying the table, it breaks the doc build of opencv/opencv_contrib#70.
@bmagyar
Copy link
Contributor Author

bmagyar commented Aug 19, 2014

The doc build will be fixed when opencv/opencv#3133 is merged.

@bmagyar
Copy link
Contributor Author

bmagyar commented Aug 20, 2014

@vpisarev , could you please take a look at this?
http://www.build.opencv.org/buildbot/builders/precommit-contrib_docs/builds/270/steps/compile%20release/logs/stdio
I went to the opencv repo but couldn't find where this is coming from exactly.

@bmagyar
Copy link
Contributor Author

bmagyar commented Aug 25, 2014

@vpisarev All green. Can you please review the code? I can squash the commits before you merge the PR. We are working on some further improvemens but this could still go through now as it adds basic functionalities and docs.

@@ -0,0 +1,163 @@
//
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please, move icp.hpp and other headers to include/opencv2/surface_matching subdirectory

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

@bmagyar
Copy link
Contributor Author

bmagyar commented Aug 29, 2014

@vpisarev please don't review it yet, I have to make some order in the branch of the PR, the last merge/rebase this morning made an awful mess. This is not the final version at all.

I will ping you again when it's ready and neat. Sorry for the inconvenience.

* and whether it should be loaded or not
* \return Returns the matrix on successfull load
*/
CV_EXPORTS cv::Mat loadPLYSimple(const char* fileName, int withNormals);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

no need to use cv:: when you are already inside cv namespace. Extra non-alphabetic characters make the code less readable.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

@bmagyar
Copy link
Contributor Author

bmagyar commented Aug 29, 2014

Squashed commits, from now on only fixes for your comments will come. @vpisarev please proceed.

//
// Author: Tolga Birdal <tbirdal AT gmail.com>

#ifndef _OPENCV_POSE3D_HPP_
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should we use some common prefix for the guard macros like

 _ _ OPENCV_SURFMATCH_POSE3D_HPP _ _ 
?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

@vpisarev
Copy link
Contributor

vpisarev commented Sep 1, 2014

I still see that 2 headers, icp.hpp and ppf_match_3d.hpp are not inside surfacematch subdirectory. Otherwise, the PR seems to be pretty much ready for integration

@vpisarev vpisarev self-assigned this Sep 2, 2014
@bmagyar
Copy link
Contributor Author

bmagyar commented Sep 2, 2014

I will work a bit more on removing not needed members and arguments of the API classes and make sure that Ptr changes are harmless.

@vpisarev
Copy link
Contributor

vpisarev commented Sep 2, 2014

ok, to me it looks pretty much ready for integration; @bmagyar, if you are done with the changes, I will merge it in.

@bmagyar
Copy link
Contributor Author

bmagyar commented Sep 2, 2014

The code works as it is now. If the last doc build passes, you can merge it if you want.

I will open a new PR with further refinements. I almost got rid of all the pointers but I'm too pedantic to leave them there, I also have some more ideas for other parts...

@vpisarev
Copy link
Contributor

vpisarev commented Sep 2, 2014

looks like doc builder failed; could you correct it?

@bmagyar
Copy link
Contributor Author

bmagyar commented Sep 2, 2014

Docs should be good now.

On 2 September 2014 19:04, Vadim Pisarevsky notifications@github.com
wrote:

looks like doc builder failed; could you correct it?


Reply to this email directly or view it on GitHub
#70 (comment).

Bence Magyar

Robotics Engineer

bence.magyar@pal-robotics.com

www.pal-robotics.com

Pal Robotics, S.L.
c/ Pujades 77-79, 4º4ª
08005 Barcelona
Spain
Tel +34 93 414 53 47
Fax +34 93 209 11 09
Skype: bencemagyar.pal-robotics

Facebook http://www.facebook.com/palrobotics1 - Twitter
http://twitter.com/#%21/palrobotics - PAL Robotics YouTube Channel
http://www.youtube.com/user/PALRobotics

P Antes de imprimir este e-mail piense bien si es necesario hacerlo: El
medioambiente es cosa de todos.

AVISO DE CONFIDENCIALIDAD: Este mensaje y sus documentos adjuntos, pueden
contener información privilegiada y/o confidencial que está dirigida
exclusivamente a su destinatario. Si usted recibe este mensaje y no es el
destinatario indicado, o el empleado encargado de su entrega a dicha
persona, por favor, notifíquelo inmediatamente y remita el mensaje original
a la dirección de correo electrónico indicada. Cualquier copia, uso o
distribución no autorizados de esta comunicación queda estrictamente
prohibida.
CONFIDENTIALITY NOTICE: This e-mail and the accompanying document(s) may
contain confidential information which is privileged and intended only for
the individual or entity to whom they are addressed. If you are not the
intended recipient, you are hereby notified that any disclosure, copying,
distribution or use of this e-mail and/or accompanying document(s) is
strictly prohibited. If you have received this e-mail in error, please
immediately notify the sender at the above e-mail address.

@bmagyar
Copy link
Contributor Author

bmagyar commented Sep 3, 2014

All greeen, sample runs fine here.
I will add tests in the next PR.

@vpisarev
Copy link
Contributor

vpisarev commented Sep 4, 2014

👍

vpisarev added a commit that referenced this pull request Sep 4, 2014
@vpisarev vpisarev merged commit b41783a into opencv:master Sep 4, 2014
@bmagyar
Copy link
Contributor Author

bmagyar commented Sep 4, 2014

thanks! 👍

@tolgabirdal
Copy link
Contributor

Please define the keytype as follows:

#if (defined x86_64 || defined _M_X64)
#include
typedef uint64_t KeyType;
#else
typedef unsigned int KeyType;
#endif

This will be fixed.

All the bests,

On 04 Feb 2016, at 08:57, patrycjabb notifications@github.com wrote:

Hi! I was trying to run surface_matching module, but I get an error when running with sample data:

"Run-Time Check Failure #2 - Stack around the variable 'hashKey' was corrupted."

It's at the beginning - training step.
Can anyone help?


Reply to this email directly or view it on GitHub.

@patrycjabb
Copy link

Thank you!

I fixed it by replacing "murmurHash" with "hashMurmurx86", as written here #170

@JoyMazumder
Copy link

Hello, I am new at C++. Can you tell me in which file I should add those lines? Thank you

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

Successfully merging this pull request may close these issues.

None yet

5 participants