Commit 8a4e1c2
committed
structured_light: GreyCodePattern 16-bit support and performance improvements
- Vastly improve performance of the GreyCodePattern structured light algorithm by leveraging built-in OpenCV functions and parallel code instead of raw loops, at the cost of a bit more memory (decoding a set of 96 5320x4600 images acquired using stereo cameras goes from taking ~100 seconds to taking ~2.5 seconds, in release mode)
- Automatically gain the ability to decode 16-bit images (switching from raw loops and uchar-indexing to OpenCV functions gives this for free)
- Remove the getProjPixel function from the GreyCodePattern API surface (this gives us the ability to optimize the retrieval and hide some implementation details)
Manual testing was done to ensure that the calculated results are correct, both for generation of the patterns and for decoding, in both Debug and Release mode, using real world data.1 parent ea9f108 commit 8a4e1c2
File tree
2 files changed
+193
-256
lines changed- modules/structured_light
- include/opencv2/structured_light
- src
2 files changed
+193
-256
lines changedLines changed: 0 additions & 13 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
128 | 128 | | |
129 | 129 | | |
130 | 130 | | |
131 | | - | |
132 | | - | |
133 | | - | |
134 | | - | |
135 | | - | |
136 | | - | |
137 | | - | |
138 | | - | |
139 | | - | |
140 | | - | |
141 | | - | |
142 | | - | |
143 | | - | |
144 | 131 | | |
145 | 132 | | |
146 | 133 | | |
| |||
0 commit comments