Программа для обработки данных УИТД. На данный момент она может обработать данные рефлектометра и анализатора.
Необходимо иметь Python версии 3.12 и выше.
-
Первое, что мы делаем это устанавливем poetry
pip install poetry -
После чего клонируем проект
git clone https://github.com/fosghen/process-uidt.gitcd process-uidt -
Устанавливаем необходимые зависимости
poetry install -
Собираем проект
poetry build -
Устаналвием его на ПК
pip install dist/process_uidt<...>.whl
Чтобы запустить обработку данных, следует прописать в командной строке process-uidt. В таком случае программа обработает все файлы в директории командной строки.
Аргументы командной строки
--path это путь до папки с файлами УИДТ, там же будут сохраняться результаты. Если не задано, то используется директория командной строки
--params это путь до файла с параметрами обработки, если он не указан, то будет искаться в папке из --path. Если файла не будет, то создастся шаблон
--monitor это флаг работы программы в режиме мониторинга, то есть программа следит за появлением новых файлов в --path. Чтобы завершить мониторинг нужно нажать Ctrl + C, после этого будет выполнено сохранение результатов обработки.
Примеры запуска:
- Обработка всех файлов в текущей директории:
process-uidt - Обработка файлов в указанной папке:
process-uidt --path ./dir1 - Обработка с указанием файла параметров:
process-uidt --path ./dir1 --params ./dir2/params1.yaml - Запуск в режиме мониторинга:
process-uidt --path ./dir1 --monitor true
Запуск process-uidt идентичен process-uidt --path . --params ./params.yaml --monitor false
params.yaml
inv: "auto" # инвертирование данных "auto" / True / False
point_start: 0 # начало обработки данных в метрах
point_end: 5000 # конец обработки данных в метрах
point_cut: 1500 # точка линии в метрах, на которой смотрим срез частот
freq_cut: 10800 # частота в МГц, на которой срез рефлектограммы
num_pts_norm: 20 # количество точек, по которым выполняется нормировка
data_type: "analyze" # тип данных рефлектометр или анализатор "refl" / "analyze"
max_std: 20 # верхняя граница графика СКО
transparency: 0.6 # прозрачность графика пиков, которые мы определили