# Form implementation generated from reading ui file 'ui/ui_semiautomaticclassificationplugin.ui'
#
# Created by: PyQt6 UI code generator 6.9.0
#
# WARNING: Any manual changes made to this file will be lost when pyuic6 is
# run again.  Do not edit this file unless you know what you are doing.


from PyQt6 import QtCore, QtGui, QtWidgets


class Ui_SemiAutomaticClassificationPlugin(object):
    def setupUi(self, SemiAutomaticClassificationPlugin):
        SemiAutomaticClassificationPlugin.setObjectName("SemiAutomaticClassificationPlugin")
        SemiAutomaticClassificationPlugin.setEnabled(True)
        SemiAutomaticClassificationPlugin.resize(1189, 678)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(SemiAutomaticClassificationPlugin.sizePolicy().hasHeightForWidth())
        SemiAutomaticClassificationPlugin.setSizePolicy(sizePolicy)
        SemiAutomaticClassificationPlugin.setMinimumSize(QtCore.QSize(400, 400))
        icon = QtGui.QIcon()
        icon.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        SemiAutomaticClassificationPlugin.setWindowIcon(icon)
        SemiAutomaticClassificationPlugin.setLocale(QtCore.QLocale(QtCore.QLocale.Language.English, QtCore.QLocale.Country.UnitedStates))
        SemiAutomaticClassificationPlugin.setSizeGripEnabled(True)
        self.gridLayout_301 = QtWidgets.QGridLayout(SemiAutomaticClassificationPlugin)
        self.gridLayout_301.setContentsMargins(2, 2, 2, 2)
        self.gridLayout_301.setObjectName("gridLayout_301")
        self.splitter = QtWidgets.QSplitter(parent=SemiAutomaticClassificationPlugin)
        self.splitter.setFrameShape(QtWidgets.QFrame.Shape.NoFrame)
        self.splitter.setOrientation(QtCore.Qt.Orientation.Horizontal)
        self.splitter.setHandleWidth(4)
        self.splitter.setChildrenCollapsible(False)
        self.splitter.setObjectName("splitter")
        self.widget = QtWidgets.QWidget(parent=self.splitter)
        self.widget.setMinimumSize(QtCore.QSize(50, 0))
        self.widget.setMaximumSize(QtCore.QSize(250, 16777215))
        self.widget.setObjectName("widget")
        self.gridLayout_193 = QtWidgets.QGridLayout(self.widget)
        self.gridLayout_193.setContentsMargins(1, 1, 1, 1)
        self.gridLayout_193.setHorizontalSpacing(2)
        self.gridLayout_193.setObjectName("gridLayout_193")
        self.f_filter_lineEdit = QtWidgets.QLineEdit(parent=self.widget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.f_filter_lineEdit.sizePolicy().hasHeightForWidth())
        self.f_filter_lineEdit.setSizePolicy(sizePolicy)
        self.f_filter_lineEdit.setMinimumSize(QtCore.QSize(100, 0))
        self.f_filter_lineEdit.setObjectName("f_filter_lineEdit")
        self.gridLayout_193.addWidget(self.f_filter_lineEdit, 0, 0, 1, 1)
        self.menu_treeWidget = QtWidgets.QTreeWidget(parent=self.widget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.menu_treeWidget.sizePolicy().hasHeightForWidth())
        self.menu_treeWidget.setSizePolicy(sizePolicy)
        self.menu_treeWidget.setMinimumSize(QtCore.QSize(100, 0))
        self.menu_treeWidget.setFrameShape(QtWidgets.QFrame.Shape.StyledPanel)
        self.menu_treeWidget.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.menu_treeWidget.setEditTriggers(QtWidgets.QAbstractItemView.EditTrigger.CurrentChanged|QtWidgets.QAbstractItemView.EditTrigger.DoubleClicked)
        self.menu_treeWidget.setProperty("showDropIndicator", False)
        self.menu_treeWidget.setAlternatingRowColors(True)
        self.menu_treeWidget.setTextElideMode(QtCore.Qt.TextElideMode.ElideNone)
        self.menu_treeWidget.setIndentation(15)
        self.menu_treeWidget.setRootIsDecorated(True)
        self.menu_treeWidget.setHeaderHidden(True)
        self.menu_treeWidget.setObjectName("menu_treeWidget")
        self.gridLayout_193.addWidget(self.menu_treeWidget, 1, 0, 1, 1)
        self.main_tabWidget = QtWidgets.QTabWidget(parent=self.splitter)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Minimum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.main_tabWidget.sizePolicy().hasHeightForWidth())
        self.main_tabWidget.setSizePolicy(sizePolicy)
        self.main_tabWidget.setMinimumSize(QtCore.QSize(400, 0))
        self.main_tabWidget.setTabPosition(QtWidgets.QTabWidget.TabPosition.East)
        self.main_tabWidget.setTabShape(QtWidgets.QTabWidget.TabShape.Rounded)
        self.main_tabWidget.setIconSize(QtCore.QSize(12, 12))
        self.main_tabWidget.setDocumentMode(True)
        self.main_tabWidget.setObjectName("main_tabWidget")
        self.tool_tab = QtWidgets.QWidget()
        self.tool_tab.setObjectName("tool_tab")
        self.gridLayout_60 = QtWidgets.QGridLayout(self.tool_tab)
        self.gridLayout_60.setObjectName("gridLayout_60")
        self.SCP_tabs = QtWidgets.QTabWidget(parent=self.tool_tab)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.SCP_tabs.sizePolicy().hasHeightForWidth())
        self.SCP_tabs.setSizePolicy(sizePolicy)
        self.SCP_tabs.setLocale(QtCore.QLocale(QtCore.QLocale.Language.English, QtCore.QLocale.Country.UnitedStates))
        self.SCP_tabs.setIconSize(QtCore.QSize(20, 20))
        self.SCP_tabs.setDocumentMode(True)
        self.SCP_tabs.setObjectName("SCP_tabs")
        self.tab_band_set = QtWidgets.QWidget()
        self.tab_band_set.setObjectName("tab_band_set")
        self.gridLayout_50 = QtWidgets.QGridLayout(self.tab_band_set)
        self.gridLayout_50.setContentsMargins(3, 3, 3, 3)
        self.gridLayout_50.setObjectName("gridLayout_50")
        self.splitter_3 = QtWidgets.QSplitter(parent=self.tab_band_set)
        self.splitter_3.setOrientation(QtCore.Qt.Orientation.Horizontal)
        self.splitter_3.setHandleWidth(0)
        self.splitter_3.setChildrenCollapsible(False)
        self.splitter_3.setObjectName("splitter_3")
        self.widget_bandset_tab = QtWidgets.QWidget(parent=self.splitter_3)
        self.widget_bandset_tab.setMinimumSize(QtCore.QSize(60, 0))
        self.widget_bandset_tab.setMaximumSize(QtCore.QSize(500, 16777215))
        self.widget_bandset_tab.setObjectName("widget_bandset_tab")
        self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.widget_bandset_tab)
        self.verticalLayout_2.setSizeConstraint(QtWidgets.QLayout.SizeConstraint.SetMinimumSize)
        self.verticalLayout_2.setContentsMargins(0, 0, 0, 0)
        self.verticalLayout_2.setSpacing(2)
        self.verticalLayout_2.setObjectName("verticalLayout_2")
        self.band_set_filter_lineEdit = QtWidgets.QLineEdit(parent=self.widget_bandset_tab)
        self.band_set_filter_lineEdit.setMinimumSize(QtCore.QSize(30, 0))
        self.band_set_filter_lineEdit.setObjectName("band_set_filter_lineEdit")
        self.verticalLayout_2.addWidget(self.band_set_filter_lineEdit)
        self.bandset_tableWidget = QtWidgets.QTableWidget(parent=self.widget_bandset_tab)
        self.bandset_tableWidget.setMinimumSize(QtCore.QSize(150, 0))
        self.bandset_tableWidget.setEditTriggers(QtWidgets.QAbstractItemView.EditTrigger.NoEditTriggers)
        self.bandset_tableWidget.setAlternatingRowColors(True)
        self.bandset_tableWidget.setSelectionBehavior(QtWidgets.QAbstractItemView.SelectionBehavior.SelectRows)
        self.bandset_tableWidget.setGridStyle(QtCore.Qt.PenStyle.SolidLine)
        self.bandset_tableWidget.setObjectName("bandset_tableWidget")
        self.bandset_tableWidget.setColumnCount(1)
        self.bandset_tableWidget.setRowCount(0)
        item = QtWidgets.QTableWidgetItem()
        self.bandset_tableWidget.setHorizontalHeaderItem(0, item)
        self.bandset_tableWidget.horizontalHeader().setStretchLastSection(True)
        self.verticalLayout_2.addWidget(self.bandset_tableWidget)
        self.gridLayout_130 = QtWidgets.QGridLayout()
        self.gridLayout_130.setObjectName("gridLayout_130")
        self.move_up_toolButton_4 = QtWidgets.QToolButton(parent=self.widget_bandset_tab)
        self.move_up_toolButton_4.setStyleSheet("margin: 0px;padding: 0px;")
        icon1 = QtGui.QIcon()
        icon1.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin_move_up.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.move_up_toolButton_4.setIcon(icon1)
        self.move_up_toolButton_4.setIconSize(QtCore.QSize(22, 22))
        self.move_up_toolButton_4.setObjectName("move_up_toolButton_4")
        self.gridLayout_130.addWidget(self.move_up_toolButton_4, 1, 1, 1, 1)
        self.add_band_set_toolButton = QtWidgets.QToolButton(parent=self.widget_bandset_tab)
        self.add_band_set_toolButton.setStyleSheet("margin: 0px;padding: 0px")
        icon2 = QtGui.QIcon()
        icon2.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin_add_bandset_tool.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.add_band_set_toolButton.setIcon(icon2)
        self.add_band_set_toolButton.setIconSize(QtCore.QSize(22, 22))
        self.add_band_set_toolButton.setObjectName("add_band_set_toolButton")
        self.gridLayout_130.addWidget(self.add_band_set_toolButton, 0, 0, 1, 1)
        self.move_down_toolButton_4 = QtWidgets.QToolButton(parent=self.widget_bandset_tab)
        self.move_down_toolButton_4.setStyleSheet("margin: 0px;padding: 0px;")
        icon3 = QtGui.QIcon()
        icon3.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin_move_down.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.move_down_toolButton_4.setIcon(icon3)
        self.move_down_toolButton_4.setIconSize(QtCore.QSize(22, 22))
        self.move_down_toolButton_4.setObjectName("move_down_toolButton_4")
        self.gridLayout_130.addWidget(self.move_down_toolButton_4, 1, 0, 1, 1)
        self.remove_bandset_toolButton = QtWidgets.QToolButton(parent=self.widget_bandset_tab)
        self.remove_bandset_toolButton.setStyleSheet("margin: 0px;padding: 0px")
        icon4 = QtGui.QIcon()
        icon4.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin_remove.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.remove_bandset_toolButton.setIcon(icon4)
        self.remove_bandset_toolButton.setIconSize(QtCore.QSize(22, 22))
        self.remove_bandset_toolButton.setObjectName("remove_bandset_toolButton")
        self.gridLayout_130.addWidget(self.remove_bandset_toolButton, 0, 1, 1, 1)
        self.sort_by_date = QtWidgets.QToolButton(parent=self.widget_bandset_tab)
        self.sort_by_date.setStyleSheet("margin: 0px;padding: 0px;")
        icon5 = QtGui.QIcon()
        icon5.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin_order_by_date.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.sort_by_date.setIcon(icon5)
        self.sort_by_date.setIconSize(QtCore.QSize(22, 22))
        self.sort_by_date.setObjectName("sort_by_date")
        self.gridLayout_130.addWidget(self.sort_by_date, 0, 2, 1, 1)
        self.rgb_toolButton = QtWidgets.QToolButton(parent=self.widget_bandset_tab)
        self.rgb_toolButton.setStyleSheet("margin: 0px;padding: 0px")
        icon6 = QtGui.QIcon()
        icon6.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin_rgb_tool.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.rgb_toolButton.setIcon(icon6)
        self.rgb_toolButton.setIconSize(QtCore.QSize(22, 22))
        self.rgb_toolButton.setObjectName("rgb_toolButton")
        self.gridLayout_130.addWidget(self.rgb_toolButton, 1, 2, 1, 1)
        self.verticalLayout_2.addLayout(self.gridLayout_130)
        self.frame_2 = QtWidgets.QFrame(parent=self.splitter_3)
        self.frame_2.setFrameShape(QtWidgets.QFrame.Shape.StyledPanel)
        self.frame_2.setFrameShadow(QtWidgets.QFrame.Shadow.Raised)
        self.frame_2.setObjectName("frame_2")
        self.gridLayout_11 = QtWidgets.QGridLayout(self.frame_2)
        self.gridLayout_11.setContentsMargins(2, 2, 2, 2)
        self.gridLayout_11.setSpacing(2)
        self.gridLayout_11.setObjectName("gridLayout_11")
        self.gridLayout_42 = QtWidgets.QGridLayout()
        self.gridLayout_42.setObjectName("gridLayout_42")
        self.gridLayout_65 = QtWidgets.QGridLayout()
        self.gridLayout_65.setObjectName("gridLayout_65")
        self.label_154 = QtWidgets.QLabel(parent=self.frame_2)
        self.label_154.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_154.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_154.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_154.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_154.setObjectName("label_154")
        self.gridLayout_65.addWidget(self.label_154, 0, 0, 1, 5)
        self.gridLayout_127 = QtWidgets.QGridLayout()
        self.gridLayout_127.setObjectName("gridLayout_127")
        self.bandset_dateEdit = QtWidgets.QDateEdit(parent=self.frame_2)
        self.bandset_dateEdit.setDateTime(QtCore.QDateTime(QtCore.QDate(2020, 1, 1), QtCore.QTime(0, 0, 0)))
        self.bandset_dateEdit.setMaximumDate(QtCore.QDate(2045, 12, 31))
        self.bandset_dateEdit.setMinimumDate(QtCore.QDate(1972, 1, 1))
        self.bandset_dateEdit.setCalendarPopup(True)
        self.bandset_dateEdit.setDate(QtCore.QDate(2020, 1, 1))
        self.bandset_dateEdit.setObjectName("bandset_dateEdit")
        self.gridLayout_127.addWidget(self.bandset_dateEdit, 0, 6, 1, 1)
        self.unit_combo = QtWidgets.QComboBox(parent=self.frame_2)
        self.unit_combo.setMinimumSize(QtCore.QSize(100, 0))
        self.unit_combo.setObjectName("unit_combo")
        self.gridLayout_127.addWidget(self.unit_combo, 0, 4, 1, 1)
        self.label_94 = QtWidgets.QLabel(parent=self.frame_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_94.sizePolicy().hasHeightForWidth())
        self.label_94.setSizePolicy(sizePolicy)
        self.label_94.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_94.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_94.setObjectName("label_94")
        self.gridLayout_127.addWidget(self.label_94, 0, 3, 1, 1)
        self.label_6 = QtWidgets.QLabel(parent=self.frame_2)
        self.label_6.setObjectName("label_6")
        self.gridLayout_127.addWidget(self.label_6, 0, 5, 1, 1)
        self.toolButton_custom_wavelength = QtWidgets.QToolButton(parent=self.frame_2)
        self.toolButton_custom_wavelength.setStyleSheet("margin: 0px;padding: 0px;")
        icon7 = QtGui.QIcon()
        icon7.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin_open_file.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.toolButton_custom_wavelength.setIcon(icon7)
        self.toolButton_custom_wavelength.setIconSize(QtCore.QSize(22, 22))
        self.toolButton_custom_wavelength.setObjectName("toolButton_custom_wavelength")
        self.gridLayout_127.addWidget(self.toolButton_custom_wavelength, 0, 2, 1, 1)
        self.wavelength_sat_combo = QtWidgets.QComboBox(parent=self.frame_2)
        self.wavelength_sat_combo.setObjectName("wavelength_sat_combo")
        self.gridLayout_127.addWidget(self.wavelength_sat_combo, 0, 1, 1, 1)
        self.label_150 = QtWidgets.QLabel(parent=self.frame_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_150.sizePolicy().hasHeightForWidth())
        self.label_150.setSizePolicy(sizePolicy)
        self.label_150.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_150.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_150.setWordWrap(False)
        self.label_150.setObjectName("label_150")
        self.gridLayout_127.addWidget(self.label_150, 0, 0, 1, 1)
        self.gridLayout_65.addLayout(self.gridLayout_127, 1, 0, 1, 5)
        self.gridLayout_42.addLayout(self.gridLayout_65, 2, 0, 1, 2)
        self.Band_set_tabWidget = QtWidgets.QTabWidget(parent=self.frame_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.MinimumExpanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.Band_set_tabWidget.sizePolicy().hasHeightForWidth())
        self.Band_set_tabWidget.setSizePolicy(sizePolicy)
        self.Band_set_tabWidget.setMinimumSize(QtCore.QSize(0, 20))
        self.Band_set_tabWidget.setStyleSheet("QTabBar::tab {\n"
"min-height: 30px;\n"
"min-width: 120px;\n"
"}\n"
"QTabBar::tab:selected { font: bold; color: green; }")
        self.Band_set_tabWidget.setTabPosition(QtWidgets.QTabWidget.TabPosition.North)
        self.Band_set_tabWidget.setDocumentMode(True)
        self.Band_set_tabWidget.setTabsClosable(True)
        self.Band_set_tabWidget.setMovable(True)
        self.Band_set_tabWidget.setObjectName("Band_set_tabWidget")
        self.gridLayout_42.addWidget(self.Band_set_tabWidget, 1, 0, 1, 1)
        self.gridLayout_59 = QtWidgets.QGridLayout()
        self.gridLayout_59.setObjectName("gridLayout_59")
        self.virtual_raster_bandset_checkBox = QtWidgets.QCheckBox(parent=self.frame_2)
        self.virtual_raster_bandset_checkBox.setObjectName("virtual_raster_bandset_checkBox")
        self.gridLayout_59.addWidget(self.virtual_raster_bandset_checkBox, 1, 0, 1, 1)
        self.band_calc_checkBox = QtWidgets.QCheckBox(parent=self.frame_2)
        self.band_calc_checkBox.setObjectName("band_calc_checkBox")
        self.gridLayout_59.addWidget(self.band_calc_checkBox, 1, 3, 1, 1)
        self.stack_raster_bandset_checkBox = QtWidgets.QCheckBox(parent=self.frame_2)
        self.stack_raster_bandset_checkBox.setObjectName("stack_raster_bandset_checkBox")
        self.gridLayout_59.addWidget(self.stack_raster_bandset_checkBox, 1, 1, 1, 1)
        self.overview_raster_bandset_checkBox = QtWidgets.QCheckBox(parent=self.frame_2)
        self.overview_raster_bandset_checkBox.setObjectName("overview_raster_bandset_checkBox")
        self.gridLayout_59.addWidget(self.overview_raster_bandset_checkBox, 1, 2, 1, 1)
        self.label_208 = QtWidgets.QLabel(parent=self.frame_2)
        self.label_208.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_208.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_208.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_208.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_208.setObjectName("label_208")
        self.gridLayout_59.addWidget(self.label_208, 0, 0, 1, 7)
        spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_59.addItem(spacerItem, 1, 4, 1, 1)
        self.band_set_process_toolButton = QtWidgets.QToolButton(parent=self.frame_2)
        font = QtGui.QFont()
        font.setBold(True)
        self.band_set_process_toolButton.setFont(font)
        self.band_set_process_toolButton.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.band_set_process_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        icon8 = QtGui.QIcon()
        icon8.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin_run.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.band_set_process_toolButton.setIcon(icon8)
        self.band_set_process_toolButton.setIconSize(QtCore.QSize(34, 34))
        self.band_set_process_toolButton.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.band_set_process_toolButton.setObjectName("band_set_process_toolButton")
        self.gridLayout_59.addWidget(self.band_set_process_toolButton, 1, 5, 1, 1)
        self.gridLayout_42.addLayout(self.gridLayout_59, 3, 0, 1, 2)
        self.horizontalLayout_77 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_77.setObjectName("horizontalLayout_77")
        self.label_59 = QtWidgets.QLabel(parent=self.frame_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_59.sizePolicy().hasHeightForWidth())
        self.label_59.setSizePolicy(sizePolicy)
        self.label_59.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_59.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_59.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_59.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_59.setObjectName("label_59")
        self.horizontalLayout_77.addWidget(self.label_59)
        self.bandset_number_spinBox = QtWidgets.QSpinBox(parent=self.frame_2)
        self.bandset_number_spinBox.setAlignment(QtCore.Qt.AlignmentFlag.AlignRight|QtCore.Qt.AlignmentFlag.AlignTrailing|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.bandset_number_spinBox.setMinimum(1)
        self.bandset_number_spinBox.setMaximum(1)
        self.bandset_number_spinBox.setProperty("value", 1)
        self.bandset_number_spinBox.setObjectName("bandset_number_spinBox")
        self.horizontalLayout_77.addWidget(self.bandset_number_spinBox)
        self.label_bandset_date_4 = QtWidgets.QLabel(parent=self.frame_2)
        self.label_bandset_date_4.setObjectName("label_bandset_date_4")
        self.horizontalLayout_77.addWidget(self.label_bandset_date_4)
        self.bandset_date_lineEdit = QtWidgets.QLineEdit(parent=self.frame_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.MinimumExpanding, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.bandset_date_lineEdit.sizePolicy().hasHeightForWidth())
        self.bandset_date_lineEdit.setSizePolicy(sizePolicy)
        self.bandset_date_lineEdit.setMinimumSize(QtCore.QSize(80, 0))
        self.bandset_date_lineEdit.setText("")
        self.bandset_date_lineEdit.setMaxLength(10000)
        self.bandset_date_lineEdit.setObjectName("bandset_date_lineEdit")
        self.horizontalLayout_77.addWidget(self.bandset_date_lineEdit)
        self.label_289 = QtWidgets.QLabel(parent=self.frame_2)
        self.label_289.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_289.setAlignment(QtCore.Qt.AlignmentFlag.AlignCenter)
        self.label_289.setObjectName("label_289")
        self.horizontalLayout_77.addWidget(self.label_289)
        self.root_dir_lineEdit = QtWidgets.QLineEdit(parent=self.frame_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.MinimumExpanding, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.root_dir_lineEdit.sizePolicy().hasHeightForWidth())
        self.root_dir_lineEdit.setSizePolicy(sizePolicy)
        self.root_dir_lineEdit.setMinimumSize(QtCore.QSize(200, 0))
        self.root_dir_lineEdit.setText("")
        self.root_dir_lineEdit.setMaxLength(10000)
        self.root_dir_lineEdit.setObjectName("root_dir_lineEdit")
        self.horizontalLayout_77.addWidget(self.root_dir_lineEdit)
        self.gridLayout_42.addLayout(self.horizontalLayout_77, 0, 0, 1, 2)
        self.gridLayout_169 = QtWidgets.QGridLayout()
        self.gridLayout_169.setObjectName("gridLayout_169")
        self.gridLayout_197 = QtWidgets.QGridLayout()
        self.gridLayout_197.setObjectName("gridLayout_197")
        self.remove_toolButton = QtWidgets.QToolButton(parent=self.frame_2)
        self.remove_toolButton.setStyleSheet("margin: 0px;padding: 0px")
        self.remove_toolButton.setIcon(icon4)
        self.remove_toolButton.setIconSize(QtCore.QSize(22, 22))
        self.remove_toolButton.setObjectName("remove_toolButton")
        self.gridLayout_197.addWidget(self.remove_toolButton, 1, 0, 1, 1)
        self.clear_bandset_toolButton = QtWidgets.QToolButton(parent=self.frame_2)
        self.clear_bandset_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        icon9 = QtGui.QIcon()
        icon9.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin_reset.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.clear_bandset_toolButton.setIcon(icon9)
        self.clear_bandset_toolButton.setIconSize(QtCore.QSize(22, 22))
        self.clear_bandset_toolButton.setObjectName("clear_bandset_toolButton")
        self.gridLayout_197.addWidget(self.clear_bandset_toolButton, 2, 0, 1, 1)
        self.verticalLayout_11 = QtWidgets.QVBoxLayout()
        self.verticalLayout_11.setObjectName("verticalLayout_11")
        spacerItem1 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.verticalLayout_11.addItem(spacerItem1)
        self.import_bandset_toolButton = QtWidgets.QToolButton(parent=self.frame_2)
        self.import_bandset_toolButton.setStyleSheet("margin: 0px;padding: 0px")
        icon10 = QtGui.QIcon()
        icon10.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin_import.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.import_bandset_toolButton.setIcon(icon10)
        self.import_bandset_toolButton.setIconSize(QtCore.QSize(22, 22))
        self.import_bandset_toolButton.setObjectName("import_bandset_toolButton")
        self.verticalLayout_11.addWidget(self.import_bandset_toolButton)
        self.export_bandset_toolButton = QtWidgets.QToolButton(parent=self.frame_2)
        self.export_bandset_toolButton.setStyleSheet("margin: 0px;padding: 0px")
        icon11 = QtGui.QIcon()
        icon11.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin_export.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.export_bandset_toolButton.setIcon(icon11)
        self.export_bandset_toolButton.setIconSize(QtCore.QSize(22, 22))
        self.export_bandset_toolButton.setObjectName("export_bandset_toolButton")
        self.verticalLayout_11.addWidget(self.export_bandset_toolButton)
        self.gridLayout_197.addLayout(self.verticalLayout_11, 3, 0, 1, 1)
        spacerItem2 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_197.addItem(spacerItem2, 0, 0, 1, 1)
        self.gridLayout_169.addLayout(self.gridLayout_197, 1, 0, 1, 2)
        self.gridLayout_203 = QtWidgets.QGridLayout()
        self.gridLayout_203.setObjectName("gridLayout_203")
        self.sort_by_name_toolButton = QtWidgets.QToolButton(parent=self.frame_2)
        self.sort_by_name_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        icon12 = QtGui.QIcon()
        icon12.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin_order_by_name.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.sort_by_name_toolButton.setIcon(icon12)
        self.sort_by_name_toolButton.setIconSize(QtCore.QSize(22, 22))
        self.sort_by_name_toolButton.setObjectName("sort_by_name_toolButton")
        self.gridLayout_203.addWidget(self.sort_by_name_toolButton, 5, 0, 1, 1)
        self.toolButton_input_raster = QtWidgets.QToolButton(parent=self.frame_2)
        self.toolButton_input_raster.setStyleSheet("margin: 0px;padding: 0px;")
        self.toolButton_input_raster.setIcon(icon7)
        self.toolButton_input_raster.setIconSize(QtCore.QSize(22, 22))
        self.toolButton_input_raster.setObjectName("toolButton_input_raster")
        self.gridLayout_203.addWidget(self.toolButton_input_raster, 0, 0, 1, 1)
        self.move_down_toolButton = QtWidgets.QToolButton(parent=self.frame_2)
        self.move_down_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.move_down_toolButton.setIcon(icon3)
        self.move_down_toolButton.setIconSize(QtCore.QSize(22, 22))
        self.move_down_toolButton.setObjectName("move_down_toolButton")
        self.gridLayout_203.addWidget(self.move_down_toolButton, 4, 0, 1, 1)
        self.add_loaded_bands_pushButton = QtWidgets.QToolButton(parent=self.frame_2)
        self.add_loaded_bands_pushButton.setStyleSheet("margin: 0px;padding: 0px")
        icon13 = QtGui.QIcon()
        icon13.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin_add.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.add_loaded_bands_pushButton.setIcon(icon13)
        self.add_loaded_bands_pushButton.setIconSize(QtCore.QSize(22, 22))
        self.add_loaded_bands_pushButton.setObjectName("add_loaded_bands_pushButton")
        self.gridLayout_203.addWidget(self.add_loaded_bands_pushButton, 1, 0, 1, 1)
        spacerItem3 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_203.addItem(spacerItem3, 2, 0, 1, 1)
        self.move_up_toolButton = QtWidgets.QToolButton(parent=self.frame_2)
        self.move_up_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.move_up_toolButton.setIcon(icon1)
        self.move_up_toolButton.setIconSize(QtCore.QSize(22, 22))
        self.move_up_toolButton.setObjectName("move_up_toolButton")
        self.gridLayout_203.addWidget(self.move_up_toolButton, 3, 0, 1, 1)
        self.gridLayout_169.addLayout(self.gridLayout_203, 0, 0, 1, 2)
        self.gridLayout_42.addLayout(self.gridLayout_169, 1, 1, 1, 1)
        self.gridLayout_11.addLayout(self.gridLayout_42, 0, 0, 1, 1)
        self.gridLayout_50.addWidget(self.splitter_3, 0, 0, 1, 1)
        self.SCP_tabs.addTab(self.tab_band_set, "")
        self.tab_download_products = QtWidgets.QWidget()
        self.tab_download_products.setObjectName("tab_download_products")
        self.gridLayout_68 = QtWidgets.QGridLayout(self.tab_download_products)
        self.gridLayout_68.setContentsMargins(3, 3, 3, 3)
        self.gridLayout_68.setObjectName("gridLayout_68")
        self.gridLayout_320 = QtWidgets.QGridLayout()
        self.gridLayout_320.setObjectName("gridLayout_320")
        self.download_if_preview_in_legend_checkBox = QtWidgets.QCheckBox(parent=self.tab_download_products)
        self.download_if_preview_in_legend_checkBox.setChecked(True)
        self.download_if_preview_in_legend_checkBox.setObjectName("download_if_preview_in_legend_checkBox")
        self.gridLayout_320.addWidget(self.download_if_preview_in_legend_checkBox, 2, 1, 1, 1)
        self.load_in_QGIS_checkBox = QtWidgets.QCheckBox(parent=self.tab_download_products)
        self.load_in_QGIS_checkBox.setObjectName("load_in_QGIS_checkBox")
        self.gridLayout_320.addWidget(self.load_in_QGIS_checkBox, 2, 3, 1, 1)
        self.preprocess_checkBox = QtWidgets.QCheckBox(parent=self.tab_download_products)
        self.preprocess_checkBox.setChecked(True)
        self.preprocess_checkBox.setObjectName("preprocess_checkBox")
        self.gridLayout_320.addWidget(self.preprocess_checkBox, 2, 2, 1, 1)
        self.export_links_Button = QtWidgets.QToolButton(parent=self.tab_download_products)
        self.export_links_Button.setStyleSheet("margin: 0px;padding: 0px;")
        self.export_links_Button.setIcon(icon11)
        self.export_links_Button.setIconSize(QtCore.QSize(22, 22))
        self.export_links_Button.setObjectName("export_links_Button")
        self.gridLayout_320.addWidget(self.export_links_Button, 2, 7, 1, 1)
        self.download_images_Button = QtWidgets.QToolButton(parent=self.tab_download_products)
        font = QtGui.QFont()
        font.setBold(True)
        self.download_images_Button.setFont(font)
        self.download_images_Button.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.download_images_Button.setStyleSheet("margin: 0px;padding: 0px;")
        self.download_images_Button.setIcon(icon8)
        self.download_images_Button.setIconSize(QtCore.QSize(34, 34))
        self.download_images_Button.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.download_images_Button.setObjectName("download_images_Button")
        self.gridLayout_320.addWidget(self.download_images_Button, 2, 8, 1, 1)
        spacerItem4 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_320.addItem(spacerItem4, 2, 6, 1, 1)
        self.label_258 = QtWidgets.QLabel(parent=self.tab_download_products)
        self.label_258.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_258.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_258.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_258.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_258.setOpenExternalLinks(True)
        self.label_258.setObjectName("label_258")
        self.gridLayout_320.addWidget(self.label_258, 0, 0, 1, 9)
        self.gridLayout_136 = QtWidgets.QGridLayout()
        self.gridLayout_136.setObjectName("gridLayout_136")
        self.checkBoxs_band_1 = QtWidgets.QCheckBox(parent=self.tab_download_products)
        self.checkBoxs_band_1.setChecked(True)
        self.checkBoxs_band_1.setObjectName("checkBoxs_band_1")
        self.gridLayout_136.addWidget(self.checkBoxs_band_1, 0, 1, 1, 1)
        self.checkBoxs_band_8A = QtWidgets.QCheckBox(parent=self.tab_download_products)
        self.checkBoxs_band_8A.setChecked(True)
        self.checkBoxs_band_8A.setObjectName("checkBoxs_band_8A")
        self.gridLayout_136.addWidget(self.checkBoxs_band_8A, 0, 9, 1, 1)
        self.checkBoxs_band_4 = QtWidgets.QCheckBox(parent=self.tab_download_products)
        self.checkBoxs_band_4.setChecked(True)
        self.checkBoxs_band_4.setObjectName("checkBoxs_band_4")
        self.gridLayout_136.addWidget(self.checkBoxs_band_4, 0, 4, 1, 1)
        self.checkBoxs_band_11 = QtWidgets.QCheckBox(parent=self.tab_download_products)
        self.checkBoxs_band_11.setChecked(True)
        self.checkBoxs_band_11.setObjectName("checkBoxs_band_11")
        self.gridLayout_136.addWidget(self.checkBoxs_band_11, 0, 12, 1, 1)
        self.checkBoxs_band_5 = QtWidgets.QCheckBox(parent=self.tab_download_products)
        self.checkBoxs_band_5.setChecked(True)
        self.checkBoxs_band_5.setObjectName("checkBoxs_band_5")
        self.gridLayout_136.addWidget(self.checkBoxs_band_5, 0, 5, 1, 1)
        self.checkBoxs_band_6 = QtWidgets.QCheckBox(parent=self.tab_download_products)
        self.checkBoxs_band_6.setChecked(True)
        self.checkBoxs_band_6.setObjectName("checkBoxs_band_6")
        self.gridLayout_136.addWidget(self.checkBoxs_band_6, 0, 6, 1, 1)
        self.checkBoxs_band_7 = QtWidgets.QCheckBox(parent=self.tab_download_products)
        self.checkBoxs_band_7.setChecked(True)
        self.checkBoxs_band_7.setObjectName("checkBoxs_band_7")
        self.gridLayout_136.addWidget(self.checkBoxs_band_7, 0, 7, 1, 1)
        self.checkBoxs_band_2 = QtWidgets.QCheckBox(parent=self.tab_download_products)
        self.checkBoxs_band_2.setChecked(True)
        self.checkBoxs_band_2.setObjectName("checkBoxs_band_2")
        self.gridLayout_136.addWidget(self.checkBoxs_band_2, 0, 2, 1, 1)
        self.checkBoxs_band_9 = QtWidgets.QCheckBox(parent=self.tab_download_products)
        self.checkBoxs_band_9.setChecked(True)
        self.checkBoxs_band_9.setObjectName("checkBoxs_band_9")
        self.gridLayout_136.addWidget(self.checkBoxs_band_9, 0, 10, 1, 1)
        self.check_toolButton_2 = QtWidgets.QToolButton(parent=self.tab_download_products)
        self.check_toolButton_2.setStyleSheet("margin: 0px;padding: 0px;")
        icon14 = QtGui.QIcon()
        icon14.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin_select_all.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.check_toolButton_2.setIcon(icon14)
        self.check_toolButton_2.setIconSize(QtCore.QSize(22, 22))
        self.check_toolButton_2.setObjectName("check_toolButton_2")
        self.gridLayout_136.addWidget(self.check_toolButton_2, 0, 15, 1, 1)
        self.ancillary_data_checkBox = QtWidgets.QCheckBox(parent=self.tab_download_products)
        self.ancillary_data_checkBox.setChecked(True)
        self.ancillary_data_checkBox.setObjectName("ancillary_data_checkBox")
        self.gridLayout_136.addWidget(self.ancillary_data_checkBox, 0, 14, 1, 1)
        self.checkBoxs_band_3 = QtWidgets.QCheckBox(parent=self.tab_download_products)
        self.checkBoxs_band_3.setChecked(True)
        self.checkBoxs_band_3.setObjectName("checkBoxs_band_3")
        self.gridLayout_136.addWidget(self.checkBoxs_band_3, 0, 3, 1, 1)
        self.checkBoxs_band_8 = QtWidgets.QCheckBox(parent=self.tab_download_products)
        self.checkBoxs_band_8.setChecked(True)
        self.checkBoxs_band_8.setObjectName("checkBoxs_band_8")
        self.gridLayout_136.addWidget(self.checkBoxs_band_8, 0, 8, 1, 1)
        self.checkBoxs_band_10 = QtWidgets.QCheckBox(parent=self.tab_download_products)
        self.checkBoxs_band_10.setChecked(True)
        self.checkBoxs_band_10.setObjectName("checkBoxs_band_10")
        self.gridLayout_136.addWidget(self.checkBoxs_band_10, 0, 11, 1, 1)
        self.checkBoxs_band_12 = QtWidgets.QCheckBox(parent=self.tab_download_products)
        self.checkBoxs_band_12.setChecked(True)
        self.checkBoxs_band_12.setObjectName("checkBoxs_band_12")
        self.gridLayout_136.addWidget(self.checkBoxs_band_12, 0, 13, 1, 1)
        self.label_3 = QtWidgets.QLabel(parent=self.tab_download_products)
        self.label_3.setObjectName("label_3")
        self.gridLayout_136.addWidget(self.label_3, 0, 0, 1, 1)
        self.gridLayout_320.addLayout(self.gridLayout_136, 1, 0, 1, 9)
        self.virtual_download_checkBox = QtWidgets.QCheckBox(parent=self.tab_download_products)
        self.virtual_download_checkBox.setObjectName("virtual_download_checkBox")
        self.gridLayout_320.addWidget(self.virtual_download_checkBox, 2, 4, 1, 1)
        self.create_bandset_checkBox_2 = QtWidgets.QCheckBox(parent=self.tab_download_products)
        self.create_bandset_checkBox_2.setTristate(False)
        self.create_bandset_checkBox_2.setObjectName("create_bandset_checkBox_2")
        self.gridLayout_320.addWidget(self.create_bandset_checkBox_2, 2, 5, 1, 1)
        self.gridLayout_68.addLayout(self.gridLayout_320, 1, 0, 1, 1)
        self.gridLayout_113 = QtWidgets.QGridLayout()
        self.gridLayout_113.setObjectName("gridLayout_113")
        self.tabWidget_3 = QtWidgets.QTabWidget(parent=self.tab_download_products)
        self.tabWidget_3.setStyleSheet("QTabBar::tab {\n"
"padding: 10px;\n"
"min-height: 18px;\n"
"}")
        self.tabWidget_3.setTabPosition(QtWidgets.QTabWidget.TabPosition.North)
        self.tabWidget_3.setObjectName("tabWidget_3")
        self.tab_search = QtWidgets.QWidget()
        self.tab_search.setObjectName("tab_search")
        self.gridLayout_87 = QtWidgets.QGridLayout(self.tab_search)
        self.gridLayout_87.setObjectName("gridLayout_87")
        self.gridLayout_133 = QtWidgets.QGridLayout()
        self.gridLayout_133.setObjectName("gridLayout_133")
        self.gridLayout_54 = QtWidgets.QGridLayout()
        self.gridLayout_54.setObjectName("gridLayout_54")
        self.toolButton_OSM = QtWidgets.QToolButton(parent=self.tab_search)
        self.toolButton_OSM.setStyleSheet("margin: 0px;padding: 0px;")
        icon15 = QtGui.QIcon()
        icon15.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin_osm_add.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.toolButton_OSM.setIcon(icon15)
        self.toolButton_OSM.setIconSize(QtCore.QSize(22, 22))
        self.toolButton_OSM.setObjectName("toolButton_OSM")
        self.gridLayout_54.addWidget(self.toolButton_OSM, 0, 0, 1, 1)
        self.label_205 = QtWidgets.QLabel(parent=self.tab_search)
        self.label_205.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_205.setAlignment(QtCore.Qt.AlignmentFlag.AlignCenter)
        self.label_205.setOpenExternalLinks(True)
        self.label_205.setObjectName("label_205")
        self.gridLayout_54.addWidget(self.label_205, 0, 1, 1, 1)
        self.label_206 = QtWidgets.QLabel(parent=self.tab_search)
        self.label_206.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_206.setAlignment(QtCore.Qt.AlignmentFlag.AlignCenter)
        self.label_206.setOpenExternalLinks(True)
        self.label_206.setObjectName("label_206")
        self.gridLayout_54.addWidget(self.label_206, 0, 2, 1, 1)
        spacerItem5 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_54.addItem(spacerItem5, 0, 3, 1, 2)
        self.gridLayout_133.addLayout(self.gridLayout_54, 3, 0, 1, 2)
        self.label_103 = QtWidgets.QLabel(parent=self.tab_search)
        self.label_103.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_103.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_103.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_103.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_103.setObjectName("label_103")
        self.gridLayout_133.addWidget(self.label_103, 0, 0, 1, 2)
        self.gridLayout_122 = QtWidgets.QGridLayout()
        self.gridLayout_122.setObjectName("gridLayout_122")
        self.selectUL_toolButton_3 = QtWidgets.QToolButton(parent=self.tab_search)
        self.selectUL_toolButton_3.setStyleSheet("margin: 0px;padding: 0px;")
        icon16 = QtGui.QIcon()
        icon16.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin_pointer_tool.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.selectUL_toolButton_3.setIcon(icon16)
        self.selectUL_toolButton_3.setIconSize(QtCore.QSize(22, 22))
        self.selectUL_toolButton_3.setObjectName("selectUL_toolButton_3")
        self.gridLayout_122.addWidget(self.selectUL_toolButton_3, 0, 7, 1, 1)
        self.LX_lineEdit_3 = QtWidgets.QLineEdit(parent=self.tab_search)
        self.LX_lineEdit_3.setText("")
        self.LX_lineEdit_3.setMaxLength(15)
        self.LX_lineEdit_3.setObjectName("LX_lineEdit_3")
        self.gridLayout_122.addWidget(self.LX_lineEdit_3, 0, 4, 1, 1)
        self.UX_lineEdit_3 = QtWidgets.QLineEdit(parent=self.tab_search)
        self.UX_lineEdit_3.setMaxLength(15)
        self.UX_lineEdit_3.setObjectName("UX_lineEdit_3")
        self.gridLayout_122.addWidget(self.UX_lineEdit_3, 0, 1, 1, 1)
        self.label_105 = QtWidgets.QLabel(parent=self.tab_search)
        self.label_105.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_105.setAlignment(QtCore.Qt.AlignmentFlag.AlignCenter)
        self.label_105.setObjectName("label_105")
        self.gridLayout_122.addWidget(self.label_105, 0, 3, 1, 1)
        self.label_107 = QtWidgets.QLabel(parent=self.tab_search)
        self.label_107.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_107.setAlignment(QtCore.Qt.AlignmentFlag.AlignCenter)
        self.label_107.setObjectName("label_107")
        self.gridLayout_122.addWidget(self.label_107, 0, 0, 1, 1)
        self.LY_lineEdit_3 = QtWidgets.QLineEdit(parent=self.tab_search)
        self.LY_lineEdit_3.setText("")
        self.LY_lineEdit_3.setMaxLength(15)
        self.LY_lineEdit_3.setObjectName("LY_lineEdit_3")
        self.gridLayout_122.addWidget(self.LY_lineEdit_3, 0, 5, 1, 1)
        self.UY_lineEdit_3 = QtWidgets.QLineEdit(parent=self.tab_search)
        self.UY_lineEdit_3.setText("")
        self.UY_lineEdit_3.setMaxLength(15)
        self.UY_lineEdit_3.setObjectName("UY_lineEdit_3")
        self.gridLayout_122.addWidget(self.UY_lineEdit_3, 0, 2, 1, 1)
        self.show_area_radioButton_2 = QtWidgets.QRadioButton(parent=self.tab_search)
        self.show_area_radioButton_2.setChecked(True)
        self.show_area_radioButton_2.setAutoExclusive(False)
        self.show_area_radioButton_2.setObjectName("show_area_radioButton_2")
        self.gridLayout_122.addWidget(self.show_area_radioButton_2, 0, 6, 1, 1)
        self.gridLayout_115 = QtWidgets.QGridLayout()
        self.gridLayout_115.setObjectName("gridLayout_115")
        self.find_images_toolButton = QtWidgets.QToolButton(parent=self.tab_search)
        self.find_images_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        icon17 = QtGui.QIcon()
        icon17.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin_search_images.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.find_images_toolButton.setIcon(icon17)
        self.find_images_toolButton.setIconSize(QtCore.QSize(22, 22))
        self.find_images_toolButton.setObjectName("find_images_toolButton")
        self.gridLayout_115.addWidget(self.find_images_toolButton, 1, 8, 1, 1)
        self.label_35 = QtWidgets.QLabel(parent=self.tab_search)
        self.label_35.setAlignment(QtCore.Qt.AlignmentFlag.AlignRight|QtCore.Qt.AlignmentFlag.AlignTrailing|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_35.setObjectName("label_35")
        self.gridLayout_115.addWidget(self.label_35, 1, 7, 1, 1)
        self.gridLayout_114 = QtWidgets.QGridLayout()
        self.gridLayout_114.setObjectName("gridLayout_114")
        self.landsat_satellite_combo = QtWidgets.QComboBox(parent=self.tab_search)
        self.landsat_satellite_combo.setObjectName("landsat_satellite_combo")
        self.gridLayout_114.addWidget(self.landsat_satellite_combo, 0, 1, 1, 1)
        self.dateEdit_from = QtWidgets.QDateEdit(parent=self.tab_search)
        self.dateEdit_from.setDateTime(QtCore.QDateTime(QtCore.QDate(2016, 1, 1), QtCore.QTime(0, 0, 0)))
        self.dateEdit_from.setMaximumDate(QtCore.QDate(2045, 12, 31))
        self.dateEdit_from.setMinimumDate(QtCore.QDate(1972, 1, 1))
        self.dateEdit_from.setCalendarPopup(True)
        self.dateEdit_from.setDate(QtCore.QDate(2016, 1, 1))
        self.dateEdit_from.setObjectName("dateEdit_from")
        self.gridLayout_114.addWidget(self.dateEdit_from, 0, 4, 1, 1)
        self.label_110 = QtWidgets.QLabel(parent=self.tab_search)
        self.label_110.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_110.setAlignment(QtCore.Qt.AlignmentFlag.AlignCenter)
        self.label_110.setObjectName("label_110")
        self.gridLayout_114.addWidget(self.label_110, 0, 8, 1, 1)
        self.dateEdit_to = QtWidgets.QDateEdit(parent=self.tab_search)
        self.dateEdit_to.setMaximumDate(QtCore.QDate(2045, 12, 31))
        self.dateEdit_to.setMinimumDate(QtCore.QDate(1980, 1, 2))
        self.dateEdit_to.setCalendarPopup(True)
        self.dateEdit_to.setDate(QtCore.QDate(2045, 12, 31))
        self.dateEdit_to.setObjectName("dateEdit_to")
        self.gridLayout_114.addWidget(self.dateEdit_to, 0, 6, 1, 1)
        self.label_112 = QtWidgets.QLabel(parent=self.tab_search)
        self.label_112.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_112.setAlignment(QtCore.Qt.AlignmentFlag.AlignCenter)
        self.label_112.setObjectName("label_112")
        self.gridLayout_114.addWidget(self.label_112, 0, 5, 1, 1)
        self.label_111 = QtWidgets.QLabel(parent=self.tab_search)
        self.label_111.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_111.setAlignment(QtCore.Qt.AlignmentFlag.AlignCenter)
        self.label_111.setObjectName("label_111")
        self.gridLayout_114.addWidget(self.label_111, 0, 3, 1, 1)
        self.cloud_cover_spinBox = QtWidgets.QSpinBox(parent=self.tab_search)
        self.cloud_cover_spinBox.setMinimumSize(QtCore.QSize(50, 0))
        self.cloud_cover_spinBox.setMaximumSize(QtCore.QSize(100, 16777215))
        self.cloud_cover_spinBox.setAlignment(QtCore.Qt.AlignmentFlag.AlignRight|QtCore.Qt.AlignmentFlag.AlignTrailing|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.cloud_cover_spinBox.setMinimum(0)
        self.cloud_cover_spinBox.setMaximum(100)
        self.cloud_cover_spinBox.setSingleStep(10)
        self.cloud_cover_spinBox.setProperty("value", 100)
        self.cloud_cover_spinBox.setObjectName("cloud_cover_spinBox")
        self.gridLayout_114.addWidget(self.cloud_cover_spinBox, 0, 9, 1, 1)
        self.label_114 = QtWidgets.QLabel(parent=self.tab_search)
        self.label_114.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_114.setAlignment(QtCore.Qt.AlignmentFlag.AlignCenter)
        self.label_114.setObjectName("label_114")
        self.gridLayout_114.addWidget(self.label_114, 0, 0, 1, 1)
        spacerItem6 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_114.addItem(spacerItem6, 0, 7, 1, 1)
        spacerItem7 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_114.addItem(spacerItem7, 0, 2, 1, 1)
        self.gridLayout_115.addLayout(self.gridLayout_114, 0, 0, 1, 9)
        self.gridLayout_120 = QtWidgets.QGridLayout()
        self.gridLayout_120.setObjectName("gridLayout_120")
        self.label_194 = QtWidgets.QLabel(parent=self.tab_search)
        self.label_194.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_194.setAlignment(QtCore.Qt.AlignmentFlag.AlignCenter)
        self.label_194.setObjectName("label_194")
        self.gridLayout_120.addWidget(self.label_194, 0, 0, 1, 1)
        self.label_113 = QtWidgets.QLabel(parent=self.tab_search)
        self.label_113.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_113.setAlignment(QtCore.Qt.AlignmentFlag.AlignCenter)
        self.label_113.setObjectName("label_113")
        self.gridLayout_120.addWidget(self.label_113, 0, 2, 1, 1)
        self.imageID_lineEdit = QtWidgets.QLineEdit(parent=self.tab_search)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.MinimumExpanding, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.imageID_lineEdit.sizePolicy().hasHeightForWidth())
        self.imageID_lineEdit.setSizePolicy(sizePolicy)
        self.imageID_lineEdit.setMinimumSize(QtCore.QSize(200, 0))
        self.imageID_lineEdit.setText("")
        self.imageID_lineEdit.setMaxLength(10000)
        self.imageID_lineEdit.setObjectName("imageID_lineEdit")
        self.gridLayout_120.addWidget(self.imageID_lineEdit, 0, 3, 1, 1)
        self.result_number_spinBox_2 = QtWidgets.QSpinBox(parent=self.tab_search)
        self.result_number_spinBox_2.setMinimumSize(QtCore.QSize(50, 0))
        self.result_number_spinBox_2.setMaximumSize(QtCore.QSize(100, 16777215))
        self.result_number_spinBox_2.setAlignment(QtCore.Qt.AlignmentFlag.AlignRight|QtCore.Qt.AlignmentFlag.AlignTrailing|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.result_number_spinBox_2.setMinimum(5)
        self.result_number_spinBox_2.setMaximum(2000)
        self.result_number_spinBox_2.setSingleStep(5)
        self.result_number_spinBox_2.setProperty("value", 20)
        self.result_number_spinBox_2.setObjectName("result_number_spinBox_2")
        self.gridLayout_120.addWidget(self.result_number_spinBox_2, 0, 1, 1, 1)
        self.gridLayout_115.addLayout(self.gridLayout_120, 1, 0, 1, 7)
        self.gridLayout_122.addLayout(self.gridLayout_115, 1, 0, 1, 8)
        self.gridLayout_133.addLayout(self.gridLayout_122, 1, 0, 2, 2)
        self.gridLayout_87.addLayout(self.gridLayout_133, 0, 0, 1, 1)
        self.gridLayout_search = QtWidgets.QGridLayout()
        self.gridLayout_search.setObjectName("gridLayout_search")
        self.gridLayout_132 = QtWidgets.QGridLayout()
        self.gridLayout_132.setObjectName("gridLayout_132")
        self.remove_image_toolButton = QtWidgets.QToolButton(parent=self.tab_search)
        self.remove_image_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.remove_image_toolButton.setIcon(icon4)
        self.remove_image_toolButton.setIconSize(QtCore.QSize(22, 22))
        self.remove_image_toolButton.setObjectName("remove_image_toolButton")
        self.gridLayout_132.addWidget(self.remove_image_toolButton, 1, 1, 1, 1)
        self.toolButton_display = QtWidgets.QToolButton(parent=self.tab_search)
        self.toolButton_display.setStyleSheet("margin: 0px;padding: 0px;")
        icon18 = QtGui.QIcon()
        icon18.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin_download_image_preview.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.toolButton_display.setIcon(icon18)
        self.toolButton_display.setIconSize(QtCore.QSize(22, 22))
        self.toolButton_display.setObjectName("toolButton_display")
        self.gridLayout_132.addWidget(self.toolButton_display, 0, 1, 1, 1)
        self.clear_table_toolButton = QtWidgets.QToolButton(parent=self.tab_search)
        self.clear_table_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.clear_table_toolButton.setIcon(icon9)
        self.clear_table_toolButton.setIconSize(QtCore.QSize(22, 22))
        self.clear_table_toolButton.setObjectName("clear_table_toolButton")
        self.gridLayout_132.addWidget(self.clear_table_toolButton, 2, 1, 1, 1)
        self.export_table_pushButton = QtWidgets.QToolButton(parent=self.tab_search)
        self.export_table_pushButton.setStyleSheet("margin: 0px;padding: 0px")
        self.export_table_pushButton.setIcon(icon11)
        self.export_table_pushButton.setIconSize(QtCore.QSize(22, 22))
        self.export_table_pushButton.setObjectName("export_table_pushButton")
        self.gridLayout_132.addWidget(self.export_table_pushButton, 4, 1, 1, 1)
        self.import_table_pushButton = QtWidgets.QToolButton(parent=self.tab_search)
        self.import_table_pushButton.setStyleSheet("margin: 0px;padding: 0px")
        self.import_table_pushButton.setIcon(icon10)
        self.import_table_pushButton.setIconSize(QtCore.QSize(22, 22))
        self.import_table_pushButton.setObjectName("import_table_pushButton")
        self.gridLayout_132.addWidget(self.import_table_pushButton, 3, 1, 1, 1)
        self.gridLayout_121 = QtWidgets.QGridLayout()
        self.gridLayout_121.setObjectName("gridLayout_121")
        self.image_preview_label = QtWidgets.QLabel(parent=self.tab_search)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Fixed, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.image_preview_label.sizePolicy().hasHeightForWidth())
        self.image_preview_label.setSizePolicy(sizePolicy)
        self.image_preview_label.setMinimumSize(QtCore.QSize(300, 300))
        self.image_preview_label.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.image_preview_label.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.image_preview_label.setAlignment(QtCore.Qt.AlignmentFlag.AlignCenter)
        self.image_preview_label.setObjectName("image_preview_label")
        self.gridLayout_121.addWidget(self.image_preview_label, 0, 0, 1, 1)
        self.gridLayout_132.addLayout(self.gridLayout_121, 0, 0, 5, 1)
        self.gridLayout_search.addLayout(self.gridLayout_132, 2, 1, 1, 1)
        self.download_images_tableWidget = QtWidgets.QTableWidget(parent=self.tab_search)
        self.download_images_tableWidget.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.download_images_tableWidget.setEditTriggers(QtWidgets.QAbstractItemView.EditTrigger.NoEditTriggers)
        self.download_images_tableWidget.setTabKeyNavigation(True)
        self.download_images_tableWidget.setAlternatingRowColors(True)
        self.download_images_tableWidget.setSelectionBehavior(QtWidgets.QAbstractItemView.SelectionBehavior.SelectRows)
        self.download_images_tableWidget.setObjectName("download_images_tableWidget")
        self.download_images_tableWidget.setColumnCount(16)
        self.download_images_tableWidget.setRowCount(0)
        item = QtWidgets.QTableWidgetItem()
        self.download_images_tableWidget.setHorizontalHeaderItem(0, item)
        item = QtWidgets.QTableWidgetItem()
        self.download_images_tableWidget.setHorizontalHeaderItem(1, item)
        item = QtWidgets.QTableWidgetItem()
        self.download_images_tableWidget.setHorizontalHeaderItem(2, item)
        item = QtWidgets.QTableWidgetItem()
        self.download_images_tableWidget.setHorizontalHeaderItem(3, item)
        item = QtWidgets.QTableWidgetItem()
        self.download_images_tableWidget.setHorizontalHeaderItem(4, item)
        item = QtWidgets.QTableWidgetItem()
        self.download_images_tableWidget.setHorizontalHeaderItem(5, item)
        item = QtWidgets.QTableWidgetItem()
        self.download_images_tableWidget.setHorizontalHeaderItem(6, item)
        item = QtWidgets.QTableWidgetItem()
        self.download_images_tableWidget.setHorizontalHeaderItem(7, item)
        item = QtWidgets.QTableWidgetItem()
        self.download_images_tableWidget.setHorizontalHeaderItem(8, item)
        item = QtWidgets.QTableWidgetItem()
        self.download_images_tableWidget.setHorizontalHeaderItem(9, item)
        item = QtWidgets.QTableWidgetItem()
        self.download_images_tableWidget.setHorizontalHeaderItem(10, item)
        item = QtWidgets.QTableWidgetItem()
        self.download_images_tableWidget.setHorizontalHeaderItem(11, item)
        item = QtWidgets.QTableWidgetItem()
        self.download_images_tableWidget.setHorizontalHeaderItem(12, item)
        item = QtWidgets.QTableWidgetItem()
        self.download_images_tableWidget.setHorizontalHeaderItem(13, item)
        item = QtWidgets.QTableWidgetItem()
        self.download_images_tableWidget.setHorizontalHeaderItem(14, item)
        item = QtWidgets.QTableWidgetItem()
        self.download_images_tableWidget.setHorizontalHeaderItem(15, item)
        self.download_images_tableWidget.horizontalHeader().setStretchLastSection(True)
        self.download_images_tableWidget.verticalHeader().setDefaultSectionSize(30)
        self.gridLayout_search.addWidget(self.download_images_tableWidget, 2, 0, 1, 1)
        self.label_100 = QtWidgets.QLabel(parent=self.tab_search)
        self.label_100.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_100.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_100.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_100.setObjectName("label_100")
        self.gridLayout_search.addWidget(self.label_100, 0, 0, 1, 1)
        self.products_filter_lineEdit = QtWidgets.QLineEdit(parent=self.tab_search)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.products_filter_lineEdit.sizePolicy().hasHeightForWidth())
        self.products_filter_lineEdit.setSizePolicy(sizePolicy)
        self.products_filter_lineEdit.setText("")
        self.products_filter_lineEdit.setObjectName("products_filter_lineEdit")
        self.gridLayout_search.addWidget(self.products_filter_lineEdit, 0, 1, 1, 1)
        self.gridLayout_87.addLayout(self.gridLayout_search, 1, 0, 1, 1)
        icon19 = QtGui.QIcon()
        icon19.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin_download_search.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.tabWidget_3.addTab(self.tab_search, icon19, "")
        self.tab_login = QtWidgets.QWidget()
        self.tab_login.setObjectName("tab_login")
        self.gridLayout_238 = QtWidgets.QGridLayout(self.tab_login)
        self.gridLayout_238.setObjectName("gridLayout_238")
        self.gridLayout_242 = QtWidgets.QGridLayout()
        self.gridLayout_242.setObjectName("gridLayout_242")
        self.remember_user_checkBox_3 = QtWidgets.QCheckBox(parent=self.tab_login)
        self.remember_user_checkBox_3.setObjectName("remember_user_checkBox_3")
        self.gridLayout_242.addWidget(self.remember_user_checkBox_3, 1, 4, 1, 1)
        self.password_earthdata_lineEdit = QtWidgets.QLineEdit(parent=self.tab_login)
        self.password_earthdata_lineEdit.setText("")
        self.password_earthdata_lineEdit.setObjectName("password_earthdata_lineEdit")
        self.gridLayout_242.addWidget(self.password_earthdata_lineEdit, 1, 3, 1, 1)
        self.password_scihub_label_4 = QtWidgets.QLabel(parent=self.tab_login)
        self.password_scihub_label_4.setObjectName("password_scihub_label_4")
        self.gridLayout_242.addWidget(self.password_scihub_label_4, 1, 2, 1, 1)
        self.label_191 = QtWidgets.QLabel(parent=self.tab_login)
        self.label_191.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_191.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_191.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_191.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_191.setOpenExternalLinks(True)
        self.label_191.setObjectName("label_191")
        self.gridLayout_242.addWidget(self.label_191, 0, 0, 1, 6)
        self.user_earthdata_lineEdit = QtWidgets.QLineEdit(parent=self.tab_login)
        self.user_earthdata_lineEdit.setText("")
        self.user_earthdata_lineEdit.setObjectName("user_earthdata_lineEdit")
        self.gridLayout_242.addWidget(self.user_earthdata_lineEdit, 1, 1, 1, 1)
        self.user_scihub_label_3 = QtWidgets.QLabel(parent=self.tab_login)
        self.user_scihub_label_3.setObjectName("user_scihub_label_3")
        self.gridLayout_242.addWidget(self.user_scihub_label_3, 1, 0, 1, 1)
        self.gridLayout_238.addLayout(self.gridLayout_242, 0, 0, 1, 1)
        spacerItem8 = QtWidgets.QSpacerItem(20, 251, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_238.addItem(spacerItem8, 2, 0, 1, 1)
        self.gridLayout_256 = QtWidgets.QGridLayout()
        self.gridLayout_256.setObjectName("gridLayout_256")
        self.remember_user_checkBox_5 = QtWidgets.QCheckBox(parent=self.tab_login)
        self.remember_user_checkBox_5.setObjectName("remember_user_checkBox_5")
        self.gridLayout_256.addWidget(self.remember_user_checkBox_5, 1, 4, 1, 1)
        self.password_copernicus_lineEdit = QtWidgets.QLineEdit(parent=self.tab_login)
        self.password_copernicus_lineEdit.setText("")
        self.password_copernicus_lineEdit.setObjectName("password_copernicus_lineEdit")
        self.gridLayout_256.addWidget(self.password_copernicus_lineEdit, 1, 3, 1, 1)
        self.password_scihub_label_6 = QtWidgets.QLabel(parent=self.tab_login)
        self.password_scihub_label_6.setObjectName("password_scihub_label_6")
        self.gridLayout_256.addWidget(self.password_scihub_label_6, 1, 2, 1, 1)
        self.label_201 = QtWidgets.QLabel(parent=self.tab_login)
        self.label_201.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_201.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_201.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_201.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_201.setOpenExternalLinks(True)
        self.label_201.setObjectName("label_201")
        self.gridLayout_256.addWidget(self.label_201, 0, 0, 1, 6)
        self.user_copernicus_lineEdit = QtWidgets.QLineEdit(parent=self.tab_login)
        self.user_copernicus_lineEdit.setText("")
        self.user_copernicus_lineEdit.setObjectName("user_copernicus_lineEdit")
        self.gridLayout_256.addWidget(self.user_copernicus_lineEdit, 1, 1, 1, 1)
        self.user_scihub_label_5 = QtWidgets.QLabel(parent=self.tab_login)
        self.user_scihub_label_5.setObjectName("user_scihub_label_5")
        self.gridLayout_256.addWidget(self.user_scihub_label_5, 1, 0, 1, 1)
        self.gridLayout_238.addLayout(self.gridLayout_256, 1, 0, 1, 1)
        icon20 = QtGui.QIcon()
        icon20.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin_download_login.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.tabWidget_3.addTab(self.tab_login, icon20, "")
        self.gridLayout_113.addWidget(self.tabWidget_3, 0, 1, 1, 1)
        self.gridLayout_68.addLayout(self.gridLayout_113, 0, 0, 1, 1)
        self.SCP_tabs.addTab(self.tab_download_products, "")
        self.tab_basic_tools = QtWidgets.QWidget()
        self.tab_basic_tools.setObjectName("tab_basic_tools")
        self.gridLayout_216 = QtWidgets.QGridLayout(self.tab_basic_tools)
        self.gridLayout_216.setContentsMargins(3, 3, 3, 3)
        self.gridLayout_216.setObjectName("gridLayout_216")
        self.tabWidget_5 = QtWidgets.QTabWidget(parent=self.tab_basic_tools)
        self.tabWidget_5.setStyleSheet("")
        self.tabWidget_5.setIconSize(QtCore.QSize(20, 20))
        self.tabWidget_5.setDocumentMode(True)
        self.tabWidget_5.setObjectName("tabWidget_5")
        self.tab_RGB = QtWidgets.QWidget()
        self.tab_RGB.setObjectName("tab_RGB")
        self.gridLayout_213 = QtWidgets.QGridLayout(self.tab_RGB)
        self.gridLayout_213.setObjectName("gridLayout_213")
        self.gridLayout_243 = QtWidgets.QGridLayout()
        self.gridLayout_243.setObjectName("gridLayout_243")
        self.gridLayout_234 = QtWidgets.QGridLayout()
        self.gridLayout_234.setObjectName("gridLayout_234")
        self.label_126 = QtWidgets.QLabel(parent=self.tab_RGB)
        self.label_126.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_126.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_126.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_126.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_126.setObjectName("label_126")
        self.gridLayout_234.addWidget(self.label_126, 0, 0, 1, 1)
        self.gridLayout_243.addLayout(self.gridLayout_234, 0, 0, 1, 2)
        self.gridLayout_244 = QtWidgets.QGridLayout()
        self.gridLayout_244.setObjectName("gridLayout_244")
        spacerItem9 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_244.addItem(spacerItem9, 3, 0, 1, 1)
        self.sort_by_name_toolButton_2 = QtWidgets.QToolButton(parent=self.tab_RGB)
        self.sort_by_name_toolButton_2.setStyleSheet("margin: 0px;padding: 0px;")
        self.sort_by_name_toolButton_2.setIcon(icon12)
        self.sort_by_name_toolButton_2.setIconSize(QtCore.QSize(22, 22))
        self.sort_by_name_toolButton_2.setObjectName("sort_by_name_toolButton_2")
        self.gridLayout_244.addWidget(self.sort_by_name_toolButton_2, 2, 0, 1, 1)
        self.move_down_toolButton_3 = QtWidgets.QToolButton(parent=self.tab_RGB)
        self.move_down_toolButton_3.setStyleSheet("margin: 0px;padding: 0px;")
        self.move_down_toolButton_3.setIcon(icon3)
        self.move_down_toolButton_3.setIconSize(QtCore.QSize(22, 22))
        self.move_down_toolButton_3.setObjectName("move_down_toolButton_3")
        self.gridLayout_244.addWidget(self.move_down_toolButton_3, 1, 0, 1, 1)
        self.move_up_toolButton_3 = QtWidgets.QToolButton(parent=self.tab_RGB)
        self.move_up_toolButton_3.setStyleSheet("margin: 0px;padding: 0px;")
        self.move_up_toolButton_3.setIcon(icon1)
        self.move_up_toolButton_3.setIconSize(QtCore.QSize(22, 22))
        self.move_up_toolButton_3.setObjectName("move_up_toolButton_3")
        self.gridLayout_244.addWidget(self.move_up_toolButton_3, 0, 0, 1, 1)
        self.gridLayout_243.addLayout(self.gridLayout_244, 1, 1, 1, 1)
        self.gridLayout_245 = QtWidgets.QGridLayout()
        self.gridLayout_245.setObjectName("gridLayout_245")
        self.add_RGB_pushButton = QtWidgets.QToolButton(parent=self.tab_RGB)
        self.add_RGB_pushButton.setStyleSheet("margin: 0px;padding: 0px")
        self.add_RGB_pushButton.setIcon(icon13)
        self.add_RGB_pushButton.setIconSize(QtCore.QSize(22, 22))
        self.add_RGB_pushButton.setObjectName("add_RGB_pushButton")
        self.gridLayout_245.addWidget(self.add_RGB_pushButton, 0, 0, 1, 1)
        self.export_RGB_List_toolButton = QtWidgets.QToolButton(parent=self.tab_RGB)
        self.export_RGB_List_toolButton.setStyleSheet("margin: 0px;padding: 0px")
        self.export_RGB_List_toolButton.setIcon(icon11)
        self.export_RGB_List_toolButton.setIconSize(QtCore.QSize(22, 22))
        self.export_RGB_List_toolButton.setObjectName("export_RGB_List_toolButton")
        self.gridLayout_245.addWidget(self.export_RGB_List_toolButton, 4, 0, 1, 1)
        self.import_RGB_List_toolButton = QtWidgets.QToolButton(parent=self.tab_RGB)
        self.import_RGB_List_toolButton.setStyleSheet("margin: 0px;padding: 0px")
        self.import_RGB_List_toolButton.setIcon(icon10)
        self.import_RGB_List_toolButton.setIconSize(QtCore.QSize(22, 22))
        self.import_RGB_List_toolButton.setObjectName("import_RGB_List_toolButton")
        self.gridLayout_245.addWidget(self.import_RGB_List_toolButton, 5, 0, 1, 1)
        self.clear_RGB_list_toolButton = QtWidgets.QToolButton(parent=self.tab_RGB)
        self.clear_RGB_list_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.clear_RGB_list_toolButton.setIcon(icon9)
        self.clear_RGB_list_toolButton.setIconSize(QtCore.QSize(22, 22))
        self.clear_RGB_list_toolButton.setObjectName("clear_RGB_list_toolButton")
        self.gridLayout_245.addWidget(self.clear_RGB_list_toolButton, 2, 0, 1, 1)
        self.remove_RGB_toolButton = QtWidgets.QToolButton(parent=self.tab_RGB)
        self.remove_RGB_toolButton.setStyleSheet("margin: 0px;padding: 0px")
        self.remove_RGB_toolButton.setIcon(icon4)
        self.remove_RGB_toolButton.setIconSize(QtCore.QSize(22, 22))
        self.remove_RGB_toolButton.setObjectName("remove_RGB_toolButton")
        self.gridLayout_245.addWidget(self.remove_RGB_toolButton, 1, 0, 1, 1)
        spacerItem10 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_245.addItem(spacerItem10, 3, 0, 1, 1)
        self.gridLayout_243.addLayout(self.gridLayout_245, 2, 1, 1, 1)
        self.RGB_tableWidget = QtWidgets.QTableWidget(parent=self.tab_RGB)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.RGB_tableWidget.sizePolicy().hasHeightForWidth())
        self.RGB_tableWidget.setSizePolicy(sizePolicy)
        self.RGB_tableWidget.setEditTriggers(QtWidgets.QAbstractItemView.EditTrigger.DoubleClicked)
        self.RGB_tableWidget.setAlternatingRowColors(True)
        self.RGB_tableWidget.setSelectionMode(QtWidgets.QAbstractItemView.SelectionMode.MultiSelection)
        self.RGB_tableWidget.setSelectionBehavior(QtWidgets.QAbstractItemView.SelectionBehavior.SelectRows)
        self.RGB_tableWidget.setObjectName("RGB_tableWidget")
        self.RGB_tableWidget.setColumnCount(1)
        self.RGB_tableWidget.setRowCount(0)
        item = QtWidgets.QTableWidgetItem()
        self.RGB_tableWidget.setHorizontalHeaderItem(0, item)
        self.RGB_tableWidget.horizontalHeader().setDefaultSectionSize(50)
        self.RGB_tableWidget.horizontalHeader().setStretchLastSection(True)
        self.RGB_tableWidget.verticalHeader().setDefaultSectionSize(30)
        self.gridLayout_243.addWidget(self.RGB_tableWidget, 1, 0, 2, 1)
        self.gridLayout_213.addLayout(self.gridLayout_243, 0, 0, 1, 1)
        self.gridLayout_246 = QtWidgets.QGridLayout()
        self.gridLayout_246.setObjectName("gridLayout_246")
        self.label_196 = QtWidgets.QLabel(parent=self.tab_RGB)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Maximum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_196.sizePolicy().hasHeightForWidth())
        self.label_196.setSizePolicy(sizePolicy)
        self.label_196.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_196.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_196.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_196.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_196.setObjectName("label_196")
        self.gridLayout_246.addWidget(self.label_196, 0, 0, 1, 2)
        self.horizontalLayout_27 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_27.setObjectName("horizontalLayout_27")
        self.label_192 = QtWidgets.QLabel(parent=self.tab_RGB)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Maximum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_192.sizePolicy().hasHeightForWidth())
        self.label_192.setSizePolicy(sizePolicy)
        self.label_192.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_192.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_192.setObjectName("label_192")
        self.horizontalLayout_27.addWidget(self.label_192)
        self.all_RGB_list_toolButton = QtWidgets.QToolButton(parent=self.tab_RGB)
        self.all_RGB_list_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        icon21 = QtGui.QIcon()
        icon21.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin_enter.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.all_RGB_list_toolButton.setIcon(icon21)
        self.all_RGB_list_toolButton.setIconSize(QtCore.QSize(22, 22))
        self.all_RGB_list_toolButton.setObjectName("all_RGB_list_toolButton")
        self.horizontalLayout_27.addWidget(self.all_RGB_list_toolButton)
        spacerItem11 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.horizontalLayout_27.addItem(spacerItem11)
        self.gridLayout_246.addLayout(self.horizontalLayout_27, 1, 0, 1, 2)
        self.gridLayout_213.addLayout(self.gridLayout_246, 1, 0, 1, 1)
        self.tabWidget_5.addTab(self.tab_RGB, "")
        self.tab_multiple_ROI = QtWidgets.QWidget()
        self.tab_multiple_ROI.setObjectName("tab_multiple_ROI")
        self.gridLayout_247 = QtWidgets.QGridLayout(self.tab_multiple_ROI)
        self.gridLayout_247.setObjectName("gridLayout_247")
        self.gridLayout_8 = QtWidgets.QGridLayout()
        self.gridLayout_8.setObjectName("gridLayout_8")
        self.point_distance_spinBox = QtWidgets.QSpinBox(parent=self.tab_multiple_ROI)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.point_distance_spinBox.sizePolicy().hasHeightForWidth())
        self.point_distance_spinBox.setSizePolicy(sizePolicy)
        self.point_distance_spinBox.setMinimumSize(QtCore.QSize(40, 0))
        self.point_distance_spinBox.setMaximumSize(QtCore.QSize(100, 16777215))
        self.point_distance_spinBox.setAlignment(QtCore.Qt.AlignmentFlag.AlignRight|QtCore.Qt.AlignmentFlag.AlignTrailing|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.point_distance_spinBox.setMinimum(1)
        self.point_distance_spinBox.setMaximum(999999999)
        self.point_distance_spinBox.setProperty("value", 100)
        self.point_distance_spinBox.setObjectName("point_distance_spinBox")
        self.gridLayout_8.addWidget(self.point_distance_spinBox, 1, 5, 1, 1)
        self.point_grid_spinBox = QtWidgets.QSpinBox(parent=self.tab_multiple_ROI)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.point_grid_spinBox.sizePolicy().hasHeightForWidth())
        self.point_grid_spinBox.setSizePolicy(sizePolicy)
        self.point_grid_spinBox.setMinimumSize(QtCore.QSize(40, 0))
        self.point_grid_spinBox.setMaximumSize(QtCore.QSize(100, 16777215))
        self.point_grid_spinBox.setAlignment(QtCore.Qt.AlignmentFlag.AlignRight|QtCore.Qt.AlignmentFlag.AlignTrailing|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.point_grid_spinBox.setMinimum(1)
        self.point_grid_spinBox.setMaximum(999999999)
        self.point_grid_spinBox.setProperty("value", 10000)
        self.point_grid_spinBox.setObjectName("point_grid_spinBox")
        self.gridLayout_8.addWidget(self.point_grid_spinBox, 1, 3, 1, 1)
        self.label_48 = QtWidgets.QLabel(parent=self.tab_multiple_ROI)
        self.label_48.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_48.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_48.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_48.setObjectName("label_48")
        self.gridLayout_8.addWidget(self.label_48, 0, 0, 1, 9)
        self.label_139 = QtWidgets.QLabel(parent=self.tab_multiple_ROI)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_139.sizePolicy().hasHeightForWidth())
        self.label_139.setSizePolicy(sizePolicy)
        self.label_139.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_139.setObjectName("label_139")
        self.gridLayout_8.addWidget(self.label_139, 1, 7, 1, 1)
        self.label_19 = QtWidgets.QLabel(parent=self.tab_multiple_ROI)
        self.label_19.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_19.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_19.setObjectName("label_19")
        self.gridLayout_8.addWidget(self.label_19, 1, 0, 1, 1)
        self.point_number_spinBox = QtWidgets.QSpinBox(parent=self.tab_multiple_ROI)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.point_number_spinBox.sizePolicy().hasHeightForWidth())
        self.point_number_spinBox.setSizePolicy(sizePolicy)
        self.point_number_spinBox.setMinimumSize(QtCore.QSize(40, 0))
        self.point_number_spinBox.setMaximumSize(QtCore.QSize(100, 16777215))
        self.point_number_spinBox.setAlignment(QtCore.Qt.AlignmentFlag.AlignRight|QtCore.Qt.AlignmentFlag.AlignTrailing|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.point_number_spinBox.setMinimum(1)
        self.point_number_spinBox.setMaximum(999999999)
        self.point_number_spinBox.setProperty("value", 100)
        self.point_number_spinBox.setObjectName("point_number_spinBox")
        self.gridLayout_8.addWidget(self.point_number_spinBox, 1, 1, 1, 1)
        self.add_random_point_pushButton = QtWidgets.QToolButton(parent=self.tab_multiple_ROI)
        self.add_random_point_pushButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.add_random_point_pushButton.setIcon(icon21)
        self.add_random_point_pushButton.setIconSize(QtCore.QSize(22, 22))
        self.add_random_point_pushButton.setObjectName("add_random_point_pushButton")
        self.gridLayout_8.addWidget(self.add_random_point_pushButton, 1, 8, 1, 1)
        self.point_distance_checkBox = QtWidgets.QCheckBox(parent=self.tab_multiple_ROI)
        self.point_distance_checkBox.setObjectName("point_distance_checkBox")
        self.gridLayout_8.addWidget(self.point_distance_checkBox, 1, 4, 1, 1)
        self.point_grid_checkBox = QtWidgets.QCheckBox(parent=self.tab_multiple_ROI)
        self.point_grid_checkBox.setObjectName("point_grid_checkBox")
        self.gridLayout_8.addWidget(self.point_grid_checkBox, 1, 2, 1, 1)
        spacerItem12 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_8.addItem(spacerItem12, 1, 6, 1, 1)
        self.stratified_point_checkBox = QtWidgets.QCheckBox(parent=self.tab_multiple_ROI)
        self.stratified_point_checkBox.setObjectName("stratified_point_checkBox")
        self.gridLayout_8.addWidget(self.stratified_point_checkBox, 2, 0, 1, 2)
        self.stratified_lineEdit = QtWidgets.QLineEdit(parent=self.tab_multiple_ROI)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.MinimumExpanding, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.stratified_lineEdit.sizePolicy().hasHeightForWidth())
        self.stratified_lineEdit.setSizePolicy(sizePolicy)
        self.stratified_lineEdit.setMinimumSize(QtCore.QSize(400, 0))
        self.stratified_lineEdit.setText("raster > 0")
        self.stratified_lineEdit.setMaxLength(10000)
        self.stratified_lineEdit.setObjectName("stratified_lineEdit")
        self.gridLayout_8.addWidget(self.stratified_lineEdit, 2, 2, 1, 4)
        self.band_set_comb_spinBox_10 = QtWidgets.QSpinBox(parent=self.tab_multiple_ROI)
        self.band_set_comb_spinBox_10.setMinimum(1)
        self.band_set_comb_spinBox_10.setMaximum(100000)
        self.band_set_comb_spinBox_10.setObjectName("band_set_comb_spinBox_10")
        self.gridLayout_8.addWidget(self.band_set_comb_spinBox_10, 2, 8, 1, 1)
        self.label_25 = QtWidgets.QLabel(parent=self.tab_multiple_ROI)
        self.label_25.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_25.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_25.setObjectName("label_25")
        self.gridLayout_8.addWidget(self.label_25, 2, 6, 1, 2)
        self.gridLayout_247.addLayout(self.gridLayout_8, 0, 0, 1, 1)
        self.gridLayout_32 = QtWidgets.QGridLayout()
        self.gridLayout_32.setObjectName("gridLayout_32")
        self.label_47 = QtWidgets.QLabel(parent=self.tab_multiple_ROI)
        self.label_47.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_47.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_47.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_47.setObjectName("label_47")
        self.gridLayout_32.addWidget(self.label_47, 0, 0, 1, 2)
        self.point_tableWidget = QtWidgets.QTableWidget(parent=self.tab_multiple_ROI)
        self.point_tableWidget.setAlternatingRowColors(True)
        self.point_tableWidget.setObjectName("point_tableWidget")
        self.point_tableWidget.setColumnCount(10)
        self.point_tableWidget.setRowCount(0)
        item = QtWidgets.QTableWidgetItem()
        self.point_tableWidget.setHorizontalHeaderItem(0, item)
        item = QtWidgets.QTableWidgetItem()
        self.point_tableWidget.setHorizontalHeaderItem(1, item)
        item = QtWidgets.QTableWidgetItem()
        self.point_tableWidget.setHorizontalHeaderItem(2, item)
        item = QtWidgets.QTableWidgetItem()
        self.point_tableWidget.setHorizontalHeaderItem(3, item)
        item = QtWidgets.QTableWidgetItem()
        self.point_tableWidget.setHorizontalHeaderItem(4, item)
        item = QtWidgets.QTableWidgetItem()
        self.point_tableWidget.setHorizontalHeaderItem(5, item)
        item = QtWidgets.QTableWidgetItem()
        self.point_tableWidget.setHorizontalHeaderItem(6, item)
        item = QtWidgets.QTableWidgetItem()
        self.point_tableWidget.setHorizontalHeaderItem(7, item)
        item = QtWidgets.QTableWidgetItem()
        self.point_tableWidget.setHorizontalHeaderItem(8, item)
        item = QtWidgets.QTableWidgetItem()
        self.point_tableWidget.setHorizontalHeaderItem(9, item)
        self.point_tableWidget.horizontalHeader().setDefaultSectionSize(90)
        self.point_tableWidget.verticalHeader().setDefaultSectionSize(30)
        self.gridLayout_32.addWidget(self.point_tableWidget, 1, 0, 1, 1)
        self.gridLayout_72 = QtWidgets.QGridLayout()
        self.gridLayout_72.setObjectName("gridLayout_72")
        self.gridLayout_39 = QtWidgets.QGridLayout()
        self.gridLayout_39.setObjectName("gridLayout_39")
        spacerItem13 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_39.addItem(spacerItem13, 3, 0, 1, 1)
        self.add_point_pushButton = QtWidgets.QToolButton(parent=self.tab_multiple_ROI)
        self.add_point_pushButton.setStyleSheet("margin: 0px;padding: 0px")
        self.add_point_pushButton.setIcon(icon13)
        self.add_point_pushButton.setIconSize(QtCore.QSize(22, 22))
        self.add_point_pushButton.setObjectName("add_point_pushButton")
        self.gridLayout_39.addWidget(self.add_point_pushButton, 1, 0, 1, 1)
        self.remove_point_pushButton = QtWidgets.QToolButton(parent=self.tab_multiple_ROI)
        self.remove_point_pushButton.setStyleSheet("margin: 0px;padding: 0px")
        self.remove_point_pushButton.setIcon(icon4)
        self.remove_point_pushButton.setIconSize(QtCore.QSize(22, 22))
        self.remove_point_pushButton.setObjectName("remove_point_pushButton")
        self.gridLayout_39.addWidget(self.remove_point_pushButton, 2, 0, 1, 1)
        self.export_point_list_pushButton = QtWidgets.QToolButton(parent=self.tab_multiple_ROI)
        self.export_point_list_pushButton.setStyleSheet("margin: 0px;padding: 0px")
        self.export_point_list_pushButton.setIcon(icon11)
        self.export_point_list_pushButton.setIconSize(QtCore.QSize(22, 22))
        self.export_point_list_pushButton.setObjectName("export_point_list_pushButton")
        self.gridLayout_39.addWidget(self.export_point_list_pushButton, 5, 0, 1, 1)
        spacerItem14 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_39.addItem(spacerItem14, 6, 0, 1, 1)
        self.import_point_list_pushButton = QtWidgets.QToolButton(parent=self.tab_multiple_ROI)
        self.import_point_list_pushButton.setStyleSheet("margin: 0px;padding: 0px")
        self.import_point_list_pushButton.setIcon(icon10)
        self.import_point_list_pushButton.setIconSize(QtCore.QSize(22, 22))
        self.import_point_list_pushButton.setObjectName("import_point_list_pushButton")
        self.gridLayout_39.addWidget(self.import_point_list_pushButton, 4, 0, 1, 1)
        spacerItem15 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_39.addItem(spacerItem15, 0, 0, 1, 1)
        self.gridLayout_72.addLayout(self.gridLayout_39, 2, 0, 1, 1)
        self.gridLayout_32.addLayout(self.gridLayout_72, 1, 1, 1, 1)
        self.gridLayout_73 = QtWidgets.QGridLayout()
        self.gridLayout_73.setObjectName("gridLayout_73")
        spacerItem16 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_73.addItem(spacerItem16, 1, 4, 1, 1)
        self.signature_checkBox2 = QtWidgets.QCheckBox(parent=self.tab_multiple_ROI)
        self.signature_checkBox2.setChecked(True)
        self.signature_checkBox2.setObjectName("signature_checkBox2")
        self.gridLayout_73.addWidget(self.signature_checkBox2, 1, 5, 1, 1)
        self.label_159 = QtWidgets.QLabel(parent=self.tab_multiple_ROI)
        self.label_159.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_159.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_159.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_159.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_159.setObjectName("label_159")
        self.gridLayout_73.addWidget(self.label_159, 0, 4, 1, 3)
        self.save_point_rois_pushButton = QtWidgets.QToolButton(parent=self.tab_multiple_ROI)
        font = QtGui.QFont()
        font.setBold(True)
        self.save_point_rois_pushButton.setFont(font)
        self.save_point_rois_pushButton.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.save_point_rois_pushButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.save_point_rois_pushButton.setIcon(icon8)
        self.save_point_rois_pushButton.setIconSize(QtCore.QSize(34, 34))
        self.save_point_rois_pushButton.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.save_point_rois_pushButton.setObjectName("save_point_rois_pushButton")
        self.gridLayout_73.addWidget(self.save_point_rois_pushButton, 1, 6, 1, 1)
        self.gridLayout_32.addLayout(self.gridLayout_73, 3, 0, 1, 2)
        self.gridLayout_247.addLayout(self.gridLayout_32, 1, 0, 1, 1)
        self.tabWidget_5.addTab(self.tab_multiple_ROI, "")
        self.tab_Import = QtWidgets.QWidget()
        self.tab_Import.setObjectName("tab_Import")
        self.gridLayout_168 = QtWidgets.QGridLayout(self.tab_Import)
        self.gridLayout_168.setObjectName("gridLayout_168")
        self.toolBox_4 = QtWidgets.QToolBox(parent=self.tab_Import)
        self.toolBox_4.setEnabled(True)
        self.toolBox_4.setObjectName("toolBox_4")
        self.page_9 = QtWidgets.QWidget()
        self.page_9.setGeometry(QtCore.QRect(0, 0, 401, 165))
        self.page_9.setObjectName("page_9")
        self.gridLayout_181 = QtWidgets.QGridLayout(self.page_9)
        self.gridLayout_181.setObjectName("gridLayout_181")
        self.gridLayout_178 = QtWidgets.QGridLayout()
        self.gridLayout_178.setObjectName("gridLayout_178")
        self.open_shapefile_pushButton = QtWidgets.QToolButton(parent=self.page_9)
        self.open_shapefile_pushButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.open_shapefile_pushButton.setIcon(icon7)
        self.open_shapefile_pushButton.setIconSize(QtCore.QSize(20, 20))
        self.open_shapefile_pushButton.setObjectName("open_shapefile_pushButton")
        self.gridLayout_178.addWidget(self.open_shapefile_pushButton, 0, 2, 1, 1)
        self.label_120 = QtWidgets.QLabel(parent=self.page_9)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_120.sizePolicy().hasHeightForWidth())
        self.label_120.setSizePolicy(sizePolicy)
        self.label_120.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_120.setObjectName("label_120")
        self.gridLayout_178.addWidget(self.label_120, 0, 0, 1, 1)
        self.gridLayout_179 = QtWidgets.QGridLayout()
        self.gridLayout_179.setObjectName("gridLayout_179")
        self.C_ID_combo = QtWidgets.QComboBox(parent=self.page_9)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.C_ID_combo.sizePolicy().hasHeightForWidth())
        self.C_ID_combo.setSizePolicy(sizePolicy)
        self.C_ID_combo.setObjectName("C_ID_combo")
        self.gridLayout_179.addWidget(self.C_ID_combo, 2, 2, 1, 1)
        self.MC_ID_combo = QtWidgets.QComboBox(parent=self.page_9)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.MC_ID_combo.sizePolicy().hasHeightForWidth())
        self.MC_ID_combo.setSizePolicy(sizePolicy)
        self.MC_ID_combo.setObjectName("MC_ID_combo")
        self.gridLayout_179.addWidget(self.MC_ID_combo, 2, 0, 1, 1)
        self.MC_Info_combo = QtWidgets.QComboBox(parent=self.page_9)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.MC_Info_combo.sizePolicy().hasHeightForWidth())
        self.MC_Info_combo.setSizePolicy(sizePolicy)
        self.MC_Info_combo.setObjectName("MC_Info_combo")
        self.gridLayout_179.addWidget(self.MC_Info_combo, 2, 1, 1, 1)
        self.label_99 = QtWidgets.QLabel(parent=self.page_9)
        self.label_99.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_99.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_99.setObjectName("label_99")
        self.gridLayout_179.addWidget(self.label_99, 1, 3, 1, 1)
        self.C_Info_combo = QtWidgets.QComboBox(parent=self.page_9)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.C_Info_combo.sizePolicy().hasHeightForWidth())
        self.C_Info_combo.setSizePolicy(sizePolicy)
        self.C_Info_combo.setObjectName("C_Info_combo")
        self.gridLayout_179.addWidget(self.C_Info_combo, 2, 3, 1, 1)
        self.label_119 = QtWidgets.QLabel(parent=self.page_9)
        self.label_119.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_119.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_119.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_119.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_119.setObjectName("label_119")
        self.gridLayout_179.addWidget(self.label_119, 0, 0, 1, 5)
        self.MC_ID_combo_2 = QtWidgets.QLabel(parent=self.page_9)
        self.MC_ID_combo_2.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.MC_ID_combo_2.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.MC_ID_combo_2.setObjectName("MC_ID_combo_2")
        self.gridLayout_179.addWidget(self.MC_ID_combo_2, 1, 2, 1, 1)
        self.label_121 = QtWidgets.QLabel(parent=self.page_9)
        self.label_121.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_121.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_121.setObjectName("label_121")
        self.gridLayout_179.addWidget(self.label_121, 1, 0, 1, 1)
        self.label_122 = QtWidgets.QLabel(parent=self.page_9)
        self.label_122.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_122.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_122.setObjectName("label_122")
        self.gridLayout_179.addWidget(self.label_122, 1, 1, 1, 1)
        self.gridLayout_178.addLayout(self.gridLayout_179, 3, 0, 1, 3)
        spacerItem17 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_178.addItem(spacerItem17, 5, 0, 1, 1)
        self.gridLayout_180 = QtWidgets.QGridLayout()
        self.gridLayout_180.setObjectName("gridLayout_180")
        self.label_2 = QtWidgets.QLabel(parent=self.page_9)
        self.label_2.setObjectName("label_2")
        self.gridLayout_180.addWidget(self.label_2, 0, 2, 1, 1)
        spacerItem18 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_180.addItem(spacerItem18, 0, 0, 1, 1)
        self.signature_checkBox_2 = QtWidgets.QCheckBox(parent=self.page_9)
        self.signature_checkBox_2.setChecked(True)
        self.signature_checkBox_2.setObjectName("signature_checkBox_2")
        self.gridLayout_180.addWidget(self.signature_checkBox_2, 0, 1, 1, 1)
        self.import_shapefile_pushButton = QtWidgets.QToolButton(parent=self.page_9)
        self.import_shapefile_pushButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.import_shapefile_pushButton.setIcon(icon21)
        self.import_shapefile_pushButton.setIconSize(QtCore.QSize(22, 22))
        self.import_shapefile_pushButton.setObjectName("import_shapefile_pushButton")
        self.gridLayout_180.addWidget(self.import_shapefile_pushButton, 0, 3, 1, 1)
        self.gridLayout_178.addLayout(self.gridLayout_180, 4, 0, 1, 3)
        self.select_shapefile_label = QtWidgets.QLabel(parent=self.page_9)
        self.select_shapefile_label.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.select_shapefile_label.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.select_shapefile_label.setText("")
        self.select_shapefile_label.setObjectName("select_shapefile_label")
        self.gridLayout_178.addWidget(self.select_shapefile_label, 0, 1, 1, 1)
        self.gridLayout_181.addLayout(self.gridLayout_178, 0, 1, 1, 1)
        self.toolBox_4.addItem(self.page_9, "")
        self.page_6 = QtWidgets.QWidget()
        self.page_6.setGeometry(QtCore.QRect(0, 0, 605, 45))
        self.page_6.setObjectName("page_6")
        self.gridLayout_175 = QtWidgets.QGridLayout(self.page_6)
        self.gridLayout_175.setObjectName("gridLayout_175")
        self.gridLayout_174 = QtWidgets.QGridLayout()
        self.gridLayout_174.setObjectName("gridLayout_174")
        self.label_9 = QtWidgets.QLabel(parent=self.page_6)
        self.label_9.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_9.setObjectName("label_9")
        self.gridLayout_174.addWidget(self.label_9, 0, 0, 1, 1)
        self.open_library_pushButton = QtWidgets.QToolButton(parent=self.page_6)
        self.open_library_pushButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.open_library_pushButton.setIcon(icon7)
        self.open_library_pushButton.setIconSize(QtCore.QSize(22, 22))
        self.open_library_pushButton.setObjectName("open_library_pushButton")
        self.gridLayout_174.addWidget(self.open_library_pushButton, 0, 1, 1, 1)
        spacerItem19 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_174.addItem(spacerItem19, 2, 0, 1, 1)
        self.gridLayout_175.addLayout(self.gridLayout_174, 0, 0, 1, 1)
        self.toolBox_4.addItem(self.page_6, "")
        self.page_8 = QtWidgets.QWidget()
        self.page_8.setGeometry(QtCore.QRect(0, 0, 351, 462))
        self.page_8.setObjectName("page_8")
        self.gridLayout_4 = QtWidgets.QGridLayout(self.page_8)
        self.gridLayout_4.setObjectName("gridLayout_4")
        self.gridLayout_31 = QtWidgets.QGridLayout()
        self.gridLayout_31.setObjectName("gridLayout_31")
        self.usgs_chapter_comboBox = QtWidgets.QComboBox(parent=self.page_8)
        self.usgs_chapter_comboBox.setEnabled(False)
        self.usgs_chapter_comboBox.setObjectName("usgs_chapter_comboBox")
        self.gridLayout_31.addWidget(self.usgs_chapter_comboBox, 0, 1, 1, 1)
        self.usgs_library_comboBox = QtWidgets.QComboBox(parent=self.page_8)
        self.usgs_library_comboBox.setEnabled(False)
        self.usgs_library_comboBox.setObjectName("usgs_library_comboBox")
        self.gridLayout_31.addWidget(self.usgs_library_comboBox, 1, 1, 1, 1)
        self.gridLayout_14 = QtWidgets.QGridLayout()
        self.gridLayout_14.setObjectName("gridLayout_14")
        self.gridLayout_31.addLayout(self.gridLayout_14, 2, 1, 1, 1)
        self.label_123 = QtWidgets.QLabel(parent=self.page_8)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_123.sizePolicy().hasHeightForWidth())
        self.label_123.setSizePolicy(sizePolicy)
        self.label_123.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_123.setObjectName("label_123")
        self.gridLayout_31.addWidget(self.label_123, 0, 0, 1, 1)
        self.label_124 = QtWidgets.QLabel(parent=self.page_8)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_124.sizePolicy().hasHeightForWidth())
        self.label_124.setSizePolicy(sizePolicy)
        self.label_124.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_124.setObjectName("label_124")
        self.gridLayout_31.addWidget(self.label_124, 1, 0, 1, 1)
        self.gridLayout_12 = QtWidgets.QGridLayout()
        self.gridLayout_12.setObjectName("gridLayout_12")
        spacerItem20 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_12.addItem(spacerItem20, 0, 0, 1, 1)
        self.label_130 = QtWidgets.QLabel(parent=self.page_8)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_130.sizePolicy().hasHeightForWidth())
        self.label_130.setSizePolicy(sizePolicy)
        self.label_130.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_130.setObjectName("label_130")
        self.gridLayout_12.addWidget(self.label_130, 0, 1, 1, 1)
        self.add_usgs_library_pushButton = QtWidgets.QToolButton(parent=self.page_8)
        self.add_usgs_library_pushButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.add_usgs_library_pushButton.setIcon(icon21)
        self.add_usgs_library_pushButton.setIconSize(QtCore.QSize(22, 22))
        self.add_usgs_library_pushButton.setObjectName("add_usgs_library_pushButton")
        self.gridLayout_12.addWidget(self.add_usgs_library_pushButton, 0, 2, 1, 1)
        self.gridLayout_31.addLayout(self.gridLayout_12, 3, 0, 1, 2)
        self.USGS_library_textBrowser = QtWidgets.QTextBrowser(parent=self.page_8)
        self.USGS_library_textBrowser.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.USGS_library_textBrowser.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.USGS_library_textBrowser.setHtml("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><meta charset=\"utf-8\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"hr { height: 1px; border-width: 0; }\n"
"li.unchecked::marker { content: \"\\2610\"; }\n"
"li.checked::marker { content: \"\\2612\"; }\n"
"</style></head><body style=\" font-family:\'Noto Sans\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:\'Sans\'; font-size:11pt;\"><br /></p></body></html>")
        self.USGS_library_textBrowser.setOpenExternalLinks(True)
        self.USGS_library_textBrowser.setObjectName("USGS_library_textBrowser")
        self.gridLayout_31.addWidget(self.USGS_library_textBrowser, 5, 0, 1, 2)
        self.label = QtWidgets.QLabel(parent=self.page_8)
        font = QtGui.QFont()
        font.setPointSize(8)
        self.label.setFont(font)
        self.label.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label.setWordWrap(True)
        self.label.setOpenExternalLinks(True)
        self.label.setObjectName("label")
        self.gridLayout_31.addWidget(self.label, 6, 0, 1, 2)
        self.label_129 = QtWidgets.QLabel(parent=self.page_8)
        self.label_129.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_129.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_129.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_129.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_129.setObjectName("label_129")
        self.gridLayout_31.addWidget(self.label_129, 4, 0, 1, 2)
        self.gridLayout_4.addLayout(self.gridLayout_31, 0, 1, 1, 1)
        self.toolBox_4.addItem(self.page_8, "")
        self.gridLayout_168.addWidget(self.toolBox_4, 0, 0, 1, 1)
        self.tabWidget_5.addTab(self.tab_Import, "")
        self.tab_export = QtWidgets.QWidget()
        self.tab_export.setObjectName("tab_export")
        self.gridLayout_142 = QtWidgets.QGridLayout(self.tab_export)
        self.gridLayout_142.setObjectName("gridLayout_142")
        self.gridLayout_176 = QtWidgets.QGridLayout()
        self.gridLayout_176.setObjectName("gridLayout_176")
        self.label_97 = QtWidgets.QLabel(parent=self.tab_export)
        self.label_97.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_97.setObjectName("label_97")
        self.gridLayout_176.addWidget(self.label_97, 1, 0, 1, 1)
        self.export_SCP_pushButton = QtWidgets.QToolButton(parent=self.tab_export)
        self.export_SCP_pushButton.setStyleSheet("margin: 0px;padding: 0px;")
        icon22 = QtGui.QIcon()
        icon22.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin_new_file.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.export_SCP_pushButton.setIcon(icon22)
        self.export_SCP_pushButton.setIconSize(QtCore.QSize(22, 22))
        self.export_SCP_pushButton.setObjectName("export_SCP_pushButton")
        self.gridLayout_176.addWidget(self.export_SCP_pushButton, 1, 1, 1, 1)
        self.export_CSV_library_toolButton = QtWidgets.QToolButton(parent=self.tab_export)
        self.export_CSV_library_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        icon23 = QtGui.QIcon()
        icon23.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin_open_dir.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.export_CSV_library_toolButton.setIcon(icon23)
        self.export_CSV_library_toolButton.setIconSize(QtCore.QSize(22, 22))
        self.export_CSV_library_toolButton.setObjectName("export_CSV_library_toolButton")
        self.gridLayout_176.addWidget(self.export_CSV_library_toolButton, 3, 1, 1, 1)
        self.label_96 = QtWidgets.QLabel(parent=self.tab_export)
        self.label_96.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_96.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_96.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_96.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_96.setObjectName("label_96")
        self.gridLayout_176.addWidget(self.label_96, 0, 0, 1, 2)
        self.label_222 = QtWidgets.QLabel(parent=self.tab_export)
        self.label_222.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_222.setObjectName("label_222")
        self.gridLayout_176.addWidget(self.label_222, 2, 0, 1, 1)
        self.label_20 = QtWidgets.QLabel(parent=self.tab_export)
        self.label_20.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_20.setObjectName("label_20")
        self.gridLayout_176.addWidget(self.label_20, 3, 0, 1, 1)
        self.export_SHP_pushButton = QtWidgets.QToolButton(parent=self.tab_export)
        self.export_SHP_pushButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.export_SHP_pushButton.setIcon(icon22)
        self.export_SHP_pushButton.setIconSize(QtCore.QSize(22, 22))
        self.export_SHP_pushButton.setObjectName("export_SHP_pushButton")
        self.gridLayout_176.addWidget(self.export_SHP_pushButton, 2, 1, 1, 1)
        spacerItem21 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_176.addItem(spacerItem21, 4, 0, 1, 1)
        self.gridLayout_142.addLayout(self.gridLayout_176, 0, 0, 1, 1)
        self.tabWidget_5.addTab(self.tab_export, "")
        self.tab_threshold = QtWidgets.QWidget()
        self.tab_threshold.setObjectName("tab_threshold")
        self.gridLayout_177 = QtWidgets.QGridLayout(self.tab_threshold)
        self.gridLayout_177.setObjectName("gridLayout_177")
        self.gridLayout_110 = QtWidgets.QGridLayout()
        self.gridLayout_110.setObjectName("gridLayout_110")
        self.gridLayout_161 = QtWidgets.QGridLayout()
        self.gridLayout_161.setObjectName("gridLayout_161")
        self.gridLayout_198 = QtWidgets.QGridLayout()
        self.gridLayout_198.setObjectName("gridLayout_198")
        spacerItem22 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_198.addItem(spacerItem22, 0, 0, 1, 1)
        self.gridLayout_161.addLayout(self.gridLayout_198, 0, 0, 1, 1)
        spacerItem23 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_161.addItem(spacerItem23, 3, 0, 1, 1)
        self.gridLayout_129 = QtWidgets.QGridLayout()
        self.gridLayout_129.setObjectName("gridLayout_129")
        self.reset_threshold_pushButton = QtWidgets.QToolButton(parent=self.tab_threshold)
        self.reset_threshold_pushButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.reset_threshold_pushButton.setIcon(icon9)
        self.reset_threshold_pushButton.setIconSize(QtCore.QSize(22, 22))
        self.reset_threshold_pushButton.setObjectName("reset_threshold_pushButton")
        self.gridLayout_129.addWidget(self.reset_threshold_pushButton, 0, 0, 1, 1)
        self.gridLayout_161.addLayout(self.gridLayout_129, 1, 0, 1, 1)
        self.gridLayout_110.addLayout(self.gridLayout_161, 1, 1, 1, 1)
        self.signature_threshold_tableWidget = QtWidgets.QTableWidget(parent=self.tab_threshold)
        self.signature_threshold_tableWidget.setSelectionMode(QtWidgets.QAbstractItemView.SelectionMode.ExtendedSelection)
        self.signature_threshold_tableWidget.setSelectionBehavior(QtWidgets.QAbstractItemView.SelectionBehavior.SelectItems)
        self.signature_threshold_tableWidget.setObjectName("signature_threshold_tableWidget")
        self.signature_threshold_tableWidget.setColumnCount(7)
        self.signature_threshold_tableWidget.setRowCount(0)
        item = QtWidgets.QTableWidgetItem()
        self.signature_threshold_tableWidget.setHorizontalHeaderItem(0, item)
        item = QtWidgets.QTableWidgetItem()
        self.signature_threshold_tableWidget.setHorizontalHeaderItem(1, item)
        item = QtWidgets.QTableWidgetItem()
        self.signature_threshold_tableWidget.setHorizontalHeaderItem(2, item)
        item = QtWidgets.QTableWidgetItem()
        self.signature_threshold_tableWidget.setHorizontalHeaderItem(3, item)
        item = QtWidgets.QTableWidgetItem()
        self.signature_threshold_tableWidget.setHorizontalHeaderItem(4, item)
        item = QtWidgets.QTableWidgetItem()
        self.signature_threshold_tableWidget.setHorizontalHeaderItem(5, item)
        item = QtWidgets.QTableWidgetItem()
        self.signature_threshold_tableWidget.setHorizontalHeaderItem(6, item)
        self.signature_threshold_tableWidget.horizontalHeader().setDefaultSectionSize(50)
        self.signature_threshold_tableWidget.horizontalHeader().setStretchLastSection(True)
        self.signature_threshold_tableWidget.verticalHeader().setDefaultSectionSize(30)
        self.gridLayout_110.addWidget(self.signature_threshold_tableWidget, 1, 0, 1, 1)
        self.gridLayout_109 = QtWidgets.QGridLayout()
        self.gridLayout_109.setObjectName("gridLayout_109")
        self.label_80 = QtWidgets.QLabel(parent=self.tab_threshold)
        self.label_80.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_80.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_80.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_80.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_80.setObjectName("label_80")
        self.gridLayout_109.addWidget(self.label_80, 0, 0, 1, 1)
        self.gridLayout_110.addLayout(self.gridLayout_109, 0, 0, 1, 2)
        self.gridLayout_111 = QtWidgets.QGridLayout()
        self.gridLayout_111.setObjectName("gridLayout_111")
        self.label_85 = QtWidgets.QLabel(parent=self.tab_threshold)
        self.label_85.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_85.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_85.setObjectName("label_85")
        self.gridLayout_111.addWidget(self.label_85, 1, 2, 1, 1)
        self.multiplicative_threshold_doubleSpinBox = QtWidgets.QDoubleSpinBox(parent=self.tab_threshold)
        self.multiplicative_threshold_doubleSpinBox.setDecimals(1)
        self.multiplicative_threshold_doubleSpinBox.setMaximum(10000.0)
        self.multiplicative_threshold_doubleSpinBox.setProperty("value", 1.0)
        self.multiplicative_threshold_doubleSpinBox.setObjectName("multiplicative_threshold_doubleSpinBox")
        self.gridLayout_111.addWidget(self.multiplicative_threshold_doubleSpinBox, 1, 3, 1, 1)
        self.automatic_threshold_pushButton = QtWidgets.QToolButton(parent=self.tab_threshold)
        self.automatic_threshold_pushButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.automatic_threshold_pushButton.setIcon(icon21)
        self.automatic_threshold_pushButton.setIconSize(QtCore.QSize(22, 22))
        self.automatic_threshold_pushButton.setObjectName("automatic_threshold_pushButton")
        self.gridLayout_111.addWidget(self.automatic_threshold_pushButton, 1, 4, 1, 1)
        self.horizontalLayout_3 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_3.setObjectName("horizontalLayout_3")
        self.label_132 = QtWidgets.QLabel(parent=self.tab_threshold)
        self.label_132.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_132.setObjectName("label_132")
        self.horizontalLayout_3.addWidget(self.label_132)
        self.threshold_doubleSpinBox = QtWidgets.QDoubleSpinBox(parent=self.tab_threshold)
        self.threshold_doubleSpinBox.setDecimals(4)
        self.threshold_doubleSpinBox.setMaximum(10000.0)
        self.threshold_doubleSpinBox.setProperty("value", 0.0)
        self.threshold_doubleSpinBox.setObjectName("threshold_doubleSpinBox")
        self.horizontalLayout_3.addWidget(self.threshold_doubleSpinBox)
        self.set_threshold_value_pushButton = QtWidgets.QToolButton(parent=self.tab_threshold)
        self.set_threshold_value_pushButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.set_threshold_value_pushButton.setIcon(icon21)
        self.set_threshold_value_pushButton.setIconSize(QtCore.QSize(22, 22))
        self.set_threshold_value_pushButton.setObjectName("set_threshold_value_pushButton")
        self.horizontalLayout_3.addWidget(self.set_threshold_value_pushButton)
        self.gridLayout_111.addLayout(self.horizontalLayout_3, 1, 0, 1, 1)
        spacerItem24 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_111.addItem(spacerItem24, 1, 1, 1, 1)
        spacerItem25 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_111.addItem(spacerItem25, 1, 5, 1, 1)
        self.label_88 = QtWidgets.QLabel(parent=self.tab_threshold)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Maximum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_88.sizePolicy().hasHeightForWidth())
        self.label_88.setSizePolicy(sizePolicy)
        self.label_88.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_88.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_88.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_88.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_88.setObjectName("label_88")
        self.gridLayout_111.addWidget(self.label_88, 0, 0, 1, 6)
        self.gridLayout_110.addLayout(self.gridLayout_111, 2, 0, 1, 2)
        self.gridLayout_177.addLayout(self.gridLayout_110, 0, 0, 1, 1)
        self.tabWidget_5.addTab(self.tab_threshold, "")
        self.gridLayout_216.addWidget(self.tabWidget_5, 0, 0, 1, 1)
        self.SCP_tabs.addTab(self.tab_basic_tools, "")
        self.tab_preprocessing = QtWidgets.QWidget()
        self.tab_preprocessing.setStyleSheet("")
        self.tab_preprocessing.setObjectName("tab_preprocessing")
        self.gridLayout_6 = QtWidgets.QGridLayout(self.tab_preprocessing)
        self.gridLayout_6.setContentsMargins(3, 3, 3, 3)
        self.gridLayout_6.setObjectName("gridLayout_6")
        self.tabWidget_preprocessing = QtWidgets.QTabWidget(parent=self.tab_preprocessing)
        self.tabWidget_preprocessing.setStyleSheet("")
        self.tabWidget_preprocessing.setIconSize(QtCore.QSize(20, 20))
        self.tabWidget_preprocessing.setDocumentMode(True)
        self.tabWidget_preprocessing.setObjectName("tabWidget_preprocessing")
        self.tab_Landsat = QtWidgets.QWidget()
        self.tab_Landsat.setObjectName("tab_Landsat")
        self.gridLayout_18 = QtWidgets.QGridLayout(self.tab_Landsat)
        self.gridLayout_18.setObjectName("gridLayout_18")
        self.gridLayout_37 = QtWidgets.QGridLayout()
        self.gridLayout_37.setObjectName("gridLayout_37")
        self.label_36 = QtWidgets.QLabel(parent=self.tab_Landsat)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_36.sizePolicy().hasHeightForWidth())
        self.label_36.setSizePolicy(sizePolicy)
        self.label_36.setMinimumSize(QtCore.QSize(229, 0))
        font = QtGui.QFont()
        font.setBold(False)
        self.label_36.setFont(font)
        self.label_36.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_36.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_36.setObjectName("label_36")
        self.gridLayout_37.addWidget(self.label_36, 1, 0, 1, 1)
        self.label_37 = QtWidgets.QLabel(parent=self.tab_Landsat)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_37.sizePolicy().hasHeightForWidth())
        self.label_37.setSizePolicy(sizePolicy)
        self.label_37.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_37.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_37.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_37.setObjectName("label_37")
        self.gridLayout_37.addWidget(self.label_37, 0, 0, 1, 4)
        self.label_41 = QtWidgets.QLabel(parent=self.tab_Landsat)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_41.sizePolicy().hasHeightForWidth())
        self.label_41.setSizePolicy(sizePolicy)
        self.label_41.setMinimumSize(QtCore.QSize(229, 0))
        self.label_41.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_41.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_41.setObjectName("label_41")
        self.gridLayout_37.addWidget(self.label_41, 2, 0, 1, 1)
        self.toolButton_directoryInput = QtWidgets.QToolButton(parent=self.tab_Landsat)
        self.toolButton_directoryInput.setStyleSheet("margin: 0px;padding: 0px;")
        self.toolButton_directoryInput.setIcon(icon23)
        self.toolButton_directoryInput.setIconSize(QtCore.QSize(22, 22))
        self.toolButton_directoryInput.setObjectName("toolButton_directoryInput")
        self.gridLayout_37.addWidget(self.toolButton_directoryInput, 1, 3, 1, 1)
        self.label_26 = QtWidgets.QLabel(parent=self.tab_Landsat)
        self.label_26.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_26.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_26.setText("")
        self.label_26.setObjectName("label_26")
        self.gridLayout_37.addWidget(self.label_26, 1, 1, 1, 2)
        self.label_27 = QtWidgets.QLabel(parent=self.tab_Landsat)
        self.label_27.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_27.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_27.setText("")
        self.label_27.setObjectName("label_27")
        self.gridLayout_37.addWidget(self.label_27, 2, 1, 1, 2)
        self.gridLayout_183 = QtWidgets.QGridLayout()
        self.gridLayout_183.setObjectName("gridLayout_183")
        self.create_bandset_checkBox = QtWidgets.QCheckBox(parent=self.tab_Landsat)
        self.create_bandset_checkBox.setChecked(True)
        self.create_bandset_checkBox.setTristate(False)
        self.create_bandset_checkBox.setObjectName("create_bandset_checkBox")
        self.gridLayout_183.addWidget(self.create_bandset_checkBox, 1, 0, 1, 1)
        spacerItem26 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_183.addItem(spacerItem26, 1, 2, 1, 1)
        self.DOS1_checkBox = QtWidgets.QCheckBox(parent=self.tab_Landsat)
        self.DOS1_checkBox.setChecked(False)
        self.DOS1_checkBox.setTristate(False)
        self.DOS1_checkBox.setObjectName("DOS1_checkBox")
        self.gridLayout_183.addWidget(self.DOS1_checkBox, 0, 0, 1, 1)
        self.add_new_bandset_radioButton_1 = QtWidgets.QRadioButton(parent=self.tab_Landsat)
        self.add_new_bandset_radioButton_1.setChecked(True)
        self.add_new_bandset_radioButton_1.setObjectName("add_new_bandset_radioButton_1")
        self.gridLayout_183.addWidget(self.add_new_bandset_radioButton_1, 1, 1, 1, 1)
        self.gridLayout_37.addLayout(self.gridLayout_183, 5, 0, 1, 4)
        self.toolButton_directoryInput_MTL = QtWidgets.QToolButton(parent=self.tab_Landsat)
        self.toolButton_directoryInput_MTL.setStyleSheet("margin: 0px;padding: 0px;")
        self.toolButton_directoryInput_MTL.setIcon(icon7)
        self.toolButton_directoryInput_MTL.setIconSize(QtCore.QSize(22, 22))
        self.toolButton_directoryInput_MTL.setObjectName("toolButton_directoryInput_MTL")
        self.gridLayout_37.addWidget(self.toolButton_directoryInput_MTL, 2, 3, 1, 1)
        self.gridLayout_29 = QtWidgets.QGridLayout()
        self.gridLayout_29.setObjectName("gridLayout_29")
        self.nodata_spinBox_3 = QtWidgets.QSpinBox(parent=self.tab_Landsat)
        self.nodata_spinBox_3.setMinimum(-999)
        self.nodata_spinBox_3.setMaximum(100000)
        self.nodata_spinBox_3.setObjectName("nodata_spinBox_3")
        self.gridLayout_29.addWidget(self.nodata_spinBox_3, 0, 1, 1, 1)
        self.nodata_checkBox_2 = QtWidgets.QCheckBox(parent=self.tab_Landsat)
        self.nodata_checkBox_2.setChecked(True)
        self.nodata_checkBox_2.setObjectName("nodata_checkBox_2")
        self.gridLayout_29.addWidget(self.nodata_checkBox_2, 0, 0, 1, 1)
        spacerItem27 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_29.addItem(spacerItem27, 0, 2, 1, 1)
        self.gridLayout_37.addLayout(self.gridLayout_29, 4, 0, 1, 4)
        self.gridLayout_18.addLayout(self.gridLayout_37, 0, 0, 1, 1)
        self.gridLayout_95 = QtWidgets.QGridLayout()
        self.gridLayout_95.setObjectName("gridLayout_95")
        self.bands_tableWidget = QtWidgets.QTableWidget(parent=self.tab_Landsat)
        self.bands_tableWidget.setWordWrap(False)
        self.bands_tableWidget.setObjectName("bands_tableWidget")
        self.bands_tableWidget.setColumnCount(15)
        self.bands_tableWidget.setRowCount(0)
        item = QtWidgets.QTableWidgetItem()
        self.bands_tableWidget.setHorizontalHeaderItem(0, item)
        item = QtWidgets.QTableWidgetItem()
        self.bands_tableWidget.setHorizontalHeaderItem(1, item)
        item = QtWidgets.QTableWidgetItem()
        self.bands_tableWidget.setHorizontalHeaderItem(2, item)
        item = QtWidgets.QTableWidgetItem()
        self.bands_tableWidget.setHorizontalHeaderItem(3, item)
        item = QtWidgets.QTableWidgetItem()
        self.bands_tableWidget.setHorizontalHeaderItem(4, item)
        item = QtWidgets.QTableWidgetItem()
        self.bands_tableWidget.setHorizontalHeaderItem(5, item)
        item = QtWidgets.QTableWidgetItem()
        self.bands_tableWidget.setHorizontalHeaderItem(6, item)
        item = QtWidgets.QTableWidgetItem()
        self.bands_tableWidget.setHorizontalHeaderItem(7, item)
        item = QtWidgets.QTableWidgetItem()
        self.bands_tableWidget.setHorizontalHeaderItem(8, item)
        item = QtWidgets.QTableWidgetItem()
        self.bands_tableWidget.setHorizontalHeaderItem(9, item)
        item = QtWidgets.QTableWidgetItem()
        self.bands_tableWidget.setHorizontalHeaderItem(10, item)
        item = QtWidgets.QTableWidgetItem()
        self.bands_tableWidget.setHorizontalHeaderItem(11, item)
        item = QtWidgets.QTableWidgetItem()
        self.bands_tableWidget.setHorizontalHeaderItem(12, item)
        item = QtWidgets.QTableWidgetItem()
        self.bands_tableWidget.setHorizontalHeaderItem(13, item)
        item = QtWidgets.QTableWidgetItem()
        self.bands_tableWidget.setHorizontalHeaderItem(14, item)
        self.bands_tableWidget.horizontalHeader().setDefaultSectionSize(155)
        self.gridLayout_95.addWidget(self.bands_tableWidget, 1, 0, 1, 1)
        self.gridLayout_15 = QtWidgets.QGridLayout()
        self.gridLayout_15.setObjectName("gridLayout_15")
        self.pushButton_remove_band = QtWidgets.QToolButton(parent=self.tab_Landsat)
        self.pushButton_remove_band.setStyleSheet("margin: 0px;padding: 0px;")
        self.pushButton_remove_band.setIcon(icon4)
        self.pushButton_remove_band.setIconSize(QtCore.QSize(22, 22))
        self.pushButton_remove_band.setObjectName("pushButton_remove_band")
        self.gridLayout_15.addWidget(self.pushButton_remove_band, 0, 0, 1, 1)
        self.gridLayout_95.addLayout(self.gridLayout_15, 1, 1, 1, 1)
        self.gridLayout_98 = QtWidgets.QGridLayout()
        self.gridLayout_98.setObjectName("gridLayout_98")
        self.label_74 = QtWidgets.QLabel(parent=self.tab_Landsat)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_74.sizePolicy().hasHeightForWidth())
        self.label_74.setSizePolicy(sizePolicy)
        self.label_74.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_74.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_74.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_74.setObjectName("label_74")
        self.gridLayout_98.addWidget(self.label_74, 0, 0, 1, 2)
        self.gridLayout_95.addLayout(self.gridLayout_98, 0, 0, 1, 2)
        self.gridLayout_18.addLayout(self.gridLayout_95, 1, 0, 1, 1)
        self.gridLayout_97 = QtWidgets.QGridLayout()
        self.gridLayout_97.setObjectName("gridLayout_97")
        spacerItem28 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_97.addItem(spacerItem28, 1, 1, 1, 1)
        self.label_161 = QtWidgets.QLabel(parent=self.tab_Landsat)
        self.label_161.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_161.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_161.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_161.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_161.setObjectName("label_161")
        self.gridLayout_97.addWidget(self.label_161, 0, 1, 1, 3)
        self.pushButton_Conversion = QtWidgets.QToolButton(parent=self.tab_Landsat)
        font = QtGui.QFont()
        font.setBold(True)
        self.pushButton_Conversion.setFont(font)
        self.pushButton_Conversion.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.pushButton_Conversion.setStyleSheet("margin: 0px;padding: 0px;")
        self.pushButton_Conversion.setIcon(icon8)
        self.pushButton_Conversion.setIconSize(QtCore.QSize(34, 34))
        self.pushButton_Conversion.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.pushButton_Conversion.setObjectName("pushButton_Conversion")
        self.gridLayout_97.addWidget(self.pushButton_Conversion, 1, 3, 1, 1)
        self.landsat_conversion = QtWidgets.QToolButton(parent=self.tab_Landsat)
        font = QtGui.QFont()
        font.setBold(True)
        self.landsat_conversion.setFont(font)
        self.landsat_conversion.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.landsat_conversion.setStyleSheet("margin: 0px;padding: 0px;")
        icon24 = QtGui.QIcon()
        icon24.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin_batch.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.landsat_conversion.setIcon(icon24)
        self.landsat_conversion.setIconSize(QtCore.QSize(34, 34))
        self.landsat_conversion.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.landsat_conversion.setObjectName("landsat_conversion")
        self.gridLayout_97.addWidget(self.landsat_conversion, 1, 2, 1, 1)
        self.gridLayout_18.addLayout(self.gridLayout_97, 2, 0, 1, 1)
        self.tabWidget_preprocessing.addTab(self.tab_Landsat, "")
        self.tab_spectral_distance = QtWidgets.QWidget()
        self.tab_spectral_distance.setObjectName("tab_spectral_distance")
        self.gridLayout_61 = QtWidgets.QGridLayout(self.tab_spectral_distance)
        self.gridLayout_61.setObjectName("gridLayout_61")
        self.gridLayout_119 = QtWidgets.QGridLayout()
        self.gridLayout_119.setObjectName("gridLayout_119")
        self.label_142 = QtWidgets.QLabel(parent=self.tab_spectral_distance)
        self.label_142.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_142.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_142.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_142.setObjectName("label_142")
        self.gridLayout_119.addWidget(self.label_142, 0, 0, 1, 1)
        self.gridLayout_61.addLayout(self.gridLayout_119, 0, 0, 1, 1)
        self.horizontalLayout_22 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_22.setObjectName("horizontalLayout_22")
        self.label_64 = QtWidgets.QLabel(parent=self.tab_spectral_distance)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_64.sizePolicy().hasHeightForWidth())
        self.label_64.setSizePolicy(sizePolicy)
        self.label_64.setMinimumSize(QtCore.QSize(229, 0))
        self.label_64.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_64.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_64.setObjectName("label_64")
        self.horizontalLayout_22.addWidget(self.label_64)
        self.vector_name_combo = QtWidgets.QComboBox(parent=self.tab_spectral_distance)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.vector_name_combo.sizePolicy().hasHeightForWidth())
        self.vector_name_combo.setSizePolicy(sizePolicy)
        self.vector_name_combo.setObjectName("vector_name_combo")
        self.horizontalLayout_22.addWidget(self.vector_name_combo)
        self.toolButton_reload_16 = QtWidgets.QToolButton(parent=self.tab_spectral_distance)
        self.toolButton_reload_16.setStyleSheet("margin: 0px;padding: 0px;")
        icon25 = QtGui.QIcon()
        icon25.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin_reload.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.toolButton_reload_16.setIcon(icon25)
        self.toolButton_reload_16.setIconSize(QtCore.QSize(22, 22))
        self.toolButton_reload_16.setObjectName("toolButton_reload_16")
        self.horizontalLayout_22.addWidget(self.toolButton_reload_16)
        self.gridLayout_61.addLayout(self.horizontalLayout_22, 1, 0, 1, 1)
        self.horizontalLayout_20 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_20.setObjectName("horizontalLayout_20")
        self.label_157 = QtWidgets.QLabel(parent=self.tab_spectral_distance)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_157.sizePolicy().hasHeightForWidth())
        self.label_157.setSizePolicy(sizePolicy)
        self.label_157.setMinimumSize(QtCore.QSize(229, 0))
        self.label_157.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_157.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_157.setObjectName("label_157")
        self.horizontalLayout_20.addWidget(self.label_157)
        self.conversion_type_combo = QtWidgets.QComboBox(parent=self.tab_spectral_distance)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.conversion_type_combo.sizePolicy().hasHeightForWidth())
        self.conversion_type_combo.setSizePolicy(sizePolicy)
        self.conversion_type_combo.setObjectName("conversion_type_combo")
        self.conversion_type_combo.addItem("")
        self.conversion_type_combo.addItem("")
        self.conversion_type_combo.addItem("")
        self.horizontalLayout_20.addWidget(self.conversion_type_combo)
        spacerItem29 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.horizontalLayout_20.addItem(spacerItem29)
        self.label_158 = QtWidgets.QLabel(parent=self.tab_spectral_distance)
        self.label_158.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_158.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_158.setObjectName("label_158")
        self.horizontalLayout_20.addWidget(self.label_158)
        self.area_precision_lineEdit = QtWidgets.QLineEdit(parent=self.tab_spectral_distance)
        self.area_precision_lineEdit.setObjectName("area_precision_lineEdit")
        self.horizontalLayout_20.addWidget(self.area_precision_lineEdit)
        self.gridLayout_61.addLayout(self.horizontalLayout_20, 5, 0, 1, 1)
        self.horizontalLayout_47 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_47.setObjectName("horizontalLayout_47")
        self.nodata_checkBox_10 = QtWidgets.QCheckBox(parent=self.tab_spectral_distance)
        self.nodata_checkBox_10.setObjectName("nodata_checkBox_10")
        self.horizontalLayout_47.addWidget(self.nodata_checkBox_10)
        self.nodata_spinBox_12 = QtWidgets.QSpinBox(parent=self.tab_spectral_distance)
        self.nodata_spinBox_12.setMinimum(-2147483647)
        self.nodata_spinBox_12.setMaximum(2147483647)
        self.nodata_spinBox_12.setObjectName("nodata_spinBox_12")
        self.horizontalLayout_47.addWidget(self.nodata_spinBox_12)
        spacerItem30 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.horizontalLayout_47.addItem(spacerItem30)
        self.gridLayout_61.addLayout(self.horizontalLayout_47, 6, 0, 1, 1)
        self.horizontalLayout_25 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_25.setObjectName("horizontalLayout_25")
        self.constant_value_radioButton = QtWidgets.QRadioButton(parent=self.tab_spectral_distance)
        self.constant_value_radioButton.setObjectName("constant_value_radioButton")
        self.horizontalLayout_25.addWidget(self.constant_value_radioButton)
        self.constant_value_spinBox = QtWidgets.QSpinBox(parent=self.tab_spectral_distance)
        self.constant_value_spinBox.setMinimum(-100000)
        self.constant_value_spinBox.setMaximum(100000)
        self.constant_value_spinBox.setProperty("value", 1)
        self.constant_value_spinBox.setObjectName("constant_value_spinBox")
        self.horizontalLayout_25.addWidget(self.constant_value_spinBox)
        spacerItem31 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.horizontalLayout_25.addItem(spacerItem31)
        self.gridLayout_61.addLayout(self.horizontalLayout_25, 3, 0, 1, 1)
        self.horizontalLayout_19 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_19.setObjectName("horizontalLayout_19")
        self.field_radioButton = QtWidgets.QRadioButton(parent=self.tab_spectral_distance)
        self.field_radioButton.setChecked(False)
        self.field_radioButton.setObjectName("field_radioButton")
        self.horizontalLayout_19.addWidget(self.field_radioButton)
        self.field_comboBox = QtWidgets.QComboBox(parent=self.tab_spectral_distance)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.field_comboBox.sizePolicy().hasHeightForWidth())
        self.field_comboBox.setSizePolicy(sizePolicy)
        self.field_comboBox.setObjectName("field_comboBox")
        self.horizontalLayout_19.addWidget(self.field_comboBox)
        self.gridLayout_61.addLayout(self.horizontalLayout_19, 2, 0, 1, 1)
        self.gridLayout_194 = QtWidgets.QGridLayout()
        self.gridLayout_194.setObjectName("gridLayout_194")
        self.label_156 = QtWidgets.QLabel(parent=self.tab_spectral_distance)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_156.sizePolicy().hasHeightForWidth())
        self.label_156.setSizePolicy(sizePolicy)
        self.label_156.setMinimumSize(QtCore.QSize(229, 0))
        self.label_156.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_156.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_156.setObjectName("label_156")
        self.gridLayout_194.addWidget(self.label_156, 0, 0, 1, 1)
        self.extent_checkBox_2 = QtWidgets.QCheckBox(parent=self.tab_spectral_distance)
        self.extent_checkBox_2.setChecked(True)
        self.extent_checkBox_2.setObjectName("extent_checkBox_2")
        self.gridLayout_194.addWidget(self.extent_checkBox_2, 2, 0, 1, 1)
        self.toolButton_reload_17 = QtWidgets.QToolButton(parent=self.tab_spectral_distance)
        self.toolButton_reload_17.setStyleSheet("margin: 0px;padding: 0px;")
        self.toolButton_reload_17.setIcon(icon25)
        self.toolButton_reload_17.setIconSize(QtCore.QSize(22, 22))
        self.toolButton_reload_17.setObjectName("toolButton_reload_17")
        self.gridLayout_194.addWidget(self.toolButton_reload_17, 0, 3, 1, 1)
        self.label_169 = QtWidgets.QLabel(parent=self.tab_spectral_distance)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_169.sizePolicy().hasHeightForWidth())
        self.label_169.setSizePolicy(sizePolicy)
        self.label_169.setMinimumSize(QtCore.QSize(229, 0))
        self.label_169.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_169.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_169.setObjectName("label_169")
        self.gridLayout_194.addWidget(self.label_169, 1, 0, 1, 1)
        self.pixel_size_lineEdit = QtWidgets.QLineEdit(parent=self.tab_spectral_distance)
        self.pixel_size_lineEdit.setText("")
        self.pixel_size_lineEdit.setObjectName("pixel_size_lineEdit")
        self.gridLayout_194.addWidget(self.pixel_size_lineEdit, 1, 1, 1, 1)
        self.reference_raster_name_combo = QtWidgets.QComboBox(parent=self.tab_spectral_distance)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.reference_raster_name_combo.sizePolicy().hasHeightForWidth())
        self.reference_raster_name_combo.setSizePolicy(sizePolicy)
        self.reference_raster_name_combo.setObjectName("reference_raster_name_combo")
        self.gridLayout_194.addWidget(self.reference_raster_name_combo, 0, 1, 1, 2)
        self.gridLayout_61.addLayout(self.gridLayout_194, 4, 0, 1, 1)
        self.gridLayout_210 = QtWidgets.QGridLayout()
        self.gridLayout_210.setObjectName("gridLayout_210")
        spacerItem32 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_210.addItem(spacerItem32, 0, 2, 1, 1)
        self.label_167 = QtWidgets.QLabel(parent=self.tab_spectral_distance)
        self.label_167.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_167.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_167.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_167.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_167.setObjectName("label_167")
        self.gridLayout_210.addWidget(self.label_167, 1, 0, 1, 3)
        spacerItem33 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_210.addItem(spacerItem33, 2, 0, 1, 1)
        self.convert_vector_toolButton = QtWidgets.QToolButton(parent=self.tab_spectral_distance)
        font = QtGui.QFont()
        font.setBold(True)
        self.convert_vector_toolButton.setFont(font)
        self.convert_vector_toolButton.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.convert_vector_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.convert_vector_toolButton.setIcon(icon8)
        self.convert_vector_toolButton.setIconSize(QtCore.QSize(34, 34))
        self.convert_vector_toolButton.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.convert_vector_toolButton.setObjectName("convert_vector_toolButton")
        self.gridLayout_210.addWidget(self.convert_vector_toolButton, 2, 2, 1, 1)
        self.vector_to_raster = QtWidgets.QToolButton(parent=self.tab_spectral_distance)
        font = QtGui.QFont()
        font.setBold(True)
        self.vector_to_raster.setFont(font)
        self.vector_to_raster.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.vector_to_raster.setStyleSheet("margin: 0px;padding: 0px;")
        self.vector_to_raster.setIcon(icon24)
        self.vector_to_raster.setIconSize(QtCore.QSize(34, 34))
        self.vector_to_raster.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.vector_to_raster.setObjectName("vector_to_raster")
        self.gridLayout_210.addWidget(self.vector_to_raster, 2, 1, 1, 1)
        self.gridLayout_61.addLayout(self.gridLayout_210, 7, 0, 1, 1)
        self.tabWidget_preprocessing.addTab(self.tab_spectral_distance, "")
        self.tab_clip = QtWidgets.QWidget()
        self.tab_clip.setObjectName("tab_clip")
        self.gridLayout_58 = QtWidgets.QGridLayout(self.tab_clip)
        self.gridLayout_58.setObjectName("gridLayout_58")
        self.gridLayout_51 = QtWidgets.QGridLayout()
        self.gridLayout_51.setObjectName("gridLayout_51")
        self.label_128 = QtWidgets.QLabel(parent=self.tab_clip)
        self.label_128.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_128.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_128.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_128.setObjectName("label_128")
        self.gridLayout_51.addWidget(self.label_128, 0, 0, 1, 1)
        self.gridLayout_58.addLayout(self.gridLayout_51, 0, 0, 1, 1)
        self.gridLayout_24 = QtWidgets.QGridLayout()
        self.gridLayout_24.setObjectName("gridLayout_24")
        self.output_clip_name_lineEdit = QtWidgets.QLineEdit(parent=self.tab_clip)
        self.output_clip_name_lineEdit.setMaxLength(10)
        self.output_clip_name_lineEdit.setObjectName("output_clip_name_lineEdit")
        self.gridLayout_24.addWidget(self.output_clip_name_lineEdit, 1, 1, 1, 2)
        self.clip_virtual_checkBox = QtWidgets.QCheckBox(parent=self.tab_clip)
        self.clip_virtual_checkBox.setObjectName("clip_virtual_checkBox")
        self.gridLayout_24.addWidget(self.clip_virtual_checkBox, 2, 0, 1, 1)
        self.label_62 = QtWidgets.QLabel(parent=self.tab_clip)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_62.sizePolicy().hasHeightForWidth())
        self.label_62.setSizePolicy(sizePolicy)
        self.label_62.setMinimumSize(QtCore.QSize(150, 0))
        self.label_62.setMaximumSize(QtCore.QSize(100, 16777215))
        font = QtGui.QFont()
        font.setBold(False)
        self.label_62.setFont(font)
        self.label_62.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_62.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_62.setObjectName("label_62")
        self.gridLayout_24.addWidget(self.label_62, 1, 0, 1, 1)
        self.band_set_comb_spinBox_2 = QtWidgets.QSpinBox(parent=self.tab_clip)
        self.band_set_comb_spinBox_2.setMinimum(1)
        self.band_set_comb_spinBox_2.setMaximum(100000)
        self.band_set_comb_spinBox_2.setObjectName("band_set_comb_spinBox_2")
        self.gridLayout_24.addWidget(self.band_set_comb_spinBox_2, 0, 1, 1, 1)
        self.label_251 = QtWidgets.QLabel(parent=self.tab_clip)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_251.sizePolicy().hasHeightForWidth())
        self.label_251.setSizePolicy(sizePolicy)
        font = QtGui.QFont()
        font.setBold(False)
        self.label_251.setFont(font)
        self.label_251.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_251.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_251.setObjectName("label_251")
        self.gridLayout_24.addWidget(self.label_251, 0, 0, 1, 1)
        self.gridLayout_58.addLayout(self.gridLayout_24, 1, 0, 1, 1)
        self.gridLayout_20 = QtWidgets.QGridLayout()
        self.gridLayout_20.setObjectName("gridLayout_20")
        self.show_area_radioButton_3 = QtWidgets.QRadioButton(parent=self.tab_clip)
        self.show_area_radioButton_3.setChecked(True)
        self.show_area_radioButton_3.setAutoExclusive(False)
        self.show_area_radioButton_3.setObjectName("show_area_radioButton_3")
        self.gridLayout_20.addWidget(self.show_area_radioButton_3, 1, 10, 1, 1)
        self.LY_lineEdit = QtWidgets.QLineEdit(parent=self.tab_clip)
        self.LY_lineEdit.setText("")
        self.LY_lineEdit.setMaxLength(10)
        self.LY_lineEdit.setObjectName("LY_lineEdit")
        self.gridLayout_20.addWidget(self.LY_lineEdit, 1, 8, 1, 1)
        self.label_11 = QtWidgets.QLabel(parent=self.tab_clip)
        self.label_11.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_11.setAlignment(QtCore.Qt.AlignmentFlag.AlignCenter)
        self.label_11.setObjectName("label_11")
        self.gridLayout_20.addWidget(self.label_11, 1, 1, 1, 3)
        self.LX_lineEdit = QtWidgets.QLineEdit(parent=self.tab_clip)
        self.LX_lineEdit.setText("")
        self.LX_lineEdit.setMaxLength(10)
        self.LX_lineEdit.setObjectName("LX_lineEdit")
        self.gridLayout_20.addWidget(self.LX_lineEdit, 1, 7, 1, 1)
        self.selectUL_toolButton = QtWidgets.QToolButton(parent=self.tab_clip)
        self.selectUL_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.selectUL_toolButton.setIcon(icon16)
        self.selectUL_toolButton.setIconSize(QtCore.QSize(22, 22))
        self.selectUL_toolButton.setObjectName("selectUL_toolButton")
        self.gridLayout_20.addWidget(self.selectUL_toolButton, 1, 11, 1, 1)
        spacerItem34 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_20.addItem(spacerItem34, 1, 9, 1, 1)
        self.label_12 = QtWidgets.QLabel(parent=self.tab_clip)
        self.label_12.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_12.setAlignment(QtCore.Qt.AlignmentFlag.AlignCenter)
        self.label_12.setObjectName("label_12")
        self.gridLayout_20.addWidget(self.label_12, 1, 6, 1, 1)
        self.UY_lineEdit = QtWidgets.QLineEdit(parent=self.tab_clip)
        self.UY_lineEdit.setText("")
        self.UY_lineEdit.setMaxLength(10)
        self.UY_lineEdit.setObjectName("UY_lineEdit")
        self.gridLayout_20.addWidget(self.UY_lineEdit, 1, 5, 1, 1)
        self.UX_lineEdit = QtWidgets.QLineEdit(parent=self.tab_clip)
        self.UX_lineEdit.setText("")
        self.UX_lineEdit.setMaxLength(10)
        self.UX_lineEdit.setObjectName("UX_lineEdit")
        self.gridLayout_20.addWidget(self.UX_lineEdit, 1, 4, 1, 1)
        self.coordinates_radioButton = QtWidgets.QRadioButton(parent=self.tab_clip)
        self.coordinates_radioButton.setChecked(True)
        self.coordinates_radioButton.setObjectName("coordinates_radioButton")
        self.gridLayout_20.addWidget(self.coordinates_radioButton, 1, 0, 1, 1)
        self.label_29 = QtWidgets.QLabel(parent=self.tab_clip)
        self.label_29.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_29.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_29.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_29.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_29.setObjectName("label_29")
        self.gridLayout_20.addWidget(self.label_29, 0, 0, 1, 12)
        self.gridLayout_58.addLayout(self.gridLayout_20, 2, 0, 1, 1)
        self.gridLayout_22 = QtWidgets.QGridLayout()
        self.gridLayout_22.setObjectName("gridLayout_22")
        self.shapefile_comboBox = QtWidgets.QComboBox(parent=self.tab_clip)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.shapefile_comboBox.sizePolicy().hasHeightForWidth())
        self.shapefile_comboBox.setSizePolicy(sizePolicy)
        self.shapefile_comboBox.setObjectName("shapefile_comboBox")
        self.gridLayout_22.addWidget(self.shapefile_comboBox, 0, 1, 1, 1)
        self.toolButton_reload_8 = QtWidgets.QToolButton(parent=self.tab_clip)
        self.toolButton_reload_8.setStyleSheet("margin: 0px;padding: 0px;")
        self.toolButton_reload_8.setIcon(icon25)
        self.toolButton_reload_8.setIconSize(QtCore.QSize(22, 22))
        self.toolButton_reload_8.setObjectName("toolButton_reload_8")
        self.gridLayout_22.addWidget(self.toolButton_reload_8, 0, 2, 1, 1)
        self.gridLayout_19 = QtWidgets.QGridLayout()
        self.gridLayout_19.setObjectName("gridLayout_19")
        self.vector_field_checkBox = QtWidgets.QCheckBox(parent=self.tab_clip)
        self.vector_field_checkBox.setObjectName("vector_field_checkBox")
        self.gridLayout_19.addWidget(self.vector_field_checkBox, 0, 0, 1, 1)
        self.class_field_comboBox_3 = QtWidgets.QComboBox(parent=self.tab_clip)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.MinimumExpanding, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.class_field_comboBox_3.sizePolicy().hasHeightForWidth())
        self.class_field_comboBox_3.setSizePolicy(sizePolicy)
        self.class_field_comboBox_3.setObjectName("class_field_comboBox_3")
        self.gridLayout_19.addWidget(self.class_field_comboBox_3, 0, 1, 1, 1)
        self.gridLayout_22.addLayout(self.gridLayout_19, 1, 1, 1, 1)
        self.temporary_ROI_radioButton = QtWidgets.QRadioButton(parent=self.tab_clip)
        self.temporary_ROI_radioButton.setObjectName("temporary_ROI_radioButton")
        self.gridLayout_22.addWidget(self.temporary_ROI_radioButton, 2, 0, 1, 1)
        self.vector_radioButton = QtWidgets.QRadioButton(parent=self.tab_clip)
        self.vector_radioButton.setObjectName("vector_radioButton")
        self.gridLayout_22.addWidget(self.vector_radioButton, 0, 0, 1, 1)
        self.gridLayout_58.addLayout(self.gridLayout_22, 3, 0, 1, 1)
        self.gridLayout_28 = QtWidgets.QGridLayout()
        self.gridLayout_28.setObjectName("gridLayout_28")
        spacerItem35 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_28.addItem(spacerItem35, 2, 0, 1, 1)
        self.label_164 = QtWidgets.QLabel(parent=self.tab_clip)
        self.label_164.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_164.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_164.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_164.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_164.setObjectName("label_164")
        self.gridLayout_28.addWidget(self.label_164, 1, 0, 1, 3)
        self.clip_Button = QtWidgets.QToolButton(parent=self.tab_clip)
        font = QtGui.QFont()
        font.setBold(True)
        self.clip_Button.setFont(font)
        self.clip_Button.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.clip_Button.setStyleSheet("margin: 0px;padding: 0px;")
        self.clip_Button.setIcon(icon8)
        self.clip_Button.setIconSize(QtCore.QSize(34, 34))
        self.clip_Button.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.clip_Button.setObjectName("clip_Button")
        self.gridLayout_28.addWidget(self.clip_Button, 2, 2, 1, 1)
        spacerItem36 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_28.addItem(spacerItem36, 0, 0, 1, 1)
        self.clip_multiple_rasters = QtWidgets.QToolButton(parent=self.tab_clip)
        font = QtGui.QFont()
        font.setBold(True)
        self.clip_multiple_rasters.setFont(font)
        self.clip_multiple_rasters.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.clip_multiple_rasters.setStyleSheet("margin: 0px;padding: 0px;")
        self.clip_multiple_rasters.setIcon(icon24)
        self.clip_multiple_rasters.setIconSize(QtCore.QSize(34, 34))
        self.clip_multiple_rasters.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.clip_multiple_rasters.setObjectName("clip_multiple_rasters")
        self.gridLayout_28.addWidget(self.clip_multiple_rasters, 2, 1, 1, 1)
        self.gridLayout_58.addLayout(self.gridLayout_28, 4, 0, 1, 1)
        self.tabWidget_preprocessing.addTab(self.tab_clip, "")
        self.tab_reproject_bands = QtWidgets.QWidget()
        self.tab_reproject_bands.setObjectName("tab_reproject_bands")
        self.gridLayout_56 = QtWidgets.QGridLayout(self.tab_reproject_bands)
        self.gridLayout_56.setObjectName("gridLayout_56")
        self.gridLayout_289 = QtWidgets.QGridLayout()
        self.gridLayout_289.setObjectName("gridLayout_289")
        self.band_set_comb_spinBox_14 = QtWidgets.QSpinBox(parent=self.tab_reproject_bands)
        self.band_set_comb_spinBox_14.setMinimum(1)
        self.band_set_comb_spinBox_14.setMaximum(100000)
        self.band_set_comb_spinBox_14.setObjectName("band_set_comb_spinBox_14")
        self.gridLayout_289.addWidget(self.band_set_comb_spinBox_14, 1, 1, 1, 1)
        self.label_264 = QtWidgets.QLabel(parent=self.tab_reproject_bands)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_264.sizePolicy().hasHeightForWidth())
        self.label_264.setSizePolicy(sizePolicy)
        self.label_264.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_264.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_264.setObjectName("label_264")
        self.gridLayout_289.addWidget(self.label_264, 1, 0, 1, 1)
        spacerItem37 = QtWidgets.QSpacerItem(605, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_289.addItem(spacerItem37, 1, 2, 1, 1)
        self.label_249 = QtWidgets.QLabel(parent=self.tab_reproject_bands)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_249.sizePolicy().hasHeightForWidth())
        self.label_249.setSizePolicy(sizePolicy)
        self.label_249.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_249.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_249.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_249.setObjectName("label_249")
        self.gridLayout_289.addWidget(self.label_249, 0, 0, 1, 3)
        self.gridLayout_56.addLayout(self.gridLayout_289, 0, 0, 1, 1)
        self.gridLayout_291 = QtWidgets.QGridLayout()
        self.gridLayout_291.setObjectName("gridLayout_291")
        self.align_radioButton = QtWidgets.QRadioButton(parent=self.tab_reproject_bands)
        self.align_radioButton.setObjectName("align_radioButton")
        self.gridLayout_291.addWidget(self.align_radioButton, 0, 0, 1, 1)
        self.toolButton_reload_25 = QtWidgets.QToolButton(parent=self.tab_reproject_bands)
        self.toolButton_reload_25.setStyleSheet("margin: 0px;padding: 0px;")
        self.toolButton_reload_25.setIcon(icon25)
        self.toolButton_reload_25.setIconSize(QtCore.QSize(22, 22))
        self.toolButton_reload_25.setObjectName("toolButton_reload_25")
        self.gridLayout_291.addWidget(self.toolButton_reload_25, 0, 3, 1, 1)
        self.same_extent_raster_checkBox = QtWidgets.QCheckBox(parent=self.tab_reproject_bands)
        self.same_extent_raster_checkBox.setObjectName("same_extent_raster_checkBox")
        self.gridLayout_291.addWidget(self.same_extent_raster_checkBox, 0, 1, 1, 1)
        self.raster_align_comboBox = QtWidgets.QComboBox(parent=self.tab_reproject_bands)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.raster_align_comboBox.sizePolicy().hasHeightForWidth())
        self.raster_align_comboBox.setSizePolicy(sizePolicy)
        self.raster_align_comboBox.setObjectName("raster_align_comboBox")
        self.gridLayout_291.addWidget(self.raster_align_comboBox, 0, 2, 1, 1)
        self.gridLayout_56.addLayout(self.gridLayout_291, 1, 0, 1, 1)
        self.gridLayout_292 = QtWidgets.QGridLayout()
        self.gridLayout_292.setObjectName("gridLayout_292")
        self.epsg_radioButton = QtWidgets.QRadioButton(parent=self.tab_reproject_bands)
        self.epsg_radioButton.setChecked(True)
        self.epsg_radioButton.setObjectName("epsg_radioButton")
        self.gridLayout_292.addWidget(self.epsg_radioButton, 0, 0, 1, 2)
        self.y_resolution_lineEdit = QtWidgets.QLineEdit(parent=self.tab_reproject_bands)
        self.y_resolution_lineEdit.setText("")
        self.y_resolution_lineEdit.setMaxLength(10)
        self.y_resolution_lineEdit.setObjectName("y_resolution_lineEdit")
        self.gridLayout_292.addWidget(self.y_resolution_lineEdit, 1, 6, 1, 1)
        self.label_267 = QtWidgets.QLabel(parent=self.tab_reproject_bands)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.MinimumExpanding, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_267.sizePolicy().hasHeightForWidth())
        self.label_267.setSizePolicy(sizePolicy)
        self.label_267.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_267.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_267.setObjectName("label_267")
        self.gridLayout_292.addWidget(self.label_267, 1, 5, 1, 1)
        self.label_266 = QtWidgets.QLabel(parent=self.tab_reproject_bands)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.MinimumExpanding, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_266.sizePolicy().hasHeightForWidth())
        self.label_266.setSizePolicy(sizePolicy)
        self.label_266.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_266.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_266.setObjectName("label_266")
        self.gridLayout_292.addWidget(self.label_266, 1, 0, 1, 2)
        self.epsg_code_lineEdit = QtWidgets.QLineEdit(parent=self.tab_reproject_bands)
        self.epsg_code_lineEdit.setText("")
        self.epsg_code_lineEdit.setMaxLength(10)
        self.epsg_code_lineEdit.setObjectName("epsg_code_lineEdit")
        self.gridLayout_292.addWidget(self.epsg_code_lineEdit, 0, 2, 1, 2)
        self.x_resolution_lineEdit = QtWidgets.QLineEdit(parent=self.tab_reproject_bands)
        self.x_resolution_lineEdit.setText("")
        self.x_resolution_lineEdit.setMaxLength(10)
        self.x_resolution_lineEdit.setObjectName("x_resolution_lineEdit")
        self.gridLayout_292.addWidget(self.x_resolution_lineEdit, 1, 2, 1, 2)
        spacerItem38 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_292.addItem(spacerItem38, 1, 7, 1, 1)
        spacerItem39 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_292.addItem(spacerItem39, 1, 4, 1, 1)
        spacerItem40 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_292.addItem(spacerItem40, 0, 4, 1, 4)
        self.gridLayout_56.addLayout(self.gridLayout_292, 2, 0, 1, 1)
        self.horizontalLayout_63 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_63.setObjectName("horizontalLayout_63")
        self.resample_checkBox = QtWidgets.QCheckBox(parent=self.tab_reproject_bands)
        self.resample_checkBox.setObjectName("resample_checkBox")
        self.horizontalLayout_63.addWidget(self.resample_checkBox)
        self.resample_lineEdit = QtWidgets.QLineEdit(parent=self.tab_reproject_bands)
        self.resample_lineEdit.setText("1")
        self.resample_lineEdit.setMaxLength(10)
        self.resample_lineEdit.setObjectName("resample_lineEdit")
        self.horizontalLayout_63.addWidget(self.resample_lineEdit)
        self.gridLayout_56.addLayout(self.horizontalLayout_63, 3, 0, 1, 1)
        self.horizontalLayout_64 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_64.setObjectName("horizontalLayout_64")
        self.label_269 = QtWidgets.QLabel(parent=self.tab_reproject_bands)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.MinimumExpanding, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_269.sizePolicy().hasHeightForWidth())
        self.label_269.setSizePolicy(sizePolicy)
        self.label_269.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_269.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_269.setObjectName("label_269")
        self.horizontalLayout_64.addWidget(self.label_269)
        self.resampling_method_comboBox = QtWidgets.QComboBox(parent=self.tab_reproject_bands)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.resampling_method_comboBox.sizePolicy().hasHeightForWidth())
        self.resampling_method_comboBox.setSizePolicy(sizePolicy)
        self.resampling_method_comboBox.setObjectName("resampling_method_comboBox")
        self.resampling_method_comboBox.addItem("")
        self.resampling_method_comboBox.addItem("")
        self.resampling_method_comboBox.addItem("")
        self.resampling_method_comboBox.addItem("")
        self.resampling_method_comboBox.addItem("")
        self.resampling_method_comboBox.addItem("")
        self.resampling_method_comboBox.addItem("")
        self.resampling_method_comboBox.addItem("")
        self.resampling_method_comboBox.addItem("")
        self.horizontalLayout_64.addWidget(self.resampling_method_comboBox)
        spacerItem41 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.horizontalLayout_64.addItem(spacerItem41)
        self.label_270 = QtWidgets.QLabel(parent=self.tab_reproject_bands)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.MinimumExpanding, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_270.sizePolicy().hasHeightForWidth())
        self.label_270.setSizePolicy(sizePolicy)
        self.label_270.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_270.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_270.setObjectName("label_270")
        self.horizontalLayout_64.addWidget(self.label_270)
        self.raster_type_combo_2 = QtWidgets.QComboBox(parent=self.tab_reproject_bands)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.raster_type_combo_2.sizePolicy().hasHeightForWidth())
        self.raster_type_combo_2.setSizePolicy(sizePolicy)
        self.raster_type_combo_2.setObjectName("raster_type_combo_2")
        self.raster_type_combo_2.addItem("")
        self.raster_type_combo_2.addItem("")
        self.raster_type_combo_2.addItem("")
        self.raster_type_combo_2.addItem("")
        self.raster_type_combo_2.addItem("")
        self.raster_type_combo_2.addItem("")
        self.raster_type_combo_2.addItem("")
        self.horizontalLayout_64.addWidget(self.raster_type_combo_2)
        self.gridLayout_56.addLayout(self.horizontalLayout_64, 4, 0, 1, 1)
        self.horizontalLayout_66 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_66.setObjectName("horizontalLayout_66")
        self.change_nodata_checkBox = QtWidgets.QCheckBox(parent=self.tab_reproject_bands)
        self.change_nodata_checkBox.setObjectName("change_nodata_checkBox")
        self.horizontalLayout_66.addWidget(self.change_nodata_checkBox)
        self.nodata_spinBox_14 = QtWidgets.QSpinBox(parent=self.tab_reproject_bands)
        self.nodata_spinBox_14.setMinimum(-2147483647)
        self.nodata_spinBox_14.setMaximum(2147483647)
        self.nodata_spinBox_14.setProperty("value", -32768)
        self.nodata_spinBox_14.setObjectName("nodata_spinBox_14")
        self.horizontalLayout_66.addWidget(self.nodata_spinBox_14)
        spacerItem42 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.horizontalLayout_66.addItem(spacerItem42)
        self.gridLayout_56.addLayout(self.horizontalLayout_66, 5, 0, 1, 1)
        self.horizontalLayout_68 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_68.setObjectName("horizontalLayout_68")
        self.label_265 = QtWidgets.QLabel(parent=self.tab_reproject_bands)
        self.label_265.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_265.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_265.setObjectName("label_265")
        self.horizontalLayout_68.addWidget(self.label_265)
        self.reproj_output_name_lineEdit = QtWidgets.QLineEdit(parent=self.tab_reproject_bands)
        self.reproj_output_name_lineEdit.setMaxLength(10)
        self.reproj_output_name_lineEdit.setObjectName("reproj_output_name_lineEdit")
        self.horizontalLayout_68.addWidget(self.reproj_output_name_lineEdit)
        self.virtual_output_checkBox_4 = QtWidgets.QCheckBox(parent=self.tab_reproject_bands)
        self.virtual_output_checkBox_4.setObjectName("virtual_output_checkBox_4")
        self.horizontalLayout_68.addWidget(self.virtual_output_checkBox_4)
        self.gridLayout_56.addLayout(self.horizontalLayout_68, 6, 0, 1, 1)
        self.horizontalLayout_80 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_80.setObjectName("horizontalLayout_80")
        self.compress_checkBox = QtWidgets.QCheckBox(parent=self.tab_reproject_bands)
        self.compress_checkBox.setChecked(True)
        self.compress_checkBox.setObjectName("compress_checkBox")
        self.horizontalLayout_80.addWidget(self.compress_checkBox)
        self.resample_lineEdit_2 = QtWidgets.QLineEdit(parent=self.tab_reproject_bands)
        self.resample_lineEdit_2.setText("LZW")
        self.resample_lineEdit_2.setMaxLength(10)
        self.resample_lineEdit_2.setObjectName("resample_lineEdit_2")
        self.horizontalLayout_80.addWidget(self.resample_lineEdit_2)
        spacerItem43 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.horizontalLayout_80.addItem(spacerItem43)
        self.gridLayout_56.addLayout(self.horizontalLayout_80, 7, 0, 1, 1)
        spacerItem44 = QtWidgets.QSpacerItem(20, 198, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_56.addItem(spacerItem44, 8, 0, 1, 1)
        self.gridLayout_290 = QtWidgets.QGridLayout()
        self.gridLayout_290.setObjectName("gridLayout_290")
        self.label_263 = QtWidgets.QLabel(parent=self.tab_reproject_bands)
        self.label_263.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_263.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_263.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_263.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_263.setObjectName("label_263")
        self.gridLayout_290.addWidget(self.label_263, 0, 0, 1, 2)
        self.horizontalLayout_59 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_59.setObjectName("horizontalLayout_59")
        spacerItem45 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.horizontalLayout_59.addItem(spacerItem45)
        self.reproject_raster_bands = QtWidgets.QToolButton(parent=self.tab_reproject_bands)
        font = QtGui.QFont()
        font.setBold(True)
        self.reproject_raster_bands.setFont(font)
        self.reproject_raster_bands.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.reproject_raster_bands.setStyleSheet("margin: 0px;padding: 0px;")
        self.reproject_raster_bands.setIcon(icon24)
        self.reproject_raster_bands.setIconSize(QtCore.QSize(34, 34))
        self.reproject_raster_bands.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.reproject_raster_bands.setObjectName("reproject_raster_bands")
        self.horizontalLayout_59.addWidget(self.reproject_raster_bands)
        self.reproject_Button = QtWidgets.QToolButton(parent=self.tab_reproject_bands)
        font = QtGui.QFont()
        font.setBold(True)
        self.reproject_Button.setFont(font)
        self.reproject_Button.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.reproject_Button.setStyleSheet("margin: 0px;padding: 0px;")
        self.reproject_Button.setIcon(icon8)
        self.reproject_Button.setIconSize(QtCore.QSize(34, 34))
        self.reproject_Button.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.reproject_Button.setObjectName("reproject_Button")
        self.horizontalLayout_59.addWidget(self.reproject_Button)
        self.gridLayout_290.addLayout(self.horizontalLayout_59, 2, 0, 1, 2)
        self.gridLayout_56.addLayout(self.gridLayout_290, 9, 0, 1, 1)
        self.tabWidget_preprocessing.addTab(self.tab_reproject_bands, "")
        self.tab_split_raster = QtWidgets.QWidget()
        self.tab_split_raster.setObjectName("tab_split_raster")
        self.gridLayout_57 = QtWidgets.QGridLayout(self.tab_split_raster)
        self.gridLayout_57.setObjectName("gridLayout_57")
        spacerItem46 = QtWidgets.QSpacerItem(20, 302, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_57.addItem(spacerItem46, 3, 1, 1, 1)
        self.gridLayout_190 = QtWidgets.QGridLayout()
        self.gridLayout_190.setObjectName("gridLayout_190")
        self.raster_name_combo = QtWidgets.QComboBox(parent=self.tab_split_raster)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.raster_name_combo.sizePolicy().hasHeightForWidth())
        self.raster_name_combo.setSizePolicy(sizePolicy)
        self.raster_name_combo.setObjectName("raster_name_combo")
        self.gridLayout_190.addWidget(self.raster_name_combo, 1, 1, 1, 1)
        self.label_57 = QtWidgets.QLabel(parent=self.tab_split_raster)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_57.sizePolicy().hasHeightForWidth())
        self.label_57.setSizePolicy(sizePolicy)
        self.label_57.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_57.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_57.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_57.setObjectName("label_57")
        self.gridLayout_190.addWidget(self.label_57, 0, 0, 1, 3)
        self.label_50 = QtWidgets.QLabel(parent=self.tab_split_raster)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_50.sizePolicy().hasHeightForWidth())
        self.label_50.setSizePolicy(sizePolicy)
        self.label_50.setMinimumSize(QtCore.QSize(229, 0))
        self.label_50.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_50.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_50.setObjectName("label_50")
        self.gridLayout_190.addWidget(self.label_50, 1, 0, 1, 1)
        self.toolButton_reload_9 = QtWidgets.QToolButton(parent=self.tab_split_raster)
        self.toolButton_reload_9.setStyleSheet("margin: 0px;padding: 0px;")
        self.toolButton_reload_9.setIcon(icon25)
        self.toolButton_reload_9.setIconSize(QtCore.QSize(22, 22))
        self.toolButton_reload_9.setObjectName("toolButton_reload_9")
        self.gridLayout_190.addWidget(self.toolButton_reload_9, 1, 2, 1, 1)
        self.gridLayout_57.addLayout(self.gridLayout_190, 0, 0, 1, 4)
        self.label_165 = QtWidgets.QLabel(parent=self.tab_split_raster)
        self.label_165.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_165.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_165.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_165.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_165.setObjectName("label_165")
        self.gridLayout_57.addWidget(self.label_165, 4, 0, 1, 4)
        self.horizontalLayout_57 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_57.setObjectName("horizontalLayout_57")
        self.label_61 = QtWidgets.QLabel(parent=self.tab_split_raster)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_61.sizePolicy().hasHeightForWidth())
        self.label_61.setSizePolicy(sizePolicy)
        self.label_61.setMinimumSize(QtCore.QSize(229, 0))
        self.label_61.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_61.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_61.setObjectName("label_61")
        self.horizontalLayout_57.addWidget(self.label_61)
        self.output_name_lineEdit = QtWidgets.QLineEdit(parent=self.tab_split_raster)
        self.output_name_lineEdit.setMaxLength(10)
        self.output_name_lineEdit.setObjectName("output_name_lineEdit")
        self.horizontalLayout_57.addWidget(self.output_name_lineEdit)
        self.gridLayout_57.addLayout(self.horizontalLayout_57, 1, 0, 1, 4)
        self.horizontalLayout_54 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_54.setObjectName("horizontalLayout_54")
        spacerItem47 = QtWidgets.QSpacerItem(667, 38, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.horizontalLayout_54.addItem(spacerItem47)
        self.split_raster_bands = QtWidgets.QToolButton(parent=self.tab_split_raster)
        font = QtGui.QFont()
        font.setBold(True)
        self.split_raster_bands.setFont(font)
        self.split_raster_bands.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.split_raster_bands.setStyleSheet("margin: 0px;padding: 0px;")
        self.split_raster_bands.setIcon(icon24)
        self.split_raster_bands.setIconSize(QtCore.QSize(34, 34))
        self.split_raster_bands.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.split_raster_bands.setObjectName("split_raster_bands")
        self.horizontalLayout_54.addWidget(self.split_raster_bands)
        self.split_Button = QtWidgets.QToolButton(parent=self.tab_split_raster)
        font = QtGui.QFont()
        font.setBold(True)
        self.split_Button.setFont(font)
        self.split_Button.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.split_Button.setStyleSheet("margin: 0px;padding: 0px;")
        self.split_Button.setIcon(icon8)
        self.split_Button.setIconSize(QtCore.QSize(34, 34))
        self.split_Button.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.split_Button.setObjectName("split_Button")
        self.horizontalLayout_54.addWidget(self.split_Button)
        self.gridLayout_57.addLayout(self.horizontalLayout_54, 5, 0, 1, 4)
        self.tabWidget_preprocessing.addTab(self.tab_split_raster, "")
        self.tab_stack_bands = QtWidgets.QWidget()
        self.tab_stack_bands.setObjectName("tab_stack_bands")
        self.gridLayout_23 = QtWidgets.QGridLayout(self.tab_stack_bands)
        self.gridLayout_23.setObjectName("gridLayout_23")
        self.label_252 = QtWidgets.QLabel(parent=self.tab_stack_bands)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_252.sizePolicy().hasHeightForWidth())
        self.label_252.setSizePolicy(sizePolicy)
        self.label_252.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_252.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_252.setObjectName("label_252")
        self.gridLayout_23.addWidget(self.label_252, 1, 0, 1, 1)
        self.band_set_comb_spinBox_3 = QtWidgets.QSpinBox(parent=self.tab_stack_bands)
        self.band_set_comb_spinBox_3.setMinimum(1)
        self.band_set_comb_spinBox_3.setMaximum(100000)
        self.band_set_comb_spinBox_3.setObjectName("band_set_comb_spinBox_3")
        self.gridLayout_23.addWidget(self.band_set_comb_spinBox_3, 1, 1, 1, 1)
        spacerItem48 = QtWidgets.QSpacerItem(647, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_23.addItem(spacerItem48, 1, 3, 1, 1)
        spacerItem49 = QtWidgets.QSpacerItem(20, 339, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_23.addItem(spacerItem49, 2, 0, 1, 1)
        self.horizontalLayout_53 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_53.setObjectName("horizontalLayout_53")
        spacerItem50 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.horizontalLayout_53.addItem(spacerItem50)
        self.stack_raster_bands = QtWidgets.QToolButton(parent=self.tab_stack_bands)
        font = QtGui.QFont()
        font.setBold(True)
        self.stack_raster_bands.setFont(font)
        self.stack_raster_bands.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.stack_raster_bands.setStyleSheet("margin: 0px;padding: 0px;")
        self.stack_raster_bands.setIcon(icon24)
        self.stack_raster_bands.setIconSize(QtCore.QSize(34, 34))
        self.stack_raster_bands.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.stack_raster_bands.setObjectName("stack_raster_bands")
        self.horizontalLayout_53.addWidget(self.stack_raster_bands)
        self.stack_Button = QtWidgets.QToolButton(parent=self.tab_stack_bands)
        font = QtGui.QFont()
        font.setBold(True)
        self.stack_Button.setFont(font)
        self.stack_Button.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.stack_Button.setStyleSheet("margin: 0px;padding: 0px;")
        self.stack_Button.setIcon(icon8)
        self.stack_Button.setIconSize(QtCore.QSize(34, 34))
        self.stack_Button.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.stack_Button.setObjectName("stack_Button")
        self.horizontalLayout_53.addWidget(self.stack_Button)
        self.gridLayout_23.addLayout(self.horizontalLayout_53, 4, 0, 1, 4)
        self.label_223 = QtWidgets.QLabel(parent=self.tab_stack_bands)
        self.label_223.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_223.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_223.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_223.setObjectName("label_223")
        self.gridLayout_23.addWidget(self.label_223, 0, 0, 1, 4)
        self.label_226 = QtWidgets.QLabel(parent=self.tab_stack_bands)
        self.label_226.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_226.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_226.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_226.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_226.setObjectName("label_226")
        self.gridLayout_23.addWidget(self.label_226, 3, 0, 1, 4)
        self.tabWidget_preprocessing.addTab(self.tab_stack_bands, "")
        self.tab_mosaic_band_sets = QtWidgets.QWidget()
        self.tab_mosaic_band_sets.setObjectName("tab_mosaic_band_sets")
        self.gridLayout_69 = QtWidgets.QGridLayout(self.tab_mosaic_band_sets)
        self.gridLayout_69.setObjectName("gridLayout_69")
        self.horizontalLayout_28 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_28.setObjectName("horizontalLayout_28")
        self.label_134 = QtWidgets.QLabel(parent=self.tab_mosaic_band_sets)
        self.label_134.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_134.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_134.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_134.setObjectName("label_134")
        self.horizontalLayout_28.addWidget(self.label_134)
        self.gridLayout_69.addLayout(self.horizontalLayout_28, 0, 0, 1, 1)
        self.gridLayout_66 = QtWidgets.QGridLayout()
        self.gridLayout_66.setObjectName("gridLayout_66")
        self.nodata_checkBox_9 = QtWidgets.QCheckBox(parent=self.tab_mosaic_band_sets)
        self.nodata_checkBox_9.setObjectName("nodata_checkBox_9")
        self.gridLayout_66.addWidget(self.nodata_checkBox_9, 1, 0, 1, 1)
        spacerItem51 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_66.addItem(spacerItem51, 1, 2, 1, 1)
        self.mosaic_virtual_checkBox = QtWidgets.QCheckBox(parent=self.tab_mosaic_band_sets)
        self.mosaic_virtual_checkBox.setObjectName("mosaic_virtual_checkBox")
        self.gridLayout_66.addWidget(self.mosaic_virtual_checkBox, 2, 0, 1, 1)
        self.mosaic_output_prefix = QtWidgets.QLineEdit(parent=self.tab_mosaic_band_sets)
        self.mosaic_output_prefix.setMaxLength(10)
        self.mosaic_output_prefix.setObjectName("mosaic_output_prefix")
        self.gridLayout_66.addWidget(self.mosaic_output_prefix, 3, 1, 1, 1)
        self.nodata_spinBox_10 = QtWidgets.QSpinBox(parent=self.tab_mosaic_band_sets)
        self.nodata_spinBox_10.setMinimum(-2147483647)
        self.nodata_spinBox_10.setMaximum(2147483647)
        self.nodata_spinBox_10.setObjectName("nodata_spinBox_10")
        self.gridLayout_66.addWidget(self.nodata_spinBox_10, 1, 1, 1, 1)
        self.mosaic_output_name_lineEdit = QtWidgets.QLineEdit(parent=self.tab_mosaic_band_sets)
        self.mosaic_output_name_lineEdit.setMaxLength(10)
        self.mosaic_output_name_lineEdit.setObjectName("mosaic_output_name_lineEdit")
        self.gridLayout_66.addWidget(self.mosaic_output_name_lineEdit, 4, 1, 1, 1)
        self.label_135 = QtWidgets.QLabel(parent=self.tab_mosaic_band_sets)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_135.sizePolicy().hasHeightForWidth())
        self.label_135.setSizePolicy(sizePolicy)
        self.label_135.setMinimumSize(QtCore.QSize(229, 0))
        self.label_135.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_135.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_135.setObjectName("label_135")
        self.gridLayout_66.addWidget(self.label_135, 4, 0, 1, 1)
        self.label_137 = QtWidgets.QLabel(parent=self.tab_mosaic_band_sets)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_137.sizePolicy().hasHeightForWidth())
        self.label_137.setSizePolicy(sizePolicy)
        self.label_137.setMinimumSize(QtCore.QSize(229, 0))
        self.label_137.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_137.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_137.setObjectName("label_137")
        self.gridLayout_66.addWidget(self.label_137, 3, 0, 1, 1)
        self.mosaic_band_sets_lineEdit = QtWidgets.QLineEdit(parent=self.tab_mosaic_band_sets)
        self.mosaic_band_sets_lineEdit.setText("1, 2")
        self.mosaic_band_sets_lineEdit.setObjectName("mosaic_band_sets_lineEdit")
        self.gridLayout_66.addWidget(self.mosaic_band_sets_lineEdit, 0, 1, 1, 2)
        self.label_144 = QtWidgets.QLabel(parent=self.tab_mosaic_band_sets)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_144.sizePolicy().hasHeightForWidth())
        self.label_144.setSizePolicy(sizePolicy)
        self.label_144.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_144.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_144.setObjectName("label_144")
        self.gridLayout_66.addWidget(self.label_144, 0, 0, 1, 1)
        self.gridLayout_69.addLayout(self.gridLayout_66, 1, 0, 1, 1)
        spacerItem52 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_69.addItem(spacerItem52, 2, 0, 1, 1)
        self.gridLayout_228 = QtWidgets.QGridLayout()
        self.gridLayout_228.setObjectName("gridLayout_228")
        spacerItem53 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_228.addItem(spacerItem53, 1, 0, 1, 1)
        self.mosaic_bandsets_toolButton = QtWidgets.QToolButton(parent=self.tab_mosaic_band_sets)
        font = QtGui.QFont()
        font.setBold(True)
        self.mosaic_bandsets_toolButton.setFont(font)
        self.mosaic_bandsets_toolButton.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.mosaic_bandsets_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.mosaic_bandsets_toolButton.setIcon(icon8)
        self.mosaic_bandsets_toolButton.setIconSize(QtCore.QSize(34, 34))
        self.mosaic_bandsets_toolButton.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.mosaic_bandsets_toolButton.setObjectName("mosaic_bandsets_toolButton")
        self.gridLayout_228.addWidget(self.mosaic_bandsets_toolButton, 1, 2, 1, 1)
        self.mosaic_bandsets = QtWidgets.QToolButton(parent=self.tab_mosaic_band_sets)
        font = QtGui.QFont()
        font.setBold(True)
        self.mosaic_bandsets.setFont(font)
        self.mosaic_bandsets.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.mosaic_bandsets.setStyleSheet("margin: 0px;padding: 0px;")
        self.mosaic_bandsets.setIcon(icon24)
        self.mosaic_bandsets.setIconSize(QtCore.QSize(34, 34))
        self.mosaic_bandsets.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.mosaic_bandsets.setObjectName("mosaic_bandsets")
        self.gridLayout_228.addWidget(self.mosaic_bandsets, 1, 1, 1, 1)
        self.label_182 = QtWidgets.QLabel(parent=self.tab_mosaic_band_sets)
        self.label_182.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_182.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_182.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_182.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_182.setObjectName("label_182")
        self.gridLayout_228.addWidget(self.label_182, 0, 0, 1, 3)
        self.gridLayout_69.addLayout(self.gridLayout_228, 3, 0, 1, 1)
        self.tabWidget_preprocessing.addTab(self.tab_mosaic_band_sets, "")
        self.tab_cloud_mask = QtWidgets.QWidget()
        self.tab_cloud_mask.setObjectName("tab_cloud_mask")
        self.gridLayout_76 = QtWidgets.QGridLayout(self.tab_cloud_mask)
        self.gridLayout_76.setObjectName("gridLayout_76")
        self.horizontalLayout_33 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_33.setObjectName("horizontalLayout_33")
        self.label_138 = QtWidgets.QLabel(parent=self.tab_cloud_mask)
        self.label_138.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_138.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_138.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_138.setObjectName("label_138")
        self.horizontalLayout_33.addWidget(self.label_138)
        self.gridLayout_76.addLayout(self.horizontalLayout_33, 0, 0, 1, 1)
        self.gridLayout_261 = QtWidgets.QGridLayout()
        self.gridLayout_261.setObjectName("gridLayout_261")
        self.label_260 = QtWidgets.QLabel(parent=self.tab_cloud_mask)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_260.sizePolicy().hasHeightForWidth())
        self.label_260.setSizePolicy(sizePolicy)
        self.label_260.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_260.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_260.setObjectName("label_260")
        self.gridLayout_261.addWidget(self.label_260, 0, 0, 1, 1)
        spacerItem54 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_261.addItem(spacerItem54, 0, 2, 1, 1)
        self.band_set_comb_spinBox_9 = QtWidgets.QSpinBox(parent=self.tab_cloud_mask)
        self.band_set_comb_spinBox_9.setMinimum(1)
        self.band_set_comb_spinBox_9.setMaximum(100000)
        self.band_set_comb_spinBox_9.setObjectName("band_set_comb_spinBox_9")
        self.gridLayout_261.addWidget(self.band_set_comb_spinBox_9, 0, 1, 1, 1)
        self.gridLayout_76.addLayout(self.gridLayout_261, 1, 0, 1, 1)
        self.gridLayout_106 = QtWidgets.QGridLayout()
        self.gridLayout_106.setObjectName("gridLayout_106")
        self.classification_name_combo_4 = QtWidgets.QComboBox(parent=self.tab_cloud_mask)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.classification_name_combo_4.sizePolicy().hasHeightForWidth())
        self.classification_name_combo_4.setSizePolicy(sizePolicy)
        self.classification_name_combo_4.setObjectName("classification_name_combo_4")
        self.gridLayout_106.addWidget(self.classification_name_combo_4, 0, 1, 1, 1)
        self.cloud_mask_classes_lineEdit = QtWidgets.QLineEdit(parent=self.tab_cloud_mask)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.MinimumExpanding, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.cloud_mask_classes_lineEdit.sizePolicy().hasHeightForWidth())
        self.cloud_mask_classes_lineEdit.setSizePolicy(sizePolicy)
        self.cloud_mask_classes_lineEdit.setMinimumSize(QtCore.QSize(400, 26))
        self.cloud_mask_classes_lineEdit.setText("")
        self.cloud_mask_classes_lineEdit.setMaxLength(10000)
        self.cloud_mask_classes_lineEdit.setObjectName("cloud_mask_classes_lineEdit")
        self.gridLayout_106.addWidget(self.cloud_mask_classes_lineEdit, 1, 1, 1, 1)
        self.label_203 = QtWidgets.QLabel(parent=self.tab_cloud_mask)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.MinimumExpanding, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_203.sizePolicy().hasHeightForWidth())
        self.label_203.setSizePolicy(sizePolicy)
        self.label_203.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_203.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_203.setObjectName("label_203")
        self.gridLayout_106.addWidget(self.label_203, 1, 0, 1, 1)
        self.label_186 = QtWidgets.QLabel(parent=self.tab_cloud_mask)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_186.sizePolicy().hasHeightForWidth())
        self.label_186.setSizePolicy(sizePolicy)
        self.label_186.setMinimumSize(QtCore.QSize(229, 0))
        self.label_186.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_186.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_186.setObjectName("label_186")
        self.gridLayout_106.addWidget(self.label_186, 0, 0, 1, 1)
        self.toolButton_reload_23 = QtWidgets.QToolButton(parent=self.tab_cloud_mask)
        self.toolButton_reload_23.setStyleSheet("margin: 0px;padding: 0px;")
        self.toolButton_reload_23.setIcon(icon25)
        self.toolButton_reload_23.setIconSize(QtCore.QSize(22, 22))
        self.toolButton_reload_23.setObjectName("toolButton_reload_23")
        self.gridLayout_106.addWidget(self.toolButton_reload_23, 0, 2, 1, 1)
        self.gridLayout_76.addLayout(self.gridLayout_106, 2, 0, 1, 1)
        self.gridLayout_143 = QtWidgets.QGridLayout()
        self.gridLayout_143.setObjectName("gridLayout_143")
        self.mask_output_name_lineEdit = QtWidgets.QLineEdit(parent=self.tab_cloud_mask)
        self.mask_output_name_lineEdit.setMaxLength(10)
        self.mask_output_name_lineEdit.setObjectName("mask_output_name_lineEdit")
        self.gridLayout_143.addWidget(self.mask_output_name_lineEdit, 2, 1, 1, 1)
        self.gridLayout_145 = QtWidgets.QGridLayout()
        self.gridLayout_145.setObjectName("gridLayout_145")
        spacerItem55 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_145.addItem(spacerItem55, 0, 2, 1, 1)
        self.cloud_buffer_checkBox = QtWidgets.QCheckBox(parent=self.tab_cloud_mask)
        self.cloud_buffer_checkBox.setEnabled(True)
        self.cloud_buffer_checkBox.setObjectName("cloud_buffer_checkBox")
        self.gridLayout_145.addWidget(self.cloud_buffer_checkBox, 0, 0, 1, 1)
        self.nodata_spinBox_11 = QtWidgets.QSpinBox(parent=self.tab_cloud_mask)
        self.nodata_spinBox_11.setMinimum(-2147483647)
        self.nodata_spinBox_11.setMaximum(2147483647)
        self.nodata_spinBox_11.setProperty("value", -32768)
        self.nodata_spinBox_11.setObjectName("nodata_spinBox_11")
        self.gridLayout_145.addWidget(self.nodata_spinBox_11, 1, 1, 1, 1)
        self.label_141 = QtWidgets.QLabel(parent=self.tab_cloud_mask)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_141.sizePolicy().hasHeightForWidth())
        self.label_141.setSizePolicy(sizePolicy)
        self.label_141.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_141.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_141.setObjectName("label_141")
        self.gridLayout_145.addWidget(self.label_141, 1, 0, 1, 1)
        self.cloud_buffer_spinBox = QtWidgets.QSpinBox(parent=self.tab_cloud_mask)
        self.cloud_buffer_spinBox.setMinimum(1)
        self.cloud_buffer_spinBox.setMaximum(1000)
        self.cloud_buffer_spinBox.setProperty("value", 1)
        self.cloud_buffer_spinBox.setObjectName("cloud_buffer_spinBox")
        self.gridLayout_145.addWidget(self.cloud_buffer_spinBox, 0, 1, 1, 1)
        self.gridLayout_143.addLayout(self.gridLayout_145, 0, 0, 1, 2)
        self.label_140 = QtWidgets.QLabel(parent=self.tab_cloud_mask)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_140.sizePolicy().hasHeightForWidth())
        self.label_140.setSizePolicy(sizePolicy)
        self.label_140.setMinimumSize(QtCore.QSize(229, 0))
        self.label_140.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_140.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_140.setObjectName("label_140")
        self.gridLayout_143.addWidget(self.label_140, 2, 0, 1, 1)
        self.mask_virtual_checkBox = QtWidgets.QCheckBox(parent=self.tab_cloud_mask)
        self.mask_virtual_checkBox.setObjectName("mask_virtual_checkBox")
        self.gridLayout_143.addWidget(self.mask_virtual_checkBox, 1, 0, 1, 1)
        self.gridLayout_76.addLayout(self.gridLayout_143, 3, 0, 1, 1)
        spacerItem56 = QtWidgets.QSpacerItem(20, 173, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_76.addItem(spacerItem56, 4, 0, 1, 1)
        self.gridLayout_257 = QtWidgets.QGridLayout()
        self.gridLayout_257.setObjectName("gridLayout_257")
        self.cloud_mask_toolButton = QtWidgets.QToolButton(parent=self.tab_cloud_mask)
        font = QtGui.QFont()
        font.setBold(True)
        self.cloud_mask_toolButton.setFont(font)
        self.cloud_mask_toolButton.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.cloud_mask_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.cloud_mask_toolButton.setIcon(icon8)
        self.cloud_mask_toolButton.setIconSize(QtCore.QSize(34, 34))
        self.cloud_mask_toolButton.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.cloud_mask_toolButton.setObjectName("cloud_mask_toolButton")
        self.gridLayout_257.addWidget(self.cloud_mask_toolButton, 1, 2, 1, 1)
        self.cloud_masking = QtWidgets.QToolButton(parent=self.tab_cloud_mask)
        font = QtGui.QFont()
        font.setBold(True)
        self.cloud_masking.setFont(font)
        self.cloud_masking.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.cloud_masking.setStyleSheet("margin: 0px;padding: 0px;")
        self.cloud_masking.setIcon(icon24)
        self.cloud_masking.setIconSize(QtCore.QSize(34, 34))
        self.cloud_masking.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.cloud_masking.setObjectName("cloud_masking")
        self.gridLayout_257.addWidget(self.cloud_masking, 1, 1, 1, 1)
        spacerItem57 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_257.addItem(spacerItem57, 1, 0, 1, 1)
        self.label_185 = QtWidgets.QLabel(parent=self.tab_cloud_mask)
        self.label_185.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_185.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_185.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_185.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_185.setObjectName("label_185")
        self.gridLayout_257.addWidget(self.label_185, 0, 0, 1, 3)
        self.gridLayout_76.addLayout(self.gridLayout_257, 5, 0, 1, 1)
        self.tabWidget_preprocessing.addTab(self.tab_cloud_mask, "")
        self.gridLayout_6.addWidget(self.tabWidget_preprocessing, 0, 0, 1, 1)
        self.SCP_tabs.addTab(self.tab_preprocessing, "")
        self.tab_band_processing = QtWidgets.QWidget()
        self.tab_band_processing.setObjectName("tab_band_processing")
        self.gridLayout_128 = QtWidgets.QGridLayout(self.tab_band_processing)
        self.gridLayout_128.setObjectName("gridLayout_128")
        self.tabWidget_4 = QtWidgets.QTabWidget(parent=self.tab_band_processing)
        self.tabWidget_4.setStyleSheet("")
        self.tabWidget_4.setIconSize(QtCore.QSize(20, 20))
        self.tabWidget_4.setDocumentMode(True)
        self.tabWidget_4.setObjectName("tabWidget_4")
        self.tab_bandset_combination_2 = QtWidgets.QWidget()
        self.tab_bandset_combination_2.setObjectName("tab_bandset_combination_2")
        self.gridLayout_44 = QtWidgets.QGridLayout(self.tab_bandset_combination_2)
        self.gridLayout_44.setObjectName("gridLayout_44")
        self.toolBox_band_set_combination = QtWidgets.QToolBox(parent=self.tab_bandset_combination_2)
        self.toolBox_band_set_combination.setObjectName("toolBox_band_set_combination")
        self.page_29 = QtWidgets.QWidget()
        self.page_29.setGeometry(QtCore.QRect(0, 0, 286, 247))
        self.page_29.setObjectName("page_29")
        self.gridLayout_45 = QtWidgets.QGridLayout(self.page_29)
        self.gridLayout_45.setObjectName("gridLayout_45")
        self.gridLayout_333 = QtWidgets.QGridLayout()
        self.gridLayout_333.setObjectName("gridLayout_333")
        spacerItem58 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_333.addItem(spacerItem58, 0, 2, 1, 1)
        self.band_combination = QtWidgets.QToolButton(parent=self.page_29)
        font = QtGui.QFont()
        font.setBold(True)
        self.band_combination.setFont(font)
        self.band_combination.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.band_combination.setStyleSheet("margin: 0px;padding: 0px;")
        self.band_combination.setIcon(icon24)
        self.band_combination.setIconSize(QtCore.QSize(34, 34))
        self.band_combination.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.band_combination.setObjectName("band_combination")
        self.gridLayout_333.addWidget(self.band_combination, 2, 1, 1, 1)
        self.calculateBandSetComb_toolButton = QtWidgets.QToolButton(parent=self.page_29)
        font = QtGui.QFont()
        font.setBold(True)
        self.calculateBandSetComb_toolButton.setFont(font)
        self.calculateBandSetComb_toolButton.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.calculateBandSetComb_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.calculateBandSetComb_toolButton.setIcon(icon8)
        self.calculateBandSetComb_toolButton.setIconSize(QtCore.QSize(34, 34))
        self.calculateBandSetComb_toolButton.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.calculateBandSetComb_toolButton.setObjectName("calculateBandSetComb_toolButton")
        self.gridLayout_333.addWidget(self.calculateBandSetComb_toolButton, 2, 2, 1, 1)
        spacerItem59 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_333.addItem(spacerItem59, 2, 0, 1, 1)
        self.label_253 = QtWidgets.QLabel(parent=self.page_29)
        self.label_253.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_253.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_253.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_253.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_253.setObjectName("label_253")
        self.gridLayout_333.addWidget(self.label_253, 1, 0, 1, 3)
        self.gridLayout_45.addLayout(self.gridLayout_333, 2, 0, 1, 1)
        self.horizontalLayout_34 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_34.setObjectName("horizontalLayout_34")
        self.label_72 = QtWidgets.QLabel(parent=self.page_29)
        self.label_72.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_72.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_72.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_72.setObjectName("label_72")
        self.horizontalLayout_34.addWidget(self.label_72)
        self.gridLayout_45.addLayout(self.horizontalLayout_34, 0, 0, 1, 1)
        self.gridLayout_331 = QtWidgets.QGridLayout()
        self.gridLayout_331.setObjectName("gridLayout_331")
        self.band_set_comb_spinBox = QtWidgets.QSpinBox(parent=self.page_29)
        self.band_set_comb_spinBox.setMinimum(1)
        self.band_set_comb_spinBox.setMaximum(100000)
        self.band_set_comb_spinBox.setObjectName("band_set_comb_spinBox")
        self.gridLayout_331.addWidget(self.band_set_comb_spinBox, 0, 2, 1, 1)
        self.label_250 = QtWidgets.QLabel(parent=self.page_29)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_250.sizePolicy().hasHeightForWidth())
        self.label_250.setSizePolicy(sizePolicy)
        self.label_250.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_250.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_250.setWordWrap(True)
        self.label_250.setObjectName("label_250")
        self.gridLayout_331.addWidget(self.label_250, 0, 0, 1, 2)
        self.horizontalLayout_17 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_17.setObjectName("horizontalLayout_17")
        self.nodata_checkBox_12 = QtWidgets.QCheckBox(parent=self.page_29)
        self.nodata_checkBox_12.setObjectName("nodata_checkBox_12")
        self.horizontalLayout_17.addWidget(self.nodata_checkBox_12)
        self.nodata_spinBox_16 = QtWidgets.QSpinBox(parent=self.page_29)
        self.nodata_spinBox_16.setMinimum(-999999999)
        self.nodata_spinBox_16.setMaximum(999999999)
        self.nodata_spinBox_16.setProperty("value", 0)
        self.nodata_spinBox_16.setObjectName("nodata_spinBox_16")
        self.horizontalLayout_17.addWidget(self.nodata_spinBox_16)
        spacerItem60 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.horizontalLayout_17.addItem(spacerItem60)
        self.gridLayout_331.addLayout(self.horizontalLayout_17, 1, 0, 1, 4)
        self.no_raster_checkBox = QtWidgets.QCheckBox(parent=self.page_29)
        self.no_raster_checkBox.setObjectName("no_raster_checkBox")
        self.gridLayout_331.addWidget(self.no_raster_checkBox, 2, 0, 1, 1)
        spacerItem61 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_331.addItem(spacerItem61, 0, 3, 1, 1)
        self.gridLayout_45.addLayout(self.gridLayout_331, 1, 0, 1, 1)
        self.toolBox_band_set_combination.addItem(self.page_29, "")
        self.page_30 = QtWidgets.QWidget()
        self.page_30.setGeometry(QtCore.QRect(0, 0, 101, 101))
        self.page_30.setObjectName("page_30")
        self.gridLayout_334 = QtWidgets.QGridLayout(self.page_30)
        self.gridLayout_334.setObjectName("gridLayout_334")
        self.gridLayout_335 = QtWidgets.QGridLayout()
        self.gridLayout_335.setObjectName("gridLayout_335")
        self.band_set_comb_textBrowser = QtWidgets.QTextBrowser(parent=self.page_30)
        font = QtGui.QFont()
        font.setFamily("Courier 10 Pitch")
        self.band_set_comb_textBrowser.setFont(font)
        self.band_set_comb_textBrowser.setTabChangesFocus(True)
        self.band_set_comb_textBrowser.setLineWrapMode(QtWidgets.QTextEdit.LineWrapMode.NoWrap)
        self.band_set_comb_textBrowser.setHtml("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><meta charset=\"utf-8\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"hr { height: 1px; border-width: 0; }\n"
"li.unchecked::marker { content: \"\\2610\"; }\n"
"li.checked::marker { content: \"\\2612\"; }\n"
"</style></head><body style=\" font-family:\'Courier 10 Pitch\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:11pt;\"><br /></span></p></body></html>")
        self.band_set_comb_textBrowser.setOpenLinks(False)
        self.band_set_comb_textBrowser.setProperty("tabStopWidth", 120)
        self.band_set_comb_textBrowser.setObjectName("band_set_comb_textBrowser")
        self.gridLayout_335.addWidget(self.band_set_comb_textBrowser, 0, 0, 1, 1)
        self.gridLayout_334.addLayout(self.gridLayout_335, 0, 0, 1, 1)
        self.toolBox_band_set_combination.addItem(self.page_30, "")
        self.gridLayout_44.addWidget(self.toolBox_band_set_combination, 0, 0, 1, 1)
        self.tabWidget_4.addTab(self.tab_bandset_combination_2, "")
        self.band_dilation_tab = QtWidgets.QWidget()
        self.band_dilation_tab.setObjectName("band_dilation_tab")
        self.gridLayout_52 = QtWidgets.QGridLayout(self.band_dilation_tab)
        self.gridLayout_52.setObjectName("gridLayout_52")
        self.gridLayout_214 = QtWidgets.QGridLayout()
        self.gridLayout_214.setObjectName("gridLayout_214")
        self.label_292 = QtWidgets.QLabel(parent=self.band_dilation_tab)
        self.label_292.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_292.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_292.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_292.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_292.setObjectName("label_292")
        self.gridLayout_214.addWidget(self.label_292, 5, 0, 1, 3)
        self.horizontalLayout_62 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_62.setObjectName("horizontalLayout_62")
        self.label_294 = QtWidgets.QLabel(parent=self.band_dilation_tab)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_294.sizePolicy().hasHeightForWidth())
        self.label_294.setSizePolicy(sizePolicy)
        self.label_294.setMinimumSize(QtCore.QSize(229, 0))
        self.label_294.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_294.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_294.setWordWrap(True)
        self.label_294.setObjectName("label_294")
        self.horizontalLayout_62.addWidget(self.label_294)
        self.band_set_comb_spinBox_16 = QtWidgets.QSpinBox(parent=self.band_dilation_tab)
        self.band_set_comb_spinBox_16.setMinimum(1)
        self.band_set_comb_spinBox_16.setMaximum(100000)
        self.band_set_comb_spinBox_16.setObjectName("band_set_comb_spinBox_16")
        self.horizontalLayout_62.addWidget(self.band_set_comb_spinBox_16)
        spacerItem62 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.horizontalLayout_62.addItem(spacerItem62)
        self.gridLayout_214.addLayout(self.horizontalLayout_62, 0, 0, 1, 3)
        self.horizontalLayout_16 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_16.setObjectName("horizontalLayout_16")
        self.label_295 = QtWidgets.QLabel(parent=self.band_dilation_tab)
        self.label_295.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_295.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_295.setObjectName("label_295")
        self.horizontalLayout_16.addWidget(self.label_295)
        self.output_name_lineEdit_2 = QtWidgets.QLineEdit(parent=self.band_dilation_tab)
        self.output_name_lineEdit_2.setMaxLength(10000)
        self.output_name_lineEdit_2.setObjectName("output_name_lineEdit_2")
        self.horizontalLayout_16.addWidget(self.output_name_lineEdit_2)
        self.virtual_output_checkBox_1 = QtWidgets.QCheckBox(parent=self.band_dilation_tab)
        self.virtual_output_checkBox_1.setObjectName("virtual_output_checkBox_1")
        self.horizontalLayout_16.addWidget(self.virtual_output_checkBox_1)
        self.gridLayout_214.addLayout(self.horizontalLayout_16, 3, 0, 1, 3)
        self.horizontalLayout_75 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_75.setObjectName("horizontalLayout_75")
        self.label_291 = QtWidgets.QLabel(parent=self.band_dilation_tab)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_291.sizePolicy().hasHeightForWidth())
        self.label_291.setSizePolicy(sizePolicy)
        self.label_291.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_291.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_291.setObjectName("label_291")
        self.horizontalLayout_75.addWidget(self.label_291)
        self.dilation_classes_lineEdit = QtWidgets.QLineEdit(parent=self.band_dilation_tab)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.MinimumExpanding, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.dilation_classes_lineEdit.sizePolicy().hasHeightForWidth())
        self.dilation_classes_lineEdit.setSizePolicy(sizePolicy)
        self.dilation_classes_lineEdit.setMinimumSize(QtCore.QSize(400, 26))
        self.dilation_classes_lineEdit.setText("")
        self.dilation_classes_lineEdit.setMaxLength(10000)
        self.dilation_classes_lineEdit.setObjectName("dilation_classes_lineEdit")
        self.horizontalLayout_75.addWidget(self.dilation_classes_lineEdit)
        self.gridLayout_214.addLayout(self.horizontalLayout_75, 1, 0, 1, 3)
        spacerItem63 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_214.addItem(spacerItem63, 6, 0, 1, 1)
        spacerItem64 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_214.addItem(spacerItem64, 4, 2, 1, 1)
        self.band_dilation_toolButton = QtWidgets.QToolButton(parent=self.band_dilation_tab)
        font = QtGui.QFont()
        font.setBold(True)
        self.band_dilation_toolButton.setFont(font)
        self.band_dilation_toolButton.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.band_dilation_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.band_dilation_toolButton.setIcon(icon8)
        self.band_dilation_toolButton.setIconSize(QtCore.QSize(34, 34))
        self.band_dilation_toolButton.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.band_dilation_toolButton.setObjectName("band_dilation_toolButton")
        self.gridLayout_214.addWidget(self.band_dilation_toolButton, 6, 2, 1, 1)
        self.horizontalLayout_74 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_74.setObjectName("horizontalLayout_74")
        self.label_290 = QtWidgets.QLabel(parent=self.band_dilation_tab)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_290.sizePolicy().hasHeightForWidth())
        self.label_290.setSizePolicy(sizePolicy)
        self.label_290.setMinimumSize(QtCore.QSize(229, 0))
        self.label_290.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_290.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_290.setObjectName("label_290")
        self.horizontalLayout_74.addWidget(self.label_290)
        self.dilation_threshold_spinBox = QtWidgets.QSpinBox(parent=self.band_dilation_tab)
        self.dilation_threshold_spinBox.setMinimum(1)
        self.dilation_threshold_spinBox.setMaximum(1000)
        self.dilation_threshold_spinBox.setProperty("value", 1)
        self.dilation_threshold_spinBox.setObjectName("dilation_threshold_spinBox")
        self.horizontalLayout_74.addWidget(self.dilation_threshold_spinBox)
        self.circular_structure_checkBox_2 = QtWidgets.QCheckBox(parent=self.band_dilation_tab)
        self.circular_structure_checkBox_2.setObjectName("circular_structure_checkBox_2")
        self.horizontalLayout_74.addWidget(self.circular_structure_checkBox_2)
        spacerItem65 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.horizontalLayout_74.addItem(spacerItem65)
        self.gridLayout_214.addLayout(self.horizontalLayout_74, 2, 0, 1, 3)
        self.band_dilation = QtWidgets.QToolButton(parent=self.band_dilation_tab)
        font = QtGui.QFont()
        font.setBold(True)
        self.band_dilation.setFont(font)
        self.band_dilation.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.band_dilation.setStyleSheet("margin: 0px;padding: 0px;")
        self.band_dilation.setIcon(icon24)
        self.band_dilation.setIconSize(QtCore.QSize(34, 34))
        self.band_dilation.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.band_dilation.setObjectName("band_dilation")
        self.gridLayout_214.addWidget(self.band_dilation, 6, 1, 1, 1)
        self.gridLayout_52.addLayout(self.gridLayout_214, 1, 0, 1, 1)
        self.horizontalLayout_76 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_76.setObjectName("horizontalLayout_76")
        self.label_293 = QtWidgets.QLabel(parent=self.band_dilation_tab)
        self.label_293.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_293.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_293.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_293.setObjectName("label_293")
        self.horizontalLayout_76.addWidget(self.label_293)
        self.gridLayout_52.addLayout(self.horizontalLayout_76, 0, 0, 1, 1)
        self.tabWidget_4.addTab(self.band_dilation_tab, "")
        self.band_erosion_tab = QtWidgets.QWidget()
        self.band_erosion_tab.setObjectName("band_erosion_tab")
        self.gridLayout_46 = QtWidgets.QGridLayout(self.band_erosion_tab)
        self.gridLayout_46.setObjectName("gridLayout_46")
        self.horizontalLayout_44 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_44.setObjectName("horizontalLayout_44")
        self.label_202 = QtWidgets.QLabel(parent=self.band_erosion_tab)
        self.label_202.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_202.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_202.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_202.setObjectName("label_202")
        self.horizontalLayout_44.addWidget(self.label_202)
        self.gridLayout_46.addLayout(self.horizontalLayout_44, 0, 0, 1, 1)
        self.gridLayout_204 = QtWidgets.QGridLayout()
        self.gridLayout_204.setObjectName("gridLayout_204")
        self.classification_erosion = QtWidgets.QToolButton(parent=self.band_erosion_tab)
        font = QtGui.QFont()
        font.setBold(True)
        self.classification_erosion.setFont(font)
        self.classification_erosion.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.classification_erosion.setStyleSheet("margin: 0px;padding: 0px;")
        self.classification_erosion.setIcon(icon24)
        self.classification_erosion.setIconSize(QtCore.QSize(34, 34))
        self.classification_erosion.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.classification_erosion.setObjectName("classification_erosion")
        self.gridLayout_204.addWidget(self.classification_erosion, 6, 1, 1, 1)
        self.horizontalLayout_15 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_15.setObjectName("horizontalLayout_15")
        self.label_151 = QtWidgets.QLabel(parent=self.band_erosion_tab)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_151.sizePolicy().hasHeightForWidth())
        self.label_151.setSizePolicy(sizePolicy)
        self.label_151.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_151.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_151.setObjectName("label_151")
        self.horizontalLayout_15.addWidget(self.label_151)
        self.erosion_classes_lineEdit = QtWidgets.QLineEdit(parent=self.band_erosion_tab)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.MinimumExpanding, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.erosion_classes_lineEdit.sizePolicy().hasHeightForWidth())
        self.erosion_classes_lineEdit.setSizePolicy(sizePolicy)
        self.erosion_classes_lineEdit.setMinimumSize(QtCore.QSize(400, 26))
        self.erosion_classes_lineEdit.setText("")
        self.erosion_classes_lineEdit.setMaxLength(10000)
        self.erosion_classes_lineEdit.setObjectName("erosion_classes_lineEdit")
        self.horizontalLayout_15.addWidget(self.erosion_classes_lineEdit)
        self.gridLayout_204.addLayout(self.horizontalLayout_15, 1, 0, 1, 3)
        self.horizontalLayout_78 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_78.setObjectName("horizontalLayout_78")
        self.label_296 = QtWidgets.QLabel(parent=self.band_erosion_tab)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_296.sizePolicy().hasHeightForWidth())
        self.label_296.setSizePolicy(sizePolicy)
        self.label_296.setMinimumSize(QtCore.QSize(229, 0))
        self.label_296.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_296.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_296.setWordWrap(True)
        self.label_296.setObjectName("label_296")
        self.horizontalLayout_78.addWidget(self.label_296)
        self.band_set_comb_spinBox_17 = QtWidgets.QSpinBox(parent=self.band_erosion_tab)
        self.band_set_comb_spinBox_17.setMinimum(1)
        self.band_set_comb_spinBox_17.setMaximum(100000)
        self.band_set_comb_spinBox_17.setObjectName("band_set_comb_spinBox_17")
        self.horizontalLayout_78.addWidget(self.band_set_comb_spinBox_17)
        spacerItem66 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.horizontalLayout_78.addItem(spacerItem66)
        self.gridLayout_204.addLayout(self.horizontalLayout_78, 0, 0, 1, 3)
        spacerItem67 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_204.addItem(spacerItem67, 6, 0, 1, 1)
        self.class_erosion_toolButton = QtWidgets.QToolButton(parent=self.band_erosion_tab)
        font = QtGui.QFont()
        font.setBold(True)
        self.class_erosion_toolButton.setFont(font)
        self.class_erosion_toolButton.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.class_erosion_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.class_erosion_toolButton.setIcon(icon8)
        self.class_erosion_toolButton.setIconSize(QtCore.QSize(34, 34))
        self.class_erosion_toolButton.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.class_erosion_toolButton.setObjectName("class_erosion_toolButton")
        self.gridLayout_204.addWidget(self.class_erosion_toolButton, 6, 2, 1, 1)
        spacerItem68 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_204.addItem(spacerItem68, 4, 2, 1, 1)
        self.label_175 = QtWidgets.QLabel(parent=self.band_erosion_tab)
        self.label_175.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_175.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_175.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_175.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_175.setObjectName("label_175")
        self.gridLayout_204.addWidget(self.label_175, 5, 0, 1, 3)
        self.horizontalLayout_14 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_14.setObjectName("horizontalLayout_14")
        self.label_149 = QtWidgets.QLabel(parent=self.band_erosion_tab)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_149.sizePolicy().hasHeightForWidth())
        self.label_149.setSizePolicy(sizePolicy)
        self.label_149.setMinimumSize(QtCore.QSize(229, 0))
        self.label_149.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_149.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_149.setObjectName("label_149")
        self.horizontalLayout_14.addWidget(self.label_149)
        self.erosion_threshold_spinBox = QtWidgets.QSpinBox(parent=self.band_erosion_tab)
        self.erosion_threshold_spinBox.setMinimum(1)
        self.erosion_threshold_spinBox.setMaximum(1000)
        self.erosion_threshold_spinBox.setProperty("value", 1)
        self.erosion_threshold_spinBox.setObjectName("erosion_threshold_spinBox")
        self.horizontalLayout_14.addWidget(self.erosion_threshold_spinBox)
        self.circular_structure_checkBox_3 = QtWidgets.QCheckBox(parent=self.band_erosion_tab)
        self.circular_structure_checkBox_3.setObjectName("circular_structure_checkBox_3")
        self.horizontalLayout_14.addWidget(self.circular_structure_checkBox_3)
        spacerItem69 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.horizontalLayout_14.addItem(spacerItem69)
        self.gridLayout_204.addLayout(self.horizontalLayout_14, 2, 0, 1, 3)
        self.horizontalLayout_18 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_18.setObjectName("horizontalLayout_18")
        self.label_297 = QtWidgets.QLabel(parent=self.band_erosion_tab)
        self.label_297.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_297.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_297.setObjectName("label_297")
        self.horizontalLayout_18.addWidget(self.label_297)
        self.output_name_lineEdit_3 = QtWidgets.QLineEdit(parent=self.band_erosion_tab)
        self.output_name_lineEdit_3.setMaxLength(10000)
        self.output_name_lineEdit_3.setObjectName("output_name_lineEdit_3")
        self.horizontalLayout_18.addWidget(self.output_name_lineEdit_3)
        self.virtual_output_checkBox_2 = QtWidgets.QCheckBox(parent=self.band_erosion_tab)
        self.virtual_output_checkBox_2.setObjectName("virtual_output_checkBox_2")
        self.horizontalLayout_18.addWidget(self.virtual_output_checkBox_2)
        self.gridLayout_204.addLayout(self.horizontalLayout_18, 3, 0, 1, 3)
        self.gridLayout_46.addLayout(self.gridLayout_204, 1, 0, 1, 1)
        self.tabWidget_4.addTab(self.band_erosion_tab, "")
        self.band_sieve_tab = QtWidgets.QWidget()
        self.band_sieve_tab.setObjectName("band_sieve_tab")
        self.gridLayout_53 = QtWidgets.QGridLayout(self.band_sieve_tab)
        self.gridLayout_53.setObjectName("gridLayout_53")
        self.horizontalLayout_43 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_43.setObjectName("horizontalLayout_43")
        self.label_195 = QtWidgets.QLabel(parent=self.band_sieve_tab)
        self.label_195.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_195.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_195.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_195.setObjectName("label_195")
        self.horizontalLayout_43.addWidget(self.label_195)
        self.gridLayout_53.addLayout(self.horizontalLayout_43, 0, 0, 1, 1)
        self.gridLayout_64 = QtWidgets.QGridLayout()
        self.gridLayout_64.setObjectName("gridLayout_64")
        self.horizontalLayout_79 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_79.setObjectName("horizontalLayout_79")
        self.label_298 = QtWidgets.QLabel(parent=self.band_sieve_tab)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_298.sizePolicy().hasHeightForWidth())
        self.label_298.setSizePolicy(sizePolicy)
        self.label_298.setMinimumSize(QtCore.QSize(229, 0))
        self.label_298.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_298.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_298.setWordWrap(True)
        self.label_298.setObjectName("label_298")
        self.horizontalLayout_79.addWidget(self.label_298)
        self.band_set_comb_spinBox_18 = QtWidgets.QSpinBox(parent=self.band_sieve_tab)
        self.band_set_comb_spinBox_18.setMinimum(1)
        self.band_set_comb_spinBox_18.setMaximum(100000)
        self.band_set_comb_spinBox_18.setObjectName("band_set_comb_spinBox_18")
        self.horizontalLayout_79.addWidget(self.band_set_comb_spinBox_18)
        spacerItem70 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.horizontalLayout_79.addItem(spacerItem70)
        self.gridLayout_64.addLayout(self.horizontalLayout_79, 0, 0, 1, 3)
        self.label_174 = QtWidgets.QLabel(parent=self.band_sieve_tab)
        self.label_174.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_174.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_174.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_174.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_174.setObjectName("label_174")
        self.gridLayout_64.addWidget(self.label_174, 4, 0, 1, 3)
        self.sieve_toolButton = QtWidgets.QToolButton(parent=self.band_sieve_tab)
        font = QtGui.QFont()
        font.setBold(True)
        self.sieve_toolButton.setFont(font)
        self.sieve_toolButton.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.sieve_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.sieve_toolButton.setIcon(icon8)
        self.sieve_toolButton.setIconSize(QtCore.QSize(34, 34))
        self.sieve_toolButton.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.sieve_toolButton.setObjectName("sieve_toolButton")
        self.gridLayout_64.addWidget(self.sieve_toolButton, 5, 2, 1, 1)
        spacerItem71 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_64.addItem(spacerItem71, 3, 2, 1, 1)
        self.classification_sieve = QtWidgets.QToolButton(parent=self.band_sieve_tab)
        font = QtGui.QFont()
        font.setBold(True)
        self.classification_sieve.setFont(font)
        self.classification_sieve.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.classification_sieve.setStyleSheet("margin: 0px;padding: 0px;")
        self.classification_sieve.setIcon(icon24)
        self.classification_sieve.setIconSize(QtCore.QSize(34, 34))
        self.classification_sieve.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.classification_sieve.setObjectName("classification_sieve")
        self.gridLayout_64.addWidget(self.classification_sieve, 5, 1, 1, 1)
        spacerItem72 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_64.addItem(spacerItem72, 5, 0, 1, 1)
        self.horizontalLayout_12 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_12.setObjectName("horizontalLayout_12")
        self.label_133 = QtWidgets.QLabel(parent=self.band_sieve_tab)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_133.sizePolicy().hasHeightForWidth())
        self.label_133.setSizePolicy(sizePolicy)
        self.label_133.setMinimumSize(QtCore.QSize(229, 0))
        self.label_133.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_133.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_133.setObjectName("label_133")
        self.horizontalLayout_12.addWidget(self.label_133)
        self.sieve_threshold_spinBox = QtWidgets.QSpinBox(parent=self.band_sieve_tab)
        self.sieve_threshold_spinBox.setMinimum(2)
        self.sieve_threshold_spinBox.setMaximum(10000)
        self.sieve_threshold_spinBox.setProperty("value", 2)
        self.sieve_threshold_spinBox.setObjectName("sieve_threshold_spinBox")
        self.horizontalLayout_12.addWidget(self.sieve_threshold_spinBox)
        spacerItem73 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.horizontalLayout_12.addItem(spacerItem73)
        self.label_136 = QtWidgets.QLabel(parent=self.band_sieve_tab)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_136.sizePolicy().hasHeightForWidth())
        self.label_136.setSizePolicy(sizePolicy)
        self.label_136.setMinimumSize(QtCore.QSize(229, 0))
        self.label_136.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_136.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_136.setObjectName("label_136")
        self.horizontalLayout_12.addWidget(self.label_136)
        self.sieve_connection_combo = QtWidgets.QComboBox(parent=self.band_sieve_tab)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.sieve_connection_combo.sizePolicy().hasHeightForWidth())
        self.sieve_connection_combo.setSizePolicy(sizePolicy)
        self.sieve_connection_combo.setMaximumSize(QtCore.QSize(80, 16777215))
        self.sieve_connection_combo.setObjectName("sieve_connection_combo")
        self.sieve_connection_combo.addItem("")
        self.sieve_connection_combo.addItem("")
        self.horizontalLayout_12.addWidget(self.sieve_connection_combo)
        self.gridLayout_64.addLayout(self.horizontalLayout_12, 1, 0, 1, 3)
        self.horizontalLayout_35 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_35.setObjectName("horizontalLayout_35")
        self.label_299 = QtWidgets.QLabel(parent=self.band_sieve_tab)
        self.label_299.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_299.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_299.setObjectName("label_299")
        self.horizontalLayout_35.addWidget(self.label_299)
        self.output_name_lineEdit_4 = QtWidgets.QLineEdit(parent=self.band_sieve_tab)
        self.output_name_lineEdit_4.setMaxLength(10000)
        self.output_name_lineEdit_4.setObjectName("output_name_lineEdit_4")
        self.horizontalLayout_35.addWidget(self.output_name_lineEdit_4)
        self.virtual_output_checkBox_3 = QtWidgets.QCheckBox(parent=self.band_sieve_tab)
        self.virtual_output_checkBox_3.setObjectName("virtual_output_checkBox_3")
        self.horizontalLayout_35.addWidget(self.virtual_output_checkBox_3)
        self.gridLayout_64.addLayout(self.horizontalLayout_35, 2, 0, 1, 3)
        self.gridLayout_53.addLayout(self.gridLayout_64, 1, 0, 1, 1)
        self.tabWidget_4.addTab(self.band_sieve_tab, "")
        self.PCA_tab = QtWidgets.QWidget()
        self.PCA_tab.setObjectName("PCA_tab")
        self.gridLayout_41 = QtWidgets.QGridLayout(self.PCA_tab)
        self.gridLayout_41.setObjectName("gridLayout_41")
        self.toolBox_PCA = QtWidgets.QToolBox(parent=self.PCA_tab)
        self.toolBox_PCA.setStyleSheet("")
        self.toolBox_PCA.setObjectName("toolBox_PCA")
        self.page_16 = QtWidgets.QWidget()
        self.page_16.setGeometry(QtCore.QRect(0, 0, 406, 209))
        self.page_16.setObjectName("page_16")
        self.gridLayout_182 = QtWidgets.QGridLayout(self.page_16)
        self.gridLayout_182.setObjectName("gridLayout_182")
        self.horizontalLayout_5 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_5.setObjectName("horizontalLayout_5")
        self.label_58 = QtWidgets.QLabel(parent=self.page_16)
        self.label_58.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_58.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_58.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_58.setObjectName("label_58")
        self.horizontalLayout_5.addWidget(self.label_58)
        self.gridLayout_182.addLayout(self.horizontalLayout_5, 0, 0, 1, 1)
        self.gridLayout_173 = QtWidgets.QGridLayout()
        self.gridLayout_173.setObjectName("gridLayout_173")
        self.band_set_comb_spinBox_4 = QtWidgets.QSpinBox(parent=self.page_16)
        self.band_set_comb_spinBox_4.setMinimum(1)
        self.band_set_comb_spinBox_4.setMaximum(100000)
        self.band_set_comb_spinBox_4.setObjectName("band_set_comb_spinBox_4")
        self.gridLayout_173.addWidget(self.band_set_comb_spinBox_4, 0, 1, 1, 1)
        self.pca_Button = QtWidgets.QToolButton(parent=self.page_16)
        font = QtGui.QFont()
        font.setBold(True)
        self.pca_Button.setFont(font)
        self.pca_Button.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.pca_Button.setStyleSheet("margin: 0px;padding: 0px;")
        self.pca_Button.setIcon(icon8)
        self.pca_Button.setIconSize(QtCore.QSize(34, 34))
        self.pca_Button.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.pca_Button.setObjectName("pca_Button")
        self.gridLayout_173.addWidget(self.pca_Button, 5, 3, 1, 1)
        spacerItem74 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_173.addItem(spacerItem74, 2, 2, 1, 1)
        self.nodata_spinBox_5 = QtWidgets.QSpinBox(parent=self.page_16)
        self.nodata_spinBox_5.setMinimum(-999999999)
        self.nodata_spinBox_5.setMaximum(999999999)
        self.nodata_spinBox_5.setProperty("value", 0)
        self.nodata_spinBox_5.setObjectName("nodata_spinBox_5")
        self.gridLayout_173.addWidget(self.nodata_spinBox_5, 2, 1, 1, 1)
        spacerItem75 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_173.addItem(spacerItem75, 3, 3, 1, 1)
        self.nodata_checkBox_4 = QtWidgets.QCheckBox(parent=self.page_16)
        self.nodata_checkBox_4.setObjectName("nodata_checkBox_4")
        self.gridLayout_173.addWidget(self.nodata_checkBox_4, 2, 0, 1, 1)
        self.pca_components_spinBox = QtWidgets.QSpinBox(parent=self.page_16)
        self.pca_components_spinBox.setMinimum(2)
        self.pca_components_spinBox.setMaximum(1000)
        self.pca_components_spinBox.setObjectName("pca_components_spinBox")
        self.gridLayout_173.addWidget(self.pca_components_spinBox, 1, 1, 1, 1)
        self.num_comp_checkBox = QtWidgets.QCheckBox(parent=self.page_16)
        self.num_comp_checkBox.setObjectName("num_comp_checkBox")
        self.gridLayout_173.addWidget(self.num_comp_checkBox, 1, 0, 1, 1)
        self.label_254 = QtWidgets.QLabel(parent=self.page_16)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_254.sizePolicy().hasHeightForWidth())
        self.label_254.setSizePolicy(sizePolicy)
        self.label_254.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_254.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_254.setObjectName("label_254")
        self.gridLayout_173.addWidget(self.label_254, 0, 0, 1, 1)
        self.label_166 = QtWidgets.QLabel(parent=self.page_16)
        self.label_166.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_166.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_166.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_166.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_166.setObjectName("label_166")
        self.gridLayout_173.addWidget(self.label_166, 4, 0, 1, 4)
        self.pca = QtWidgets.QToolButton(parent=self.page_16)
        font = QtGui.QFont()
        font.setBold(True)
        self.pca.setFont(font)
        self.pca.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.pca.setStyleSheet("margin: 0px;padding: 0px;")
        self.pca.setIcon(icon24)
        self.pca.setIconSize(QtCore.QSize(34, 34))
        self.pca.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.pca.setObjectName("pca")
        self.gridLayout_173.addWidget(self.pca, 5, 2, 1, 1)
        self.gridLayout_182.addLayout(self.gridLayout_173, 1, 0, 1, 1)
        self.toolBox_PCA.addItem(self.page_16, "")
        self.page_17 = QtWidgets.QWidget()
        self.page_17.setGeometry(QtCore.QRect(0, 0, 101, 101))
        self.page_17.setObjectName("page_17")
        self.gridLayout_200 = QtWidgets.QGridLayout(self.page_17)
        self.gridLayout_200.setObjectName("gridLayout_200")
        self.gridLayout_201 = QtWidgets.QGridLayout()
        self.gridLayout_201.setObjectName("gridLayout_201")
        self.report_textBrowser_2 = QtWidgets.QTextBrowser(parent=self.page_17)
        font = QtGui.QFont()
        font.setFamily("Courier 10 Pitch")
        self.report_textBrowser_2.setFont(font)
        self.report_textBrowser_2.setTabChangesFocus(True)
        self.report_textBrowser_2.setLineWrapMode(QtWidgets.QTextEdit.LineWrapMode.NoWrap)
        self.report_textBrowser_2.setHtml("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><meta charset=\"utf-8\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"hr { height: 1px; border-width: 0; }\n"
"li.unchecked::marker { content: \"\\2610\"; }\n"
"li.checked::marker { content: \"\\2612\"; }\n"
"</style></head><body style=\" font-family:\'Courier 10 Pitch\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:11pt;\"><br /></p></body></html>")
        self.report_textBrowser_2.setOpenLinks(False)
        self.report_textBrowser_2.setProperty("tabStopWidth", 160)
        self.report_textBrowser_2.setObjectName("report_textBrowser_2")
        self.gridLayout_201.addWidget(self.report_textBrowser_2, 0, 0, 1, 1)
        self.gridLayout_200.addLayout(self.gridLayout_201, 0, 0, 1, 1)
        self.toolBox_PCA.addItem(self.page_17, "")
        self.gridLayout_41.addWidget(self.toolBox_PCA, 0, 0, 1, 1)
        self.tabWidget_4.addTab(self.PCA_tab, "")
        self.tab_classification = QtWidgets.QWidget()
        self.tab_classification.setObjectName("tab_classification")
        self.gridLayout_151 = QtWidgets.QGridLayout(self.tab_classification)
        self.gridLayout_151.setObjectName("gridLayout_151")
        self.gridLayout_218 = QtWidgets.QGridLayout()
        self.gridLayout_218.setObjectName("gridLayout_218")
        self.label_261 = QtWidgets.QLabel(parent=self.tab_classification)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_261.sizePolicy().hasHeightForWidth())
        self.label_261.setSizePolicy(sizePolicy)
        self.label_261.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_261.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_261.setObjectName("label_261")
        self.gridLayout_218.addWidget(self.label_261, 1, 0, 1, 1)
        self.label_243 = QtWidgets.QLabel(parent=self.tab_classification)
        self.label_243.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_243.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_243.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_243.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_243.setObjectName("label_243")
        self.gridLayout_218.addWidget(self.label_243, 0, 0, 1, 3)
        self.band_set_comb_spinBox_12 = QtWidgets.QSpinBox(parent=self.tab_classification)
        self.band_set_comb_spinBox_12.setMinimum(1)
        self.band_set_comb_spinBox_12.setMaximum(100000)
        self.band_set_comb_spinBox_12.setObjectName("band_set_comb_spinBox_12")
        self.gridLayout_218.addWidget(self.band_set_comb_spinBox_12, 1, 1, 1, 1)
        self.gridLayout_70 = QtWidgets.QGridLayout()
        self.gridLayout_70.setObjectName("gridLayout_70")
        self.linear_scaling_radioButton = QtWidgets.QRadioButton(parent=self.tab_classification)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.linear_scaling_radioButton.sizePolicy().hasHeightForWidth())
        self.linear_scaling_radioButton.setSizePolicy(sizePolicy)
        self.linear_scaling_radioButton.setAutoExclusive(False)
        self.linear_scaling_radioButton.setObjectName("linear_scaling_radioButton")
        self.gridLayout_70.addWidget(self.linear_scaling_radioButton, 0, 2, 1, 1)
        self.z_score_radioButton = QtWidgets.QRadioButton(parent=self.tab_classification)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.z_score_radioButton.sizePolicy().hasHeightForWidth())
        self.z_score_radioButton.setSizePolicy(sizePolicy)
        self.z_score_radioButton.setChecked(True)
        self.z_score_radioButton.setAutoExclusive(False)
        self.z_score_radioButton.setObjectName("z_score_radioButton")
        self.gridLayout_70.addWidget(self.z_score_radioButton, 0, 1, 1, 1)
        spacerItem76 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_70.addItem(spacerItem76, 0, 3, 1, 1)
        self.input_normalization_checkBox = QtWidgets.QCheckBox(parent=self.tab_classification)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.input_normalization_checkBox.sizePolicy().hasHeightForWidth())
        self.input_normalization_checkBox.setSizePolicy(sizePolicy)
        self.input_normalization_checkBox.setChecked(False)
        self.input_normalization_checkBox.setObjectName("input_normalization_checkBox")
        self.gridLayout_70.addWidget(self.input_normalization_checkBox, 0, 0, 1, 1)
        self.gridLayout_218.addLayout(self.gridLayout_70, 1, 2, 1, 1)
        self.horizontalLayout_55 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_55.setObjectName("horizontalLayout_55")
        self.label_32 = QtWidgets.QLabel(parent=self.tab_classification)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_32.sizePolicy().hasHeightForWidth())
        self.label_32.setSizePolicy(sizePolicy)
        self.label_32.setObjectName("label_32")
        self.horizontalLayout_55.addWidget(self.label_32)
        self.macroclass_radioButton = QtWidgets.QRadioButton(parent=self.tab_classification)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.macroclass_radioButton.sizePolicy().hasHeightForWidth())
        self.macroclass_radioButton.setSizePolicy(sizePolicy)
        self.macroclass_radioButton.setChecked(True)
        self.macroclass_radioButton.setAutoExclusive(False)
        self.macroclass_radioButton.setObjectName("macroclass_radioButton")
        self.horizontalLayout_55.addWidget(self.macroclass_radioButton)
        self.class_radioButton = QtWidgets.QRadioButton(parent=self.tab_classification)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.class_radioButton.sizePolicy().hasHeightForWidth())
        self.class_radioButton.setSizePolicy(sizePolicy)
        self.class_radioButton.setAutoExclusive(False)
        self.class_radioButton.setObjectName("class_radioButton")
        self.horizontalLayout_55.addWidget(self.class_radioButton)
        spacerItem77 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.horizontalLayout_55.addItem(spacerItem77)
        self.gridLayout_218.addLayout(self.horizontalLayout_55, 2, 0, 1, 3)
        self.gridLayout_151.addLayout(self.gridLayout_218, 0, 0, 1, 1)
        self.gridLayout_249 = QtWidgets.QGridLayout()
        self.gridLayout_249.setObjectName("gridLayout_249")
        self.name_classifier = QtWidgets.QLabel(parent=self.tab_classification)
        self.name_classifier.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.name_classifier.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.name_classifier.setText("")
        self.name_classifier.setObjectName("name_classifier")
        self.gridLayout_249.addWidget(self.name_classifier, 1, 3, 1, 1)
        self.label_classifier = QtWidgets.QLabel(parent=self.tab_classification)
        self.label_classifier.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_classifier.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_classifier.setText("")
        self.label_classifier.setObjectName("label_classifier")
        self.gridLayout_249.addWidget(self.label_classifier, 1, 1, 1, 2)
        self.classification = QtWidgets.QToolButton(parent=self.tab_classification)
        font = QtGui.QFont()
        font.setBold(True)
        self.classification.setFont(font)
        self.classification.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.classification.setStyleSheet("margin: 0px;padding: 0px;")
        self.classification.setIcon(icon24)
        self.classification.setIconSize(QtCore.QSize(34, 34))
        self.classification.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.classification.setObjectName("classification")
        self.gridLayout_249.addWidget(self.classification, 1, 6, 1, 1)
        self.label_239 = QtWidgets.QLabel(parent=self.tab_classification)
        self.label_239.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_239.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_239.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_239.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_239.setObjectName("label_239")
        self.gridLayout_249.addWidget(self.label_239, 0, 0, 1, 8)
        self.save_classifier_button = QtWidgets.QToolButton(parent=self.tab_classification)
        font = QtGui.QFont()
        font.setBold(True)
        self.save_classifier_button.setFont(font)
        self.save_classifier_button.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.save_classifier_button.setStyleSheet("margin: 0px;padding: 0px;")
        self.save_classifier_button.setIcon(icon11)
        self.save_classifier_button.setIconSize(QtCore.QSize(34, 34))
        self.save_classifier_button.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.save_classifier_button.setObjectName("save_classifier_button")
        self.gridLayout_249.addWidget(self.save_classifier_button, 1, 5, 1, 1)
        self.load_classifier_Button = QtWidgets.QToolButton(parent=self.tab_classification)
        self.load_classifier_Button.setStyleSheet("margin: 0px;padding: 0px;")
        self.load_classifier_Button.setIcon(icon7)
        self.load_classifier_Button.setIconSize(QtCore.QSize(22, 22))
        self.load_classifier_Button.setObjectName("load_classifier_Button")
        self.gridLayout_249.addWidget(self.load_classifier_Button, 1, 4, 1, 1)
        self.button_classification = QtWidgets.QToolButton(parent=self.tab_classification)
        font = QtGui.QFont()
        font.setBold(True)
        self.button_classification.setFont(font)
        self.button_classification.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.button_classification.setStyleSheet("margin: 0px;padding: 0px;")
        self.button_classification.setIcon(icon8)
        self.button_classification.setIconSize(QtCore.QSize(34, 34))
        self.button_classification.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.button_classification.setObjectName("button_classification")
        self.gridLayout_249.addWidget(self.button_classification, 1, 7, 1, 1)
        self.label_255 = QtWidgets.QLabel(parent=self.tab_classification)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_255.sizePolicy().hasHeightForWidth())
        self.label_255.setSizePolicy(sizePolicy)
        self.label_255.setObjectName("label_255")
        self.gridLayout_249.addWidget(self.label_255, 1, 0, 1, 1)
        self.gridLayout_151.addLayout(self.gridLayout_249, 3, 0, 1, 1)
        self.label_240 = QtWidgets.QLabel(parent=self.tab_classification)
        font = QtGui.QFont()
        font.setBold(True)
        font.setItalic(False)
        self.label_240.setFont(font)
        self.label_240.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_240.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_240.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_240.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_240.setObjectName("label_240")
        self.gridLayout_151.addWidget(self.label_240, 1, 0, 1, 1)
        self.toolBox_classification = QtWidgets.QToolBox(parent=self.tab_classification)
        self.toolBox_classification.setObjectName("toolBox_classification")
        self.page_max_like = QtWidgets.QWidget()
        self.page_max_like.setGeometry(QtCore.QRect(0, 0, 911, 185))
        self.page_max_like.setObjectName("page_max_like")
        self.gridLayout_92 = QtWidgets.QGridLayout(self.page_max_like)
        self.gridLayout_92.setObjectName("gridLayout_92")
        self.gridLayout_226 = QtWidgets.QGridLayout()
        self.gridLayout_226.setObjectName("gridLayout_226")
        self.confidence_raster_checkBox = QtWidgets.QCheckBox(parent=self.page_max_like)
        self.confidence_raster_checkBox.setObjectName("confidence_raster_checkBox")
        self.gridLayout_226.addWidget(self.confidence_raster_checkBox, 2, 0, 1, 5)
        self.label_235 = QtWidgets.QLabel(parent=self.page_max_like)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Minimum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_235.sizePolicy().hasHeightForWidth())
        self.label_235.setSizePolicy(sizePolicy)
        self.label_235.setMaximumSize(QtCore.QSize(100, 16777215))
        self.label_235.setObjectName("label_235")
        self.gridLayout_226.addWidget(self.label_235, 0, 0, 1, 1)
        self.signature_raster_checkBox_3 = QtWidgets.QCheckBox(parent=self.page_max_like)
        self.signature_raster_checkBox_3.setObjectName("signature_raster_checkBox_3")
        self.gridLayout_226.addWidget(self.signature_raster_checkBox_3, 1, 0, 1, 2)
        self.single_threshold_checkBox_2 = QtWidgets.QCheckBox(parent=self.page_max_like)
        self.single_threshold_checkBox_2.setEnabled(False)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.single_threshold_checkBox_2.sizePolicy().hasHeightForWidth())
        self.single_threshold_checkBox_2.setSizePolicy(sizePolicy)
        self.single_threshold_checkBox_2.setObjectName("single_threshold_checkBox_2")
        self.gridLayout_226.addWidget(self.single_threshold_checkBox_2, 0, 3, 1, 1)
        self.signature_threshold_button_2 = QtWidgets.QToolButton(parent=self.page_max_like)
        self.signature_threshold_button_2.setStyleSheet("margin: 0px;padding: 0px;")
        icon26 = QtGui.QIcon()
        icon26.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin_threshold_tool.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.signature_threshold_button_2.setIcon(icon26)
        self.signature_threshold_button_2.setIconSize(QtCore.QSize(22, 22))
        self.signature_threshold_button_2.setObjectName("signature_threshold_button_2")
        self.gridLayout_226.addWidget(self.signature_threshold_button_2, 0, 4, 1, 1)
        self.alg_threshold_SpinBox_2 = QtWidgets.QDoubleSpinBox(parent=self.page_max_like)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.alg_threshold_SpinBox_2.sizePolicy().hasHeightForWidth())
        self.alg_threshold_SpinBox_2.setSizePolicy(sizePolicy)
        self.alg_threshold_SpinBox_2.setMaximumSize(QtCore.QSize(100, 16777215))
        self.alg_threshold_SpinBox_2.setAlignment(QtCore.Qt.AlignmentFlag.AlignRight|QtCore.Qt.AlignmentFlag.AlignTrailing|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.alg_threshold_SpinBox_2.setDecimals(4)
        self.alg_threshold_SpinBox_2.setMaximum(100.0)
        self.alg_threshold_SpinBox_2.setObjectName("alg_threshold_SpinBox_2")
        self.gridLayout_226.addWidget(self.alg_threshold_SpinBox_2, 0, 2, 1, 1)
        self.single_threshold_checkBox = QtWidgets.QCheckBox(parent=self.page_max_like)
        self.single_threshold_checkBox.setEnabled(False)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.single_threshold_checkBox.sizePolicy().hasHeightForWidth())
        self.single_threshold_checkBox.setSizePolicy(sizePolicy)
        self.single_threshold_checkBox.setChecked(False)
        self.single_threshold_checkBox.setObjectName("single_threshold_checkBox")
        self.gridLayout_226.addWidget(self.single_threshold_checkBox, 0, 1, 1, 1)
        spacerItem78 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_226.addItem(spacerItem78, 0, 5, 1, 1)
        spacerItem79 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_226.addItem(spacerItem79, 3, 5, 1, 1)
        self.gridLayout_92.addLayout(self.gridLayout_226, 0, 0, 1, 1)
        icon27 = QtGui.QIcon()
        icon27.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin_options.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.toolBox_classification.addItem(self.page_max_like, icon27, "")
        self.page_mindist = QtWidgets.QWidget()
        self.page_mindist.setGeometry(QtCore.QRect(0, 0, 473, 108))
        self.page_mindist.setObjectName("page_mindist")
        self.gridLayout_10 = QtWidgets.QGridLayout(self.page_mindist)
        self.gridLayout_10.setObjectName("gridLayout_10")
        self.gridLayout_229 = QtWidgets.QGridLayout()
        self.gridLayout_229.setObjectName("gridLayout_229")
        self.signature_raster_checkBox_2 = QtWidgets.QCheckBox(parent=self.page_mindist)
        self.signature_raster_checkBox_2.setObjectName("signature_raster_checkBox_2")
        self.gridLayout_229.addWidget(self.signature_raster_checkBox_2, 1, 0, 1, 2)
        self.label_237 = QtWidgets.QLabel(parent=self.page_mindist)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Minimum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_237.sizePolicy().hasHeightForWidth())
        self.label_237.setSizePolicy(sizePolicy)
        self.label_237.setMaximumSize(QtCore.QSize(100, 16777215))
        self.label_237.setObjectName("label_237")
        self.gridLayout_229.addWidget(self.label_237, 0, 0, 1, 1)
        self.single_threshold_checkBox_4 = QtWidgets.QCheckBox(parent=self.page_mindist)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.single_threshold_checkBox_4.sizePolicy().hasHeightForWidth())
        self.single_threshold_checkBox_4.setSizePolicy(sizePolicy)
        self.single_threshold_checkBox_4.setChecked(False)
        self.single_threshold_checkBox_4.setObjectName("single_threshold_checkBox_4")
        self.gridLayout_229.addWidget(self.single_threshold_checkBox_4, 0, 1, 1, 1)
        self.alg_threshold_SpinBox_4 = QtWidgets.QDoubleSpinBox(parent=self.page_mindist)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.alg_threshold_SpinBox_4.sizePolicy().hasHeightForWidth())
        self.alg_threshold_SpinBox_4.setSizePolicy(sizePolicy)
        self.alg_threshold_SpinBox_4.setMaximumSize(QtCore.QSize(100, 16777215))
        self.alg_threshold_SpinBox_4.setAlignment(QtCore.Qt.AlignmentFlag.AlignRight|QtCore.Qt.AlignmentFlag.AlignTrailing|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.alg_threshold_SpinBox_4.setDecimals(4)
        self.alg_threshold_SpinBox_4.setMaximum(100.0)
        self.alg_threshold_SpinBox_4.setObjectName("alg_threshold_SpinBox_4")
        self.gridLayout_229.addWidget(self.alg_threshold_SpinBox_4, 0, 2, 1, 1)
        self.single_threshold_checkBox_3 = QtWidgets.QCheckBox(parent=self.page_mindist)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.single_threshold_checkBox_3.sizePolicy().hasHeightForWidth())
        self.single_threshold_checkBox_3.setSizePolicy(sizePolicy)
        self.single_threshold_checkBox_3.setObjectName("single_threshold_checkBox_3")
        self.gridLayout_229.addWidget(self.single_threshold_checkBox_3, 0, 3, 1, 1)
        spacerItem80 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_229.addItem(spacerItem80, 3, 5, 1, 1)
        spacerItem81 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_229.addItem(spacerItem81, 0, 5, 1, 1)
        self.signature_threshold_button_4 = QtWidgets.QToolButton(parent=self.page_mindist)
        self.signature_threshold_button_4.setStyleSheet("margin: 0px;padding: 0px;")
        self.signature_threshold_button_4.setIcon(icon26)
        self.signature_threshold_button_4.setIconSize(QtCore.QSize(22, 22))
        self.signature_threshold_button_4.setObjectName("signature_threshold_button_4")
        self.gridLayout_229.addWidget(self.signature_threshold_button_4, 0, 4, 1, 1)
        self.confidence_raster_checkBox_2 = QtWidgets.QCheckBox(parent=self.page_mindist)
        self.confidence_raster_checkBox_2.setObjectName("confidence_raster_checkBox_2")
        self.gridLayout_229.addWidget(self.confidence_raster_checkBox_2, 2, 0, 1, 5)
        self.gridLayout_10.addLayout(self.gridLayout_229, 0, 0, 1, 1)
        self.toolBox_classification.addItem(self.page_mindist, "")
        self.page_mlp = QtWidgets.QWidget()
        self.page_mlp.setGeometry(QtCore.QRect(0, -119, 948, 283))
        self.page_mlp.setObjectName("page_mlp")
        self.gridLayout_91 = QtWidgets.QGridLayout(self.page_mlp)
        self.gridLayout_91.setObjectName("gridLayout_91")
        self.gridLayout_90 = QtWidgets.QGridLayout()
        self.gridLayout_90.setObjectName("gridLayout_90")
        spacerItem82 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_90.addItem(spacerItem82, 1, 2, 1, 1)
        spacerItem83 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_90.addItem(spacerItem83, 1, 8, 1, 1)
        self.training_proportion_SpinBox = QtWidgets.QDoubleSpinBox(parent=self.page_mlp)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.training_proportion_SpinBox.sizePolicy().hasHeightForWidth())
        self.training_proportion_SpinBox.setSizePolicy(sizePolicy)
        self.training_proportion_SpinBox.setMaximumSize(QtCore.QSize(100, 16777215))
        self.training_proportion_SpinBox.setAlignment(QtCore.Qt.AlignmentFlag.AlignRight|QtCore.Qt.AlignmentFlag.AlignTrailing|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.training_proportion_SpinBox.setDecimals(2)
        self.training_proportion_SpinBox.setMinimum(0.01)
        self.training_proportion_SpinBox.setMaximum(1.0)
        self.training_proportion_SpinBox.setSingleStep(0.1)
        self.training_proportion_SpinBox.setProperty("value", 0.9)
        self.training_proportion_SpinBox.setObjectName("training_proportion_SpinBox")
        self.gridLayout_90.addWidget(self.training_proportion_SpinBox, 2, 1, 1, 1)
        self.steps_SpinBox_2 = QtWidgets.QDoubleSpinBox(parent=self.page_mlp)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.steps_SpinBox_2.sizePolicy().hasHeightForWidth())
        self.steps_SpinBox_2.setSizePolicy(sizePolicy)
        self.steps_SpinBox_2.setMaximumSize(QtCore.QSize(100, 16777215))
        self.steps_SpinBox_2.setAlignment(QtCore.Qt.AlignmentFlag.AlignRight|QtCore.Qt.AlignmentFlag.AlignTrailing|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.steps_SpinBox_2.setDecimals(0)
        self.steps_SpinBox_2.setMinimum(1.0)
        self.steps_SpinBox_2.setMaximum(100.0)
        self.steps_SpinBox_2.setSingleStep(1.0)
        self.steps_SpinBox_2.setProperty("value", 5.0)
        self.steps_SpinBox_2.setObjectName("steps_SpinBox_2")
        self.gridLayout_90.addWidget(self.steps_SpinBox_2, 3, 4, 1, 1)
        self.label_241 = QtWidgets.QLabel(parent=self.page_mlp)
        self.label_241.setObjectName("label_241")
        self.gridLayout_90.addWidget(self.label_241, 2, 6, 1, 1)
        self.label_328 = QtWidgets.QLabel(parent=self.page_mlp)
        self.label_328.setObjectName("label_328")
        self.gridLayout_90.addWidget(self.label_328, 2, 3, 1, 1)
        self.batch_size_lineEdit = QtWidgets.QLineEdit(parent=self.page_mlp)
        self.batch_size_lineEdit.setMaxLength(10000)
        self.batch_size_lineEdit.setObjectName("batch_size_lineEdit")
        self.gridLayout_90.addWidget(self.batch_size_lineEdit, 2, 4, 1, 1)
        spacerItem84 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_90.addItem(spacerItem84, 2, 5, 1, 1)
        self.max_iterations_SpinBox = QtWidgets.QDoubleSpinBox(parent=self.page_mlp)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.max_iterations_SpinBox.sizePolicy().hasHeightForWidth())
        self.max_iterations_SpinBox.setSizePolicy(sizePolicy)
        self.max_iterations_SpinBox.setMaximumSize(QtCore.QSize(100, 16777215))
        self.max_iterations_SpinBox.setAlignment(QtCore.Qt.AlignmentFlag.AlignRight|QtCore.Qt.AlignmentFlag.AlignTrailing|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.max_iterations_SpinBox.setDecimals(0)
        self.max_iterations_SpinBox.setMinimum(1.0)
        self.max_iterations_SpinBox.setMaximum(100000.0)
        self.max_iterations_SpinBox.setSingleStep(10.0)
        self.max_iterations_SpinBox.setProperty("value", 300.0)
        self.max_iterations_SpinBox.setObjectName("max_iterations_SpinBox")
        self.gridLayout_90.addWidget(self.max_iterations_SpinBox, 1, 4, 1, 1)
        self.hidden_layers_lineEdit = QtWidgets.QLineEdit(parent=self.page_mlp)
        self.hidden_layers_lineEdit.setText("100")
        self.hidden_layers_lineEdit.setMaxLength(10000)
        self.hidden_layers_lineEdit.setObjectName("hidden_layers_lineEdit")
        self.gridLayout_90.addWidget(self.hidden_layers_lineEdit, 1, 1, 1, 1)
        self.learning_rate_SpinBox = QtWidgets.QDoubleSpinBox(parent=self.page_mlp)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.learning_rate_SpinBox.sizePolicy().hasHeightForWidth())
        self.learning_rate_SpinBox.setSizePolicy(sizePolicy)
        self.learning_rate_SpinBox.setMaximumSize(QtCore.QSize(100, 16777215))
        self.learning_rate_SpinBox.setAlignment(QtCore.Qt.AlignmentFlag.AlignRight|QtCore.Qt.AlignmentFlag.AlignTrailing|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.learning_rate_SpinBox.setDecimals(4)
        self.learning_rate_SpinBox.setMinimum(0.0001)
        self.learning_rate_SpinBox.setMaximum(1000.0)
        self.learning_rate_SpinBox.setSingleStep(0.01)
        self.learning_rate_SpinBox.setProperty("value", 0.001)
        self.learning_rate_SpinBox.setObjectName("learning_rate_SpinBox")
        self.gridLayout_90.addWidget(self.learning_rate_SpinBox, 2, 7, 1, 1)
        self.horizontalLayout_6 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_6.setObjectName("horizontalLayout_6")
        self.label_256 = QtWidgets.QLabel(parent=self.page_mlp)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_256.sizePolicy().hasHeightForWidth())
        self.label_256.setSizePolicy(sizePolicy)
        self.label_256.setObjectName("label_256")
        self.horizontalLayout_6.addWidget(self.label_256)
        self.scikit_radioButton = QtWidgets.QRadioButton(parent=self.page_mlp)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.scikit_radioButton.sizePolicy().hasHeightForWidth())
        self.scikit_radioButton.setSizePolicy(sizePolicy)
        self.scikit_radioButton.setChecked(True)
        self.scikit_radioButton.setObjectName("scikit_radioButton")
        self.horizontalLayout_6.addWidget(self.scikit_radioButton)
        self.pytorch_radioButton = QtWidgets.QRadioButton(parent=self.page_mlp)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.pytorch_radioButton.sizePolicy().hasHeightForWidth())
        self.pytorch_radioButton.setSizePolicy(sizePolicy)
        self.pytorch_radioButton.setObjectName("pytorch_radioButton")
        self.horizontalLayout_6.addWidget(self.pytorch_radioButton)
        spacerItem85 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.horizontalLayout_6.addItem(spacerItem85)
        self.gridLayout_90.addLayout(self.horizontalLayout_6, 0, 0, 1, 11)
        self.label_262 = QtWidgets.QLabel(parent=self.page_mlp)
        self.label_262.setObjectName("label_262")
        self.gridLayout_90.addWidget(self.label_262, 1, 3, 1, 1)
        self.best_estimator_checkBox_2 = QtWidgets.QCheckBox(parent=self.page_mlp)
        self.best_estimator_checkBox_2.setObjectName("best_estimator_checkBox_2")
        self.gridLayout_90.addWidget(self.best_estimator_checkBox_2, 3, 3, 1, 1)
        self.label_329 = QtWidgets.QLabel(parent=self.page_mlp)
        self.label_329.setObjectName("label_329")
        self.gridLayout_90.addWidget(self.label_329, 1, 6, 1, 1)
        self.label_242 = QtWidgets.QLabel(parent=self.page_mlp)
        self.label_242.setObjectName("label_242")
        self.gridLayout_90.addWidget(self.label_242, 1, 9, 1, 1)
        self.alpha_SpinBox = QtWidgets.QDoubleSpinBox(parent=self.page_mlp)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.alpha_SpinBox.sizePolicy().hasHeightForWidth())
        self.alpha_SpinBox.setSizePolicy(sizePolicy)
        self.alpha_SpinBox.setMaximumSize(QtCore.QSize(100, 16777215))
        self.alpha_SpinBox.setAlignment(QtCore.Qt.AlignmentFlag.AlignRight|QtCore.Qt.AlignmentFlag.AlignTrailing|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.alpha_SpinBox.setDecimals(5)
        self.alpha_SpinBox.setMinimum(1e-05)
        self.alpha_SpinBox.setMaximum(1000.0)
        self.alpha_SpinBox.setSingleStep(0.0001)
        self.alpha_SpinBox.setProperty("value", 0.01)
        self.alpha_SpinBox.setObjectName("alpha_SpinBox")
        self.gridLayout_90.addWidget(self.alpha_SpinBox, 1, 10, 1, 1)
        self.label_238 = QtWidgets.QLabel(parent=self.page_mlp)
        self.label_238.setObjectName("label_238")
        self.gridLayout_90.addWidget(self.label_238, 2, 0, 1, 1)
        self.confidence_raster_checkBox_3 = QtWidgets.QCheckBox(parent=self.page_mlp)
        self.confidence_raster_checkBox_3.setObjectName("confidence_raster_checkBox_3")
        self.gridLayout_90.addWidget(self.confidence_raster_checkBox_3, 3, 6, 1, 2)
        self.cross_validation_checkBox_3 = QtWidgets.QCheckBox(parent=self.page_mlp)
        self.cross_validation_checkBox_3.setObjectName("cross_validation_checkBox_3")
        self.gridLayout_90.addWidget(self.cross_validation_checkBox_3, 3, 0, 1, 2)
        self.gridLayout_102 = QtWidgets.QGridLayout()
        self.gridLayout_102.setObjectName("gridLayout_102")
        self.pretrained_model_checkBox = QtWidgets.QCheckBox(parent=self.page_mlp)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.pretrained_model_checkBox.sizePolicy().hasHeightForWidth())
        self.pretrained_model_checkBox.setSizePolicy(sizePolicy)
        self.pretrained_model_checkBox.setChecked(False)
        self.pretrained_model_checkBox.setObjectName("pretrained_model_checkBox")
        self.gridLayout_102.addWidget(self.pretrained_model_checkBox, 0, 1, 1, 1)
        self.pretrained_model_combo = QtWidgets.QComboBox(parent=self.page_mlp)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.pretrained_model_combo.sizePolicy().hasHeightForWidth())
        self.pretrained_model_combo.setSizePolicy(sizePolicy)
        self.pretrained_model_combo.setObjectName("pretrained_model_combo")
        self.gridLayout_102.addWidget(self.pretrained_model_combo, 0, 2, 1, 1)
        self.pretrained_textBrowser = QtWidgets.QTextBrowser(parent=self.page_mlp)
        self.pretrained_textBrowser.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.pretrained_textBrowser.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.pretrained_textBrowser.setOpenExternalLinks(True)
        self.pretrained_textBrowser.setObjectName("pretrained_textBrowser")
        self.gridLayout_102.addWidget(self.pretrained_textBrowser, 1, 2, 1, 1)
        self.label_272 = QtWidgets.QLabel(parent=self.page_mlp)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_272.sizePolicy().hasHeightForWidth())
        self.label_272.setSizePolicy(sizePolicy)
        self.label_272.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_272.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_272.setObjectName("label_272")
        self.gridLayout_102.addWidget(self.label_272, 1, 1, 1, 1)
        self.gridLayout_90.addLayout(self.gridLayout_102, 4, 0, 1, 11)
        self.activation_lineEdit = QtWidgets.QLineEdit(parent=self.page_mlp)
        self.activation_lineEdit.setMaxLength(10000)
        self.activation_lineEdit.setObjectName("activation_lineEdit")
        self.gridLayout_90.addWidget(self.activation_lineEdit, 1, 7, 1, 1)
        self.label_330 = QtWidgets.QLabel(parent=self.page_mlp)
        self.label_330.setObjectName("label_330")
        self.gridLayout_90.addWidget(self.label_330, 1, 0, 1, 1)
        self.gridLayout_91.addLayout(self.gridLayout_90, 0, 0, 1, 1)
        self.toolBox_classification.addItem(self.page_mlp, "")
        self.page_random_forest = QtWidgets.QWidget()
        self.page_random_forest.setGeometry(QtCore.QRect(0, 0, 1056, 215))
        self.page_random_forest.setObjectName("page_random_forest")
        self.gridLayout_89 = QtWidgets.QGridLayout(self.page_random_forest)
        self.gridLayout_89.setObjectName("gridLayout_89")
        self.gridLayout_88 = QtWidgets.QGridLayout()
        self.gridLayout_88.setObjectName("gridLayout_88")
        self.min_split_SpinBox = QtWidgets.QDoubleSpinBox(parent=self.page_random_forest)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.min_split_SpinBox.sizePolicy().hasHeightForWidth())
        self.min_split_SpinBox.setSizePolicy(sizePolicy)
        self.min_split_SpinBox.setMaximumSize(QtCore.QSize(100, 16777215))
        self.min_split_SpinBox.setAlignment(QtCore.Qt.AlignmentFlag.AlignRight|QtCore.Qt.AlignmentFlag.AlignTrailing|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.min_split_SpinBox.setDecimals(0)
        self.min_split_SpinBox.setMinimum(1.0)
        self.min_split_SpinBox.setMaximum(10000.0)
        self.min_split_SpinBox.setSingleStep(1.0)
        self.min_split_SpinBox.setProperty("value", 2.0)
        self.min_split_SpinBox.setObjectName("min_split_SpinBox")
        self.gridLayout_88.addWidget(self.min_split_SpinBox, 0, 4, 1, 1)
        self.confidence_raster_checkBox_4 = QtWidgets.QCheckBox(parent=self.page_random_forest)
        self.confidence_raster_checkBox_4.setObjectName("confidence_raster_checkBox_4")
        self.gridLayout_88.addWidget(self.confidence_raster_checkBox_4, 1, 7, 1, 1)
        self.number_trees_SpinBox = QtWidgets.QDoubleSpinBox(parent=self.page_random_forest)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.number_trees_SpinBox.sizePolicy().hasHeightForWidth())
        self.number_trees_SpinBox.setSizePolicy(sizePolicy)
        self.number_trees_SpinBox.setMaximumSize(QtCore.QSize(100, 16777215))
        self.number_trees_SpinBox.setAlignment(QtCore.Qt.AlignmentFlag.AlignRight|QtCore.Qt.AlignmentFlag.AlignTrailing|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.number_trees_SpinBox.setDecimals(0)
        self.number_trees_SpinBox.setMinimum(2.0)
        self.number_trees_SpinBox.setMaximum(10000.0)
        self.number_trees_SpinBox.setSingleStep(10.0)
        self.number_trees_SpinBox.setProperty("value", 500.0)
        self.number_trees_SpinBox.setObjectName("number_trees_SpinBox")
        self.gridLayout_88.addWidget(self.number_trees_SpinBox, 0, 1, 1, 1)
        self.class_weight_checkBox = QtWidgets.QCheckBox(parent=self.page_random_forest)
        self.class_weight_checkBox.setObjectName("class_weight_checkBox")
        self.gridLayout_88.addWidget(self.class_weight_checkBox, 1, 2, 1, 1)
        self.gridLayout_135 = QtWidgets.QGridLayout()
        self.gridLayout_135.setObjectName("gridLayout_135")
        self.pretrained_model_combo_2 = QtWidgets.QComboBox(parent=self.page_random_forest)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.pretrained_model_combo_2.sizePolicy().hasHeightForWidth())
        self.pretrained_model_combo_2.setSizePolicy(sizePolicy)
        self.pretrained_model_combo_2.setObjectName("pretrained_model_combo_2")
        self.gridLayout_135.addWidget(self.pretrained_model_combo_2, 0, 1, 1, 1)
        self.pretrained_textBrowser_2 = QtWidgets.QTextBrowser(parent=self.page_random_forest)
        self.pretrained_textBrowser_2.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.pretrained_textBrowser_2.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.pretrained_textBrowser_2.setOpenExternalLinks(True)
        self.pretrained_textBrowser_2.setObjectName("pretrained_textBrowser_2")
        self.gridLayout_135.addWidget(self.pretrained_textBrowser_2, 1, 1, 1, 1)
        self.pretrained_model_checkBox_2 = QtWidgets.QCheckBox(parent=self.page_random_forest)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.pretrained_model_checkBox_2.sizePolicy().hasHeightForWidth())
        self.pretrained_model_checkBox_2.setSizePolicy(sizePolicy)
        self.pretrained_model_checkBox_2.setChecked(False)
        self.pretrained_model_checkBox_2.setObjectName("pretrained_model_checkBox_2")
        self.gridLayout_135.addWidget(self.pretrained_model_checkBox_2, 0, 0, 1, 1)
        self.label_274 = QtWidgets.QLabel(parent=self.page_random_forest)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_274.sizePolicy().hasHeightForWidth())
        self.label_274.setSizePolicy(sizePolicy)
        self.label_274.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_274.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_274.setObjectName("label_274")
        self.gridLayout_135.addWidget(self.label_274, 1, 0, 1, 1)
        self.gridLayout_88.addLayout(self.gridLayout_135, 2, 0, 1, 9)
        spacerItem86 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_88.addItem(spacerItem86, 1, 8, 1, 1)
        self.best_estimator_checkBox = QtWidgets.QCheckBox(parent=self.page_random_forest)
        self.best_estimator_checkBox.setObjectName("best_estimator_checkBox")
        self.gridLayout_88.addWidget(self.best_estimator_checkBox, 1, 5, 1, 1)
        self.steps_SpinBox = QtWidgets.QDoubleSpinBox(parent=self.page_random_forest)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.steps_SpinBox.sizePolicy().hasHeightForWidth())
        self.steps_SpinBox.setSizePolicy(sizePolicy)
        self.steps_SpinBox.setMaximumSize(QtCore.QSize(100, 16777215))
        self.steps_SpinBox.setAlignment(QtCore.Qt.AlignmentFlag.AlignRight|QtCore.Qt.AlignmentFlag.AlignTrailing|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.steps_SpinBox.setDecimals(0)
        self.steps_SpinBox.setMinimum(1.0)
        self.steps_SpinBox.setMaximum(100.0)
        self.steps_SpinBox.setSingleStep(1.0)
        self.steps_SpinBox.setProperty("value", 5.0)
        self.steps_SpinBox.setObjectName("steps_SpinBox")
        self.gridLayout_88.addWidget(self.steps_SpinBox, 1, 6, 1, 1)
        self.cross_validation_checkBox_2 = QtWidgets.QCheckBox(parent=self.page_random_forest)
        self.cross_validation_checkBox_2.setObjectName("cross_validation_checkBox_2")
        self.gridLayout_88.addWidget(self.cross_validation_checkBox_2, 1, 1, 1, 1)
        self.max_features_lineEdit = QtWidgets.QLineEdit(parent=self.page_random_forest)
        self.max_features_lineEdit.setMaxLength(10000)
        self.max_features_lineEdit.setObjectName("max_features_lineEdit")
        self.gridLayout_88.addWidget(self.max_features_lineEdit, 0, 6, 1, 1)
        self.ovr_checkBox = QtWidgets.QCheckBox(parent=self.page_random_forest)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.ovr_checkBox.sizePolicy().hasHeightForWidth())
        self.ovr_checkBox.setSizePolicy(sizePolicy)
        self.ovr_checkBox.setObjectName("ovr_checkBox")
        self.gridLayout_88.addWidget(self.ovr_checkBox, 1, 0, 1, 1)
        self.label_160 = QtWidgets.QLabel(parent=self.page_random_forest)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_160.sizePolicy().hasHeightForWidth())
        self.label_160.setSizePolicy(sizePolicy)
        self.label_160.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_160.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_160.setObjectName("label_160")
        self.gridLayout_88.addWidget(self.label_160, 0, 2, 1, 2)
        self.label_153 = QtWidgets.QLabel(parent=self.page_random_forest)
        self.label_153.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_153.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_153.setObjectName("label_153")
        self.gridLayout_88.addWidget(self.label_153, 0, 5, 1, 1)
        self.label_155 = QtWidgets.QLabel(parent=self.page_random_forest)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_155.sizePolicy().hasHeightForWidth())
        self.label_155.setSizePolicy(sizePolicy)
        self.label_155.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_155.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_155.setObjectName("label_155")
        self.gridLayout_88.addWidget(self.label_155, 0, 0, 1, 1)
        self.gridLayout_89.addLayout(self.gridLayout_88, 0, 0, 1, 1)
        self.toolBox_classification.addItem(self.page_random_forest, "")
        self.page_sam = QtWidgets.QWidget()
        self.page_sam.setGeometry(QtCore.QRect(0, 0, 472, 108))
        self.page_sam.setObjectName("page_sam")
        self.gridLayout_93 = QtWidgets.QGridLayout(self.page_sam)
        self.gridLayout_93.setObjectName("gridLayout_93")
        self.gridLayout_227 = QtWidgets.QGridLayout()
        self.gridLayout_227.setObjectName("gridLayout_227")
        self.signature_threshold_button_3 = QtWidgets.QToolButton(parent=self.page_sam)
        self.signature_threshold_button_3.setStyleSheet("margin: 0px;padding: 0px;")
        self.signature_threshold_button_3.setIcon(icon26)
        self.signature_threshold_button_3.setIconSize(QtCore.QSize(22, 22))
        self.signature_threshold_button_3.setObjectName("signature_threshold_button_3")
        self.gridLayout_227.addWidget(self.signature_threshold_button_3, 0, 4, 1, 1)
        spacerItem87 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_227.addItem(spacerItem87, 0, 5, 1, 1)
        self.alg_threshold_SpinBox_3 = QtWidgets.QDoubleSpinBox(parent=self.page_sam)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.alg_threshold_SpinBox_3.sizePolicy().hasHeightForWidth())
        self.alg_threshold_SpinBox_3.setSizePolicy(sizePolicy)
        self.alg_threshold_SpinBox_3.setMaximumSize(QtCore.QSize(100, 16777215))
        self.alg_threshold_SpinBox_3.setAlignment(QtCore.Qt.AlignmentFlag.AlignRight|QtCore.Qt.AlignmentFlag.AlignTrailing|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.alg_threshold_SpinBox_3.setDecimals(4)
        self.alg_threshold_SpinBox_3.setMaximum(100.0)
        self.alg_threshold_SpinBox_3.setObjectName("alg_threshold_SpinBox_3")
        self.gridLayout_227.addWidget(self.alg_threshold_SpinBox_3, 0, 2, 1, 1)
        spacerItem88 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_227.addItem(spacerItem88, 3, 5, 1, 1)
        self.label_236 = QtWidgets.QLabel(parent=self.page_sam)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Minimum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_236.sizePolicy().hasHeightForWidth())
        self.label_236.setSizePolicy(sizePolicy)
        self.label_236.setMaximumSize(QtCore.QSize(100, 16777215))
        self.label_236.setObjectName("label_236")
        self.gridLayout_227.addWidget(self.label_236, 0, 0, 1, 1)
        self.single_threshold_checkBox_6 = QtWidgets.QCheckBox(parent=self.page_sam)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.single_threshold_checkBox_6.sizePolicy().hasHeightForWidth())
        self.single_threshold_checkBox_6.setSizePolicy(sizePolicy)
        self.single_threshold_checkBox_6.setChecked(False)
        self.single_threshold_checkBox_6.setObjectName("single_threshold_checkBox_6")
        self.gridLayout_227.addWidget(self.single_threshold_checkBox_6, 0, 1, 1, 1)
        self.single_threshold_checkBox_5 = QtWidgets.QCheckBox(parent=self.page_sam)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.single_threshold_checkBox_5.sizePolicy().hasHeightForWidth())
        self.single_threshold_checkBox_5.setSizePolicy(sizePolicy)
        self.single_threshold_checkBox_5.setObjectName("single_threshold_checkBox_5")
        self.gridLayout_227.addWidget(self.single_threshold_checkBox_5, 0, 3, 1, 1)
        self.confidence_raster_checkBox_5 = QtWidgets.QCheckBox(parent=self.page_sam)
        self.confidence_raster_checkBox_5.setObjectName("confidence_raster_checkBox_5")
        self.gridLayout_227.addWidget(self.confidence_raster_checkBox_5, 2, 0, 1, 5)
        self.signature_raster_checkBox = QtWidgets.QCheckBox(parent=self.page_sam)
        self.signature_raster_checkBox.setObjectName("signature_raster_checkBox")
        self.gridLayout_227.addWidget(self.signature_raster_checkBox, 1, 0, 1, 4)
        self.gridLayout_93.addLayout(self.gridLayout_227, 0, 0, 1, 1)
        self.toolBox_classification.addItem(self.page_sam, "")
        self.page_svm = QtWidgets.QWidget()
        self.page_svm.setGeometry(QtCore.QRect(0, 0, 513, 174))
        self.page_svm.setObjectName("page_svm")
        self.gridLayout_96 = QtWidgets.QGridLayout(self.page_svm)
        self.gridLayout_96.setObjectName("gridLayout_96")
        self.gridLayout_67 = QtWidgets.QGridLayout()
        self.gridLayout_67.setObjectName("gridLayout_67")
        self.param_c_SpinBox = QtWidgets.QDoubleSpinBox(parent=self.page_svm)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.param_c_SpinBox.sizePolicy().hasHeightForWidth())
        self.param_c_SpinBox.setSizePolicy(sizePolicy)
        self.param_c_SpinBox.setMaximumSize(QtCore.QSize(100, 16777215))
        self.param_c_SpinBox.setAlignment(QtCore.Qt.AlignmentFlag.AlignRight|QtCore.Qt.AlignmentFlag.AlignTrailing|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.param_c_SpinBox.setDecimals(4)
        self.param_c_SpinBox.setMinimum(1.0)
        self.param_c_SpinBox.setMaximum(10000.0)
        self.param_c_SpinBox.setSingleStep(1.0)
        self.param_c_SpinBox.setProperty("value", 100.0)
        self.param_c_SpinBox.setObjectName("param_c_SpinBox")
        self.gridLayout_67.addWidget(self.param_c_SpinBox, 0, 1, 1, 1)
        self.label_173 = QtWidgets.QLabel(parent=self.page_svm)
        self.label_173.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_173.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_173.setObjectName("label_173")
        self.gridLayout_67.addWidget(self.label_173, 0, 2, 1, 1)
        spacerItem89 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_67.addItem(spacerItem89, 0, 6, 1, 1)
        self.gamma_lineEdit = QtWidgets.QLineEdit(parent=self.page_svm)
        self.gamma_lineEdit.setText("scale")
        self.gamma_lineEdit.setMaxLength(10000)
        self.gamma_lineEdit.setObjectName("gamma_lineEdit")
        self.gridLayout_67.addWidget(self.gamma_lineEdit, 0, 5, 1, 1)
        self.cross_validation_checkBox = QtWidgets.QCheckBox(parent=self.page_svm)
        self.cross_validation_checkBox.setObjectName("cross_validation_checkBox")
        self.gridLayout_67.addWidget(self.cross_validation_checkBox, 1, 0, 1, 1)
        self.kernel_lineEdit = QtWidgets.QLineEdit(parent=self.page_svm)
        self.kernel_lineEdit.setText("rbf")
        self.kernel_lineEdit.setMaxLength(10000)
        self.kernel_lineEdit.setObjectName("kernel_lineEdit")
        self.gridLayout_67.addWidget(self.kernel_lineEdit, 0, 3, 1, 1)
        self.label_163 = QtWidgets.QLabel(parent=self.page_svm)
        self.label_163.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_163.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_163.setObjectName("label_163")
        self.gridLayout_67.addWidget(self.label_163, 0, 4, 1, 1)
        self.label_162 = QtWidgets.QLabel(parent=self.page_svm)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_162.sizePolicy().hasHeightForWidth())
        self.label_162.setSizePolicy(sizePolicy)
        self.label_162.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_162.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_162.setObjectName("label_162")
        self.gridLayout_67.addWidget(self.label_162, 0, 0, 1, 1)
        spacerItem90 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_67.addItem(spacerItem90, 5, 1, 1, 1)
        self.best_estimator_checkBox_3 = QtWidgets.QCheckBox(parent=self.page_svm)
        self.best_estimator_checkBox_3.setObjectName("best_estimator_checkBox_3")
        self.gridLayout_67.addWidget(self.best_estimator_checkBox_3, 3, 0, 1, 2)
        self.class_weight_checkBox_2 = QtWidgets.QCheckBox(parent=self.page_svm)
        self.class_weight_checkBox_2.setObjectName("class_weight_checkBox_2")
        self.gridLayout_67.addWidget(self.class_weight_checkBox_2, 2, 0, 1, 2)
        self.steps_SpinBox_3 = QtWidgets.QDoubleSpinBox(parent=self.page_svm)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.steps_SpinBox_3.sizePolicy().hasHeightForWidth())
        self.steps_SpinBox_3.setSizePolicy(sizePolicy)
        self.steps_SpinBox_3.setMaximumSize(QtCore.QSize(100, 16777215))
        self.steps_SpinBox_3.setAlignment(QtCore.Qt.AlignmentFlag.AlignRight|QtCore.Qt.AlignmentFlag.AlignTrailing|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.steps_SpinBox_3.setDecimals(0)
        self.steps_SpinBox_3.setMinimum(1.0)
        self.steps_SpinBox_3.setMaximum(100.0)
        self.steps_SpinBox_3.setSingleStep(1.0)
        self.steps_SpinBox_3.setProperty("value", 5.0)
        self.steps_SpinBox_3.setObjectName("steps_SpinBox_3")
        self.gridLayout_67.addWidget(self.steps_SpinBox_3, 3, 2, 1, 2)
        self.confidence_raster_checkBox_6 = QtWidgets.QCheckBox(parent=self.page_svm)
        self.confidence_raster_checkBox_6.setObjectName("confidence_raster_checkBox_6")
        self.gridLayout_67.addWidget(self.confidence_raster_checkBox_6, 4, 0, 1, 4)
        self.gridLayout_96.addLayout(self.gridLayout_67, 0, 0, 1, 1)
        self.toolBox_classification.addItem(self.page_svm, "")
        self.page = QtWidgets.QWidget()
        self.page.setGeometry(QtCore.QRect(0, 0, 911, 185))
        self.page.setObjectName("page")
        self.gridLayout_139 = QtWidgets.QGridLayout(self.page)
        self.gridLayout_139.setObjectName("gridLayout_139")
        self.gridLayout_137 = QtWidgets.QGridLayout()
        self.gridLayout_137.setObjectName("gridLayout_137")
        self.pretrained_model_combo_3 = QtWidgets.QComboBox(parent=self.page)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.pretrained_model_combo_3.sizePolicy().hasHeightForWidth())
        self.pretrained_model_combo_3.setSizePolicy(sizePolicy)
        self.pretrained_model_combo_3.setObjectName("pretrained_model_combo_3")
        self.gridLayout_137.addWidget(self.pretrained_model_combo_3, 0, 1, 1, 1)
        self.pretrained_textBrowser_3 = QtWidgets.QTextBrowser(parent=self.page)
        self.pretrained_textBrowser_3.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.pretrained_textBrowser_3.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.pretrained_textBrowser_3.setOpenExternalLinks(True)
        self.pretrained_textBrowser_3.setObjectName("pretrained_textBrowser_3")
        self.gridLayout_137.addWidget(self.pretrained_textBrowser_3, 1, 1, 1, 1)
        self.label_276 = QtWidgets.QLabel(parent=self.page)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_276.sizePolicy().hasHeightForWidth())
        self.label_276.setSizePolicy(sizePolicy)
        self.label_276.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_276.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_276.setObjectName("label_276")
        self.gridLayout_137.addWidget(self.label_276, 1, 0, 1, 1)
        self.label_277 = QtWidgets.QLabel(parent=self.page)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_277.sizePolicy().hasHeightForWidth())
        self.label_277.setSizePolicy(sizePolicy)
        self.label_277.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_277.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_277.setObjectName("label_277")
        self.gridLayout_137.addWidget(self.label_277, 0, 0, 1, 1)
        self.gridLayout_139.addLayout(self.gridLayout_137, 0, 0, 1, 1)
        self.toolBox_classification.addItem(self.page, "")
        self.gridLayout_151.addWidget(self.toolBox_classification, 2, 0, 1, 1)
        self.tabWidget_4.addTab(self.tab_classification, "")
        self.tab_neighbor_pixels = QtWidgets.QWidget()
        self.tab_neighbor_pixels.setObjectName("tab_neighbor_pixels")
        self.gridLayout_2 = QtWidgets.QGridLayout(self.tab_neighbor_pixels)
        self.gridLayout_2.setObjectName("gridLayout_2")
        self.gridLayout_240 = QtWidgets.QGridLayout()
        self.gridLayout_240.setObjectName("gridLayout_240")
        self.label_283 = QtWidgets.QLabel(parent=self.tab_neighbor_pixels)
        self.label_283.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_283.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_283.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_283.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_283.setObjectName("label_283")
        self.gridLayout_240.addWidget(self.label_283, 8, 0, 1, 3)
        self.gridLayout_309 = QtWidgets.QGridLayout()
        self.gridLayout_309.setObjectName("gridLayout_309")
        self.label_287 = QtWidgets.QLabel(parent=self.tab_neighbor_pixels)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_287.sizePolicy().hasHeightForWidth())
        self.label_287.setSizePolicy(sizePolicy)
        self.label_287.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_287.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_287.setText("")
        self.label_287.setObjectName("label_287")
        self.gridLayout_309.addWidget(self.label_287, 0, 1, 1, 1)
        self.label_281 = QtWidgets.QLabel(parent=self.tab_neighbor_pixels)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_281.sizePolicy().hasHeightForWidth())
        self.label_281.setSizePolicy(sizePolicy)
        self.label_281.setMinimumSize(QtCore.QSize(229, 0))
        font = QtGui.QFont()
        font.setBold(False)
        self.label_281.setFont(font)
        self.label_281.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_281.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_281.setObjectName("label_281")
        self.gridLayout_309.addWidget(self.label_281, 0, 0, 1, 1)
        self.toolButton_input_matrix = QtWidgets.QToolButton(parent=self.tab_neighbor_pixels)
        self.toolButton_input_matrix.setStyleSheet("margin: 0px;padding: 0px;")
        self.toolButton_input_matrix.setIcon(icon7)
        self.toolButton_input_matrix.setIconSize(QtCore.QSize(22, 22))
        self.toolButton_input_matrix.setObjectName("toolButton_input_matrix")
        self.gridLayout_309.addWidget(self.toolButton_input_matrix, 0, 2, 1, 1)
        self.horizontalLayout_71 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_71.setObjectName("horizontalLayout_71")
        self.label_279 = QtWidgets.QLabel(parent=self.tab_neighbor_pixels)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_279.sizePolicy().hasHeightForWidth())
        self.label_279.setSizePolicy(sizePolicy)
        self.label_279.setMinimumSize(QtCore.QSize(229, 0))
        self.label_279.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_279.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_279.setObjectName("label_279")
        self.horizontalLayout_71.addWidget(self.label_279)
        self.neighbor_output_name_lineEdit = QtWidgets.QLineEdit(parent=self.tab_neighbor_pixels)
        self.neighbor_output_name_lineEdit.setMaxLength(10)
        self.neighbor_output_name_lineEdit.setObjectName("neighbor_output_name_lineEdit")
        self.horizontalLayout_71.addWidget(self.neighbor_output_name_lineEdit)
        self.neighbor_virtual_checkBox = QtWidgets.QCheckBox(parent=self.tab_neighbor_pixels)
        self.neighbor_virtual_checkBox.setObjectName("neighbor_virtual_checkBox")
        self.horizontalLayout_71.addWidget(self.neighbor_virtual_checkBox)
        self.gridLayout_309.addLayout(self.horizontalLayout_71, 2, 0, 1, 3)
        self.gridLayout_240.addLayout(self.gridLayout_309, 2, 0, 1, 3)
        self.neighbor_pixels = QtWidgets.QToolButton(parent=self.tab_neighbor_pixels)
        font = QtGui.QFont()
        font.setBold(True)
        self.neighbor_pixels.setFont(font)
        self.neighbor_pixels.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.neighbor_pixels.setStyleSheet("margin: 0px;padding: 0px;")
        self.neighbor_pixels.setIcon(icon24)
        self.neighbor_pixels.setIconSize(QtCore.QSize(34, 34))
        self.neighbor_pixels.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.neighbor_pixels.setObjectName("neighbor_pixels")
        self.gridLayout_240.addWidget(self.neighbor_pixels, 9, 1, 1, 1)
        spacerItem91 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_240.addItem(spacerItem91, 9, 0, 1, 1)
        self.class_neighbor_toolButton = QtWidgets.QToolButton(parent=self.tab_neighbor_pixels)
        font = QtGui.QFont()
        font.setBold(True)
        self.class_neighbor_toolButton.setFont(font)
        self.class_neighbor_toolButton.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.class_neighbor_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.class_neighbor_toolButton.setIcon(icon8)
        self.class_neighbor_toolButton.setIconSize(QtCore.QSize(34, 34))
        self.class_neighbor_toolButton.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.class_neighbor_toolButton.setObjectName("class_neighbor_toolButton")
        self.gridLayout_240.addWidget(self.class_neighbor_toolButton, 9, 2, 1, 1)
        spacerItem92 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_240.addItem(spacerItem92, 7, 2, 1, 1)
        self.horizontalLayout_70 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_70.setObjectName("horizontalLayout_70")
        self.label_286 = QtWidgets.QLabel(parent=self.tab_neighbor_pixels)
        self.label_286.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_286.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_286.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_286.setObjectName("label_286")
        self.horizontalLayout_70.addWidget(self.label_286)
        self.gridLayout_240.addLayout(self.horizontalLayout_70, 0, 0, 1, 3)
        self.gridLayout_277 = QtWidgets.QGridLayout()
        self.gridLayout_277.setObjectName("gridLayout_277")
        self.statistic_lineEdit_2 = QtWidgets.QLineEdit(parent=self.tab_neighbor_pixels)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.MinimumExpanding, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.statistic_lineEdit_2.sizePolicy().hasHeightForWidth())
        self.statistic_lineEdit_2.setSizePolicy(sizePolicy)
        self.statistic_lineEdit_2.setMaximumSize(QtCore.QSize(200, 16777215))
        self.statistic_lineEdit_2.setText("")
        self.statistic_lineEdit_2.setMaxLength(10000)
        self.statistic_lineEdit_2.setObjectName("statistic_lineEdit_2")
        self.gridLayout_277.addWidget(self.statistic_lineEdit_2, 1, 2, 1, 1)
        self.statistic_name_combobox_2 = QtWidgets.QComboBox(parent=self.tab_neighbor_pixels)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.statistic_name_combobox_2.sizePolicy().hasHeightForWidth())
        self.statistic_name_combobox_2.setSizePolicy(sizePolicy)
        self.statistic_name_combobox_2.setMaximumSize(QtCore.QSize(200, 16777215))
        self.statistic_name_combobox_2.setObjectName("statistic_name_combobox_2")
        self.gridLayout_277.addWidget(self.statistic_name_combobox_2, 1, 1, 1, 1)
        self.label_284 = QtWidgets.QLabel(parent=self.tab_neighbor_pixels)
        self.label_284.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_284.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_284.setObjectName("label_284")
        self.gridLayout_277.addWidget(self.label_284, 1, 0, 1, 1)
        spacerItem93 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_277.addItem(spacerItem93, 1, 3, 1, 1)
        self.label_285 = QtWidgets.QLabel(parent=self.tab_neighbor_pixels)
        self.label_285.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_285.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_285.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_285.setObjectName("label_285")
        self.gridLayout_277.addWidget(self.label_285, 0, 0, 1, 4)
        self.gridLayout_240.addLayout(self.gridLayout_277, 6, 0, 1, 3)
        self.gridLayout_300 = QtWidgets.QGridLayout()
        self.gridLayout_300.setObjectName("gridLayout_300")
        self.label_282 = QtWidgets.QLabel(parent=self.tab_neighbor_pixels)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_282.sizePolicy().hasHeightForWidth())
        self.label_282.setSizePolicy(sizePolicy)
        self.label_282.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_282.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_282.setObjectName("label_282")
        self.gridLayout_300.addWidget(self.label_282, 0, 0, 1, 1)
        self.label_280 = QtWidgets.QLabel(parent=self.tab_neighbor_pixels)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_280.sizePolicy().hasHeightForWidth())
        self.label_280.setSizePolicy(sizePolicy)
        self.label_280.setMinimumSize(QtCore.QSize(229, 0))
        self.label_280.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_280.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_280.setObjectName("label_280")
        self.gridLayout_300.addWidget(self.label_280, 1, 0, 1, 1)
        self.band_set_comb_spinBox_15 = QtWidgets.QSpinBox(parent=self.tab_neighbor_pixels)
        self.band_set_comb_spinBox_15.setMinimum(1)
        self.band_set_comb_spinBox_15.setMaximum(100000)
        self.band_set_comb_spinBox_15.setObjectName("band_set_comb_spinBox_15")
        self.gridLayout_300.addWidget(self.band_set_comb_spinBox_15, 0, 1, 1, 1)
        self.class_neighbor_threshold_spinBox = QtWidgets.QSpinBox(parent=self.tab_neighbor_pixels)
        self.class_neighbor_threshold_spinBox.setMinimum(1)
        self.class_neighbor_threshold_spinBox.setMaximum(1000)
        self.class_neighbor_threshold_spinBox.setProperty("value", 1)
        self.class_neighbor_threshold_spinBox.setObjectName("class_neighbor_threshold_spinBox")
        self.gridLayout_300.addWidget(self.class_neighbor_threshold_spinBox, 1, 1, 1, 1)
        spacerItem94 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_300.addItem(spacerItem94, 1, 3, 1, 1)
        self.circular_structure_checkBox = QtWidgets.QCheckBox(parent=self.tab_neighbor_pixels)
        self.circular_structure_checkBox.setObjectName("circular_structure_checkBox")
        self.gridLayout_300.addWidget(self.circular_structure_checkBox, 1, 2, 1, 1)
        self.gridLayout_240.addLayout(self.gridLayout_300, 1, 0, 1, 3)
        self.horizontalLayout_72 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_72.setObjectName("horizontalLayout_72")
        spacerItem95 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.horizontalLayout_72.addItem(spacerItem95)
        self.gridLayout_240.addLayout(self.horizontalLayout_72, 3, 0, 1, 3)
        self.gridLayout_2.addLayout(self.gridLayout_240, 0, 0, 1, 1)
        self.tabWidget_4.addTab(self.tab_neighbor_pixels, "")
        self.tab_clustering = QtWidgets.QWidget()
        self.tab_clustering.setObjectName("tab_clustering")
        self.gridLayout_104 = QtWidgets.QGridLayout(self.tab_clustering)
        self.gridLayout_104.setObjectName("gridLayout_104")
        self.gridLayout_62 = QtWidgets.QGridLayout()
        self.gridLayout_62.setObjectName("gridLayout_62")
        self.gridLayout_239 = QtWidgets.QGridLayout()
        self.gridLayout_239.setObjectName("gridLayout_239")
        self.label_181 = QtWidgets.QLabel(parent=self.tab_clustering)
        self.label_181.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_181.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_181.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_181.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_181.setObjectName("label_181")
        self.gridLayout_239.addWidget(self.label_181, 2, 0, 1, 4)
        self.clustering_toolButton = QtWidgets.QToolButton(parent=self.tab_clustering)
        font = QtGui.QFont()
        font.setBold(True)
        self.clustering_toolButton.setFont(font)
        self.clustering_toolButton.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.clustering_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.clustering_toolButton.setIcon(icon8)
        self.clustering_toolButton.setIconSize(QtCore.QSize(34, 34))
        self.clustering_toolButton.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.clustering_toolButton.setObjectName("clustering_toolButton")
        self.gridLayout_239.addWidget(self.clustering_toolButton, 3, 3, 1, 1)
        spacerItem96 = QtWidgets.QSpacerItem(38, 0, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_239.addItem(spacerItem96, 1, 3, 1, 1)
        spacerItem97 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_239.addItem(spacerItem97, 3, 0, 1, 2)
        self.clustering = QtWidgets.QToolButton(parent=self.tab_clustering)
        font = QtGui.QFont()
        font.setBold(True)
        self.clustering.setFont(font)
        self.clustering.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.clustering.setStyleSheet("margin: 0px;padding: 0px;")
        self.clustering.setIcon(icon24)
        self.clustering.setIconSize(QtCore.QSize(34, 34))
        self.clustering.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.clustering.setObjectName("clustering")
        self.gridLayout_239.addWidget(self.clustering, 3, 2, 1, 1)
        self.gridLayout_138 = QtWidgets.QGridLayout()
        self.gridLayout_138.setObjectName("gridLayout_138")
        self.min_distance_radioButton = QtWidgets.QRadioButton(parent=self.tab_clustering)
        self.min_distance_radioButton.setChecked(True)
        self.min_distance_radioButton.setAutoExclusive(False)
        self.min_distance_radioButton.setObjectName("min_distance_radioButton")
        self.gridLayout_138.addWidget(self.min_distance_radioButton, 2, 1, 1, 1)
        self.kmean_save_siglist_checkBox = QtWidgets.QCheckBox(parent=self.tab_clustering)
        self.kmean_save_siglist_checkBox.setObjectName("kmean_save_siglist_checkBox")
        self.gridLayout_138.addWidget(self.kmean_save_siglist_checkBox, 3, 0, 1, 4)
        self.label_234 = QtWidgets.QLabel(parent=self.tab_clustering)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_234.sizePolicy().hasHeightForWidth())
        self.label_234.setSizePolicy(sizePolicy)
        self.label_234.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_234.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_234.setObjectName("label_234")
        self.gridLayout_138.addWidget(self.label_234, 2, 0, 1, 1)
        self.horizontalLayout_42 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_42.setObjectName("horizontalLayout_42")
        self.label_108 = QtWidgets.QLabel(parent=self.tab_clustering)
        self.label_108.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_108.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_108.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_108.setObjectName("label_108")
        self.horizontalLayout_42.addWidget(self.label_108)
        self.gridLayout_138.addLayout(self.horizontalLayout_42, 0, 0, 1, 4)
        self.gridLayout_103 = QtWidgets.QGridLayout()
        self.gridLayout_103.setObjectName("gridLayout_103")
        self.gridLayout_241 = QtWidgets.QGridLayout()
        self.gridLayout_241.setObjectName("gridLayout_241")
        self.kmean_siglist_radioButton = QtWidgets.QRadioButton(parent=self.tab_clustering)
        self.kmean_siglist_radioButton.setChecked(False)
        self.kmean_siglist_radioButton.setAutoExclusive(False)
        self.kmean_siglist_radioButton.setObjectName("kmean_siglist_radioButton")
        self.gridLayout_241.addWidget(self.kmean_siglist_radioButton, 0, 1, 1, 1)
        self.kmean_randomsiglist_radioButton = QtWidgets.QRadioButton(parent=self.tab_clustering)
        self.kmean_randomsiglist_radioButton.setChecked(False)
        self.kmean_randomsiglist_radioButton.setAutoExclusive(False)
        self.kmean_randomsiglist_radioButton.setObjectName("kmean_randomsiglist_radioButton")
        self.gridLayout_241.addWidget(self.kmean_randomsiglist_radioButton, 0, 2, 1, 1)
        self.kmean_minmax_radioButton = QtWidgets.QRadioButton(parent=self.tab_clustering)
        self.kmean_minmax_radioButton.setChecked(True)
        self.kmean_minmax_radioButton.setAutoExclusive(False)
        self.kmean_minmax_radioButton.setObjectName("kmean_minmax_radioButton")
        self.gridLayout_241.addWidget(self.kmean_minmax_radioButton, 0, 0, 1, 1)
        self.gridLayout_103.addLayout(self.gridLayout_241, 1, 0, 1, 1)
        self.gridLayout_138.addLayout(self.gridLayout_103, 1, 0, 1, 4)
        self.spectral_angle_map_radioButton = QtWidgets.QRadioButton(parent=self.tab_clustering)
        self.spectral_angle_map_radioButton.setChecked(False)
        self.spectral_angle_map_radioButton.setAutoExclusive(False)
        self.spectral_angle_map_radioButton.setObjectName("spectral_angle_map_radioButton")
        self.gridLayout_138.addWidget(self.spectral_angle_map_radioButton, 2, 2, 1, 1)
        self.gridLayout_239.addLayout(self.gridLayout_138, 0, 0, 1, 4)
        self.gridLayout_62.addLayout(self.gridLayout_239, 2, 0, 1, 1)
        self.gridLayout_156 = QtWidgets.QGridLayout()
        self.gridLayout_156.setObjectName("gridLayout_156")
        self.label_246 = QtWidgets.QLabel(parent=self.tab_clustering)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_246.sizePolicy().hasHeightForWidth())
        self.label_246.setSizePolicy(sizePolicy)
        self.label_246.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_246.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_246.setObjectName("label_246")
        self.gridLayout_156.addWidget(self.label_246, 1, 3, 1, 1)
        self.kmeans_radioButton = QtWidgets.QRadioButton(parent=self.tab_clustering)
        self.kmeans_radioButton.setEnabled(False)
        self.kmeans_radioButton.setChecked(True)
        self.kmeans_radioButton.setAutoExclusive(False)
        self.kmeans_radioButton.setObjectName("kmeans_radioButton")
        self.gridLayout_156.addWidget(self.kmeans_radioButton, 1, 4, 1, 1)
        self.label_273 = QtWidgets.QLabel(parent=self.tab_clustering)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_273.sizePolicy().hasHeightForWidth())
        self.label_273.setSizePolicy(sizePolicy)
        self.label_273.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_273.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_273.setObjectName("label_273")
        self.gridLayout_156.addWidget(self.label_273, 1, 0, 1, 1)
        self.band_set_comb_spinBox_5 = QtWidgets.QSpinBox(parent=self.tab_clustering)
        self.band_set_comb_spinBox_5.setMinimum(1)
        self.band_set_comb_spinBox_5.setMaximum(100000)
        self.band_set_comb_spinBox_5.setObjectName("band_set_comb_spinBox_5")
        self.gridLayout_156.addWidget(self.band_set_comb_spinBox_5, 1, 1, 1, 1)
        spacerItem98 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_156.addItem(spacerItem98, 1, 5, 1, 1)
        spacerItem99 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_156.addItem(spacerItem99, 1, 2, 1, 1)
        self.horizontalLayout_45 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_45.setObjectName("horizontalLayout_45")
        self.label_86 = QtWidgets.QLabel(parent=self.tab_clustering)
        self.label_86.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_86.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_86.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_86.setObjectName("label_86")
        self.horizontalLayout_45.addWidget(self.label_86)
        self.gridLayout_156.addLayout(self.horizontalLayout_45, 0, 0, 1, 6)
        self.gridLayout_62.addLayout(self.gridLayout_156, 0, 0, 1, 1)
        self.gridLayout_131 = QtWidgets.QGridLayout()
        self.gridLayout_131.setObjectName("gridLayout_131")
        self.kmeans_iter_spinBox = QtWidgets.QSpinBox(parent=self.tab_clustering)
        self.kmeans_iter_spinBox.setMinimum(1)
        self.kmeans_iter_spinBox.setMaximum(1000)
        self.kmeans_iter_spinBox.setProperty("value", 10)
        self.kmeans_iter_spinBox.setObjectName("kmeans_iter_spinBox")
        self.gridLayout_131.addWidget(self.kmeans_iter_spinBox, 1, 1, 1, 1)
        self.label_244 = QtWidgets.QLabel(parent=self.tab_clustering)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_244.sizePolicy().hasHeightForWidth())
        self.label_244.setSizePolicy(sizePolicy)
        self.label_244.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_244.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_244.setObjectName("label_244")
        self.gridLayout_131.addWidget(self.label_244, 0, 2, 1, 1)
        self.kmeans_classes_spinBox = QtWidgets.QSpinBox(parent=self.tab_clustering)
        self.kmeans_classes_spinBox.setMinimum(1)
        self.kmeans_classes_spinBox.setMaximum(1000)
        self.kmeans_classes_spinBox.setProperty("value", 10)
        self.kmeans_classes_spinBox.setObjectName("kmeans_classes_spinBox")
        self.gridLayout_131.addWidget(self.kmeans_classes_spinBox, 0, 3, 1, 1)
        self.nodata_checkBox_8 = QtWidgets.QCheckBox(parent=self.tab_clustering)
        self.nodata_checkBox_8.setObjectName("nodata_checkBox_8")
        self.gridLayout_131.addWidget(self.nodata_checkBox_8, 2, 0, 1, 1)
        self.kmean_threshold_checkBox = QtWidgets.QCheckBox(parent=self.tab_clustering)
        self.kmean_threshold_checkBox.setChecked(True)
        self.kmean_threshold_checkBox.setObjectName("kmean_threshold_checkBox")
        self.gridLayout_131.addWidget(self.kmean_threshold_checkBox, 0, 0, 1, 1)
        self.thresh_doubleSpinBox = QtWidgets.QDoubleSpinBox(parent=self.tab_clustering)
        self.thresh_doubleSpinBox.setDecimals(7)
        self.thresh_doubleSpinBox.setMinimum(1e-06)
        self.thresh_doubleSpinBox.setMaximum(10000000.0)
        self.thresh_doubleSpinBox.setSingleStep(1e-05)
        self.thresh_doubleSpinBox.setProperty("value", 0.0001)
        self.thresh_doubleSpinBox.setObjectName("thresh_doubleSpinBox")
        self.gridLayout_131.addWidget(self.thresh_doubleSpinBox, 0, 1, 1, 1)
        self.nodata_spinBox_9 = QtWidgets.QSpinBox(parent=self.tab_clustering)
        self.nodata_spinBox_9.setMinimum(-999999999)
        self.nodata_spinBox_9.setMaximum(999999999)
        self.nodata_spinBox_9.setProperty("value", 0)
        self.nodata_spinBox_9.setObjectName("nodata_spinBox_9")
        self.gridLayout_131.addWidget(self.nodata_spinBox_9, 2, 1, 1, 1)
        self.label_245 = QtWidgets.QLabel(parent=self.tab_clustering)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_245.sizePolicy().hasHeightForWidth())
        self.label_245.setSizePolicy(sizePolicy)
        self.label_245.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_245.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_245.setObjectName("label_245")
        self.gridLayout_131.addWidget(self.label_245, 1, 0, 1, 1)
        spacerItem100 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_131.addItem(spacerItem100, 0, 4, 1, 1)
        self.gridLayout_62.addLayout(self.gridLayout_131, 1, 0, 1, 1)
        self.gridLayout_104.addLayout(self.gridLayout_62, 0, 0, 1, 1)
        self.tabWidget_4.addTab(self.tab_clustering, "")
        self.tab_spectral_distance1 = QtWidgets.QWidget()
        self.tab_spectral_distance1.setObjectName("tab_spectral_distance1")
        self.gridLayout_108 = QtWidgets.QGridLayout(self.tab_spectral_distance1)
        self.gridLayout_108.setObjectName("gridLayout_108")
        self.gridLayout_149 = QtWidgets.QGridLayout()
        self.gridLayout_149.setObjectName("gridLayout_149")
        spacerItem101 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_149.addItem(spacerItem101, 5, 0, 1, 2)
        self.label_183 = QtWidgets.QLabel(parent=self.tab_spectral_distance1)
        self.label_183.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_183.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_183.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_183.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_183.setObjectName("label_183")
        self.gridLayout_149.addWidget(self.label_183, 4, 0, 1, 4)
        self.spectral_distance_toolButton = QtWidgets.QToolButton(parent=self.tab_spectral_distance1)
        font = QtGui.QFont()
        font.setBold(True)
        self.spectral_distance_toolButton.setFont(font)
        self.spectral_distance_toolButton.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.spectral_distance_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.spectral_distance_toolButton.setIcon(icon8)
        self.spectral_distance_toolButton.setIconSize(QtCore.QSize(34, 34))
        self.spectral_distance_toolButton.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.spectral_distance_toolButton.setObjectName("spectral_distance_toolButton")
        self.gridLayout_149.addWidget(self.spectral_distance_toolButton, 5, 3, 1, 1)
        self.gridLayout_101 = QtWidgets.QGridLayout()
        self.gridLayout_101.setObjectName("gridLayout_101")
        self.label_257 = QtWidgets.QLabel(parent=self.tab_spectral_distance1)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_257.sizePolicy().hasHeightForWidth())
        self.label_257.setSizePolicy(sizePolicy)
        self.label_257.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_257.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_257.setObjectName("label_257")
        self.gridLayout_101.addWidget(self.label_257, 0, 0, 1, 1)
        self.band_set_comb_spinBox_7 = QtWidgets.QSpinBox(parent=self.tab_spectral_distance1)
        self.band_set_comb_spinBox_7.setMinimum(1)
        self.band_set_comb_spinBox_7.setMaximum(100000)
        self.band_set_comb_spinBox_7.setProperty("value", 2)
        self.band_set_comb_spinBox_7.setObjectName("band_set_comb_spinBox_7")
        self.gridLayout_101.addWidget(self.band_set_comb_spinBox_7, 1, 1, 1, 1)
        self.label_259 = QtWidgets.QLabel(parent=self.tab_spectral_distance1)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_259.sizePolicy().hasHeightForWidth())
        self.label_259.setSizePolicy(sizePolicy)
        self.label_259.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_259.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_259.setObjectName("label_259")
        self.gridLayout_101.addWidget(self.label_259, 1, 0, 1, 1)
        self.band_set_comb_spinBox_6 = QtWidgets.QSpinBox(parent=self.tab_spectral_distance1)
        self.band_set_comb_spinBox_6.setMinimum(1)
        self.band_set_comb_spinBox_6.setMaximum(100000)
        self.band_set_comb_spinBox_6.setObjectName("band_set_comb_spinBox_6")
        self.gridLayout_101.addWidget(self.band_set_comb_spinBox_6, 0, 1, 1, 1)
        spacerItem102 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_101.addItem(spacerItem102, 1, 2, 1, 1)
        self.gridLayout_149.addLayout(self.gridLayout_101, 1, 0, 1, 4)
        self.spectral_distance = QtWidgets.QToolButton(parent=self.tab_spectral_distance1)
        font = QtGui.QFont()
        font.setBold(True)
        self.spectral_distance.setFont(font)
        self.spectral_distance.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.spectral_distance.setStyleSheet("margin: 0px;padding: 0px;")
        self.spectral_distance.setIcon(icon24)
        self.spectral_distance.setIconSize(QtCore.QSize(34, 34))
        self.spectral_distance.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.spectral_distance.setObjectName("spectral_distance")
        self.gridLayout_149.addWidget(self.spectral_distance, 5, 2, 1, 1)
        spacerItem103 = QtWidgets.QSpacerItem(38, 18, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_149.addItem(spacerItem103, 3, 0, 1, 1)
        self.horizontalLayout_32 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_32.setObjectName("horizontalLayout_32")
        self.horizontalLayout_31 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_31.setObjectName("horizontalLayout_31")
        self.label_143 = QtWidgets.QLabel(parent=self.tab_spectral_distance1)
        self.label_143.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_143.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_143.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_143.setObjectName("label_143")
        self.horizontalLayout_31.addWidget(self.label_143)
        self.horizontalLayout_32.addLayout(self.horizontalLayout_31)
        self.gridLayout_149.addLayout(self.horizontalLayout_32, 0, 0, 1, 4)
        self.gridLayout_105 = QtWidgets.QGridLayout()
        self.gridLayout_105.setObjectName("gridLayout_105")
        self.distance_threshold_checkBox = QtWidgets.QCheckBox(parent=self.tab_spectral_distance1)
        self.distance_threshold_checkBox.setChecked(True)
        self.distance_threshold_checkBox.setObjectName("distance_threshold_checkBox")
        self.gridLayout_105.addWidget(self.distance_threshold_checkBox, 1, 0, 1, 1)
        spacerItem104 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_105.addItem(spacerItem104, 1, 2, 1, 1)
        self.thresh_doubleSpinBox_2 = QtWidgets.QDoubleSpinBox(parent=self.tab_spectral_distance1)
        self.thresh_doubleSpinBox_2.setDecimals(7)
        self.thresh_doubleSpinBox_2.setMinimum(1e-06)
        self.thresh_doubleSpinBox_2.setMaximum(10000.0)
        self.thresh_doubleSpinBox_2.setSingleStep(1.0)
        self.thresh_doubleSpinBox_2.setProperty("value", 0.1)
        self.thresh_doubleSpinBox_2.setObjectName("thresh_doubleSpinBox_2")
        self.gridLayout_105.addWidget(self.thresh_doubleSpinBox_2, 1, 1, 1, 1)
        self.horizontalLayout = QtWidgets.QHBoxLayout()
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.label_231 = QtWidgets.QLabel(parent=self.tab_spectral_distance1)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_231.sizePolicy().hasHeightForWidth())
        self.label_231.setSizePolicy(sizePolicy)
        self.label_231.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_231.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_231.setObjectName("label_231")
        self.horizontalLayout.addWidget(self.label_231)
        self.min_distance_radioButton_2 = QtWidgets.QRadioButton(parent=self.tab_spectral_distance1)
        self.min_distance_radioButton_2.setChecked(True)
        self.min_distance_radioButton_2.setAutoExclusive(True)
        self.min_distance_radioButton_2.setObjectName("min_distance_radioButton_2")
        self.horizontalLayout.addWidget(self.min_distance_radioButton_2)
        self.spectral_angle_map_radioButton_2 = QtWidgets.QRadioButton(parent=self.tab_spectral_distance1)
        self.spectral_angle_map_radioButton_2.setChecked(False)
        self.spectral_angle_map_radioButton_2.setAutoExclusive(True)
        self.spectral_angle_map_radioButton_2.setObjectName("spectral_angle_map_radioButton_2")
        self.horizontalLayout.addWidget(self.spectral_angle_map_radioButton_2)
        spacerItem105 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.horizontalLayout.addItem(spacerItem105)
        self.gridLayout_105.addLayout(self.horizontalLayout, 0, 0, 1, 3)
        self.gridLayout_149.addLayout(self.gridLayout_105, 2, 0, 1, 4)
        self.gridLayout_108.addLayout(self.gridLayout_149, 0, 0, 1, 1)
        self.tabWidget_4.addTab(self.tab_spectral_distance1, "")
        self.gridLayout_128.addWidget(self.tabWidget_4, 0, 0, 1, 1)
        self.SCP_tabs.addTab(self.tab_band_processing, "")
        self.tab_postProcessing = QtWidgets.QWidget()
        self.tab_postProcessing.setObjectName("tab_postProcessing")
        self.gridLayout_552 = QtWidgets.QGridLayout(self.tab_postProcessing)
        self.gridLayout_552.setContentsMargins(3, 3, 3, 3)
        self.gridLayout_552.setObjectName("gridLayout_552")
        self.tabWidget_2 = QtWidgets.QTabWidget(parent=self.tab_postProcessing)
        self.tabWidget_2.setStyleSheet("")
        self.tabWidget_2.setIconSize(QtCore.QSize(20, 20))
        self.tabWidget_2.setDocumentMode(True)
        self.tabWidget_2.setObjectName("tabWidget_2")
        self.tab_accuracy = QtWidgets.QWidget()
        self.tab_accuracy.setObjectName("tab_accuracy")
        self.gridLayout_184 = QtWidgets.QGridLayout(self.tab_accuracy)
        self.gridLayout_184.setObjectName("gridLayout_184")
        self.toolBox_accuracy = QtWidgets.QToolBox(parent=self.tab_accuracy)
        self.toolBox_accuracy.setObjectName("toolBox_accuracy")
        self.page_10 = QtWidgets.QWidget()
        self.page_10.setGeometry(QtCore.QRect(0, 0, 917, 516))
        self.page_10.setObjectName("page_10")
        self.gridLayout_36 = QtWidgets.QGridLayout(self.page_10)
        self.gridLayout_36.setObjectName("gridLayout_36")
        self.gridLayout_33 = QtWidgets.QGridLayout()
        self.gridLayout_33.setObjectName("gridLayout_33")
        self.label_33 = QtWidgets.QLabel(parent=self.page_10)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_33.sizePolicy().hasHeightForWidth())
        self.label_33.setSizePolicy(sizePolicy)
        self.label_33.setMinimumSize(QtCore.QSize(229, 0))
        self.label_33.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_33.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_33.setObjectName("label_33")
        self.gridLayout_33.addWidget(self.label_33, 1, 0, 1, 1)
        self.label_34 = QtWidgets.QLabel(parent=self.page_10)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_34.sizePolicy().hasHeightForWidth())
        self.label_34.setSizePolicy(sizePolicy)
        self.label_34.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_34.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_34.setObjectName("label_34")
        self.gridLayout_33.addWidget(self.label_34, 2, 0, 1, 1)
        self.classification_name_combo = QtWidgets.QComboBox(parent=self.page_10)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.classification_name_combo.sizePolicy().hasHeightForWidth())
        self.classification_name_combo.setSizePolicy(sizePolicy)
        self.classification_name_combo.setObjectName("classification_name_combo")
        self.gridLayout_33.addWidget(self.classification_name_combo, 1, 1, 1, 3)
        self.buttonReload_shape_4 = QtWidgets.QToolButton(parent=self.page_10)
        self.buttonReload_shape_4.setStyleSheet("margin: 0px;padding: 0px;")
        self.buttonReload_shape_4.setIcon(icon25)
        self.buttonReload_shape_4.setIconSize(QtCore.QSize(22, 22))
        self.buttonReload_shape_4.setObjectName("buttonReload_shape_4")
        self.gridLayout_33.addWidget(self.buttonReload_shape_4, 2, 4, 1, 1)
        self.toolButton_reload_4 = QtWidgets.QToolButton(parent=self.page_10)
        self.toolButton_reload_4.setStyleSheet("margin: 0px;padding: 0px;")
        self.toolButton_reload_4.setIcon(icon25)
        self.toolButton_reload_4.setIconSize(QtCore.QSize(22, 22))
        self.toolButton_reload_4.setObjectName("toolButton_reload_4")
        self.gridLayout_33.addWidget(self.toolButton_reload_4, 1, 4, 1, 1)
        self.reference_name_combo = QtWidgets.QComboBox(parent=self.page_10)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.reference_name_combo.sizePolicy().hasHeightForWidth())
        self.reference_name_combo.setSizePolicy(sizePolicy)
        self.reference_name_combo.setObjectName("reference_name_combo")
        self.gridLayout_33.addWidget(self.reference_name_combo, 2, 1, 1, 3)
        self.horizontalLayout_36 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_36.setObjectName("horizontalLayout_36")
        self.label_145 = QtWidgets.QLabel(parent=self.page_10)
        self.label_145.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_145.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_145.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_145.setObjectName("label_145")
        self.horizontalLayout_36.addWidget(self.label_145)
        self.gridLayout_33.addLayout(self.horizontalLayout_36, 0, 0, 1, 5)
        self.label_82 = QtWidgets.QLabel(parent=self.page_10)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.MinimumExpanding, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_82.sizePolicy().hasHeightForWidth())
        self.label_82.setSizePolicy(sizePolicy)
        self.label_82.setMinimumSize(QtCore.QSize(6, 0))
        self.label_82.setMaximumSize(QtCore.QSize(100, 200))
        self.label_82.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_82.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_82.setObjectName("label_82")
        self.gridLayout_33.addWidget(self.label_82, 3, 1, 1, 1)
        self.class_field_comboBox = QtWidgets.QComboBox(parent=self.page_10)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.MinimumExpanding, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.class_field_comboBox.sizePolicy().hasHeightForWidth())
        self.class_field_comboBox.setSizePolicy(sizePolicy)
        self.class_field_comboBox.setObjectName("class_field_comboBox")
        self.gridLayout_33.addWidget(self.class_field_comboBox, 3, 2, 1, 2)
        self.horizontalLayout_67 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_67.setObjectName("horizontalLayout_67")
        self.nodata_checkBox_11 = QtWidgets.QCheckBox(parent=self.page_10)
        self.nodata_checkBox_11.setObjectName("nodata_checkBox_11")
        self.horizontalLayout_67.addWidget(self.nodata_checkBox_11)
        self.nodata_spinBox_15 = QtWidgets.QSpinBox(parent=self.page_10)
        self.nodata_spinBox_15.setMinimum(-2147483647)
        self.nodata_spinBox_15.setMaximum(2147483647)
        self.nodata_spinBox_15.setProperty("value", 0)
        self.nodata_spinBox_15.setObjectName("nodata_spinBox_15")
        self.horizontalLayout_67.addWidget(self.nodata_spinBox_15)
        spacerItem106 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.horizontalLayout_67.addItem(spacerItem106)
        self.gridLayout_33.addLayout(self.horizontalLayout_67, 4, 0, 1, 5)
        self.gridLayout_36.addLayout(self.gridLayout_33, 0, 0, 1, 1)
        self.gridLayout_25 = QtWidgets.QGridLayout()
        self.gridLayout_25.setObjectName("gridLayout_25")
        spacerItem107 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_25.addItem(spacerItem107, 0, 2, 1, 1)
        spacerItem108 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_25.addItem(spacerItem108, 2, 0, 1, 1)
        self.label_168 = QtWidgets.QLabel(parent=self.page_10)
        self.label_168.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_168.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_168.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_168.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_168.setObjectName("label_168")
        self.gridLayout_25.addWidget(self.label_168, 1, 0, 1, 3)
        self.calculateMatrix_toolButton = QtWidgets.QToolButton(parent=self.page_10)
        font = QtGui.QFont()
        font.setBold(True)
        self.calculateMatrix_toolButton.setFont(font)
        self.calculateMatrix_toolButton.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.calculateMatrix_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.calculateMatrix_toolButton.setIcon(icon8)
        self.calculateMatrix_toolButton.setIconSize(QtCore.QSize(34, 34))
        self.calculateMatrix_toolButton.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.calculateMatrix_toolButton.setObjectName("calculateMatrix_toolButton")
        self.gridLayout_25.addWidget(self.calculateMatrix_toolButton, 2, 2, 1, 1)
        self.accuracy = QtWidgets.QToolButton(parent=self.page_10)
        font = QtGui.QFont()
        font.setBold(True)
        self.accuracy.setFont(font)
        self.accuracy.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.accuracy.setStyleSheet("margin: 0px;padding: 0px;")
        self.accuracy.setIcon(icon24)
        self.accuracy.setIconSize(QtCore.QSize(34, 34))
        self.accuracy.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.accuracy.setObjectName("accuracy")
        self.gridLayout_25.addWidget(self.accuracy, 2, 1, 1, 1)
        self.gridLayout_36.addLayout(self.gridLayout_25, 1, 0, 1, 1)
        self.toolBox_accuracy.addItem(self.page_10, "")
        self.page_11 = QtWidgets.QWidget()
        self.page_11.setGeometry(QtCore.QRect(0, 0, 101, 101))
        self.page_11.setObjectName("page_11")
        self.gridLayout_35 = QtWidgets.QGridLayout(self.page_11)
        self.gridLayout_35.setObjectName("gridLayout_35")
        self.gridLayout_34 = QtWidgets.QGridLayout()
        self.gridLayout_34.setObjectName("gridLayout_34")
        self.error_matrix_textBrowser = QtWidgets.QTextBrowser(parent=self.page_11)
        font = QtGui.QFont()
        font.setFamily("Courier 10 Pitch")
        self.error_matrix_textBrowser.setFont(font)
        self.error_matrix_textBrowser.setTabChangesFocus(True)
        self.error_matrix_textBrowser.setLineWrapMode(QtWidgets.QTextEdit.LineWrapMode.NoWrap)
        self.error_matrix_textBrowser.setHtml("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><meta charset=\"utf-8\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"hr { height: 1px; border-width: 0; }\n"
"li.unchecked::marker { content: \"\\2610\"; }\n"
"li.checked::marker { content: \"\\2612\"; }\n"
"</style></head><body style=\" font-family:\'Courier 10 Pitch\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:11pt;\"><br /></span></p></body></html>")
        self.error_matrix_textBrowser.setOpenLinks(False)
        self.error_matrix_textBrowser.setProperty("tabStopWidth", 120)
        self.error_matrix_textBrowser.setObjectName("error_matrix_textBrowser")
        self.gridLayout_34.addWidget(self.error_matrix_textBrowser, 0, 0, 1, 1)
        self.gridLayout_35.addLayout(self.gridLayout_34, 0, 0, 1, 1)
        self.toolBox_accuracy.addItem(self.page_11, "")
        self.gridLayout_184.addWidget(self.toolBox_accuracy, 0, 0, 1, 1)
        self.tabWidget_2.addTab(self.tab_accuracy, "")
        self.tab_class_report = QtWidgets.QWidget()
        self.tab_class_report.setObjectName("tab_class_report")
        self.gridLayout_27 = QtWidgets.QGridLayout(self.tab_class_report)
        self.gridLayout_27.setObjectName("gridLayout_27")
        self.toolBox_class_report = QtWidgets.QToolBox(parent=self.tab_class_report)
        self.toolBox_class_report.setStyleSheet("")
        self.toolBox_class_report.setObjectName("toolBox_class_report")
        self.page_14 = QtWidgets.QWidget()
        self.page_14.setGeometry(QtCore.QRect(0, 0, 420, 175))
        self.page_14.setObjectName("page_14")
        self.gridLayout_48 = QtWidgets.QGridLayout(self.page_14)
        self.gridLayout_48.setObjectName("gridLayout_48")
        self.gridLayout_47 = QtWidgets.QGridLayout()
        self.gridLayout_47.setObjectName("gridLayout_47")
        self.classification_report_name_combo = QtWidgets.QComboBox(parent=self.page_14)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.classification_report_name_combo.sizePolicy().hasHeightForWidth())
        self.classification_report_name_combo.setSizePolicy(sizePolicy)
        self.classification_report_name_combo.setObjectName("classification_report_name_combo")
        self.gridLayout_47.addWidget(self.classification_report_name_combo, 1, 1, 1, 1)
        self.label_44 = QtWidgets.QLabel(parent=self.page_14)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_44.sizePolicy().hasHeightForWidth())
        self.label_44.setSizePolicy(sizePolicy)
        self.label_44.setMinimumSize(QtCore.QSize(229, 0))
        self.label_44.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_44.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_44.setObjectName("label_44")
        self.gridLayout_47.addWidget(self.label_44, 1, 0, 1, 1)
        self.gridLayout_26 = QtWidgets.QGridLayout()
        self.gridLayout_26.setObjectName("gridLayout_26")
        self.nodata_checkBox = QtWidgets.QCheckBox(parent=self.page_14)
        self.nodata_checkBox.setObjectName("nodata_checkBox")
        self.gridLayout_26.addWidget(self.nodata_checkBox, 0, 0, 1, 1)
        self.nodata_spinBox_2 = QtWidgets.QSpinBox(parent=self.page_14)
        self.nodata_spinBox_2.setMinimum(-2147483647)
        self.nodata_spinBox_2.setMaximum(2147483647)
        self.nodata_spinBox_2.setProperty("value", 0)
        self.nodata_spinBox_2.setObjectName("nodata_spinBox_2")
        self.gridLayout_26.addWidget(self.nodata_spinBox_2, 0, 1, 1, 1)
        self.gridLayout_47.addLayout(self.gridLayout_26, 2, 0, 1, 1)
        self.toolButton_reload_10 = QtWidgets.QToolButton(parent=self.page_14)
        self.toolButton_reload_10.setStyleSheet("margin: 0px;padding: 0px;")
        self.toolButton_reload_10.setIcon(icon25)
        self.toolButton_reload_10.setIconSize(QtCore.QSize(22, 22))
        self.toolButton_reload_10.setObjectName("toolButton_reload_10")
        self.gridLayout_47.addWidget(self.toolButton_reload_10, 1, 2, 1, 1)
        self.gridLayout_48.addLayout(self.gridLayout_47, 1, 1, 1, 1)
        self.gridLayout_189 = QtWidgets.QGridLayout()
        self.gridLayout_189.setObjectName("gridLayout_189")
        spacerItem109 = QtWidgets.QSpacerItem(358, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_189.addItem(spacerItem109, 2, 1, 1, 1)
        self.label_170 = QtWidgets.QLabel(parent=self.page_14)
        self.label_170.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_170.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_170.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_170.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_170.setObjectName("label_170")
        self.gridLayout_189.addWidget(self.label_170, 1, 0, 1, 4)
        self.calculateReport_toolButton = QtWidgets.QToolButton(parent=self.page_14)
        font = QtGui.QFont()
        font.setBold(True)
        self.calculateReport_toolButton.setFont(font)
        self.calculateReport_toolButton.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.calculateReport_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.calculateReport_toolButton.setIcon(icon8)
        self.calculateReport_toolButton.setIconSize(QtCore.QSize(34, 34))
        self.calculateReport_toolButton.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.calculateReport_toolButton.setObjectName("calculateReport_toolButton")
        self.gridLayout_189.addWidget(self.calculateReport_toolButton, 2, 3, 1, 1)
        spacerItem110 = QtWidgets.QSpacerItem(20, 82, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_189.addItem(spacerItem110, 0, 0, 1, 2)
        self.classification_report = QtWidgets.QToolButton(parent=self.page_14)
        font = QtGui.QFont()
        font.setBold(True)
        self.classification_report.setFont(font)
        self.classification_report.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.classification_report.setStyleSheet("margin: 0px;padding: 0px;")
        self.classification_report.setIcon(icon24)
        self.classification_report.setIconSize(QtCore.QSize(34, 34))
        self.classification_report.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.classification_report.setObjectName("classification_report")
        self.gridLayout_189.addWidget(self.classification_report, 2, 2, 1, 1)
        self.gridLayout_48.addLayout(self.gridLayout_189, 2, 1, 1, 1)
        self.horizontalLayout_37 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_37.setObjectName("horizontalLayout_37")
        self.label_148 = QtWidgets.QLabel(parent=self.page_14)
        self.label_148.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_148.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_148.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_148.setObjectName("label_148")
        self.horizontalLayout_37.addWidget(self.label_148)
        self.gridLayout_48.addLayout(self.horizontalLayout_37, 0, 1, 1, 1)
        self.toolBox_class_report.addItem(self.page_14, "")
        self.page_15 = QtWidgets.QWidget()
        self.page_15.setGeometry(QtCore.QRect(0, 0, 101, 101))
        self.page_15.setObjectName("page_15")
        self.gridLayout_188 = QtWidgets.QGridLayout(self.page_15)
        self.gridLayout_188.setObjectName("gridLayout_188")
        self.gridLayout_43 = QtWidgets.QGridLayout()
        self.gridLayout_43.setObjectName("gridLayout_43")
        self.report_textBrowser = QtWidgets.QTextBrowser(parent=self.page_15)
        font = QtGui.QFont()
        font.setFamily("Courier 10 Pitch")
        self.report_textBrowser.setFont(font)
        self.report_textBrowser.setTabChangesFocus(True)
        self.report_textBrowser.setLineWrapMode(QtWidgets.QTextEdit.LineWrapMode.NoWrap)
        self.report_textBrowser.setHtml("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><meta charset=\"utf-8\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"hr { height: 1px; border-width: 0; }\n"
"li.unchecked::marker { content: \"\\2610\"; }\n"
"li.checked::marker { content: \"\\2612\"; }\n"
"</style></head><body style=\" font-family:\'Courier 10 Pitch\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:11pt;\"><br /></p></body></html>")
        self.report_textBrowser.setOpenLinks(False)
        self.report_textBrowser.setProperty("tabStopWidth", 160)
        self.report_textBrowser.setObjectName("report_textBrowser")
        self.gridLayout_43.addWidget(self.report_textBrowser, 0, 0, 1, 1)
        self.gridLayout_188.addLayout(self.gridLayout_43, 0, 0, 1, 1)
        self.toolBox_class_report.addItem(self.page_15, "")
        self.gridLayout_27.addWidget(self.toolBox_class_report, 0, 0, 1, 1)
        self.tabWidget_2.addTab(self.tab_class_report, "")
        self.tab_cross_classification = QtWidgets.QWidget()
        self.tab_cross_classification.setObjectName("tab_cross_classification")
        self.gridLayout_254 = QtWidgets.QGridLayout(self.tab_cross_classification)
        self.gridLayout_254.setObjectName("gridLayout_254")
        self.toolBox_cross_classification = QtWidgets.QToolBox(parent=self.tab_cross_classification)
        self.toolBox_cross_classification.setObjectName("toolBox_cross_classification")
        self.page_19 = QtWidgets.QWidget()
        self.page_19.setGeometry(QtCore.QRect(0, 0, 432, 279))
        self.page_19.setObjectName("page_19")
        self.gridLayout_192 = QtWidgets.QGridLayout(self.page_19)
        self.gridLayout_192.setObjectName("gridLayout_192")
        self.horizontalLayout_38 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_38.setObjectName("horizontalLayout_38")
        self.label_187 = QtWidgets.QLabel(parent=self.page_19)
        self.label_187.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_187.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_187.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_187.setObjectName("label_187")
        self.horizontalLayout_38.addWidget(self.label_187)
        self.gridLayout_192.addLayout(self.horizontalLayout_38, 0, 0, 1, 1)
        self.gridLayout_250 = QtWidgets.QGridLayout()
        self.gridLayout_250.setObjectName("gridLayout_250")
        self.gridLayout_248 = QtWidgets.QGridLayout()
        self.gridLayout_248.setObjectName("gridLayout_248")
        self.nodata_checkBox_6 = QtWidgets.QCheckBox(parent=self.page_19)
        self.nodata_checkBox_6.setObjectName("nodata_checkBox_6")
        self.gridLayout_248.addWidget(self.nodata_checkBox_6, 0, 0, 1, 1)
        self.nodata_spinBox_7 = QtWidgets.QSpinBox(parent=self.page_19)
        self.nodata_spinBox_7.setMinimum(-2147483647)
        self.nodata_spinBox_7.setMaximum(2147483647)
        self.nodata_spinBox_7.setObjectName("nodata_spinBox_7")
        self.gridLayout_248.addWidget(self.nodata_spinBox_7, 0, 1, 1, 1)
        self.gridLayout_250.addLayout(self.gridLayout_248, 2, 0, 1, 1)
        self.label_197 = QtWidgets.QLabel(parent=self.page_19)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_197.sizePolicy().hasHeightForWidth())
        self.label_197.setSizePolicy(sizePolicy)
        self.label_197.setMinimumSize(QtCore.QSize(229, 0))
        self.label_197.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_197.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_197.setObjectName("label_197")
        self.gridLayout_250.addWidget(self.label_197, 1, 0, 1, 1)
        self.label_199 = QtWidgets.QLabel(parent=self.page_19)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.MinimumExpanding, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_199.sizePolicy().hasHeightForWidth())
        self.label_199.setSizePolicy(sizePolicy)
        self.label_199.setMinimumSize(QtCore.QSize(6, 0))
        self.label_199.setMaximumSize(QtCore.QSize(100, 200))
        self.label_199.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_199.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_199.setObjectName("label_199")
        self.gridLayout_250.addWidget(self.label_199, 4, 1, 1, 1)
        self.class_field_comboBox_2 = QtWidgets.QComboBox(parent=self.page_19)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.MinimumExpanding, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.class_field_comboBox_2.sizePolicy().hasHeightForWidth())
        self.class_field_comboBox_2.setSizePolicy(sizePolicy)
        self.class_field_comboBox_2.setObjectName("class_field_comboBox_2")
        self.gridLayout_250.addWidget(self.class_field_comboBox_2, 4, 2, 1, 2)
        self.toolButton_reload_21 = QtWidgets.QToolButton(parent=self.page_19)
        self.toolButton_reload_21.setStyleSheet("margin: 0px;padding: 0px;")
        self.toolButton_reload_21.setIcon(icon25)
        self.toolButton_reload_21.setIconSize(QtCore.QSize(22, 22))
        self.toolButton_reload_21.setObjectName("toolButton_reload_21")
        self.gridLayout_250.addWidget(self.toolButton_reload_21, 1, 4, 1, 1)
        self.classification_name_combo_2 = QtWidgets.QComboBox(parent=self.page_19)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.classification_name_combo_2.sizePolicy().hasHeightForWidth())
        self.classification_name_combo_2.setSizePolicy(sizePolicy)
        self.classification_name_combo_2.setObjectName("classification_name_combo_2")
        self.gridLayout_250.addWidget(self.classification_name_combo_2, 1, 1, 1, 3)
        self.buttonReload_shape_5 = QtWidgets.QToolButton(parent=self.page_19)
        self.buttonReload_shape_5.setStyleSheet("margin: 0px;padding: 0px;")
        self.buttonReload_shape_5.setIcon(icon25)
        self.buttonReload_shape_5.setIconSize(QtCore.QSize(22, 22))
        self.buttonReload_shape_5.setObjectName("buttonReload_shape_5")
        self.gridLayout_250.addWidget(self.buttonReload_shape_5, 3, 4, 1, 1)
        self.reference_name_combo_2 = QtWidgets.QComboBox(parent=self.page_19)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.reference_name_combo_2.sizePolicy().hasHeightForWidth())
        self.reference_name_combo_2.setSizePolicy(sizePolicy)
        self.reference_name_combo_2.setObjectName("reference_name_combo_2")
        self.gridLayout_250.addWidget(self.reference_name_combo_2, 3, 1, 1, 3)
        self.label_198 = QtWidgets.QLabel(parent=self.page_19)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_198.sizePolicy().hasHeightForWidth())
        self.label_198.setSizePolicy(sizePolicy)
        self.label_198.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_198.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_198.setObjectName("label_198")
        self.gridLayout_250.addWidget(self.label_198, 3, 0, 1, 1)
        self.regression_raster_checkBox = QtWidgets.QCheckBox(parent=self.page_19)
        self.regression_raster_checkBox.setObjectName("regression_raster_checkBox")
        self.gridLayout_250.addWidget(self.regression_raster_checkBox, 5, 0, 1, 1)
        self.gridLayout_192.addLayout(self.gridLayout_250, 1, 0, 1, 1)
        self.gridLayout_251 = QtWidgets.QGridLayout()
        self.gridLayout_251.setObjectName("gridLayout_251")
        spacerItem111 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_251.addItem(spacerItem111, 0, 2, 1, 1)
        spacerItem112 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_251.addItem(spacerItem112, 2, 0, 1, 1)
        self.label_200 = QtWidgets.QLabel(parent=self.page_19)
        self.label_200.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_200.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_200.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_200.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_200.setObjectName("label_200")
        self.gridLayout_251.addWidget(self.label_200, 1, 0, 1, 3)
        self.calculatecrossClass_toolButton = QtWidgets.QToolButton(parent=self.page_19)
        font = QtGui.QFont()
        font.setBold(True)
        self.calculatecrossClass_toolButton.setFont(font)
        self.calculatecrossClass_toolButton.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.calculatecrossClass_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.calculatecrossClass_toolButton.setIcon(icon8)
        self.calculatecrossClass_toolButton.setIconSize(QtCore.QSize(34, 34))
        self.calculatecrossClass_toolButton.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.calculatecrossClass_toolButton.setObjectName("calculatecrossClass_toolButton")
        self.gridLayout_251.addWidget(self.calculatecrossClass_toolButton, 2, 2, 1, 1)
        self.cross_classification = QtWidgets.QToolButton(parent=self.page_19)
        font = QtGui.QFont()
        font.setBold(True)
        self.cross_classification.setFont(font)
        self.cross_classification.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.cross_classification.setStyleSheet("margin: 0px;padding: 0px;")
        self.cross_classification.setIcon(icon24)
        self.cross_classification.setIconSize(QtCore.QSize(34, 34))
        self.cross_classification.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.cross_classification.setObjectName("cross_classification")
        self.gridLayout_251.addWidget(self.cross_classification, 2, 1, 1, 1)
        self.gridLayout_192.addLayout(self.gridLayout_251, 2, 0, 1, 1)
        self.toolBox_cross_classification.addItem(self.page_19, "")
        self.page_22 = QtWidgets.QWidget()
        self.page_22.setGeometry(QtCore.QRect(0, 0, 101, 101))
        self.page_22.setObjectName("page_22")
        self.gridLayout_252 = QtWidgets.QGridLayout(self.page_22)
        self.gridLayout_252.setObjectName("gridLayout_252")
        self.gridLayout_253 = QtWidgets.QGridLayout()
        self.gridLayout_253.setObjectName("gridLayout_253")
        self.cross_matrix_textBrowser = QtWidgets.QTextBrowser(parent=self.page_22)
        font = QtGui.QFont()
        font.setFamily("Courier 10 Pitch")
        self.cross_matrix_textBrowser.setFont(font)
        self.cross_matrix_textBrowser.setTabChangesFocus(True)
        self.cross_matrix_textBrowser.setLineWrapMode(QtWidgets.QTextEdit.LineWrapMode.NoWrap)
        self.cross_matrix_textBrowser.setHtml("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><meta charset=\"utf-8\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"hr { height: 1px; border-width: 0; }\n"
"li.unchecked::marker { content: \"\\2610\"; }\n"
"li.checked::marker { content: \"\\2612\"; }\n"
"</style></head><body style=\" font-family:\'Courier 10 Pitch\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;\"><br /></p></body></html>")
        self.cross_matrix_textBrowser.setOpenLinks(False)
        self.cross_matrix_textBrowser.setProperty("tabStopWidth", 120)
        self.cross_matrix_textBrowser.setObjectName("cross_matrix_textBrowser")
        self.gridLayout_253.addWidget(self.cross_matrix_textBrowser, 0, 0, 1, 1)
        self.gridLayout_252.addLayout(self.gridLayout_253, 0, 0, 1, 1)
        self.toolBox_cross_classification.addItem(self.page_22, "")
        self.gridLayout_254.addWidget(self.toolBox_cross_classification, 0, 0, 1, 1)
        self.tabWidget_2.addTab(self.tab_cross_classification, "")
        self.tab_class_to_vector = QtWidgets.QWidget()
        self.tab_class_to_vector.setObjectName("tab_class_to_vector")
        self.gridLayout_49 = QtWidgets.QGridLayout(self.tab_class_to_vector)
        self.gridLayout_49.setObjectName("gridLayout_49")
        self.horizontalLayout_40 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_40.setObjectName("horizontalLayout_40")
        self.label_189 = QtWidgets.QLabel(parent=self.tab_class_to_vector)
        self.label_189.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_189.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_189.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_189.setObjectName("label_189")
        self.horizontalLayout_40.addWidget(self.label_189)
        self.gridLayout_49.addLayout(self.horizontalLayout_40, 0, 0, 1, 1)
        self.gridLayout_71 = QtWidgets.QGridLayout()
        self.gridLayout_71.setObjectName("gridLayout_71")
        self.label_63 = QtWidgets.QLabel(parent=self.tab_class_to_vector)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_63.sizePolicy().hasHeightForWidth())
        self.label_63.setSizePolicy(sizePolicy)
        self.label_63.setMinimumSize(QtCore.QSize(229, 0))
        self.label_63.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_63.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_63.setObjectName("label_63")
        self.gridLayout_71.addWidget(self.label_63, 0, 0, 1, 1)
        self.classification_vector_name_combo = QtWidgets.QComboBox(parent=self.tab_class_to_vector)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.classification_vector_name_combo.sizePolicy().hasHeightForWidth())
        self.classification_vector_name_combo.setSizePolicy(sizePolicy)
        self.classification_vector_name_combo.setObjectName("classification_vector_name_combo")
        self.gridLayout_71.addWidget(self.classification_vector_name_combo, 0, 1, 1, 1)
        self.toolButton_reload_11 = QtWidgets.QToolButton(parent=self.tab_class_to_vector)
        self.toolButton_reload_11.setStyleSheet("margin: 0px;padding: 0px;")
        self.toolButton_reload_11.setIcon(icon25)
        self.toolButton_reload_11.setIconSize(QtCore.QSize(22, 22))
        self.toolButton_reload_11.setObjectName("toolButton_reload_11")
        self.gridLayout_71.addWidget(self.toolButton_reload_11, 0, 2, 1, 1)
        self.gridLayout_49.addLayout(self.gridLayout_71, 1, 0, 1, 1)
        self.gridLayout_74 = QtWidgets.QGridLayout()
        self.gridLayout_74.setObjectName("gridLayout_74")
        self.class_macroclass_comboBox = QtWidgets.QComboBox(parent=self.tab_class_to_vector)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.class_macroclass_comboBox.sizePolicy().hasHeightForWidth())
        self.class_macroclass_comboBox.setSizePolicy(sizePolicy)
        self.class_macroclass_comboBox.setObjectName("class_macroclass_comboBox")
        self.class_macroclass_comboBox.addItem("")
        self.class_macroclass_comboBox.addItem("")
        self.gridLayout_74.addWidget(self.class_macroclass_comboBox, 1, 1, 1, 1)
        self.use_class_code_checkBox = QtWidgets.QCheckBox(parent=self.tab_class_to_vector)
        self.use_class_code_checkBox.setObjectName("use_class_code_checkBox")
        self.gridLayout_74.addWidget(self.use_class_code_checkBox, 1, 0, 1, 1)
        self.label_49 = QtWidgets.QLabel(parent=self.tab_class_to_vector)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_49.sizePolicy().hasHeightForWidth())
        self.label_49.setSizePolicy(sizePolicy)
        self.label_49.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_49.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_49.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_49.setObjectName("label_49")
        self.gridLayout_74.addWidget(self.label_49, 0, 0, 1, 2)
        self.dissolve_output_checkBox = QtWidgets.QCheckBox(parent=self.tab_class_to_vector)
        self.dissolve_output_checkBox.setObjectName("dissolve_output_checkBox")
        self.gridLayout_74.addWidget(self.dissolve_output_checkBox, 2, 0, 1, 1)
        self.gridLayout_49.addLayout(self.gridLayout_74, 2, 0, 1, 1)
        self.gridLayout_75 = QtWidgets.QGridLayout()
        self.gridLayout_75.setObjectName("gridLayout_75")
        spacerItem113 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_75.addItem(spacerItem113, 0, 1, 1, 1)
        spacerItem114 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_75.addItem(spacerItem114, 0, 0, 1, 1)
        self.convert_toolButton = QtWidgets.QToolButton(parent=self.tab_class_to_vector)
        font = QtGui.QFont()
        font.setBold(True)
        self.convert_toolButton.setFont(font)
        self.convert_toolButton.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.convert_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.convert_toolButton.setIcon(icon8)
        self.convert_toolButton.setIconSize(QtCore.QSize(34, 34))
        self.convert_toolButton.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.convert_toolButton.setObjectName("convert_toolButton")
        self.gridLayout_75.addWidget(self.convert_toolButton, 2, 2, 1, 1)
        self.label_171 = QtWidgets.QLabel(parent=self.tab_class_to_vector)
        self.label_171.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_171.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_171.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_171.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_171.setObjectName("label_171")
        self.gridLayout_75.addWidget(self.label_171, 1, 0, 1, 3)
        self.classification_to_vector = QtWidgets.QToolButton(parent=self.tab_class_to_vector)
        font = QtGui.QFont()
        font.setBold(True)
        self.classification_to_vector.setFont(font)
        self.classification_to_vector.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.classification_to_vector.setStyleSheet("margin: 0px;padding: 0px;")
        self.classification_to_vector.setIcon(icon24)
        self.classification_to_vector.setIconSize(QtCore.QSize(34, 34))
        self.classification_to_vector.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.classification_to_vector.setObjectName("classification_to_vector")
        self.gridLayout_75.addWidget(self.classification_to_vector, 2, 1, 1, 1)
        self.gridLayout_49.addLayout(self.gridLayout_75, 3, 0, 1, 1)
        self.tabWidget_2.addTab(self.tab_class_to_vector, "")
        self.tab_reclassification = QtWidgets.QWidget()
        self.tab_reclassification.setObjectName("tab_reclassification")
        self.gridLayout_191 = QtWidgets.QGridLayout(self.tab_reclassification)
        self.gridLayout_191.setObjectName("gridLayout_191")
        self.gridLayout_78 = QtWidgets.QGridLayout()
        self.gridLayout_78.setObjectName("gridLayout_78")
        self.label_65 = QtWidgets.QLabel(parent=self.tab_reclassification)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_65.sizePolicy().hasHeightForWidth())
        self.label_65.setSizePolicy(sizePolicy)
        self.label_65.setMinimumSize(QtCore.QSize(229, 0))
        self.label_65.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_65.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_65.setObjectName("label_65")
        self.gridLayout_78.addWidget(self.label_65, 1, 0, 1, 1)
        self.reclassification_name_combo = QtWidgets.QComboBox(parent=self.tab_reclassification)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.reclassification_name_combo.sizePolicy().hasHeightForWidth())
        self.reclassification_name_combo.setSizePolicy(sizePolicy)
        self.reclassification_name_combo.setObjectName("reclassification_name_combo")
        self.gridLayout_78.addWidget(self.reclassification_name_combo, 1, 1, 1, 1)
        self.toolButton_reload_12 = QtWidgets.QToolButton(parent=self.tab_reclassification)
        self.toolButton_reload_12.setStyleSheet("margin: 0px;padding: 0px;")
        self.toolButton_reload_12.setIcon(icon25)
        self.toolButton_reload_12.setIconSize(QtCore.QSize(22, 22))
        self.toolButton_reload_12.setObjectName("toolButton_reload_12")
        self.gridLayout_78.addWidget(self.toolButton_reload_12, 1, 2, 1, 1)
        self.horizontalLayout_41 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_41.setObjectName("horizontalLayout_41")
        self.label_190 = QtWidgets.QLabel(parent=self.tab_reclassification)
        self.label_190.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_190.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_190.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_190.setObjectName("label_190")
        self.horizontalLayout_41.addWidget(self.label_190)
        self.gridLayout_78.addLayout(self.horizontalLayout_41, 0, 0, 1, 3)
        self.gridLayout_191.addLayout(self.gridLayout_78, 0, 0, 1, 1)
        self.gridLayout_79 = QtWidgets.QGridLayout()
        self.gridLayout_79.setObjectName("gridLayout_79")
        self.calculate_unique_values_toolButton = QtWidgets.QToolButton(parent=self.tab_reclassification)
        self.calculate_unique_values_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.calculate_unique_values_toolButton.setIcon(icon21)
        self.calculate_unique_values_toolButton.setIconSize(QtCore.QSize(22, 22))
        self.calculate_unique_values_toolButton.setObjectName("calculate_unique_values_toolButton")
        self.gridLayout_79.addWidget(self.calculate_unique_values_toolButton, 1, 4, 1, 1)
        self.CID_MCID_code_checkBox = QtWidgets.QCheckBox(parent=self.tab_reclassification)
        self.CID_MCID_code_checkBox.setObjectName("CID_MCID_code_checkBox")
        self.gridLayout_79.addWidget(self.CID_MCID_code_checkBox, 1, 2, 1, 1)
        self.label_98 = QtWidgets.QLabel(parent=self.tab_reclassification)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_98.sizePolicy().hasHeightForWidth())
        self.label_98.setSizePolicy(sizePolicy)
        self.label_98.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_98.setObjectName("label_98")
        self.gridLayout_79.addWidget(self.label_98, 1, 3, 1, 1)
        self.label_54 = QtWidgets.QLabel(parent=self.tab_reclassification)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_54.sizePolicy().hasHeightForWidth())
        self.label_54.setSizePolicy(sizePolicy)
        self.label_54.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_54.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_54.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_54.setObjectName("label_54")
        self.gridLayout_79.addWidget(self.label_54, 0, 2, 1, 3)
        self.incremental_new_values_toolButton = QtWidgets.QToolButton(parent=self.tab_reclassification)
        self.incremental_new_values_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.incremental_new_values_toolButton.setIcon(icon21)
        self.incremental_new_values_toolButton.setIconSize(QtCore.QSize(22, 22))
        self.incremental_new_values_toolButton.setObjectName("incremental_new_values_toolButton")
        self.gridLayout_79.addWidget(self.incremental_new_values_toolButton, 2, 4, 1, 1)
        self.label_271 = QtWidgets.QLabel(parent=self.tab_reclassification)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_271.sizePolicy().hasHeightForWidth())
        self.label_271.setSizePolicy(sizePolicy)
        self.label_271.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_271.setObjectName("label_271")
        self.gridLayout_79.addWidget(self.label_271, 2, 3, 1, 1)
        self.gridLayout_191.addLayout(self.gridLayout_79, 1, 0, 1, 1)
        self.gridLayout_77 = QtWidgets.QGridLayout()
        self.gridLayout_77.setObjectName("gridLayout_77")
        self.reclass_values_tableWidget = QtWidgets.QTableWidget(parent=self.tab_reclassification)
        self.reclass_values_tableWidget.setAlternatingRowColors(True)
        self.reclass_values_tableWidget.setObjectName("reclass_values_tableWidget")
        self.reclass_values_tableWidget.setColumnCount(2)
        self.reclass_values_tableWidget.setRowCount(0)
        item = QtWidgets.QTableWidgetItem()
        self.reclass_values_tableWidget.setHorizontalHeaderItem(0, item)
        item = QtWidgets.QTableWidgetItem()
        self.reclass_values_tableWidget.setHorizontalHeaderItem(1, item)
        self.reclass_values_tableWidget.horizontalHeader().setStretchLastSection(True)
        self.reclass_values_tableWidget.verticalHeader().setDefaultSectionSize(30)
        self.gridLayout_77.addWidget(self.reclass_values_tableWidget, 0, 0, 1, 1)
        self.gridLayout_81 = QtWidgets.QGridLayout()
        self.gridLayout_81.setObjectName("gridLayout_81")
        self.add_value_pushButton = QtWidgets.QToolButton(parent=self.tab_reclassification)
        self.add_value_pushButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.add_value_pushButton.setIcon(icon13)
        self.add_value_pushButton.setIconSize(QtCore.QSize(22, 22))
        self.add_value_pushButton.setObjectName("add_value_pushButton")
        self.gridLayout_81.addWidget(self.add_value_pushButton, 1, 0, 1, 1)
        self.remove_row_pushButton = QtWidgets.QToolButton(parent=self.tab_reclassification)
        self.remove_row_pushButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.remove_row_pushButton.setIcon(icon4)
        self.remove_row_pushButton.setIconSize(QtCore.QSize(22, 22))
        self.remove_row_pushButton.setObjectName("remove_row_pushButton")
        self.gridLayout_81.addWidget(self.remove_row_pushButton, 2, 0, 1, 1)
        spacerItem115 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_81.addItem(spacerItem115, 0, 0, 1, 1)
        spacerItem116 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_81.addItem(spacerItem116, 6, 0, 1, 1)
        self.import_reclass_toolButton = QtWidgets.QToolButton(parent=self.tab_reclassification)
        self.import_reclass_toolButton.setStyleSheet("margin: 0px;padding: 0px")
        self.import_reclass_toolButton.setIcon(icon10)
        self.import_reclass_toolButton.setIconSize(QtCore.QSize(22, 22))
        self.import_reclass_toolButton.setObjectName("import_reclass_toolButton")
        self.gridLayout_81.addWidget(self.import_reclass_toolButton, 4, 0, 1, 1)
        self.export_reclass_toolButton = QtWidgets.QToolButton(parent=self.tab_reclassification)
        self.export_reclass_toolButton.setStyleSheet("margin: 0px;padding: 0px")
        self.export_reclass_toolButton.setIcon(icon11)
        self.export_reclass_toolButton.setIconSize(QtCore.QSize(22, 22))
        self.export_reclass_toolButton.setObjectName("export_reclass_toolButton")
        self.gridLayout_81.addWidget(self.export_reclass_toolButton, 5, 0, 1, 1)
        spacerItem117 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_81.addItem(spacerItem117, 3, 0, 1, 1)
        self.gridLayout_77.addLayout(self.gridLayout_81, 0, 1, 1, 1)
        self.gridLayout_191.addLayout(self.gridLayout_77, 2, 0, 1, 1)
        self.gridLayout_80 = QtWidgets.QGridLayout()
        self.gridLayout_80.setObjectName("gridLayout_80")
        self.gridLayout_82 = QtWidgets.QGridLayout()
        self.gridLayout_82.setObjectName("gridLayout_82")
        self.apply_symbology_checkBox = QtWidgets.QCheckBox(parent=self.tab_reclassification)
        self.apply_symbology_checkBox.setChecked(False)
        self.apply_symbology_checkBox.setObjectName("apply_symbology_checkBox")
        self.gridLayout_82.addWidget(self.apply_symbology_checkBox, 1, 0, 1, 1)
        self.class_macroclass_comboBox_2 = QtWidgets.QComboBox(parent=self.tab_reclassification)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.class_macroclass_comboBox_2.sizePolicy().hasHeightForWidth())
        self.class_macroclass_comboBox_2.setSizePolicy(sizePolicy)
        self.class_macroclass_comboBox_2.setObjectName("class_macroclass_comboBox_2")
        self.class_macroclass_comboBox_2.addItem("")
        self.class_macroclass_comboBox_2.addItem("")
        self.gridLayout_82.addWidget(self.class_macroclass_comboBox_2, 1, 1, 1, 1)
        self.label_51 = QtWidgets.QLabel(parent=self.tab_reclassification)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_51.sizePolicy().hasHeightForWidth())
        self.label_51.setSizePolicy(sizePolicy)
        self.label_51.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_51.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_51.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_51.setObjectName("label_51")
        self.gridLayout_82.addWidget(self.label_51, 0, 0, 1, 2)
        self.gridLayout_80.addLayout(self.gridLayout_82, 0, 0, 1, 1)
        self.gridLayout_191.addLayout(self.gridLayout_80, 3, 0, 1, 1)
        self.gridLayout_83 = QtWidgets.QGridLayout()
        self.gridLayout_83.setObjectName("gridLayout_83")
        spacerItem118 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_83.addItem(spacerItem118, 1, 0, 1, 1)
        self.label_172 = QtWidgets.QLabel(parent=self.tab_reclassification)
        self.label_172.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_172.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_172.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_172.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_172.setObjectName("label_172")
        self.gridLayout_83.addWidget(self.label_172, 0, 0, 1, 3)
        self.reclassify_toolButton = QtWidgets.QToolButton(parent=self.tab_reclassification)
        font = QtGui.QFont()
        font.setBold(True)
        self.reclassify_toolButton.setFont(font)
        self.reclassify_toolButton.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.reclassify_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.reclassify_toolButton.setIcon(icon8)
        self.reclassify_toolButton.setIconSize(QtCore.QSize(34, 34))
        self.reclassify_toolButton.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.reclassify_toolButton.setObjectName("reclassify_toolButton")
        self.gridLayout_83.addWidget(self.reclassify_toolButton, 1, 2, 1, 1)
        self.reclassification = QtWidgets.QToolButton(parent=self.tab_reclassification)
        font = QtGui.QFont()
        font.setBold(True)
        self.reclassification.setFont(font)
        self.reclassification.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.reclassification.setStyleSheet("margin: 0px;padding: 0px;")
        self.reclassification.setIcon(icon24)
        self.reclassification.setIconSize(QtCore.QSize(34, 34))
        self.reclassification.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.reclassification.setObjectName("reclassification")
        self.gridLayout_83.addWidget(self.reclassification, 1, 1, 1, 1)
        self.gridLayout_191.addLayout(self.gridLayout_83, 4, 0, 1, 1)
        self.tabWidget_2.addTab(self.tab_reclassification, "")
        self.tab_edit_raster = QtWidgets.QWidget()
        self.tab_edit_raster.setObjectName("tab_edit_raster")
        self.gridLayout_100 = QtWidgets.QGridLayout(self.tab_edit_raster)
        self.gridLayout_100.setObjectName("gridLayout_100")
        self.horizontalLayout_46 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_46.setObjectName("horizontalLayout_46")
        self.label_193 = QtWidgets.QLabel(parent=self.tab_edit_raster)
        self.label_193.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_193.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_193.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_193.setObjectName("label_193")
        self.horizontalLayout_46.addWidget(self.label_193)
        self.gridLayout_100.addLayout(self.horizontalLayout_46, 0, 0, 1, 1)
        self.gridLayout_196 = QtWidgets.QGridLayout()
        self.gridLayout_196.setObjectName("gridLayout_196")
        self.horizontalLayout_23 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_23.setObjectName("horizontalLayout_23")
        self.edit_val_use_ROI_radioButton = QtWidgets.QRadioButton(parent=self.tab_edit_raster)
        self.edit_val_use_ROI_radioButton.setChecked(True)
        self.edit_val_use_ROI_radioButton.setAutoExclusive(False)
        self.edit_val_use_ROI_radioButton.setObjectName("edit_val_use_ROI_radioButton")
        self.horizontalLayout_23.addWidget(self.edit_val_use_ROI_radioButton)
        self.gridLayout_196.addLayout(self.horizontalLayout_23, 2, 0, 1, 4)
        self.horizontalLayout_24 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_24.setObjectName("horizontalLayout_24")
        self.use_field_vector_radioButton = QtWidgets.QRadioButton(parent=self.tab_edit_raster)
        self.use_field_vector_radioButton.setAutoExclusive(False)
        self.use_field_vector_radioButton.setObjectName("use_field_vector_radioButton")
        self.horizontalLayout_24.addWidget(self.use_field_vector_radioButton)
        self.field_comboBox_2 = QtWidgets.QComboBox(parent=self.tab_edit_raster)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.field_comboBox_2.sizePolicy().hasHeightForWidth())
        self.field_comboBox_2.setSizePolicy(sizePolicy)
        self.field_comboBox_2.setObjectName("field_comboBox_2")
        self.horizontalLayout_24.addWidget(self.field_comboBox_2)
        self.gridLayout_196.addLayout(self.horizontalLayout_24, 5, 0, 1, 4)
        spacerItem119 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_196.addItem(spacerItem119, 10, 1, 1, 1)
        self.horizontalLayout_10 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_10.setObjectName("horizontalLayout_10")
        self.label_81 = QtWidgets.QLabel(parent=self.tab_edit_raster)
        self.label_81.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_81.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_81.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_81.setObjectName("label_81")
        self.horizontalLayout_10.addWidget(self.label_81)
        self.gridLayout_196.addLayout(self.horizontalLayout_10, 1, 0, 1, 4)
        self.horizontalLayout_8 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_8.setObjectName("horizontalLayout_8")
        self.label_66 = QtWidgets.QLabel(parent=self.tab_edit_raster)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_66.sizePolicy().hasHeightForWidth())
        self.label_66.setSizePolicy(sizePolicy)
        self.label_66.setMinimumSize(QtCore.QSize(229, 0))
        self.label_66.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_66.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_66.setObjectName("label_66")
        self.horizontalLayout_8.addWidget(self.label_66)
        self.edit_raster_name_combo = QtWidgets.QComboBox(parent=self.tab_edit_raster)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.edit_raster_name_combo.sizePolicy().hasHeightForWidth())
        self.edit_raster_name_combo.setSizePolicy(sizePolicy)
        self.edit_raster_name_combo.setObjectName("edit_raster_name_combo")
        self.horizontalLayout_8.addWidget(self.edit_raster_name_combo)
        self.toolButton_reload_14 = QtWidgets.QToolButton(parent=self.tab_edit_raster)
        self.toolButton_reload_14.setStyleSheet("margin: 0px;padding: 0px;")
        self.toolButton_reload_14.setIcon(icon25)
        self.toolButton_reload_14.setIconSize(QtCore.QSize(22, 22))
        self.toolButton_reload_14.setObjectName("toolButton_reload_14")
        self.horizontalLayout_8.addWidget(self.toolButton_reload_14)
        self.gridLayout_196.addLayout(self.horizontalLayout_8, 0, 0, 1, 4)
        self.horizontalLayout_21 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_21.setObjectName("horizontalLayout_21")
        self.edit_val_use_vector_radioButton = QtWidgets.QRadioButton(parent=self.tab_edit_raster)
        self.edit_val_use_vector_radioButton.setAutoExclusive(False)
        self.edit_val_use_vector_radioButton.setObjectName("edit_val_use_vector_radioButton")
        self.horizontalLayout_21.addWidget(self.edit_val_use_vector_radioButton)
        self.vector_name_combo_2 = QtWidgets.QComboBox(parent=self.tab_edit_raster)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.vector_name_combo_2.sizePolicy().hasHeightForWidth())
        self.vector_name_combo_2.setSizePolicy(sizePolicy)
        self.vector_name_combo_2.setObjectName("vector_name_combo_2")
        self.horizontalLayout_21.addWidget(self.vector_name_combo_2)
        self.toolButton_reload_20 = QtWidgets.QToolButton(parent=self.tab_edit_raster)
        self.toolButton_reload_20.setStyleSheet("margin: 0px;padding: 0px;")
        self.toolButton_reload_20.setIcon(icon25)
        self.toolButton_reload_20.setIconSize(QtCore.QSize(22, 22))
        self.toolButton_reload_20.setObjectName("toolButton_reload_20")
        self.horizontalLayout_21.addWidget(self.toolButton_reload_20)
        self.gridLayout_196.addLayout(self.horizontalLayout_21, 3, 0, 1, 4)
        self.horizontalLayout_26 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_26.setObjectName("horizontalLayout_26")
        self.label_177 = QtWidgets.QLabel(parent=self.tab_edit_raster)
        self.label_177.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_177.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_177.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_177.setObjectName("label_177")
        self.horizontalLayout_26.addWidget(self.label_177)
        self.gridLayout_196.addLayout(self.horizontalLayout_26, 4, 0, 1, 4)
        self.label_176 = QtWidgets.QLabel(parent=self.tab_edit_raster)
        self.label_176.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_176.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_176.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_176.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_176.setObjectName("label_176")
        self.gridLayout_196.addWidget(self.label_176, 9, 0, 1, 4)
        self.horizontalLayout_7 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_7.setObjectName("horizontalLayout_7")
        self.use_constant_val_radioButton = QtWidgets.QRadioButton(parent=self.tab_edit_raster)
        self.use_constant_val_radioButton.setChecked(True)
        self.use_constant_val_radioButton.setAutoExclusive(False)
        self.use_constant_val_radioButton.setObjectName("use_constant_val_radioButton")
        self.horizontalLayout_7.addWidget(self.use_constant_val_radioButton)
        self.value_spinBox = QtWidgets.QSpinBox(parent=self.tab_edit_raster)
        self.value_spinBox.setMinimum(-2147483647)
        self.value_spinBox.setMaximum(2147483647)
        self.value_spinBox.setObjectName("value_spinBox")
        self.horizontalLayout_7.addWidget(self.value_spinBox)
        spacerItem120 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.horizontalLayout_7.addItem(spacerItem120)
        self.gridLayout_196.addLayout(self.horizontalLayout_7, 6, 0, 1, 4)
        self.undo_edit_Button = QtWidgets.QToolButton(parent=self.tab_edit_raster)
        self.undo_edit_Button.setEnabled(False)
        self.undo_edit_Button.setStyleSheet("margin: 0px;padding: 0px;")
        icon28 = QtGui.QIcon()
        icon28.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin_undo_edit_raster.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.undo_edit_Button.setIcon(icon28)
        self.undo_edit_Button.setIconSize(QtCore.QSize(22, 22))
        self.undo_edit_Button.setObjectName("undo_edit_Button")
        self.gridLayout_196.addWidget(self.undo_edit_Button, 10, 0, 1, 1)
        self.horizontalLayout_9 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_9.setObjectName("horizontalLayout_9")
        self.use_expression_radioButton = QtWidgets.QRadioButton(parent=self.tab_edit_raster)
        self.use_expression_radioButton.setAutoExclusive(False)
        self.use_expression_radioButton.setObjectName("use_expression_radioButton")
        self.horizontalLayout_9.addWidget(self.use_expression_radioButton)
        self.expression_lineEdit = QtWidgets.QLineEdit(parent=self.tab_edit_raster)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.MinimumExpanding, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.expression_lineEdit.sizePolicy().hasHeightForWidth())
        self.expression_lineEdit.setSizePolicy(sizePolicy)
        self.expression_lineEdit.setMinimumSize(QtCore.QSize(400, 26))
        self.expression_lineEdit.setText("where(\"raster\" == 1, 2, \"raster\")")
        self.expression_lineEdit.setMaxLength(10000)
        self.expression_lineEdit.setObjectName("expression_lineEdit")
        self.horizontalLayout_9.addWidget(self.expression_lineEdit)
        self.gridLayout_196.addLayout(self.horizontalLayout_9, 7, 0, 1, 4)
        spacerItem121 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_196.addItem(spacerItem121, 8, 3, 1, 1)
        self.edit_raster = QtWidgets.QToolButton(parent=self.tab_edit_raster)
        font = QtGui.QFont()
        font.setBold(True)
        self.edit_raster.setFont(font)
        self.edit_raster.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.edit_raster.setStyleSheet("margin: 0px;padding: 0px;")
        self.edit_raster.setIcon(icon24)
        self.edit_raster.setIconSize(QtCore.QSize(34, 34))
        self.edit_raster.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.edit_raster.setObjectName("edit_raster")
        self.gridLayout_196.addWidget(self.edit_raster, 10, 2, 1, 1)
        self.edit_raster_toolButton = QtWidgets.QToolButton(parent=self.tab_edit_raster)
        font = QtGui.QFont()
        font.setBold(True)
        self.edit_raster_toolButton.setFont(font)
        self.edit_raster_toolButton.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.edit_raster_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.edit_raster_toolButton.setIcon(icon8)
        self.edit_raster_toolButton.setIconSize(QtCore.QSize(34, 34))
        self.edit_raster_toolButton.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.edit_raster_toolButton.setObjectName("edit_raster_toolButton")
        self.gridLayout_196.addWidget(self.edit_raster_toolButton, 10, 3, 1, 1)
        self.gridLayout_100.addLayout(self.gridLayout_196, 1, 0, 1, 1)
        self.tabWidget_2.addTab(self.tab_edit_raster, "")
        self.tab_raster_zonal_stats = QtWidgets.QWidget()
        self.tab_raster_zonal_stats.setObjectName("tab_raster_zonal_stats")
        self.gridLayout_125 = QtWidgets.QGridLayout(self.tab_raster_zonal_stats)
        self.gridLayout_125.setObjectName("gridLayout_125")
        self.toolBox_raster_zonal_stats = QtWidgets.QToolBox(parent=self.tab_raster_zonal_stats)
        self.toolBox_raster_zonal_stats.setObjectName("toolBox_raster_zonal_stats")
        self.page_20 = QtWidgets.QWidget()
        self.page_20.setGeometry(QtCore.QRect(0, 0, 747, 335))
        self.page_20.setObjectName("page_20")
        self.gridLayout_199 = QtWidgets.QGridLayout(self.page_20)
        self.gridLayout_199.setObjectName("gridLayout_199")
        self.gridLayout_112 = QtWidgets.QGridLayout()
        self.gridLayout_112.setObjectName("gridLayout_112")
        self.horizontalLayout_50 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_50.setObjectName("horizontalLayout_50")
        self.label_212 = QtWidgets.QLabel(parent=self.page_20)
        self.label_212.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_212.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_212.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_212.setObjectName("label_212")
        self.horizontalLayout_50.addWidget(self.label_212)
        self.gridLayout_112.addLayout(self.horizontalLayout_50, 0, 0, 1, 1)
        self.horizontalLayout_51 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_51.setObjectName("horizontalLayout_51")
        self.label_77 = QtWidgets.QLabel(parent=self.page_20)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_77.sizePolicy().hasHeightForWidth())
        self.label_77.setSizePolicy(sizePolicy)
        self.label_77.setMinimumSize(QtCore.QSize(229, 0))
        self.label_77.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_77.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_77.setObjectName("label_77")
        self.horizontalLayout_51.addWidget(self.label_77)
        self.classification_name_combo_5 = QtWidgets.QComboBox(parent=self.page_20)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.classification_name_combo_5.sizePolicy().hasHeightForWidth())
        self.classification_name_combo_5.setSizePolicy(sizePolicy)
        self.classification_name_combo_5.setObjectName("classification_name_combo_5")
        self.horizontalLayout_51.addWidget(self.classification_name_combo_5)
        self.toolButton_reload_24 = QtWidgets.QToolButton(parent=self.page_20)
        self.toolButton_reload_24.setStyleSheet("margin: 0px;padding: 0px;")
        self.toolButton_reload_24.setIcon(icon25)
        self.toolButton_reload_24.setIconSize(QtCore.QSize(22, 22))
        self.toolButton_reload_24.setObjectName("toolButton_reload_24")
        self.horizontalLayout_51.addWidget(self.toolButton_reload_24)
        self.gridLayout_112.addLayout(self.horizontalLayout_51, 1, 0, 1, 1)
        self.gridLayout_116 = QtWidgets.QGridLayout()
        self.gridLayout_116.setObjectName("gridLayout_116")
        self.class_field_comboBox_4 = QtWidgets.QComboBox(parent=self.page_20)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.MinimumExpanding, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.class_field_comboBox_4.sizePolicy().hasHeightForWidth())
        self.class_field_comboBox_4.setSizePolicy(sizePolicy)
        self.class_field_comboBox_4.setObjectName("class_field_comboBox_4")
        self.gridLayout_116.addWidget(self.class_field_comboBox_4, 1, 2, 1, 1)
        self.label_214 = QtWidgets.QLabel(parent=self.page_20)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_214.sizePolicy().hasHeightForWidth())
        self.label_214.setSizePolicy(sizePolicy)
        self.label_214.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_214.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_214.setObjectName("label_214")
        self.gridLayout_116.addWidget(self.label_214, 0, 0, 1, 1)
        self.buttonReload_shape_6 = QtWidgets.QToolButton(parent=self.page_20)
        self.buttonReload_shape_6.setStyleSheet("margin: 0px;padding: 0px;")
        self.buttonReload_shape_6.setIcon(icon25)
        self.buttonReload_shape_6.setIconSize(QtCore.QSize(22, 22))
        self.buttonReload_shape_6.setObjectName("buttonReload_shape_6")
        self.gridLayout_116.addWidget(self.buttonReload_shape_6, 0, 3, 1, 1)
        self.label_213 = QtWidgets.QLabel(parent=self.page_20)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.MinimumExpanding, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_213.sizePolicy().hasHeightForWidth())
        self.label_213.setSizePolicy(sizePolicy)
        self.label_213.setMinimumSize(QtCore.QSize(6, 0))
        self.label_213.setMaximumSize(QtCore.QSize(100, 200))
        self.label_213.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_213.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_213.setObjectName("label_213")
        self.gridLayout_116.addWidget(self.label_213, 1, 1, 1, 1)
        self.reference_name_combo_3 = QtWidgets.QComboBox(parent=self.page_20)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.reference_name_combo_3.sizePolicy().hasHeightForWidth())
        self.reference_name_combo_3.setSizePolicy(sizePolicy)
        self.reference_name_combo_3.setObjectName("reference_name_combo_3")
        self.gridLayout_116.addWidget(self.reference_name_combo_3, 0, 1, 1, 2)
        self.gridLayout_112.addLayout(self.gridLayout_116, 2, 0, 1, 1)
        self.gridLayout_199.addLayout(self.gridLayout_112, 0, 0, 1, 1)
        self.gridLayout_117 = QtWidgets.QGridLayout()
        self.gridLayout_117.setObjectName("gridLayout_117")
        self.label_216 = QtWidgets.QLabel(parent=self.page_20)
        self.label_216.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_216.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_216.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_216.setObjectName("label_216")
        self.gridLayout_117.addWidget(self.label_216, 0, 0, 1, 1)
        self.gridLayout_123 = QtWidgets.QGridLayout()
        self.gridLayout_123.setObjectName("gridLayout_123")
        self.std_checkBox = QtWidgets.QCheckBox(parent=self.page_20)
        self.std_checkBox.setToolTip("")
        self.std_checkBox.setObjectName("std_checkBox")
        self.gridLayout_123.addWidget(self.std_checkBox, 2, 0, 1, 1)
        self.max_checkBox = QtWidgets.QCheckBox(parent=self.page_20)
        self.max_checkBox.setToolTip("")
        self.max_checkBox.setObjectName("max_checkBox")
        self.gridLayout_123.addWidget(self.max_checkBox, 0, 1, 1, 1)
        self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
        self.percentile_checkBox = QtWidgets.QCheckBox(parent=self.page_20)
        self.percentile_checkBox.setToolTip("")
        self.percentile_checkBox.setObjectName("percentile_checkBox")
        self.horizontalLayout_2.addWidget(self.percentile_checkBox)
        self.percentile_lineEdit = QtWidgets.QLineEdit(parent=self.page_20)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.MinimumExpanding, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.percentile_lineEdit.sizePolicy().hasHeightForWidth())
        self.percentile_lineEdit.setSizePolicy(sizePolicy)
        self.percentile_lineEdit.setMinimumSize(QtCore.QSize(400, 26))
        self.percentile_lineEdit.setText("10, 90")
        self.percentile_lineEdit.setMaxLength(10000)
        self.percentile_lineEdit.setObjectName("percentile_lineEdit")
        self.horizontalLayout_2.addWidget(self.percentile_lineEdit)
        self.gridLayout_123.addLayout(self.horizontalLayout_2, 1, 2, 1, 1)
        self.sum_checkBox = QtWidgets.QCheckBox(parent=self.page_20)
        self.sum_checkBox.setToolTip("")
        self.sum_checkBox.setObjectName("sum_checkBox")
        self.gridLayout_123.addWidget(self.sum_checkBox, 2, 1, 1, 1)
        self.count_checkBox = QtWidgets.QCheckBox(parent=self.page_20)
        self.count_checkBox.setToolTip("")
        self.count_checkBox.setChecked(True)
        self.count_checkBox.setObjectName("count_checkBox")
        self.gridLayout_123.addWidget(self.count_checkBox, 0, 0, 1, 1)
        self.mean_checkBox = QtWidgets.QCheckBox(parent=self.page_20)
        self.mean_checkBox.setToolTip("")
        self.mean_checkBox.setObjectName("mean_checkBox")
        self.gridLayout_123.addWidget(self.mean_checkBox, 1, 0, 1, 1)
        spacerItem122 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_123.addItem(spacerItem122, 3, 0, 1, 1)
        self.median_checkBox = QtWidgets.QCheckBox(parent=self.page_20)
        self.median_checkBox.setToolTip("")
        self.median_checkBox.setObjectName("median_checkBox")
        self.gridLayout_123.addWidget(self.median_checkBox, 1, 1, 1, 1)
        self.min_checkBox = QtWidgets.QCheckBox(parent=self.page_20)
        self.min_checkBox.setToolTip("")
        self.min_checkBox.setObjectName("min_checkBox")
        self.gridLayout_123.addWidget(self.min_checkBox, 0, 2, 1, 1)
        self.gridLayout_117.addLayout(self.gridLayout_123, 1, 0, 1, 1)
        self.gridLayout_199.addLayout(self.gridLayout_117, 1, 0, 1, 1)
        self.gridLayout_118 = QtWidgets.QGridLayout()
        self.gridLayout_118.setObjectName("gridLayout_118")
        self.label_178 = QtWidgets.QLabel(parent=self.page_20)
        self.label_178.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_178.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_178.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_178.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_178.setObjectName("label_178")
        self.gridLayout_118.addWidget(self.label_178, 0, 0, 1, 3)
        spacerItem123 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_118.addItem(spacerItem123, 1, 0, 1, 1)
        self.raster_zonal_stats = QtWidgets.QToolButton(parent=self.page_20)
        font = QtGui.QFont()
        font.setBold(True)
        self.raster_zonal_stats.setFont(font)
        self.raster_zonal_stats.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.raster_zonal_stats.setStyleSheet("margin: 0px;padding: 0px;")
        self.raster_zonal_stats.setIcon(icon24)
        self.raster_zonal_stats.setIconSize(QtCore.QSize(34, 34))
        self.raster_zonal_stats.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.raster_zonal_stats.setObjectName("raster_zonal_stats")
        self.gridLayout_118.addWidget(self.raster_zonal_stats, 1, 1, 1, 1)
        self.raster_zonal_stats_toolButton = QtWidgets.QToolButton(parent=self.page_20)
        font = QtGui.QFont()
        font.setBold(True)
        self.raster_zonal_stats_toolButton.setFont(font)
        self.raster_zonal_stats_toolButton.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.raster_zonal_stats_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.raster_zonal_stats_toolButton.setIcon(icon8)
        self.raster_zonal_stats_toolButton.setIconSize(QtCore.QSize(34, 34))
        self.raster_zonal_stats_toolButton.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.raster_zonal_stats_toolButton.setObjectName("raster_zonal_stats_toolButton")
        self.gridLayout_118.addWidget(self.raster_zonal_stats_toolButton, 1, 2, 1, 1)
        self.gridLayout_199.addLayout(self.gridLayout_118, 2, 0, 1, 1)
        self.toolBox_raster_zonal_stats.addItem(self.page_20, "")
        self.page_23 = QtWidgets.QWidget()
        self.page_23.setGeometry(QtCore.QRect(0, 0, 101, 101))
        self.page_23.setObjectName("page_23")
        self.gridLayout_260 = QtWidgets.QGridLayout(self.page_23)
        self.gridLayout_260.setObjectName("gridLayout_260")
        self.gridLayout_262 = QtWidgets.QGridLayout()
        self.gridLayout_262.setObjectName("gridLayout_262")
        self.raster_zonal_stats_textBrowser = QtWidgets.QTextBrowser(parent=self.page_23)
        font = QtGui.QFont()
        font.setFamily("Courier 10 Pitch")
        self.raster_zonal_stats_textBrowser.setFont(font)
        self.raster_zonal_stats_textBrowser.setTabChangesFocus(True)
        self.raster_zonal_stats_textBrowser.setLineWrapMode(QtWidgets.QTextEdit.LineWrapMode.NoWrap)
        self.raster_zonal_stats_textBrowser.setHtml("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><meta charset=\"utf-8\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"hr { height: 1px; border-width: 0; }\n"
"li.unchecked::marker { content: \"\\2610\"; }\n"
"li.checked::marker { content: \"\\2612\"; }\n"
"</style></head><body style=\" font-family:\'Courier 10 Pitch\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:9pt;\"><br /></p></body></html>")
        self.raster_zonal_stats_textBrowser.setOpenLinks(False)
        self.raster_zonal_stats_textBrowser.setProperty("tabStopWidth", 120)
        self.raster_zonal_stats_textBrowser.setObjectName("raster_zonal_stats_textBrowser")
        self.gridLayout_262.addWidget(self.raster_zonal_stats_textBrowser, 0, 0, 1, 1)
        self.gridLayout_260.addLayout(self.gridLayout_262, 0, 0, 1, 1)
        self.toolBox_raster_zonal_stats.addItem(self.page_23, "")
        self.gridLayout_125.addWidget(self.toolBox_raster_zonal_stats, 0, 0, 1, 1)
        self.tabWidget_2.addTab(self.tab_raster_zonal_stats, "")
        self.gridLayout_552.addWidget(self.tabWidget_2, 0, 0, 1, 1)
        self.SCP_tabs.addTab(self.tab_postProcessing, "")
        self.tab_band_calc = QtWidgets.QWidget()
        self.tab_band_calc.setObjectName("tab_band_calc")
        self.gridLayout_38 = QtWidgets.QGridLayout(self.tab_band_calc)
        self.gridLayout_38.setContentsMargins(3, 3, 3, 3)
        self.gridLayout_38.setObjectName("gridLayout_38")
        self.splitter_band_calc = QtWidgets.QSplitter(parent=self.tab_band_calc)
        self.splitter_band_calc.setOrientation(QtCore.Qt.Orientation.Vertical)
        self.splitter_band_calc.setChildrenCollapsible(False)
        self.splitter_band_calc.setObjectName("splitter_band_calc")
        self.widget_2 = QtWidgets.QWidget(parent=self.splitter_band_calc)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Maximum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.widget_2.sizePolicy().hasHeightForWidth())
        self.widget_2.setSizePolicy(sizePolicy)
        self.widget_2.setMinimumSize(QtCore.QSize(0, 150))
        self.widget_2.setObjectName("widget_2")
        self.gridLayout_126 = QtWidgets.QGridLayout(self.widget_2)
        self.gridLayout_126.setContentsMargins(1, 1, 1, 1)
        self.gridLayout_126.setObjectName("gridLayout_126")
        self.gridLayout_86 = QtWidgets.QGridLayout()
        self.gridLayout_86.setObjectName("gridLayout_86")
        self.tableWidget_band_calc = QtWidgets.QTableWidget(parent=self.widget_2)
        self.tableWidget_band_calc.setMaximumSize(QtCore.QSize(16777215, 300))
        self.tableWidget_band_calc.setFrameShape(QtWidgets.QFrame.Shape.WinPanel)
        self.tableWidget_band_calc.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.tableWidget_band_calc.setAlternatingRowColors(True)
        self.tableWidget_band_calc.setSelectionMode(QtWidgets.QAbstractItemView.SelectionMode.NoSelection)
        self.tableWidget_band_calc.setSelectionBehavior(QtWidgets.QAbstractItemView.SelectionBehavior.SelectRows)
        self.tableWidget_band_calc.setColumnCount(2)
        self.tableWidget_band_calc.setObjectName("tableWidget_band_calc")
        self.tableWidget_band_calc.setRowCount(0)
        item = QtWidgets.QTableWidgetItem()
        self.tableWidget_band_calc.setHorizontalHeaderItem(0, item)
        item = QtWidgets.QTableWidgetItem()
        self.tableWidget_band_calc.setHorizontalHeaderItem(1, item)
        self.tableWidget_band_calc.horizontalHeader().setDefaultSectionSize(200)
        self.tableWidget_band_calc.horizontalHeader().setStretchLastSection(True)
        self.gridLayout_86.addWidget(self.tableWidget_band_calc, 1, 0, 2, 1)
        self.gridLayout_171 = QtWidgets.QGridLayout()
        self.gridLayout_171.setObjectName("gridLayout_171")
        self.toolButton_reload_13 = QtWidgets.QToolButton(parent=self.widget_2)
        self.toolButton_reload_13.setStyleSheet("margin: 0px;padding: 0px")
        self.toolButton_reload_13.setIcon(icon25)
        self.toolButton_reload_13.setIconSize(QtCore.QSize(22, 22))
        self.toolButton_reload_13.setObjectName("toolButton_reload_13")
        self.gridLayout_171.addWidget(self.toolButton_reload_13, 0, 0, 1, 1)
        self.gridLayout_86.addLayout(self.gridLayout_171, 1, 1, 2, 1)
        self.gridLayout_85 = QtWidgets.QGridLayout()
        self.gridLayout_85.setObjectName("gridLayout_85")
        self.bandcalc_filter_lineEdit = QtWidgets.QLineEdit(parent=self.widget_2)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.bandcalc_filter_lineEdit.sizePolicy().hasHeightForWidth())
        self.bandcalc_filter_lineEdit.setSizePolicy(sizePolicy)
        self.bandcalc_filter_lineEdit.setText("")
        self.bandcalc_filter_lineEdit.setObjectName("bandcalc_filter_lineEdit")
        self.gridLayout_85.addWidget(self.bandcalc_filter_lineEdit, 0, 1, 1, 1)
        self.label_71 = QtWidgets.QLabel(parent=self.widget_2)
        self.label_71.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_71.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_71.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_71.setObjectName("label_71")
        self.gridLayout_85.addWidget(self.label_71, 0, 0, 1, 1)
        self.gridLayout_86.addLayout(self.gridLayout_85, 0, 0, 1, 2)
        self.gridLayout_126.addLayout(self.gridLayout_86, 0, 0, 1, 1)
        self.widget_3 = QtWidgets.QWidget(parent=self.splitter_band_calc)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Maximum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.widget_3.sizePolicy().hasHeightForWidth())
        self.widget_3.setSizePolicy(sizePolicy)
        self.widget_3.setMinimumSize(QtCore.QSize(0, 100))
        self.widget_3.setObjectName("widget_3")
        self.gridLayout_40 = QtWidgets.QGridLayout(self.widget_3)
        self.gridLayout_40.setContentsMargins(1, 1, 1, 1)
        self.gridLayout_40.setSpacing(2)
        self.gridLayout_40.setObjectName("gridLayout_40")
        self.verticalLayout_9 = QtWidgets.QVBoxLayout()
        self.verticalLayout_9.setSizeConstraint(QtWidgets.QLayout.SizeConstraint.SetNoConstraint)
        self.verticalLayout_9.setObjectName("verticalLayout_9")
        self.label_band_calc = QtWidgets.QLabel(parent=self.widget_3)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_band_calc.sizePolicy().hasHeightForWidth())
        self.label_band_calc.setSizePolicy(sizePolicy)
        self.label_band_calc.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_band_calc.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_band_calc.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_band_calc.setWordWrap(True)
        self.label_band_calc.setObjectName("label_band_calc")
        self.verticalLayout_9.addWidget(self.label_band_calc)
        self.splitter_2 = QtWidgets.QSplitter(parent=self.widget_3)
        self.splitter_2.setOrientation(QtCore.Qt.Orientation.Horizontal)
        self.splitter_2.setChildrenCollapsible(False)
        self.splitter_2.setObjectName("splitter_2")
        self.plainTextEdit_calc = QtWidgets.QPlainTextEdit(parent=self.splitter_2)
        font = QtGui.QFont()
        font.setPointSize(11)
        self.plainTextEdit_calc.setFont(font)
        self.plainTextEdit_calc.setAcceptDrops(False)
        self.plainTextEdit_calc.setPlainText("")
        self.plainTextEdit_calc.setObjectName("plainTextEdit_calc")
        self.band_calc_function_tableWidget = QtWidgets.QTableWidget(parent=self.splitter_2)
        self.band_calc_function_tableWidget.setMaximumSize(QtCore.QSize(250, 16777215))
        self.band_calc_function_tableWidget.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.band_calc_function_tableWidget.setEditTriggers(QtWidgets.QAbstractItemView.EditTrigger.NoEditTriggers)
        self.band_calc_function_tableWidget.setAlternatingRowColors(True)
        self.band_calc_function_tableWidget.setSelectionMode(QtWidgets.QAbstractItemView.SelectionMode.SingleSelection)
        self.band_calc_function_tableWidget.setObjectName("band_calc_function_tableWidget")
        self.band_calc_function_tableWidget.setColumnCount(1)
        self.band_calc_function_tableWidget.setRowCount(0)
        item = QtWidgets.QTableWidgetItem()
        self.band_calc_function_tableWidget.setHorizontalHeaderItem(0, item)
        self.band_calc_function_tableWidget.horizontalHeader().setStretchLastSection(True)
        self.band_calc_function_tableWidget.verticalHeader().setVisible(False)
        self.layoutWidget = QtWidgets.QWidget(parent=self.splitter_2)
        self.layoutWidget.setObjectName("layoutWidget")
        self.horizontalLayout_11 = QtWidgets.QHBoxLayout(self.layoutWidget)
        self.horizontalLayout_11.setContentsMargins(0, 0, 0, 0)
        self.horizontalLayout_11.setObjectName("horizontalLayout_11")
        self.toolButton_import_expression = QtWidgets.QToolButton(parent=self.layoutWidget)
        self.toolButton_import_expression.setStyleSheet("margin: 0px;padding: 0px;")
        self.toolButton_import_expression.setIcon(icon7)
        self.toolButton_import_expression.setIconSize(QtCore.QSize(22, 22))
        self.toolButton_import_expression.setObjectName("toolButton_import_expression")
        self.horizontalLayout_11.addWidget(self.toolButton_import_expression)
        self.verticalLayout_9.addWidget(self.splitter_2)
        self.gridLayout_40.addLayout(self.verticalLayout_9, 0, 0, 1, 1)
        self.gridLayout_38.addWidget(self.splitter_band_calc, 0, 0, 1, 1)
        self.verticalLayout_8 = QtWidgets.QVBoxLayout()
        self.verticalLayout_8.setObjectName("verticalLayout_8")
        self.label_84 = QtWidgets.QLabel(parent=self.tab_band_calc)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Maximum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_84.sizePolicy().hasHeightForWidth())
        self.label_84.setSizePolicy(sizePolicy)
        self.label_84.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_84.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_84.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_84.setObjectName("label_84")
        self.verticalLayout_8.addWidget(self.label_84)
        self.horizontalLayout_4 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_4.setObjectName("horizontalLayout_4")
        self.label_5 = QtWidgets.QLabel(parent=self.tab_band_calc)
        self.label_5.setObjectName("label_5")
        self.horizontalLayout_4.addWidget(self.label_5)
        self.raster_type_combo = QtWidgets.QComboBox(parent=self.tab_band_calc)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.raster_type_combo.sizePolicy().hasHeightForWidth())
        self.raster_type_combo.setSizePolicy(sizePolicy)
        self.raster_type_combo.setObjectName("raster_type_combo")
        self.raster_type_combo.addItem("")
        self.raster_type_combo.addItem("")
        self.raster_type_combo.addItem("")
        self.raster_type_combo.addItem("")
        self.raster_type_combo.addItem("")
        self.raster_type_combo.addItem("")
        self.horizontalLayout_4.addWidget(self.raster_type_combo)
        self.label_268 = QtWidgets.QLabel(parent=self.tab_band_calc)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_268.sizePolicy().hasHeightForWidth())
        self.label_268.setSizePolicy(sizePolicy)
        self.label_268.setMinimumSize(QtCore.QSize(50, 0))
        self.label_268.setMaximumSize(QtCore.QSize(130, 16777215))
        self.label_268.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_268.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_268.setObjectName("label_268")
        self.horizontalLayout_4.addWidget(self.label_268)
        self.nodata_spinBox_4 = QtWidgets.QSpinBox(parent=self.tab_band_calc)
        self.nodata_spinBox_4.setMinimum(-2147483647)
        self.nodata_spinBox_4.setMaximum(2147483647)
        self.nodata_spinBox_4.setProperty("value", -32768)
        self.nodata_spinBox_4.setObjectName("nodata_spinBox_4")
        self.horizontalLayout_4.addWidget(self.nodata_spinBox_4)
        self.label_152 = QtWidgets.QLabel(parent=self.tab_band_calc)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_152.sizePolicy().hasHeightForWidth())
        self.label_152.setSizePolicy(sizePolicy)
        self.label_152.setMinimumSize(QtCore.QSize(40, 0))
        self.label_152.setMaximumSize(QtCore.QSize(120, 16777215))
        self.label_152.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_152.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_152.setObjectName("label_152")
        self.horizontalLayout_4.addWidget(self.label_152)
        self.nodata_mask_combo = QtWidgets.QComboBox(parent=self.tab_band_calc)
        self.nodata_mask_combo.setMaximumSize(QtCore.QSize(90, 16777215))
        self.nodata_mask_combo.setObjectName("nodata_mask_combo")
        self.nodata_mask_combo.addItem("")
        self.nodata_mask_combo.addItem("")
        self.nodata_mask_combo.addItem("")
        self.horizontalLayout_4.addWidget(self.nodata_mask_combo)
        self.set_scale_checkBox = QtWidgets.QCheckBox(parent=self.tab_band_calc)
        self.set_scale_checkBox.setObjectName("set_scale_checkBox")
        self.horizontalLayout_4.addWidget(self.set_scale_checkBox)
        self.scale_doubleSpinBox = QtWidgets.QDoubleSpinBox(parent=self.tab_band_calc)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Fixed, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.scale_doubleSpinBox.sizePolicy().hasHeightForWidth())
        self.scale_doubleSpinBox.setSizePolicy(sizePolicy)
        self.scale_doubleSpinBox.setMaximumSize(QtCore.QSize(100, 16777215))
        self.scale_doubleSpinBox.setDecimals(0)
        self.scale_doubleSpinBox.setMinimum(-1e+34)
        self.scale_doubleSpinBox.setMaximum(1e+34)
        self.scale_doubleSpinBox.setProperty("value", 1.0)
        self.scale_doubleSpinBox.setObjectName("scale_doubleSpinBox")
        self.horizontalLayout_4.addWidget(self.scale_doubleSpinBox)
        self.set_offset_checkBox = QtWidgets.QCheckBox(parent=self.tab_band_calc)
        self.set_offset_checkBox.setObjectName("set_offset_checkBox")
        self.horizontalLayout_4.addWidget(self.set_offset_checkBox)
        self.offset_doubleSpinBox = QtWidgets.QDoubleSpinBox(parent=self.tab_band_calc)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Fixed, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.offset_doubleSpinBox.sizePolicy().hasHeightForWidth())
        self.offset_doubleSpinBox.setSizePolicy(sizePolicy)
        self.offset_doubleSpinBox.setMaximumSize(QtCore.QSize(100, 16777215))
        self.offset_doubleSpinBox.setDecimals(0)
        self.offset_doubleSpinBox.setMinimum(-1e+34)
        self.offset_doubleSpinBox.setMaximum(1e+34)
        self.offset_doubleSpinBox.setProperty("value", 0.0)
        self.offset_doubleSpinBox.setObjectName("offset_doubleSpinBox")
        self.horizontalLayout_4.addWidget(self.offset_doubleSpinBox)
        spacerItem124 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.horizontalLayout_4.addItem(spacerItem124)
        self.verticalLayout_8.addLayout(self.horizontalLayout_4)
        self.horizontalLayout_60 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_60.setObjectName("horizontalLayout_60")
        self.label_83 = QtWidgets.QLabel(parent=self.tab_band_calc)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_83.sizePolicy().hasHeightForWidth())
        self.label_83.setSizePolicy(sizePolicy)
        self.label_83.setMinimumSize(QtCore.QSize(40, 0))
        self.label_83.setMaximumSize(QtCore.QSize(120, 16777215))
        self.label_83.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_83.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_83.setObjectName("label_83")
        self.horizontalLayout_60.addWidget(self.label_83)
        self.raster_extent_combo = QtWidgets.QComboBox(parent=self.tab_band_calc)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.raster_extent_combo.sizePolicy().hasHeightForWidth())
        self.raster_extent_combo.setSizePolicy(sizePolicy)
        self.raster_extent_combo.setMinimumSize(QtCore.QSize(150, 0))
        self.raster_extent_combo.setObjectName("raster_extent_combo")
        self.horizontalLayout_60.addWidget(self.raster_extent_combo)
        self.UL_X_lineEdit = QtWidgets.QLineEdit(parent=self.tab_band_calc)
        self.UL_X_lineEdit.setMaximumSize(QtCore.QSize(200, 16777215))
        self.UL_X_lineEdit.setText("")
        self.UL_X_lineEdit.setObjectName("UL_X_lineEdit")
        self.horizontalLayout_60.addWidget(self.UL_X_lineEdit)
        self.UL_Y_linedit = QtWidgets.QLineEdit(parent=self.tab_band_calc)
        self.UL_Y_linedit.setMaximumSize(QtCore.QSize(200, 16777215))
        self.UL_Y_linedit.setText("")
        self.UL_Y_linedit.setObjectName("UL_Y_linedit")
        self.horizontalLayout_60.addWidget(self.UL_Y_linedit)
        self.LR_X_lineEdit = QtWidgets.QLineEdit(parent=self.tab_band_calc)
        self.LR_X_lineEdit.setMaximumSize(QtCore.QSize(200, 16777215))
        self.LR_X_lineEdit.setText("")
        self.LR_X_lineEdit.setObjectName("LR_X_lineEdit")
        self.horizontalLayout_60.addWidget(self.LR_X_lineEdit)
        self.LR_Y_lineEdit = QtWidgets.QLineEdit(parent=self.tab_band_calc)
        self.LR_Y_lineEdit.setMaximumSize(QtCore.QSize(200, 16777215))
        self.LR_Y_lineEdit.setText("")
        self.LR_Y_lineEdit.setObjectName("LR_Y_lineEdit")
        self.horizontalLayout_60.addWidget(self.LR_Y_lineEdit)
        self.label_116 = QtWidgets.QLabel(parent=self.tab_band_calc)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_116.sizePolicy().hasHeightForWidth())
        self.label_116.setSizePolicy(sizePolicy)
        self.label_116.setMinimumSize(QtCore.QSize(40, 0))
        self.label_116.setMaximumSize(QtCore.QSize(120, 16777215))
        self.label_116.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_116.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_116.setObjectName("label_116")
        self.horizontalLayout_60.addWidget(self.label_116)
        self.raster_extent_combo_2 = QtWidgets.QComboBox(parent=self.tab_band_calc)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.raster_extent_combo_2.sizePolicy().hasHeightForWidth())
        self.raster_extent_combo_2.setSizePolicy(sizePolicy)
        self.raster_extent_combo_2.setMinimumSize(QtCore.QSize(150, 0))
        self.raster_extent_combo_2.setObjectName("raster_extent_combo_2")
        self.horizontalLayout_60.addWidget(self.raster_extent_combo_2)
        self.label_146 = QtWidgets.QLabel(parent=self.tab_band_calc)
        self.label_146.setMinimumSize(QtCore.QSize(40, 0))
        self.label_146.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_146.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_146.setObjectName("label_146")
        self.horizontalLayout_60.addWidget(self.label_146)
        self.resolution_lineEdit = QtWidgets.QLineEdit(parent=self.tab_band_calc)
        self.resolution_lineEdit.setMaximumSize(QtCore.QSize(100, 16777215))
        self.resolution_lineEdit.setObjectName("resolution_lineEdit")
        self.horizontalLayout_60.addWidget(self.resolution_lineEdit)
        spacerItem125 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.horizontalLayout_60.addItem(spacerItem125)
        self.toolButton_calculate = QtWidgets.QToolButton(parent=self.tab_band_calc)
        font = QtGui.QFont()
        font.setBold(True)
        self.toolButton_calculate.setFont(font)
        self.toolButton_calculate.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.toolButton_calculate.setStyleSheet("margin: 0px;padding: 0px;")
        self.toolButton_calculate.setIcon(icon8)
        self.toolButton_calculate.setIconSize(QtCore.QSize(34, 34))
        self.toolButton_calculate.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.toolButton_calculate.setObjectName("toolButton_calculate")
        self.horizontalLayout_60.addWidget(self.toolButton_calculate)
        self.verticalLayout_8.addLayout(self.horizontalLayout_60)
        self.gridLayout_38.addLayout(self.verticalLayout_8, 2, 0, 1, 1)
        self.horizontalLayout_73 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_73.setObjectName("horizontalLayout_73")
        self.nodata_as_value_checkBox = QtWidgets.QCheckBox(parent=self.tab_band_calc)
        self.nodata_as_value_checkBox.setObjectName("nodata_as_value_checkBox")
        self.horizontalLayout_73.addWidget(self.nodata_as_value_checkBox)
        self.nodata_checkBox_3 = QtWidgets.QCheckBox(parent=self.tab_band_calc)
        self.nodata_checkBox_3.setObjectName("nodata_checkBox_3")
        self.horizontalLayout_73.addWidget(self.nodata_checkBox_3)
        self.nodata_spinBox_13 = QtWidgets.QSpinBox(parent=self.tab_band_calc)
        self.nodata_spinBox_13.setMinimum(-2147483647)
        self.nodata_spinBox_13.setMaximum(2147483647)
        self.nodata_spinBox_13.setObjectName("nodata_spinBox_13")
        self.horizontalLayout_73.addWidget(self.nodata_spinBox_13)
        self.label_4 = QtWidgets.QLabel(parent=self.tab_band_calc)
        self.label_4.setObjectName("label_4")
        self.horizontalLayout_73.addWidget(self.label_4)
        self.calc_type_combo = QtWidgets.QComboBox(parent=self.tab_band_calc)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(1)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.calc_type_combo.sizePolicy().hasHeightForWidth())
        self.calc_type_combo.setSizePolicy(sizePolicy)
        self.calc_type_combo.setObjectName("calc_type_combo")
        self.calc_type_combo.addItem("")
        self.calc_type_combo.addItem("")
        self.calc_type_combo.addItem("")
        self.calc_type_combo.addItem("")
        self.calc_type_combo.addItem("")
        self.calc_type_combo.addItem("")
        self.horizontalLayout_73.addWidget(self.calc_type_combo)
        spacerItem126 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.horizontalLayout_73.addItem(spacerItem126)
        self.gridLayout_38.addLayout(self.horizontalLayout_73, 1, 0, 1, 1)
        self.SCP_tabs.addTab(self.tab_band_calc, "")
        self.tab_script = QtWidgets.QWidget()
        self.tab_script.setObjectName("tab_script")
        self.gridLayout_94 = QtWidgets.QGridLayout(self.tab_script)
        self.gridLayout_94.setObjectName("gridLayout_94")
        self.label_73 = QtWidgets.QLabel(parent=self.tab_script)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Preferred, QtWidgets.QSizePolicy.Policy.Maximum)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_73.sizePolicy().hasHeightForWidth())
        self.label_73.setSizePolicy(sizePolicy)
        self.label_73.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_73.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_73.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_73.setObjectName("label_73")
        self.gridLayout_94.addWidget(self.label_73, 0, 0, 1, 1)
        self.splitter_batch = QtWidgets.QSplitter(parent=self.tab_script)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.MinimumExpanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.splitter_batch.sizePolicy().hasHeightForWidth())
        self.splitter_batch.setSizePolicy(sizePolicy)
        self.splitter_batch.setMinimumSize(QtCore.QSize(100, 0))
        self.splitter_batch.setOrientation(QtCore.Qt.Orientation.Horizontal)
        self.splitter_batch.setChildrenCollapsible(False)
        self.splitter_batch.setObjectName("splitter_batch")
        self.plainTextEdit_batch = QtWidgets.QPlainTextEdit(parent=self.splitter_batch)
        self.plainTextEdit_batch.setMinimumSize(QtCore.QSize(200, 0))
        font = QtGui.QFont()
        font.setPointSize(11)
        self.plainTextEdit_batch.setFont(font)
        self.plainTextEdit_batch.setStyleSheet("color:rgb(0, 225, 0); \n"
"background-color: rgb(27, 27, 27);")
        self.plainTextEdit_batch.setPlainText("")
        self.plainTextEdit_batch.setBackgroundVisible(False)
        self.plainTextEdit_batch.setObjectName("plainTextEdit_batch")
        self.gridLayout_94.addWidget(self.splitter_batch, 1, 0, 1, 1)
        self.horizontalLayout_69 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_69.setObjectName("horizontalLayout_69")
        self.clear_batch_toolButton = QtWidgets.QToolButton(parent=self.tab_script)
        self.clear_batch_toolButton.setStyleSheet("margin: 0px;padding: 0px;")
        self.clear_batch_toolButton.setIcon(icon9)
        self.clear_batch_toolButton.setIconSize(QtCore.QSize(22, 22))
        self.clear_batch_toolButton.setObjectName("clear_batch_toolButton")
        self.horizontalLayout_69.addWidget(self.clear_batch_toolButton)
        spacerItem127 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.horizontalLayout_69.addItem(spacerItem127)
        self.copy_script = QtWidgets.QToolButton(parent=self.tab_script)
        font = QtGui.QFont()
        font.setBold(True)
        self.copy_script.setFont(font)
        self.copy_script.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.copy_script.setStyleSheet("margin: 0px;padding: 0px;")
        self.copy_script.setIconSize(QtCore.QSize(34, 34))
        self.copy_script.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.copy_script.setObjectName("copy_script")
        self.horizontalLayout_69.addWidget(self.copy_script)
        self.save_script_button = QtWidgets.QToolButton(parent=self.tab_script)
        font = QtGui.QFont()
        font.setBold(True)
        self.save_script_button.setFont(font)
        self.save_script_button.setLayoutDirection(QtCore.Qt.LayoutDirection.RightToLeft)
        self.save_script_button.setStyleSheet("margin: 0px;padding: 0px;")
        self.save_script_button.setIcon(icon11)
        self.save_script_button.setIconSize(QtCore.QSize(24, 24))
        self.save_script_button.setToolButtonStyle(QtCore.Qt.ToolButtonStyle.ToolButtonTextBesideIcon)
        self.save_script_button.setObjectName("save_script_button")
        self.horizontalLayout_69.addWidget(self.save_script_button)
        self.gridLayout_94.addLayout(self.horizontalLayout_69, 2, 0, 1, 1)
        self.SCP_tabs.addTab(self.tab_script, "")
        self.tab_Settings = QtWidgets.QWidget()
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.tab_Settings.sizePolicy().hasHeightForWidth())
        self.tab_Settings.setSizePolicy(sizePolicy)
        self.tab_Settings.setMinimumSize(QtCore.QSize(454, 0))
        self.tab_Settings.setMaximumSize(QtCore.QSize(16777215, 16777215))
        self.tab_Settings.setObjectName("tab_Settings")
        self.gridLayout_134 = QtWidgets.QGridLayout(self.tab_Settings)
        self.gridLayout_134.setContentsMargins(3, 3, 3, 3)
        self.gridLayout_134.setObjectName("gridLayout_134")
        self.settings_tabWidget = QtWidgets.QTabWidget(parent=self.tab_Settings)
        self.settings_tabWidget.setDocumentMode(True)
        self.settings_tabWidget.setObjectName("settings_tabWidget")
        self.tabWidgetProcessing = QtWidgets.QWidget()
        self.tabWidgetProcessing.setObjectName("tabWidgetProcessing")
        self.gridLayout_195 = QtWidgets.QGridLayout(self.tabWidgetProcessing)
        self.gridLayout_195.setObjectName("gridLayout_195")
        self.gridLayout_3 = QtWidgets.QGridLayout()
        self.gridLayout_3.setObjectName("gridLayout_3")
        self.label_28 = QtWidgets.QLabel(parent=self.tabWidgetProcessing)
        self.label_28.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_28.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_28.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_28.setObjectName("label_28")
        self.gridLayout_3.addWidget(self.label_28, 0, 0, 1, 1)
        self.gridLayout = QtWidgets.QGridLayout()
        self.gridLayout.setObjectName("gridLayout")
        self.RAM_spinBox = QtWidgets.QSpinBox(parent=self.tabWidgetProcessing)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Fixed, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.RAM_spinBox.sizePolicy().hasHeightForWidth())
        self.RAM_spinBox.setSizePolicy(sizePolicy)
        self.RAM_spinBox.setMinimumSize(QtCore.QSize(50, 0))
        self.RAM_spinBox.setMaximumSize(QtCore.QSize(100, 16777215))
        self.RAM_spinBox.setAlignment(QtCore.Qt.AlignmentFlag.AlignRight|QtCore.Qt.AlignmentFlag.AlignTrailing|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.RAM_spinBox.setMinimum(128)
        self.RAM_spinBox.setMaximum(196608)
        self.RAM_spinBox.setSingleStep(10)
        self.RAM_spinBox.setProperty("value", 512)
        self.RAM_spinBox.setObjectName("RAM_spinBox")
        self.gridLayout.addWidget(self.RAM_spinBox, 0, 1, 1, 1)
        self.label_23 = QtWidgets.QLabel(parent=self.tabWidgetProcessing)
        self.label_23.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_23.setObjectName("label_23")
        self.gridLayout.addWidget(self.label_23, 0, 0, 1, 1)
        self.label_56 = QtWidgets.QLabel(parent=self.tabWidgetProcessing)
        self.label_56.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_56.setObjectName("label_56")
        self.gridLayout.addWidget(self.label_56, 1, 0, 1, 1)
        self.CPU_spinBox = QtWidgets.QSpinBox(parent=self.tabWidgetProcessing)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Fixed, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.CPU_spinBox.sizePolicy().hasHeightForWidth())
        self.CPU_spinBox.setSizePolicy(sizePolicy)
        self.CPU_spinBox.setMinimumSize(QtCore.QSize(50, 0))
        self.CPU_spinBox.setMaximumSize(QtCore.QSize(100, 16777215))
        self.CPU_spinBox.setAlignment(QtCore.Qt.AlignmentFlag.AlignRight|QtCore.Qt.AlignmentFlag.AlignTrailing|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.CPU_spinBox.setMinimum(1)
        self.CPU_spinBox.setMaximum(1000)
        self.CPU_spinBox.setSingleStep(1)
        self.CPU_spinBox.setProperty("value", 1)
        self.CPU_spinBox.setObjectName("CPU_spinBox")
        self.gridLayout.addWidget(self.CPU_spinBox, 1, 1, 1, 1)
        self.gridLayout_3.addLayout(self.gridLayout, 1, 0, 1, 1)
        self.gridLayout_195.addLayout(self.gridLayout_3, 0, 0, 1, 1)
        self.gridLayout_237 = QtWidgets.QGridLayout()
        self.gridLayout_237.setObjectName("gridLayout_237")
        self.label_13 = QtWidgets.QLabel(parent=self.tabWidgetProcessing)
        self.label_13.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_13.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_13.setObjectName("label_13")
        self.gridLayout_237.addWidget(self.label_13, 1, 1, 1, 1)
        self.label_18 = QtWidgets.QLabel(parent=self.tabWidgetProcessing)
        self.label_18.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_18.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_18.setObjectName("label_18")
        self.gridLayout_237.addWidget(self.label_18, 1, 3, 1, 1)
        self.smtp_user_lineEdit = QtWidgets.QLineEdit(parent=self.tabWidgetProcessing)
        self.smtp_user_lineEdit.setObjectName("smtp_user_lineEdit")
        self.gridLayout_237.addWidget(self.smtp_user_lineEdit, 2, 2, 1, 1)
        self.smtp_checkBox = QtWidgets.QCheckBox(parent=self.tabWidgetProcessing)
        self.smtp_checkBox.setChecked(True)
        self.smtp_checkBox.setTristate(False)
        self.smtp_checkBox.setObjectName("smtp_checkBox")
        self.gridLayout_237.addWidget(self.smtp_checkBox, 3, 1, 1, 1)
        self.label_117 = QtWidgets.QLabel(parent=self.tabWidgetProcessing)
        self.label_117.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_117.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_117.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_117.setObjectName("label_117")
        self.gridLayout_237.addWidget(self.label_117, 0, 0, 1, 5)
        self.smtp_password_lineEdit = QtWidgets.QLineEdit(parent=self.tabWidgetProcessing)
        self.smtp_password_lineEdit.setObjectName("smtp_password_lineEdit")
        self.gridLayout_237.addWidget(self.smtp_password_lineEdit, 2, 3, 1, 1)
        self.smtp_server_lineEdit = QtWidgets.QLineEdit(parent=self.tabWidgetProcessing)
        self.smtp_server_lineEdit.setObjectName("smtp_server_lineEdit")
        self.gridLayout_237.addWidget(self.smtp_server_lineEdit, 2, 1, 1, 1)
        self.label_14 = QtWidgets.QLabel(parent=self.tabWidgetProcessing)
        self.label_14.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_14.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_14.setObjectName("label_14")
        self.gridLayout_237.addWidget(self.label_14, 1, 2, 1, 1)
        self.to_email_lineEdit = QtWidgets.QLineEdit(parent=self.tabWidgetProcessing)
        self.to_email_lineEdit.setObjectName("to_email_lineEdit")
        self.gridLayout_237.addWidget(self.to_email_lineEdit, 3, 2, 1, 3)
        self.remeber_settings_checkBox = QtWidgets.QCheckBox(parent=self.tabWidgetProcessing)
        self.remeber_settings_checkBox.setChecked(True)
        self.remeber_settings_checkBox.setObjectName("remeber_settings_checkBox")
        self.gridLayout_237.addWidget(self.remeber_settings_checkBox, 2, 4, 1, 1)
        self.gridLayout_195.addLayout(self.gridLayout_237, 2, 0, 1, 1)
        self.gridLayout_124 = QtWidgets.QGridLayout()
        self.gridLayout_124.setObjectName("gridLayout_124")
        self.reset_temp_directory_Button = QtWidgets.QToolButton(parent=self.tabWidgetProcessing)
        self.reset_temp_directory_Button.setStyleSheet("margin: 0px;padding: 0px;")
        self.reset_temp_directory_Button.setIcon(icon9)
        self.reset_temp_directory_Button.setIconSize(QtCore.QSize(22, 22))
        self.reset_temp_directory_Button.setObjectName("reset_temp_directory_Button")
        self.gridLayout_124.addWidget(self.reset_temp_directory_Button, 2, 3, 1, 1)
        self.temp_directory_Button = QtWidgets.QToolButton(parent=self.tabWidgetProcessing)
        self.temp_directory_Button.setStyleSheet("margin: 0px;padding: 0px;")
        self.temp_directory_Button.setIcon(icon23)
        self.temp_directory_Button.setIconSize(QtCore.QSize(22, 22))
        self.temp_directory_Button.setObjectName("temp_directory_Button")
        self.gridLayout_124.addWidget(self.temp_directory_Button, 2, 0, 1, 1)
        self.label_87 = QtWidgets.QLabel(parent=self.tabWidgetProcessing)
        self.label_87.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_87.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_87.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_87.setObjectName("label_87")
        self.gridLayout_124.addWidget(self.label_87, 0, 0, 1, 4)
        self.temp_directory_label = QtWidgets.QLabel(parent=self.tabWidgetProcessing)
        self.temp_directory_label.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.temp_directory_label.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.temp_directory_label.setText("")
        self.temp_directory_label.setObjectName("temp_directory_label")
        self.gridLayout_124.addWidget(self.temp_directory_label, 2, 1, 1, 2)
        self.gridLayout_195.addLayout(self.gridLayout_124, 3, 0, 1, 1)
        self.gridLayout_107 = QtWidgets.QGridLayout()
        self.gridLayout_107.setObjectName("gridLayout_107")
        self.verticalLayout_6 = QtWidgets.QVBoxLayout()
        self.verticalLayout_6.setObjectName("verticalLayout_6")
        self.label_275 = QtWidgets.QLabel(parent=self.tabWidgetProcessing)
        self.label_275.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_275.setObjectName("label_275")
        self.verticalLayout_6.addWidget(self.label_275)
        self.gridLayout_107.addLayout(self.verticalLayout_6, 1, 0, 1, 1)
        self.verticalLayout_7 = QtWidgets.QVBoxLayout()
        self.verticalLayout_7.setObjectName("verticalLayout_7")
        self.gdal_path_lineEdit = QtWidgets.QLineEdit(parent=self.tabWidgetProcessing)
        self.gdal_path_lineEdit.setObjectName("gdal_path_lineEdit")
        self.verticalLayout_7.addWidget(self.gdal_path_lineEdit)
        self.gridLayout_107.addLayout(self.verticalLayout_7, 1, 1, 1, 1)
        self.label_211 = QtWidgets.QLabel(parent=self.tabWidgetProcessing)
        self.label_211.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_211.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_211.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_211.setObjectName("label_211")
        self.gridLayout_107.addWidget(self.label_211, 0, 0, 1, 2)
        self.gridLayout_195.addLayout(self.gridLayout_107, 4, 0, 1, 1)
        self.gridLayout_30 = QtWidgets.QGridLayout()
        self.gridLayout_30.setObjectName("gridLayout_30")
        self.sound_checkBox = QtWidgets.QCheckBox(parent=self.tabWidgetProcessing)
        self.sound_checkBox.setChecked(True)
        self.sound_checkBox.setTristate(False)
        self.sound_checkBox.setObjectName("sound_checkBox")
        self.gridLayout_30.addWidget(self.sound_checkBox, 1, 0, 1, 1)
        self.label_45 = QtWidgets.QLabel(parent=self.tabWidgetProcessing)
        self.label_45.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_45.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_45.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_45.setObjectName("label_45")
        self.gridLayout_30.addWidget(self.label_45, 0, 0, 1, 2)
        self.raster_compression_checkBox = QtWidgets.QCheckBox(parent=self.tabWidgetProcessing)
        self.raster_compression_checkBox.setChecked(True)
        self.raster_compression_checkBox.setObjectName("raster_compression_checkBox")
        self.gridLayout_30.addWidget(self.raster_compression_checkBox, 1, 1, 1, 1)
        self.horizontalLayout_65 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_65.setObjectName("horizontalLayout_65")
        self.gridLayout_30.addLayout(self.horizontalLayout_65, 2, 0, 1, 2)
        self.gridLayout_195.addLayout(self.gridLayout_30, 1, 0, 1, 1)
        spacerItem128 = QtWidgets.QSpacerItem(17, 17, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_195.addItem(spacerItem128, 5, 0, 1, 1)
        self.settings_tabWidget.addTab(self.tabWidgetProcessing, "")
        self.tabWidgetInterface = QtWidgets.QWidget()
        self.tabWidgetInterface.setObjectName("tabWidgetInterface")
        self.gridLayout_63 = QtWidgets.QGridLayout(self.tabWidgetInterface)
        self.gridLayout_63.setObjectName("gridLayout_63")
        self.gridLayout_21 = QtWidgets.QGridLayout()
        self.gridLayout_21.setObjectName("gridLayout_21")
        self.label_21 = QtWidgets.QLabel(parent=self.tabWidgetInterface)
        self.label_21.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_21.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_21.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_21.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_21.setObjectName("label_21")
        self.gridLayout_21.addWidget(self.label_21, 0, 1, 1, 3)
        self.gridLayout_172 = QtWidgets.QGridLayout()
        self.gridLayout_172.setObjectName("gridLayout_172")
        self.change_color_Button = QtWidgets.QPushButton(parent=self.tabWidgetInterface)
        self.change_color_Button.setStyleSheet("background-color : #FFAA00")
        self.change_color_Button.setText("")
        self.change_color_Button.setObjectName("change_color_Button")
        self.gridLayout_172.addWidget(self.change_color_Button, 0, 1, 1, 1)
        self.label_22 = QtWidgets.QLabel(parent=self.tabWidgetInterface)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_22.sizePolicy().hasHeightForWidth())
        self.label_22.setSizePolicy(sizePolicy)
        self.label_22.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_22.setObjectName("label_22")
        self.gridLayout_172.addWidget(self.label_22, 0, 0, 1, 1)
        self.transparency_Label = QtWidgets.QLabel(parent=self.tabWidgetInterface)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.transparency_Label.sizePolicy().hasHeightForWidth())
        self.transparency_Label.setSizePolicy(sizePolicy)
        self.transparency_Label.setMinimumSize(QtCore.QSize(100, 0))
        self.transparency_Label.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.transparency_Label.setObjectName("transparency_Label")
        self.gridLayout_172.addWidget(self.transparency_Label, 0, 2, 1, 1)
        self.transparency_Slider = QtWidgets.QSlider(parent=self.tabWidgetInterface)
        self.transparency_Slider.setMaximum(100)
        self.transparency_Slider.setSingleStep(10)
        self.transparency_Slider.setProperty("value", 50)
        self.transparency_Slider.setOrientation(QtCore.Qt.Orientation.Horizontal)
        self.transparency_Slider.setTickPosition(QtWidgets.QSlider.TickPosition.TicksBelow)
        self.transparency_Slider.setTickInterval(10)
        self.transparency_Slider.setObjectName("transparency_Slider")
        self.gridLayout_172.addWidget(self.transparency_Slider, 0, 3, 1, 1)
        self.gridLayout_21.addLayout(self.gridLayout_172, 2, 1, 1, 1)
        self.reset_color_Button = QtWidgets.QToolButton(parent=self.tabWidgetInterface)
        self.reset_color_Button.setStyleSheet("margin: 0px;padding: 0px;")
        self.reset_color_Button.setIcon(icon9)
        self.reset_color_Button.setIconSize(QtCore.QSize(22, 22))
        self.reset_color_Button.setObjectName("reset_color_Button")
        self.gridLayout_21.addWidget(self.reset_color_Button, 2, 2, 1, 1)
        self.gridLayout_63.addLayout(self.gridLayout_21, 0, 0, 1, 1)
        self.gridLayout_17 = QtWidgets.QGridLayout()
        self.gridLayout_17.setObjectName("gridLayout_17")
        self.label_95 = QtWidgets.QLabel(parent=self.tabWidgetInterface)
        self.label_95.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_95.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_95.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_95.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_95.setObjectName("label_95")
        self.gridLayout_17.addWidget(self.label_95, 0, 0, 1, 1)
        spacerItem129 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_17.addItem(spacerItem129, 2, 0, 1, 1)
        self.download_news_checkBox = QtWidgets.QCheckBox(parent=self.tabWidgetInterface)
        self.download_news_checkBox.setChecked(True)
        self.download_news_checkBox.setObjectName("download_news_checkBox")
        self.gridLayout_17.addWidget(self.download_news_checkBox, 1, 0, 1, 1)
        self.gridLayout_63.addLayout(self.gridLayout_17, 3, 0, 1, 1)
        self.gridLayout_84 = QtWidgets.QGridLayout()
        self.gridLayout_84.setObjectName("gridLayout_84")
        self.label_68 = QtWidgets.QLabel(parent=self.tabWidgetInterface)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_68.sizePolicy().hasHeightForWidth())
        self.label_68.setSizePolicy(sizePolicy)
        self.label_68.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_68.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_68.setObjectName("label_68")
        self.gridLayout_84.addWidget(self.label_68, 1, 0, 1, 1)
        self.variable_name_lineEdit = QtWidgets.QLineEdit(parent=self.tabWidgetInterface)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.variable_name_lineEdit.sizePolicy().hasHeightForWidth())
        self.variable_name_lineEdit.setSizePolicy(sizePolicy)
        self.variable_name_lineEdit.setMaxLength(20)
        self.variable_name_lineEdit.setObjectName("variable_name_lineEdit")
        self.gridLayout_84.addWidget(self.variable_name_lineEdit, 1, 1, 1, 1)
        self.label_69 = QtWidgets.QLabel(parent=self.tabWidgetInterface)
        self.label_69.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_69.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_69.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_69.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_69.setObjectName("label_69")
        self.gridLayout_84.addWidget(self.label_69, 0, 0, 1, 3)
        self.reset_variable_name_Button = QtWidgets.QToolButton(parent=self.tabWidgetInterface)
        self.reset_variable_name_Button.setStyleSheet("margin: 0px;padding: 0px;")
        self.reset_variable_name_Button.setIcon(icon9)
        self.reset_variable_name_Button.setIconSize(QtCore.QSize(22, 22))
        self.reset_variable_name_Button.setObjectName("reset_variable_name_Button")
        self.gridLayout_84.addWidget(self.reset_variable_name_Button, 1, 2, 1, 1)
        self.gridLayout_63.addLayout(self.gridLayout_84, 1, 0, 1, 1)
        self.gridLayout_99 = QtWidgets.QGridLayout()
        self.gridLayout_99.setObjectName("gridLayout_99")
        self.label_76 = QtWidgets.QLabel(parent=self.tabWidgetInterface)
        self.label_76.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_76.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_76.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_76.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_76.setObjectName("label_76")
        self.gridLayout_99.addWidget(self.label_76, 0, 0, 1, 3)
        self.reset_group_name_Button = QtWidgets.QToolButton(parent=self.tabWidgetInterface)
        self.reset_group_name_Button.setStyleSheet("margin: 0px;padding: 0px;")
        self.reset_group_name_Button.setIcon(icon9)
        self.reset_group_name_Button.setIconSize(QtCore.QSize(22, 22))
        self.reset_group_name_Button.setObjectName("reset_group_name_Button")
        self.gridLayout_99.addWidget(self.reset_group_name_Button, 1, 2, 1, 1)
        self.virtual_raster_load_checkBox = QtWidgets.QCheckBox(parent=self.tabWidgetInterface)
        self.virtual_raster_load_checkBox.setObjectName("virtual_raster_load_checkBox")
        self.gridLayout_99.addWidget(self.virtual_raster_load_checkBox, 2, 0, 1, 1)
        self.horizontalLayout_61 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_61.setObjectName("horizontalLayout_61")
        self.label_75 = QtWidgets.QLabel(parent=self.tabWidgetInterface)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Maximum, QtWidgets.QSizePolicy.Policy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.label_75.sizePolicy().hasHeightForWidth())
        self.label_75.setSizePolicy(sizePolicy)
        self.label_75.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_75.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_75.setObjectName("label_75")
        self.horizontalLayout_61.addWidget(self.label_75)
        self.group_name_lineEdit = QtWidgets.QLineEdit(parent=self.tabWidgetInterface)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.group_name_lineEdit.sizePolicy().hasHeightForWidth())
        self.group_name_lineEdit.setSizePolicy(sizePolicy)
        self.group_name_lineEdit.setMaxLength(20)
        self.group_name_lineEdit.setObjectName("group_name_lineEdit")
        self.horizontalLayout_61.addWidget(self.group_name_lineEdit)
        self.gridLayout_99.addLayout(self.horizontalLayout_61, 1, 0, 1, 2)
        self.gridLayout_63.addLayout(self.gridLayout_99, 2, 0, 1, 1)
        self.settings_tabWidget.addTab(self.tabWidgetInterface, "")
        self.tabWidgetDebug = QtWidgets.QWidget()
        self.tabWidgetDebug.setObjectName("tabWidgetDebug")
        self.gridLayout_13 = QtWidgets.QGridLayout(self.tabWidgetDebug)
        self.gridLayout_13.setObjectName("gridLayout_13")
        self.gridLayout_55 = QtWidgets.QGridLayout()
        self.gridLayout_55.setObjectName("gridLayout_55")
        self.test_dependencies_Button = QtWidgets.QToolButton(parent=self.tabWidgetDebug)
        self.test_dependencies_Button.setStyleSheet("margin: 0px;padding: 0px;")
        self.test_dependencies_Button.setIcon(icon21)
        self.test_dependencies_Button.setIconSize(QtCore.QSize(22, 22))
        self.test_dependencies_Button.setObjectName("test_dependencies_Button")
        self.gridLayout_55.addWidget(self.test_dependencies_Button, 2, 2, 1, 1)
        self.label_43 = QtWidgets.QLabel(parent=self.tabWidgetDebug)
        self.label_43.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_43.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_43.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_43.setObjectName("label_43")
        self.gridLayout_55.addWidget(self.label_43, 0, 0, 1, 4)
        spacerItem130 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_55.addItem(spacerItem130, 2, 3, 1, 1)
        self.label_42 = QtWidgets.QLabel(parent=self.tabWidgetDebug)
        self.label_42.setAlignment(QtCore.Qt.AlignmentFlag.AlignLeading|QtCore.Qt.AlignmentFlag.AlignLeft|QtCore.Qt.AlignmentFlag.AlignVCenter)
        self.label_42.setObjectName("label_42")
        self.gridLayout_55.addWidget(self.label_42, 2, 1, 1, 1)
        spacerItem131 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        self.gridLayout_55.addItem(spacerItem131, 4, 1, 1, 1)
        self.test_textBrowser = QtWidgets.QTextBrowser(parent=self.tabWidgetDebug)
        self.test_textBrowser.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.test_textBrowser.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.test_textBrowser.setOpenExternalLinks(True)
        self.test_textBrowser.setObjectName("test_textBrowser")
        self.gridLayout_55.addWidget(self.test_textBrowser, 3, 1, 1, 3)
        self.gridLayout_13.addLayout(self.gridLayout_55, 1, 0, 1, 1)
        self.gridLayout_7 = QtWidgets.QGridLayout()
        self.gridLayout_7.setObjectName("gridLayout_7")
        self.exportLog_Button = QtWidgets.QToolButton(parent=self.tabWidgetDebug)
        self.exportLog_Button.setStyleSheet("margin: 0px;padding: 0px;")
        self.exportLog_Button.setIcon(icon11)
        self.exportLog_Button.setIconSize(QtCore.QSize(22, 22))
        self.exportLog_Button.setObjectName("exportLog_Button")
        self.gridLayout_7.addWidget(self.exportLog_Button, 1, 2, 1, 1)
        self.log_checkBox = QtWidgets.QCheckBox(parent=self.tabWidgetDebug)
        self.log_checkBox.setChecked(False)
        self.log_checkBox.setTristate(False)
        self.log_checkBox.setObjectName("log_checkBox")
        self.gridLayout_7.addWidget(self.log_checkBox, 1, 0, 1, 1)
        self.label_30 = QtWidgets.QLabel(parent=self.tabWidgetDebug)
        self.label_30.setStyleSheet("background-color : #5a5a5a; color : white; font: bold")
        self.label_30.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.label_30.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.label_30.setObjectName("label_30")
        self.gridLayout_7.addWidget(self.label_30, 0, 0, 1, 4)
        spacerItem132 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_7.addItem(spacerItem132, 1, 1, 1, 1)
        self.gridLayout_13.addLayout(self.gridLayout_7, 0, 0, 1, 1)
        self.settings_tabWidget.addTab(self.tabWidgetDebug, "")
        self.gridLayout_134.addWidget(self.settings_tabWidget, 0, 0, 1, 1)
        self.SCP_tabs.addTab(self.tab_Settings, "")
        self.tab_About = QtWidgets.QWidget()
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Policy.Minimum, QtWidgets.QSizePolicy.Policy.Expanding)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(self.tab_About.sizePolicy().hasHeightForWidth())
        self.tab_About.setSizePolicy(sizePolicy)
        self.tab_About.setLocale(QtCore.QLocale(QtCore.QLocale.Language.English, QtCore.QLocale.Country.UnitedStates))
        self.tab_About.setObjectName("tab_About")
        self.gridLayout_16 = QtWidgets.QGridLayout(self.tab_About)
        self.gridLayout_16.setContentsMargins(3, 3, 3, 3)
        self.gridLayout_16.setObjectName("gridLayout_16")
        self.gridLayout_5 = QtWidgets.QGridLayout()
        self.gridLayout_5.setObjectName("gridLayout_5")
        self.label_7 = QtWidgets.QLabel(parent=self.tab_About)
        self.label_7.setText("")
        self.label_7.setPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/semiautomaticclassificationplugin.svg"))
        self.label_7.setObjectName("label_7")
        self.gridLayout_5.addWidget(self.label_7, 0, 1, 1, 1)
        self.plugin_version_label = QtWidgets.QLabel(parent=self.tab_About)
        self.plugin_version_label.setFrameShape(QtWidgets.QFrame.Shape.NoFrame)
        self.plugin_version_label.setFrameShadow(QtWidgets.QFrame.Shadow.Raised)
        self.plugin_version_label.setText("")
        self.plugin_version_label.setTextFormat(QtCore.Qt.TextFormat.PlainText)
        self.plugin_version_label.setAlignment(QtCore.Qt.AlignmentFlag.AlignCenter)
        self.plugin_version_label.setObjectName("plugin_version_label")
        self.gridLayout_5.addWidget(self.plugin_version_label, 1, 2, 1, 1)
        spacerItem133 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_5.addItem(spacerItem133, 0, 0, 1, 1)
        self.plugin_label = QtWidgets.QLabel(parent=self.tab_About)
        self.plugin_label.setStyleSheet("font: bold")
        self.plugin_label.setFrameShape(QtWidgets.QFrame.Shape.NoFrame)
        self.plugin_label.setFrameShadow(QtWidgets.QFrame.Shadow.Raised)
        self.plugin_label.setTextFormat(QtCore.Qt.TextFormat.PlainText)
        self.plugin_label.setAlignment(QtCore.Qt.AlignmentFlag.AlignCenter)
        self.plugin_label.setObjectName("plugin_label")
        self.gridLayout_5.addWidget(self.plugin_label, 0, 2, 1, 1)
        spacerItem134 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Policy.Expanding, QtWidgets.QSizePolicy.Policy.Minimum)
        self.gridLayout_5.addItem(spacerItem134, 0, 3, 1, 1)
        self.gridLayout_16.addLayout(self.gridLayout_5, 0, 0, 1, 1)
        self.gridLayout_9 = QtWidgets.QGridLayout()
        self.gridLayout_9.setObjectName("gridLayout_9")
        self.textBrowser = QtWidgets.QTextBrowser(parent=self.tab_About)
        self.textBrowser.setFrameShape(QtWidgets.QFrame.Shape.Panel)
        self.textBrowser.setFrameShadow(QtWidgets.QFrame.Shadow.Sunken)
        self.textBrowser.setHtml("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><meta charset=\"utf-8\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"hr { height: 1px; border-width: 0; }\n"
"li.unchecked::marker { content: \"\\2610\"; }\n"
"li.checked::marker { content: \"\\2612\"; }\n"
"</style></head><body style=\" font-family:\'Noto Sans\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:\'Droid Sans\';\">Developed by Luca Congedo (ing.congedoluca@gmail.com), the </span><span style=\" font-family:\'Droid Sans\'; font-weight:600;\">Semi-Automatic Classification Plugin</span><span style=\" font-family:\'Droid Sans\';\"> (SCP) is a free open source plugin for QGIS that allows for the semi-automatic classification (also supervised classification) of remote sensing images.</span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:\'Droid Sans\';\">It provides several tools for the download of free images, the preprocessing, the postprocessing, and the raster calculation.</span></p>\n"
"<p align=\"justify\" style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:\'Droid Sans\';\">For more information and tutorials visit the official site </span><a href=\"https://fromgistors.blogspot.com/p/semi-automatic-classification-plugin.html?spref=scp\"><span style=\" font-family:\'Droid Sans\'; text-decoration: underline; color:#0000ff;\">From GIS to Remote Sensing</span></a><span style=\" font-family:\'Droid Sans\'; font-size:9pt;\">.</span></p>\n"
"<hr />\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:\'Sans\'; font-weight:600;\">How to cite:</span></p>\n"
"<p align=\"justify\" style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:\'Droid Sans\';\">Congedo, Luca, (2021). Semi-Automatic Classification Plugin: A Python tool for the download and processing of remote sensing images in QGIS. Journal of Open Source Software, 6(64), 3172, </span><a href=\"https://doi.org/10.21105/joss.03172\"><span style=\" font-family:\'Sans\'; text-decoration: underline; color:#0000ff;\">https://doi.org/10.21105/joss.03172</span></a></p>\n"
"<hr />\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:\'Droid Sans\'; font-size:8pt;\">The Semi-Automatic Classification Plugin is developed by Luca Congedo.</span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:\'Droid Sans\'; font-size:8pt;\">Translators:</span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:\'Droid Sans\'; font-size:8pt;\">Language: Author name</span></p>\n"
"<hr />\n"
"<p align=\"justify\" style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:\'Droid Sans\'; font-size:8pt;\">Semi-Automatic Classification Plugin is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License.</span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:\'Droid Sans\'; font-size:8pt;\">Semi-Automatic Classification Plugin is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></p>\n"
"<p style=\" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-family:\'Droid Sans\'; font-size:8pt;\">See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with Semi-Automatic Classification Plugin. If not, see &lt;</span><a href=\"http://www.gnu.org/licenses/\"><span style=\" font-family:\'Droid Sans\'; font-size:8pt; text-decoration: underline; color:#0000ff;\">http://www.gnu.org/licenses/</span></a><span style=\" font-family:\'Droid Sans\'; font-size:8pt;\">&gt;.</span></p></body></html>")
        self.textBrowser.setOpenExternalLinks(True)
        self.textBrowser.setObjectName("textBrowser")
        self.gridLayout_9.addWidget(self.textBrowser, 0, 0, 1, 1)
        self.gridLayout_16.addLayout(self.gridLayout_9, 1, 0, 1, 1)
        self.SCP_tabs.addTab(self.tab_About, "")
        self.gridLayout_60.addWidget(self.SCP_tabs, 0, 0, 1, 1)
        self.main_tabWidget.addTab(self.tool_tab, icon, "")
        self.help_tab = QtWidgets.QWidget()
        self.help_tab.setObjectName("help_tab")
        self.gridLayout_263 = QtWidgets.QGridLayout(self.help_tab)
        self.gridLayout_263.setObjectName("gridLayout_263")
        self.help_textBrowser = QtWidgets.QTextBrowser(parent=self.help_tab)
        self.help_textBrowser.setOpenExternalLinks(True)
        self.help_textBrowser.setOpenLinks(False)
        self.help_textBrowser.setObjectName("help_textBrowser")
        self.gridLayout_263.addWidget(self.help_textBrowser, 1, 0, 1, 1)
        icon29 = QtGui.QIcon()
        icon29.addPixmap(QtGui.QPixmap(":/plugins/semiautomaticclassificationplugin/icons/help.svg"), QtGui.QIcon.Mode.Normal, QtGui.QIcon.State.Off)
        self.main_tabWidget.addTab(self.help_tab, icon29, "")
        self.gridLayout_301.addWidget(self.splitter, 0, 0, 1, 1)

        self.retranslateUi(SemiAutomaticClassificationPlugin)
        self.main_tabWidget.setCurrentIndex(0)
        self.SCP_tabs.setCurrentIndex(0)
        self.Band_set_tabWidget.setCurrentIndex(-1)
        self.tabWidget_3.setCurrentIndex(0)
        self.tabWidget_5.setCurrentIndex(0)
        self.toolBox_4.setCurrentIndex(0)
        self.tabWidget_preprocessing.setCurrentIndex(0)
        self.tabWidget_4.setCurrentIndex(5)
        self.toolBox_band_set_combination.setCurrentIndex(0)
        self.toolBox_PCA.setCurrentIndex(0)
        self.toolBox_classification.layout().setSpacing(2)
        self.tabWidget_2.setCurrentIndex(0)
        self.toolBox_accuracy.setCurrentIndex(0)
        self.toolBox_class_report.setCurrentIndex(0)
        self.toolBox_cross_classification.setCurrentIndex(0)
        self.toolBox_raster_zonal_stats.setCurrentIndex(0)
        self.settings_tabWidget.setCurrentIndex(0)
        QtCore.QMetaObject.connectSlotsByName(SemiAutomaticClassificationPlugin)

    def retranslateUi(self, SemiAutomaticClassificationPlugin):
        _translate = QtCore.QCoreApplication.translate
        SemiAutomaticClassificationPlugin.setWindowTitle(_translate("SemiAutomaticClassificationPlugin", "Semi-Automatic Classification Plugin"))
        self.f_filter_lineEdit.setPlaceholderText(_translate("SemiAutomaticClassificationPlugin", "Filter"))
        self.band_set_filter_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Filter"))
        self.band_set_filter_lineEdit.setPlaceholderText(_translate("SemiAutomaticClassificationPlugin", "Filter"))
        item = self.bandset_tableWidget.horizontalHeaderItem(0)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "Band set table"))
        self.move_up_toolButton_4.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Move highlighted band sets up"))
        self.move_up_toolButton_4.setText(_translate("SemiAutomaticClassificationPlugin", "Import library"))
        self.add_band_set_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Add a new band set"))
        self.add_band_set_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.move_down_toolButton_4.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Move highlighted band sets down"))
        self.move_down_toolButton_4.setText(_translate("SemiAutomaticClassificationPlugin", "Import library"))
        self.remove_bandset_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Remove selected band sets"))
        self.remove_bandset_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.sort_by_date.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Sort band sets by date"))
        self.sort_by_date.setText(_translate("SemiAutomaticClassificationPlugin", "Import library"))
        self.rgb_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Display RGB composite in map of selected band sets"))
        self.rgb_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.label_154.setText(_translate("SemiAutomaticClassificationPlugin", " Band quick settings"))
        self.bandset_dateEdit.setDisplayFormat(_translate("SemiAutomaticClassificationPlugin", "yyyy-MM-dd"))
        self.unit_combo.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Wavelength unit"))
        self.label_94.setText(_translate("SemiAutomaticClassificationPlugin", "Wavelength unit"))
        self.label_6.setText(_translate("SemiAutomaticClassificationPlugin", "Date"))
        self.toolButton_custom_wavelength.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Open a csv file of wavelength values"))
        self.wavelength_sat_combo.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select a configuration for setting band center wavelengths"))
        self.label_150.setText(_translate("SemiAutomaticClassificationPlugin", "Wavelength"))
        self.virtual_raster_bandset_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Create a virtual raster of active band set"))
        self.virtual_raster_bandset_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Create virtual raster \n"
"of band set"))
        self.band_calc_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Calculate expression in Band calc"))
        self.band_calc_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Band calc expressions"))
        self.stack_raster_bandset_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Create a .tif raster stacking the bands of the active band set"))
        self.stack_raster_bandset_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Create raster of band set \n"
"(stack bands)"))
        self.overview_raster_bandset_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Build band overviews (external pyramids) of active band set for faster visualization"))
        self.overview_raster_bandset_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Build band overviews"))
        self.label_208.setText(_translate("SemiAutomaticClassificationPlugin", " Band set tools"))
        self.band_set_process_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Run"))
        self.band_set_process_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "  RUN"))
        self.label_59.setText(_translate("SemiAutomaticClassificationPlugin", " Band set definition"))
        self.bandset_number_spinBox.setPrefix(_translate("SemiAutomaticClassificationPlugin", "Active band set "))
        self.label_bandset_date_4.setText(_translate("SemiAutomaticClassificationPlugin", "Date"))
        self.bandset_date_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Band set date"))
        self.label_289.setText(_translate("SemiAutomaticClassificationPlugin", "Root directory"))
        self.root_dir_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Root directory"))
        self.remove_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Delete row"))
        self.remove_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.clear_bandset_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Reset"))
        self.clear_bandset_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "Import library"))
        self.import_bandset_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Import band set from text file"))
        self.import_bandset_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.export_bandset_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Export band set to text file"))
        self.export_bandset_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.sort_by_name_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Sort bands by name (priority to ending number)"))
        self.sort_by_name_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "Import library"))
        self.toolButton_input_raster.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Open a file"))
        self.move_down_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Move highlighted band down"))
        self.move_down_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "Import library"))
        self.add_loaded_bands_pushButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Add bands loaded in QGIS"))
        self.add_loaded_bands_pushButton.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.move_up_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Move highlighted band up"))
        self.move_up_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "Import library"))
        self.SCP_tabs.setTabText(self.SCP_tabs.indexOf(self.tab_band_set), _translate("SemiAutomaticClassificationPlugin", "Band set"))
        self.download_if_preview_in_legend_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Download images from list only if the corresponding previews are loaded in QGIS"))
        self.download_if_preview_in_legend_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Only if preview in Layers"))
        self.load_in_QGIS_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Load images in QGIS after download"))
        self.load_in_QGIS_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Load bands in QGIS"))
        self.preprocess_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Preprocess images"))
        self.preprocess_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Preprocess images"))
        self.export_links_Button.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Export download links to a text file"))
        self.export_links_Button.setText(_translate("SemiAutomaticClassificationPlugin", "Import library"))
        self.download_images_Button.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Run"))
        self.download_images_Button.setText(_translate("SemiAutomaticClassificationPlugin", "  RUN"))
        self.label_258.setText(_translate("SemiAutomaticClassificationPlugin", "Download"))
        self.checkBoxs_band_1.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Landsat / Sentinel"))
        self.checkBoxs_band_1.setText(_translate("SemiAutomaticClassificationPlugin", "1"))
        self.checkBoxs_band_8A.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Sentinel"))
        self.checkBoxs_band_8A.setText(_translate("SemiAutomaticClassificationPlugin", "8A"))
        self.checkBoxs_band_4.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Landsat / Sentinel"))
        self.checkBoxs_band_4.setText(_translate("SemiAutomaticClassificationPlugin", "4"))
        self.checkBoxs_band_11.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Landsat / Sentinel"))
        self.checkBoxs_band_11.setText(_translate("SemiAutomaticClassificationPlugin", "11"))
        self.checkBoxs_band_5.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Landsat / Sentinel"))
        self.checkBoxs_band_5.setText(_translate("SemiAutomaticClassificationPlugin", "5"))
        self.checkBoxs_band_6.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Landsat / Sentinel"))
        self.checkBoxs_band_6.setText(_translate("SemiAutomaticClassificationPlugin", "6"))
        self.checkBoxs_band_7.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Landsat / Sentinel"))
        self.checkBoxs_band_7.setText(_translate("SemiAutomaticClassificationPlugin", "7"))
        self.checkBoxs_band_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Landsat / Sentinel"))
        self.checkBoxs_band_2.setText(_translate("SemiAutomaticClassificationPlugin", "2"))
        self.checkBoxs_band_9.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Landsat / Sentinel"))
        self.checkBoxs_band_9.setText(_translate("SemiAutomaticClassificationPlugin", "9"))
        self.check_toolButton_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select all"))
        self.check_toolButton_2.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.ancillary_data_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Ancillary data"))
        self.checkBoxs_band_3.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Landsat / Sentinel"))
        self.checkBoxs_band_3.setText(_translate("SemiAutomaticClassificationPlugin", "3"))
        self.checkBoxs_band_8.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Landsat / Sentinel"))
        self.checkBoxs_band_8.setText(_translate("SemiAutomaticClassificationPlugin", "8"))
        self.checkBoxs_band_10.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Landsat / Sentinel"))
        self.checkBoxs_band_10.setText(_translate("SemiAutomaticClassificationPlugin", "10"))
        self.checkBoxs_band_12.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Sentinel"))
        self.checkBoxs_band_12.setText(_translate("SemiAutomaticClassificationPlugin", "12"))
        self.label_3.setText(_translate("SemiAutomaticClassificationPlugin", "Bands"))
        self.virtual_download_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, download as virtual file only the portion of the image defined by search coordinates (does not work for all the sources)"))
        self.virtual_download_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Virtual download"))
        self.create_bandset_checkBox_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Create the Band set automatically and use the checked Band set tools"))
        self.create_bandset_checkBox_2.setText(_translate("SemiAutomaticClassificationPlugin", "Create Band set and use Band set tools"))
        self.toolButton_OSM.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Add OpenStreetMap to the map"))
        self.toolButton_OSM.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.label_205.setText(_translate("SemiAutomaticClassificationPlugin", "Add OpenStreetMap to the map"))
        self.label_206.setText(_translate("SemiAutomaticClassificationPlugin", "(© <a href=\"http://www.openstreetmap.org/copyright\"><span style=\" text-decoration: underline; color:#0000ff;\">OpenStreetMap</span></a> contributors. The cartography is licensed as CC BY-SA. <a href=\"https://operations.osmfoundation.org/policies/tiles/\"><span style=\" text-decoration: underline; color:#0000ff;\">Tile Usage Policy</span></a>)"))
        self.label_103.setText(_translate("SemiAutomaticClassificationPlugin", " Search parameters"))
        self.selectUL_toolButton_3.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Set area in the map"))
        self.LX_lineEdit_3.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Lower right X"))
        self.LX_lineEdit_3.setPlaceholderText(_translate("SemiAutomaticClassificationPlugin", "X (Lon)"))
        self.UX_lineEdit_3.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Upper left X"))
        self.UX_lineEdit_3.setPlaceholderText(_translate("SemiAutomaticClassificationPlugin", "X (Lon)"))
        self.label_105.setText(_translate("SemiAutomaticClassificationPlugin", "LR"))
        self.label_107.setText(_translate("SemiAutomaticClassificationPlugin", "UL"))
        self.LY_lineEdit_3.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Lower right Y"))
        self.LY_lineEdit_3.setPlaceholderText(_translate("SemiAutomaticClassificationPlugin", "Y (Lat)"))
        self.UY_lineEdit_3.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Upper left Y"))
        self.UY_lineEdit_3.setPlaceholderText(_translate("SemiAutomaticClassificationPlugin", "Y (Lat)"))
        self.show_area_radioButton_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Show / hide area"))
        self.show_area_radioButton_2.setText(_translate("SemiAutomaticClassificationPlugin", "Show"))
        self.find_images_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Find images"))
        self.label_35.setText(_translate("SemiAutomaticClassificationPlugin", "Find"))
        self.landsat_satellite_combo.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select a product"))
        self.dateEdit_from.setDisplayFormat(_translate("SemiAutomaticClassificationPlugin", "yyyy-MM-dd"))
        self.label_110.setText(_translate("SemiAutomaticClassificationPlugin", "Max cloud cover (%)"))
        self.dateEdit_to.setDisplayFormat(_translate("SemiAutomaticClassificationPlugin", "yyyy-MM-dd"))
        self.label_112.setText(_translate("SemiAutomaticClassificationPlugin", "to"))
        self.label_111.setText(_translate("SemiAutomaticClassificationPlugin", "Date from"))
        self.cloud_cover_spinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Maximum cloud cover percentage"))
        self.label_114.setText(_translate("SemiAutomaticClassificationPlugin", "Products"))
        self.label_194.setText(_translate("SemiAutomaticClassificationPlugin", "Results"))
        self.label_113.setText(_translate("SemiAutomaticClassificationPlugin", "Advanced search"))
        self.imageID_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Filter images"))
        self.result_number_spinBox_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Maximum number of results (images)"))
        self.remove_image_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Delete row"))
        self.remove_image_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.toolButton_display.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Display preview of highlighted images in map"))
        self.toolButton_display.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.clear_table_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Reset"))
        self.clear_table_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "Import library"))
        self.export_table_pushButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Export table to text file"))
        self.export_table_pushButton.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.import_table_pushButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Import table from text file"))
        self.import_table_pushButton.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.image_preview_label.setText(_translate("SemiAutomaticClassificationPlugin", "Preview"))
        self.download_images_tableWidget.setSortingEnabled(True)
        item = self.download_images_tableWidget.horizontalHeaderItem(0)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "product"))
        item = self.download_images_tableWidget.horizontalHeaderItem(1)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "image"))
        item = self.download_images_tableWidget.horizontalHeaderItem(2)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "product_id"))
        item = self.download_images_tableWidget.horizontalHeaderItem(3)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "acquisition_date"))
        item = self.download_images_tableWidget.horizontalHeaderItem(4)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "cloud_cover"))
        item = self.download_images_tableWidget.horizontalHeaderItem(5)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "zone_path"))
        item = self.download_images_tableWidget.horizontalHeaderItem(6)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "row"))
        item = self.download_images_tableWidget.horizontalHeaderItem(7)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "min_lat"))
        item = self.download_images_tableWidget.horizontalHeaderItem(8)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "min_lon"))
        item = self.download_images_tableWidget.horizontalHeaderItem(9)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "max_lat"))
        item = self.download_images_tableWidget.horizontalHeaderItem(10)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "max_lon"))
        item = self.download_images_tableWidget.horizontalHeaderItem(11)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "collection"))
        item = self.download_images_tableWidget.horizontalHeaderItem(12)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "size"))
        item = self.download_images_tableWidget.horizontalHeaderItem(13)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "preview"))
        item = self.download_images_tableWidget.horizontalHeaderItem(14)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "uid"))
        item = self.download_images_tableWidget.horizontalHeaderItem(15)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "ref_url"))
        self.label_100.setText(_translate("SemiAutomaticClassificationPlugin", " Product list"))
        self.products_filter_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Filter"))
        self.products_filter_lineEdit.setPlaceholderText(_translate("SemiAutomaticClassificationPlugin", "Filter"))
        self.tabWidget_3.setTabText(self.tabWidget_3.indexOf(self.tab_search), _translate("SemiAutomaticClassificationPlugin", "Search"))
        self.remember_user_checkBox_3.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, remember user name and password locally in QGIS (WARNING: password is stored unencrypted)"))
        self.remember_user_checkBox_3.setText(_translate("SemiAutomaticClassificationPlugin", "remember"))
        self.password_earthdata_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Password"))
        self.password_scihub_label_4.setText(_translate("SemiAutomaticClassificationPlugin", "Password"))
        self.label_191.setText(_translate("SemiAutomaticClassificationPlugin", "Login Harmonized Landsat Sentinel-2 (<a href=\"https://urs.earthdata.nasa.gov\"><span style=\" text-decoration: underline; color:#ffffff;\">https://urs.earthdata.nasa.gov</span></a>)"))
        self.user_earthdata_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "User name"))
        self.user_scihub_label_3.setText(_translate("SemiAutomaticClassificationPlugin", "User"))
        self.remember_user_checkBox_5.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, remember user name and password locally in QGIS (WARNING: password is stored unencrypted)"))
        self.remember_user_checkBox_5.setText(_translate("SemiAutomaticClassificationPlugin", "remember"))
        self.password_copernicus_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Password"))
        self.password_scihub_label_6.setText(_translate("SemiAutomaticClassificationPlugin", "Password"))
        self.label_201.setText(_translate("SemiAutomaticClassificationPlugin", "Login Copernicus Data Space Ecosystem (<a href=\"https://dataspace.copernicus.eu/\"><span style=\" text-decoration: underline; color:#ffffff;\">https://dataspace.copernicus.eu/</span></a>)"))
        self.user_copernicus_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "User name"))
        self.user_scihub_label_5.setText(_translate("SemiAutomaticClassificationPlugin", "User"))
        self.tabWidget_3.setTabText(self.tabWidget_3.indexOf(self.tab_login), _translate("SemiAutomaticClassificationPlugin", "Login data"))
        self.SCP_tabs.setTabText(self.SCP_tabs.indexOf(self.tab_download_products), _translate("SemiAutomaticClassificationPlugin", "Download products"))
        self.label_126.setText(_translate("SemiAutomaticClassificationPlugin", "RGB composite"))
        self.sort_by_name_toolButton_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Sort RGB automatically"))
        self.sort_by_name_toolButton_2.setText(_translate("SemiAutomaticClassificationPlugin", "Import library"))
        self.move_down_toolButton_3.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Move highlighted RGB down"))
        self.move_down_toolButton_3.setText(_translate("SemiAutomaticClassificationPlugin", "Import library"))
        self.move_up_toolButton_3.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Move highlighted RGB up"))
        self.move_up_toolButton_3.setText(_translate("SemiAutomaticClassificationPlugin", "Import library"))
        self.add_RGB_pushButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Add row"))
        self.add_RGB_pushButton.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.export_RGB_List_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Export RGB list to text file"))
        self.export_RGB_List_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.import_RGB_List_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Import RGB list from text file"))
        self.import_RGB_List_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.clear_RGB_list_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Reset"))
        self.clear_RGB_list_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "Import library"))
        self.remove_RGB_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Delete row"))
        self.remove_RGB_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        item = self.RGB_tableWidget.horizontalHeaderItem(0)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "RGB"))
        self.label_196.setText(_translate("SemiAutomaticClassificationPlugin", "Automatic RGB"))
        self.label_192.setText(_translate("SemiAutomaticClassificationPlugin", "Band combinations"))
        self.all_RGB_list_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Add all combinations of bands"))
        self.all_RGB_list_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "Import library"))
        self.tabWidget_5.setTabText(self.tabWidget_5.indexOf(self.tab_RGB), _translate("SemiAutomaticClassificationPlugin", "RGB composite"))
        self.point_distance_spinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Minimum distance between points"))
        self.point_grid_spinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Size of a grid cell within points are created randomly"))
        self.label_48.setText(_translate("SemiAutomaticClassificationPlugin", " Create random points"))
        self.label_139.setText(_translate("SemiAutomaticClassificationPlugin", "Create points"))
        self.label_19.setText(_translate("SemiAutomaticClassificationPlugin", "Number of points"))
        self.point_number_spinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Number of points created randomly"))
        self.add_random_point_pushButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Create points"))
        self.point_distance_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Create random points with a minimum distance"))
        self.point_distance_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "min distance"))
        self.point_grid_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Create random points inside each cell of a grid with this size"))
        self.point_grid_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "inside grid"))
        self.stratified_point_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Create stratified random points"))
        self.stratified_point_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "stratified for the values"))
        self.stratified_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Enter one or more rules separated by semicolon (e.g. raster > 0; raster == 1 )"))
        self.band_set_comb_spinBox_10.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Band set number"))
        self.label_25.setText(_translate("SemiAutomaticClassificationPlugin", "of first band of band set"))
        self.label_47.setText(_translate("SemiAutomaticClassificationPlugin", " Point coordinates and ROI definition"))
        self.point_tableWidget.setSortingEnabled(False)
        item = self.point_tableWidget.horizontalHeaderItem(0)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "X"))
        item = self.point_tableWidget.horizontalHeaderItem(1)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "Y"))
        item = self.point_tableWidget.horizontalHeaderItem(2)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "MC ID"))
        item = self.point_tableWidget.horizontalHeaderItem(3)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "MC Name"))
        item = self.point_tableWidget.horizontalHeaderItem(4)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "C ID"))
        item = self.point_tableWidget.horizontalHeaderItem(5)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "C Name"))
        item = self.point_tableWidget.horizontalHeaderItem(6)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "Min"))
        item = self.point_tableWidget.horizontalHeaderItem(7)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "Max"))
        item = self.point_tableWidget.horizontalHeaderItem(8)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "Dist"))
        item = self.point_tableWidget.horizontalHeaderItem(9)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "Rapid ROI band"))
        self.add_point_pushButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Add row"))
        self.add_point_pushButton.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.remove_point_pushButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Delete row"))
        self.remove_point_pushButton.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.export_point_list_pushButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Export point list to text file"))
        self.export_point_list_pushButton.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.import_point_list_pushButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Import point list from text file"))
        self.import_point_list_pushButton.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.signature_checkBox2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Add ROI spectral signatures to signature list"))
        self.signature_checkBox2.setText(_translate("SemiAutomaticClassificationPlugin", "Calculate sig."))
        self.label_159.setText(_translate("SemiAutomaticClassificationPlugin", " Run"))
        self.save_point_rois_pushButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Run"))
        self.save_point_rois_pushButton.setText(_translate("SemiAutomaticClassificationPlugin", "  RUN"))
        self.tabWidget_5.setTabText(self.tabWidget_5.indexOf(self.tab_multiple_ROI), _translate("SemiAutomaticClassificationPlugin", "Multiple ROI creation"))
        self.open_shapefile_pushButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Open a file"))
        self.label_120.setText(_translate("SemiAutomaticClassificationPlugin", "Select a vector (*.shp;*.gpkg)"))
        self.C_ID_combo.setToolTip(_translate("SemiAutomaticClassificationPlugin", "C ID field"))
        self.MC_ID_combo.setToolTip(_translate("SemiAutomaticClassificationPlugin", "MC ID field"))
        self.MC_Info_combo.setToolTip(_translate("SemiAutomaticClassificationPlugin", "MC Name field"))
        self.label_99.setText(_translate("SemiAutomaticClassificationPlugin", "C Name field"))
        self.C_Info_combo.setToolTip(_translate("SemiAutomaticClassificationPlugin", "C Name field"))
        self.label_119.setText(_translate("SemiAutomaticClassificationPlugin", " Vector fields"))
        self.MC_ID_combo_2.setText(_translate("SemiAutomaticClassificationPlugin", "C ID field"))
        self.label_121.setText(_translate("SemiAutomaticClassificationPlugin", "MC ID field"))
        self.label_122.setText(_translate("SemiAutomaticClassificationPlugin", "MC Name field"))
        self.label_2.setText(_translate("SemiAutomaticClassificationPlugin", "  Import vector"))
        self.signature_checkBox_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Add ROI spectral signature to signature list"))
        self.signature_checkBox_2.setText(_translate("SemiAutomaticClassificationPlugin", "Calculate sig."))
        self.import_shapefile_pushButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Import vector"))
        self.import_shapefile_pushButton.setText(_translate("SemiAutomaticClassificationPlugin", "Import library"))
        self.toolBox_4.setItemText(self.toolBox_4.indexOf(self.page_9), _translate("SemiAutomaticClassificationPlugin", "Import vector"))
        self.label_9.setText(_translate("SemiAutomaticClassificationPlugin", "Select a file: training file (*.scpx; *.scp) ; USGS library (*.zip) ; ASTER library (*.txt) ; CSV (*.csv)"))
        self.open_library_pushButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Open a file"))
        self.toolBox_4.setItemText(self.toolBox_4.indexOf(self.page_6), _translate("SemiAutomaticClassificationPlugin", "Import library file"))
        self.usgs_chapter_comboBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select a chapter"))
        self.usgs_library_comboBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select a library"))
        self.label_123.setText(_translate("SemiAutomaticClassificationPlugin", "Select a chapter"))
        self.label_124.setText(_translate("SemiAutomaticClassificationPlugin", "Select a library"))
        self.label_130.setText(_translate("SemiAutomaticClassificationPlugin", "Import spectral library"))
        self.add_usgs_library_pushButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Import spectral library"))
        self.label.setText(_translate("SemiAutomaticClassificationPlugin", "USGS Spectral Library Version 7 downloaded from <a href=\"https://crustal.usgs.gov/speclab/QueryAll07a.php\"><span style=\" text-decoration: underline; color:#0000ff;\">https://crustal.usgs.gov/speclab/QueryAll07a.php</span></a>.<br/><span style=\" font-weight:600;\">Reference</span>: Kokaly, R.F., Clark, R.N., Swayze, G.A., Livo, K.E., Hoefen, T.M., Pearson, N.C., Wise, R.A., Benzel, W.M., Lowers, H.A., Driscoll, R.L., and Klein, A.J., 2017, USGS Spectral Library Version 7: U.S. Geological Survey Data Series 1035, 61 p., https://doi.org/10.3133/ds1035."))
        self.label_129.setText(_translate("SemiAutomaticClassificationPlugin", " Library Description (requires internet connection)"))
        self.toolBox_4.setItemText(self.toolBox_4.indexOf(self.page_8), _translate("SemiAutomaticClassificationPlugin", "Download USGS Spectral Library"))
        self.tabWidget_5.setTabText(self.tabWidget_5.indexOf(self.tab_Import), _translate("SemiAutomaticClassificationPlugin", "Import signatures"))
        self.label_97.setText(_translate("SemiAutomaticClassificationPlugin", "Export as training file (*.scpx)"))
        self.export_SCP_pushButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Export highlighted spectral signatures\n"
""))
        self.export_CSV_library_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select a directory where highlighted spectral signatures are saved as .csv"))
        self.export_CSV_library_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "Import library"))
        self.label_96.setText(_translate("SemiAutomaticClassificationPlugin", "Export "))
        self.label_222.setText(_translate("SemiAutomaticClassificationPlugin", "Export geometries as shapefile (*.shp) or geopackage (*.gpkg)"))
        self.label_20.setText(_translate("SemiAutomaticClassificationPlugin", "Export spectral signatures as CSV file (.csv)"))
        self.export_SHP_pushButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Export highlighted spectral signatures\n"
""))
        self.tabWidget_5.setTabText(self.tabWidget_5.indexOf(self.tab_export), _translate("SemiAutomaticClassificationPlugin", "Export signatures"))
        self.reset_threshold_pushButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Reset\n"
""))
        self.signature_threshold_tableWidget.setSortingEnabled(True)
        item = self.signature_threshold_tableWidget.horizontalHeaderItem(0)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "MC ID"))
        item = self.signature_threshold_tableWidget.horizontalHeaderItem(1)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "MC Name"))
        item = self.signature_threshold_tableWidget.horizontalHeaderItem(2)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "C ID"))
        item = self.signature_threshold_tableWidget.horizontalHeaderItem(3)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "C Name"))
        item = self.signature_threshold_tableWidget.horizontalHeaderItem(4)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "Minimum Distance"))
        item = self.signature_threshold_tableWidget.horizontalHeaderItem(5)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "Maximum Likelihood"))
        item = self.signature_threshold_tableWidget.horizontalHeaderItem(6)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "Spectral Angle Mapping"))
        self.label_80.setText(_translate("SemiAutomaticClassificationPlugin", " Signature threshold"))
        self.label_85.setText(_translate("SemiAutomaticClassificationPlugin", "Set threshold = σ *"))
        self.multiplicative_threshold_doubleSpinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Set a value that will be multiplied by standard deviation"))
        self.automatic_threshold_pushButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Set automatic threshold σ"))
        self.label_132.setText(_translate("SemiAutomaticClassificationPlugin", "Set threshold"))
        self.threshold_doubleSpinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Set a value"))
        self.set_threshold_value_pushButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Set\n"
""))
        self.label_88.setText(_translate("SemiAutomaticClassificationPlugin", " Automatic  thresholds"))
        self.tabWidget_5.setTabText(self.tabWidget_5.indexOf(self.tab_threshold), _translate("SemiAutomaticClassificationPlugin", "Signature threshold"))
        self.SCP_tabs.setTabText(self.SCP_tabs.indexOf(self.tab_basic_tools), _translate("SemiAutomaticClassificationPlugin", "Basic tools"))
        self.label_36.setText(_translate("SemiAutomaticClassificationPlugin", "Directory containing bands"))
        self.label_37.setText(_translate("SemiAutomaticClassificationPlugin", "Conversion to reflectance and temperature"))
        self.label_41.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select MTL file (if not in Landsat directory)"))
        self.label_41.setText(_translate("SemiAutomaticClassificationPlugin", "Select metadata file (optional)"))
        self.toolButton_directoryInput.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select a directory"))
        self.toolButton_directoryInput.setText(_translate("SemiAutomaticClassificationPlugin", "Import library"))
        self.create_bandset_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Create the Band set automatically and use the checked Band set tools"))
        self.create_bandset_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Create Band set and use Band set tools"))
        self.DOS1_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Enable/Disable the DOS1 atmospheric correction (thermal band is not corrected)"))
        self.DOS1_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", " Apply DOS1 atmospheric correction"))
        self.add_new_bandset_radioButton_1.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Create a new band set where bands are added"))
        self.add_new_bandset_radioButton_1.setText(_translate("SemiAutomaticClassificationPlugin", "Create a new Band set"))
        self.toolButton_directoryInput_MTL.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Open a file"))
        self.nodata_spinBox_3.setToolTip(_translate("SemiAutomaticClassificationPlugin", "No data value"))
        self.nodata_checkBox_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, pixels equal to NoData value will be excluded from the output raster"))
        self.nodata_checkBox_2.setText(_translate("SemiAutomaticClassificationPlugin", "Use value as NoData"))
        self.bands_tableWidget.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Edit metadata"))
        item = self.bands_tableWidget.horizontalHeaderItem(0)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "product"))
        item = self.bands_tableWidget.horizontalHeaderItem(1)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "spacecraft"))
        item = self.bands_tableWidget.horizontalHeaderItem(2)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "processing_level"))
        item = self.bands_tableWidget.horizontalHeaderItem(3)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "band_name"))
        item = self.bands_tableWidget.horizontalHeaderItem(4)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "product_path"))
        item = self.bands_tableWidget.horizontalHeaderItem(5)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "scale"))
        item = self.bands_tableWidget.horizontalHeaderItem(6)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "offset"))
        item = self.bands_tableWidget.horizontalHeaderItem(7)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "nodata"))
        item = self.bands_tableWidget.horizontalHeaderItem(8)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "date"))
        item = self.bands_tableWidget.horizontalHeaderItem(9)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "k1"))
        item = self.bands_tableWidget.horizontalHeaderItem(10)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "k2"))
        item = self.bands_tableWidget.horizontalHeaderItem(11)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "band_number"))
        item = self.bands_tableWidget.horizontalHeaderItem(12)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "e_sun"))
        item = self.bands_tableWidget.horizontalHeaderItem(13)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "sun_elevation"))
        item = self.bands_tableWidget.horizontalHeaderItem(14)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "earth_sun_distance"))
        self.pushButton_remove_band.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Delete row"))
        self.pushButton_remove_band.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.label_74.setText(_translate("SemiAutomaticClassificationPlugin", "Metadata"))
        self.label_161.setText(_translate("SemiAutomaticClassificationPlugin", " Run"))
        self.pushButton_Conversion.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Run"))
        self.pushButton_Conversion.setText(_translate("SemiAutomaticClassificationPlugin", "  RUN"))
        self.landsat_conversion.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Function to Script"))
        self.landsat_conversion.setText(_translate("SemiAutomaticClassificationPlugin", " Script"))
        self.tabWidget_preprocessing.setTabText(self.tabWidget_preprocessing.indexOf(self.tab_Landsat), _translate("SemiAutomaticClassificationPlugin", "Image conversion"))
        self.label_142.setText(_translate("SemiAutomaticClassificationPlugin", " Convert vector to raster"))
        self.label_64.setText(_translate("SemiAutomaticClassificationPlugin", "Select the vector"))
        self.vector_name_combo.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select the vector"))
        self.toolButton_reload_16.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Refresh list"))
        self.toolButton_reload_16.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.label_157.setText(_translate("SemiAutomaticClassificationPlugin", "Select the type of conversion"))
        self.conversion_type_combo.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select the type of conversion"))
        self.conversion_type_combo.setItemText(0, _translate("SemiAutomaticClassificationPlugin", "pixel_center"))
        self.conversion_type_combo.setItemText(1, _translate("SemiAutomaticClassificationPlugin", "all_touched"))
        self.conversion_type_combo.setItemText(2, _translate("SemiAutomaticClassificationPlugin", "area_based"))
        self.label_158.setText(_translate("SemiAutomaticClassificationPlugin", "Area precision"))
        self.area_precision_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Area precision for &quot;area_based&quot; method"))
        self.area_precision_lineEdit.setText(_translate("SemiAutomaticClassificationPlugin", "20"))
        self.nodata_checkBox_10.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, pixels equal to NoData value will be excluded from the output raster"))
        self.nodata_checkBox_10.setText(_translate("SemiAutomaticClassificationPlugin", "Use value as NoData"))
        self.nodata_spinBox_12.setToolTip(_translate("SemiAutomaticClassificationPlugin", "NoData value"))
        self.constant_value_radioButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Use constant value"))
        self.constant_value_radioButton.setText(_translate("SemiAutomaticClassificationPlugin", "Use constant value"))
        self.constant_value_spinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Value"))
        self.field_radioButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Use the value field of the vector"))
        self.field_radioButton.setText(_translate("SemiAutomaticClassificationPlugin", "Use the value field of the vector"))
        self.field_comboBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select the value field"))
        self.label_156.setText(_translate("SemiAutomaticClassificationPlugin", "Select the reference raster"))
        self.extent_checkBox_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, align to reference raster"))
        self.extent_checkBox_2.setText(_translate("SemiAutomaticClassificationPlugin", "Minimum extent"))
        self.toolButton_reload_17.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Refresh list"))
        self.toolButton_reload_17.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.label_169.setText(_translate("SemiAutomaticClassificationPlugin", "Pixel size"))
        self.pixel_size_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Output pixel size"))
        self.reference_raster_name_combo.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select the reference raster"))
        self.label_167.setText(_translate("SemiAutomaticClassificationPlugin", " Run"))
        self.convert_vector_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Run"))
        self.convert_vector_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "  RUN"))
        self.vector_to_raster.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Function to Script"))
        self.vector_to_raster.setText(_translate("SemiAutomaticClassificationPlugin", " Script"))
        self.tabWidget_preprocessing.setTabText(self.tabWidget_preprocessing.indexOf(self.tab_spectral_distance), _translate("SemiAutomaticClassificationPlugin", "Vector to raster"))
        self.label_128.setText(_translate("SemiAutomaticClassificationPlugin", " Clip band set"))
        self.output_clip_name_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Output name prefix"))
        self.output_clip_name_lineEdit.setText(_translate("SemiAutomaticClassificationPlugin", "clip"))
        self.clip_virtual_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, output bands are virtual rasters"))
        self.clip_virtual_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Create virtual raster output"))
        self.label_62.setText(_translate("SemiAutomaticClassificationPlugin", "Output name prefix"))
        self.band_set_comb_spinBox_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Band set number"))
        self.label_251.setText(_translate("SemiAutomaticClassificationPlugin", "Select input band set"))
        self.show_area_radioButton_3.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Show / hide area"))
        self.show_area_radioButton_3.setText(_translate("SemiAutomaticClassificationPlugin", "Show"))
        self.LY_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Lower right Y"))
        self.LY_lineEdit.setPlaceholderText(_translate("SemiAutomaticClassificationPlugin", "Y"))
        self.label_11.setText(_translate("SemiAutomaticClassificationPlugin", "UL"))
        self.LX_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Lower right X"))
        self.LX_lineEdit.setPlaceholderText(_translate("SemiAutomaticClassificationPlugin", "X"))
        self.selectUL_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Set area in the map"))
        self.label_12.setText(_translate("SemiAutomaticClassificationPlugin", "LR"))
        self.UY_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Upper left Y"))
        self.UY_lineEdit.setPlaceholderText(_translate("SemiAutomaticClassificationPlugin", "Y"))
        self.UX_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Upper left X"))
        self.UX_lineEdit.setPlaceholderText(_translate("SemiAutomaticClassificationPlugin", "X"))
        self.coordinates_radioButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Use coordinates for clipping rasters"))
        self.coordinates_radioButton.setText(_translate("SemiAutomaticClassificationPlugin", "Use coordinates for clipping"))
        self.label_29.setText(_translate("SemiAutomaticClassificationPlugin", " Clip coordinates"))
        self.shapefile_comboBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select the vector for clipping"))
        self.toolButton_reload_8.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Refresh list"))
        self.toolButton_reload_8.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.vector_field_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, clip iterating through each vector polygon and add field value to the output name"))
        self.vector_field_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Use vector field for output name"))
        self.class_field_comboBox_3.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select the vector field"))
        self.temporary_ROI_radioButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Use temporary ROI boundaries for clipping rasters"))
        self.temporary_ROI_radioButton.setText(_translate("SemiAutomaticClassificationPlugin", "Use temporary ROI for clipping"))
        self.vector_radioButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Use vector boundaries for clipping rasters"))
        self.vector_radioButton.setText(_translate("SemiAutomaticClassificationPlugin", "Use vector for clipping"))
        self.label_164.setText(_translate("SemiAutomaticClassificationPlugin", " Run"))
        self.clip_Button.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Run"))
        self.clip_Button.setText(_translate("SemiAutomaticClassificationPlugin", "  RUN"))
        self.clip_multiple_rasters.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Function to Script"))
        self.clip_multiple_rasters.setText(_translate("SemiAutomaticClassificationPlugin", " Script"))
        self.tabWidget_preprocessing.setTabText(self.tabWidget_preprocessing.indexOf(self.tab_clip), _translate("SemiAutomaticClassificationPlugin", "Clip raster bands"))
        self.band_set_comb_spinBox_14.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Band set number"))
        self.label_264.setText(_translate("SemiAutomaticClassificationPlugin", "Select input band set"))
        self.label_249.setText(_translate("SemiAutomaticClassificationPlugin", " Reproject and resample band set"))
        self.align_radioButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Align to raster"))
        self.align_radioButton.setText(_translate("SemiAutomaticClassificationPlugin", "Align to raster"))
        self.toolButton_reload_25.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Refresh list"))
        self.toolButton_reload_25.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.same_extent_raster_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Keep the same extent as the reference raster"))
        self.same_extent_raster_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "same extent as reference"))
        self.raster_align_comboBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select the reference raster"))
        self.epsg_radioButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Use EPSG code"))
        self.epsg_radioButton.setText(_translate("SemiAutomaticClassificationPlugin", "Use EPSG code"))
        self.y_resolution_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Y resolution"))
        self.label_267.setText(_translate("SemiAutomaticClassificationPlugin", "Y resolution"))
        self.label_266.setText(_translate("SemiAutomaticClassificationPlugin", "X resolution"))
        self.epsg_code_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "EPSG value"))
        self.x_resolution_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "X resolution"))
        self.resample_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, new pixel size is original pixel size times this factor"))
        self.resample_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Resample pixel factor"))
        self.resample_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Resample factor"))
        self.label_269.setText(_translate("SemiAutomaticClassificationPlugin", "Resampling method"))
        self.resampling_method_comboBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select the resampling method"))
        self.resampling_method_comboBox.setItemText(0, _translate("SemiAutomaticClassificationPlugin", "nearest_neighbour"))
        self.resampling_method_comboBox.setItemText(1, _translate("SemiAutomaticClassificationPlugin", "average"))
        self.resampling_method_comboBox.setItemText(2, _translate("SemiAutomaticClassificationPlugin", "sum"))
        self.resampling_method_comboBox.setItemText(3, _translate("SemiAutomaticClassificationPlugin", "maximum"))
        self.resampling_method_comboBox.setItemText(4, _translate("SemiAutomaticClassificationPlugin", "minimum"))
        self.resampling_method_comboBox.setItemText(5, _translate("SemiAutomaticClassificationPlugin", "mode"))
        self.resampling_method_comboBox.setItemText(6, _translate("SemiAutomaticClassificationPlugin", "median"))
        self.resampling_method_comboBox.setItemText(7, _translate("SemiAutomaticClassificationPlugin", "first_quartile"))
        self.resampling_method_comboBox.setItemText(8, _translate("SemiAutomaticClassificationPlugin", "third_quartile"))
        self.label_270.setText(_translate("SemiAutomaticClassificationPlugin", "Output type"))
        self.raster_type_combo_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select a type"))
        self.raster_type_combo_2.setItemText(0, _translate("SemiAutomaticClassificationPlugin", "Auto"))
        self.raster_type_combo_2.setItemText(1, _translate("SemiAutomaticClassificationPlugin", "Float32"))
        self.raster_type_combo_2.setItemText(2, _translate("SemiAutomaticClassificationPlugin", "Int32"))
        self.raster_type_combo_2.setItemText(3, _translate("SemiAutomaticClassificationPlugin", "UInt32"))
        self.raster_type_combo_2.setItemText(4, _translate("SemiAutomaticClassificationPlugin", "Int16"))
        self.raster_type_combo_2.setItemText(5, _translate("SemiAutomaticClassificationPlugin", "UInt16"))
        self.raster_type_combo_2.setItemText(6, _translate("SemiAutomaticClassificationPlugin", "Byte"))
        self.change_nodata_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, change output NoData value"))
        self.change_nodata_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Change output NoData value"))
        self.nodata_spinBox_14.setToolTip(_translate("SemiAutomaticClassificationPlugin", "NoData value of the output raster"))
        self.label_265.setText(_translate("SemiAutomaticClassificationPlugin", "Output name prefix"))
        self.reproj_output_name_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Output name prefix"))
        self.reproj_output_name_lineEdit.setText(_translate("SemiAutomaticClassificationPlugin", "reproj"))
        self.virtual_output_checkBox_4.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, use virtual output to merge multiprocess parts"))
        self.virtual_output_checkBox_4.setText(_translate("SemiAutomaticClassificationPlugin", "Virtual output"))
        self.compress_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, compress raster output"))
        self.compress_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Compress"))
        self.resample_lineEdit_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Compression method"))
        self.label_263.setText(_translate("SemiAutomaticClassificationPlugin", " Run"))
        self.reproject_raster_bands.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Function to Script"))
        self.reproject_raster_bands.setText(_translate("SemiAutomaticClassificationPlugin", " Script"))
        self.reproject_Button.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Run"))
        self.reproject_Button.setText(_translate("SemiAutomaticClassificationPlugin", "  RUN"))
        self.tabWidget_preprocessing.setTabText(self.tabWidget_preprocessing.indexOf(self.tab_reproject_bands), _translate("SemiAutomaticClassificationPlugin", "Reproject raster bands"))
        self.raster_name_combo.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select the image to be split"))
        self.label_57.setText(_translate("SemiAutomaticClassificationPlugin", " Split raster bands"))
        self.label_50.setText(_translate("SemiAutomaticClassificationPlugin", "Select a multiband raster"))
        self.toolButton_reload_9.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Refresh list"))
        self.toolButton_reload_9.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.label_165.setText(_translate("SemiAutomaticClassificationPlugin", " Run"))
        self.label_61.setText(_translate("SemiAutomaticClassificationPlugin", "Output name prefix"))
        self.output_name_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Output name prefix"))
        self.output_name_lineEdit.setText(_translate("SemiAutomaticClassificationPlugin", "split"))
        self.split_raster_bands.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Function to Script"))
        self.split_raster_bands.setText(_translate("SemiAutomaticClassificationPlugin", " Script"))
        self.split_Button.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Run"))
        self.split_Button.setText(_translate("SemiAutomaticClassificationPlugin", "  RUN"))
        self.tabWidget_preprocessing.setTabText(self.tabWidget_preprocessing.indexOf(self.tab_split_raster), _translate("SemiAutomaticClassificationPlugin", "Split raster bands"))
        self.label_252.setText(_translate("SemiAutomaticClassificationPlugin", "Select input band set"))
        self.band_set_comb_spinBox_3.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Band set number"))
        self.stack_raster_bands.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Function to Script"))
        self.stack_raster_bands.setText(_translate("SemiAutomaticClassificationPlugin", " Script"))
        self.stack_Button.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Run"))
        self.stack_Button.setText(_translate("SemiAutomaticClassificationPlugin", "  RUN"))
        self.label_223.setText(_translate("SemiAutomaticClassificationPlugin", " Stack band set"))
        self.label_226.setText(_translate("SemiAutomaticClassificationPlugin", " Run"))
        self.tabWidget_preprocessing.setTabText(self.tabWidget_preprocessing.indexOf(self.tab_stack_bands), _translate("SemiAutomaticClassificationPlugin", "Stack raster bands"))
        self.label_134.setText(_translate("SemiAutomaticClassificationPlugin", " Mosaic of band sets"))
        self.nodata_checkBox_9.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, pixels equal to NoData value will be excluded from the output raster"))
        self.nodata_checkBox_9.setText(_translate("SemiAutomaticClassificationPlugin", "Use value as NoData"))
        self.mosaic_virtual_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, output bands are virtual rasters"))
        self.mosaic_virtual_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Create virtual raster output"))
        self.mosaic_output_prefix.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Output prefix"))
        self.mosaic_output_prefix.setText(_translate("SemiAutomaticClassificationPlugin", "mosaic_"))
        self.nodata_spinBox_10.setToolTip(_translate("SemiAutomaticClassificationPlugin", "NoData value"))
        self.mosaic_output_name_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Output name"))
        self.mosaic_output_name_lineEdit.setText(_translate("SemiAutomaticClassificationPlugin", "band_"))
        self.label_135.setText(_translate("SemiAutomaticClassificationPlugin", "Output name"))
        self.label_137.setText(_translate("SemiAutomaticClassificationPlugin", "Output prefix"))
        self.mosaic_band_sets_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "List of band set numbers separated by comma ,<br/>Use# for selecting all the band sets"))
        self.label_144.setText(_translate("SemiAutomaticClassificationPlugin", "Band set list"))
        self.mosaic_bandsets_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Run"))
        self.mosaic_bandsets_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "  RUN"))
        self.mosaic_bandsets.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Function to Script"))
        self.mosaic_bandsets.setText(_translate("SemiAutomaticClassificationPlugin", " Script"))
        self.label_182.setText(_translate("SemiAutomaticClassificationPlugin", " Run"))
        self.tabWidget_preprocessing.setTabText(self.tabWidget_preprocessing.indexOf(self.tab_mosaic_band_sets), _translate("SemiAutomaticClassificationPlugin", "Mosaic band sets"))
        self.label_138.setText(_translate("SemiAutomaticClassificationPlugin", " Mask of band set"))
        self.label_260.setText(_translate("SemiAutomaticClassificationPlugin", "Select input band set"))
        self.band_set_comb_spinBox_9.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Band set number"))
        self.classification_name_combo_4.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select the classification"))
        self.cloud_mask_classes_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Enter class values separated by , or -"))
        self.label_203.setText(_translate("SemiAutomaticClassificationPlugin", "Mask class values"))
        self.label_186.setText(_translate("SemiAutomaticClassificationPlugin", "Select the classification"))
        self.toolButton_reload_23.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Refresh list"))
        self.toolButton_reload_23.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.mask_output_name_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Output name prefix"))
        self.mask_output_name_lineEdit.setText(_translate("SemiAutomaticClassificationPlugin", "mask_"))
        self.cloud_buffer_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, create a buffer for class values"))
        self.cloud_buffer_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Use buffer of pixel size"))
        self.nodata_spinBox_11.setToolTip(_translate("SemiAutomaticClassificationPlugin", "NoData value"))
        self.label_141.setText(_translate("SemiAutomaticClassificationPlugin", "Output NoData value"))
        self.cloud_buffer_spinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Size in pixels"))
        self.label_140.setText(_translate("SemiAutomaticClassificationPlugin", "Output name prefix"))
        self.mask_virtual_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, output bands are virtual rasters"))
        self.mask_virtual_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Create virtual raster output"))
        self.cloud_mask_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Run"))
        self.cloud_mask_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "  RUN"))
        self.cloud_masking.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Function to Script"))
        self.cloud_masking.setText(_translate("SemiAutomaticClassificationPlugin", " Script"))
        self.label_185.setText(_translate("SemiAutomaticClassificationPlugin", " Run"))
        self.tabWidget_preprocessing.setTabText(self.tabWidget_preprocessing.indexOf(self.tab_cloud_mask), _translate("SemiAutomaticClassificationPlugin", "Masking bands"))
        self.SCP_tabs.setTabText(self.SCP_tabs.indexOf(self.tab_preprocessing), _translate("SemiAutomaticClassificationPlugin", "Preprocessing"))
        self.band_combination.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Function to Script"))
        self.band_combination.setText(_translate("SemiAutomaticClassificationPlugin", " Script"))
        self.calculateBandSetComb_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Run"))
        self.calculateBandSetComb_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "  RUN"))
        self.label_253.setText(_translate("SemiAutomaticClassificationPlugin", " Run"))
        self.label_72.setText(_translate("SemiAutomaticClassificationPlugin", " Combination of band values"))
        self.band_set_comb_spinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Band set number"))
        self.label_250.setText(_translate("SemiAutomaticClassificationPlugin", "Select input band set (of classifications)"))
        self.nodata_checkBox_12.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, pixels equal to NoData value will be excluded from the output raster"))
        self.nodata_checkBox_12.setText(_translate("SemiAutomaticClassificationPlugin", "Use value as NoData"))
        self.nodata_spinBox_16.setToolTip(_translate("SemiAutomaticClassificationPlugin", "NoData value"))
        self.no_raster_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, no output raster is written to file"))
        self.no_raster_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "No raster output"))
        self.toolBox_band_set_combination.setItemText(self.toolBox_band_set_combination.indexOf(self.page_29), _translate("SemiAutomaticClassificationPlugin", "Input"))
        self.toolBox_band_set_combination.setItemText(self.toolBox_band_set_combination.indexOf(self.page_30), _translate("SemiAutomaticClassificationPlugin", "Output"))
        self.tabWidget_4.setTabText(self.tabWidget_4.indexOf(self.tab_bandset_combination_2), _translate("SemiAutomaticClassificationPlugin", "Combination"))
        self.label_292.setText(_translate("SemiAutomaticClassificationPlugin", " Run"))
        self.label_294.setText(_translate("SemiAutomaticClassificationPlugin", "Select input band set (of classifications)"))
        self.band_set_comb_spinBox_16.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Band set number"))
        self.label_295.setText(_translate("SemiAutomaticClassificationPlugin", "Output name"))
        self.output_name_lineEdit_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Enter output name"))
        self.output_name_lineEdit_2.setText(_translate("SemiAutomaticClassificationPlugin", "dilation_"))
        self.virtual_output_checkBox_1.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, use virtual output to merge multiprocess parts"))
        self.virtual_output_checkBox_1.setText(_translate("SemiAutomaticClassificationPlugin", "Virtual output"))
        self.label_291.setText(_translate("SemiAutomaticClassificationPlugin", "Class values"))
        self.dilation_classes_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Enter class values separated by , or -"))
        self.band_dilation_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Run"))
        self.band_dilation_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "  RUN"))
        self.label_290.setText(_translate("SemiAutomaticClassificationPlugin", "Size in pixels"))
        self.dilation_threshold_spinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Size in pixels"))
        self.circular_structure_checkBox_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, neighbor pixels are calculated inside a circle of radius equal to the distance in pixels"))
        self.circular_structure_checkBox_2.setText(_translate("SemiAutomaticClassificationPlugin", "Circular"))
        self.band_dilation.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Function to Script"))
        self.band_dilation.setText(_translate("SemiAutomaticClassificationPlugin", " Script"))
        self.label_293.setText(_translate("SemiAutomaticClassificationPlugin", " Band dilation"))
        self.tabWidget_4.setTabText(self.tabWidget_4.indexOf(self.band_dilation_tab), _translate("SemiAutomaticClassificationPlugin", "Dilation"))
        self.label_202.setText(_translate("SemiAutomaticClassificationPlugin", " Band erosion"))
        self.classification_erosion.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Function to Script"))
        self.classification_erosion.setText(_translate("SemiAutomaticClassificationPlugin", " Script"))
        self.label_151.setText(_translate("SemiAutomaticClassificationPlugin", "Class values"))
        self.erosion_classes_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Enter class values separated by , or -"))
        self.label_296.setText(_translate("SemiAutomaticClassificationPlugin", "Select input band set (of classifications)"))
        self.band_set_comb_spinBox_17.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Band set number"))
        self.class_erosion_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Run"))
        self.class_erosion_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "  RUN"))
        self.label_175.setText(_translate("SemiAutomaticClassificationPlugin", " Run"))
        self.label_149.setText(_translate("SemiAutomaticClassificationPlugin", "Size in pixels"))
        self.erosion_threshold_spinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Size in pixels"))
        self.circular_structure_checkBox_3.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, neighbor pixels are calculated inside a circle of radius equal to the distance in pixels"))
        self.circular_structure_checkBox_3.setText(_translate("SemiAutomaticClassificationPlugin", "Circular"))
        self.label_297.setText(_translate("SemiAutomaticClassificationPlugin", "Output name"))
        self.output_name_lineEdit_3.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Enter output name"))
        self.output_name_lineEdit_3.setText(_translate("SemiAutomaticClassificationPlugin", "erosion_"))
        self.virtual_output_checkBox_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, use virtual output to merge multiprocess parts"))
        self.virtual_output_checkBox_2.setText(_translate("SemiAutomaticClassificationPlugin", "Virtual output"))
        self.tabWidget_4.setTabText(self.tabWidget_4.indexOf(self.band_erosion_tab), _translate("SemiAutomaticClassificationPlugin", "Erosion"))
        self.label_195.setText(_translate("SemiAutomaticClassificationPlugin", " Band sieve"))
        self.label_298.setText(_translate("SemiAutomaticClassificationPlugin", "Select input band set (of classifications)"))
        self.band_set_comb_spinBox_18.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Band set number"))
        self.label_174.setText(_translate("SemiAutomaticClassificationPlugin", " Run"))
        self.sieve_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Run"))
        self.sieve_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "  RUN"))
        self.classification_sieve.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Function to Script"))
        self.classification_sieve.setText(_translate("SemiAutomaticClassificationPlugin", " Script"))
        self.label_133.setText(_translate("SemiAutomaticClassificationPlugin", "Size threshold"))
        self.sieve_threshold_spinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Size threshold in pixels"))
        self.label_136.setText(_translate("SemiAutomaticClassificationPlugin", "Pixel connection"))
        self.sieve_connection_combo.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Pixel connection"))
        self.sieve_connection_combo.setItemText(0, _translate("SemiAutomaticClassificationPlugin", "4"))
        self.sieve_connection_combo.setItemText(1, _translate("SemiAutomaticClassificationPlugin", "8"))
        self.label_299.setText(_translate("SemiAutomaticClassificationPlugin", "Output name"))
        self.output_name_lineEdit_4.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Enter output name"))
        self.output_name_lineEdit_4.setText(_translate("SemiAutomaticClassificationPlugin", "sieve_"))
        self.virtual_output_checkBox_3.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, use virtual output to merge multiprocess parts"))
        self.virtual_output_checkBox_3.setText(_translate("SemiAutomaticClassificationPlugin", "Virtual output"))
        self.tabWidget_4.setTabText(self.tabWidget_4.indexOf(self.band_sieve_tab), _translate("SemiAutomaticClassificationPlugin", "Sieve"))
        self.label_58.setText(_translate("SemiAutomaticClassificationPlugin", " Principal Components Analysis of band set"))
        self.band_set_comb_spinBox_4.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Band set number"))
        self.pca_Button.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Run"))
        self.pca_Button.setText(_translate("SemiAutomaticClassificationPlugin", "  RUN"))
        self.nodata_spinBox_5.setToolTip(_translate("SemiAutomaticClassificationPlugin", "NoData value"))
        self.nodata_checkBox_4.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, pixels equal to NoData value will be excluded from the output raster"))
        self.nodata_checkBox_4.setText(_translate("SemiAutomaticClassificationPlugin", "Use value as NoData"))
        self.pca_components_spinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Number of components"))
        self.num_comp_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, calculate this number of components only"))
        self.num_comp_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Number of components"))
        self.label_254.setText(_translate("SemiAutomaticClassificationPlugin", "Select input band set"))
        self.label_166.setText(_translate("SemiAutomaticClassificationPlugin", " Run"))
        self.pca.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Function to Script"))
        self.pca.setText(_translate("SemiAutomaticClassificationPlugin", " Script"))
        self.toolBox_PCA.setItemText(self.toolBox_PCA.indexOf(self.page_16), _translate("SemiAutomaticClassificationPlugin", "Input"))
        self.toolBox_PCA.setItemText(self.toolBox_PCA.indexOf(self.page_17), _translate("SemiAutomaticClassificationPlugin", "Output"))
        self.tabWidget_4.setTabText(self.tabWidget_4.indexOf(self.PCA_tab), _translate("SemiAutomaticClassificationPlugin", "PCA"))
        self.label_261.setText(_translate("SemiAutomaticClassificationPlugin", "Select input band set"))
        self.label_243.setText(_translate("SemiAutomaticClassificationPlugin", " Input"))
        self.band_set_comb_spinBox_12.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Band set number"))
        self.linear_scaling_radioButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Linear scaling normalization"))
        self.linear_scaling_radioButton.setText(_translate("SemiAutomaticClassificationPlugin", "Linear scaling"))
        self.z_score_radioButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Z-score normalization"))
        self.z_score_radioButton.setText(_translate("SemiAutomaticClassificationPlugin", "Z-score"))
        self.input_normalization_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, use input normalization"))
        self.input_normalization_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Use input normalization"))
        self.label_32.setText(_translate("SemiAutomaticClassificationPlugin", "Use training"))
        self.macroclass_radioButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Use the ID of macroclasses for the classification"))
        self.macroclass_radioButton.setText(_translate("SemiAutomaticClassificationPlugin", "Macroclass ID"))
        self.class_radioButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Use the ID of classes for the classification"))
        self.class_radioButton.setText(_translate("SemiAutomaticClassificationPlugin", "Class ID"))
        self.classification.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Function to Script"))
        self.classification.setText(_translate("SemiAutomaticClassificationPlugin", " Script"))
        self.label_239.setText(_translate("SemiAutomaticClassificationPlugin", " Run"))
        self.save_classifier_button.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Save classifier to file"))
        self.save_classifier_button.setText(_translate("SemiAutomaticClassificationPlugin", " Save classifier"))
        self.load_classifier_Button.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select a previously saved classifier"))
        self.load_classifier_Button.setText(_translate("SemiAutomaticClassificationPlugin", "Import library"))
        self.button_classification.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Run"))
        self.button_classification.setText(_translate("SemiAutomaticClassificationPlugin", "  RUN"))
        self.label_255.setText(_translate("SemiAutomaticClassificationPlugin", "Load classifier"))
        self.label_240.setText(_translate("SemiAutomaticClassificationPlugin", " Algorithm"))
        self.confidence_raster_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, calculate classification confidence raster"))
        self.confidence_raster_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Calculate classification confidence raster"))
        self.label_235.setText(_translate("SemiAutomaticClassificationPlugin", "Use"))
        self.signature_raster_checkBox_3.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, save a raster for each signature distance"))
        self.signature_raster_checkBox_3.setText(_translate("SemiAutomaticClassificationPlugin", "Save signature raster"))
        self.single_threshold_checkBox_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, use signature thresholds"))
        self.single_threshold_checkBox_2.setText(_translate("SemiAutomaticClassificationPlugin", "Signature threshold"))
        self.signature_threshold_button_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Open tab Signature threshold"))
        self.signature_threshold_button_2.setText(_translate("SemiAutomaticClassificationPlugin", "W"))
        self.alg_threshold_SpinBox_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Set a classification threshold for all signatures"))
        self.single_threshold_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, use single threshold for all the spectral signatures"))
        self.single_threshold_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Single threshold"))
        self.toolBox_classification.setItemText(self.toolBox_classification.indexOf(self.page_max_like), _translate("SemiAutomaticClassificationPlugin", "Maximum Likelihood"))
        self.signature_raster_checkBox_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, save a raster for each signature distance"))
        self.signature_raster_checkBox_2.setText(_translate("SemiAutomaticClassificationPlugin", "Save signature raster"))
        self.label_237.setText(_translate("SemiAutomaticClassificationPlugin", "Use"))
        self.single_threshold_checkBox_4.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, use single threshold for all the spectral signatures"))
        self.single_threshold_checkBox_4.setText(_translate("SemiAutomaticClassificationPlugin", "Single threshold"))
        self.alg_threshold_SpinBox_4.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Set a classification threshold for all signatures"))
        self.single_threshold_checkBox_3.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, use signature thresholds"))
        self.single_threshold_checkBox_3.setText(_translate("SemiAutomaticClassificationPlugin", "Signature threshold"))
        self.signature_threshold_button_4.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Open tab Signature threshold"))
        self.signature_threshold_button_4.setText(_translate("SemiAutomaticClassificationPlugin", "W"))
        self.confidence_raster_checkBox_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, calculate classification confidence raster"))
        self.confidence_raster_checkBox_2.setText(_translate("SemiAutomaticClassificationPlugin", "Calculate classification confidence raster"))
        self.toolBox_classification.setItemText(self.toolBox_classification.indexOf(self.page_mindist), _translate("SemiAutomaticClassificationPlugin", "Minimum Distance"))
        self.training_proportion_SpinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Proportion of data to be used as training and the remaining part as test"))
        self.steps_SpinBox_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Number of steps"))
        self.label_241.setText(_translate("SemiAutomaticClassificationPlugin", "Learning rate init"))
        self.label_328.setText(_translate("SemiAutomaticClassificationPlugin", "Batch size"))
        self.batch_size_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Sets the number of samples per batch for optimizer; if auto, the batch is the minimum value between 200 and the number of samples"))
        self.batch_size_lineEdit.setText(_translate("SemiAutomaticClassificationPlugin", "auto"))
        self.max_iterations_SpinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Sets the maximum number of iterations"))
        self.hidden_layers_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "List of values separated by comma, where each value defines the number of neurons in a hidden layer (e.g.: 200, 100 for two hidden layers of 200 and 100 neurons respectively)"))
        self.learning_rate_SpinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Sets initial learning rate"))
        self.label_256.setText(_translate("SemiAutomaticClassificationPlugin", "Use framework"))
        self.scikit_radioButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Use scikit-learn framework"))
        self.scikit_radioButton.setText(_translate("SemiAutomaticClassificationPlugin", "scikit-learn"))
        self.pytorch_radioButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Use PyTorch framework"))
        self.pytorch_radioButton.setText(_translate("SemiAutomaticClassificationPlugin", "PyTorch"))
        self.label_262.setText(_translate("SemiAutomaticClassificationPlugin", "Max iter"))
        self.best_estimator_checkBox_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, find the best estimator iteratively"))
        self.best_estimator_checkBox_2.setText(_translate("SemiAutomaticClassificationPlugin", "Find best estimator with steps"))
        self.label_329.setText(_translate("SemiAutomaticClassificationPlugin", "Activation"))
        self.label_242.setText(_translate("SemiAutomaticClassificationPlugin", "Alpha"))
        self.alpha_SpinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Weight decay (also L2 regularization term) for Adam optimizer"))
        self.label_238.setText(_translate("SemiAutomaticClassificationPlugin", "Training proportion"))
        self.confidence_raster_checkBox_3.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, calculate classification confidence raster"))
        self.confidence_raster_checkBox_3.setText(_translate("SemiAutomaticClassificationPlugin", "Calculate classification confidence raster"))
        self.cross_validation_checkBox_3.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, perform cross validation"))
        self.cross_validation_checkBox_3.setText(_translate("SemiAutomaticClassificationPlugin", "Cross validation"))
        self.pretrained_model_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "<html><head/><body><p>If checked, use pretrained model</p></body></html>"))
        self.pretrained_model_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Use pretrained model"))
        self.pretrained_model_combo.setToolTip(_translate("SemiAutomaticClassificationPlugin", "<html><head/><body><p>Pretrained model</p></body></html>"))
        self.pretrained_textBrowser.setHtml(_translate("SemiAutomaticClassificationPlugin", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><meta charset=\"utf-8\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"hr { height: 1px; border-width: 0; }\n"
"li.unchecked::marker { content: \"\\2610\"; }\n"
"li.checked::marker { content: \"\\2612\"; }\n"
"</style></head><body style=\" font-family:\'Noto Sans\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><br /></p></body></html>"))
        self.label_272.setText(_translate("SemiAutomaticClassificationPlugin", "Pretrained model information"))
        self.activation_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Sets the activation function"))
        self.activation_lineEdit.setText(_translate("SemiAutomaticClassificationPlugin", "relu"))
        self.label_330.setText(_translate("SemiAutomaticClassificationPlugin", "Hidden layer sizes"))
        self.toolBox_classification.setItemText(self.toolBox_classification.indexOf(self.page_mlp), _translate("SemiAutomaticClassificationPlugin", "Multi-Layer Perceptron"))
        self.min_split_SpinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Minimum number of samples required to split an internal node"))
        self.confidence_raster_checkBox_4.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, calculate classification confidence raster"))
        self.confidence_raster_checkBox_4.setText(_translate("SemiAutomaticClassificationPlugin", "Calculate classification confidence raster"))
        self.number_trees_SpinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Number of trees"))
        self.class_weight_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, balanced weight is computed inversely proportional to class frequency"))
        self.class_weight_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Balanced class weight"))
        self.pretrained_model_combo_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "<html><head/><body><p>Pretrained model</p></body></html>"))
        self.pretrained_textBrowser_2.setHtml(_translate("SemiAutomaticClassificationPlugin", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><meta charset=\"utf-8\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"hr { height: 1px; border-width: 0; }\n"
"li.unchecked::marker { content: \"\\2610\"; }\n"
"li.checked::marker { content: \"\\2612\"; }\n"
"</style></head><body style=\" font-family:\'Noto Sans\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><br /></p></body></html>"))
        self.pretrained_model_checkBox_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "<html><head/><body><p>If checked, use pretrained model</p></body></html>"))
        self.pretrained_model_checkBox_2.setText(_translate("SemiAutomaticClassificationPlugin", "Use pretrained model"))
        self.label_274.setText(_translate("SemiAutomaticClassificationPlugin", "Pretrained model information"))
        self.best_estimator_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, find the best estimator iteratively"))
        self.best_estimator_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Find best estimator with steps"))
        self.steps_SpinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Number of steps"))
        self.cross_validation_checkBox_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, perform cross validation"))
        self.cross_validation_checkBox_2.setText(_translate("SemiAutomaticClassificationPlugin", "Cross validation"))
        self.max_features_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Parameter for node splitting, if empty all features are considered, if sqrt the square root of all the features, if integer number the number of features, if float number a fraction of all the features"))
        self.max_features_lineEdit.setText(_translate("SemiAutomaticClassificationPlugin", "2"))
        self.ovr_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, perform One-Vs-Rest classification"))
        self.ovr_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "One-Vs-Rest"))
        self.label_160.setText(_translate("SemiAutomaticClassificationPlugin", "Minimum number to split"))
        self.label_153.setText(_translate("SemiAutomaticClassificationPlugin", "Max features"))
        self.label_155.setText(_translate("SemiAutomaticClassificationPlugin", "Number of trees"))
        self.toolBox_classification.setItemText(self.toolBox_classification.indexOf(self.page_random_forest), _translate("SemiAutomaticClassificationPlugin", "Random Forest"))
        self.signature_threshold_button_3.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Open tab Signature threshold"))
        self.signature_threshold_button_3.setText(_translate("SemiAutomaticClassificationPlugin", "W"))
        self.alg_threshold_SpinBox_3.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Set a classification threshold for all signatures"))
        self.label_236.setText(_translate("SemiAutomaticClassificationPlugin", "Use"))
        self.single_threshold_checkBox_6.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, use single threshold for all the spectral signatures"))
        self.single_threshold_checkBox_6.setText(_translate("SemiAutomaticClassificationPlugin", "Single threshold"))
        self.single_threshold_checkBox_5.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, use signature thresholds"))
        self.single_threshold_checkBox_5.setText(_translate("SemiAutomaticClassificationPlugin", "Signature threshold"))
        self.confidence_raster_checkBox_5.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, calculate classification confidence raster"))
        self.confidence_raster_checkBox_5.setText(_translate("SemiAutomaticClassificationPlugin", "Calculate classification confidence raster"))
        self.signature_raster_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, save a raster for each signature distance"))
        self.signature_raster_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Save signature raster"))
        self.toolBox_classification.setItemText(self.toolBox_classification.indexOf(self.page_sam), _translate("SemiAutomaticClassificationPlugin", "Spectral Angle Mapping"))
        self.param_c_SpinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Regularization parameter C"))
        self.label_173.setText(_translate("SemiAutomaticClassificationPlugin", "Kernel"))
        self.gamma_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Kernel coefficient gamma"))
        self.cross_validation_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, perform cross validation"))
        self.cross_validation_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Cross validation"))
        self.kernel_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Sets the kernel"))
        self.label_163.setText(_translate("SemiAutomaticClassificationPlugin", "Gamma"))
        self.label_162.setText(_translate("SemiAutomaticClassificationPlugin", "Regularization parameter C"))
        self.best_estimator_checkBox_3.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, find the best estimator iteratively"))
        self.best_estimator_checkBox_3.setText(_translate("SemiAutomaticClassificationPlugin", "Find best estimator with steps"))
        self.class_weight_checkBox_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, balanced weight is computed inversely proportional to class frequency"))
        self.class_weight_checkBox_2.setText(_translate("SemiAutomaticClassificationPlugin", "Balanced class weight"))
        self.steps_SpinBox_3.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Number of steps"))
        self.confidence_raster_checkBox_6.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, calculate classification confidence raster"))
        self.confidence_raster_checkBox_6.setText(_translate("SemiAutomaticClassificationPlugin", "Calculate classification confidence raster"))
        self.toolBox_classification.setItemText(self.toolBox_classification.indexOf(self.page_svm), _translate("SemiAutomaticClassificationPlugin", "Support Vector Machine"))
        self.pretrained_model_combo_3.setToolTip(_translate("SemiAutomaticClassificationPlugin", "<html><head/><body><p>Pretrained model</p></body></html>"))
        self.pretrained_textBrowser_3.setHtml(_translate("SemiAutomaticClassificationPlugin", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><meta charset=\"utf-8\" /><style type=\"text/css\">\n"
"p, li { white-space: pre-wrap; }\n"
"hr { height: 1px; border-width: 0; }\n"
"li.unchecked::marker { content: \"\\2610\"; }\n"
"li.checked::marker { content: \"\\2612\"; }\n"
"</style></head><body style=\" font-family:\'Noto Sans\'; font-size:10pt; font-weight:400; font-style:normal;\">\n"
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><br /></p></body></html>"))
        self.label_276.setText(_translate("SemiAutomaticClassificationPlugin", "Pretrained model information"))
        self.label_277.setText(_translate("SemiAutomaticClassificationPlugin", "Pretrained model"))
        self.toolBox_classification.setItemText(self.toolBox_classification.indexOf(self.page), _translate("SemiAutomaticClassificationPlugin", "Pretrained models"))
        self.tabWidget_4.setTabText(self.tabWidget_4.indexOf(self.tab_classification), _translate("SemiAutomaticClassificationPlugin", "Classification"))
        self.label_283.setText(_translate("SemiAutomaticClassificationPlugin", " Run"))
        self.label_281.setText(_translate("SemiAutomaticClassificationPlugin", "Matrix file (optional)"))
        self.toolButton_input_matrix.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Open a file"))
        self.label_279.setText(_translate("SemiAutomaticClassificationPlugin", "Output name"))
        self.neighbor_output_name_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Output name prefix"))
        self.neighbor_output_name_lineEdit.setText(_translate("SemiAutomaticClassificationPlugin", "neighbor_"))
        self.neighbor_virtual_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, output bands are virtual rasters"))
        self.neighbor_virtual_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Virtual output"))
        self.neighbor_pixels.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Function to Script"))
        self.neighbor_pixels.setText(_translate("SemiAutomaticClassificationPlugin", " Script"))
        self.class_neighbor_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Run"))
        self.class_neighbor_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "  RUN"))
        self.label_286.setText(_translate("SemiAutomaticClassificationPlugin", " Band neighbor"))
        self.statistic_lineEdit_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Enter a value"))
        self.statistic_name_combobox_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select a statistic"))
        self.label_284.setText(_translate("SemiAutomaticClassificationPlugin", "Select a statistic"))
        self.label_285.setText(_translate("SemiAutomaticClassificationPlugin", " Statistic"))
        self.label_282.setText(_translate("SemiAutomaticClassificationPlugin", "Select input band set"))
        self.label_280.setText(_translate("SemiAutomaticClassificationPlugin", "Neighbor distance in pixels"))
        self.band_set_comb_spinBox_15.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Band set number"))
        self.class_neighbor_threshold_spinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Distance in pixels"))
        self.circular_structure_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, neighbor pixels are calculated inside a circle of radius equal to the distance in pixels"))
        self.circular_structure_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Circular"))
        self.tabWidget_4.setTabText(self.tabWidget_4.indexOf(self.tab_neighbor_pixels), _translate("SemiAutomaticClassificationPlugin", "Neighbor pixels"))
        self.label_181.setText(_translate("SemiAutomaticClassificationPlugin", " Run"))
        self.clustering_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Run"))
        self.clustering_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "  RUN"))
        self.clustering.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Function to Script"))
        self.clustering.setText(_translate("SemiAutomaticClassificationPlugin", " Script"))
        self.min_distance_radioButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, use Minimum Distance algorithm"))
        self.min_distance_radioButton.setText(_translate("SemiAutomaticClassificationPlugin", "Minimum Distance"))
        self.kmean_save_siglist_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, save the resulting signatures to Signature list"))
        self.kmean_save_siglist_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Save resulting signatures to Signature list"))
        self.label_234.setText(_translate("SemiAutomaticClassificationPlugin", "Distance algorithm"))
        self.label_108.setText(_translate("SemiAutomaticClassificationPlugin", " Seed signatures"))
        self.kmean_siglist_radioButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, use signatures in Signature list as seed signatures"))
        self.kmean_siglist_radioButton.setText(_translate("SemiAutomaticClassificationPlugin", "Use Signature list as seed signatures"))
        self.kmean_randomsiglist_radioButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, calculate seed signatures from random pixels"))
        self.kmean_randomsiglist_radioButton.setText(_translate("SemiAutomaticClassificationPlugin", "Use random seed signatures"))
        self.kmean_minmax_radioButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, calculate seed signatures from minimum and maximum values of bands"))
        self.kmean_minmax_radioButton.setText(_translate("SemiAutomaticClassificationPlugin", "Seed signatures from band values"))
        self.spectral_angle_map_radioButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, use Spectral Angle Mapping algorithm (only for K-means)"))
        self.spectral_angle_map_radioButton.setText(_translate("SemiAutomaticClassificationPlugin", "Spectral Angle Mapping"))
        self.label_246.setText(_translate("SemiAutomaticClassificationPlugin", "Method "))
        self.kmeans_radioButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, use K-means"))
        self.kmeans_radioButton.setText(_translate("SemiAutomaticClassificationPlugin", "K-means  "))
        self.label_273.setText(_translate("SemiAutomaticClassificationPlugin", "Select input band set"))
        self.band_set_comb_spinBox_5.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Band set number"))
        self.label_86.setText(_translate("SemiAutomaticClassificationPlugin", " Clustering of band set"))
        self.kmeans_iter_spinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Set the maximum number of iterations"))
        self.label_244.setText(_translate("SemiAutomaticClassificationPlugin", "Number of classes"))
        self.kmeans_classes_spinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Number of classes"))
        self.nodata_checkBox_8.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, pixels equal to NoData value will be excluded from the output raster"))
        self.nodata_checkBox_8.setText(_translate("SemiAutomaticClassificationPlugin", "Use value as NoData"))
        self.kmean_threshold_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, for K-means: iteration is terminated if distance is lower than threshold; for ISODATA: signatures are merged if distance is greater than threshold"))
        self.kmean_threshold_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Distance threshold"))
        self.thresh_doubleSpinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Threshold"))
        self.nodata_spinBox_9.setToolTip(_translate("SemiAutomaticClassificationPlugin", "NoData value"))
        self.label_245.setText(_translate("SemiAutomaticClassificationPlugin", "Max number of iterations"))
        self.tabWidget_4.setTabText(self.tabWidget_4.indexOf(self.tab_clustering), _translate("SemiAutomaticClassificationPlugin", "Clustering"))
        self.label_183.setText(_translate("SemiAutomaticClassificationPlugin", " Run"))
        self.spectral_distance_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Run"))
        self.spectral_distance_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "  RUN"))
        self.label_257.setText(_translate("SemiAutomaticClassificationPlugin", "Select first input band set"))
        self.band_set_comb_spinBox_7.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Band set number"))
        self.label_259.setText(_translate("SemiAutomaticClassificationPlugin", "Select second input band set"))
        self.band_set_comb_spinBox_6.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Band set number"))
        self.spectral_distance.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Function to Script"))
        self.spectral_distance.setText(_translate("SemiAutomaticClassificationPlugin", " Script"))
        self.label_143.setText(_translate("SemiAutomaticClassificationPlugin", "Spectral distance of band sets"))
        self.distance_threshold_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, calculate a raster of changes where distance is above threshold"))
        self.distance_threshold_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Distance threshold"))
        self.thresh_doubleSpinBox_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Threshold"))
        self.label_231.setText(_translate("SemiAutomaticClassificationPlugin", "Distance algorithm"))
        self.min_distance_radioButton_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, use Minimum Distance algorithm"))
        self.min_distance_radioButton_2.setText(_translate("SemiAutomaticClassificationPlugin", "Minimum Distance"))
        self.spectral_angle_map_radioButton_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, use Spectral Angle Mapping algorithm"))
        self.spectral_angle_map_radioButton_2.setText(_translate("SemiAutomaticClassificationPlugin", "Spectral Angle Mapping"))
        self.tabWidget_4.setTabText(self.tabWidget_4.indexOf(self.tab_spectral_distance1), _translate("SemiAutomaticClassificationPlugin", "Spectral distance"))
        self.SCP_tabs.setTabText(self.SCP_tabs.indexOf(self.tab_band_processing), _translate("SemiAutomaticClassificationPlugin", "Band processing"))
        self.label_33.setText(_translate("SemiAutomaticClassificationPlugin", "Select the classification to assess"))
        self.label_34.setText(_translate("SemiAutomaticClassificationPlugin", "Select the reference vector or raster"))
        self.classification_name_combo.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select the classification to assess"))
        self.buttonReload_shape_4.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Refresh list"))
        self.buttonReload_shape_4.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.toolButton_reload_4.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Refresh list"))
        self.toolButton_reload_4.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.reference_name_combo.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select the reference vector or raster"))
        self.label_145.setText(_translate("SemiAutomaticClassificationPlugin", " Accuracy assessment"))
        self.label_82.setText(_translate("SemiAutomaticClassificationPlugin", "Vector field"))
        self.class_field_comboBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select the field of the classification code "))
        self.nodata_checkBox_11.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, pixels equal to NoData value will be excluded from the output raster"))
        self.nodata_checkBox_11.setText(_translate("SemiAutomaticClassificationPlugin", "Use value as NoData"))
        self.nodata_spinBox_15.setToolTip(_translate("SemiAutomaticClassificationPlugin", "NoData value"))
        self.label_168.setText(_translate("SemiAutomaticClassificationPlugin", " Run"))
        self.calculateMatrix_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Run"))
        self.calculateMatrix_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "  RUN"))
        self.accuracy.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Function to Script"))
        self.accuracy.setText(_translate("SemiAutomaticClassificationPlugin", " Script"))
        self.toolBox_accuracy.setItemText(self.toolBox_accuracy.indexOf(self.page_10), _translate("SemiAutomaticClassificationPlugin", "Input"))
        self.toolBox_accuracy.setItemText(self.toolBox_accuracy.indexOf(self.page_11), _translate("SemiAutomaticClassificationPlugin", "Output"))
        self.tabWidget_2.setTabText(self.tabWidget_2.indexOf(self.tab_accuracy), _translate("SemiAutomaticClassificationPlugin", "Accuracy"))
        self.classification_report_name_combo.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select the classification raster"))
        self.label_44.setText(_translate("SemiAutomaticClassificationPlugin", "Select the classification"))
        self.nodata_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, pixels equal to NoData value will be excluded from the report"))
        self.nodata_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Use value as NoData"))
        self.nodata_spinBox_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "NoData value"))
        self.toolButton_reload_10.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Refresh list"))
        self.toolButton_reload_10.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.label_170.setText(_translate("SemiAutomaticClassificationPlugin", " Run"))
        self.calculateReport_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Run"))
        self.calculateReport_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "  RUN"))
        self.classification_report.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Function to Script"))
        self.classification_report.setText(_translate("SemiAutomaticClassificationPlugin", " Script"))
        self.label_148.setText(_translate("SemiAutomaticClassificationPlugin", " Classification report"))
        self.toolBox_class_report.setItemText(self.toolBox_class_report.indexOf(self.page_14), _translate("SemiAutomaticClassificationPlugin", "Input"))
        self.toolBox_class_report.setItemText(self.toolBox_class_report.indexOf(self.page_15), _translate("SemiAutomaticClassificationPlugin", "Output"))
        self.tabWidget_2.setTabText(self.tabWidget_2.indexOf(self.tab_class_report), _translate("SemiAutomaticClassificationPlugin", "Classification report"))
        self.label_187.setText(_translate("SemiAutomaticClassificationPlugin", " Cross classification"))
        self.nodata_checkBox_6.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, pixels equal to NoData value will be excluded from the output raster"))
        self.nodata_checkBox_6.setText(_translate("SemiAutomaticClassificationPlugin", "Use value as NoData"))
        self.nodata_spinBox_7.setToolTip(_translate("SemiAutomaticClassificationPlugin", "NoData value"))
        self.label_197.setText(_translate("SemiAutomaticClassificationPlugin", "Select the classification"))
        self.label_199.setText(_translate("SemiAutomaticClassificationPlugin", "Vector field"))
        self.class_field_comboBox_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select the vector field"))
        self.toolButton_reload_21.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Refresh list"))
        self.toolButton_reload_21.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.classification_name_combo_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select the classification"))
        self.buttonReload_shape_5.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Refresh list"))
        self.buttonReload_shape_5.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.reference_name_combo_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select the reference vector or raster"))
        self.label_198.setText(_translate("SemiAutomaticClassificationPlugin", "Select the reference vector or raster"))
        self.regression_raster_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, calculate linear regression and create rasters using the values of regression coefficients"))
        self.regression_raster_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Calculate linear regression"))
        self.label_200.setText(_translate("SemiAutomaticClassificationPlugin", " Run"))
        self.calculatecrossClass_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Run"))
        self.calculatecrossClass_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "  RUN"))
        self.cross_classification.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Function to Script"))
        self.cross_classification.setText(_translate("SemiAutomaticClassificationPlugin", " Script"))
        self.toolBox_cross_classification.setItemText(self.toolBox_cross_classification.indexOf(self.page_19), _translate("SemiAutomaticClassificationPlugin", "Input"))
        self.toolBox_cross_classification.setItemText(self.toolBox_cross_classification.indexOf(self.page_22), _translate("SemiAutomaticClassificationPlugin", "Output"))
        self.tabWidget_2.setTabText(self.tabWidget_2.indexOf(self.tab_cross_classification), _translate("SemiAutomaticClassificationPlugin", "Cross classification"))
        self.label_189.setText(_translate("SemiAutomaticClassificationPlugin", " Classification to vector"))
        self.label_63.setText(_translate("SemiAutomaticClassificationPlugin", "Select the classification"))
        self.classification_vector_name_combo.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select the classification raster"))
        self.toolButton_reload_11.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Refresh list"))
        self.toolButton_reload_11.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.class_macroclass_comboBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select the code field"))
        self.class_macroclass_comboBox.setItemText(0, _translate("SemiAutomaticClassificationPlugin", "C_ID"))
        self.class_macroclass_comboBox.setItemText(1, _translate("SemiAutomaticClassificationPlugin", "MC_ID"))
        self.use_class_code_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Use the codes from Signature list table for vector symbology"))
        self.use_class_code_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Use code from Signature list"))
        self.label_49.setText(_translate("SemiAutomaticClassificationPlugin", " Symbology"))
        self.dissolve_output_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, the polygons are dissolved to avoid discontinuity between processed blocks (slower)"))
        self.dissolve_output_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Dissolve output"))
        self.convert_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Run"))
        self.convert_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "  RUN"))
        self.label_171.setText(_translate("SemiAutomaticClassificationPlugin", " Run"))
        self.classification_to_vector.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Function to Script"))
        self.classification_to_vector.setText(_translate("SemiAutomaticClassificationPlugin", " Script"))
        self.tabWidget_2.setTabText(self.tabWidget_2.indexOf(self.tab_class_to_vector), _translate("SemiAutomaticClassificationPlugin", "Classification to vector"))
        self.label_65.setText(_translate("SemiAutomaticClassificationPlugin", "Select the classification"))
        self.reclassification_name_combo.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select the classification raster"))
        self.toolButton_reload_12.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Refresh list"))
        self.toolButton_reload_12.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.label_190.setText(_translate("SemiAutomaticClassificationPlugin", " Reclassification"))
        self.calculate_unique_values_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Calculate unique values"))
        self.CID_MCID_code_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Enable this for reclassification from C ID to MC ID; if checked, unique values are calculated from the Signature list, setting old value C ID and new value MC ID"))
        self.CID_MCID_code_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "calculate C ID to MC ID values"))
        self.label_98.setText(_translate("SemiAutomaticClassificationPlugin", "Calculate unique values"))
        self.label_54.setText(_translate("SemiAutomaticClassificationPlugin", " Values"))
        self.incremental_new_values_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Set incremental new values"))
        self.label_271.setText(_translate("SemiAutomaticClassificationPlugin", "Incremental new values"))
        self.reclass_values_tableWidget.setSortingEnabled(False)
        item = self.reclass_values_tableWidget.horizontalHeaderItem(0)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "Old value"))
        item = self.reclass_values_tableWidget.horizontalHeaderItem(1)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "New value"))
        self.add_value_pushButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Add row"))
        self.add_value_pushButton.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.remove_row_pushButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Delete row"))
        self.remove_row_pushButton.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.import_reclass_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Import reclassification table from text file"))
        self.import_reclass_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.export_reclass_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Export reclassification table to text file"))
        self.export_reclass_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.apply_symbology_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Use the codes from Signature list table for vector symbology"))
        self.apply_symbology_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Use code from Signature list"))
        self.class_macroclass_comboBox_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select the code field"))
        self.class_macroclass_comboBox_2.setItemText(0, _translate("SemiAutomaticClassificationPlugin", "MC_ID"))
        self.class_macroclass_comboBox_2.setItemText(1, _translate("SemiAutomaticClassificationPlugin", "C_ID"))
        self.label_51.setText(_translate("SemiAutomaticClassificationPlugin", " Symbology"))
        self.label_172.setText(_translate("SemiAutomaticClassificationPlugin", " Run"))
        self.reclassify_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Run"))
        self.reclassify_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "  RUN"))
        self.reclassification.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Function to Script"))
        self.reclassification.setText(_translate("SemiAutomaticClassificationPlugin", " Script"))
        self.tabWidget_2.setTabText(self.tabWidget_2.indexOf(self.tab_reclassification), _translate("SemiAutomaticClassificationPlugin", "Reclassification"))
        self.label_193.setText(_translate("SemiAutomaticClassificationPlugin", " Edit raster"))
        self.edit_val_use_ROI_radioButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Edit values using temporary ROIs"))
        self.edit_val_use_ROI_radioButton.setText(_translate("SemiAutomaticClassificationPlugin", " Edit values using ROI polygons"))
        self.use_field_vector_radioButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Use the value field of the vector"))
        self.use_field_vector_radioButton.setText(_translate("SemiAutomaticClassificationPlugin", "Use the value field of the vector"))
        self.field_comboBox_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select the value field"))
        self.label_81.setText(_translate("SemiAutomaticClassificationPlugin", " Edit raster values"))
        self.label_66.setText(_translate("SemiAutomaticClassificationPlugin", "Select the input raster"))
        self.edit_raster_name_combo.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select the raster to edit"))
        self.toolButton_reload_14.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Refresh list"))
        self.toolButton_reload_14.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.edit_val_use_vector_radioButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Edit values using a vector"))
        self.edit_val_use_vector_radioButton.setText(_translate("SemiAutomaticClassificationPlugin", " Edit values using a vector"))
        self.vector_name_combo_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select the vector"))
        self.toolButton_reload_20.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Refresh list"))
        self.toolButton_reload_20.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.label_177.setText(_translate("SemiAutomaticClassificationPlugin", " Edit options"))
        self.label_176.setText(_translate("SemiAutomaticClassificationPlugin", " Run"))
        self.use_constant_val_radioButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Use constant value"))
        self.use_constant_val_radioButton.setText(_translate("SemiAutomaticClassificationPlugin", "Use constant value"))
        self.value_spinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Value"))
        self.undo_edit_Button.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Undo edit (only for ROI polygons)"))
        self.undo_edit_Button.setText(_translate("SemiAutomaticClassificationPlugin", "Undo"))
        self.use_expression_radioButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Use expression"))
        self.use_expression_radioButton.setText(_translate("SemiAutomaticClassificationPlugin", "Use expression"))
        self.expression_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Enter expression"))
        self.edit_raster.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Function to Script"))
        self.edit_raster.setText(_translate("SemiAutomaticClassificationPlugin", " Script"))
        self.edit_raster_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Run"))
        self.edit_raster_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "  RUN"))
        self.tabWidget_2.setTabText(self.tabWidget_2.indexOf(self.tab_edit_raster), _translate("SemiAutomaticClassificationPlugin", "Edit raster"))
        self.label_212.setText(_translate("SemiAutomaticClassificationPlugin", " Raster zonal stats"))
        self.label_77.setText(_translate("SemiAutomaticClassificationPlugin", "Select the input raster"))
        self.classification_name_combo_5.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select the input raster"))
        self.toolButton_reload_24.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Refresh list"))
        self.toolButton_reload_24.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.class_field_comboBox_4.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select the vector field"))
        self.label_214.setText(_translate("SemiAutomaticClassificationPlugin", "Select the reference vector or raster"))
        self.buttonReload_shape_6.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Refresh list"))
        self.buttonReload_shape_6.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.label_213.setText(_translate("SemiAutomaticClassificationPlugin", "Vector field"))
        self.reference_name_combo_3.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select the reference vector"))
        self.label_216.setText(_translate("SemiAutomaticClassificationPlugin", " Statistic"))
        self.std_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Standard deviation"))
        self.max_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Maximum"))
        self.percentile_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Percentile"))
        self.percentile_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Enter percentile values"))
        self.sum_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Sum"))
        self.count_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Count"))
        self.mean_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Mean"))
        self.median_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Median"))
        self.min_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Minimum"))
        self.label_178.setText(_translate("SemiAutomaticClassificationPlugin", " Run"))
        self.raster_zonal_stats.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Function to Script"))
        self.raster_zonal_stats.setText(_translate("SemiAutomaticClassificationPlugin", " Script"))
        self.raster_zonal_stats_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Run"))
        self.raster_zonal_stats_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "  RUN"))
        self.toolBox_raster_zonal_stats.setItemText(self.toolBox_raster_zonal_stats.indexOf(self.page_20), _translate("SemiAutomaticClassificationPlugin", "Input"))
        self.toolBox_raster_zonal_stats.setItemText(self.toolBox_raster_zonal_stats.indexOf(self.page_23), _translate("SemiAutomaticClassificationPlugin", "Output"))
        self.tabWidget_2.setTabText(self.tabWidget_2.indexOf(self.tab_raster_zonal_stats), _translate("SemiAutomaticClassificationPlugin", "Raster zonal stats"))
        self.SCP_tabs.setTabText(self.SCP_tabs.indexOf(self.tab_postProcessing), _translate("SemiAutomaticClassificationPlugin", "Postprocessing"))
        self.tableWidget_band_calc.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Band list"))
        item = self.tableWidget_band_calc.horizontalHeaderItem(0)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "Variable"))
        item = self.tableWidget_band_calc.horizontalHeaderItem(1)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "Output"))
        self.toolButton_reload_13.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Refresh list"))
        self.toolButton_reload_13.setText(_translate("SemiAutomaticClassificationPlugin", "Plot"))
        self.bandcalc_filter_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Filter"))
        self.bandcalc_filter_lineEdit.setPlaceholderText(_translate("SemiAutomaticClassificationPlugin", "Filter"))
        self.label_71.setText(_translate("SemiAutomaticClassificationPlugin", " Band list"))
        self.label_band_calc.setText(_translate("SemiAutomaticClassificationPlugin", " Expression"))
        self.plainTextEdit_calc.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Enter an expression"))
        item = self.band_calc_function_tableWidget.horizontalHeaderItem(0)
        item.setText(_translate("SemiAutomaticClassificationPlugin", "Functions"))
        self.toolButton_import_expression.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Open a text file to add custom functions"))
        self.label_84.setText(_translate("SemiAutomaticClassificationPlugin", "Output raster"))
        self.label_5.setText(_translate("SemiAutomaticClassificationPlugin", "Output\n"
"data type"))
        self.raster_type_combo.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select a type"))
        self.raster_type_combo.setItemText(0, _translate("SemiAutomaticClassificationPlugin", "Float32"))
        self.raster_type_combo.setItemText(1, _translate("SemiAutomaticClassificationPlugin", "Int32"))
        self.raster_type_combo.setItemText(2, _translate("SemiAutomaticClassificationPlugin", "UInt32"))
        self.raster_type_combo.setItemText(3, _translate("SemiAutomaticClassificationPlugin", "Int16"))
        self.raster_type_combo.setItemText(4, _translate("SemiAutomaticClassificationPlugin", "UInt16"))
        self.raster_type_combo.setItemText(5, _translate("SemiAutomaticClassificationPlugin", "Byte"))
        self.label_268.setText(_translate("SemiAutomaticClassificationPlugin", "Output \n"
"NoData value"))
        self.nodata_spinBox_4.setToolTip(_translate("SemiAutomaticClassificationPlugin", "NoData value of the output raster"))
        self.label_152.setText(_translate("SemiAutomaticClassificationPlugin", "NoData\n"
"mask"))
        self.nodata_mask_combo.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Use NoData mask"))
        self.nodata_mask_combo.setItemText(0, _translate("SemiAutomaticClassificationPlugin", "False"))
        self.nodata_mask_combo.setItemText(1, _translate("SemiAutomaticClassificationPlugin", "True"))
        self.nodata_mask_combo.setItemText(2, _translate("SemiAutomaticClassificationPlugin", "None"))
        self.set_scale_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, set a scale"))
        self.set_scale_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Set \n"
"scale"))
        self.scale_doubleSpinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Scale"))
        self.set_offset_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, set an offset"))
        self.set_offset_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Set \n"
"offset"))
        self.offset_doubleSpinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Offset"))
        self.label_83.setText(_translate("SemiAutomaticClassificationPlugin", "Extent:"))
        self.raster_extent_combo.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select an extent"))
        self.UL_X_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Upperleft X"))
        self.UL_X_lineEdit.setPlaceholderText(_translate("SemiAutomaticClassificationPlugin", "UL X"))
        self.UL_Y_linedit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Upper-left Y"))
        self.UL_Y_linedit.setPlaceholderText(_translate("SemiAutomaticClassificationPlugin", "UL Y"))
        self.LR_X_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Lower-right X"))
        self.LR_X_lineEdit.setPlaceholderText(_translate("SemiAutomaticClassificationPlugin", "LR X"))
        self.LR_Y_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Lower-right Y"))
        self.LR_Y_lineEdit.setPlaceholderText(_translate("SemiAutomaticClassificationPlugin", "LR Y"))
        self.label_116.setText(_translate("SemiAutomaticClassificationPlugin", "Align"))
        self.raster_extent_combo_2.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select a raster"))
        self.label_146.setText(_translate("SemiAutomaticClassificationPlugin", "Pixel\n"
"size"))
        self.resolution_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Pixel size"))
        self.toolButton_calculate.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Run"))
        self.toolButton_calculate.setText(_translate("SemiAutomaticClassificationPlugin", "  RUN"))
        self.nodata_as_value_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, input NoData pixels will be evaluated as regular values"))
        self.nodata_as_value_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Input NoData \n"
" as value"))
        self.nodata_checkBox_3.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, pixels equal to NoData value will be excluded from the output raster"))
        self.nodata_checkBox_3.setText(_translate("SemiAutomaticClassificationPlugin", "Use value\n"
"as NoData"))
        self.nodata_spinBox_13.setToolTip(_translate("SemiAutomaticClassificationPlugin", "NoData value"))
        self.label_4.setText(_translate("SemiAutomaticClassificationPlugin", "Calculation\n"
"data type"))
        self.calc_type_combo.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select a type"))
        self.calc_type_combo.setItemText(0, _translate("SemiAutomaticClassificationPlugin", "Float32"))
        self.calc_type_combo.setItemText(1, _translate("SemiAutomaticClassificationPlugin", "Int32"))
        self.calc_type_combo.setItemText(2, _translate("SemiAutomaticClassificationPlugin", "UInt32"))
        self.calc_type_combo.setItemText(3, _translate("SemiAutomaticClassificationPlugin", "Int16"))
        self.calc_type_combo.setItemText(4, _translate("SemiAutomaticClassificationPlugin", "UInt16"))
        self.calc_type_combo.setItemText(5, _translate("SemiAutomaticClassificationPlugin", "Byte"))
        self.SCP_tabs.setTabText(self.SCP_tabs.indexOf(self.tab_band_calc), _translate("SemiAutomaticClassificationPlugin", "Band calc"))
        self.label_73.setText(_translate("SemiAutomaticClassificationPlugin", "Script (copy the code in a Python shell)"))
        self.clear_batch_toolButton.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Reset"))
        self.clear_batch_toolButton.setText(_translate("SemiAutomaticClassificationPlugin", "Import library"))
        self.copy_script.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Copy Script to clipboard"))
        self.copy_script.setText(_translate("SemiAutomaticClassificationPlugin", "Copy"))
        self.save_script_button.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Save Script to file"))
        self.save_script_button.setText(_translate("SemiAutomaticClassificationPlugin", " Save to file"))
        self.SCP_tabs.setTabText(self.SCP_tabs.indexOf(self.tab_script), _translate("SemiAutomaticClassificationPlugin", "Script"))
        self.label_28.setText(_translate("SemiAutomaticClassificationPlugin", " System"))
        self.RAM_spinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Set available RAM for processes"))
        self.label_23.setText(_translate("SemiAutomaticClassificationPlugin", "Available RAM (MB)"))
        self.label_56.setText(_translate("SemiAutomaticClassificationPlugin", "CPU threads"))
        self.CPU_spinBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Set the number of CPU threads "))
        self.label_13.setText(_translate("SemiAutomaticClassificationPlugin", "SMTP server"))
        self.label_18.setText(_translate("SemiAutomaticClassificationPlugin", "password"))
        self.smtp_user_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Set the Class ID field name</p><p>[max 10 characters]"))
        self.smtp_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Enable/Disable the sending of email of completed process"))
        self.smtp_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Send email of completed process to"))
        self.label_117.setText(_translate("SemiAutomaticClassificationPlugin", "SMTP process notification"))
        self.smtp_password_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Password"))
        self.smtp_server_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Set the Class ID field name</p><p>[max 10 characters]"))
        self.label_14.setText(_translate("SemiAutomaticClassificationPlugin", "user"))
        self.to_email_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "A list of addresses (separated by comma , ) to send this mail to "))
        self.remeber_settings_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, remember user name and password locally in QGIS"))
        self.remeber_settings_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "remember"))
        self.reset_temp_directory_Button.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Reset to default temporary directory"))
        self.reset_temp_directory_Button.setText(_translate("SemiAutomaticClassificationPlugin", "Import library"))
        self.temp_directory_Button.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select a directory"))
        self.temp_directory_Button.setText(_translate("SemiAutomaticClassificationPlugin", "Import library"))
        self.label_87.setText(_translate("SemiAutomaticClassificationPlugin", "Temporary directory"))
        self.label_275.setText(_translate("SemiAutomaticClassificationPlugin", "GDAL installation directory"))
        self.gdal_path_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Path to the GDAL directory containing tools such as gdal_translate and gdalwarp (e.g. /usr/bin)"))
        self.label_211.setText(_translate("SemiAutomaticClassificationPlugin", "External programs"))
        self.sound_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Enable/Disable the sound when the process is finished"))
        self.sound_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Play sound when finished"))
        self.label_45.setText(_translate("SemiAutomaticClassificationPlugin", "Calculation process"))
        self.raster_compression_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, a lossless compression is applied to rasters in order to save disk space"))
        self.raster_compression_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Raster compression"))
        self.settings_tabWidget.setTabText(self.settings_tabWidget.indexOf(self.tabWidgetProcessing), _translate("SemiAutomaticClassificationPlugin", "Processing"))
        self.label_21.setText(_translate("SemiAutomaticClassificationPlugin", " ROI style"))
        self.change_color_Button.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Select temporary ROI color"))
        self.label_22.setText(_translate("SemiAutomaticClassificationPlugin", "ROI color"))
        self.transparency_Label.setText(_translate("SemiAutomaticClassificationPlugin", "Transparency"))
        self.transparency_Slider.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Change temporary ROI transparency"))
        self.reset_color_Button.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Reset"))
        self.reset_color_Button.setText(_translate("SemiAutomaticClassificationPlugin", "Import library"))
        self.label_95.setText(_translate("SemiAutomaticClassificationPlugin", " Dock"))
        self.download_news_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, news about the SCP are downloaded on startup and displayed in Dock"))
        self.download_news_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Download news on startup"))
        self.label_68.setText(_translate("SemiAutomaticClassificationPlugin", " Variable name"))
        self.variable_name_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Variable name for expressions"))
        self.variable_name_lineEdit.setText(_translate("SemiAutomaticClassificationPlugin", "raster"))
        self.label_69.setText(_translate("SemiAutomaticClassificationPlugin", " Variable name for expressions"))
        self.reset_variable_name_Button.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Reset"))
        self.reset_variable_name_Button.setText(_translate("SemiAutomaticClassificationPlugin", "Import library"))
        self.label_76.setText(_translate("SemiAutomaticClassificationPlugin", " Project"))
        self.reset_group_name_Button.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Reset"))
        self.reset_group_name_Button.setText(_translate("SemiAutomaticClassificationPlugin", "Import library"))
        self.virtual_raster_load_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "If checked, an RGB composite of the active band set is created when a previous project is loaded"))
        self.virtual_raster_load_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Create RGB composite of band set when a project is loaded"))
        self.label_75.setText(_translate("SemiAutomaticClassificationPlugin", "Group name"))
        self.group_name_lineEdit.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Group name"))
        self.group_name_lineEdit.setText(_translate("SemiAutomaticClassificationPlugin", "Class_temp_group"))
        self.settings_tabWidget.setTabText(self.settings_tabWidget.indexOf(self.tabWidgetInterface), _translate("SemiAutomaticClassificationPlugin", "Interface"))
        self.test_dependencies_Button.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Test dependencies"))
        self.label_43.setText(_translate("SemiAutomaticClassificationPlugin", " Test"))
        self.label_42.setText(_translate("SemiAutomaticClassificationPlugin", "Test dependencies"))
        self.exportLog_Button.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Export the Log file"))
        self.exportLog_Button.setText(_translate("SemiAutomaticClassificationPlugin", "Import library"))
        self.log_checkBox.setToolTip(_translate("SemiAutomaticClassificationPlugin", "Enable/Disable the detailed Log of events in a local text file"))
        self.log_checkBox.setText(_translate("SemiAutomaticClassificationPlugin", "Record detailed events in a Log file"))
        self.label_30.setText(_translate("SemiAutomaticClassificationPlugin", " Log file"))
        self.settings_tabWidget.setTabText(self.settings_tabWidget.indexOf(self.tabWidgetDebug), _translate("SemiAutomaticClassificationPlugin", "Debug"))
        self.SCP_tabs.setTabText(self.SCP_tabs.indexOf(self.tab_Settings), _translate("SemiAutomaticClassificationPlugin", "Settings"))
        self.plugin_label.setText(_translate("SemiAutomaticClassificationPlugin", "Semi-Automatic Classification Plugin"))
        self.SCP_tabs.setTabText(self.SCP_tabs.indexOf(self.tab_About), _translate("SemiAutomaticClassificationPlugin", "About"))
        self.main_tabWidget.setTabText(self.main_tabWidget.indexOf(self.tool_tab), _translate("SemiAutomaticClassificationPlugin", "Tool"))
        self.main_tabWidget.setTabText(self.main_tabWidget.indexOf(self.help_tab), _translate("SemiAutomaticClassificationPlugin", "Help"))
