54 if (input_->isOrganized ())
59 searcher_->setInputCloud (input_);
63 std::vector<float>
nn_dists (mean_k_);
64 std::vector<float> distances (indices_->size ());
65 indices.resize (indices_->size ());
66 removed_indices_->resize (indices_->size ());
73 if (!std::isfinite ((*input_)[(*indices_)[
iii]].x) ||
74 !std::isfinite ((*input_)[(*indices_)[
iii]].y) ||
75 !std::isfinite ((*input_)[(*indices_)[
iii]].z))
85 PCL_WARN (
"[pcl::%s::applyFilter] Searching for the closest %d neighbors failed.\n", getClassName ().
c_str (), mean_k_);
91 for (
int k = 1; k < mean_k_ + 1; ++k)
93 distances[
iii] =
static_cast<float> (
dist_sum / mean_k_);
99 for (
const float &distance : distances)
102 sq_sum += distance * distance;
118 if (extract_removed_indices_)
119 (*removed_indices_)[
rii++] = (*indices_)[
iii];
124 indices[
oii++] = (*indices_)[
iii];
128 indices.resize (
oii);
129 removed_indices_->resize (
rii);