collecting HF ALL.txt files for hinted decoding database
Коллеги, поделитесь пожалуйста своими файлами ALL.TXT записанными на КВ, мне только личным сообщением, буду создавать новую базу КВ позывных + грид (файл CALL3.TXT) для использования в режиме согласованной фильтрации в ревизии r6462mod14.
r6462mod14 source code released for public access
Source code, patch file, release notes, HF CALL3.txt, test results and various UI options are published there:
Исходный код, патч файл, Release notes, КВ файл CALL3.txt, результаты тестирования и исходники разных вариантов интерфейса опубликованы здесь:
https://cloud.mail.ru/public/2JUU/9SJVm2U31
Вложений: 1
r6462mod14: измененный функционал
mod14 создан на базе исходного кода mod12.
В софт добавлен функционал согласованной фильтрации (декодирование с подсказкой или hinted decoding) в применении для КВ диапазонов.
Взят полностью исходный код hint65.f90 из ревизии WSJT-X v1.7 r6606, проработана логика включения и использования на частоте QSO одновременно с обычным декодированием в полном спектре частот диапазона.
В r6462mod14 используется захват +-3Гц от частоты QSO для применения согласованной фильтрации, общая полоса 7Гц.
Увеличение полосы захвата приводит к росту ложных декодирований-подсказок, уменьшение полосы возможно, но ограничено стабильностью частоты некоторых трансиверов и соответствием частот приема/передачи некоторых звуковых карт.
В r6462mod14 пользователь не может менять полосу захвата частоты QSO.
Согласованная фильтрация выполнена и протестирована только в комбинированом режиме JT65+JT9, использование в режиме
только JT65 не рекомендуется.
Протестирована только комбинация "mycall+hiscall+hisgrid", другие комбинации не проверял но в процессе тестов видел ложные декодирования-подсказки варианта "CQ hiscall hisgrid".
C рапортами декодирований-подсказок не видел, буду позже отдельно тестировать.
Для согласованной фильтрации используется файл CALL3.txt, в r6462mod14 выставлено ограничение в чтение не более 15000 записей.
В процессе тестирования наблюдал снижение вероятности декодирования сигналов с SNR -31dB при большом размере файла CALL3.txt, поэтому рекомендую использовать разные урезанные версии файла CALL3.txt для направленной работы на определенные континенты или страны.
Также размер файла CALL3.txt при включенной согласованной фильтрации влияет на время декодирования интервала.
Опыта использования кроме тестов нет, возможно при большом количестве помех в декодируемом спектре будет много ложных декодирований-подсказок, при работе в живом эфире появится опыт использования: в зависимости от количества станций, уровня шума и уровня сигналов на диапазоне. Также оператору придется анализировать декодирование-подсказку по разным критериям на предмет подлинности.
По результатам тестирования согласованная фильтрация дает примерно 5dB SNR выигрыш на частоте QSO по сравнению с r6462mod12.
Еще в mod14 сделана попытка вернуть эффективность декодирования на диапазонах 80/160м на уровень mod11 (при высоком
уровне индустриального шума), но за отсутствием звуковых файлов с реального эфира (не на чем было сделать диагностику)
менял код по интуиции, как возможную причину вижу снижение значений SYNC при индустриальном шуме и выход за переделы
прошитого в mod12 порога.
Применил динамическое снижение порога SYNC при низких уровнях SYNC сигналов на диапазоне. К сожалению протестировать
не на чем, придется смотреть на живом эфире сравнивая с mod11.
Если кто нибудь будет работать на 80/160м в вечернее время - запишите пожалуйста звуковые файлы, необходимы мне для диагностики дефекта mod12.
Изменились исходники графического интерфейса основного окна, новые названия в закладке Decode.
В комплекте с исходным кодом идет файл CALL3.txt созданный в начале января 2016г., обновленный файл будет отдельно опубликован на днях на форуме.
Рекомендации по использованию mod14:
JT65+JT9 режим декодирования
Decode -> JT65 hinted decoding : включать при необходимости использования согласованной фильтрации
Закладка Settings -> Advanced:
Number of decoding attempts: подбирать по времени декодирования интервала
Nubmer of decoding passes = 3
Hinted decoding level = 10
Верхняя и нижняя границы частот на водопаде согласно желаемой полосе декодирования.
Вложение 162230
Значение hinted decoding level определяет "глубину" поиска декодирования-подсказки, при увеличении растет как вероятность
правильного так и ложного декодирования подсказки.
Загрузка и обработка файла CALL3.txt в r6462mod14 осуществляется только при первом вызове процедуры hint65, если в файл в процессе работы оператором вносятся какие либо изменения то для того чтобы эти изменения начали использоваться необходимо перезапустить WSJT-X (сделал так для уменьшения времени декодирования интервала).
Внимание: режим SWL ON создает полную загрузку процессора в течение продолжительного времени, приводит к повышению энергопотребления и требований к охлаждению процессора.
Вложений: 1
r6462mod14: результаты тестирования
Удалось сохранить эффективность декодирования сигналов JT65a как в mod12 на загруженных диапазонах, небольшая просадка чувствительности при декодировании -26dB SNR.
Количество декодируемых JT9 сигналов не изменилось.
Вложение 162229
Для тестирования вероятности декодирования -26dB и -31dB SNR использовались файлы с симулятора jt65sim, один сигнал в файле, всего 1000 файлов по каждому значению SNR.
some tips on the hinted decoding usage
There are some tips on the hinted decoding/mod14 usage:
Hinted decoding is implemented only for QSO frequency and based on the CALL3.txt data. CALL3.txt from my package was derived from the live ALL.txt files I collecting worldwide. It is ok to overwrite it in WSJT-X home directory if user operating only on HF bands.
When user operating on CQ there is benefit from turning on hinted decoding as -31dB SNR signals can be decoded on the QSO frequency.
There is drawback: as hinted decoding operates with probabilities there is some chance that noise on the QSO frequency will get in the probability range of the hinted decoding for some record in the CALL3.txt file. That is how one could get false hinted decode.
False hinted decode usually rare event, it's probability depends on the noise type and presence of QRM or industrial noise on the QSO frequency.
False hinted decode has very low probability for Gaussian noise type on the QSO frequency.
With this set of -31dB SNR benefit and false hinted decode drawback, first one wins.
Hinted decoding level in mod14 Advanced settings tab affecting probability of the -31dB SNR hinted decode: both correct and false one increased with the hinted decoding level value increase. I would set it to 10, but it is up to user to make own choice.
Decoding working with this logic/order:
1. Hard decision BM decoding
if failed then
2. Soft decision FTRSD decoding
if failed then
3. Hinted decoding
In r6462mod14 hinted decoder taking first 15000 records from CALL3.txt and generating all possible messages/codewords with CQ, reports and callings like 'mycall hiscall hisgrid' or 'CQ hiscall hisgrid'. Then hinted decoder compares received codeword with list of the generated ones, the best one from list if it is meeting defined by 'Hinted decoding level' criteria being proceeded as hinted decode.
It might be better to reduce CALL3.txt size focusing it on some continents of countries, whatever one like.
In r6462mod14 hinted decoding frequency range is set to +-3Hz from QSO frequency, allowing 7Hz bandwidth for the hinted search.
Try to avoid hinted decoding usage in the monitoring mode if you are not operating on CQ or if you are not in QSO with someone.
bug in mod12, mod14: affecting decoding for the small number of SYNC candidates
Нашел дефект присутствующий в ревизиях mod12 и mod14, неправильная логика включения проходов, приводит с потере части декодирований при малом количестве SYNC кандидатов. Cпасибо Сергею R6YY за предоставленные для диагностики звуковые файлы.
Уже скомпоновал mod12.1, сейчас его тестирую. С исправлением в mod14 немного сложнее, займусь после публикации mod12.1.
Вложений: 1
broken WSJTX.ini file can trigger false hinted decode
При поломанном WSJTX.ini наблюдаю ложное декодирование-подсказку на ревизиях где для JT65+JT9 этот функционал отсутствует.
Вложение 162361
Решение проблемы:
1. закрыть софт
2. удалить поломанный WSJTX.ini файл
3. запустить софт, автоматом будет создан новый WSJTX.ini файл
4. выставить заново WSJTX настройки.
Еще можно хранить резервную копию WSJTX.ini файла и при подозрении на проблему формата файла просто перезаписывать его резервной копией, это можно делать только при закрытом софте.
Формат файла WSJTX.ini скорее всего был изменен в результате запуска mod14, после чего я вернулся на mod11 где наблюдаю проблему при проигрывании определенного звукового файла.