Conversation
ea11f74 to
fb9f5a7
Compare
|
@nmellado I think it would make think simpler on the cmake side for CGAL if when building OpenGR in addition to Basically, this means making a copy of libs in a using |
|
Do we really have to copy the points? |
|
Thanks @sloriot for preparing this PR. I've just started, I've a couple of things to fix but will try to do it today. @afabri I have to improve a bit the OpenGR API so points does not need to be copied from CGal. But as discussed with @sloriot, we can first try with the current version where points are copied. |
|
@sloriot FYI the new API have been merged in |
|
@nmellado I did the update. |
|
@nmellado I created STORM-IRIT/OpenGR#15 that allows me to remove |
|
Regarding this point:
One solution would be to add package components to OpenGR, i.e. having one component per target that exists today. find_package(OpenGR COMPONENTS algo accel utils )Of course this would also require an option in OpenGR to build the library (ie. generate the cmake package) without compiling IO. Sounds good to you ? |
|
Right now it just does not link with the IO lib. So it is probably no longer an issue. |
|
Fair enough. |
|
@nmellado does it make sense to offer an interface to another method than super4PCS for now? |
|
We can stick to Super4PCS now, the other approaches might need more testing. Parameter setting is described here: https://storm-irit.github.io/OpenGR/a00012.html |
|
From what I see there are only 3 parameters. @sgiraudot what do you think? shall we pass the option struct or shall we add new named parameters (provided that I already added one to pass the options, it means that we'd need to only add two new). I think I'm in favor of adding new named parameters except if @nmellado says that the options are not stable and more might be added. |
|
I'm also in favor of adding new parameters, especially because they can be re-used by other algorithms (something like accuracy is general enough to have another usage somewhere else later on). Which wouldn't be the case with the option struct. Also NP is already a quite complex/flexible way to handle parameters, using them to carry a struct of several parameters seems like adding an unnecessary layer of complexity. By the way, we could already thinking of recycling some existing named parameters, for example |
|
@sloriot it's ok you can copy/paste the doc, and link to the OpengGR version, in case I update it. The parameters are stables and should not move that much.
|
dd56b93 to
5dc0653
Compare
| CGAL_add_named_parameter(number_of_samples_t, number_of_samples, number_of_samples) | ||
| CGAL_add_named_parameter(accuracy_t, accuracy, accuracy) | ||
| CGAL_add_named_parameter(maximum_running_time_t, maximum_running_time, maximum_running_time) | ||
| CGAL_add_named_parameter(overlap_t, overlap, overlap) |
There was a problem hiding this comment.
new parameters should be tested in test_cgal_bgl_named_params.cpp
There was a problem hiding this comment.
That is correct, I'll do it.
| assert(get_param(np, CGAL::internal_np::face_normal).v == 36); | ||
| assert(get_param(np, CGAL::internal_np::random_seed).v == 37); | ||
| assert(get_param(np, CGAL::internal_np::do_project).v == 38); | ||
| assert(get_param(np, CGAL::internal_np::opengr_options).v == 9001); |
There was a problem hiding this comment.
this one no longer exists
There was a problem hiding this comment.
I'll update the test with the new NP and remove this one.
|
|
||
| \subsection thirdpartyOpenGR OpenGR | ||
|
|
||
| \sc{OpenGR} is a is a set C++ libraries for 3D Global Registration released under the terms of the APACHE V2 licence. |
| \cgalCite{cgal:mam-sffgp-14}; | ||
|
|
||
| - `CGAL::OpenGR::register_point_sets()` computes the registration of | ||
| one point set w.r.t. another and directly aligns it to it. |
|
|
||
| \return the registration score. | ||
| */ | ||
| template <class PointRange1, class PointRange2, |
There was a problem hiding this comment.
What do you think of removing all the doc and point to the function computing the transformation matrix + saying that the transformation is applied to all the points from the second set?
There was a problem hiding this comment.
It's a good idea, avoiding duplicating the full documentation of the function.
|
Travis report : In file included from /home/travis/build/CGAL/cgal/Installation/../Point_set_processing_3/include/CGAL/OpenGR/register_point_sets.h:31: |
|
@sloriot You asked this morning about this pull-request. It is stalled:
|
done based on super4pcs_test.cc
OpenGR HEAD = cbce48e030
|
Replaced by #4153 |
Add a CGAL wrapper to OpenGR providing methods for registering point clouds.
cc @nmellado
TODO:
FindOpenGR.cmakecompute_transformation(), ...)