Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
148 changes: 0 additions & 148 deletions .travis.yml

This file was deleted.

77 changes: 36 additions & 41 deletions CHANGES.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,95 +41,90 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Using the new TBB oneAPI interface, this breaks compatibility with previous versions of TBB [PR](https://github.com/alicevision/CCTag/pull/200)

### Fixed

- fix gcc11 ordered pointer comparison [PR](https://github.com/alicevision/CCTag/pull/191)
- fix handling of `BUILD_SHARED_LIBS` option [PR](https://github.com/alicevision/CCTag/pull/201)

## [1.0.2] - 2022-07-14

### Added

- Added documentation for conan [PR](https://github.com/alicevision/CCTag/pull/183)

### Fixed

- Fixed potential out of bound in debug mode [PR](https://github.com/alicevision/CCTag/pull/180)

## [1.0.1] - 2021-10-08

### Changed

- Renamed the marker files to be 0-based [PR](https://github.com/alicevision/CCTag/pull/165)
- Renamed the marker files to be 0-based [PR](https://github.com/alicevision/CCTag/pull/165)

### Fixed

- Fixed missing math module for boost [PR](https://github.com/alicevision/CCTag/pull/168)
- Fixed compilation errors for newer version of boost on windows [PR](https://github.com/alicevision/CCTag/pull/166)
- Removed old legacy defines for cuda and boost no more needed since the switch to c++14 [PR](https://github.com/alicevision/CCTag/pull/174)


## [1.0.0] - 2021-06-24

- Support for OpenCV 3.4.9 [PR](https://github.com/alicevision/CCTag/pull/121)
- Switch to C++14 standard [PR](https://github.com/alicevision/CCTag/pull/155)

- Support for OpenCV 3.4.9 [PR](https://github.com/alicevision/CCTag/pull/121)
- Switch to C++14 standard [PR](https://github.com/alicevision/CCTag/pull/155)

## 2019

- Remove Cuda Cub dependency [PR](https://github.com/alicevision/CCTag/pull/110)
- Bug fix: out of range image access during identification [PR](https://github.com/alicevision/CCTag/pull/117)
- Bug fix on big markers (multi-resolution detection) [PR](https://github.com/alicevision/CCTag/pull/116)
- Bug fix: avoid access to empty vector during vote [PR](https://github.com/alicevision/CCTag/pull/115)
- CMake: export all symbols when building shared libs on Windows [PR](https://github.com/alicevision/CCTag/pull/112)
- CMake: Improve management of CUDA Compute Capabilities flags [PR](https://github.com/alicevision/CCTag/pull/109)
- Compatibility with Opencv 4 [PR](https://github.com/alicevision/CCTag/pull/104)

- Remove Cuda Cub dependency [PR](https://github.com/alicevision/CCTag/pull/110)
- Bug fix: out of range image access during identification [PR](https://github.com/alicevision/CCTag/pull/117)
- Bug fix on big markers (multi-resolution detection) [PR](https://github.com/alicevision/CCTag/pull/116)
- Bug fix: avoid access to empty vector during vote [PR](https://github.com/alicevision/CCTag/pull/115)
- CMake: export all symbols when building shared libs on Windows [PR](https://github.com/alicevision/CCTag/pull/112)
- CMake: Improve management of CUDA Compute Capabilities flags [PR](https://github.com/alicevision/CCTag/pull/109)
- Compatibility with Opencv 4 [PR](https://github.com/alicevision/CCTag/pull/104)

## 2018

- First Windows version (CPU only) [PR](https://github.com/alicevision/CCTag/pull/78)
- Docker: add support for docker [PR](https://github.com/alicevision/CCTag/pull/84)
- Improvements for ellipse fitting
- First Windows version (CPU only) [PR](https://github.com/alicevision/CCTag/pull/78)
- Docker: add support for docker [PR](https://github.com/alicevision/CCTag/pull/84)
- Improvements for ellipse fitting
[PR](https://github.com/alicevision/CCTag/pull/66)
- Modernizing code to C++11
- Modernizing code to C++11
[PR](https://github.com/alicevision/CCTag/pull/64)


## 2017

- Use Thrust for cuda >= 8
- Use Thrust for cuda >= 8
[PR](https://github.com/alicevision/CCTag/pull/62)
- Minor code cleaning
- Minor code cleaning
[PR](https://github.com/alicevision/CCTag/pull/61)
- Add limit to edgepoint d-to-h transfer
- Add limit to edgepoint d-to-h transfer
[PR](https://github.com/alicevision/CCTag/pull/53)
- Bug fix in NearbyPoint
- Bug fix in NearbyPoint
[PR](https://github.com/alicevision/CCTag/pull/46)


## 2016

- Switch to modern version of CMake [PR](https://github.com/alicevision/CCTag/pull/40)
- CVPR Publication https://hal.archives-ouvertes.fr/hal-01420665/document
- Application: Show detected markers in video and live mode
- Switch to modern version of CMake [PR](https://github.com/alicevision/CCTag/pull/40)
- CVPR Publication <https://hal.archives-ouvertes.fr/hal-01420665/document>
- Application: Show detected markers in video and live mode
[PR](https://github.com/alicevision/CCTag/pull/33)
- Allow to extract CCTags from multiple images in parallel with multiple cuda streams
- Allow to extract CCTags from multiple images in parallel with multiple cuda streams
[PR](https://github.com/alicevision/CCTag/pull/32)
[PR](https://github.com/alicevision/CCTag/pull/31)
- Continuous integration on Travis [PR](https://github.com/alicevision/CCTag/pull/27)
- Remove Blas/Lapack/Optpp dependencies
- Remove Ceres dependency
- GPU implementation

- Continuous integration on Travis [PR](https://github.com/alicevision/CCTag/pull/27)
- Remove Blas/Lapack/Optpp dependencies
- Remove Ceres dependency
- GPU implementation

## 2015

- First open-source release
- CPU Optimizations
- Expose critical parameters
- CMake build system

- First open-source release
- CPU Optimizations
- Expose critical parameters
- CMake build system

## 2014

- Thesis Defence by Lilian Calvet under the direction of Vincent Charvillat and Pierre Gurdjos
"Three-dimensional reconstruction methods integrating cyclic points: application to camera tracking" (http://www.theses.fr/2014INPT0002)
- CCTag detection on CPU

- Thesis Defence by Lilian Calvet under the direction of Vincent Charvillat and Pierre Gurdjos
"Three-dimensional reconstruction methods integrating cyclic points: application to camera tracking" (<http://www.theses.fr/2014INPT0002>)
- CCTag detection on CPU
4 changes: 3 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,9 @@ if(APPLE)
endif(APPLE)

# FIND BOOST
set(BOOST_REQUIRED_COMPONENTS "atomic;chrono;date_time;filesystem;program_options;serialization;system;thread;timer;math_c99")
# list only components that are not header-only, those have a target associated
# the header-only components must be added with target_include_directories( ... ${Boost_INCLUDE_DIRS} )
set(BOOST_REQUIRED_COMPONENTS "date_time;filesystem;program_options;serialization;timer")
if(WIN32)
set(BOOST_REQUIRED_COMPONENTS "${BOOST_REQUIRED_COMPONENTS};stacktrace_windbg")
else()
Expand Down
5 changes: 2 additions & 3 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ further defined and clarified by project maintainers.
## Enforcement

Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported by contacting the project team privately at alicevision-team@googlegroups.com. All
reported by contacting the project team privately at <alicevision-team@googlegroups.com>. All
complaints will be reviewed and investigated and will result in a response that
is deemed necessary and appropriate to the circumstances. The project team is
obligated to maintain confidentiality with regard to the reporter of an incident.
Expand All @@ -68,7 +68,6 @@ members of the project's leadership.
## Attribution

This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
available at https://www.contributor-covenant.org/version/1/4/code-of-conduct/
available at <https://www.contributor-covenant.org/version/1/4/code-of-conduct/>

[homepage]: https://www.contributor-covenant.org

12 changes: 4 additions & 8 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,19 +1,16 @@
Contributing to CCTag
===========================
# Contributing to CCTag

CCTag relies on a friendly and community-driven effort to create an open source photogrammetry solution.
In order to foster a friendly atmosphere where technical collaboration can flourish,
we recommend you to read the [code of conduct](CODE_OF_CONDUCT.md).


Contributing Workflow
---------------------
## Contributing Workflow

The contributing workflow relies on [Github Pull Requests](https://help.github.com/articles/using-pull-requests/).

1. If it is an important change, we recommend you to discuss it on the mailing-list before starting implementation.
1. If it is an important change, we recommend you to discuss it on the mailing-list before starting implementation.
This ensure that the development is aligned with other
developpements already started and will be efficiently integrated.
development already started and will be efficiently integrated.

2. Create the corresponding issues.

Expand All @@ -32,4 +29,3 @@ congratulate the author, etc. using the github comments.
will merge your fixes into the "develop" branch.

8. If not already the case, your name will be added to the [contributors list](CONTRIBUTORS.md).

30 changes: 16 additions & 14 deletions INSTALL.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,25 +5,26 @@
For a detailed guide on building the library check the [online documentation](https://cctag.readthedocs.io/).

Required tools:

* CMake >= 3.14 to build the code
* Git
* C/C++ compiler with C++14 support
* see here: https://en.cppreference.com/w/cpp/compiler_support
* TLDR gcc >= 5, clang >= 3.4, msvc >= 2017
* see here: <https://en.cppreference.com/w/cpp/compiler_support>
* TLDR gcc >= 5, clang >= 3.4, msvc >= 2017

Optional tool:
* CUDA >= 9.0

* CUDA >= 9.0
Note: On Windows, there are compatibility issues to build the GPU part due to conflicts between msvc/nvcc/thrust/eigen/boost.

### Dependencies
### Dependencies

Most of the dependencies can be installed from the common repositories (apt, yum etc):

- Eigen3 (libeigen3-dev) >= 3.3.4 (NOTE: in order to have Cuda support on Windows, at least version 3.3.9 is required)
- Boost >= 1.66 ([accumulators, atomic, chrono, core, date-time, exception, filesystem, math, program-options, ptr-container, system, serialization, stacktrace, timer, thread]-dev)
- OpenCV >= 3.1
- TBB >= 2021.5.0

* Eigen3 (libeigen3-dev) >= 3.3.4 (NOTE: in order to have Cuda support on Windows, at least version 3.3.9 is required)
* Boost >= 1.66 ([accumulators, core, date-time, exception, filesystem, math, program-options, ptr-container, system, serialization, stacktrace, timer, thread]-dev)
* OpenCV >= 3.1
* TBB >= 2021.5.0

----------

Expand Down Expand Up @@ -53,18 +54,19 @@ cmake .. -DCCTag_DIR=$CCTAG_INSTALL/lib/cmake/CCTag/

## Docker Image

A docker image can be built using the Ubuntu based [Dockerfile](Dockerfile),which is based on nvidia/cuda image (https://hub.docker.com/r/nvidia/cuda/)
A docker image can be built using the Ubuntu based [Dockerfile](Dockerfile),which is based on nvidia/cuda image (<https://hub.docker.com/r/nvidia/cuda/>)

A parameter `CUDA_TAG` can be passed when building the image to select the ubuntu and cuda version.
A parameter `CUDA_TAG` can be passed when building the image to select the ubuntu and cuda version.
For example to create a ubuntu 16.04 with cuda 8.0 for development, use
```

```bash
docker build --build-arg CUDA_TAG=8.0-devel --tag cctag .
```

The complete list of available tags can be found on the nvidia [dockerhub page](https://hub.docker.com/r/nvidia/cuda/)
In order to run the image nvidia docker is needed: see the installation instruction here https://github.com/nvidia/nvidia-docker/wiki/Installation-(version-2.0)
In order to run the image nvidia docker is needed: see the installation instruction here <https://github.com/nvidia/nvidia-docker/wiki/Installation-(version-2.0)>
Once installed, the docker can be run, e.g., in interactive mode with

```
```bash
docker run -it --runtime=nvidia cctag
```
Loading
Loading