尝试将数据结构化流程中的append.py步骤整合入此程序中
This commit is contained in:
parent
ae57e9274b
commit
bbe6abc57f
@ -21,8 +21,32 @@ class Ui_MainWindow(object):
|
||||
self.gridLayout.setObjectName("gridLayout")
|
||||
self.horizontalLayout = QtWidgets.QHBoxLayout()
|
||||
self.horizontalLayout.setObjectName("horizontalLayout")
|
||||
self.verticalLayout_left = QtWidgets.QVBoxLayout()
|
||||
self.verticalLayout_left.setObjectName("verticalLayout_left")
|
||||
self.gridLayout_left = QtWidgets.QGridLayout()
|
||||
self.gridLayout_left.setObjectName("gridLayout_left")
|
||||
self.pushButton_outputLabel = QtWidgets.QPushButton(self.centralwidget)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
sizePolicy.setVerticalStretch(0)
|
||||
sizePolicy.setHeightForWidth(self.pushButton_outputLabel.sizePolicy().hasHeightForWidth())
|
||||
self.pushButton_outputLabel.setSizePolicy(sizePolicy)
|
||||
font = QtGui.QFont()
|
||||
font.setFamily("黑体")
|
||||
font.setPointSize(14)
|
||||
self.pushButton_outputLabel.setFont(font)
|
||||
self.pushButton_outputLabel.setObjectName("pushButton_outputLabel")
|
||||
self.gridLayout_left.addWidget(self.pushButton_outputLabel, 6, 1, 1, 1)
|
||||
self.pushButton_append = QtWidgets.QPushButton(self.centralwidget)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
sizePolicy.setVerticalStretch(0)
|
||||
sizePolicy.setHeightForWidth(self.pushButton_append.sizePolicy().hasHeightForWidth())
|
||||
self.pushButton_append.setSizePolicy(sizePolicy)
|
||||
font = QtGui.QFont()
|
||||
font.setFamily("黑体")
|
||||
font.setPointSize(14)
|
||||
self.pushButton_append.setFont(font)
|
||||
self.pushButton_append.setObjectName("pushButton_append")
|
||||
self.gridLayout_left.addWidget(self.pushButton_append, 6, 0, 1, 1)
|
||||
self.groupBox_inputSetting = QtWidgets.QGroupBox(self.centralwidget)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
@ -493,9 +517,7 @@ class Ui_MainWindow(object):
|
||||
self.pushButton_savepath_open.setObjectName("pushButton_savepath_open")
|
||||
self.gridLayout_19.addWidget(self.pushButton_savepath_open, 0, 2, 1, 1)
|
||||
self.gridLayout_4.addWidget(self.groupBox_save, 5, 0, 1, 5)
|
||||
self.verticalLayout_left.addWidget(self.groupBox_inputSetting)
|
||||
spacerItem9 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
|
||||
self.verticalLayout_left.addItem(spacerItem9)
|
||||
self.gridLayout_left.addWidget(self.groupBox_inputSetting, 0, 0, 1, 2)
|
||||
self.groupBox_autoplay = QtWidgets.QGroupBox(self.centralwidget)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
@ -843,9 +865,7 @@ class Ui_MainWindow(object):
|
||||
self.horizontalLayout_move_operate.addWidget(self.pushButton_right_move)
|
||||
self.gridLayout_49.addLayout(self.horizontalLayout_move_operate, 0, 0, 1, 2)
|
||||
self.gridLayout_6.addWidget(self.groupBox_move, 0, 0, 1, 1)
|
||||
self.verticalLayout_left.addWidget(self.groupBox_autoplay)
|
||||
spacerItem10 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
|
||||
self.verticalLayout_left.addItem(spacerItem10)
|
||||
self.gridLayout_left.addWidget(self.groupBox_autoplay, 2, 0, 1, 2)
|
||||
self.groupBox_findpeaks_options = QtWidgets.QGroupBox(self.centralwidget)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
@ -909,27 +929,19 @@ class Ui_MainWindow(object):
|
||||
self.lineEdit_findpeaks_min_height.setPlaceholderText("")
|
||||
self.lineEdit_findpeaks_min_height.setObjectName("lineEdit_findpeaks_min_height")
|
||||
self.gridLayout_21.addWidget(self.lineEdit_findpeaks_min_height, 0, 3, 1, 1)
|
||||
self.verticalLayout_left.addWidget(self.groupBox_findpeaks_options)
|
||||
self.gridLayout_left.addWidget(self.groupBox_findpeaks_options, 4, 0, 1, 2)
|
||||
spacerItem9 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
|
||||
self.gridLayout_left.addItem(spacerItem9, 1, 0, 1, 2)
|
||||
spacerItem10 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
|
||||
self.gridLayout_left.addItem(spacerItem10, 5, 0, 1, 2)
|
||||
spacerItem11 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
|
||||
self.verticalLayout_left.addItem(spacerItem11)
|
||||
self.pushButton_outputLabel = QtWidgets.QPushButton(self.centralwidget)
|
||||
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Preferred)
|
||||
sizePolicy.setHorizontalStretch(0)
|
||||
sizePolicy.setVerticalStretch(0)
|
||||
sizePolicy.setHeightForWidth(self.pushButton_outputLabel.sizePolicy().hasHeightForWidth())
|
||||
self.pushButton_outputLabel.setSizePolicy(sizePolicy)
|
||||
font = QtGui.QFont()
|
||||
font.setFamily("黑体")
|
||||
font.setPointSize(14)
|
||||
self.pushButton_outputLabel.setFont(font)
|
||||
self.pushButton_outputLabel.setObjectName("pushButton_outputLabel")
|
||||
self.verticalLayout_left.addWidget(self.pushButton_outputLabel)
|
||||
self.verticalLayout_left.setStretch(0, 10)
|
||||
self.verticalLayout_left.setStretch(1, 2)
|
||||
self.verticalLayout_left.setStretch(2, 6)
|
||||
self.verticalLayout_left.setStretch(3, 2)
|
||||
self.verticalLayout_left.setStretch(6, 2)
|
||||
self.horizontalLayout.addLayout(self.verticalLayout_left)
|
||||
self.gridLayout_left.addItem(spacerItem11, 3, 0, 1, 2)
|
||||
self.gridLayout_left.setRowStretch(0, 10)
|
||||
self.gridLayout_left.setRowStretch(1, 2)
|
||||
self.gridLayout_left.setRowStretch(2, 6)
|
||||
self.gridLayout_left.setRowStretch(3, 2)
|
||||
self.gridLayout_left.setRowStretch(6, 2)
|
||||
self.horizontalLayout.addLayout(self.gridLayout_left)
|
||||
self.verticalLayout_canvas = QtWidgets.QVBoxLayout()
|
||||
self.verticalLayout_canvas.setObjectName("verticalLayout_canvas")
|
||||
self.horizontalLayout.addLayout(self.verticalLayout_canvas)
|
||||
@ -1136,6 +1148,8 @@ class Ui_MainWindow(object):
|
||||
def retranslateUi(self, MainWindow):
|
||||
_translate = QtCore.QCoreApplication.translate
|
||||
MainWindow.setWindowTitle(_translate("MainWindow", "ECG_Label_Check"))
|
||||
self.pushButton_outputLabel.setText(_translate("MainWindow", "导出标签"))
|
||||
self.pushButton_append.setText(_translate("MainWindow", "片段合并"))
|
||||
self.groupBox_inputSetting.setTitle(_translate("MainWindow", "导入操作"))
|
||||
self.lineEdit_rootpath.setPlaceholderText(_translate("MainWindow", "数据根目录路径"))
|
||||
self.label_choose.setText(_translate("MainWindow", "数据和标签的序号选择:"))
|
||||
@ -1211,7 +1225,6 @@ class Ui_MainWindow(object):
|
||||
self.label_5.setText(_translate("MainWindow", "最小间隔:"))
|
||||
self.lineEdit_findpeaks_min_interval.setText(_translate("MainWindow", "1000"))
|
||||
self.lineEdit_findpeaks_min_height.setText(_translate("MainWindow", "0.5"))
|
||||
self.pushButton_outputLabel.setText(_translate("MainWindow", "导出标签"))
|
||||
self.groupBox_labelDisplay.setTitle(_translate("MainWindow", "标签"))
|
||||
self.groupBox_info.setTitle(_translate("MainWindow", "信息"))
|
||||
self.label_label2_length.setText(_translate("MainWindow", "0"))
|
||||
|
113
MainWindow.ui
113
MainWindow.ui
@ -18,8 +18,46 @@
|
||||
<item row="0" column="0" rowspan="3" colspan="2">
|
||||
<layout class="QHBoxLayout" name="horizontalLayout" stretch="5,20,3">
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_left" stretch="10,2,6,2,0,0,2">
|
||||
<item>
|
||||
<layout class="QGridLayout" name="gridLayout_left" rowstretch="10,2,6,2,0,0,2">
|
||||
<item row="6" column="1">
|
||||
<widget class="QPushButton" name="pushButton_outputLabel">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Minimum" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>黑体</family>
|
||||
<pointsize>14</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>导出标签</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="6" column="0">
|
||||
<widget class="QPushButton" name="pushButton_append">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Minimum" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>黑体</family>
|
||||
<pointsize>14</pointsize>
|
||||
</font>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>片段合并</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="0" colspan="2">
|
||||
<widget class="QGroupBox" name="groupBox_inputSetting">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
|
||||
@ -849,20 +887,7 @@
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="verticalSpacer_4">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<item row="2" column="0" colspan="2">
|
||||
<widget class="QGroupBox" name="groupBox_autoplay">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
|
||||
@ -1444,20 +1469,7 @@
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="verticalSpacer_6">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<item row="4" column="0" colspan="2">
|
||||
<widget class="QGroupBox" name="groupBox_findpeaks_options">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
|
||||
@ -1560,7 +1572,20 @@
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<item row="1" column="0" colspan="2">
|
||||
<spacer name="verticalSpacer_4">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item row="5" column="0" colspan="2">
|
||||
<spacer name="verticalSpacer_5">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
@ -1573,24 +1598,18 @@
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="pushButton_outputLabel">
|
||||
<property name="sizePolicy">
|
||||
<sizepolicy hsizetype="Minimum" vsizetype="Preferred">
|
||||
<horstretch>0</horstretch>
|
||||
<verstretch>0</verstretch>
|
||||
</sizepolicy>
|
||||
<item row="3" column="0" colspan="2">
|
||||
<spacer name="verticalSpacer_6">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Vertical</enum>
|
||||
</property>
|
||||
<property name="font">
|
||||
<font>
|
||||
<family>黑体</family>
|
||||
<pointsize>14</pointsize>
|
||||
</font>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>40</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>导出标签</string>
|
||||
</property>
|
||||
</widget>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
|
@ -113,6 +113,7 @@ class MainWindow(QMainWindow, Ui_MainWindow):
|
||||
self.pushButton_label1path_open.clicked.connect(self.slot_btn_selectPath)
|
||||
self.pushButton_label2path_open.clicked.connect(self.slot_btn_selectPath)
|
||||
self.pushButton_dataInput.clicked.connect(self.slot_btn_dataInput)
|
||||
self.pushButton_append.clicked.connect(self.slot_btn_append)
|
||||
self.pushButton_outputLabel.clicked.connect(self.slot_btn_outputLabel)
|
||||
self.comboBox_choose.currentTextChanged.connect(self.slot_comboBox_textChanged)
|
||||
self.radioButton_inputMode_auto.clicked.connect(self.slot_radioBtn_inputMode_auto)
|
||||
@ -152,6 +153,7 @@ class MainWindow(QMainWindow, Ui_MainWindow):
|
||||
self.radioButton_data1_fillterMode.setChecked(True)
|
||||
self.radioButton_data2_fillterMode.setChecked(True)
|
||||
self.radioButton_move_preset_1.setChecked(True)
|
||||
self.pushButton_append.setEnabled(False)
|
||||
self.pushButton_outputLabel.setEnabled(False)
|
||||
self.figToolbar.action_Label_Single.setEnabled(False)
|
||||
self.figToolbar.action_Label_Multiple.setEnabled(False)
|
||||
@ -360,6 +362,7 @@ class MainWindow(QMainWindow, Ui_MainWindow):
|
||||
# 更新界面
|
||||
self.groupBox_inputSetting.setEnabled(False)
|
||||
self.groupBox_autoplay.setEnabled(True)
|
||||
self.pushButton_append.setEnabled(True)
|
||||
self.pushButton_outputLabel.setEnabled(True)
|
||||
self.figToolbar.action_Label_Single.setEnabled(True)
|
||||
self.figToolbar.action_Label_Multiple.setEnabled(True)
|
||||
@ -570,6 +573,24 @@ class MainWindow(QMainWindow, Ui_MainWindow):
|
||||
info(f"Jumped to x_axis: {str(int(x))}.")
|
||||
self.textBrowser_update(f"操作:跳转到x坐标: {str(int(x))}")
|
||||
|
||||
def slot_btn_append(self):
|
||||
# TODO
|
||||
reply = QMessageBox.question(self, "警告:确认操作", f"你正在执行<片段合并>,请确保需要被合并的片段已完成标注工作。你确定要将片段合并,并将结果保存到{self.lineEdit_resample1000Hz_save_path.text()}?", QMessageBox.Yes | QMessageBox.No, QMessageBox.No)
|
||||
if reply == QMessageBox.Yes:
|
||||
for idx in range(len(self.ecg_seq)):
|
||||
DataFrame(self.ecg_seq[idx].reshape(-1)).to_csv(
|
||||
str(Path(self.lineEdit_detect_Rpeaks_save_path.text()) / f"{idx + 1}ecg.txt"), index=False,
|
||||
header=None)
|
||||
DataFrame(self.R_peak_seq[idx].reshape(-1)).to_csv(
|
||||
str(Path(self.lineEdit_detect_Rpeaks_save_path.text()) / f"{idx + 1}Rpeak.txt"), index=False,
|
||||
header=None)
|
||||
info(f"Saved Data {idx + 1} to Directory {self.lineEdit_detect_Rpeaks_save_path.text()}.")
|
||||
self.textBrowser_update(
|
||||
f"提示:保存片段{idx + 1}成功至文件夹{self.lineEdit_detect_Rpeaks_save_path.text()}")
|
||||
self.msgBox.setText(f"保存成功至{self.lineEdit_detect_Rpeaks_save_path.text()}")
|
||||
self.msgBox.setIcon(QMessageBox.Information)
|
||||
self.msgBox.exec()
|
||||
|
||||
def slot_btn_outputLabel(self):
|
||||
np.savetxt(Path(self.lineEdit_savepath.text()), self.label2, fmt='%d', newline='\n')
|
||||
info(f"Manually Saved Data to: {str(Path(self.lineEdit_savepath.text()))}.")
|
||||
|
Loading…
Reference in New Issue
Block a user