Added Python wrapping and documentation for alphamat module
* updated documentation with more results for alphamat module
* Updated the image links in the tutorial
* Included cite
* Edited Documentation
Edited the Viz "getWindowByName" documentation so it reflects the actual behaviour of getWindowByName. More specifically, that "Viz - " is not prefixed automatically to the window name given by the user if they haven't prefixed "Viz - " already.
Fixes the following compiler error:
rgbd/test/test_dynafu.cpp:44:17: error: 'Params' is not a member of 'cv::dynafu'
44 | Ptr<dynafu::Params> params;
| ^~~~~~
Fixes two errors when building with the options WITH_CUDA=ON and BUILD_CUDA_STUBS=ON on a machine without CUDA.
In the cudaarithm module, make sure cuda_runtime.h only gets included when CUDA is installed.
In the stitching module, don't assume that cuda is present just because cudaarithm and cudawarping are present (as is the case when building with the above options).
original commit: 22ee5c0c4d
New HashTSDF implementation
* create new variables
* rewrite reset()
* first valid version of new HasHTSDF
* some warning fixes
* create lambda raycast
* reduce time raycast
* minor fix
* minor fix volDims
* changed _atVolumeUnit, reduce memory consumption
* delete older inmplemetation of atVolumeUnit
* changes _at
* AAA, I want to cry!
* it works!
* it works twice o_o
* minor fix
* new adding to volumes
* delete volDims at strust VolumeUnit
* new names of vars
* rename one var
* minor fix
* new resize volumes
* rename volUnitsMatrix
* minor fix in at function
* add tsdf_functions.hpp
* minor fix
* remove two args at _at function signature
* solved the link problem with tsdf_functions
* build fix
* build fix 1
* build fix 2
* build fix 3
* build fix 4
* replace integrateVolumeUnit to tsdf_functions and fix 2 warnings
* docs fix
* remove extra args at atVolumeUnit signature
* change frame params checking
* move volStrides to CPU class
* inline convertion functions in tsdf_functions
* minor fix
* add SIMD version of integrateVolumeUnit
* fix something :)
* docs fix
* warning fix
* add degub asserts
* replace vars initialization with reset()
* remove volDims var
* new resize buffer
* minor vars name fix
* docs fix
* warning fix
* minor fix
* minor fix 1
* remove dbg asserts
Co-authored-by: arsaratovtsev <artem.saratovtsev@intel.com>
[GSoC] Add Submaps and PoseGraph optimization for Large Scale Depth Fusion
* - Add HashTSDF class
- Implement Integrate function (untested)
* Integration seems to be working, raycasting does not
* Update integration code
* Integration and Raycasting fixes, (both work now)
* - Format code
- Clean up comments and few fixes
* Add Kinect Fusion backup file
* - Add interpolation for vertices and normals (slow and unreliable!)
- Format code
- Delete kinfu_back.cpp
* Bug fix for integration and noisy odometry
* - Create volume abstract class
- Address Review comments
* - Add getPoints and getNormals function
- Fix formatting according to comments
- Move volume abstract class to include/opencv2/rgbd/
- Write factory method for creating TSDFVolumes
- Small bug fixes
- Minor fixes according to comments
* - Add tests for hashTSDF
- Fix raycasting bug causing to loop forever
- Suppress warnings by explicit conversion
- Disable hashTsdf test until we figure out memory leak
- style changes
- Add missing license in a few files, correct precomp.hpp usage
* - Use CRTP based static polymorphism to choose between CPU and GPU for
HashTSDF volume
* Create submap and submapMgr
Implement overlap_ratio check to create new submaps
* Early draft of posegraph and submaps (Doesn't even compile)
* Minor cleanup (no compilation)
* Track all submaps (no posegraph update yet)
* Return inliers from ICP for weighting the constraints
(Huber threshold based inliers pending)
* Add updating constraints between submaps and retain same current map
* Fix constraints creation between submaps and allow for switching between
submaps
* - Fix bug in allocate volumeUnits
- Simplify calculation of visibleBlocks
* Remove inlier calculation in fast_icp (not required)
* Modify readFile to allow reading other datasets easily
* - Implement posegraph update, Gauss newton is unstable
- Minor changes to Gauss newton and Sparse matrix. Residual still
increases slightly over iterations
* Implement simplified levenberg marquardt
* Bug fixes for Levenberg Marquardt and minor changes
* minor changes
* Fixes, but Optimizer is still not well behaved
* Working Ceres optimizer
* - Reorganize IO code for samples in a separate file
- Minor fix for Ceres preprocessor definition
- Remove unused generatorJacobian, will be used for opencv implementation
of levenberg marquardt
- Doxygen docs fix
- Minor preprocessor fixes
* - Reorganize IO code for samples in a separate file
- Minor fix for Ceres preprocessor definition
- Remove unused generatorJacobian, will be used for opencv implementation
of levenberg marquardt
- Doxygen docs fix
- Minor preprocessor fixes
- Move inline functions to header, and make function params const
references
* - Add Python bindings for volume struct
- Remove makeVolume(const VolumeParams&) Python binding due to compilation
issues
- Minor changes according to comments
* - Remove dynafu::Params() since it is identical to kinfu::Params()
- Use common functions for dynafu_demo
- Suppress "unreachable code" in volume.cpp
* Minor API changes
* Minor
* Remove CRTP for HashTSDF class
* Bug fixes for HashTSDF integration
TSDF preCalculation pixNorm
* create preCalculation function
* warning fix
* minor fix
* gpu preCalculation fix
* fix resolution bag in CPU
* gpu minor fix
* add pixNorms to intrinsics code
* minor fix
* minor fixes
Co-authored-by: arsaratovtsev <artem.saratovtsev@intel.com>
TSDF Optimization
* getMat using fix
* min/max fix
* create WeightType
* create normals test
* bug fix
* complete normals test
* fix makeVolume and rewrite tests
* minor fixes
* add new normal tests
* replace operator() on lambda expressions
* make a valid points test
* minor fixes
* getNormalVoxel fix in tsdf and hashTsdf
* create renderPointsNormals
* replace Affine3f with Matx44f oin make volume
* minor fixes
* minor fix
* tmp
* create function interpolateVoxel for hashTSDF
* tmp
* right interpolation for HashTSDF
* rewrite intrinsics normalize
* minor fix
* rewrite GPU normalize
* start to write perf tests
* make Volume fix
* GPU normalize fix
* minor fix
* create perf test for raycast
* fix LNK2019 problem in perf test
* made all perf tests
* replace all Affine3f with Matx44f
* replace Point3i with Vec3i
* minor fix
* minor fix
* add CV_EXPORT_W
* build fix 1
* build fix 2
* build fix 3
* warning fix
* build test
* win test
* tests without HashTSDF
* create noparallel normals checking
* test without fetch
* test without fetch points normals
* add end line
* revert rotation() in hash_tsdf
* fix matrix multiplication order
* fetch points normals invoker fix
* warning fix
* warning fix
* Docs fix
* Hash push normals fix
* replace operator() with lambda in PushNormals
* warning fix
* create half type and types conversion
* error fix and preparation for CPU optimization
* replace all TsdfType with half
* minor fixes
* minor fix
* raycast fix
* conversion bug fix
* delete cout
* it's alive!
* improve conversion CPU
* warning fix
* warning fix 1
* intrinsics optimization
* minor fixes
* warning fix
* interpolate improve
* start to optimize GPU version
* vectorize tsdfToFloat
* CPU optimization
* GPU optimization
* minor fix
* minor fix
* Docs fix
* minor fixes
* add perf tests HashTSDF
* hashTSDF optimization
* minor fix
* interpolate improvement
* getNormalVoxel improvement
* added a new calculation pixNorm
* tsdfToFloat improve
* add flag USE_INTERPOLATION_IN_GETNORMAL to HashTSDF
* minor fix
* minor fix
* replace int with uchar
* getNormal improve
* minor fix
* minor fixes
* inline _at()
* inline _at()
* vectorize interpolation
* i tried :(
* minor fix
* try to improve _getNormalVoxel
* minor fix
* create new struct for tests
* minor test fix
* minor fix
* minor fix 1
* minor fix 2
* minor fix 3
* minor fix 4
* minor fix 5
* minor fix 6
* minor fix 7
* monor test fix
* monor test fix 1
* integrate improve
* rewrite interpolation in getNormalVoxel in HashTSDF
* intergrate improve tsdf
* minor Docs fix
* change autolock mutex place
* reduce interpolation calls
* new getNormal
* minor fix
* tmp mutex optimization
* rewrite mutex lock
* rewrite Settings structure as class
* minor Docs fix
* new inteprolateVoxel debug
* new inteprolateVoxel
* minor fix
* add new voxelToVolumeUnitIdx
* new integrate with lambda functions
* new integrate minor fix
* minor fix
* minor fix 1
* pixNorm, I try :(
* need to rewrite [][] part
* It's Alive
* omg? it works!
* minor fix
* minor fix 1
* minor fix
* add new environment check
* minor fix
* minor fix 1
* Docs fix
* minor fix 3
* minor fix
* minor fix 1
Co-authored-by: arsaratovtsev <artem.saratovtsev@intel.com>
Bounding box fixes for GOTURN tracker
* Trying to change branch from master to 3.4
* Removing unnecessary if statement
* Frame existence check is added
* Changes in GOTURN tracker for reading path to caffemodel and prototxt files in opencv_extra
* Replacing get_data_path with findDataFile and moving paths in parameters
* tracking: fix GOTURN model loading
* Fixing GOTURN memory test: paths to GOTURN files are in cv::FileNode now
* Fix
* Fix
* Fixing comments
* Deleting trailing space
* Trying to solve the problem with test
* Removing ground truth reading part in GOTURN test
* Removing trailing spaces
* Trying to fix win64/win32 issue
* Fixing problem with win32/win64
* Trying to solve issue with win32/win64
* Set constants as const and replace some declaration+assignment by copy ctor
* Remove useless img2 as matching scores have already been buffered earlier
TSDF fixes and tests
* getMat using fix
* min/max fix
* create WeightType
* create normals test
* bug fix
* complete normals test
* fix makeVolume and rewrite tests
* minor fixes
* add new normal tests
* replace operator() on lambda expressions
* make a valid points test
* minor fixes
* getNormalVoxel fix in tsdf and hashTsdf
* create renderPointsNormals
* replace Affine3f with Matx44f oin make volume
* minor fixes
* minor fix
* tmp
* create function interpolateVoxel for hashTSDF
* tmp
* right interpolation for HashTSDF
* rewrite intrinsics normalize
* minor fix
* rewrite GPU normalize
* start to write perf tests
* make Volume fix
* GPU normalize fix
* minor fix
* create perf test for raycast
* fix LNK2019 problem in perf test
* made all perf tests
* replace all Affine3f with Matx44f
* replace Point3i with Vec3i
* minor fix
* minor fix
* add CV_EXPORT_W
* build fix 1
* build fix 2
* build fix 3
* warning fix
* build test
* win test
* tests without HashTSDF
* create noparallel normals checking
* test without fetch
* test without fetch points normals
* add end line
* revert rotation() in hash_tsdf
* fix matrix multiplication order
* fetch points normals invoker fix
* warning fix
* warning fix
* Docs fix
* Hash push normals fix
* replace operator() with lambda in PushNormals
* warning fix
* comments fix
Co-authored-by: arsaratovtsev <artem.saratovtsev@intel.com>
Fix mctkernel issues
* Rewrite code
* Improve readability by adding lines between classes and methods
* Fix sign of t in the first condition and simplify conditions
[GSoC] Julia Bindings Phase 3
* Add Julia Bindings Phase 3
* Code style and warning fixes for Julia bindings
* Add copyright notice to .py files
* fix typo
* First commit
* Updated mcc
* Fixed build warnings.
* Fixed warnings v2
* Added support for providing regions to look for the chart
* Added the neural network based detector
* Added Documentation and tests
* Fixed Warnings
* Fixed test failure
* Fixed warnings v2
* Fix Warning attemp 3
* Replaced size_t by int to fix warning
* fixed one more
* Fixed a size_t
* Fixed some bugs
* Modified the private interface a bit
* Just adding doc of what -t and -ci numbers are
* significantly improved performance of the macbeth chart detector (by two orders of magnitude, perhaps)
* Fixed the suggested changes.
* Removed imcodes from precomp
* Fixed warnings and namespace issue
* Replaced occurance of Matx33f by InputArray
Co-authored-by: Gary Bradski <garybradskigit@gmail.com>
Co-authored-by: Vadim Pisarevsky <vadim.pisarevsky@gmail.com>