Files
q3DMASC/training.ui
T
2018-09-21 20:16:44 +02:00

1441 lines
47 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Dialog</class>
<widget class="QDialog" name="Dialog">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>750</width>
<height>650</height>
</rect>
</property>
<property name="windowTitle">
<string>Dialog</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_3">
<item>
<widget class="QTabWidget" name="tabWidget">
<property name="currentIndex">
<number>0</number>
</property>
<widget class="QWidget" name="TrainingPage">
<attribute name="title">
<string>Classes, Training and Test data</string>
</attribute>
<layout class="QGridLayout" name="gridLayout">
<item row="2" column="1">
<layout class="QFormLayout" name="formLayout_2">
<item row="1" column="0">
<widget class="QRadioButton" name="testWithPercentageRadioButton">
<property name="text">
<string>percentage of training data</string>
</property>
<property name="checked">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QDoubleSpinBox" name="testPercentageDoubleSpinBox">
<property name="singleStep">
<double>0.050000000000000</double>
</property>
<property name="value">
<double>0.200000000000000</double>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QRadioButton" name="testWithCloudRadioButton">
<property name="text">
<string>cloud</string>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QFrame" name="testCloudFrame">
<property name="enabled">
<bool>false</bool>
</property>
<layout class="QVBoxLayout" name="verticalLayout_8">
<property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<item>
<widget class="QComboBox" name="testCloudComboBox">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="toolTip">
<string>Source cloud #1 (not labelled)</string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_17">
<property name="styleSheet">
<string notr="true">color: red;</string>
</property>
<property name="text">
<string>Warning: points must be associated to the same class labels as the trained classes</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
</layout>
</widget>
</item>
</layout>
</item>
<item row="0" column="1">
<layout class="QFormLayout" name="formLayout">
<item row="0" column="1">
<widget class="QComboBox" name="cloud1CloudComboBox">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="toolTip">
<string>Source cloud #1 (not labelled)</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QCheckBox" name="sourceCloud2CheckBox">
<property name="text">
<string>source cloud #2 (not labelled)</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QComboBox" name="clud2CloudComboBox">
<property name="enabled">
<bool>false</bool>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="toolTip">
<string>Source cloud #2 (not labelled) - optional</string>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QLabel" name="label_3">
<property name="text">
<string>core points (labelled)</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QFrame" name="corePointsFrame">
<property name="frameShape">
<enum>QFrame::Box</enum>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QComboBox" name="corePointsComboBox">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="toolTip">
<string>Labelled core points: coud be the same as cloud #1
but should ideally be smaller (e.g. a subsampled version of cloud #1)</string>
</property>
</widget>
</item>
<item>
<layout class="QFormLayout" name="formLayout_3">
<item row="0" column="0">
<widget class="QLabel" name="label_4">
<property name="text">
<string>classification scalar field</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QComboBox" name="classificationSFComboBox"/>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_5">
<property name="text">
<string>number of classes</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QLabel" name="classesCountLabel">
<property name="text">
<string>0</string>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QLabel" name="label_6">
<property name="text">
<string>classes</string>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QTableWidget" name="classesTableWidget">
<property name="maximumSize">
<size>
<width>16777215</width>
<height>120</height>
</size>
</property>
<property name="font">
<font>
<pointsize>7</pointsize>
</font>
</property>
<property name="showGrid">
<bool>true</bool>
</property>
<attribute name="horizontalHeaderStretchLastSection">
<bool>true</bool>
</attribute>
<attribute name="verticalHeaderVisible">
<bool>false</bool>
</attribute>
<row>
<property name="text">
<string>0</string>
</property>
</row>
<row>
<property name="text">
<string>1</string>
</property>
</row>
<column>
<property name="text">
<string>Class</string>
</property>
</column>
<column>
<property name="text">
<string>Count</string>
</property>
</column>
<item row="0" column="0">
<property name="text">
<string>0</string>
</property>
</item>
<item row="0" column="1">
<property name="text">
<string>32651</string>
</property>
</item>
<item row="1" column="0">
<property name="text">
<string>1</string>
</property>
</item>
<item row="1" column="1">
<property name="text">
<string>465</string>
</property>
</item>
</widget>
</item>
</layout>
</item>
<item>
<widget class="QCheckBox" name="usePrevFeaturesCheckBox">
<property name="enabled">
<bool>false</bool>
</property>
<property name="toolTip">
<string>Use previously computed features
(only if the cloud has already been processed)</string>
</property>
<property name="text">
<string>USE PREVIOUSLY COMPUTED FEATURES </string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item row="0" column="0">
<widget class="QCheckBox" name="sourceCloud1CheckBox">
<property name="text">
<string>source cloud #1 (not labelled)</string>
</property>
<property name="checked">
<bool>true</bool>
</property>
</widget>
</item>
</layout>
</item>
<item row="4" column="1">
<layout class="QFormLayout" name="formLayout_4">
<item row="0" column="0">
<widget class="QCheckBox" name="contextualFeaturesCheckBox">
<property name="text">
<string>contextual cloud (labelled)</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QComboBox" name="contextFeaturesCloudComboBox">
<property name="enabled">
<bool>false</bool>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="toolTip">
<string>Source cloud #1 (not labelled)</string>
</property>
</widget>
</item>
</layout>
</item>
<item row="6" column="1">
<layout class="QFormLayout" name="formLayout_5">
<item row="0" column="0">
<widget class="QCheckBox" name="homogenizeSampleCountCheckBox">
<property name="text">
<string>homogenize sample numbers for each class</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QFrame" name="sampleCountFrame">
<property name="enabled">
<bool>false</bool>
</property>
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<widget class="QSpinBox" name="sampleCountSpinBox">
<property name="maximum">
<number>1000000000</number>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_9">
<property name="text">
<string>(max = 0)</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
</layout>
</item>
<item row="4" column="0">
<widget class="QLabel" name="label">
<property name="text">
<string>Contextual features</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
</property>
</widget>
</item>
<item row="0" column="0">
<widget class="QLabel" name="label_7">
<property name="text">
<string>Training</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="Line" name="line">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QLabel" name="label_2">
<property name="text">
<string>Test data</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="Line" name="line_2">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item row="5" column="1">
<widget class="Line" name="line_3">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item row="6" column="0">
<widget class="QLabel" name="label_8">
<property name="text">
<string>Training data
pre-processing
and model testing</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
</property>
</widget>
</item>
<item row="7" column="1">
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Expanding</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<widget class="QWidget" name="FeaturesPage">
<attribute name="title">
<string>Scales and Scalar/features selection</string>
</attribute>
<layout class="QFormLayout" name="formLayout_7">
<item row="0" column="0">
<widget class="QRadioButton" name="fromFileRadioButton">
<property name="text">
<string>From file</string>
</property>
<property name="checked">
<bool>true</bool>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QFrame" name="featuresFromFileGroupBox">
<layout class="QHBoxLayout" name="horizontalLayout_5">
<property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item>
<widget class="QPushButton" name="pushButton">
<property name="text">
<string>Load file</string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_11">
<property name="text">
<string>&lt;a href=&quot;https://www.cloudcompare.org/doc/wiki&quot;&gt;see documentation&lt;/a&gt;</string>
</property>
<property name="openExternalLinks">
<bool>true</bool>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item row="1" column="0">
<widget class="QRadioButton" name="guiModeRadioButton">
<property name="text">
<string>GUI mode (limited)</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QFrame" name="featuresFromGUIGroupBox">
<property name="enabled">
<bool>false</bool>
</property>
<layout class="QVBoxLayout" name="verticalLayout_5">
<property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item>
<widget class="QGroupBox" name="scalesGroupBox">
<property name="title">
<string>Scales</string>
</property>
<layout class="QFormLayout" name="formLayout_6">
<item row="0" column="0">
<widget class="QRadioButton" name="scalesRampRadioButton">
<property name="text">
<string>ramp</string>
</property>
<property name="checked">
<bool>true</bool>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QFrame" name="scalesRampFrame">
<layout class="QHBoxLayout" name="horizontalLayout_2">
<property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item>
<widget class="QDoubleSpinBox" name="minScaleDoubleSpinBox">
<property name="toolTip">
<string>Mininum scale</string>
</property>
<property name="prefix">
<string>Min = </string>
</property>
<property name="decimals">
<number>6</number>
</property>
<property name="minimum">
<double>0.000001000000000</double>
</property>
<property name="maximum">
<double>1000000000.000000000000000</double>
</property>
<property name="singleStep">
<double>0.100000000000000</double>
</property>
<property name="value">
<double>0.100000000000000</double>
</property>
</widget>
</item>
<item>
<widget class="QDoubleSpinBox" name="stepScaleDoubleSpinBox">
<property name="toolTip">
<string>Step</string>
</property>
<property name="prefix">
<string>Step = </string>
</property>
<property name="decimals">
<number>6</number>
</property>
<property name="minimum">
<double>0.000001000000000</double>
</property>
<property name="maximum">
<double>1000000000.000000000000000</double>
</property>
<property name="singleStep">
<double>0.100000000000000</double>
</property>
<property name="value">
<double>0.100000000000000</double>
</property>
</widget>
</item>
<item>
<widget class="QDoubleSpinBox" name="maxScaleDoubleSpinBox">
<property name="toolTip">
<string>Max scale</string>
</property>
<property name="prefix">
<string>Max = </string>
</property>
<property name="decimals">
<number>6</number>
</property>
<property name="minimum">
<double>0.000001000000000</double>
</property>
<property name="maximum">
<double>1000000000.000000000000000</double>
</property>
<property name="value">
<double>1.000000000000000</double>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item row="1" column="0">
<widget class="QRadioButton" name="scalesListRadioButton">
<property name="toolTip">
<string>Inp</string>
</property>
<property name="text">
<string>list</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QLineEdit" name="scalesListLineEdit">
<property name="enabled">
<bool>false</bool>
</property>
<property name="toolTip">
<string>Input scales as a list of values (separated by a space character)</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="pointBasedFeaturesGroupBox">
<property name="title">
<string>Point based features</string>
</property>
<layout class="QGridLayout" name="gridLayout_2">
<item row="0" column="0">
<widget class="QCheckBox" name="pbfIntensityCheckBox">
<property name="text">
<string>intensity</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QCheckBox" name="pbfReturnCountCheckBox">
<property name="text">
<string>number of returns</string>
</property>
</widget>
</item>
<item row="0" column="2">
<widget class="QCheckBox" name="pbfReturnNumberCheckBox">
<property name="text">
<string>return number</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QCheckBox" name="pbfEchoRatioCheckBox">
<property name="toolTip">
<string>echo ratio = return number / number of returns</string>
</property>
<property name="text">
<string>echo ratio</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QCheckBox" name="pbfRGBCheckBox">
<property name="text">
<string>RGB</string>
</property>
</widget>
</item>
<item row="1" column="2">
<widget class="QCheckBox" name="pbfDipAngleCheckBox">
<property name="text">
<string>dip angle</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="nnBasedFeaturesGroupBox">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Maximum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="title">
<string>Neigborhood based features</string>
</property>
<layout class="QHBoxLayout" name="horizontalLayout_3">
<item>
<widget class="QListWidget" name="nnBasedFeaturesListWidget">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="selectionMode">
<enum>QAbstractItemView::MultiSelection</enum>
</property>
<item>
<property name="text">
<string>option 1</string>
</property>
</item>
<item>
<property name="text">
<string>option 2</string>
</property>
</item>
<item>
<property name="text">
<string>...</string>
</property>
</item>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="contextualFeaturesGroupBox">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Maximum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="title">
<string>Contextual features</string>
</property>
<property name="checkable">
<bool>true</bool>
</property>
<layout class="QVBoxLayout" name="verticalLayout_4">
<item>
<widget class="QListWidget" name="nnBasedFeaturesListWidget_2">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="selectionMode">
<enum>QAbstractItemView::MultiSelection</enum>
</property>
<item>
<property name="text">
<string>Ground</string>
</property>
</item>
<item>
<property name="text">
<string>Water</string>
</property>
</item>
<item>
<property name="text">
<string>...</string>
</property>
</item>
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_4">
<item>
<widget class="QLabel" name="label_10">
<property name="text">
<string>Nearest neighbors</string>
</property>
</widget>
</item>
<item>
<widget class="QSpinBox" name="cfKnnSpinBox">
<property name="toolTip">
<string>The vertical distance will be computed to the 'k' nearest neighbors</string>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="dualCloudFeaturesGroupBox">
<property name="toolTip">
<string>Requires two source clouds</string>
</property>
<property name="title">
<string>Dual-cloud features</string>
</property>
<property name="checkable">
<bool>true</bool>
</property>
<property name="checked">
<bool>false</bool>
</property>
<layout class="QGridLayout" name="gridLayout_3">
<item row="0" column="0">
<widget class="QCheckBox" name="checkBox">
<property name="text">
<string>mean elveation difference</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QCheckBox" name="checkBox_4">
<property name="text">
<string>ratio of mean intensities</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QCheckBox" name="checkBox_3">
<property name="text">
<string>standard deviation of cloud #1</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QCheckBox" name="checkBox_2">
<property name="text">
<string>standard deviation of cloud #2</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
<widget class="QWidget" name="ClassifierPage">
<attribute name="title">
<string>Classifier and training mode</string>
</attribute>
<layout class="QVBoxLayout" name="verticalLayout_7">
<item>
<widget class="QGroupBox" name="randomTreesGroupBox">
<property name="title">
<string>Random Trees</string>
</property>
<layout class="QFormLayout" name="formLayout_9">
<item row="0" column="0">
<widget class="QLabel" name="label_13">
<property name="text">
<string>Number of trees</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QSpinBox" name="treeCountSpinBox">
<property name="minimum">
<number>10</number>
</property>
<property name="maximum">
<number>10000</number>
</property>
<property name="singleStep">
<number>10</number>
</property>
<property name="value">
<number>200</number>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QLabel" name="label_14">
<property name="text">
<string>Tree depth</string>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QSpinBox" name="treeDepthSpinBox">
<property name="minimum">
<number>1</number>
</property>
<property name="maximum">
<number>200</number>
</property>
<property name="value">
<number>25</number>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="trainingModeGroupBox">
<property name="title">
<string>Training mode</string>
</property>
<layout class="QFormLayout" name="formLayout_8">
<item row="0" column="0">
<widget class="QRadioButton" name="simpleTrainingRadioButton">
<property name="text">
<string>Simple training</string>
</property>
<property name="checked">
<bool>true</bool>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QCheckBox" name="simpleFeatAndScaleSelectCheckBox">
<property name="toolTip">
<string>Select the most contributive features and scales
(in order to reduce computation time and reduce the classifier size)</string>
</property>
<property name="text">
<string>Feature and scale selection by importance</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QRadioButton" name="kFoldCrossValidRadioButton">
<property name="text">
<string>k-fold Crossvalidation</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QFrame" name="kValueFrame">
<property name="enabled">
<bool>false</bool>
</property>
<property name="frameShape">
<enum>QFrame::StyledPanel</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Raised</enum>
</property>
<layout class="QVBoxLayout" name="verticalLayout_6">
<property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_6">
<item>
<widget class="QLabel" name="label_15">
<property name="text">
<string>k</string>
</property>
</widget>
</item>
<item>
<widget class="QSpinBox" name="kValueSpinBox">
<property name="minimum">
<number>2</number>
</property>
</widget>
</item>
<item>
<spacer name="horizontalSpacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
</layout>
</item>
<item>
<widget class="QCheckBox" name="kValueFeatAndScaleSelectCheckBox">
<property name="toolTip">
<string>Select the most contributive features and scales
(in order to reduce computation time and reduce the classifier size)</string>
</property>
<property name="text">
<string>Feature and scale selection</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="treeDepthSelectCheckBox">
<property name="toolTip">
<string>Select the most contributive features and scales
(in order to reduce computation time and reduce the classifier size)</string>
</property>
<property name="text">
<string>Tree depth selection</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<spacer name="verticalSpacer_3">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>253</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<widget class="QWidget" name="SpeedPage">
<attribute name="title">
<string>Speed features</string>
</attribute>
<layout class="QVBoxLayout" name="verticalLayout_9">
<item>
<widget class="QGroupBox" name="pyramidSubsamplingGroupBox">
<property name="title">
<string>Pyramidal subsampling</string>
</property>
<property name="checkable">
<bool>true</bool>
</property>
<layout class="QHBoxLayout" name="horizontalLayout_8">
<item>
<widget class="QLabel" name="label_12">
<property name="text">
<string>Pyramidal levels</string>
</property>
</widget>
</item>
<item>
<widget class="QSpinBox" name="pyramideLevelsSpinBox">
<property name="minimum">
<number>2</number>
</property>
<property name="maximum">
<number>10</number>
</property>
<property name="value">
<number>3</number>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="groupBox">
<property name="title">
<string>Octree-based feature computation</string>
</property>
<layout class="QFormLayout" name="formLayout_10">
<item row="0" column="0">
<widget class="QLabel" name="label_18">
<property name="text">
<string>Min. scale</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QDoubleSpinBox" name="octreeMinScaleDoubleSpinBox">
<property name="decimals">
<number>3</number>
</property>
<property name="minimum">
<double>0.001000000000000</double>
</property>
<property name="maximum">
<double>1000000.000000000000000</double>
</property>
<property name="singleStep">
<double>0.100000000000000</double>
</property>
<property name="value">
<double>0.500000000000000</double>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_19">
<property name="text">
<string>Depth</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QSpinBox" name="octreeDepthSpinBox">
<property name="minimum">
<number>1</number>
</property>
<property name="maximum">
<number>21</number>
</property>
<property name="value">
<number>5</number>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<spacer name="verticalSpacer_4">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>412</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<widget class="QWidget" name="OutputPage">
<attribute name="title">
<string>Outputs</string>
</attribute>
<layout class="QVBoxLayout" name="verticalLayout_2">
<item>
<widget class="QGroupBox" name="groupBox_2">
<property name="title">
<string>Output display</string>
</property>
<layout class="QGridLayout" name="gridLayout_4">
<item row="0" column="0">
<widget class="QCheckBox" name="showConfusionMatrixCheckBox">
<property name="text">
<string>Confusion matrix</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QCheckBox" name="showBarChartCheckBox">
<property name="text">
<string>Bar chart of feature importance</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QFrame" name="barChatFeatureGroupBox">
<property name="enabled">
<bool>false</bool>
</property>
<layout class="QHBoxLayout" name="horizontalLayout_7">
<item>
<widget class="QLabel" name="label_16">
<property name="text">
<string>number of features</string>
</property>
</widget>
</item>
<item>
<widget class="QSpinBox" name="displayedFeatureCountSpinBox">
<property name="toolTip">
<string>Number of features to show in the bar chart</string>
</property>
<property name="minimum">
<number>1</number>
</property>
</widget>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QCheckBox" name="saveCorePointsCheckBox">
<property name="toolTip">
<string>Can be re-used in 3DMASC &quot;Create&quot; to avoid re-computing the features</string>
</property>
<property name="text">
<string>Save training core points with computed features as scalars </string>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer_2">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>449</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
</widget>
</item>
<item>
<widget class="QDialogButtonBox" name="buttonBox">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="standardButtons">
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
</property>
</widget>
</item>
</layout>
</widget>
<resources/>
<connections>
<connection>
<sender>buttonBox</sender>
<signal>accepted()</signal>
<receiver>Dialog</receiver>
<slot>accept()</slot>
<hints>
<hint type="sourcelabel">
<x>248</x>
<y>254</y>
</hint>
<hint type="destinationlabel">
<x>157</x>
<y>274</y>
</hint>
</hints>
</connection>
<connection>
<sender>buttonBox</sender>
<signal>rejected()</signal>
<receiver>Dialog</receiver>
<slot>reject()</slot>
<hints>
<hint type="sourcelabel">
<x>316</x>
<y>260</y>
</hint>
<hint type="destinationlabel">
<x>286</x>
<y>274</y>
</hint>
</hints>
</connection>
<connection>
<sender>sourceCloud2CheckBox</sender>
<signal>toggled(bool)</signal>
<receiver>clud2CloudComboBox</receiver>
<slot>setEnabled(bool)</slot>
<hints>
<hint type="sourcelabel">
<x>254</x>
<y>76</y>
</hint>
<hint type="destinationlabel">
<x>534</x>
<y>77</y>
</hint>
</hints>
</connection>
<connection>
<sender>contextualFeaturesCheckBox</sender>
<signal>toggled(bool)</signal>
<receiver>contextFeaturesCloudComboBox</receiver>
<slot>setEnabled(bool)</slot>
<hints>
<hint type="sourcelabel">
<x>220</x>
<y>511</y>
</hint>
<hint type="destinationlabel">
<x>502</x>
<y>512</y>
</hint>
</hints>
</connection>
<connection>
<sender>testWithPercentageRadioButton</sender>
<signal>toggled(bool)</signal>
<receiver>testPercentageDoubleSpinBox</receiver>
<slot>setEnabled(bool)</slot>
<hints>
<hint type="sourcelabel">
<x>240</x>
<y>407</y>
</hint>
<hint type="destinationlabel">
<x>532</x>
<y>408</y>
</hint>
</hints>
</connection>
<connection>
<sender>homogenizeSampleCountCheckBox</sender>
<signal>toggled(bool)</signal>
<receiver>sampleCountFrame</receiver>
<slot>setEnabled(bool)</slot>
<hints>
<hint type="sourcelabel">
<x>267</x>
<y>580</y>
</hint>
<hint type="destinationlabel">
<x>462</x>
<y>582</y>
</hint>
</hints>
</connection>
<connection>
<sender>fromFileRadioButton</sender>
<signal>toggled(bool)</signal>
<receiver>featuresFromFileGroupBox</receiver>
<slot>setEnabled(bool)</slot>
<hints>
<hint type="sourcelabel">
<x>51</x>
<y>48</y>
</hint>
<hint type="destinationlabel">
<x>426</x>
<y>51</y>
</hint>
</hints>
</connection>
<connection>
<sender>guiModeRadioButton</sender>
<signal>toggled(bool)</signal>
<receiver>featuresFromGUIGroupBox</receiver>
<slot>setEnabled(bool)</slot>
<hints>
<hint type="sourcelabel">
<x>75</x>
<y>77</y>
</hint>
<hint type="destinationlabel">
<x>426</x>
<y>415</y>
</hint>
</hints>
</connection>
<connection>
<sender>simpleTrainingRadioButton</sender>
<signal>toggled(bool)</signal>
<receiver>simpleFeatAndScaleSelectCheckBox</receiver>
<slot>setEnabled(bool)</slot>
<hints>
<hint type="sourcelabel">
<x>141</x>
<y>319</y>
</hint>
<hint type="destinationlabel">
<x>331</x>
<y>319</y>
</hint>
</hints>
</connection>
<connection>
<sender>kFoldCrossValidRadioButton</sender>
<signal>toggled(bool)</signal>
<receiver>kValueFrame</receiver>
<slot>setEnabled(bool)</slot>
<hints>
<hint type="sourcelabel">
<x>141</x>
<y>379</y>
</hint>
<hint type="destinationlabel">
<x>297</x>
<y>414</y>
</hint>
</hints>
</connection>
<connection>
<sender>showBarChartCheckBox</sender>
<signal>toggled(bool)</signal>
<receiver>barChatFeatureGroupBox</receiver>
<slot>setEnabled(bool)</slot>
<hints>
<hint type="sourcelabel">
<x>155</x>
<y>459</y>
</hint>
<hint type="destinationlabel">
<x>329</x>
<y>461</y>
</hint>
</hints>
</connection>
<connection>
<sender>testWithCloudRadioButton</sender>
<signal>toggled(bool)</signal>
<receiver>testCloudFrame</receiver>
<slot>setEnabled(bool)</slot>
<hints>
<hint type="sourcelabel">
<x>147</x>
<y>370</y>
</hint>
<hint type="destinationlabel">
<x>505</x>
<y>385</y>
</hint>
</hints>
</connection>
</connections>
</ui>