Lab052: suppress false preamble candidates

This commit is contained in:
LittleSam129
2026-09-08 17:29:52 +03:00
parent 9f33607d3a
commit cc38900cae
27 changed files with 77397 additions and 0 deletions

View File

@@ -0,0 +1,27 @@
{
"checks": {
"median_whole_timeline": true,
"all_240_packets": true,
"all_30_exact_jpegs": true,
"same_240_unique_refined_starts": true,
"same_first_stage_counts": true,
"false_count_15": true,
"no_sensitivity_losses": true,
"bounded_long_iq": true,
"longer_than_main": true,
"long_noise_accepts_zero": true,
"finish_clears_iq_and_candidates": true,
"old20k_36_crc_and_sha": true,
"measured_cpu_sum": true,
"radio_protocol_files_unchanged": true
},
"required_regressions_pass": true,
"software_5fps_target_pass": false,
"real_time_capable": false,
"fresh_display_fps": 0.0,
"processing_per_rf_second": 1.2192732766011487,
"speedup_same_fixture": 5.649181959197251,
"false_candidate_reduction": 9784.333333333334,
"rf_tx": 0,
"protocol_check_command": "git status --porcelain --untracked-files=all -- protocol"
}

View File

@@ -0,0 +1,13 @@
{
"observed_array_objects": 6754,
"observed_owned_arrays": 6681,
"observed_owned_bytes_total": 37378942,
"tracemalloc_retained_bytes": 6461,
"tracemalloc_peak_bytes": 11586792,
"array_count_is_lower_bound": true,
"iq_seconds": 0.063184125,
"packets": 1,
"interpretation": "observed Python ndarray lower bound; tracked RX allocation peak; input IQ prepared before tracing",
"timing_not_used_as_benchmark": true,
"rf_tx": 0
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 162 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 239 KiB

View File

@@ -0,0 +1,74 @@
7786130 function calls (7783174 primitive calls) in 12.641 seconds
Ordered by: internal time
List reduced from 336 to 30 due to restriction <30>
ncalls tottime percall cumtime percall filename:lineno(function)
7779 2.401 0.000 2.401 0.000 {built-in method scipy.fft._duccfft.pyduccfft.c2c}
240 1.355 0.006 1.363 0.006 lab051_streaming_receiver.py:139(fast_viterbi)
1467 1.290 0.001 1.301 0.001 _upfirdn.py:91(apply_filter)
312654 1.160 0.000 2.039 0.000 numeric.py:2337(isclose)
738 0.665 0.001 12.616 0.017 lab050_streaming_receiver.py:133(push_iq_block)
974 0.519 0.001 2.622 0.003 bpsk_radio.py:1079(root_raised_cosine_taps)
734 0.515 0.001 3.251 0.004 lab044_hackrf_bpsk_packet.py:189(_scale_and_carrier)
2746 0.327 0.000 0.327 0.000 {method 'copy' of 'numpy.ndarray' objects}
1455 0.267 0.000 0.269 0.000 lab043_pluto_to_rtlsdr.py:516(pilot_prbs7)
1563270 0.251 0.000 0.360 0.000 numeric.py:2429(<genexpr>)
2593 0.228 0.000 3.133 0.001 _signaltools.py:485(_freq_domain_conv)
1934 0.160 0.000 0.160 0.000 {method 'cumsum' of 'numpy.ndarray' objects}
7779 0.155 0.000 0.261 0.000 helper.py:146(_fix_shape)
16722 0.153 0.000 0.153 0.000 {built-in method numpy.zeros}
1624470 0.152 0.000 0.163 0.000 {built-in method builtins.isinstance}
29235 0.144 0.000 0.149 0.000 {built-in method numpy.array}
313134 0.128 0.000 0.251 0.000 _ufunc_config.py:440(__enter__)
480 0.125 0.000 1.649 0.003 lab051_streaming_receiver.py:258(matched_window)
12394 0.113 0.000 0.113 0.000 {method 'reduce' of 'numpy.ufunc' objects}
480 0.095 0.000 2.613 0.005 lab051_streaming_receiver.py:287(extract)
734 0.093 0.000 0.093 0.000 {built-in method scipy.ndimage._nd_image.min_or_max_filter1d}
784660 0.076 0.000 0.076 0.000 {built-in method builtins.abs}
734 0.074 0.000 0.540 0.001 lab043_hackrf_bpsk.py:248(_normalized_sliding_correlation)
313134 0.074 0.000 0.074 0.000 {built-in method numpy._core._multiarray_umath._make_extobj}
313134 0.071 0.000 0.124 0.000 _ufunc_config.py:456(__exit__)
885 0.070 0.000 0.075 0.000 _arraypad_impl.py:86(_pad_simple)
480 0.070 0.000 0.210 0.000 lab043_hackrf_bpsk.py:530(_evaluate_symbols)
5894 0.061 0.000 0.061 0.000 {method 'reshape' of 'numpy.ndarray' objects}
734 0.060 0.000 11.916 0.016 lab052_candidate_detection.py:142(_scan)
734 0.057 0.000 2.708 0.004 lab043_pluto_to_rtlsdr.py:458(shape_frame_like_lab042)
7786130 function calls (7783174 primitive calls) in 12.641 seconds
Ordered by: cumulative time
List reduced from 336 to 30 due to restriction <30>
ncalls tottime percall cumtime percall filename:lineno(function)
738 0.665 0.001 12.616 0.017 lab050_streaming_receiver.py:133(push_iq_block)
734 0.060 0.000 11.916 0.016 lab052_candidate_detection.py:142(_scan)
240 0.022 0.000 5.697 0.024 lab046c_offline_recovery.py:637(decode_candidate_from_memmap)
734 0.004 0.000 3.548 0.005 lab051_streaming_receiver.py:185(__init__)
734 0.007 0.000 3.544 0.005 lab044_hackrf_bpsk_packet.py:257(_preamble_reference_samples)
734 0.515 0.001 3.251 0.004 lab044_hackrf_bpsk_packet.py:189(_scale_and_carrier)
2593 0.228 0.000 3.133 0.001 _signaltools.py:485(_freq_domain_conv)
7779 0.012 0.000 2.869 0.000 _backend.py:19(__ua_function__)
7779 0.020 0.000 2.847 0.000 _basic_backend.py:52(_execute_nD)
7779 0.030 0.000 2.824 0.000 basic.py:126(c2cn)
2188 0.036 0.000 2.806 0.001 _signaltools.py:589(fftconvolve)
734 0.057 0.000 2.708 0.004 lab043_pluto_to_rtlsdr.py:458(shape_frame_like_lab042)
974 0.519 0.001 2.622 0.003 bpsk_radio.py:1079(root_raised_cosine_taps)
480 0.095 0.000 2.613 0.005 lab051_streaming_receiver.py:287(extract)
7779 2.401 0.000 2.401 0.000 {built-in method scipy.fft._duccfft.pyduccfft.c2c}
734 0.025 0.000 2.057 0.003 lab052_candidate_detection.py:112(coarse_scores)
312654 1.160 0.000 2.039 0.000 numeric.py:2337(isclose)
5186 0.005 0.000 1.855 0.000 _basic_backend.py:113(fftn)
480 0.125 0.000 1.649 0.003 lab051_streaming_receiver.py:258(matched_window)
240 0.023 0.000 1.508 0.006 lab045_hackrf_bpsk_fec.py:476(analyze_post_preamble_soft)
240 0.052 0.000 1.497 0.006 lab051_streaming_receiver.py:222(refine)
734 0.030 0.000 1.415 0.002 lab051_streaming_receiver.py:113(get)
1467 0.003 0.000 1.383 0.001 lab051_streaming_receiver.py:120(filtered)
1467 0.026 0.000 1.379 0.001 _signaltools.py:3884(resample_poly)
240 1.355 0.006 1.363 0.006 lab051_streaming_receiver.py:139(fast_viterbi)
1467 0.005 0.000 1.331 0.001 _upfirdn.py:108(upfirdn)
1467 1.290 0.001 1.301 0.001 _upfirdn.py:91(apply_filter)
2593 0.002 0.000 0.999 0.000 _basic_backend.py:120(ifftn)
405 0.022 0.000 0.797 0.002 _signaltools.py:850(oaconvolve)
240 0.001 0.000 0.661 0.003 lab043_hackrf_bpsk.py:366(_matched_filter_taps)

View File

@@ -0,0 +1,115 @@
{
"blocks": 2048,
"iq_seconds": 16.777216,
"background_scales": [
0.002,
0.2,
20,
0.02
],
"accepted_noise_packets": 0,
"peak_retained_iq_bytes": 3177728,
"iq_limit_bytes": 3398912,
"retained_after_finish_bytes": 0,
"constant_template_bytes": 171140,
"candidate_state_after_finish": 0,
"peak_eligible_candidates": 1,
"peak_cluster_count": 1,
"detector": {
"total_local_peaks": 4783206,
"first_stage_candidates": 1068038,
"cheap_stage_checked": 1068038,
"cheap_stage_rejected": 1068037,
"clusters": 1,
"representative_checks": 1
},
"strict_candidates": 1,
"processing_seconds": 8.453774801455438,
"checkpoints": [
{
"block": 256,
"iq_bytes": 2653440,
"decimated_bytes": 397216,
"retained_candidates": 0,
"peak_eligible_candidates": 0,
"counter_keys": 5,
"rss_bytes": 137297920,
"peak_rss_bytes": 168501248
},
{
"block": 512,
"iq_bytes": 2653440,
"decimated_bytes": 397216,
"retained_candidates": 0,
"peak_eligible_candidates": 1,
"counter_keys": 7,
"rss_bytes": 139948032,
"peak_rss_bytes": 168501248
},
{
"block": 768,
"iq_bytes": 2653440,
"decimated_bytes": 397216,
"retained_candidates": 0,
"peak_eligible_candidates": 1,
"counter_keys": 7,
"rss_bytes": 140001280,
"peak_rss_bytes": 168501248
},
{
"block": 1024,
"iq_bytes": 2653440,
"decimated_bytes": 397216,
"retained_candidates": 0,
"peak_eligible_candidates": 1,
"counter_keys": 7,
"rss_bytes": 140533760,
"peak_rss_bytes": 168501248
},
{
"block": 1280,
"iq_bytes": 2653440,
"decimated_bytes": 397216,
"retained_candidates": 0,
"peak_eligible_candidates": 1,
"counter_keys": 7,
"rss_bytes": 140533760,
"peak_rss_bytes": 168501248
},
{
"block": 1536,
"iq_bytes": 2653440,
"decimated_bytes": 397216,
"retained_candidates": 0,
"peak_eligible_candidates": 1,
"counter_keys": 7,
"rss_bytes": 140541952,
"peak_rss_bytes": 168501248
},
{
"block": 1792,
"iq_bytes": 2653440,
"decimated_bytes": 397216,
"retained_candidates": 0,
"peak_eligible_candidates": 1,
"counter_keys": 7,
"rss_bytes": 140550144,
"peak_rss_bytes": 168501248
},
{
"block": 2048,
"iq_bytes": 2653440,
"decimated_bytes": 397216,
"retained_candidates": 0,
"peak_eligible_candidates": 1,
"counter_keys": 7,
"rss_bytes": 140550144,
"peak_rss_bytes": 168501248
}
],
"process_memory": {
"rss_bytes": 135602176,
"peak_rss_bytes": 168501248
},
"rf_tx": 0
}

View File

@@ -0,0 +1,74 @@
1173653 function calls (1170697 primitive calls) in 8.087 seconds
Ordered by: internal time
List reduced from 324 to 30 due to restriction <30>
ncalls tottime percall cumtime percall filename:lineno(function)
10251 1.650 0.000 1.650 0.000 {built-in method scipy.fft._duccfft.pyduccfft.c2c}
240 1.397 0.006 1.405 0.006 lab051_streaming_receiver.py:139(fast_viterbi)
1467 1.295 0.001 1.308 0.001 _upfirdn.py:91(apply_filter)
738 0.553 0.001 8.065 0.011 lab050_streaming_receiver.py:133(push_iq_block)
2701 0.313 0.000 0.313 0.000 {method 'copy' of 'numpy.ndarray' objects}
14414 0.167 0.000 0.167 0.000 {built-in method numpy.zeros}
3417 0.157 0.000 2.311 0.001 _signaltools.py:485(_freq_domain_conv)
734 0.152 0.000 7.483 0.010 lab052_candidate_detection.py:181(_scan)
2687 0.145 0.000 0.145 0.000 {method 'cumsum' of 'numpy.ndarray' objects}
11504 0.113 0.000 0.113 0.000 {method 'reduce' of 'numpy.ufunc' objects}
488 0.098 0.000 0.865 0.002 lab051_streaming_receiver.py:258(matched_window)
734 0.095 0.000 0.531 0.001 lab052_candidate_detection.py:125(split_scores)
35184 0.091 0.000 0.097 0.000 {built-in method numpy.array}
495 0.085 0.000 1.733 0.004 lab051_streaming_receiver.py:287(extract)
488 0.075 0.000 0.225 0.000 lab043_hackrf_bpsk.py:530(_evaluate_symbols)
734 0.069 0.000 7.321 0.010 lab052_candidate_detection.py:185(_scan_with_templates)
10251 0.068 0.000 0.222 0.000 helper.py:146(_fix_shape)
734 0.062 0.000 0.372 0.001 lab043_hackrf_bpsk.py:248(_normalized_sliding_correlation)
240 0.059 0.000 0.083 0.000 bit_interleaver.py:41(build_permutation)
972 0.052 0.000 0.055 0.000 _arraypad_impl.py:86(_pad_simple)
488 0.051 0.000 0.533 0.001 lab051_streaming_receiver.py:41(fast_preamble_timing)
734 0.049 0.000 1.457 0.002 lab051_streaming_receiver.py:113(get)
255 0.049 0.000 1.084 0.004 lab051_streaming_receiver.py:222(refine)
13668 0.045 0.000 0.107 0.000 helper.py:47(_init_nd_shape_and_axes)
488 0.043 0.000 0.119 0.000 lab043_hackrf_bpsk.py:454(_estimate_cfo_gain)
2933 0.040 0.000 2.010 0.001 _signaltools.py:589(fftconvolve)
31006 0.040 0.000 0.040 0.000 {built-in method numpy.asarray}
5366 0.038 0.000 0.038 0.000 {method 'reshape' of 'numpy.ndarray' objects}
10251 0.034 0.000 2.061 0.000 basic.py:126(c2cn)
1467 0.032 0.000 1.401 0.001 _signaltools.py:3884(resample_poly)
1173653 function calls (1170697 primitive calls) in 8.087 seconds
Ordered by: cumulative time
List reduced from 324 to 30 due to restriction <30>
ncalls tottime percall cumtime percall filename:lineno(function)
738 0.553 0.001 8.065 0.011 lab050_streaming_receiver.py:133(push_iq_block)
734 0.152 0.000 7.483 0.010 lab052_candidate_detection.py:181(_scan)
734 0.069 0.000 7.321 0.010 lab052_candidate_detection.py:185(_scan_with_templates)
255 0.026 0.000 4.417 0.017 lab046c_offline_recovery.py:637(decode_candidate_from_memmap)
3417 0.157 0.000 2.311 0.001 _signaltools.py:485(_freq_domain_conv)
10251 0.014 0.000 2.110 0.000 _backend.py:19(__ua_function__)
10251 0.021 0.000 2.086 0.000 _basic_backend.py:52(_execute_nD)
10251 0.034 0.000 2.061 0.000 basic.py:126(c2cn)
2933 0.040 0.000 2.010 0.001 _signaltools.py:589(fftconvolve)
734 0.025 0.000 1.932 0.003 lab052_candidate_detection.py:111(coarse_scores)
495 0.085 0.000 1.733 0.004 lab051_streaming_receiver.py:287(extract)
10251 1.650 0.000 1.650 0.000 {built-in method scipy.fft._duccfft.pyduccfft.c2c}
240 0.026 0.000 1.558 0.006 lab045_hackrf_bpsk_fec.py:476(analyze_post_preamble_soft)
734 0.049 0.000 1.457 0.002 lab051_streaming_receiver.py:113(get)
1467 0.004 0.000 1.406 0.001 lab051_streaming_receiver.py:120(filtered)
240 1.397 0.006 1.405 0.006 lab051_streaming_receiver.py:139(fast_viterbi)
1467 0.032 0.000 1.401 0.001 _signaltools.py:3884(resample_poly)
6834 0.005 0.000 1.360 0.000 _basic_backend.py:113(fftn)
1467 0.005 0.000 1.342 0.001 _upfirdn.py:108(upfirdn)
1467 1.295 0.001 1.308 0.001 _upfirdn.py:91(apply_filter)
255 0.049 0.000 1.084 0.004 lab051_streaming_receiver.py:222(refine)
488 0.098 0.000 0.865 0.002 lab051_streaming_receiver.py:258(matched_window)
3417 0.002 0.000 0.733 0.000 _basic_backend.py:120(ifftn)
484 0.022 0.000 0.712 0.001 _signaltools.py:850(oaconvolve)
488 0.002 0.000 0.535 0.001 lab051_streaming_receiver.py:283(timing)
488 0.051 0.000 0.533 0.001 lab051_streaming_receiver.py:41(fast_preamble_timing)
734 0.095 0.000 0.531 0.001 lab052_candidate_detection.py:125(split_scores)
734 0.062 0.000 0.372 0.001 lab043_hackrf_bpsk.py:248(_normalized_sliding_correlation)
2701 0.313 0.000 0.313 0.000 {method 'copy' of 'numpy.ndarray' objects}
488 0.075 0.000 0.225 0.000 lab043_hackrf_bpsk.py:530(_evaluate_symbols)

View File

@@ -0,0 +1,198 @@
{
"stage": "LAB048_OFFLINE_RECEIVER_PERFORMANCE",
"baseline": {
"capture_seconds": 15.0,
"full_processing_seconds": 37.423910000012256,
"strict_stage_seconds": 32.45996900013415,
"average_strict_candidate_seconds": 0.47043433333527757,
"approximate_peak_bytes": 1545755352
},
"optimized": {
"capture_seconds": 15.0,
"full_processing_seconds": 13.213345700060017,
"coarse_search_seconds": 4.5940155000425875,
"strict_stage_seconds": 8.609627199941315,
"average_strict_candidate_seconds": 0.12477720579625094,
"approximate_peak_bytes": 1545755352,
"stage_measurements": {
"cs8_to_complex64": {
"calls": 113,
"cumulative_seconds": 1.3091708993306383
},
"refine_start": {
"calls": 69,
"cumulative_seconds": 2.8543391003040597
},
"matched_filter": {
"calls": 105,
"cumulative_seconds": 3.088835699832998
},
"timing": {
"calls": 105,
"cumulative_seconds": 1.2946644995827228
},
"cfo_phase_soft": {
"calls": 105,
"cumulative_seconds": 0.0416537004057318
},
"phy_header": {
"calls": 105,
"cumulative_seconds": 0.004346300149336457
},
"post_preamble_fec_crc": {
"calls": 36,
"cumulative_seconds": 0.6405917998636141
},
"viterbi": {
"calls": 36,
"cumulative_seconds": 0.6221252002287656
}
},
"memory_arrays": [
{
"name": "coarse_iq_window",
"dtype": "complex64",
"shape": [
16000000
],
"bytes": 128000000,
"mib": 122.0703125
},
{
"name": "coarse_decimated",
"dtype": "complex64",
"shape": [
800000
],
"bytes": 6400000,
"mib": 6.103515625
},
{
"name": "coarse_downconversion_vector",
"dtype": "complex64",
"shape": [
800000
],
"bytes": 6400000,
"mib": 6.103515625
},
{
"name": "coarse_correlation_scores",
"dtype": "float32",
"shape": [
773561
],
"bytes": 3094244,
"mib": 2.9509010314941406
},
{
"name": "strict_full_iq_window",
"dtype": "complex64",
"shape": [
2306400
],
"bytes": 18451200,
"mib": 17.596435546875
},
{
"name": "strict_cached_carrier_vector",
"dtype": "complex64",
"shape": [
2306400
],
"bytes": 18451200,
"mib": 17.596435546875
},
{
"name": "strict_baseband",
"dtype": "complex64",
"shape": [
2306400
],
"bytes": 18451200,
"mib": 17.596435546875
},
{
"name": "strict_matched_output",
"dtype": "complex64",
"shape": [
2310400
],
"bytes": 18483200,
"mib": 17.626953125
},
{
"name": "matched_filter_taps",
"dtype": "float32",
"shape": [
4001
],
"bytes": 16004,
"mib": 0.015262603759765625
}
]
},
"speedup": 2.8322811534282546,
"processing_to_capture_ratio": 0.8808897133373345,
"real_time_capable": true,
"threshold": 0.030964473262429237,
"threshold_changed": false,
"coarse": {
"total_local_peaks": 185828,
"first_stage_candidates": 32414,
"skipped_as_owned_event": 32345,
"exact_duplicates": 0
},
"strict": {
"candidates_processed": 69,
"rejected_during_refinement": 0,
"refinement_pass": 69,
"timing_pass": 69,
"carrier_pass": 69,
"phy_header_pass": 36,
"phy_header_fail": 33,
"fec_attempts": 36,
"fec_pass": 36,
"fec_fail": 0,
"protocol_parse_pass": 36,
"crc_pass": 36,
"crc_fail": 0,
"valid_frames": 36
},
"object": {
"valid_fragments": 36,
"missing_fragments": [],
"object_complete": true
},
"after_independent_verdict": {
"stage": "AFTER_COMPLETED_INDEPENDENT_VERDICT_ONLY",
"expected_tx_frames": 36,
"matched_valid_frames": 36,
"missed_tx_frames": [],
"false_crc_pass": 0,
"duplicate_valid_detections": 0,
"total_pre_fec_coded_bit_errors": 19,
"total_post_fec_protocol_bit_errors": 0,
"jpeg_size": 8724,
"recovered_sha256": "e913dab9ac32795250880a4be67fbbbf89a4f96536842476ab591d1acaafc02a",
"tx_sha256": "e913dab9ac32795250880a4be67fbbbf89a4f96536842476ab591d1acaafc02a",
"sha_match": true,
"byte_errors": 0,
"bit_errors": 0,
"jpeg_decode": "PASS",
"width": 320,
"height": 240
},
"receiver_oracles": {
"expected_frame_count": false,
"tx_coded_bits": false,
"tx_fragment_indexes": false,
"tx_frame_offsets": false,
"tx_image": false,
"tx_packets": false
},
"phy_changed": false,
"fec_changed": false,
"bpsk_changed": false,
"rf_tx": 0
}

View File

@@ -0,0 +1,124 @@
{
"rules": [
{
"rule": {
"parts": 0,
"radius_samples": 20480,
"part_threshold": null
},
"received_images": 30,
"object_jpeg_integrity": true,
"true_candidates_lost": 0,
"false_candidate_reduction": 263.9658273381295,
"detector": {
"total_local_peaks": 1675842,
"first_stage_candidates": 390639,
"clusters": 900,
"cheap_stage_checked": 796,
"inside_accepted_frame": 104,
"strict_true_candidates": 240,
"strict_false_candidates": 556,
"strict_checks_per_rf_second": 131.691796196688,
"cheap_seconds": 0.0009583993814885616,
"cluster_seconds": 0.15876410226337612,
"peak_cluster_count": 7,
"candidate_state_after_finish": 0,
"detection_arrays_peak_estimate_bytes": 1243896
},
"processing_per_rf_second": 2.6724659422897794,
"fresh_display_fps": 0.0
},
{
"rule": {
"parts": 1,
"radius_samples": 20480,
"part_threshold": 0.05995104488778001
},
"received_images": 30,
"object_jpeg_integrity": true,
"true_candidates_lost": 0,
"false_candidate_reduction": 1298.8053097345132,
"detector": {
"total_local_peaks": 1675842,
"first_stage_candidates": 390639,
"clusters": 900,
"cheap_stage_checked": 796,
"inside_accepted_frame": 104,
"cheap_stage_rejected": 443,
"strict_true_candidates": 240,
"strict_false_candidates": 113,
"strict_checks_per_rf_second": 58.40101012240058,
"cheap_seconds": 0.03248489915858954,
"cluster_seconds": 0.16109760117251426,
"peak_cluster_count": 7,
"candidate_state_after_finish": 0,
"detection_arrays_peak_estimate_bytes": 1243896
},
"processing_per_rf_second": 2.059989517566315,
"fresh_display_fps": 0.0
},
{
"rule": {
"parts": 2,
"radius_samples": 20480,
"part_threshold": 0.08474038063392896
},
"received_images": 30,
"object_jpeg_integrity": true,
"true_candidates_lost": 0,
"false_candidate_reduction": null,
"detector": {
"total_local_peaks": 1675842,
"first_stage_candidates": 390639,
"clusters": 900,
"cheap_stage_checked": 796,
"inside_accepted_frame": 104,
"cheap_stage_rejected": 556,
"strict_true_candidates": 240,
"strict_false_candidates": 0,
"strict_checks_per_rf_second": 39.706069205031554,
"cheap_seconds": 0.035114401835016906,
"cluster_seconds": 0.16016869980376214,
"peak_cluster_count": 7,
"candidate_state_after_finish": 0,
"detection_arrays_peak_estimate_bytes": 1243896
},
"processing_per_rf_second": 1.8833212008846116,
"fresh_display_fps": 0.0,
"false_candidate_reduction_fraction": 1.0
},
{
"rule": {
"parts": 3,
"radius_samples": 20480,
"part_threshold": 0.10381329338988134
},
"received_images": 30,
"object_jpeg_integrity": true,
"true_candidates_lost": 0,
"false_candidate_reduction": null,
"detector": {
"total_local_peaks": 1675842,
"first_stage_candidates": 390639,
"clusters": 900,
"cheap_stage_checked": 796,
"inside_accepted_frame": 104,
"cheap_stage_rejected": 556,
"strict_true_candidates": 240,
"strict_false_candidates": 0,
"strict_checks_per_rf_second": 39.706069205031554,
"cheap_seconds": 0.03812550043221563,
"cluster_seconds": 0.16675639932509512,
"peak_cluster_count": 7,
"candidate_state_after_finish": 0,
"detection_arrays_peak_estimate_bytes": 1243896
},
"processing_per_rf_second": 1.8967992111861114,
"fresh_display_fps": 0.0,
"false_candidate_reduction_fraction": 1.0
}
],
"rf_tx": 0,
"status": "REJECTED: strong invalid preamble suppresses neighboring valid packet",
"timing_includes_observer": true
}

View File

@@ -0,0 +1,121 @@
{
"rules": [
{
"rule": {
"parts": 0,
"width_samples": 20480,
"part_threshold": null
},
"received_images": 30,
"object_jpeg_integrity": true,
"true_candidates_lost": 0,
"false_candidate_reduction": 1.0061838848782763,
"detector": {
"total_local_peaks": 1675842,
"first_stage_candidates": 392785,
"cheap_stage_checked": 392785,
"cheap_stage_rejected": 0,
"clusters": 2777,
"inside_accepted_frame": 246682,
"strict_true_candidates": 240,
"strict_false_candidates": 145863,
"strict_checks_per_rf_second": 24171.56595442802,
"cheap_seconds": 0.0041361990151926875,
"cluster_seconds": 0.009281201055273414,
"peak_cluster_count": 15,
"candidate_state_after_finish": 0,
"detection_arrays_peak_estimate_bytes": 1236912
},
"processing_per_rf_second": 5.978309517500444,
"fresh_display_fps": 0.0
},
{
"rule": {
"parts": 1,
"width_samples": 20480,
"part_threshold": 0.05995104488778001
},
"received_images": 30,
"object_jpeg_integrity": true,
"true_candidates_lost": 0,
"false_candidate_reduction": 442.06325301204816,
"detector": {
"total_local_peaks": 1675842,
"first_stage_candidates": 392785,
"cheap_stage_checked": 392785,
"cheap_stage_rejected": 366683,
"clusters": 1354,
"inside_accepted_frame": 25530,
"strict_true_candidates": 240,
"strict_false_candidates": 332,
"strict_checks_per_rf_second": 94.63279827199187,
"cheap_seconds": 0.32703390275128186,
"cluster_seconds": 0.005597901064902544,
"peak_cluster_count": 4,
"candidate_state_after_finish": 0,
"detection_arrays_peak_estimate_bytes": 1330708
},
"processing_per_rf_second": 1.5535515426894586,
"fresh_display_fps": 0.0
},
{
"rule": {
"parts": 2,
"width_samples": 20480,
"part_threshold": 0.08474038063392896
},
"received_images": 30,
"object_jpeg_integrity": true,
"true_candidates_lost": 0,
"false_candidate_reduction": 9784.333333333334,
"detector": {
"total_local_peaks": 1675842,
"first_stage_candidates": 392785,
"cheap_stage_checked": 392785,
"cheap_stage_rejected": 388407,
"clusters": 384,
"inside_accepted_frame": 4123,
"strict_true_candidates": 240,
"strict_false_candidates": 15,
"strict_checks_per_rf_second": 42.187698530346026,
"cheap_seconds": 0.530722099239938,
"cluster_seconds": 0.0033054009545594454,
"peak_cluster_count": 3,
"candidate_state_after_finish": 0,
"detection_arrays_peak_estimate_bytes": 1480664
},
"processing_per_rf_second": 1.3386680530144077,
"fresh_display_fps": 0.0
},
{
"rule": {
"parts": 3,
"width_samples": 20480,
"part_threshold": 0.10381329338988134
},
"received_images": 30,
"object_jpeg_integrity": true,
"true_candidates_lost": 0,
"false_candidate_reduction": 24460.833333333332,
"detector": {
"total_local_peaks": 1675842,
"first_stage_candidates": 392785,
"cheap_stage_checked": 392785,
"cheap_stage_rejected": 390636,
"clusters": 281,
"inside_accepted_frame": 1903,
"strict_true_candidates": 240,
"strict_false_candidates": 6,
"strict_checks_per_rf_second": 40.69872093515734,
"cheap_seconds": 0.8188061001710594,
"cluster_seconds": 0.0032444989774376154,
"peak_cluster_count": 2,
"candidate_state_after_finish": 0,
"detection_arrays_peak_estimate_bytes": 1630812
},
"processing_per_rf_second": 1.410843181335602,
"fresh_display_fps": 0.0
}
],
"rf_tx": 0
}

View File

@@ -0,0 +1,905 @@
{
"cases": [
{
"ebn0_db": 0,
"cfo_hz": -100,
"seed": 52031,
"amplitude_scale": 0.002,
"baseline": {
"accepted": 0,
"payload_match": false,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 1045,
"CRC_FAIL": 31
}
},
"optimized": {
"accepted": 0,
"payload_match": false,
"reasons": {
"CRC_FAIL": 2,
"PHY_HEADER_MAGIC_MISMATCH": 8
}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 0,
"cfo_hz": -100,
"seed": 52032,
"amplitude_scale": 0.2,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 71
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 0,
"cfo_hz": -100,
"seed": 52033,
"amplitude_scale": 1.0,
"baseline": {
"accepted": 0,
"payload_match": false,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 1029,
"CRC_NOT_REACHED": 11,
"TRUNCATED_SYMBOLS": 20
}
},
"optimized": {
"accepted": 0,
"payload_match": false,
"reasons": {
"CRC_NOT_REACHED": 2,
"PHY_HEADER_MAGIC_MISMATCH": 10
}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 0,
"cfo_hz": 10,
"seed": 52031,
"amplitude_scale": 0.002,
"baseline": {
"accepted": 0,
"payload_match": false,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 1115,
"PHY_HEADER_CHECKSUM_MISMATCH": 33,
"TRUNCATED_SYMBOLS": 10
}
},
"optimized": {
"accepted": 0,
"payload_match": false,
"reasons": {
"PHY_HEADER_CHECKSUM_MISMATCH": 1,
"PHY_HEADER_MAGIC_MISMATCH": 8
}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 0,
"cfo_hz": 10,
"seed": 52032,
"amplitude_scale": 0.2,
"baseline": {
"accepted": 0,
"payload_match": false,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 974,
"PHY_HEADER_CHECKSUM_MISMATCH": 14,
"TRUNCATED_SYMBOLS": 25
}
},
"optimized": {
"accepted": 0,
"payload_match": false,
"reasons": {
"PHY_HEADER_CHECKSUM_MISMATCH": 2,
"PHY_HEADER_MAGIC_MISMATCH": 10
}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 0,
"cfo_hz": 10,
"seed": 52033,
"amplitude_scale": 1.0,
"baseline": {
"accepted": 0,
"payload_match": false,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 1046,
"PHY_HEADER_CHECKSUM_MISMATCH": 14,
"TRUNCATED_SYMBOLS": 13
}
},
"optimized": {
"accepted": 0,
"payload_match": false,
"reasons": {
"PHY_HEADER_CHECKSUM_MISMATCH": 3,
"PHY_HEADER_MAGIC_MISMATCH": 11
}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 0,
"cfo_hz": 100,
"seed": 52031,
"amplitude_scale": 0.002,
"baseline": {
"accepted": 0,
"payload_match": false,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 1034,
"TRUNCATED_SYMBOLS": 52
}
},
"optimized": {
"accepted": 0,
"payload_match": false,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 9
}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 0,
"cfo_hz": 100,
"seed": 52032,
"amplitude_scale": 0.2,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 77
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 0,
"cfo_hz": 100,
"seed": 52033,
"amplitude_scale": 1.0,
"baseline": {
"accepted": 0,
"payload_match": false,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 967,
"TRUNCATED_SYMBOLS": 18
}
},
"optimized": {
"accepted": 0,
"payload_match": false,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 11
}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 1,
"cfo_hz": -100,
"seed": 52031,
"amplitude_scale": 0.002,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"TRUNCATED_SYMBOLS": 1,
"PHY_HEADER_MAGIC_MISMATCH": 98
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 1,
"cfo_hz": -100,
"seed": 52032,
"amplitude_scale": 0.2,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 65
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 1,
"cfo_hz": -100,
"seed": 52033,
"amplitude_scale": 1.0,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 76
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 1,
"cfo_hz": 10,
"seed": 52031,
"amplitude_scale": 0.002,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"TRUNCATED_SYMBOLS": 1,
"PHY_HEADER_MAGIC_MISMATCH": 101
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 1,
"cfo_hz": 10,
"seed": 52032,
"amplitude_scale": 0.2,
"baseline": {
"accepted": 0,
"payload_match": false,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 1009,
"PHY_HEADER_CHECKSUM_MISMATCH": 13,
"TRUNCATED_SYMBOLS": 1
}
},
"optimized": {
"accepted": 0,
"payload_match": false,
"reasons": {
"PHY_HEADER_CHECKSUM_MISMATCH": 3,
"PHY_HEADER_MAGIC_MISMATCH": 11
}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 1,
"cfo_hz": 10,
"seed": 52033,
"amplitude_scale": 1.0,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 75
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 1,
"cfo_hz": 100,
"seed": 52031,
"amplitude_scale": 0.002,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"TRUNCATED_SYMBOLS": 1,
"PHY_HEADER_MAGIC_MISMATCH": 100
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 1,
"cfo_hz": 100,
"seed": 52032,
"amplitude_scale": 0.2,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 67
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 1,
"cfo_hz": 100,
"seed": 52033,
"amplitude_scale": 1.0,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 74
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 2,
"cfo_hz": -100,
"seed": 52031,
"amplitude_scale": 0.002,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"TRUNCATED_SYMBOLS": 1,
"PHY_HEADER_MAGIC_MISMATCH": 79
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 2,
"cfo_hz": -100,
"seed": 52032,
"amplitude_scale": 0.2,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 56
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 2,
"cfo_hz": -100,
"seed": 52033,
"amplitude_scale": 1.0,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 68
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 2,
"cfo_hz": 10,
"seed": 52031,
"amplitude_scale": 0.002,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"TRUNCATED_SYMBOLS": 1,
"PHY_HEADER_MAGIC_MISMATCH": 83
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 2,
"cfo_hz": 10,
"seed": 52032,
"amplitude_scale": 0.2,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 58
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 2,
"cfo_hz": 10,
"seed": 52033,
"amplitude_scale": 1.0,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 70
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 2,
"cfo_hz": 100,
"seed": 52031,
"amplitude_scale": 0.002,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"TRUNCATED_SYMBOLS": 1,
"PHY_HEADER_MAGIC_MISMATCH": 85
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 2,
"cfo_hz": 100,
"seed": 52032,
"amplitude_scale": 0.2,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 57
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 2,
"cfo_hz": 100,
"seed": 52033,
"amplitude_scale": 1.0,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 67
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 3,
"cfo_hz": -100,
"seed": 52031,
"amplitude_scale": 0.002,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 71
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 3,
"cfo_hz": -100,
"seed": 52032,
"amplitude_scale": 0.2,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 49
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 3,
"cfo_hz": -100,
"seed": 52033,
"amplitude_scale": 1.0,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 64
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 3,
"cfo_hz": 10,
"seed": 52031,
"amplitude_scale": 0.002,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 74
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 3,
"cfo_hz": 10,
"seed": 52032,
"amplitude_scale": 0.2,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 53
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 3,
"cfo_hz": 10,
"seed": 52033,
"amplitude_scale": 1.0,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 64
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 3,
"cfo_hz": 100,
"seed": 52031,
"amplitude_scale": 0.002,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 76
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 3,
"cfo_hz": 100,
"seed": 52032,
"amplitude_scale": 0.2,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 53
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 3,
"cfo_hz": 100,
"seed": 52033,
"amplitude_scale": 1.0,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 63
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 7,
"cfo_hz": -100,
"seed": 52031,
"amplitude_scale": 0.002,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 50
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 7,
"cfo_hz": -100,
"seed": 52032,
"amplitude_scale": 0.2,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 42
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 7,
"cfo_hz": -100,
"seed": 52033,
"amplitude_scale": 1.0,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 51
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 7,
"cfo_hz": 10,
"seed": 52031,
"amplitude_scale": 0.002,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 50
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 7,
"cfo_hz": 10,
"seed": 52032,
"amplitude_scale": 0.2,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 42
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 7,
"cfo_hz": 10,
"seed": 52033,
"amplitude_scale": 1.0,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 51
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 7,
"cfo_hz": 100,
"seed": 52031,
"amplitude_scale": 0.002,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 48
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 7,
"cfo_hz": 100,
"seed": 52032,
"amplitude_scale": 0.2,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 42
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
},
{
"ebn0_db": 7,
"cfo_hz": 100,
"seed": 52033,
"amplitude_scale": 1.0,
"baseline": {
"accepted": 1,
"payload_match": true,
"reasons": {
"PHY_HEADER_MAGIC_MISMATCH": 44
}
},
"optimized": {
"accepted": 1,
"payload_match": true,
"reasons": {}
},
"lost_baseline_packet": false
}
],
"count": 45,
"baseline_correct": 37,
"optimized_correct": 37,
"lost_baseline_packets": 0,
"rf_tx": 0
}

View File

@@ -0,0 +1,186 @@
{
"seed": 50050,
"description": "Lab051 generator; frozen measured JPEG readiness",
"images": [
{
"image_id": 1,
"bytes": 1740,
"encode_seconds": 0.00024159997701644897,
"sha256": "15723773a8788c9d610c874707ad2d513582322ee1d42009b0b39d3de336e10d"
},
{
"image_id": 2,
"bytes": 1790,
"encode_seconds": 0.000175100052729249,
"sha256": "66404b14ca9e3a6627871ad9d3b5dd4311915d7820a99dfa182fc3a20fbe9d85"
},
{
"image_id": 3,
"bytes": 1821,
"encode_seconds": 0.00018400000408291817,
"sha256": "166d33d72820bf3385e0d30823d991b453147c84ca75f788ab8819ad5e3c3ced"
},
{
"image_id": 4,
"bytes": 1844,
"encode_seconds": 0.0001865000231191516,
"sha256": "38052148ffbc024d2ba28049ea20b1172eebe9c990cb2fd94b25d2eaf9b46584"
},
{
"image_id": 5,
"bytes": 1871,
"encode_seconds": 0.00015390000771731138,
"sha256": "1e135c2854bef0f7dffb84cf8eb71e200c958d7d7426d24d16bb36d471b52c1d"
},
{
"image_id": 6,
"bytes": 1889,
"encode_seconds": 0.00016799999866634607,
"sha256": "b59b7e834374fa00757abcb57282a1b7c46c08b41e0adb1cb5803135b009cb7f"
},
{
"image_id": 7,
"bytes": 1893,
"encode_seconds": 0.00022439996246248484,
"sha256": "8f6452262ea5a82d195de8cd23e3d21ab186ce5a20b031acf8295c30daa98572"
},
{
"image_id": 8,
"bytes": 1877,
"encode_seconds": 0.00017830007709562778,
"sha256": "eb0f69a3e57c1860d98e79591ee9b472ac3a0929883be2a2992397f594d176f4"
},
{
"image_id": 9,
"bytes": 1844,
"encode_seconds": 0.00019099994096904993,
"sha256": "22c41e53d1d086baf886e6f65c011e1360ef26ad7781eced4655664cb7adcf06"
},
{
"image_id": 10,
"bytes": 1826,
"encode_seconds": 0.00017690006643533707,
"sha256": "e907decbbf66cc21c6b6e767b6c9baef856754d3cc95625cca38fd07aa5408c1"
},
{
"image_id": 11,
"bytes": 1878,
"encode_seconds": 0.00019090005662292242,
"sha256": "ab681a9cce96a8aaa71f3a612634748a2df743f1c76092f5a674e0dd36ca7caf"
},
{
"image_id": 12,
"bytes": 1805,
"encode_seconds": 0.00017190002836287022,
"sha256": "9c3d4258ddf1085f8da6ca87b6c3071aa031d58a5c42739a5527a27e6c2f17af"
},
{
"image_id": 13,
"bytes": 1819,
"encode_seconds": 0.0001813999842852354,
"sha256": "6615eb4fe58fb4d0854c3c856e65a0990eba2361fc977c524acf9f0a5ab7accb"
},
{
"image_id": 14,
"bytes": 1866,
"encode_seconds": 0.0002503000432625413,
"sha256": "8fbb4fa0fce1e3deedb3fd838d69835b7670d73d793b792b2ffde69d733bbb40"
},
{
"image_id": 15,
"bytes": 1892,
"encode_seconds": 0.00020739994943141937,
"sha256": "9109553288f7b07311be951bd36cc389034496b6665b874dd92cfea84ac60d13"
},
{
"image_id": 16,
"bytes": 1886,
"encode_seconds": 0.00019369996152818203,
"sha256": "5b264bae760e7103f645f4a4203c435dfb8bd7555ec679b750d4c4cefe642f3a"
},
{
"image_id": 17,
"bytes": 1881,
"encode_seconds": 0.00017360004130750895,
"sha256": "df7d2804878be2b11c0233cee2401504d3545fad2f856fedb5e3aedfc1a0bf36"
},
{
"image_id": 18,
"bytes": 1862,
"encode_seconds": 0.00019259995315223932,
"sha256": "9fc4dded148ed750d53cadf0abe059cb01acab50999ebf9f521b2685c77c3025"
},
{
"image_id": 19,
"bytes": 1838,
"encode_seconds": 0.00017380004283040762,
"sha256": "820d8d0916c53b1937d002e6b0632100b7a2d0a216f1022cdc55ba5fd0844cb5"
},
{
"image_id": 20,
"bytes": 1859,
"encode_seconds": 0.0001799999736249447,
"sha256": "ef9903b6c8d9ab6f572a7fa54af7570f6c321346117f9c4e156e1b71c97c46fd"
},
{
"image_id": 21,
"bytes": 1892,
"encode_seconds": 0.00019259995315223932,
"sha256": "6605b523265e1229959f94fdad35d672037a902e9c7c585e22aafb875fb9e287"
},
{
"image_id": 22,
"bytes": 1783,
"encode_seconds": 0.00022350007202476263,
"sha256": "8cf09da5a66ca3b3b18c1e4db63c8d57ed5044ba6f758368f7bcfb04f86a3839"
},
{
"image_id": 23,
"bytes": 1826,
"encode_seconds": 0.0001976999919861555,
"sha256": "282ee75b1d6c2963fec0ecaed77f5663d9a49bcfa1561c5b0f40ea93089e06f1"
},
{
"image_id": 24,
"bytes": 1870,
"encode_seconds": 0.00019099994096904993,
"sha256": "ba6c6a8aeae49674442d1079d15f4b0fa4202e7cc72cb66d2853c312ced16132"
},
{
"image_id": 25,
"bytes": 1872,
"encode_seconds": 0.0001868000254034996,
"sha256": "bd7841541d47d9a9844e6302825db98f3c72e5258946c3d2d0a2d2b7f0cee92e"
},
{
"image_id": 26,
"bytes": 1872,
"encode_seconds": 0.00018989993259310722,
"sha256": "70cdf837f756084e3d5a6dd438b615d71e669936c4d17c9ed7be88f4b4dcf965"
},
{
"image_id": 27,
"bytes": 1870,
"encode_seconds": 0.0001943999668583274,
"sha256": "a31da69de44bff031631997cc27724025f293528b4d97f2825d34a704ec224af"
},
{
"image_id": 28,
"bytes": 1848,
"encode_seconds": 0.00018319999799132347,
"sha256": "4380eae166bc37a7de7367642559b948cf1cc77939d1c84406de7cff372b6a76"
},
{
"image_id": 29,
"bytes": 1871,
"encode_seconds": 0.00016330007929354906,
"sha256": "c2e1a913dc48d622e1097f31543208ce610ce42d266857d8a76961f143dd9a4b"
},
{
"image_id": 30,
"bytes": 1869,
"encode_seconds": 0.0001724000321701169,
"sha256": "bbbd15eac04b06ea05ec548f4c95b577b8ffc280c00fc473fb2a6914c40f7939"
}
]
}

View File

@@ -0,0 +1,107 @@
{
"classification": "strict PHY/FEC/CRC verdict first; no diagnostic feedback into RX",
"baseline_true_unique_starts": 240,
"optimized_true_unique_starts": 240,
"missing_true_starts": [],
"unexpected_true_starts": [],
"true_main_peak_scores": {
"count": 240,
"min": 0.8300548791885376,
"median": 0.8416910767555237,
"mad": 0.0021253228187561035,
"p90": 0.8455655992031097,
"p99": 0.8483891654014587,
"p999": 0.8496067104935646,
"max": 0.8499454259872437
},
"false_strict_scores": {
"count": 146765,
"min": 0.03096448816359043,
"median": 0.03546393662691116,
"mad": 0.0029666051268577576,
"p90": 0.04409027695655823,
"p99": 0.0558026286959648,
"p999": 0.5325132031440795,
"max": 0.8059508800506592
},
"baseline_false_refined_positions": 11387,
"baseline_false_repeated_refinements": 135378,
"noise_only_blocks": 357,
"noise_block_statistics": {
"median": {
"count": 357,
"min": 0.006450756685808301,
"median": 0.016353150829672813,
"mad": 0.00045966170728206635,
"p90": 0.016945500299334525,
"p99": 0.017328095547854902,
"p999": 0.017409235779196026,
"max": 0.017421899363398552
},
"mad": {
"count": 357,
"min": 0.002472435589879751,
"median": 0.006183675490319729,
"mad": 0.0002206573262810707,
"p90": 0.006455647945404053,
"p99": 0.006683134622871876,
"p999": 0.006718997411429882,
"max": 0.006726322695612907
},
"p90": {
"count": 357,
"min": 0.011724081635475166,
"median": 0.029762874729931357,
"mad": 0.0008111353963613475,
"p90": 0.0307584797218442,
"p99": 0.03153721953928471,
"p999": 0.03181600074619056,
"max": 0.03183051086962224
},
"p99": {
"count": 357,
"min": 0.016392295099794868,
"median": 0.041875139921903615,
"mad": 0.001360640600323683,
"p90": 0.043799061246216305,
"p99": 0.04486697037369015,
"p999": 0.045995346079021705,
"max": 0.04610396962612869
},
"p999": {
"count": 357,
"min": 0.019085338560864334,
"median": 0.05054646224901104,
"mad": 0.002620417140424082,
"p90": 0.05440113909915092,
"p99": 0.05857364904597424,
"p999": 0.06542779265359067,
"max": 0.06649338830262444
}
},
"split_minimum_true_strict": {
"count": 240,
"min": 0.8250381350517273,
"median": 0.8373404443264008,
"mad": 0.0029025375843048096,
"p90": 0.8425169467926026,
"p99": 0.8459141814708709,
"p999": 0.8461976568698883,
"max": 0.8462259769439697
},
"split_minimum_other_candidates": {
"count": 392545,
"min": 3.158521940349601e-05,
"median": 0.02823474630713463,
"mad": 0.008037906140089035,
"p90": 0.04402520880103111,
"p99": 0.08912204891443251,
"p999": 0.662676521778107,
"max": 0.7688561081886292
},
"strict_false_reduction": 9784.333333333334,
"strict_false_reduction_fraction": 0.9998977957960004,
"first_stage_threshold_unchanged": 0.030964473262429237,
"part_threshold": 0.08474038063392896,
"rf_tx": 0
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff