From a2dd58a44b7b1c36d77d4ad3d712f62ef4a3bc59 Mon Sep 17 00:00:00 2001 From: LittleSam129 <1qwe432@gmail.com> Date: Mon, 27 Jul 2026 15:29:39 +0300 Subject: [PATCH] Lab029: simulate packet loss and channel errors --- PROJECT_LOG.md | 21 + data/processed/lab029/lab029_ber_success.png | Bin 0 -> 98468 bytes .../lab029/lab029_burst_loss_results.png | Bin 0 -> 97689 bytes .../lab029_independent_loss_success.png | Bin 0 -> 118363 bytes .../lab029/lab029_payload_comparison.png | Bin 0 -> 51322 bytes data/processed/lab029/lab029_report.txt | 95 ++ data/processed/lab029/lab029_results.csv | 46 + tests/lab029_packet_channel_simulation.py | 1353 +++++++++++++++++ 8 files changed, 1515 insertions(+) create mode 100644 data/processed/lab029/lab029_ber_success.png create mode 100644 data/processed/lab029/lab029_burst_loss_results.png create mode 100644 data/processed/lab029/lab029_independent_loss_success.png create mode 100644 data/processed/lab029/lab029_payload_comparison.png create mode 100644 data/processed/lab029/lab029_report.txt create mode 100644 data/processed/lab029/lab029_results.csv create mode 100644 tests/lab029_packet_channel_simulation.py diff --git a/PROJECT_LOG.md b/PROJECT_LOG.md index cfa2fbb..abe6fb2 100644 --- a/PROJECT_LOG.md +++ b/PROJECT_LOG.md @@ -54,3 +54,24 @@ git version 2.51.1.windows.1 - Исследованы размеры payload 64, 128, 256, 512 и 1024 байта. - Размер payload 512 байт принят как рабочий кандидат. - Окончательный выбор размера пакета перенесён в Lab029. + +--- + +# Запись 003 + +## Дата + +27 июля 2026 года + +## Тема + +Завершение Lab029: моделирование потерь и ошибок видеопакетов. + +## Выполнено + +- Исследованы независимые потери пакетов и независимые битовые ошибки. +- Проверены короткие, средние и длинные серии потерь по модели Gilbert–Elliott. +- Выполнено сравнение payload 256, 512 и 1024 байта. +- Подтверждены packet CRC32, изоляция соседних кадров и атомарная сборка BASE + ROI. +- Зафиксировано ограничение пакетной временной шкалы Lab029. +- Сравнение помех одинаковой физической длительности перенесено в Lab029B. diff --git a/data/processed/lab029/lab029_ber_success.png b/data/processed/lab029/lab029_ber_success.png new file mode 100644 index 0000000000000000000000000000000000000000..d7bbb550e6b12b19d0b63bef938a78325486c061 GIT binary patch literal 98468 zcmd>mWmH$`_b(x+fTB`@2nHY_UDAq@BHbP^_=(8k|I~INU%^)P_BrHK9fa3!AL|wLASbu34b#x z**OXS?7c%#P*G6Co;{Iwid~;{R9DzLuiGAu zQ!hzOO!8I3@3*1cj9YBmre{@BRL#(LH#ZTW&n6ws8~Dz7Ku!Og{-6V2$pVAacUGI) zb=um)bEf*Wdid+a>I6Pt*KV!^>#k~|dH3mqQyCh+q&sh}30}JU&u{pw_Qq0=|Lf0} z?lv}vq4oUhJ1*T7e{&(x=ifgRdg=0G?EhQ>ewh0D4KKof|BTE%3KaT(J_EUW(lb#M z)qj7?v-clSivE33-y3&PjsAVnYm|cjU)%_8mCy&m&$1cP8S?96#cMTzeEMzp^0Wkl znM#b|XB?JO64N#A+uPgq+Dy{fs_gNun_O2(AAPjs32AK{%2tbFdWmK}R#e~KjvXf{ zQf{+gG*(2jRddV`!Jt7qK$@db`JHF0>S?lYfR(Ln!{}&~%ib!p$BEOoZ{Ic#Nwb3n zlY~BOmgiOykdbMcbVt3Dd3W_T+=~BA=A@!D+1Y~gDwZ-6`EAu$zCMG6+_Uu`nP7{`DsYRz@f_u2(IMs{jo@_NvgYNjwscP49>p4uSkoRxi zTnHrP`sPo}YSfd6`hkeC%kk>kaBlPTbV3xXq0P>`Sa5K#=!+K%>!XEkdxJ`BCIh}& zo~OlSQX0NDicN-j#g

^D|e;IPRv-7|zSs*t(k& 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 ax%uwa&OlZDH)iCEQdKmLB_H|e`u_raCC&N( literal 0 HcmV?d00001 diff --git a/data/processed/lab029/lab029_burst_loss_results.png b/data/processed/lab029/lab029_burst_loss_results.png new file mode 100644 index 0000000000000000000000000000000000000000..4bbb1d018001b6ae5b61e1738b81361056e740ee GIT binary patch literal 97689 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 Ce=^Si literal 0 HcmV?d00001 diff --git a/data/processed/lab029/lab029_independent_loss_success.png b/data/processed/lab029/lab029_independent_loss_success.png new file mode 100644 index 0000000000000000000000000000000000000000..7f59262d5f356be7a67ca6caa9353b8bda3af3b0 GIT binary patch literal 118363 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 FzW`|%lu!Tw literal 0 HcmV?d00001 diff --git a/data/processed/lab029/lab029_payload_comparison.png b/data/processed/lab029/lab029_payload_comparison.png new file mode 100644 index 0000000000000000000000000000000000000000..feae729a6846e6affe747b6aac4db509ede4d8e2 GIT binary patch literal 51322 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 literal 0 HcmV?d00001 diff --git a/data/processed/lab029/lab029_report.txt b/data/processed/lab029/lab029_report.txt new file mode 100644 index 0000000..10efe10 --- /dev/null +++ b/data/processed/lab029/lab029_report.txt @@ -0,0 +1,95 @@ +Lab029. Прохождение видеопакетов через канал с потерями и ошибками + +Исходные данные и неизменный транспорт Lab028 +- Видео: data\raw\lab026_rover_source.mp4 +- Источник: 1280x720, 30.000000 fps, 623 кадров, 20.766667 с. +- Реальных синхронных JPEG-пар: 63; BASE 240x135 grayscale Q23, ROI 320x180 grayscale Q33, 3 composite fps. +- Использован protocol/video_packet.py без изменения: 32-byte header, packet CRC32, object CRC32, отдельные BASE/ROI и атомарная выдача CompositeReassembler. +- Payload: 256, 512, 1024 байт. +- Пакетов в одном проходе: 256 B=1660, 512 B=862, 1024 B=478. + +Методика Monte Carlo +- Повторов на каждую строку: 200. +- Master seed: 29029; independent seeds 29029...29034; BER seeds 30029...30034; burst seeds 31029...31031. +- Для одинакового параметра один seed повторно используется для payload 256/512/1024, чтобы сравнение было коррелированным и воспроизводимым. +- packet_delivery_rate = (received - CRC rejected) / transmitted. +- effective delivered JPEG bitrate учитывает BASE+ROI bytes только атомарно выданных составных кадров и полное симулированное время. +- Потерянный фрагмент — физически потерянный пакет или пакет, отклонённый проверкой транспорта. +- FEC, ARQ, повторные передачи и интерливинг не применяются. + +Модели канала +- Independent loss: каждый пакет теряется независимо с заданной вероятностью. +- BER: число независимых битовых ошибок выбирается binomial по полной длине пакета в битах, включая 32-byte header; выбранные биты физически инвертируются перед reassembler. +- Gilbert-Elliott: Good доставляет все пакеты, Bad теряет все. Начальное состояние выбирается из стационарного распределения. +- В Lab029 длительность состояния Bad и серии потерь задаётся количеством пакетов, а не физическим временем. +- Серия из одинакового количества пакетов имеет разную физическую длительность для payload 256, 512 и 1024 байта, поскольку различается время передачи пакета. +- Доля успешно восстановленных кадров не показывает длительность непрерывного отсутствия нового изображения. +- Поэтому burst-loss результаты Lab029 не являются окончательным сравнением размеров payload; для временного сравнения предназначена Lab029B. + - short: короткие серии потерь; P(G->B)=0.010204082, P(B->G)=0.500000000, stationary loss=2.000%, expected mean burst=2.0. + - medium: средние серии потерь; P(G->B)=0.004081633, P(B->G)=0.200000000, stationary loss=2.000%, expected mean burst=5.0. + - long: длинные серии потерь; P(G->B)=0.001020408, P(B->G)=0.050000000, stationary loss=2.000%, expected mean burst=20.0. + +Функциональные проверки +- PASS zero_impairment_100_percent: all payloads delivered 100% packets and composite frames +- PASS packet_crc_rejects_bit_error: payload bit flip was rejected by packet CRC32 +- PASS adjacent_frame_isolation: two interleaved neighboring frames remained independent +- PASS atomic_incomplete_frame: missing ROI fragment prevented atomic publication +- PASS fixed_seed_reproducibility: identical seed produced byte-for-byte equal result fields + +1. Independent packet loss — atomic composite success +parameter | payload 256 | payload 512 | payload 1024 +---------:|------------:|------------:|-------------: +0.0% | 100.000% | 100.000% | 100.000% +0.1% | 97.397% | 98.651% | 99.214% +0.5% | 87.294% | 93.357% | 96.254% +1.0% | 76.405% | 87.008% | 92.206% +2.0% | 58.937% | 76.516% | 86.286% +5.0% | 25.698% | 48.738% | 67.198% + +2. BER — atomic composite success +parameter | payload 256 | payload 512 | payload 1024 +---------:|------------:|------------:|-------------: +0 | 100.000% | 100.000% | 100.000% +1e-07 | 99.413% | 99.524% | 99.357% +3e-07 | 98.222% | 98.476% | 98.492% +1e-06 | 94.111% | 94.714% | 94.754% +3e-06 | 83.905% | 84.373% | 85.397% +1e-05 | 55.357% | 56.722% | 57.770% + +3. Burst-loss +scenario | payload | expected loss | observed loss | mean/max burst | composite success | burst distribution +--------:|--------:|--------------:|--------------:|---------------:|------------------:|:------------------ +short | 256 | 2.000% | 1.932% | 1.972/12 | 76.111% | 1:1628;2:822;3-4:635;5-8:155;9-16:12;17-32:0;33+:0 +short | 512 | 2.000% | 1.853% | 1.903/11 | 86.484% | 1:861;2:429;3-4:318;5-8:67;9-16:3;17-32:0;33+:0 +short | 1024 | 2.000% | 1.891% | 1.899/8 | 91.714% | 1:475;2:263;3-4:171;5-8:43;9-16:0;17-32:0;33+:0 +medium | 256 | 2.000% | 2.007% | 4.991/30 | 88.333% | 1:258;2:226;3-4:324;5-8:306;9-16:180;17-32:41;33+:0 +medium | 512 | 2.000% | 1.909% | 4.890/27 | 93.317% | 1:124;2:121;3-4:178;5-8:142;9-16:87;17-32:21;33+:0 +medium | 1024 | 2.000% | 2.016% | 5.084/27 | 95.357% | 1:77;2:57;3-4:100;5-8:77;9-16:53;17-32:15;33+:0 +long | 256 | 2.000% | 1.975% | 19.061/116 | 95.405% | 1:22;2:10;3-4:22;5-8:58;9-16:84;17-32:83;33+:65 +long | 512 | 2.000% | 1.983% | 19.311/124 | 96.762% | 1:14;2:4;3-4:13;5-8:32;9-16:39;17-32:40;33+:35 +long | 1024 | 2.000% | 2.192% | 20.350/124 | 97.198% | 1:12;2:1;3-4:8;5-8:15;9-16:24;17-32:21;33+:22 + +4. Сравнение payload 256/512/1024 +payload | loss 1% success | BER 1e-6 success | medium burst success | Lab028 wire kbit/s +-------:|----------------:|-----------------:|---------------------:|--------------------: +256 | 76.405% | 94.111% | 88.333% | 178.233 +512 | 87.008% | 94.714% | 93.317% | 168.396 +1024 | 92.206% | 94.754% | 95.357% | 163.662 + +Интерпретация +- При фиксированной вероятности потери пакета крупный payload уменьшает число обязательных фрагментов. Поскольку потеря любого фрагмента делает объект неполным, меньшее число пакетов обычно повышает шанс полного кадра. +- При фиксированном BER длинный отдельный пакет чаще повреждается: P(error)=1-(1-BER)^(packet_bits). Одновременно крупный payload уменьшает число 32-byte headers и общую длину wire-потока, поэтому итоговый composite success определяется обоими эффектами. +- Атомарная сборка требует одновременной готовности BASE и ROI. Даже полностью собранный BASE не даёт полезного составного кадра без ROI, поэтому composite success ниже успеха каждого объекта отдельно. +- Burst-loss особенно опасен без интерливинга: соседние фрагменты и иногда соседние кадры теряются одной серией, а CRC только обнаруживает ошибку и не восстанавливает данные. +- Payload 256 B даёт наименьшую длину отдельного пакета и наименьшую вероятность BER-повреждения одного пакета, но требует больше всего фрагментов и headers. +- Payload 512 B остаётся умеренным рабочим кандидатом между packet count и длиной отдельного пакета. +- Payload 1024 B даёт минимум пакетов и header overhead в этих моделях, но каждый пакет длиннее и при его потере пропадает более крупный фрагмент JPEG. +- Окончательный packet payload автоматически не выбирается; для решения нужны Lab029 и последующие данные реального радиоканала, FEC/ARQ и задержек. + +Артефакты +- CSV: data\processed\lab029\lab029_results.csv +- Independent loss plot: data\processed\lab029\lab029_independent_loss_success.png +- BER plot: data\processed\lab029\lab029_ber_success.png +- Burst plot: data\processed\lab029\lab029_burst_loss_results.png +- Payload comparison: data\processed\lab029\lab029_payload_comparison.png +- JPEG, пакеты и бинарные дампы на диск не сохранялись. diff --git a/data/processed/lab029/lab029_results.csv b/data/processed/lab029/lab029_results.csv new file mode 100644 index 0000000..41c8e00 --- /dev/null +++ b/data/processed/lab029/lab029_results.csv @@ -0,0 +1,46 @@ +model,parameter_name,parameter_value,scenario,payload_size,monte_carlo_repetitions,seed,good_to_bad_probability,bad_to_good_probability,expected_loss_probability,expected_mean_loss_burst,observed_loss_probability,transmitted_packets,received_packets,lost_packets,crc_rejected_packets,packet_delivery_rate,base_objects_completed,roi_objects_completed,atomic_composite_frames_completed,base_only_frames,roi_only_frames,incomplete_frames,composite_success_rate,effective_delivered_jpeg_bitrate_kbps,mean_lost_fragments_per_frame,p95_lost_fragments_per_frame,mean_loss_burst_length,max_loss_burst_length,loss_burst_distribution +independent_loss,packet_loss_probability,0,,256,200,29029,0,0,0,0,0,332000,332000,0,0,1,12600,12600,12600,0,0,0,1,157.76975923,0,0,0,0,1:0;2:0;3-4:0;5-8:0;9-16:0;17-32:0;33+:0 +independent_loss,packet_loss_probability,0,,512,200,29029,0,0,0,0,0,172400,172400,0,0,1,12600,12600,12600,0,0,0,1,157.76975923,0,0,0,0,1:0;2:0;3-4:0;5-8:0;9-16:0;17-32:0;33+:0 +independent_loss,packet_loss_probability,0,,1024,200,29029,0,0,0,0,0,95600,95600,0,0,1,12600,12600,12600,0,0,0,1,157.76975923,0,0,0,0,1:0;2:0;3-4:0;5-8:0;9-16:0;17-32:0;33+:0 +independent_loss,packet_loss_probability,0.001,,256,200,29030,0,0,0.001,1.001001001,0.00101807228916,332000,331662,338,0,0.998981927711,12468,12398,12272,196,126,328,0.973968253968,153.639124238,0.0268253968254,0,1,1,1:338;2:0;3-4:0;5-8:0;9-16:0;17-32:0;33+:0 +independent_loss,packet_loss_probability,0.001,,512,200,29030,0,0,0.001,1.001001001,0.000991879350348,172400,172229,171,0,0.99900812065,12530,12499,12430,100,69,170,0.986507936508,155.629063242,0.0135714285714,0,1,1,1:171;2:0;3-4:0;5-8:0;9-16:0;17-32:0;33+:0 +independent_loss,packet_loss_probability,0.001,,1024,200,29030,0,0,0.001,1.001001001,0.00103556485356,95600,95501,99,0,0.998964435146,12563,12538,12501,62,37,99,0.992142857143,156.519451685,0.00785714285714,0,1,1,1:99;2:0;3-4:0;5-8:0;9-16:0;17-32:0;33+:0 +independent_loss,packet_loss_probability,0.005,,256,200,29031,0,0,0.005,1.00502512563,0.00515361445783,332000,330289,1711,0,0.994846385542,11987,11558,10999,988,559,1601,0.872936507937,137.693897913,0.135793650794,1,1.00765606596,2,1:1685;2:13;3-4:0;5-8:0;9-16:0;17-32:0;33+:0 +independent_loss,packet_loss_probability,0.005,,512,200,29031,0,0,0.005,1.00502512563,0.00505220417633,172400,171529,871,0,0.994947795824,12302,12046,11763,539,283,837,0.933571428571,147.277529374,0.069126984127,1,1.01044083527,2,1:853;2:9;3-4:0;5-8:0;9-16:0;17-32:0;33+:0 +independent_loss,packet_loss_probability,0.005,,1024,200,29031,0,0,0.005,1.00502512563,0.00503138075314,95600,95119,481,0,0.994968619247,12408,12317,12128,280,189,472,0.96253968254,151.818947673,0.0381746031746,0,1.01050420168,2,1:471;2:5;3-4:0;5-8:0;9-16:0;17-32:0;33+:0 +independent_loss,packet_loss_probability,0.01,,256,200,29032,0,0,0.01,1.0101010101,0.0101746987952,332000,328622,3378,0,0.989825301205,11449,10592,9627,1822,965,2973,0.764047619048,120.432163724,0.268095238095,1,1.00775656325,2,1:3326;2:26;3-4:0;5-8:0;9-16:0;17-32:0;33+:0 +independent_loss,packet_loss_probability,0.01,,512,200,29032,0,0,0.01,1.0101010101,0.0100928074246,172400,170660,1740,0,0.989907192575,11993,11526,10963,1030,563,1637,0.870079365079,137.210552167,0.138095238095,1,1.00752750434,2,1:1714;2:13;3-4:0;5-8:0;9-16:0;17-32:0;33+:0 +independent_loss,packet_loss_probability,0.01,,1024,200,29032,0,0,0.01,1.0101010101,0.0105962343096,95600,94587,1013,0,0.98940376569,12198,12003,11618,580,385,982,0.922063492063,145.437291814,0.0803968253968,1,1.007960199,2,1:997;2:8;3-4:0;5-8:0;9-16:0;17-32:0;33+:0 +independent_loss,packet_loss_probability,0.02,,256,200,29033,0,0,0.02,1.02040816327,0.0198795180723,332000,325400,6600,0,0.980120481928,10436,8989,7426,3010,1563,5174,0.589365079365,92.8966767255,0.52380952381,2,1.01946246525,3,1:6350;2:122;3-4:2;5-8:0;9-16:0;17-32:0;33+:0 +independent_loss,packet_loss_probability,0.02,,512,200,29033,0,0,0.02,1.02040816327,0.0195649651972,172400,169027,3373,0,0.980435034803,11432,10607,9641,1791,966,2959,0.765158730159,120.639628892,0.267698412698,1,1.0178032589,3,1:3256;2:57;3-4:1;5-8:0;9-16:0;17-32:0;33+:0 +independent_loss,packet_loss_probability,0.02,,1024,200,29033,0,0,0.02,1.02040816327,0.0192573221757,95600,93759,1841,0,0.980742677824,11880,11536,10872,1008,664,1728,0.862857142857,136.121568539,0.146111111111,1,1.01712707182,3,1:1780;2:29;3-4:1;5-8:0;9-16:0;17-32:0;33+:0 +independent_loss,packet_loss_probability,0.05,,256,200,29034,0,0,0.05,1.05263157895,0.0503072289157,332000,315298,16702,0,0.949692771084,7774,5198,3238,4536,1960,9362,0.256984126984,40.4080507223,1.32555555556,3,1.05189570475,4,1:15094;2:746;3-4:38;5-8:0;9-16:0;17-32:0;33+:0 +independent_loss,packet_loss_probability,0.05,,512,200,29034,0,0,0.05,1.05263157895,0.0510266821346,172400,163603,8797,0,0.948973317865,9647,8012,6141,3506,1871,6459,0.487380952381,76.7984243981,0.698174603175,2,1.05139237481,4,1:7961;2:383;3-4:23;5-8:0;9-16:0;17-32:0;33+:0 +independent_loss,packet_loss_probability,0.05,,1024,200,29034,0,0,0.05,1.05263157895,0.0507949790795,95600,90744,4856,0,0.949205020921,10780,9911,8467,2313,1444,4133,0.671984126984,105.919342536,0.385396825397,2,1.0492653414,4,1:4415;2:199;3-4:14;5-8:0;9-16:0;17-32:0;33+:0 +ber,bit_error_rate,0,,256,200,30029,0,0,0,0,0,332000,332000,0,0,1,12600,12600,12600,0,0,0,1,157.76975923,0,0,0,0,1:0;2:0;3-4:0;5-8:0;9-16:0;17-32:0;33+:0 +ber,bit_error_rate,0,,512,200,30029,0,0,0,0,0,172400,172400,0,0,1,12600,12600,12600,0,0,0,1,157.76975923,0,0,0,0,1:0;2:0;3-4:0;5-8:0;9-16:0;17-32:0;33+:0 +ber,bit_error_rate,0,,1024,200,30029,0,0,0,0,0,95600,95600,0,0,1,12600,12600,12600,0,0,0,1,157.76975923,0,0,0,0,1:0;2:0;3-4:0;5-8:0;9-16:0;17-32:0;33+:0 +ber,bit_error_rate,1e-07,,256,200,30030,0,0,0,0,0.000225903614458,332000,332000,0,75,0.999774096386,12570,12556,12526,44,30,74,0.994126984127,156.829585233,0.00595238095238,0,1,1,1:75;2:0;3-4:0;5-8:0;9-16:0;17-32:0;33+:0 +ber,bit_error_rate,1e-07,,512,200,30030,0,0,0,0,0.000348027842227,172400,172400,0,60,0.999651972158,12578,12562,12540,38,22,60,0.995238095238,157.006054575,0.0047619047619,0,1,1,1:60;2:0;3-4:0;5-8:0;9-16:0;17-32:0;33+:0 +ber,bit_error_rate,1e-07,,1024,200,30030,0,0,0,0,0.000847280334728,95600,95600,0,81,0.999152719665,12569,12550,12519,50,31,81,0.993571428571,156.742861637,0.00642857142857,0,1,1,1:81;2:0;3-4:0;5-8:0;9-16:0;17-32:0;33+:0 +ber,bit_error_rate,3e-07,,256,200,30031,0,0,0,0,0.000680722891566,332000,332000,0,226,0.999319277108,12514,12461,12376,138,85,224,0.982222222222,154.967524238,0.0179365079365,0,1,1,1:226;2:0;3-4:0;5-8:0;9-16:0;17-32:0;33+:0 +ber,bit_error_rate,3e-07,,512,200,30031,0,0,0,0,0.00111368909513,172400,172400,0,192,0.998886310905,12530,12478,12408,122,70,192,0.984761904762,155.35917496,0.0152380952381,0,1,1,1:192;2:0;3-4:0;5-8:0;9-16:0;17-32:0;33+:0 +ber,bit_error_rate,3e-07,,1024,200,30031,0,0,0,0,0.00199790794979,95600,95600,0,191,0.99800209205,12532,12478,12410,122,68,190,0.984920634921,155.39185618,0.0151587301587,0,1,1,1:191;2:0;3-4:0;5-8:0;9-16:0;17-32:0;33+:0 +ber,bit_error_rate,1e-06,,256,200,30032,0,0,0,0,0.00229819277108,332000,332000,0,763,0.997701807229,12337,12111,11858,479,253,742,0.941111111111,148.434593258,0.0605555555556,1,1.00131233596,2,1:761;2:1;3-4:0;5-8:0;9-16:0;17-32:0;33+:0 +ber,bit_error_rate,1e-06,,512,200,30032,0,0,0,0,0.00396171693735,172400,172400,0,683,0.996038283063,12345,12182,11934,411,248,666,0.947142857143,149.411587801,0.0542063492063,1,1.0058910162,2,1:675;2:4;3-4:0;5-8:0;9-16:0;17-32:0;33+:0 +ber,bit_error_rate,1e-06,,1024,200,30032,0,0,0,0,0.00713389121339,95600,95600,0,682,0.992866108787,12371,12157,11939,432,218,661,0.94753968254,149.447597432,0.054126984127,1,1.0118694362,3,1:667;2:6;3-4:1;5-8:0;9-16:0;17-32:0;33+:0 +ber,bit_error_rate,3e-06,,256,200,30033,0,0,0,0,0.00661445783133,332000,332000,0,2196,0.993385542169,11810,11280,10572,1238,708,2028,0.839047619048,132.241321348,0.174285714286,1,1.00687757909,2,1:2166;2:15;3-4:0;5-8:0;9-16:0;17-32:0;33+:0 +ber,bit_error_rate,3e-06,,512,200,30033,0,0,0,0,0.0122563805104,172400,172400,0,2113,0.98774361949,11848,11321,10631,1217,690,1969,0.84373015873,133.045201926,0.167698412698,1,1.0114887506,2,1:2065;2:24;3-4:0;5-8:0;9-16:0;17-32:0;33+:0 +ber,bit_error_rate,3e-06,,1024,200,30033,0,0,0,0,0.0204916317992,95600,95600,0,1959,0.979508368201,11923,11387,10760,1163,627,1840,0.853968253968,134.696365329,0.155476190476,1,1.02404600105,3,1:1868;2:44;3-4:1;5-8:0;9-16:0;17-32:0;33+:0 +ber,bit_error_rate,1e-05,,256,200,30034,0,0,0,0,0.0222018072289,332000,332000,0,7371,0.977798192771,10234,8590,6975,3259,1615,5625,0.553571428571,87.1395390048,0.585,2,1.01950207469,4,1:7095;2:130;3-4:5;5-8:0;9-16:0;17-32:0;33+:0 +ber,bit_error_rate,1e-05,,512,200,30034,0,0,0,0,0.0407192575406,172400,172400,0,7020,0.959280742459,10313,8706,7147,3166,1559,5453,0.567222222222,89.3745245586,0.557142857143,2,1.03984594875,4,1:6492;2:250;3-4:9;5-8:0;9-16:0;17-32:0;33+:0 +ber,bit_error_rate,1e-05,,1024,200,30034,0,0,0,0,0.0692573221757,95600,95600,0,6621,0.930742677824,10300,8931,7279,3021,1652,5321,0.577698412698,91.0087704655,0.525476190476,2,1.07066623545,4,1:5779;2:376;3-4:29;5-8:0;9-16:0;17-32:0;33+:0 +burst,gilbert_elliott_scenario,0,short,256,200,31029,0.0102040816327,0.5,0.02,2,0.0193162650602,332000,325587,6413,0,0.98068373494,11365,10541,9590,1775,951,3010,0.761111111111,119.954532905,0.508968253968,3,1.97201722017,12,1:1628;2:822;3-4:635;5-8:155;9-16:12;17-32:0;33+:0 +burst,gilbert_elliott_scenario,0,short,512,200,31029,0.0102040816327,0.5,0.02,2,0.0185266821346,172400,169206,3194,0,0.981473317865,11907,11463,10897,1010,566,1703,0.864841269841,136.370440449,0.253492063492,2,1.90345649583,11,1:861;2:429;3-4:318;5-8:67;9-16:3;17-32:0;33+:0 +burst,gilbert_elliott_scenario,0,short,1024,200,31029,0.0102040816327,0.5,0.02,2,0.0189121338912,95600,93792,1808,0,0.981087866109,12097,11940,11556,541,384,1044,0.917142857143,144.700911717,0.143492063492,1,1.89915966387,8,1:475;2:263;3-4:171;5-8:43;9-16:0;17-32:0;33+:0 +burst,gilbert_elliott_scenario,1,medium,256,200,31030,0.00408163265306,0.2,0.02,5,0.0200692771084,332000,325337,6663,0,0.979930722892,11962,11552,11130,832,422,1470,0.883333333333,139.320930337,0.52880952381,4,4.99101123596,30,1:258;2:226;3-4:324;5-8:306;9-16:180;17-32:41;33+:0 +burst,gilbert_elliott_scenario,1,medium,512,200,31030,0.00408163265306,0.2,0.02,5,0.0190893271462,172400,169109,3291,0,0.980910672854,12172,11987,11758,414,229,842,0.933174603175,147.194698555,0.26119047619,2,4.89004457652,27,1:124;2:121;3-4:178;5-8:142;9-16:87;17-32:21;33+:0 +burst,gilbert_elliott_scenario,1,medium,1024,200,31030,0.00408163265306,0.2,0.02,5,0.0201569037657,95600,93673,1927,0,0.979843096234,12256,12154,12015,241,139,585,0.953571428571,150.407112039,0.152936507937,0,5.08443271768,27,1:77;2:57;3-4:100;5-8:77;9-16:53;17-32:15;33+:0 +burst,gilbert_elliott_scenario,2,long,256,200,31031,0.00102040816327,0.05,0.02,20,0.01975,332000,325443,6557,0,0.98025,12247,12146,12021,226,125,579,0.954047619048,150.526746067,0.520396825397,0,19.0610465116,116,1:22;2:10;3-4:22;5-8:58;9-16:84;17-32:83;33+:65 +burst,gilbert_elliott_scenario,2,long,512,200,31031,0.00102040816327,0.05,0.02,20,0.0198259860789,172400,168982,3418,0,0.980174013921,12301,12253,12192,109,61,408,0.967619047619,152.666767897,0.27126984127,0,19.3107344633,124,1:14;2:4;3-4:13;5-8:32;9-16:39;17-32:40;33+:35 +burst,gilbert_elliott_scenario,2,long,1024,200,31031,0.00102040816327,0.05,0.02,20,0.0219246861925,95600,93504,2096,0,0.978075313808,12305,12279,12247,58,32,353,0.971984126984,153.307654575,0.166349206349,0,20.3495145631,124,1:12;2:1;3-4:8;5-8:15;9-16:24;17-32:21;33+:22 diff --git a/tests/lab029_packet_channel_simulation.py b/tests/lab029_packet_channel_simulation.py new file mode 100644 index 0000000..e1ad0ca --- /dev/null +++ b/tests/lab029_packet_channel_simulation.py @@ -0,0 +1,1353 @@ +""" +Lab029. Monte Carlo simulation of Lab028 video packets over impaired channels. + +Real synchronous BASE and ROI JPEGs are formed with the Lab028 working +profile. The existing 32-byte packet format, packet CRC32, object CRC32, and +atomic CompositeReassembler are used unchanged. JPEGs and packets remain in +memory; only aggregate CSV, text, and PNG results are written. +""" + +from __future__ import annotations + +import csv +from dataclasses import asdict, dataclass +from pathlib import Path +from typing import Callable + +import cv2 +import matplotlib +import numpy as np + +matplotlib.use("Agg") +import matplotlib.pyplot as plt + +from protocol.video_packet import ( + CompositeReassembler, + ObjectType, + PacketCRCError, + VideoPacketError, +) +from tests.lab028_video_packetization import ( + EncodedComposite, + SOURCE_VIDEO_PATH, + VideoMetadata, + load_video_profile, + packets_for_composite, +) + + +OUTPUT_DIRECTORY = Path("data/processed/lab029") +CSV_PATH = OUTPUT_DIRECTORY / "lab029_results.csv" +REPORT_PATH = OUTPUT_DIRECTORY / "lab029_report.txt" +INDEPENDENT_PLOT_PATH = ( + OUTPUT_DIRECTORY / "lab029_independent_loss_success.png" +) +BER_PLOT_PATH = OUTPUT_DIRECTORY / "lab029_ber_success.png" +BURST_PLOT_PATH = OUTPUT_DIRECTORY / "lab029_burst_loss_results.png" +PAYLOAD_COMPARISON_PLOT_PATH = ( + OUTPUT_DIRECTORY / "lab029_payload_comparison.png" +) + +PAYLOAD_SIZES = (256, 512, 1024) +PACKET_LOSS_PROBABILITIES = (0.0, 0.001, 0.005, 0.01, 0.02, 0.05) +BER_VALUES = (0.0, 1e-7, 3e-7, 1e-6, 3e-6, 1e-5) +MONTE_CARLO_REPETITIONS = 200 +MASTER_SEED = 29029 +INDEPENDENT_SEED_BASE = MASTER_SEED +BER_SEED_BASE = MASTER_SEED + 1000 +BURST_SEED_BASE = MASTER_SEED + 2000 +BURST_STATIONARY_LOSS_PROBABILITY = 0.02 + +BURST_DISTRIBUTION_LABELS = ( + "1", + "2", + "3-4", + "5-8", + "9-16", + "17-32", + "33+", +) + +CSV_FIELDS = [ + "model", + "parameter_name", + "parameter_value", + "scenario", + "payload_size", + "monte_carlo_repetitions", + "seed", + "good_to_bad_probability", + "bad_to_good_probability", + "expected_loss_probability", + "expected_mean_loss_burst", + "observed_loss_probability", + "transmitted_packets", + "received_packets", + "lost_packets", + "crc_rejected_packets", + "packet_delivery_rate", + "base_objects_completed", + "roi_objects_completed", + "atomic_composite_frames_completed", + "base_only_frames", + "roi_only_frames", + "incomplete_frames", + "composite_success_rate", + "effective_delivered_jpeg_bitrate_kbps", + "mean_lost_fragments_per_frame", + "p95_lost_fragments_per_frame", + "mean_loss_burst_length", + "max_loss_burst_length", + "loss_burst_distribution", +] + + +@dataclass(frozen=True) +class BurstScenario: + name: str + description: str + expected_mean_burst: float + good_to_bad_probability: float + bad_to_good_probability: float + + +@dataclass(frozen=True) +class PreparedFrame: + composite_frame_id: int + base_jpeg_size: int + roi_jpeg_size: int + packets: tuple[bytes, ...] + + +@dataclass(frozen=True) +class PreparedPacket: + composite_frame_id: int + wire_packet: bytes + + +@dataclass(frozen=True) +class PreparedProfile: + payload_size: int + frames: tuple[PreparedFrame, ...] + packets: tuple[PreparedPacket, ...] + + +@dataclass(frozen=True) +class SimulationResult: + model: str + parameter_name: str + parameter_value: float + scenario: str + payload_size: int + monte_carlo_repetitions: int + seed: int + good_to_bad_probability: float + bad_to_good_probability: float + expected_loss_probability: float + expected_mean_loss_burst: float + observed_loss_probability: float + transmitted_packets: int + received_packets: int + lost_packets: int + crc_rejected_packets: int + packet_delivery_rate: float + base_objects_completed: int + roi_objects_completed: int + atomic_composite_frames_completed: int + base_only_frames: int + roi_only_frames: int + incomplete_frames: int + composite_success_rate: float + effective_delivered_jpeg_bitrate_kbps: float + mean_lost_fragments_per_frame: float + p95_lost_fragments_per_frame: float + mean_loss_burst_length: float + max_loss_burst_length: int + loss_burst_distribution: str + + +@dataclass(frozen=True) +class FunctionalTestResult: + name: str + passed: bool + detail: str + + +def build_burst_scenarios() -> tuple[BurstScenario, ...]: + """ + Build three loss-only Gilbert-Elliott scenarios. + + Good packets are delivered and Bad packets are lost. All scenarios have + the same stationary Bad probability of 2%, while mean Bad-state duration + changes from 2 to 20 packets. + """ + + scenarios = [] + definitions = ( + ("short", "короткие серии потерь", 2.0), + ("medium", "средние серии потерь", 5.0), + ("long", "длинные серии потерь", 20.0), + ) + for name, description, mean_burst in definitions: + bad_to_good = 1.0 / mean_burst + good_to_bad = ( + BURST_STATIONARY_LOSS_PROBABILITY + * bad_to_good + / (1.0 - BURST_STATIONARY_LOSS_PROBABILITY) + ) + scenarios.append( + BurstScenario( + name=name, + description=description, + expected_mean_burst=mean_burst, + good_to_bad_probability=good_to_bad, + bad_to_good_probability=bad_to_good, + ) + ) + return tuple(scenarios) + + +BURST_SCENARIOS = build_burst_scenarios() + + +def prepare_profiles( + composites: list[EncodedComposite], +) -> dict[int, PreparedProfile]: + """Packetize every real JPEG once for each investigated payload size.""" + + profiles = {} + for payload_size in PAYLOAD_SIZES: + frames = [] + flattened_packets = [] + for composite in composites: + base_packets, roi_packets = packets_for_composite( + composite, payload_size + ) + packets = tuple(base_packets + roi_packets) + frame = PreparedFrame( + composite_frame_id=composite.composite_frame_id, + base_jpeg_size=len(composite.base_jpeg), + roi_jpeg_size=len(composite.roi_jpeg), + packets=packets, + ) + frames.append(frame) + flattened_packets.extend( + PreparedPacket( + composite_frame_id=composite.composite_frame_id, + wire_packet=packet, + ) + for packet in packets + ) + profiles[payload_size] = PreparedProfile( + payload_size=payload_size, + frames=tuple(frames), + packets=tuple(flattened_packets), + ) + return profiles + + +def burst_distribution_bin(length: int) -> str: + if length == 1: + return "1" + if length == 2: + return "2" + if length <= 4: + return "3-4" + if length <= 8: + return "5-8" + if length <= 16: + return "9-16" + if length <= 32: + return "17-32" + return "33+" + + +def format_burst_distribution(lengths: list[int]) -> str: + counts = {label: 0 for label in BURST_DISTRIBUTION_LABELS} + for length in lengths: + counts[burst_distribution_bin(length)] += 1 + return ";".join( + f"{label}:{counts[label]}" + for label in BURST_DISTRIBUTION_LABELS + ) + + +def corrupt_packet_bits( + wire_packet: bytes, + error_count: int, + rng: np.random.Generator, +) -> bytes: + """Flip independently selected bit positions in a packet copy.""" + + if error_count <= 0: + return wire_packet + bit_count = len(wire_packet) * 8 + error_count = min(error_count, bit_count) + positions = rng.choice( + bit_count, + size=error_count, + replace=False, + ) + corrupted = bytearray(wire_packet) + for position in np.atleast_1d(positions): + bit_position = int(position) + byte_index, bit_index = divmod(bit_position, 8) + corrupted[byte_index] ^= 1 << bit_index + return bytes(corrupted) + + +def independent_loss_flags( + packet_count: int, + loss_probability: float, + rng: np.random.Generator, +) -> np.ndarray: + return rng.random(packet_count) < loss_probability + + +def ber_error_counts( + profile: PreparedProfile, + ber: float, + rng: np.random.Generator, +) -> np.ndarray: + bit_lengths = np.fromiter( + ( + len(packet.wire_packet) * 8 + for packet in profile.packets + ), + dtype=np.int64, + count=len(profile.packets), + ) + return rng.binomial(bit_lengths, ber) + + +def burst_loss_flags( + packet_count: int, + scenario: BurstScenario, + rng: np.random.Generator, +) -> np.ndarray: + """Generate one stationary two-state Good/Bad packet sequence.""" + + flags = np.zeros(packet_count, dtype=np.bool_) + bad_state = ( + rng.random() < BURST_STATIONARY_LOSS_PROBABILITY + ) + for index in range(packet_count): + flags[index] = bad_state + transition_sample = rng.random() + if bad_state: + if transition_sample < scenario.bad_to_good_probability: + bad_state = False + elif transition_sample < scenario.good_to_bad_probability: + bad_state = True + return flags + + +def simulate_condition( + profile: PreparedProfile, + metadata: VideoMetadata, + model: str, + parameter_name: str, + parameter_value: float, + seed: int, + repetitions: int, + scenario: BurstScenario | None = None, +) -> SimulationResult: + """Simulate one channel condition and aggregate all requested metrics.""" + + if repetitions <= 0: + raise ValueError("repetitions must be positive") + if model == "burst" and scenario is None: + raise ValueError("burst model requires a scenario") + if model not in {"independent_loss", "ber", "burst"}: + raise ValueError(f"unsupported model: {model}") + + rng = np.random.default_rng(seed) + transmitted_packets = 0 + received_packets = 0 + lost_packets = 0 + crc_rejected_packets = 0 + base_objects_completed = 0 + roi_objects_completed = 0 + atomic_composite_frames_completed = 0 + base_only_frames = 0 + roi_only_frames = 0 + incomplete_frames = 0 + delivered_atomic_jpeg_bytes = 0 + lost_fragments_per_frame: list[int] = [] + loss_burst_lengths: list[int] = [] + + packet_count = len(profile.packets) + frame_count = len(profile.frames) + jpeg_sizes_by_id = { + frame.composite_frame_id: ( + frame.base_jpeg_size + frame.roi_jpeg_size + ) + for frame in profile.frames + } + + for _ in range(repetitions): + receiver = CompositeReassembler() + completed_frame_ids: set[int] = set() + unavailable_by_frame = [0] * frame_count + current_loss_burst = 0 + + if model == "independent_loss": + loss_flags = independent_loss_flags( + packet_count, parameter_value, rng + ) + error_counts = None + elif model == "ber": + loss_flags = np.zeros(packet_count, dtype=np.bool_) + error_counts = ber_error_counts(profile, parameter_value, rng) + else: + assert scenario is not None + loss_flags = burst_loss_flags(packet_count, scenario, rng) + error_counts = None + + for packet_index, prepared_packet in enumerate(profile.packets): + transmitted_packets += 1 + frame_id = prepared_packet.composite_frame_id + + if bool(loss_flags[packet_index]): + lost_packets += 1 + unavailable_by_frame[frame_id] += 1 + current_loss_burst += 1 + continue + + received_packets += 1 + wire_packet = prepared_packet.wire_packet + if error_counts is not None: + error_count = int(error_counts[packet_index]) + if error_count > 0: + wire_packet = corrupt_packet_bits( + wire_packet, error_count, rng + ) + + try: + completed = receiver.ingest(wire_packet) + except VideoPacketError: + crc_rejected_packets += 1 + unavailable_by_frame[frame_id] += 1 + current_loss_burst += 1 + continue + + if current_loss_burst: + loss_burst_lengths.append(current_loss_burst) + current_loss_burst = 0 + + if completed is not None: + completed_frame_ids.add(completed.composite_frame_id) + atomic_composite_frames_completed += 1 + delivered_atomic_jpeg_bytes += ( + len(completed.base_jpeg) + len(completed.roi_jpeg) + ) + + if current_loss_burst: + loss_burst_lengths.append(current_loss_burst) + + for frame in profile.frames: + frame_id = frame.composite_frame_id + atomic_complete = frame_id in completed_frame_ids + base_complete = ( + atomic_complete + or receiver.object_is_complete(frame_id, ObjectType.BASE) + ) + roi_complete = ( + atomic_complete + or receiver.object_is_complete(frame_id, ObjectType.ROI) + ) + base_objects_completed += int(base_complete) + roi_objects_completed += int(roi_complete) + base_only_frames += int(base_complete and not roi_complete) + roi_only_frames += int(roi_complete and not base_complete) + incomplete_frames += int(not atomic_complete) + + lost_fragments_per_frame.extend(unavailable_by_frame) + + expected_frames = frame_count * repetitions + if ( + atomic_composite_frames_completed + + incomplete_frames + != expected_frames + ): + raise RuntimeError("atomic and incomplete frame counts disagree") + if base_objects_completed != ( + atomic_composite_frames_completed + base_only_frames + ): + raise RuntimeError("BASE completion accounting disagrees") + if roi_objects_completed != ( + atomic_composite_frames_completed + roi_only_frames + ): + raise RuntimeError("ROI completion accounting disagrees") + + unavailable_packets = lost_packets + crc_rejected_packets + accepted_packets = received_packets - crc_rejected_packets + observed_loss_probability = ( + unavailable_packets / transmitted_packets + ) + if model == "burst": + assert scenario is not None + scenario_name = scenario.name + good_to_bad = scenario.good_to_bad_probability + bad_to_good = scenario.bad_to_good_probability + expected_loss = BURST_STATIONARY_LOSS_PROBABILITY + expected_mean_burst = scenario.expected_mean_burst + elif model == "independent_loss": + scenario_name = "" + good_to_bad = 0.0 + bad_to_good = 0.0 + expected_loss = parameter_value + expected_mean_burst = ( + 0.0 if parameter_value == 0.0 + else 1.0 / (1.0 - parameter_value) + ) + else: + scenario_name = "" + good_to_bad = 0.0 + bad_to_good = 0.0 + expected_loss = 0.0 + expected_mean_burst = 0.0 + + total_simulated_duration = ( + metadata.duration_seconds * repetitions + ) + return SimulationResult( + model=model, + parameter_name=parameter_name, + parameter_value=parameter_value, + scenario=scenario_name, + payload_size=profile.payload_size, + monte_carlo_repetitions=repetitions, + seed=seed, + good_to_bad_probability=good_to_bad, + bad_to_good_probability=bad_to_good, + expected_loss_probability=expected_loss, + expected_mean_loss_burst=expected_mean_burst, + observed_loss_probability=observed_loss_probability, + transmitted_packets=transmitted_packets, + received_packets=received_packets, + lost_packets=lost_packets, + crc_rejected_packets=crc_rejected_packets, + packet_delivery_rate=accepted_packets / transmitted_packets, + base_objects_completed=base_objects_completed, + roi_objects_completed=roi_objects_completed, + atomic_composite_frames_completed=( + atomic_composite_frames_completed + ), + base_only_frames=base_only_frames, + roi_only_frames=roi_only_frames, + incomplete_frames=incomplete_frames, + composite_success_rate=( + atomic_composite_frames_completed / expected_frames + ), + effective_delivered_jpeg_bitrate_kbps=( + delivered_atomic_jpeg_bytes + * 8.0 + / total_simulated_duration + / 1000.0 + ), + mean_lost_fragments_per_frame=float( + np.mean(lost_fragments_per_frame) + ), + p95_lost_fragments_per_frame=float( + np.percentile(lost_fragments_per_frame, 95) + ), + mean_loss_burst_length=( + float(np.mean(loss_burst_lengths)) + if loss_burst_lengths + else 0.0 + ), + max_loss_burst_length=( + max(loss_burst_lengths) if loss_burst_lengths else 0 + ), + loss_burst_distribution=format_burst_distribution( + loss_burst_lengths + ), + ) + + +def run_monte_carlo( + profiles: dict[int, PreparedProfile], + metadata: VideoMetadata, +) -> list[SimulationResult]: + """Run all 45 channel/payload combinations.""" + + results = [] + for parameter_index, loss_probability in enumerate( + PACKET_LOSS_PROBABILITIES + ): + seed = INDEPENDENT_SEED_BASE + parameter_index + for payload_size in PAYLOAD_SIZES: + results.append( + simulate_condition( + profiles[payload_size], + metadata, + model="independent_loss", + parameter_name="packet_loss_probability", + parameter_value=loss_probability, + seed=seed, + repetitions=MONTE_CARLO_REPETITIONS, + ) + ) + + for parameter_index, ber in enumerate(BER_VALUES): + seed = BER_SEED_BASE + parameter_index + for payload_size in PAYLOAD_SIZES: + results.append( + simulate_condition( + profiles[payload_size], + metadata, + model="ber", + parameter_name="bit_error_rate", + parameter_value=ber, + seed=seed, + repetitions=MONTE_CARLO_REPETITIONS, + ) + ) + + for scenario_index, scenario in enumerate(BURST_SCENARIOS): + seed = BURST_SEED_BASE + scenario_index + for payload_size in PAYLOAD_SIZES: + results.append( + simulate_condition( + profiles[payload_size], + metadata, + model="burst", + parameter_name="gilbert_elliott_scenario", + parameter_value=float(scenario_index), + seed=seed, + repetitions=MONTE_CARLO_REPETITIONS, + scenario=scenario, + ) + ) + return results + + +def run_functional_tests( + composites: list[EncodedComposite], + profiles: dict[int, PreparedProfile], + metadata: VideoMetadata, + results: list[SimulationResult], +) -> list[FunctionalTestResult]: + """Verify zero impairment, CRC, isolation, atomicity, and repeatability.""" + + tests: list[tuple[str, Callable[[], str]]] = [] + + def zero_impairment_is_perfect() -> str: + zero_rows = [ + result + for result in results + if ( + result.model in {"independent_loss", "ber"} + and result.parameter_value == 0.0 + ) + ] + if len(zero_rows) != len(PAYLOAD_SIZES) * 2: + raise AssertionError("zero-impairment rows are missing") + for row in zero_rows: + if ( + row.packet_delivery_rate != 1.0 + or row.composite_success_rate != 1.0 + or row.incomplete_frames != 0 + ): + raise AssertionError( + f"zero impairment failed for {row.model}/" + f"{row.payload_size}" + ) + return "all payloads delivered 100% packets and composite frames" + + def crc_rejects_corruption() -> str: + packet = profiles[512].packets[0].wire_packet + corrupted = bytearray(packet) + corrupted[-1] ^= 0x01 + try: + CompositeReassembler().ingest(bytes(corrupted)) + except PacketCRCError: + return "payload bit flip was rejected by packet CRC32" + raise AssertionError("corrupted packet was not rejected by CRC") + + def adjacent_frames_do_not_mix() -> str: + first_profile_frames = profiles[512].frames[:2] + interleaved = [] + first_packets = first_profile_frames[0].packets + second_packets = first_profile_frames[1].packets + for index in range(max(len(first_packets), len(second_packets))): + if index < len(second_packets): + interleaved.append(second_packets[index]) + if index < len(first_packets): + interleaved.append(first_packets[index]) + receiver = CompositeReassembler() + completed = {} + for packet in interleaved: + frame = receiver.ingest(packet) + if frame is not None: + completed[frame.composite_frame_id] = frame + expected = {composites[0].composite_frame_id, composites[1].composite_frame_id} + if set(completed) != expected: + raise AssertionError("adjacent frame IDs were mixed or lost") + for composite in composites[:2]: + frame = completed[composite.composite_frame_id] + if ( + frame.base_jpeg != composite.base_jpeg + or frame.roi_jpeg != composite.roi_jpeg + ): + raise AssertionError("neighboring JPEG objects were mixed") + return "two interleaved neighboring frames remained independent" + + def incomplete_frame_is_not_published() -> str: + frame = profiles[512].frames[0] + receiver = CompositeReassembler() + completed_count = 0 + for packet in frame.packets[:-1]: + if receiver.ingest(packet) is not None: + completed_count += 1 + if completed_count != 0: + raise AssertionError("incomplete composite frame was published") + if not receiver.object_is_complete( + frame.composite_frame_id, ObjectType.BASE + ): + raise AssertionError("complete BASE object was not retained") + return "missing ROI fragment prevented atomic publication" + + def identical_seed_is_reproducible() -> str: + short_profile = PreparedProfile( + payload_size=512, + frames=profiles[512].frames[:2], + packets=tuple( + packet + for packet in profiles[512].packets + if packet.composite_frame_id < 2 + ), + ) + first = simulate_condition( + short_profile, + metadata, + model="independent_loss", + parameter_name="packet_loss_probability", + parameter_value=0.02, + seed=MASTER_SEED + 9999, + repetitions=5, + ) + second = simulate_condition( + short_profile, + metadata, + model="independent_loss", + parameter_name="packet_loss_probability", + parameter_value=0.02, + seed=MASTER_SEED + 9999, + repetitions=5, + ) + if first != second: + raise AssertionError("same seed produced different aggregates") + return "identical seed produced byte-for-byte equal result fields" + + tests.extend( + [ + ("zero_impairment_100_percent", zero_impairment_is_perfect), + ("packet_crc_rejects_bit_error", crc_rejects_corruption), + ("adjacent_frame_isolation", adjacent_frames_do_not_mix), + ("atomic_incomplete_frame", incomplete_frame_is_not_published), + ("fixed_seed_reproducibility", identical_seed_is_reproducible), + ] + ) + + test_results = [] + for name, test in tests: + try: + detail = test() + except Exception as error: + test_results.append( + FunctionalTestResult(name, False, str(error)) + ) + else: + test_results.append( + FunctionalTestResult(name, True, detail) + ) + failed = [result for result in test_results if not result.passed] + if failed: + details = "; ".join( + f"{result.name}: {result.detail}" for result in failed + ) + raise RuntimeError(f"Lab029 functional checks failed: {details}") + return test_results + + +def result_lookup( + results: list[SimulationResult], + model: str, + parameter_value: float | None = None, + scenario: str | None = None, +) -> dict[int, SimulationResult]: + matches = [ + result + for result in results + if ( + result.model == model + and ( + parameter_value is None + or result.parameter_value == parameter_value + ) + and (scenario is None or result.scenario == scenario) + ) + ] + return {result.payload_size: result for result in matches} + + +def save_csv(results: list[SimulationResult]) -> None: + OUTPUT_DIRECTORY.mkdir(parents=True, exist_ok=True) + with CSV_PATH.open("w", encoding="utf-8", newline="") as csv_file: + writer = csv.DictWriter(csv_file, fieldnames=CSV_FIELDS) + writer.writeheader() + for result in results: + raw_row = asdict(result) + row = {} + for field_name in CSV_FIELDS: + value = raw_row[field_name] + row[field_name] = ( + f"{value:.12g}" + if isinstance(value, float) + else value + ) + writer.writerow(row) + + +def save_independent_plot(results: list[SimulationResult]) -> None: + figure, axis = plt.subplots(figsize=(9, 5.5)) + loss_percentages = [ + probability * 100.0 + for probability in PACKET_LOSS_PROBABILITIES + ] + for payload_size in PAYLOAD_SIZES: + success = [ + result_lookup( + results, "independent_loss", probability + )[payload_size].composite_success_rate + * 100.0 + for probability in PACKET_LOSS_PROBABILITIES + ] + axis.plot( + loss_percentages, + success, + marker="o", + linewidth=2, + label=f"payload {payload_size} B", + ) + axis.set_xlabel("Independent packet loss probability, %") + axis.set_ylabel("Atomic composite success rate, %") + axis.set_title("Lab029 independent packet loss") + axis.grid(True, alpha=0.3) + axis.legend() + figure.tight_layout() + figure.savefig(INDEPENDENT_PLOT_PATH, dpi=160) + plt.close(figure) + + +def save_ber_plot(results: list[SimulationResult]) -> None: + figure, axis = plt.subplots(figsize=(9, 5.5)) + x_values = [1e-8 if ber == 0.0 else ber for ber in BER_VALUES] + for payload_size in PAYLOAD_SIZES: + success = [ + result_lookup(results, "ber", ber)[ + payload_size + ].composite_success_rate + * 100.0 + for ber in BER_VALUES + ] + axis.plot( + x_values, + success, + marker="o", + linewidth=2, + label=f"payload {payload_size} B", + ) + axis.set_xscale("log") + axis.set_xticks(x_values) + axis.set_xticklabels( + ["0", "1e-7", "3e-7", "1e-6", "3e-6", "1e-5"] + ) + axis.set_xlabel("Bit error rate (zero shown at 1e-8 position)") + axis.set_ylabel("Atomic composite success rate, %") + axis.set_title("Lab029 independent bit errors") + axis.grid(True, which="both", alpha=0.3) + axis.legend() + figure.tight_layout() + figure.savefig(BER_PLOT_PATH, dpi=160) + plt.close(figure) + + +def save_burst_plot(results: list[SimulationResult]) -> None: + figure, axis = plt.subplots(figsize=(9, 5.5)) + x_positions = np.arange(len(BURST_SCENARIOS)) + for payload_size in PAYLOAD_SIZES: + success = [ + result_lookup( + results, "burst", scenario=scenario.name + )[payload_size].composite_success_rate + * 100.0 + for scenario in BURST_SCENARIOS + ] + axis.plot( + x_positions, + success, + marker="o", + linewidth=2, + label=f"payload {payload_size} B", + ) + axis.set_xticks(x_positions) + axis.set_xticklabels( + [ + f"{scenario.name}\nmean {scenario.expected_mean_burst:g}" + for scenario in BURST_SCENARIOS + ] + ) + axis.set_xlabel("Gilbert-Elliott loss scenario") + axis.set_ylabel("Atomic composite success rate, %") + axis.set_title( + "Lab029 burst loss at 2% stationary packet loss" + ) + axis.grid(True, alpha=0.3) + axis.legend() + figure.tight_layout() + figure.savefig(BURST_PLOT_PATH, dpi=160) + plt.close(figure) + + +def save_payload_comparison_plot( + results: list[SimulationResult], +) -> None: + conditions = [ + ( + "Loss 1%", + result_lookup(results, "independent_loss", 0.01), + ), + ("BER 1e-6", result_lookup(results, "ber", 1e-6)), + ( + "Burst medium", + result_lookup(results, "burst", scenario="medium"), + ), + ] + x_positions = np.arange(len(conditions)) + bar_width = 0.24 + figure, axis = plt.subplots(figsize=(9, 5.5)) + for payload_index, payload_size in enumerate(PAYLOAD_SIZES): + values = [ + condition_results[payload_size].composite_success_rate + * 100.0 + for _, condition_results in conditions + ] + axis.bar( + x_positions + + (payload_index - 1) * bar_width, + values, + width=bar_width, + label=f"payload {payload_size} B", + ) + axis.set_xticks(x_positions) + axis.set_xticklabels([name for name, _ in conditions]) + axis.set_ylabel("Atomic composite success rate, %") + axis.set_title("Lab029 payload comparison") + axis.grid(True, axis="y", alpha=0.3) + axis.legend() + figure.tight_layout() + figure.savefig(PAYLOAD_COMPARISON_PLOT_PATH, dpi=160) + plt.close(figure) + + +def save_plots(results: list[SimulationResult]) -> None: + save_independent_plot(results) + save_ber_plot(results) + save_burst_plot(results) + save_payload_comparison_plot(results) + + +def success_matrix_lines( + results: list[SimulationResult], + model: str, + parameters: tuple[float, ...], + parameter_formatter: Callable[[float], str], +) -> list[str]: + lines = [ + "parameter | payload 256 | payload 512 | payload 1024", + "---------:|------------:|------------:|-------------:", + ] + for parameter in parameters: + by_payload = result_lookup(results, model, parameter) + lines.append( + f"{parameter_formatter(parameter)} | " + f"{by_payload[256].composite_success_rate * 100.0:.3f}% | " + f"{by_payload[512].composite_success_rate * 100.0:.3f}% | " + f"{by_payload[1024].composite_success_rate * 100.0:.3f}%" + ) + return lines + + +def burst_table_lines( + results: list[SimulationResult], +) -> list[str]: + lines = [ + ( + "scenario | payload | expected loss | observed loss | " + "mean/max burst | composite success | burst distribution" + ), + ( + "--------:|--------:|--------------:|--------------:|" + "---------------:|------------------:|:------------------" + ), + ] + for scenario in BURST_SCENARIOS: + by_payload = result_lookup( + results, "burst", scenario=scenario.name + ) + for payload_size in PAYLOAD_SIZES: + result = by_payload[payload_size] + lines.append( + f"{scenario.name} | {payload_size} | " + f"{result.expected_loss_probability * 100.0:.3f}% | " + f"{result.observed_loss_probability * 100.0:.3f}% | " + f"{result.mean_loss_burst_length:.3f}/" + f"{result.max_loss_burst_length} | " + f"{result.composite_success_rate * 100.0:.3f}% | " + f"{result.loss_burst_distribution}" + ) + return lines + + +def comparison_table_lines( + results: list[SimulationResult], +) -> list[str]: + loss = result_lookup(results, "independent_loss", 0.01) + ber = result_lookup(results, "ber", 1e-6) + burst = result_lookup(results, "burst", scenario="medium") + lines = [ + ( + "payload | loss 1% success | BER 1e-6 success | " + "medium burst success | Lab028 wire kbit/s" + ), + ( + "-------:|----------------:|-----------------:|" + "---------------------:|--------------------:" + ), + ] + lab028_wire_bitrate = { + 256: 178.233323, + 512: 168.396019, + 1024: 163.662279, + } + for payload_size in PAYLOAD_SIZES: + lines.append( + f"{payload_size} | " + f"{loss[payload_size].composite_success_rate * 100.0:.3f}% | " + f"{ber[payload_size].composite_success_rate * 100.0:.3f}% | " + f"{burst[payload_size].composite_success_rate * 100.0:.3f}% | " + f"{lab028_wire_bitrate[payload_size]:.3f}" + ) + return lines + + +def write_report( + metadata: VideoMetadata, + composites: list[EncodedComposite], + profiles: dict[int, PreparedProfile], + results: list[SimulationResult], + functional_tests: list[FunctionalTestResult], +) -> None: + lines = [ + "Lab029. Прохождение видеопакетов через канал с потерями и ошибками", + "", + "Исходные данные и неизменный транспорт Lab028", + f"- Видео: {SOURCE_VIDEO_PATH}", + ( + f"- Источник: {metadata.width}x{metadata.height}, " + f"{metadata.fps:.6f} fps, {metadata.frame_count} кадров, " + f"{metadata.duration_seconds:.6f} с." + ), + ( + f"- Реальных синхронных JPEG-пар: {len(composites)}; " + "BASE 240x135 grayscale Q23, ROI 320x180 grayscale Q33, " + "3 composite fps." + ), + ( + "- Использован protocol/video_packet.py без изменения: " + "32-byte header, packet CRC32, object CRC32, отдельные BASE/ROI " + "и атомарная выдача CompositeReassembler." + ), + ( + "- Payload: " + + ", ".join(str(value) for value in PAYLOAD_SIZES) + + " байт." + ), + ( + "- Пакетов в одном проходе: " + + ", ".join( + f"{payload} B={len(profiles[payload].packets)}" + for payload in PAYLOAD_SIZES + ) + + "." + ), + "", + "Методика Monte Carlo", + f"- Повторов на каждую строку: {MONTE_CARLO_REPETITIONS}.", + ( + f"- Master seed: {MASTER_SEED}; independent seeds " + f"{INDEPENDENT_SEED_BASE}...{INDEPENDENT_SEED_BASE + 5}; " + f"BER seeds {BER_SEED_BASE}...{BER_SEED_BASE + 5}; " + f"burst seeds {BURST_SEED_BASE}...{BURST_SEED_BASE + 2}." + ), + ( + "- Для одинакового параметра один seed повторно используется " + "для payload 256/512/1024, чтобы сравнение было коррелированным " + "и воспроизводимым." + ), + ( + "- packet_delivery_rate = (received - CRC rejected) / " + "transmitted." + ), + ( + "- effective delivered JPEG bitrate учитывает BASE+ROI bytes " + "только атомарно выданных составных кадров и полное " + "симулированное время." + ), + ( + "- Потерянный фрагмент — физически потерянный пакет или пакет, " + "отклонённый проверкой транспорта." + ), + ( + "- FEC, ARQ, повторные передачи и интерливинг не применяются." + ), + "", + "Модели канала", + ( + "- Independent loss: каждый пакет теряется независимо с " + "заданной вероятностью." + ), + ( + "- BER: число независимых битовых ошибок выбирается binomial " + "по полной длине пакета в битах, включая 32-byte header; " + "выбранные биты физически инвертируются перед reassembler." + ), + ( + "- Gilbert-Elliott: Good доставляет все пакеты, Bad теряет все. " + "Начальное состояние выбирается из стационарного распределения." + ), + ( + "- В Lab029 длительность состояния Bad и серии потерь задаётся " + "количеством пакетов, а не физическим временем." + ), + ( + "- Серия из одинакового количества пакетов имеет разную " + "физическую длительность для payload 256, 512 и 1024 байта, " + "поскольку различается время передачи пакета." + ), + ( + "- Доля успешно восстановленных кадров не показывает " + "длительность непрерывного отсутствия нового изображения." + ), + ( + "- Поэтому burst-loss результаты Lab029 не являются " + "окончательным сравнением размеров payload; для временного " + "сравнения предназначена Lab029B." + ), + ] + for scenario in BURST_SCENARIOS: + lines.append( + f" - {scenario.name}: {scenario.description}; " + f"P(G->B)={scenario.good_to_bad_probability:.9f}, " + f"P(B->G)={scenario.bad_to_good_probability:.9f}, " + f"stationary loss={BURST_STATIONARY_LOSS_PROBABILITY:.3%}, " + f"expected mean burst={scenario.expected_mean_burst:.1f}." + ) + + lines.extend(["", "Функциональные проверки"]) + lines.extend( + f"- {'PASS' if test.passed else 'FAIL'} {test.name}: {test.detail}" + for test in functional_tests + ) + lines.extend( + [ + "", + "1. Independent packet loss — atomic composite success", + *success_matrix_lines( + results, + "independent_loss", + PACKET_LOSS_PROBABILITIES, + lambda value: f"{value * 100.0:.1f}%", + ), + "", + "2. BER — atomic composite success", + *success_matrix_lines( + results, + "ber", + BER_VALUES, + lambda value: "0" if value == 0.0 else f"{value:.0e}", + ), + "", + "3. Burst-loss", + *burst_table_lines(results), + "", + "4. Сравнение payload 256/512/1024", + *comparison_table_lines(results), + "", + "Интерпретация", + ( + "- При фиксированной вероятности потери пакета крупный " + "payload уменьшает число обязательных фрагментов. Поскольку " + "потеря любого фрагмента делает объект неполным, меньшее " + "число пакетов обычно повышает шанс полного кадра." + ), + ( + "- При фиксированном BER длинный отдельный пакет чаще " + "повреждается: P(error)=1-(1-BER)^(packet_bits). Одновременно " + "крупный payload уменьшает число 32-byte headers и общую " + "длину wire-потока, поэтому итоговый composite success " + "определяется обоими эффектами." + ), + ( + "- Атомарная сборка требует одновременной готовности BASE и " + "ROI. Даже полностью собранный BASE не даёт полезного " + "составного кадра без ROI, поэтому composite success ниже " + "успеха каждого объекта отдельно." + ), + ( + "- Burst-loss особенно опасен без интерливинга: соседние " + "фрагменты и иногда соседние кадры теряются одной серией, " + "а CRC только обнаруживает ошибку и не восстанавливает " + "данные." + ), + ( + "- Payload 256 B даёт наименьшую длину отдельного пакета и " + "наименьшую вероятность BER-повреждения одного пакета, но " + "требует больше всего фрагментов и headers." + ), + ( + "- Payload 512 B остаётся умеренным рабочим кандидатом между " + "packet count и длиной отдельного пакета." + ), + ( + "- Payload 1024 B даёт минимум пакетов и header overhead в " + "этих моделях, но каждый пакет длиннее и при его потере " + "пропадает более крупный фрагмент JPEG." + ), + ( + "- Окончательный packet payload автоматически не выбирается; " + "для решения нужны Lab029 и последующие данные реального " + "радиоканала, FEC/ARQ и задержек." + ), + "", + "Артефакты", + f"- CSV: {CSV_PATH}", + f"- Independent loss plot: {INDEPENDENT_PLOT_PATH}", + f"- BER plot: {BER_PLOT_PATH}", + f"- Burst plot: {BURST_PLOT_PATH}", + f"- Payload comparison: {PAYLOAD_COMPARISON_PLOT_PATH}", + ( + "- JPEG, пакеты и бинарные дампы на диск не сохранялись." + ), + "", + ] + ) + REPORT_PATH.write_text("\n".join(lines), encoding="utf-8") + + +def validate_results(results: list[SimulationResult]) -> None: + if len(results) != 45: + raise RuntimeError(f"expected 45 result rows, got {len(results)}") + keys = { + ( + result.model, + result.parameter_value, + result.scenario, + result.payload_size, + ) + for result in results + } + if len(keys) != len(results): + raise RuntimeError("result rows are not unique") + for result in results: + if not 0.0 <= result.packet_delivery_rate <= 1.0: + raise RuntimeError("packet delivery rate is outside 0...1") + if not 0.0 <= result.composite_success_rate <= 1.0: + raise RuntimeError("composite success rate is outside 0...1") + if ( + result.received_packets + result.lost_packets + != result.transmitted_packets + ): + raise RuntimeError("packet receive/loss accounting disagrees") + + +def validate_output_files() -> None: + for path in ( + CSV_PATH, + REPORT_PATH, + INDEPENDENT_PLOT_PATH, + BER_PLOT_PATH, + BURST_PLOT_PATH, + PAYLOAD_COMPARISON_PLOT_PATH, + ): + if not path.exists() or path.stat().st_size <= 0: + raise RuntimeError(f"missing or empty output: {path}") + + +def main() -> None: + print("Lab029: loading real Lab028 BASE/ROI JPEG profile...") + metadata, composites = load_video_profile(SOURCE_VIDEO_PATH) + profiles = prepare_profiles(composites) + print( + f" source={metadata.width}x{metadata.height}, " + f"frames={metadata.frame_count}, composites={len(composites)}" + ) + for payload_size in PAYLOAD_SIZES: + print( + f" payload={payload_size}: " + f"{len(profiles[payload_size].packets)} packets/pass" + ) + + print( + f"Running 45 Monte Carlo conditions, " + f"{MONTE_CARLO_REPETITIONS} repetitions each..." + ) + results = run_monte_carlo(profiles, metadata) + validate_results(results) + + print("Running Lab029 functional checks...") + functional_tests = run_functional_tests( + composites, profiles, metadata, results + ) + for test in functional_tests: + print(f" PASS {test.name}: {test.detail}") + + OUTPUT_DIRECTORY.mkdir(parents=True, exist_ok=True) + save_csv(results) + save_plots(results) + write_report( + metadata, + composites, + profiles, + results, + functional_tests, + ) + validate_output_files() + + print("Representative composite success rates:") + for payload_size in PAYLOAD_SIZES: + loss_result = result_lookup( + results, "independent_loss", 0.01 + )[payload_size] + ber_result = result_lookup( + results, "ber", 1e-6 + )[payload_size] + burst_result = result_lookup( + results, "burst", scenario="medium" + )[payload_size] + print( + f" payload={payload_size}: " + f"loss1%={loss_result.composite_success_rate:.6f}, " + f"BER1e-6={ber_result.composite_success_rate:.6f}, " + f"burst-medium={burst_result.composite_success_rate:.6f}" + ) + print(f"CSV: {CSV_PATH}") + print(f"Report: {REPORT_PATH}") + print("Lab029 completed successfully.") + + +if __name__ == "__main__": + main()