Export: added --texture_depth_error option

This commit is contained in:
matlabbe
2021-05-12 10:56:16 -04:00
parent aedc70218b
commit d75f9524f3

View File

@@ -64,6 +64,7 @@ void showUsage()
" --texture_size # Texture size (default 4096).\n" " --texture_size # Texture size (default 4096).\n"
" --texture_count # Maximum textures generated (default 1).\n" " --texture_count # Maximum textures generated (default 1).\n"
" --texture_range # Maximum camera range for texturing a polygon (default 0 meters: no limit).\n" " --texture_range # Maximum camera range for texturing a polygon (default 0 meters: no limit).\n"
" --texture_depth_error # Maximum depth error between reprojected mesh and depth image to texture a face (-1=disabled, 0=edge length is used, default=0).\n"
" --texture_d2c Distance to camera policy.\n" " --texture_d2c Distance to camera policy.\n"
" --cam_projection Camera projection on assembled cloud and export node ID on each point (in PointSourceId field).\n" " --cam_projection Camera projection on assembled cloud and export node ID on each point (in PointSourceId field).\n"
" --poses Export optimized poses of the robot frame (e.g., base_link).\n" " --poses Export optimized poses of the robot frame (e.g., base_link).\n"
@@ -139,6 +140,7 @@ int main(int argc, char * argv[])
int textureSize = 4096; int textureSize = 4096;
int textureCount = 1; int textureCount = 1;
int textureRange = 0; int textureRange = 0;
float textureDepthError = 0;
bool distanceToCamPolicy = false; bool distanceToCamPolicy = false;
bool multiband = false; bool multiband = false;
float colorRadius = -1.0f; float colorRadius = -1.0f;
@@ -231,6 +233,18 @@ int main(int argc, char * argv[])
showUsage(); showUsage();
} }
} }
else if(std::strcmp(argv[i], "--texture_depth_error") == 0)
{
++i;
if(i<argc-1)
{
textureDepthError = uStr2Float(argv[i]);
}
else
{
showUsage();
}
}
else if(std::strcmp(argv[i], "--texture_d2c") == 0) else if(std::strcmp(argv[i], "--texture_d2c") == 0)
{ {
distanceToCamPolicy = true; distanceToCamPolicy = true;
@@ -1153,7 +1167,7 @@ int main(int argc, char * argv[])
cameraModels, cameraModels,
cameraDepths, cameraDepths,
textureRange, textureRange,
0.0f, textureDepthError,
0.0f, 0.0f,
multiband?0:50, // Min polygons in camera view to be textured by this camera multiband?0:50, // Min polygons in camera view to be textured by this camera
std::vector<float>(), std::vector<float>(),