Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

[common] pcl::getMinMax3d() support for pcl::PointXY

Abierto
#6,271 5 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 4 días

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
3/5
Tiempo estimado
1-2 días
Aptitud para principiantes
45/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
cpp

Línea de trabajo

Comienza localizando la implementación común de pcl::getMinMax3d() y el tipo pcl::PointXY; después, compáralos con MaximumLikelihoodSampleConsensus::getMinMax tal como se muestra en el issue. Reproduce el fallo de compilación con pcl::PointXY y segmentación, y considera terminado el trabajo cuando los resultados de min/max proporcionen x e y mientras que z y w sean cero.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

kind: bug needs: author reply

Describe the bug

i cannot create pcl::segmentation with pcl::PointXY , it have a default way to convert to Eigen vector 4 map
Context

What are you trying to accomplish? Providing context helps us come up with a solution that is most useful in the real world

Expected behavior

it should be able to give you min max of x y points and 0 for z and w

Current Behavior

What happens instead of the expected behavior?
compilation issue
To Reproduce

Provide a link to a live example, or an unambiguous set of steps to reproduce this bug. A reproducible example helps to provide faster answers. If you load data e.g. from a PCD or PLY file, please provide the file.

Screenshots/Code snippets

In order to help explain your problem, please consider adding

  • screenshots of the GUI issues
  • code snippets: syntax for code with correct language highlights

Your Environment (please complete the following information):

  • OS: [e.g. Ubuntu 16.04]
  • Compiler: [:eg GCC 8.1]
  • PCL Version [e.g. 1.10, HEAD]

Possible Solution

//////////////////////////////////////////////////////////////////////////
template <typename PointT> void
pcl::MaximumLikelihoodSampleConsensus<PointT>::getMinMax (
    const PointCloudConstPtr &cloud, 
    const IndicesPtr &indices,
    Eigen::Vector4f &min_p, 
    Eigen::Vector4f &max_p) const
{
  min_p.setConstant (std::numeric_limits<float>::max());
  max_p.setConstant (std::numeric_limits<float>::lowest());
  min_p[3] = max_p[3] = 0;

  for (std::size_t i = 0; i < indices->size (); ++i)
  {
    if ((*cloud)[(*indices)[i]].x < min_p[0]) min_p[0] = (*cloud)[(*indices)[i]].x;
    if ((*cloud)[(*indices)[i]].y < min_p[1]) min_p[1] = (*cloud)[(*indices)[i]].y;
    if ((*cloud)[(*indices)[i]].z < min_p[2]) min_p[2] = (*cloud)[(*indices)[i]].z;

    if ((*cloud)[(*indices)[i]].x > max_p[0]) max_p[0] = (*cloud)[(*indices)[i]].x;
    if ((*cloud)[(*indices)[i]].y > max_p[1]) max_p[1] = (*cloud)[(*indices)[i]].y;
    if ((*cloud)[(*indices)[i]].z > max_p[2]) max_p[2] = (*cloud)[(*indices)[i]].z;
  }
}

you can make this global common i cannot use it outside this class

Image
all min max does not support the PointXY

Not obligatory, but suggest a fix/reason for the bug. Feel free to create a PR if you feel comfortable.

Additional context

Add any other context about the problem here.

Lenguaje dominante
C++
Estrellas
11.2k
Forks
4.7k
Merge medio
5 d 8 h
PR fusionados (30 d)
10

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de PointCloudLibrary/pcl

Todos los issues de PointCloudLibrary/pcl

Issues similares

Más issues de C++

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.