![]() |
ACloudViewer
3.9.4
A Modern Library for 3D Data Processing
|
#include "qManualSeg.h"#include <pcl/kdtree/kdtree_flann.h>#include <pcl/point_cloud.h>#include "profileImportDlg.h"#include <QFile>#include <QFileInfo>#include <QMainWindow>#include <QMessageBox>#include <QSettings>#include <QtGui>#include <ecvCone.h>#include <ecvDisplayTools.h>#include <ecvFileUtils.h>#include <ecvGenericPointCloud.h>#include <ecvHObjectCaster.h>#include <ecvMesh.h>#include <ecvPointCloud.h>#include <ecvPolyline.h>#include <ecvProgressDialog.h>#include <ecvScalarField.h>#include <CVConst.h>#include <CVKdTree.h>#include <CVTools.h>#include <CloudSamplingTools.h>#include <ManualSegmentationTools.h>#include <SquareMatrix.h>#include <math.h>#include <algorithm>#include <fstream>#include <iostream>#include <opencv2/highgui/highgui.hpp>#include <opencv2/imgproc/imgproc.hpp>#include <opencv2/opencv.hpp>#include <random>
Go to the source code of this file.
Functions | |
| ccPolyline * | contourPoly (ccPointCloud *stone) |
| pair< double, double > | getCentroid (vector< pair< double, double >> V) |
| vector< int > | getKNN (pair< double, double > P, vector< pair< double, double >> V, int k=3) |
| int | getNCommonPts (vector< pair< double, double >> tar, vector< pair< double, double >> ref) |
| vector< vector< int > > | getCommonPtsIdx (ccPointCloud *Cl1, ccPointCloud *Cl2) |
| void | cloud2binary (ccPointCloud *cloud, Mat &corrMatS, vector< Point > &idxPxS, vector< int > &idxPx1DS, Mat &imageBWS) |
| Mat | skeleton (Mat I, bool flagInv) |
| vector< int > | setIntersectIdxPixs1D (vector< int > listNew, vector< int > listOld) |
| ccPolyline * | contourPoly2 (ccPointCloud *cloud0, vector< int > V, QString name) |
| string | dateStamp () |
| ccPointCloud * | getMortarMaps (ccPointCloud *f_cloudStones, ccPointCloud *f_cloudMortar) |
| void cloud2binary | ( | ccPointCloud * | cloud, |
| Mat & | corrMatS, | ||
| vector< Point > & | idxPxS, | ||
| vector< int > & | idxPx1DS, | ||
| Mat & | imageBWS | ||
| ) |
Definition at line 374 of file qManualSeg.cpp.
References cloudViewer::utility::floor(), cloudViewer::PointCloudTpl< T >::getPoint(), cloudViewer::PointCloudTpl< T >::size(), Tuple3Tpl< Type >::x, and Tuple3Tpl< Type >::z.
Referenced by getMortarMaps().
| ccPolyline* contourPoly | ( | ccPointCloud * | stone | ) |
Definition at line 175 of file qManualSeg.cpp.
References ccHObject::addChild(), cloudViewer::PointCloudTpl< T >::addPoint(), cloudViewer::ReferenceCloud::addPointIndex(), ccPointCloud::addRGBColor(), ecvColor::cyan(), cloudViewer::PointProjectionTools::extractConcaveHull2D(), ccObject::getName(), cloudViewer::PointCloudTpl< T >::getPoint(), ccPointCloud::getPointColor(), cloudViewer::PointProjectionTools::IndexedCCVector2::index, cloudViewer::ReferenceCloud::reserve(), ccPointCloud::reserveThePointsTable(), ccPointCloud::reserveTheRGBTable(), cloudViewer::Polyline::setClosed(), ccPolyline::setColor(), ccObject::setName(), ccDrawableObject::setVisible(), ccDrawableObject::showColors(), ccPolyline::showVertices(), cloudViewer::PointCloudTpl< T >::size(), Tuple3Tpl< Type >::x, and Tuple3Tpl< Type >::z.
| ccPolyline* contourPoly2 | ( | ccPointCloud * | cloud0, |
| vector< int > | V, | ||
| QString | name | ||
| ) |
Definition at line 455 of file qManualSeg.cpp.
References ccHObject::addChild(), cloudViewer::PointCloudTpl< T >::addPoint(), cloudViewer::ReferenceCloud::addPointIndex(), ccPointCloud::addRGBColor(), ecvColor::cyan(), cloudViewer::PointProjectionTools::extractConcaveHull2D(), cloudViewer::PointCloudTpl< T >::getPoint(), ccPointCloud::getPointColor(), cloudViewer::PointProjectionTools::IndexedCCVector2::index, name, cloudViewer::ReferenceCloud::reserve(), ccPointCloud::reserveThePointsTable(), ccPointCloud::reserveTheRGBTable(), cloudViewer::Polyline::setClosed(), ccPolyline::setColor(), ccObject::setName(), ccDrawableObject::setVisible(), ccDrawableObject::showColors(), ccPolyline::showVertices(), Tuple3Tpl< Type >::x, Tuple3Tpl< Type >::y, and Tuple3Tpl< Type >::z.
| string dateStamp | ( | ) |
Definition at line 514 of file qManualSeg.cpp.
| pair<double, double> getCentroid | ( | vector< pair< double, double >> | V | ) |
Definition at line 260 of file qManualSeg.cpp.
References cloudViewer::core::make_pair().
| vector<vector<int> > getCommonPtsIdx | ( | ccPointCloud * | Cl1, |
| ccPointCloud * | Cl2 | ||
| ) |
Definition at line 323 of file qManualSeg.cpp.
References cloudViewer::PointCloudTpl< T >::getPoint(), cloudViewer::core::make_pair(), cloudViewer::PointCloudTpl< T >::size(), Tuple3Tpl< Type >::x, and Tuple3Tpl< Type >::z.
| vector<int> getKNN | ( | pair< double, double > | P, |
| vector< pair< double, double >> | V, | ||
| int | k = 3 |
||
| ) |
Definition at line 274 of file qManualSeg.cpp.
References cloudViewer::core::make_pair().
| ccPointCloud* getMortarMaps | ( | ccPointCloud * | f_cloudStones, |
| ccPointCloud * | f_cloudMortar | ||
| ) |
Definition at line 533 of file qManualSeg.cpp.
References abs(), cloudViewer::PointCloudTpl< T >::addPoint(), ccPointCloud::addRGBColor(), ccPointCloud::addScalarField(), cloudViewer::utility::ceil(), cloud2binary(), cloudViewer::ScalarField::computeMinAndMax(), cloudViewer::PointCloudTpl< T >::getBoundingBox(), cloudViewer::PointCloudTpl< T >::getPoint(), ccPointCloud::getPointColor(), cloudViewer::PointCloudTpl< T >::getPointScalarValue(), cloudViewer::PointCloudTpl< T >::getScalarField(), cloudViewer::PointCloudTpl< T >::getScalarFieldIndexByName(), ccPointCloud::partialClone(), cloudViewer::CloudSamplingTools::resampleCloudSpatially(), ccPointCloud::reserveThePointsTable(), ccPointCloud::reserveTheRGBTable(), ccPointCloud::scale(), ccPointCloud::setCurrentDisplayedScalarField(), setIntersectIdxPixs1D(), ccObject::setName(), ccGenericPointCloud::setPointSize(), cloudViewer::ScalarField::setValue(), ccDrawableObject::showSF(), cloudViewer::PointCloudTpl< T >::size(), skeleton(), ccPointCloud::Translate(), Tuple3Tpl< Type >::x, Tuple3Tpl< Type >::y, and Tuple3Tpl< Type >::z.
| int getNCommonPts | ( | vector< pair< double, double >> | tar, |
| vector< pair< double, double >> | ref | ||
| ) |
Definition at line 300 of file qManualSeg.cpp.
| vector<int> setIntersectIdxPixs1D | ( | vector< int > | listNew, |
| vector< int > | listOld | ||
| ) |
Definition at line 437 of file qManualSeg.cpp.
Referenced by getMortarMaps().
| Mat skeleton | ( | Mat | I, |
| bool | flagInv | ||
| ) |
Definition at line 406 of file qManualSeg.cpp.
Referenced by getMortarMaps().