List of pre-processed data files are added in Signal pre-processing tab.
parent
2390b5c524
commit
e0130b07fe
|
|
@ -1450,14 +1450,15 @@ class AcousticDataTab(QWidget):
|
||||||
# stg.filename_BS_raw_data = name
|
# stg.filename_BS_raw_data = name
|
||||||
# self.load_BS_acoustic_raw_data()
|
# self.load_BS_acoustic_raw_data()
|
||||||
try:
|
try:
|
||||||
if self.fileListWidget.count() == 0:
|
# if self.fileListWidget.count() == 0:
|
||||||
stg.path_BS_raw_data = [dir_name]
|
# stg.path_BS_raw_data = [dir_name]
|
||||||
stg.filename_BS_raw_data = [name]
|
# stg.filename_BS_raw_data = [name]
|
||||||
print(f"0 dir name : {dir_name} & file name : {name}")
|
# print(f"0 dir name : {dir_name} & file name : {name}")
|
||||||
else:
|
# else:
|
||||||
stg.path_BS_raw_data.append(dir_name)
|
stg.path_BS_raw_data.append(dir_name)
|
||||||
stg.filename_BS_raw_data.append(name)
|
stg.filename_BS_raw_data.append(name)
|
||||||
print(f"1 dir name : {dir_name} & file name : {name}")
|
stg.data_preprocessed.append(name)
|
||||||
|
print(f"1 dir name : {dir_name} & file name : {name}")
|
||||||
self.load_BS_acoustic_raw_data()
|
self.load_BS_acoustic_raw_data()
|
||||||
print("0 Lecture de la donnée BS")
|
print("0 Lecture de la donnée BS")
|
||||||
except ValueError as e:
|
except ValueError as e:
|
||||||
|
|
|
||||||
|
|
@ -2,8 +2,8 @@ import sys
|
||||||
|
|
||||||
from PyQt5.QtWidgets import (QWidget, QHBoxLayout, QVBoxLayout, QPushButton, QGroupBox, QLabel, QCheckBox,
|
from PyQt5.QtWidgets import (QWidget, QHBoxLayout, QVBoxLayout, QPushButton, QGroupBox, QLabel, QCheckBox,
|
||||||
QSpinBox, QDoubleSpinBox, QComboBox, QLineEdit, QSlider, QGridLayout, QMessageBox,
|
QSpinBox, QDoubleSpinBox, QComboBox, QLineEdit, QSlider, QGridLayout, QMessageBox,
|
||||||
QScrollArea, QRadioButton, QFileDialog, QSpacerItem, QSizePolicy, QTextEdit)
|
QScrollArea, QRadioButton, QFileDialog, QSpacerItem, QSizePolicy, QTextEdit, QPlainTextEdit)
|
||||||
from PyQt5.QtGui import QFont, QIcon, QPixmap
|
from PyQt5.QtGui import QFont, QIcon, QPixmap, QSyntaxHighlighter, QTextCharFormat
|
||||||
from PyQt5.QtCore import Qt, QCoreApplication, QEvent, pyqtSignal
|
from PyQt5.QtCore import Qt, QCoreApplication, QEvent, pyqtSignal
|
||||||
|
|
||||||
import numpy as np
|
import numpy as np
|
||||||
|
|
@ -28,6 +28,32 @@ import settings as stg
|
||||||
_translate = QCoreApplication.translate
|
_translate = QCoreApplication.translate
|
||||||
|
|
||||||
|
|
||||||
|
class SyntaxHighlighter(QSyntaxHighlighter):
|
||||||
|
def __init__(self, parent):
|
||||||
|
super(SyntaxHighlighter, self).__init__(parent)
|
||||||
|
self._highlight_lines = dict()
|
||||||
|
|
||||||
|
def highlight_line(self, line, fmt):
|
||||||
|
if isinstance(line, int) and line >= 0 and isinstance(fmt, QTextCharFormat):
|
||||||
|
self._highlight_lines[line] = fmt
|
||||||
|
tb = self.document().findBlockByLineNumber(line)
|
||||||
|
self.rehighlightBlock(tb)
|
||||||
|
print("self._highlight_lines ", self._highlight_lines[line])
|
||||||
|
print("tb", tb)
|
||||||
|
print("self.rehighlightBlock(tb) ", self.rehighlightBlock(tb))
|
||||||
|
|
||||||
|
def clear_highlight(self):
|
||||||
|
self._highlight_lines = dict()
|
||||||
|
self.rehighlight()
|
||||||
|
print("self._highlight_lines ", self._highlight_lines)
|
||||||
|
|
||||||
|
def highlightBlock(self, text):
|
||||||
|
line = self.currentBlock().blockNumber()
|
||||||
|
fmt = self._highlight_lines.get(line)
|
||||||
|
if fmt is not None:
|
||||||
|
self.setFormat(0, len(text), fmt)
|
||||||
|
|
||||||
|
|
||||||
class SignalProcessingTab(QWidget):
|
class SignalProcessingTab(QWidget):
|
||||||
|
|
||||||
''' This class generates the Signal Processing Tab '''
|
''' This class generates the Signal Processing Tab '''
|
||||||
|
|
@ -398,8 +424,10 @@ class SignalProcessingTab(QWidget):
|
||||||
|
|
||||||
self.verticalLayout_list_pre_processed_data = QVBoxLayout(self.groupbox_list_pre_processed_data)
|
self.verticalLayout_list_pre_processed_data = QVBoxLayout(self.groupbox_list_pre_processed_data)
|
||||||
|
|
||||||
self.textEdit_list_pre_processed_data = QTextEdit()
|
self.plaintextedit_list_pre_processed_data = QPlainTextEdit()
|
||||||
self.verticalLayout_list_pre_processed_data.addWidget(self.textEdit_list_pre_processed_data)
|
self.verticalLayout_list_pre_processed_data.addWidget(self.plaintextedit_list_pre_processed_data)
|
||||||
|
|
||||||
|
# self.plaintextedit_list_pre_processed_data.appendPlainText("blablabla \nblobloblo")
|
||||||
|
|
||||||
# --------------------------------------------------------------------------------------------------------------
|
# --------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
@ -438,7 +466,6 @@ class SignalProcessingTab(QWidget):
|
||||||
self.slider.valueChanged.connect(self.update_lineEdit_by_moving_slider)
|
self.slider.valueChanged.connect(self.update_lineEdit_by_moving_slider)
|
||||||
self.slider.valueChanged.connect(self.plot_profile_and_position_on_transect_with_slider)
|
self.slider.valueChanged.connect(self.plot_profile_and_position_on_transect_with_slider)
|
||||||
|
|
||||||
|
|
||||||
# ______ _______
|
# ______ _______
|
||||||
# | | | | \
|
# | | | | \
|
||||||
# | | | | \
|
# | | | | \
|
||||||
|
|
@ -1108,68 +1135,93 @@ class SignalProcessingTab(QWidget):
|
||||||
# self.combobox_fileListWidget.setCurrentIndex(0)
|
# self.combobox_fileListWidget.setCurrentIndex(0)
|
||||||
# self.combobox_fileListWidget.currentIndexChanged.connect(self.combobox_fileListWidget_change_index)
|
# self.combobox_fileListWidget.currentIndexChanged.connect(self.combobox_fileListWidget_change_index)
|
||||||
|
|
||||||
|
self.plaintextedit_list_pre_processed_data.clear()
|
||||||
|
for t in range(self.combobox_fileListWidget.count()):
|
||||||
|
self.plaintextedit_list_pre_processed_data.appendPlainText(stg.filename_BS_raw_data[t] + "\n")
|
||||||
|
|
||||||
|
self.plaintextedit_list_pre_processed_data.textChanged.connect(self.rename_data_preprocessed)
|
||||||
|
|
||||||
# if self.combobox_fileListWidget.count() > 0:
|
# if self.combobox_fileListWidget.count() > 0:
|
||||||
# for c in range(self.combobox_frequency_profile.count()):
|
# for c in range(self.combobox_frequency_profile.count()):
|
||||||
#
|
#
|
||||||
# if stg.SNR_stream_bed[c].shape != (0,):
|
# if (stg.SNR_stream_bed[c].shape != (0,)) and (stg.SNR_stream_bed[c] != stg.BS_stream_bed[c]):
|
||||||
#
|
#
|
||||||
# if stg.SNR_stream_bed[c] != stg.BS_stream_bed[c]:
|
# # --- Case where the user change limits of BS_stream_bed or BS_cross_section in Acoustic data tab ---
|
||||||
|
# stg.SNR_stream_bed[c] = (
|
||||||
|
# stg.SNR_stream_bed[c][:, :stg.BS_stream_bed[c].shape[1], :stg.BS_stream_bed[c].shape[2]])
|
||||||
|
#
|
||||||
|
# # --- Case where user change limits of BS_raw_data so that BS_cross_section is computed ---
|
||||||
|
# # else:
|
||||||
|
# #
|
||||||
|
# # if stg.noise_method[c] == 1:
|
||||||
|
# # self.load_noise_data_and_compute_SNR()
|
||||||
|
# # elif stg.noise_method[c] == 2:
|
||||||
|
# # pass
|
||||||
|
# # elif stg.noise_method[c] == 3:
|
||||||
|
# # self.compute_noise_from_value()
|
||||||
#
|
#
|
||||||
# if stg.SNR_stream_bed[c].shape != (0,):
|
|
||||||
# stg.SNR_stream_bed[c] = (
|
|
||||||
# stg.SNR_stream_bed[c][:, stg.BS_stream_bed[c].shape[1], stg.BS_stream_bed[c].shape[2]])
|
|
||||||
# else:
|
|
||||||
# pass
|
|
||||||
# # continuer ici en calculant SNR_stream_bed si on a travailler avec raw data et qu'on revient sur le 1er onglet
|
# # continuer ici en calculant SNR_stream_bed si on a travailler avec raw data et qu'on revient sur le 1er onglet
|
||||||
# # pour couper ou rajouter la detection du fond. Du coup, il faudra recalculer le SNR stream bed ou cross section
|
# # pour couper ou rajouter la detection du fond. Du coup, il faudra recalculer le SNR stream bed ou cross section
|
||||||
#
|
#
|
||||||
# stg.BS_stream_bed_pre_process_SNR[c] = (
|
# stg.BS_stream_bed_pre_process_SNR[c] = (
|
||||||
# stg.SNR_stream_bed[c][:, stg.BS_stream_bed[c].shape[1], stg.BS_stream_bed[c].shape[2]])
|
# stg.SNR_stream_bed[c][:, :stg.BS_stream_bed[c].shape[1], :stg.BS_stream_bed[c].shape[2]])
|
||||||
#
|
#
|
||||||
# if stg.BS_stream_bed_pre_process_SNR_average[c].shape != (0,):
|
# if stg.BS_stream_bed_pre_process_SNR_average[c].shape != (0,):
|
||||||
# stg.BS_stream_bed_pre_process_SNR_average[c] = (
|
# stg.BS_stream_bed_pre_process_SNR_average[c] = (
|
||||||
# stg.BS_stream_bed_pre_process_SNR_average[c][:, stg.BS_stream_bed[c].shape[1],stg.BS_stream_bed[c].shape[2]])
|
# stg.BS_stream_bed_pre_process_SNR_average[c][:, :stg.BS_stream_bed[c].shape[1], :stg.BS_stream_bed[c].shape[2]])
|
||||||
#
|
#
|
||||||
# elif stg.BS_stream_bed_pre_process_average[c].shape != (0,):
|
# elif stg.BS_stream_bed_pre_process_average[c].shape != (0,):
|
||||||
# stg.BS_stream_bed_pre_process_average[c] = (
|
# stg.BS_stream_bed_pre_process_average[c] = (
|
||||||
# stg.BS_stream_bed_pre_process_average[c][:, stg.BS_stream_bed[c].shape[1],stg.BS_stream_bed[c].shape[2]])
|
# stg.BS_stream_bed_pre_process_average[c][:, :stg.BS_stream_bed[c].shape[1], :stg.BS_stream_bed[c].shape[2]])
|
||||||
#
|
#
|
||||||
|
# elif (stg.BS_cross_section[c].shape != (0,)) and (stg.SNR_cross_section[c] != stg.BS_cross_section[c]):
|
||||||
#
|
#
|
||||||
# elif stg.BS_cross_section[c].shape != (0,):
|
# # if stg.SNR_cross_section[c] != stg.BS_cross_section[c]:
|
||||||
#
|
#
|
||||||
# if stg.SNR_cross_section[c] != stg.BS_cross_section[c]:
|
# stg.SNR_cross_section[c] = (
|
||||||
#
|
|
||||||
# stg.SNR_cross_section[c] = (
|
|
||||||
# stg.SNR_cross_section[c][:, stg.BS_cross_section[c].shape[1], stg.BS_cross_section[c].shape[2]])
|
# stg.SNR_cross_section[c][:, stg.BS_cross_section[c].shape[1], stg.BS_cross_section[c].shape[2]])
|
||||||
#
|
#
|
||||||
# stg.BS_cross_section_pre_process_SNR[c] = (
|
# stg.BS_cross_section_pre_process_SNR[c] = (
|
||||||
# stg.SNR_cross_section[c][:, stg.BS_cross_section[c].shape[1], stg.BS_cross_section[c].shape[2]])
|
# stg.SNR_cross_section[c][:, stg.BS_cross_section[c].shape[1], stg.BS_cross_section[c].shape[2]])
|
||||||
#
|
#
|
||||||
# if stg.BS_cross_section_pre_process_SNR_average[c].shape != (0,):
|
# if stg.BS_cross_section_pre_process_SNR_average[c].shape != (0,):
|
||||||
# stg.BS_cross_section_pre_process_SNR_average[c] = (
|
# stg.BS_cross_section_pre_process_SNR_average[c] = (
|
||||||
# stg.BS_cross_section_pre_process_SNR_average[c][:, stg.BS_cross_section[c].shape[1],stg.BS_cross_section[c].shape[2]])
|
# stg.BS_cross_section_pre_process_SNR_average[c][:, stg.BS_cross_section[c].shape[1],stg.BS_cross_section[c].shape[2]])
|
||||||
#
|
#
|
||||||
# elif stg.BS_cross_section_pre_process_average[c].shape != (0,):
|
# elif stg.BS_cross_section_pre_process_average[c].shape != (0,):
|
||||||
# stg.BS_cross_section_pre_process_average[c] = (
|
# stg.BS_cross_section_pre_process_average[c] = (
|
||||||
# stg.BS_cross_section_pre_process_average[c][:, stg.BS_cross_section[c].shape[1],stg.BS_cross_section[c].shape[2]])
|
# stg.BS_cross_section_pre_process_average[c][:, stg.BS_cross_section[c].shape[1],stg.BS_cross_section[c].shape[2]])
|
||||||
#
|
#
|
||||||
# elif stg.BS_raw_data[c].shape != (0,):
|
# self.plot_transect_with_SNR_data()
|
||||||
#
|
|
||||||
# if stg.SNR_cross_section[c] != stg.BS_cross_section[c]:
|
# else:
|
||||||
#
|
#
|
||||||
# stg.SNR_cross_section[c] = (
|
# if stg.SNR_cross_section[c] != stg.BS_cross_section[c]:
|
||||||
# stg.SNR_cross_section[c][:, stg.BS_cross_section[c].shape[1], stg.BS_cross_section[c].shape[2]])
|
#
|
||||||
#
|
# stg.SNR_cross_section[c] = (
|
||||||
# stg.BS_cross_section_pre_process_SNR[c] = (
|
# stg.SNR_cross_section[c][:, stg.BS_cross_section[c].shape[1], stg.BS_cross_section[c].shape[2]])
|
||||||
# stg.SNR_cross_section[c][:, stg.BS_cross_section[c].shape[1], stg.BS_cross_section[c].shape[2]])
|
#
|
||||||
#
|
# stg.BS_cross_section_pre_process_SNR[c] = (
|
||||||
# if stg.BS_cross_section_pre_process_SNR_average[c].shape != (0,):
|
# stg.SNR_cross_section[c][:, stg.BS_cross_section[c].shape[1], stg.BS_cross_section[c].shape[2]])
|
||||||
# stg.BS_cross_section_pre_process_SNR_average[c] = (
|
#
|
||||||
# stg.BS_cross_section_pre_process_SNR_average[c][:, stg.BS_cross_section[c].shape[1],stg.BS_cross_section[c].shape[2]])
|
# if stg.BS_cross_section_pre_process_SNR_average[c].shape != (0,):
|
||||||
#
|
# stg.BS_cross_section_pre_process_SNR_average[c] = (
|
||||||
# elif stg.BS_cross_section_pre_process_average[c].shape != (0,):
|
# stg.BS_cross_section_pre_process_SNR_average[c][:, stg.BS_cross_section[c].shape[1],stg.BS_cross_section[c].shape[2]])
|
||||||
# stg.BS_cross_section_pre_process_average[c] = (
|
#
|
||||||
# stg.BS_cross_section_pre_process_average[c][:, stg.BS_cross_section[c].shape[1],stg.BS_cross_section[c].shape[2]])
|
# elif stg.BS_cross_section_pre_process_average[c].shape != (0,):
|
||||||
|
# stg.BS_cross_section_pre_process_average[c] = (
|
||||||
|
# stg.BS_cross_section_pre_process_average[c][:, stg.BS_cross_section[c].shape[1],stg.BS_cross_section[c].shape[2]])
|
||||||
|
|
||||||
|
def rename_data_preprocessed(self):
|
||||||
|
print("stg.data_preprocessed ", stg.data_preprocessed)
|
||||||
|
print("QPlainTextEdit.textCursor().blockNumber() ", QPlainTextEdit.textCursor(self.plaintextedit_list_pre_processed_data).blockNumber())
|
||||||
|
line_number = int(QPlainTextEdit.textCursor(self.plaintextedit_list_pre_processed_data).blockNumber()/2)
|
||||||
|
stg.data_preprocessed[line_number] = (
|
||||||
|
QPlainTextEdit.textCursor(self.plaintextedit_list_pre_processed_data).blockNumber()/2)
|
||||||
|
print("stg.data_preprocessed ", stg.data_preprocessed)
|
||||||
|
line = QPlainTextEdit.textCursor(self.plaintextedit_list_pre_processed_data).blockNumber()
|
||||||
|
print(self.plaintextedit_list_pre_processed_data.setTextCursor(QPlainTextEdit.textCursor(self.plaintextedit_list_pre_processed_data)))
|
||||||
|
# textCursor().currentList().itemText(line)
|
||||||
|
|
||||||
|
|
||||||
def combobox_fileListWidget_change_index(self):
|
def combobox_fileListWidget_change_index(self):
|
||||||
|
|
@ -1346,6 +1398,7 @@ class SignalProcessingTab(QWidget):
|
||||||
|
|
||||||
stg.noise_method[self.combobox_fileListWidget.currentIndex()] = 1
|
stg.noise_method[self.combobox_fileListWidget.currentIndex()] = 1
|
||||||
|
|
||||||
|
|
||||||
def load_noise_data_and_compute_SNR(self):
|
def load_noise_data_and_compute_SNR(self):
|
||||||
|
|
||||||
stg.noise_method[self.combobox_fileListWidget.currentIndex()] = 1
|
stg.noise_method[self.combobox_fileListWidget.currentIndex()] = 1
|
||||||
|
|
|
||||||
|
|
@ -26,6 +26,7 @@ noise_method = []
|
||||||
noise_value = []
|
noise_value = []
|
||||||
SNR_filter_value = []
|
SNR_filter_value = []
|
||||||
Nb_cells_to_average_BS_signal = []
|
Nb_cells_to_average_BS_signal = []
|
||||||
|
data_preprocessed = []
|
||||||
|
|
||||||
date = []
|
date = []
|
||||||
date_noise = []
|
date_noise = []
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue