Merge branch 'master' into cxh_dev
This commit is contained in:
@ -958,7 +958,7 @@ class MainWindow_approximately_align(QMainWindow):
|
|||||||
# 绘制间期
|
# 绘制间期
|
||||||
ax4 = self.fig.add_subplot(322)
|
ax4 = self.fig.add_subplot(322)
|
||||||
ax4.plot(linspace(PSG_SP, PSG_EP, len(diff(tho_peaks).repeat(Config["ApplyFrequency"]))),
|
ax4.plot(linspace(PSG_SP, PSG_EP, len(diff(tho_peaks).repeat(Config["ApplyFrequency"]))),
|
||||||
diff(tho_peaks).repeat(Config["ApplyFrequency"]), alpha=0.5, label="tho")
|
diff(tho_peaks).repeat(Config["ApplyFrequency"]), label="tho")
|
||||||
ax4.plot(linspace(PSG_SP, PSG_EP, len(diff(orgBcg_peaks).repeat(Config["ApplyFrequency"]))),
|
ax4.plot(linspace(PSG_SP, PSG_EP, len(diff(orgBcg_peaks).repeat(Config["ApplyFrequency"]))),
|
||||||
diff(orgBcg_peaks).repeat(Config["ApplyFrequency"]), label="resp")
|
diff(orgBcg_peaks).repeat(Config["ApplyFrequency"]), label="resp")
|
||||||
ax4.set_title("tho_interval")
|
ax4.set_title("tho_interval")
|
||||||
@ -967,18 +967,20 @@ class MainWindow_approximately_align(QMainWindow):
|
|||||||
|
|
||||||
ax5 = self.fig.add_subplot(324)
|
ax5 = self.fig.add_subplot(324)
|
||||||
ax5.plot(linspace(orgBcg_SP, orgBcg_EP, len(diff(tho_peaks).repeat(Config["ApplyFrequency"]))),
|
ax5.plot(linspace(orgBcg_SP, orgBcg_EP, len(diff(tho_peaks).repeat(Config["ApplyFrequency"]))),
|
||||||
diff(tho_peaks).repeat(Config["ApplyFrequency"]))
|
diff(tho_peaks).repeat(Config["ApplyFrequency"]), label="tho")
|
||||||
ax5.plot(linspace(orgBcg_SP, orgBcg_EP, len(diff(orgBcg_peaks).repeat(Config["ApplyFrequency"]))),
|
ax5.plot(linspace(orgBcg_SP, orgBcg_EP, len(diff(orgBcg_peaks).repeat(Config["ApplyFrequency"]))),
|
||||||
diff(orgBcg_peaks).repeat(Config["ApplyFrequency"]), label="resp")
|
diff(orgBcg_peaks).repeat(Config["ApplyFrequency"]), label="resp")
|
||||||
ax5.set_title("resp_interval")
|
ax5.set_title("resp_interval")
|
||||||
|
ax5.legend()
|
||||||
ax5.set_ylim((10, 50))
|
ax5.set_ylim((10, 50))
|
||||||
|
|
||||||
ax6 = self.fig.add_subplot(326)
|
ax6 = self.fig.add_subplot(326)
|
||||||
ax6.plot(linspace(PSG_SP, PSG_EP, len(diff(abd_peaks).repeat(Config["ApplyFrequency"]))),
|
ax6.plot(linspace(PSG_SP, PSG_EP, len(diff(abd_peaks).repeat(Config["ApplyFrequency"]))),
|
||||||
diff(abd_peaks).repeat(Config["ApplyFrequency"]))
|
diff(abd_peaks).repeat(Config["ApplyFrequency"]), label="abd")
|
||||||
ax6.plot(linspace(PSG_SP, PSG_EP, len(diff(orgBcg_peaks).repeat(Config["ApplyFrequency"]))),
|
ax6.plot(linspace(PSG_SP, PSG_EP, len(diff(orgBcg_peaks).repeat(Config["ApplyFrequency"]))),
|
||||||
diff(orgBcg_peaks).repeat(Config["ApplyFrequency"]), label="resp")
|
diff(orgBcg_peaks).repeat(Config["ApplyFrequency"]), label="resp")
|
||||||
ax6.set_title("abd_interval")
|
ax6.set_title("abd_interval")
|
||||||
|
ax6.legend()
|
||||||
ax6.set_ylim((10, 50))
|
ax6.set_ylim((10, 50))
|
||||||
|
|
||||||
self.fig.canvas.draw()
|
self.fig.canvas.draw()
|
||||||
@ -1114,6 +1116,9 @@ class Data:
|
|||||||
int(Config["orgBcg_seconds"] * Config["ApplyFrequency"]))
|
int(Config["orgBcg_seconds"] * Config["ApplyFrequency"]))
|
||||||
self.processed_Tho = resample(self.raw_Tho, int(Config["PSG_seconds"] * Config["ApplyFrequency"]))
|
self.processed_Tho = resample(self.raw_Tho, int(Config["PSG_seconds"] * Config["ApplyFrequency"]))
|
||||||
self.processed_Abd = resample(self.raw_Abd, int(Config["PSG_seconds"] * Config["ApplyFrequency"]))
|
self.processed_Abd = resample(self.raw_Abd, int(Config["PSG_seconds"] * Config["ApplyFrequency"]))
|
||||||
|
self.processed_downsample_orgBcg = self.processed_orgBcg.copy()
|
||||||
|
self.processed_downsample_Tho = self.processed_Tho.copy()
|
||||||
|
self.processed_downsample_Abd = self.processed_Abd.copy()
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
return Result().failure(
|
return Result().failure(
|
||||||
info=Constants.APPROXIMATELY_ONLY_ALIGN_RESAMPLE_FAILURE + Constants.FAILURE_REASON[
|
info=Constants.APPROXIMATELY_ONLY_ALIGN_RESAMPLE_FAILURE + Constants.FAILURE_REASON[
|
||||||
@ -1305,9 +1310,10 @@ class Data:
|
|||||||
def get_epoch(self):
|
def get_epoch(self):
|
||||||
# 获取epoch
|
# 获取epoch
|
||||||
try:
|
try:
|
||||||
epoch_min = max(0, Config["pos"] // 30 // Config["ApplyFrequency"] + 1)
|
epoch_second = Params.APPROXIMATELY_ALIGN_CONFIG_NEW_CONTENT["Second_PerEpoch"]
|
||||||
epoch_max = min(len(self.processed_downsample_Tho) // 30 // Config["ApplyFrequency"] - 1,
|
epoch_min = max(0, Config["pos"] // epoch_second // Config["ApplyFrequency"] + 1)
|
||||||
(len(self.processed_downsample_orgBcg) + Config["pos"]) // 30 // Config[
|
epoch_max = min(len(self.processed_downsample_Tho) // epoch_second // Config["ApplyFrequency"] - 1,
|
||||||
|
(len(self.processed_downsample_orgBcg) + Config["pos"]) // epoch_second // Config[
|
||||||
"ApplyFrequency"] - 1)
|
"ApplyFrequency"] - 1)
|
||||||
|
|
||||||
result = {"epoch_min": epoch_min, "epoch_max": epoch_max}
|
result = {"epoch_min": epoch_min, "epoch_max": epoch_max}
|
||||||
|
|||||||
@ -274,7 +274,7 @@ class Data:
|
|||||||
# 转换切割点
|
# 转换切割点
|
||||||
ECG_freq = Config["ECGFreq"]
|
ECG_freq = Config["ECGFreq"]
|
||||||
raw_freq = self.freq[key]
|
raw_freq = self.freq[key]
|
||||||
duration_second = ((self.alignInfo["cut_index"]["back_ECG"] - self.alignInfo["cut_index"]["front_ECG"]) // 1000) + 1
|
duration_second = ((self.alignInfo["cut_index"]["back_ECG"] - self.alignInfo["cut_index"]["front_ECG"]) // ECG_freq) + 1
|
||||||
start_index_cut = floor(self.alignInfo["cut_index"]["front_ECG"] * (raw_freq / ECG_freq))
|
start_index_cut = floor(self.alignInfo["cut_index"]["front_ECG"] * (raw_freq / ECG_freq))
|
||||||
end_index_cut = start_index_cut + (duration_second * raw_freq)
|
end_index_cut = start_index_cut + (duration_second * raw_freq)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user