From 5ff006ea01b8af6f0d3ca3b6079f1a28687fc4e6 Mon Sep 17 00:00:00 2001 From: Joe Dinius Date: Sat, 20 Feb 2021 07:48:53 -0800 Subject: [PATCH] update READMEs before 0.4.0 release --- README.md | 2 +- bindings/README.md | 4 ++-- correspondences/README.md | 6 ++++-- correspondences/mc/README.md | 9 ++++----- 4 files changed, 11 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index f242812..808436f 100644 --- a/README.md +++ b/README.md @@ -40,7 +40,7 @@ Within each subproject, you will find a separate `README` describing that subpro The code in each subproject follows a common standard and is well-commented. [Unit tests](./tests) are provided for key functionality but some things may remain unclear. If this is the case, please create an [issue](https://github.com/jwdinius/nmsac/issues). -For desired formatting, please see the script [linter.sh](scripts/linter.sh) and the [`cpplint` docs](https://github.com/cpplint/cpplint). I will eventually add Travis integration to check each PR, but until then I use the linter script. +For desired formatting, please see the script [linter.sh](scripts/linter.sh) and the [`cpplint` docs](https://github.com/cpplint/cpplint). ## Quick Start diff --git a/bindings/README.md b/bindings/README.md index 7b4d758..8fe10a0 100644 --- a/bindings/README.md +++ b/bindings/README.md @@ -1,6 +1,6 @@ # `nmsac::bindings` -Build bindings to call `nmsac` functions from different languages. Currently supported languages: +Build bindings to call `nmsac::main` from different languages. Currently supported languages: * [`python3`](./python) -_Note: Currently, only `nmsac::main` function (and type definition dependencies) have been wrapped._ +Only `nmsac::main` is exposed, by design. However, if you want to bind other functions, go right ahead. diff --git a/correspondences/README.md b/correspondences/README.md index 0ef0d01..07eafde 100644 --- a/correspondences/README.md +++ b/correspondences/README.md @@ -3,8 +3,10 @@ Implementation for Algorithm 2 from the [top-level README](../README.md). For a This subproject is organized in the following way: -* [`common`](./common) - common utility code and type definitions (including `CorrespondencesBase` definition, which is used to wrap all algorithm implementations for computing correspondences) +* [`common`](./common) - common utility code and base class definitions +* [`graph`](./graph) - methods for constructing and working with undirected graphs (e.g. for [`mc`](./mc) algorithm) * [`qap`](./qap) - implements an optimization-based solution to the correspondences problem. +* [`mc`](./mc) - implements a graph-based solution to the correspondences problem. * _insert new algorithm here! Submit a PR, if you dare!_ Each new algorithm implemented should follow the organization of the [qap](./qap) subdirectory: @@ -15,4 +17,4 @@ Each new algorithm implemented should follow the organization of the [qap](./qap * add appropriate unit tests in folder rooted [here](../tests) * modify parent `CMakeLists.txt` files to make sure your implementation and tests get built -When in doubt, just follow the `qap` pattern! +When in doubt, just follow the provided patterns! diff --git a/correspondences/mc/README.md b/correspondences/mc/README.md index 9f988f5..0703e26 100644 --- a/correspondences/mc/README.md +++ b/correspondences/mc/README.md @@ -1,7 +1,6 @@ -# `nmsac::correspondences::qap` -This subproject implements a convex relaxation of the binary optimization problem discussed in this [paper](http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.140.910&rep=rep1&type=pdf), Section 5.4. For more details, check out some of these resources: +# `nmsac::correspondences::mc` +This subproject implements a correspondences solver based on computation of the maximum clique of an undirected graph representing candidate correspondences. Candidate correspondences are those that are pairwise consistent between source and target point clouds. For more details, check out these resources: -* Mathematical details: [Part 1](https://jwdinius.github.io/blog/2019/point-match/) and [Part 2](https://jwdinius.github.io/blog/2019/point-match-cont/) -* [Code design notes](https://jwdinius.github.io/blog/2019/point-match-sol/) +* [Paper](https://arxiv.org/abs/1902.01534) +* [Sample Demo](https://jwdinius.github.io/blog/2021/max-clique) -_Note: this algorithm is pretty slow, but is provided as a reference implementation for benchmarking and to demonstrate desired project structure._