Added a color parameter to Chilitags::draw
Merge pull request #18 from qbonnard/draw-tag-color

Added a color parameter to Chilitags::draw
bugfix: false is parsed as true

OpenCV's yml parser does not seem to support booleans, so
keep: false
is actually parsed as true. This problem is solved by using integers:
keep: 0
Updated tests for draw's color parameter
[debug] Fix debug display in ReadBits

Hi Quentin ;-)
Decrease the GROW_FACTOR in Refine to be less depend on white border

This fix #22.

Unit-tests claim 3 new false negative, but 4 new true positive
and 4 new false negative, but 3 new true positive with LSD_EXPERIMENTAL
Added test image for issue #22
Merge pull request #23 from severin-lemaignan/snowwhite

Decrease the GROW_FACTOR in Refine to be less depend on white border
FindQuads has a resolution dependant pyramid

Instead of scaling 3 times the input image, a pyramid is built until the scaled
images are at least 320px wide.
Also, Canny edge detection is applied on each image of the pyramid, rather than
once on the binary image to be scaled down. This makes The edge detection more
robust to scale.

The performance increases most on high resolution images, which had tags to big
to be taken into account. The results are now comparable to LSD, without the
time penalty.

Before:
Processing times (ms) results, on 1 iterations:
  n    Pixels   Average        SD
  8     76800       3.1       0.7
 16    307200      11.5       5.7
  1   1228800      37.7       0.0
  3   1920000      46.2      12.3
  4   7990272     100.2       9.9
234/573 tags were not detected.

Now:
Processing times (ms) results, on 1 iterations:
  n    Pixels   Average        SD
  8     76800       2.2       0.4
 16    307200      10.2       4.0
  1   1228800      30.2       0.0
  3   1920000      46.5      14.2
  4   7990272     249.3      85.8
111/573 tags were not detected.

LSD:
Processing times (ms) results, on 1 iterations:
  n    Pixels   Average        SD
  8     76800      16.9       6.3
 16    307200      56.0      19.9
  1   1228800     236.2       0.0
  3   1920000     806.3     728.5
  4   7990272    1798.5     285.8
141/573 tags were not detected.
Tweaked FindQuads: +20 true pos, +0 false neg

The tweak increases the tolerance in simplifying the contours into polygons
(possible quads).

Before:
Processing times (ms) results, on 1 iterations:
  n    Pixels   Average        SD
  8     76800       2.2       0.4
 16    307200      10.2       4.0
  1   1228800      30.2       0.0
  3   1920000      46.5      14.2
  4   7990272     249.3      85.8
111/573 tags were not detected.

Now:
Processing times (ms) results, on 1 iterations:
  n    Pixels   Average        SD
  8     76800       2.8       0.7
 16    307200      11.4       4.5
  1   1228800      33.6       0.0
  3   1920000      47.0      12.7
  4   7990272     285.7      98.7
91/573 tags were not detected.
Tweaked FindQuads: +2 true pos, +0 false neg

This tweak has a tiny effect on detection, but not so tiny on processing time...

Before:
Processing times (ms) results, on 1 iterations:
  n    Pixels   Average        SD
  8     76800       2.8       0.7
 16    307200      11.4       4.5
  1   1228800      33.6       0.0
  3   1920000      47.0      12.7
  4   7990272     285.7      98.7
91/573 tags were not detected.

Now:
Processing times (ms) results, on 1 iterations:
  n    Pixels   Average        SD
  8     76800       2.9       0.7
 16    307200      11.8       4.6
  1   1228800      34.2       0.0
  3   1920000      52.5      19.6
  4   7990272     298.4      97.4
89/573 tags were not detected.
Checking original quad too, not only refinements

+7 true positive, no new false negative

Before:
Processing times (ms) results, on 1 iterations:
  n    Pixels   Average        SD
  8     76800       2.9       0.7
 16    307200      11.8       4.6
  1   1228800      34.2       0.0
  3   1920000      52.5      19.6
  4   7990272     298.4      97.4
89/573 tags were not detected.

Now:
Processing times (ms) results, on 1 iterations:
  n    Pixels   Average        SD
  8     76800       3.4       0.8
 16    307200      12.5       4.8
  1   1228800      35.1       0.0
  3   1920000      53.7      20.2
  4   7990272     300.5      99.0
82/573 tags were not detected.
No more LSD

...no more funny commit messages
Merge pull request #24 from qbonnard/master

Optimized FindQuads. Possible SPEED optimizations are tracked in issue #26
Written JNI bindings for most of Chilitags3D, usable in Android.
Documented a proper and comprehensive guide for building OpenCV/Chilitags for Android.
Added RGB565 input image option besides YUV_NV21 for better (faster) OpenGL compatibility of the camera image.
Turned off marker generator compilation during Android build. More explanation in the Android building guide about:
1) Android SDK requirement
2) The fact that we use CMake exclusively, bundle the dynamic libraries and reject ndk-build and the reasons thereof
Wrote a barebone Android sample that receives the camera image and prints the tag transforms. Wrote guide for samples.
Corrected small error in the README.
Small but important changes inside the Android guide.