victorprad / InfiniTAM

A Framework for the Volumetric Integration of Depth Images
http://www.infinitam.org
Other
918 stars 351 forks source link

New tracker added does not appear to perform dense and continuous reconstruction #56

Open sengineering2008 opened 7 years ago

sengineering2008 commented 7 years ago

@olafkaehler
Dear Sir A new tracker(Tracker), derived from ITMTracker class and based on the ITMDepthTracker with functions implemented at DeviceAgnostic and DeviceDependent level was added to InfiniTAM framework . The new tracker gives rotation and translation to the TrackCamera() function . The TrackCamera function in Tracker is the same as TrackCamera function in ITMDepthTracker. The issue is reconstruction is sparse and starts diminishing as new frames are being tracked. After certain number of frames are tracked , there is no reconstruction visibility . However , when ICPTracker is run on the dataset , reconstruction is dense .

Please suggest further-

Kalpesh Modi

AndreiBarsan commented 7 years ago

Are you sure you're not running out of GPU memory? It seems that when the SDF_LOCAL_BLOCK_NUM limit is reached in ITMSceneReconstructionEngine_CUDA<TVoxel, ITMVoxelBlockHash>::AllocateSceneFromDepth the system does not print any error message, but simply stops integrating new blocks into the map.

While working on a GPU with very little memory, I added some (very dirty, but useful) error messages for when that happens (in my fork of InfiniTAM). See: https://github.com/AndreiBarsan/InfiniTAM/blob/master/InfiniTAM/ITMLib/Engine/DeviceSpecific/CUDA/ITMSceneReconstructionEngine_CUDA.cu#L189

As for the tracker part, have you tried simply logging the values of the M matrix computed over time by your tracker, and comparing them to whatever, e.g., ITMDepthTracker produces?