Just want to create the issue for the record. I can PR my attempt at a solution ASAP.
lineRGBD::loadTemplates attempt to load PCD files directly from file name in the archive L106. The PCD reader give cannot find PCD file because the file (LTM) is not unpacked and data from the PCD file in the archive is not loaded (LTM file is simply a .tar archive).
Context
Loading Linemod templates and point cloud masks from LTM archive.
Expected behavior
No errors when loading templates.
Current Behavior
Cannot find PCD file when parsing LTM archive.
To Reproduce
Tar any PCD file into .ltm filetype and load using lineRGBD::loadTemplates.
Your Environment (please complete the following information):
OS: Ubuntu 18.04
Compiler: g++
PCL Version HEAD
Possible Solution
There are 2 solutions:
Untar the file into a temporary folder using boost::filesystem and load PCD and SQMMT files in that folder then delete it. Avoid low-level(?) reading and managing tar headers.
Use readBodyBinary method in PCDReader (trunk) to read the block of data. Minimal code change.
Describe the bug
Just want to create the issue for the record. I can PR my attempt at a solution ASAP.
lineRGBD::loadTemplates
attempt to load PCD files directly from file name in the archive L106. The PCD reader givecannot find PCD file
because the file (LTM) is not unpacked and data from the PCD file in the archive is not loaded (LTM file is simply a .tar archive).Context
Loading Linemod templates and point cloud masks from LTM archive.
Expected behavior
No errors when loading templates.
Current Behavior
Cannot find PCD file
when parsing LTM archive.To Reproduce
Tar any PCD file into
.ltm
filetype and load usinglineRGBD::loadTemplates
.Your Environment (please complete the following information):
Possible Solution
There are 2 solutions:
Untar the file into a temporary folder using
boost::filesystem
and load PCD and SQMMT files in that folder then delete it. Avoid low-level(?) reading and managing tar headers.Use
readBodyBinary
method inPCDReader
(trunk) to read the block of data. Minimal code change.