mirror of
https://github.com/opencv/opencv.git
synced 2024-12-14 00:39:13 +08:00
bae9cef0b5
Moving RGBD parts to 3d * files moved from rgbd module in contrib repo * header paths fixed * perf file added * lapack compilation fixed * Rodrigues fixed in tests * rgbd namespace removed * headers fixed * initial: rgbd files moved to 3d module * rgbd updated from latest contrib master; less file duplication * "std::" for sin(), cos(), etc. * KinFu family -> back to contrib * paths & namespaces * removed duplicates, file version updated * namespace kinfu removed from 3d module * forgot to move test_colored_kinfu.cpp to contrib * tests fixed: Params removed * kinfu namespace removed * it works without objc bindings * include headers fixed * tests: data paths fixed * headers moved to/from public API * Intr -> Matx33f in public API * from kinfu_frame.hpp to utils.hpp * submap: Intr -> Matx33f, HashTSDFVolume -> Volume; no extra headers * no RgbdFrame class, no Mat fields & arg -> InputArray & pImpl * get/setPyramidAt() instead of lots of methods * Mat -> InputArray, TMat * prepareFrameCache: refactored * FastICPOdometry: +truncate threshold, +depthFactor; Mat/UMat choose * Mat/UMat choose * minor stuff related to headers * (un)signed int warnings; compilation minor issues * minors: submap: pyramids -> OdometryFrame; tests fix; FastICP minor; CV_EXPORTS_W for kinfu_frame.hpp * FastICPOdometry: caching, rgbCameraMatrix * OdometryFrame: pyramid%s% -> pyramids[] * drop: rgbCameraMatrix from FastICP, RGB cache mode, makeColoredFrameFrom depth and all color-functions it calls * makeFrameFromDepth, buildPyramidPointsNormals -> from public to internal utils.hpp * minors * FastICPOdometry: caching updated, init fields * OdometryFrameImpl<UMat> fixed * matrix building fixed; minors * returning linemode back to contrib * params.pose is Mat now * precomp headers reorganized * minor fixes, header paths, extra header removed * minors: intrinsics -> utils.hpp; whitespaces; empty namespace; warning fixed * moving declarations from/to headers * internal headers reorganized (once again) * fix include * extra var fix * fix include, fix (un)singed warning * calibration.cpp: reverting back * headers fix * workaround to fix bindings * temporary removed wrappers * VolumeType -> VolumeParams * (temporarily) removing wrappers for Volume and VolumeParams * pyopencv_linemod -> contrib * try to fix test_rgbd.py * headers fixed * fixing wrappers for rgbd * fixing docs * fixing rgbdPlane * RgbdNormals wrapped * wrap Volume and VolumeParams, VolumeType from enum to int * DepthCleaner wrapped * header folder "rgbd" -> "3d" * fixing header path * VolumeParams referenced by Ptr to support Python wrappers * render...() fixed * Ptr<VolumeParams> fixed * makeVolume(... resolution -> [X, Y, Z]) * fixing static declaration * try to fix ios objc bindings * OdometryFrame::release...() removed * fix for Odometry algos not supporting UMats: prepareFrameCache<>() * preparePyramidMask(): fix to compile with TMat = UMat * fixing debug guards * removing references back; adding makeOdometryFrame() instead * fixing OpenCL ICP hanging (some threads exit before reaching the barrier -> the rest threads hang) * try to fix objc wrapper warnings; rerun builders * VolumeType -> VolumeKind * try to fix OCL bug * prints removed * indentation fixed * headers fixed * license fix * WillowGarage licence notion removed, since it's in OpenCV's COPYRIGHT already * KinFu license notion shortened * debugging code removed * include guards fixed * KinFu license left in contrib module * isValidDepth() moved to private header * indentation fix * indentation fix in src files * RgbdNormals rewritten to pImpl * minor * DepthCleaner removed due to low code quality, no depthScale provided, no depth images found to be successfully filtered; can be replaced by bilateral filtering * minors, indentation * no "private" in public headers * depthTo3d test moved from separate file * Normals: setDepth() is useless, removing it * RgbdPlane => findPlanes() * rescaleDepth(): minor * warpFrame: minor * minor TODO * all Odometries (except base abstract class) rewritten to pImpl * FastICPOdometry now supports maxRotation and maxTranslation * minor * Odometry's children: now checks are done in setters * get rid of protected members in Odometry class * get/set cameraMatrix, transformType, maxRot/Trans, iters, minGradients -> OdometryImpl * cameraMatrix: from double to float * matrix exponentiation: Eigen -> dual quaternions * Odometry evaluation fixed to reuse existing code * "small" macro fixed by undef * pixNorm is calculated on CPU only now (and then uploads on GPU) * test registration: no cvtest classes * test RgbdNormals and findPlanes(): no cvtest classes * test_rgbd.py: minor fix * tests for Odometry: no cvtest classes; UMat tests; logging fixed * more CV_OVERRIDE to overriden functions * fixing nondependent names to dependent * more to prev commit * forgotten fixes: overriden functions, (non)dependent names * FastICPOdometry: fix UMat support when OpenCL is off * try to fix compilation: missing namespaces * Odometry: static const-mimicking functions to internal constants * forgotten change to prev commit * more forgotten fixes * do not expose "submap.hpp" by default * in-class enums: give names, CamelCase, int=>enums; minors * namespaces, underscores, String * std::map is used by pose graph, adding it * compute()'s signature fixed, computeImpl()'s too * RgbdNormals: Mat -> InputArray * depth.hpp: Mat -> InputArray * cameraMatrix: Matx33f -> InputArray + default value + checks * "details" headers are not visible by default * TSDF tests: rearranging checks * cameraMatrix: no (realistic) default value * renderPointsNormals*(): no wrappers for them * debug: assert on empty frame in TSDF tests * debugging code for TSDF GPU * debug from integrate to raycast * no (non-zero) default camera matrix anymore * drop debugging code (does not help) * try to fix TSDF GPU: constant -> global const ptr
81 lines
3.5 KiB
BibTeX
81 lines
3.5 KiB
BibTeX
@article{lepetit2009epnp,
|
|
title={Epnp: An accurate o (n) solution to the pnp problem},
|
|
author={Lepetit, Vincent and Moreno-Noguer, Francesc and Fua, Pascal},
|
|
journal={International journal of computer vision},
|
|
volume={81},
|
|
number={2},
|
|
pages={155--166},
|
|
year={2009},
|
|
publisher={Springer}
|
|
}
|
|
|
|
@article{gao2003complete,
|
|
title={Complete solution classification for the perspective-three-point problem},
|
|
author={Gao, Xiao-Shan and Hou, Xiao-Rong and Tang, Jianliang and Cheng, Hang-Fei},
|
|
journal={Pattern Analysis and Machine Intelligence, IEEE Transactions on},
|
|
volume={25},
|
|
number={8},
|
|
pages={930--943},
|
|
year={2003},
|
|
publisher={IEEE}
|
|
}
|
|
|
|
@inproceedings{hesch2011direct,
|
|
title={A direct least-squares (DLS) method for PnP},
|
|
author={Hesch, Joel and Roumeliotis, Stergios and others},
|
|
booktitle={Computer Vision (ICCV), 2011 IEEE International Conference on},
|
|
pages={383--390},
|
|
year={2011},
|
|
organization={IEEE}
|
|
}
|
|
|
|
@article{penate2013exhaustive,
|
|
title={Exhaustive linearization for robust camera pose and focal length estimation},
|
|
author={Penate-Sanchez, Adrian and Andrade-Cetto, Juan and Moreno-Noguer, Francesc},
|
|
journal={Pattern Analysis and Machine Intelligence, IEEE Transactions on},
|
|
volume={35},
|
|
number={10},
|
|
pages={2387--2400},
|
|
year={2013},
|
|
publisher={IEEE}
|
|
}
|
|
|
|
@inproceedings{Terzakis20,
|
|
author = {Terzakis, George and Lourakis, Manolis},
|
|
year = {2020},
|
|
month = {09},
|
|
pages = {},
|
|
title = {A Consistently Fast and Globally Optimal Solution to the Perspective-n-Point Problem}
|
|
}
|
|
|
|
@inproceedings{strobl2011iccv,
|
|
title={More accurate pinhole camera calibration with imperfect planar target},
|
|
author={Strobl, Klaus H. and Hirzinger, Gerd},
|
|
booktitle={2011 IEEE International Conference on Computer Vision (ICCV)},
|
|
pages={1068-1075},
|
|
month={Nov},
|
|
year={2011},
|
|
address={Barcelona, Spain},
|
|
publisher={IEEE},
|
|
url={https://elib.dlr.de/71888/1/strobl_2011iccv.pdf},
|
|
doi={10.1109/ICCVW.2011.6130369}
|
|
}
|
|
|
|
@inproceedings{kinectfusion,
|
|
author = {Izadi, Shahram and Kim, David and Hilliges, Otmar and Molyneaux, David and Newcombe, Richard and Kohli, Pushmeet and Shotton, Jamie and Hodges, Steve and Freeman, Dustin and Davison, Andrew and Fitzgibbon, Andrew},
|
|
title = {KinectFusion: Real-time 3D Reconstruction and Interaction Using a Moving Depth Camera},
|
|
booktitle = {},
|
|
year = {2011},
|
|
month = {October},
|
|
abstract = {
|
|
KinectFusion enables a user holding and moving a standard Kinect camera to rapidly create detailed 3D reconstructions of an indoor scene. Only the depth data from Kinect is used to track the 3D pose of the sensor and reconstruct, geometrically precise, 3D models of the physical scene in real-time. The capabilities of KinectFusion, as well as the novel GPU-based pipeline are described in full. We show uses of the core system for low-cost handheld scanning, and geometry-aware augmented reality and physics-based interactions. Novel extensions to the core GPU pipeline demonstrate object segmentation and user interaction directly in front of the sensor, without degrading camera tracking or reconstruction. These extensions are used to enable real-time multi-touch interactions anywhere, allowing any planar or non-planar reconstructed physical surface to be appropriated for touch.
|
|
},
|
|
publisher = {ACM},
|
|
url = {https://www.microsoft.com/en-us/research/publication/kinectfusion-real-time-3d-reconstruction-and-interaction-using-a-moving-depth-camera/},
|
|
address = {},
|
|
pages = {559-568},
|
|
journal = {},
|
|
volume = {},
|
|
chapter = {},
|
|
isbn = {978-1-4503-0716-1},
|
|
} |