{
  "schema_version": "camera-spectra-application-export-1",
  "profile_id": "prf-sobotka-ref-nokian900-219e8e3477a7",
  "profile_revision": 1,
  "exports": {
    "xspd": "/application-data/prf-sobotka-ref-nokian900-219e8e3477a7-r1.xspd",
    "siril": null,
    "metadata": "/application-data/prf-sobotka-ref-nokian900-219e8e3477a7-r1.metadata.json",
    "xspd_reason": null,
    "siril_reason": "The source does not establish a sensor-only response. A Siril sensor export would misrepresent its physical scope; use CSV or source JSON.",
    "siril_estimated": "/application-data/prf-sobotka-ref-nokian900-219e8e3477a7-r1.estimated.siril.json",
    "siril_estimated_alternative": "/application-data/prf-sobotka-ref-nokian900-219e8e3477a7-r1.alternative-estimate.siril.json",
    "siril_estimated_reason": null,
    "siril_estimated_note": "Estimated relative photon response. Assumes the source values describe energy response. Source optics remain unseparated; calibration accuracy is unverified.",
    "notes": []
  },
  "siril_assessment": null,
  "siril_estimate": {
    "primary": {
      "channels": [
        {
          "channel": "red",
          "wavelengths": [
            400,
            410,
            420,
            430,
            440,
            450,
            460,
            470,
            480,
            490,
            500,
            510,
            520,
            530,
            540,
            550,
            560,
            570,
            580,
            590,
            600,
            610,
            620,
            630,
            640,
            650,
            660,
            670,
            680,
            690,
            700,
            710,
            720
          ],
          "values": [
            0.0033516026384695185,
            0.0025972745809207704,
            0.0029476465582564753,
            0.0025025372883236835,
            0.0026666090503741674,
            0.002603601081257311,
            0.0038480641279544977,
            0.009688585452356908,
            0.018547756997047,
            0.029147938943978234,
            0.0521725476097346,
            0.08390542017418882,
            0.1306931541101756,
            0.17431997509250788,
            0.17281454348788258,
            0.17066628319057933,
            0.15764670634621555,
            0.14976288946980246,
            0.4204649759873159,
            0.9293808845263251,
            0.954723578345939,
            0.6578861014261098,
            0.8405479321347384,
            0.8542911979639778,
            0.6970485800673325,
            0.355071516809129,
            0.10638364698248892,
            0.05297237701484667,
            0.020208627414620668,
            0.008230373604083208,
            0.006291181206190944,
            0.0032451118331588208,
            0.0010316350059589488
          ]
        },
        {
          "channel": "green",
          "wavelengths": [
            400,
            410,
            420,
            430,
            440,
            450,
            460,
            470,
            480,
            490,
            500,
            510,
            520,
            530,
            540,
            550,
            560,
            570,
            580,
            590,
            600,
            610,
            620,
            630,
            640,
            650,
            660,
            670,
            680,
            690,
            700,
            710,
            720
          ],
          "values": [
            0.020418628840037707,
            0.021963275968481355,
            0.029851003964654368,
            0.031245773019115,
            0.04396699457650714,
            0.053008470822879086,
            0.08773664265775365,
            0.2015815151454914,
            0.3442871335269617,
            0.42128896900966706,
            0.5905993842727922,
            0.7561460636264493,
            0.9494799571599465,
            1,
            0.9328251859567148,
            0.8859617823531164,
            0.7841751391962515,
            0.6765238127916743,
            0.5385264893184093,
            0.4337361768743475,
            0.2783348798173486,
            0.2867465397102429,
            0.1479202040954441,
            0.12141248619955589,
            0.10025593273931337,
            0.05228784642419442,
            0.01668387853556519,
            0.009247145594064452,
            0.004501061626068299,
            0.002372981848360583,
            0.0021281567564964735,
            0.0011519108912122385,
            0.0004119657541070283
          ]
        },
        {
          "channel": "blue",
          "wavelengths": [
            400,
            410,
            420,
            430,
            440,
            450,
            460,
            470,
            480,
            490,
            500,
            510,
            520,
            530,
            540,
            550,
            560,
            570,
            580,
            590,
            600,
            610,
            620,
            630,
            640,
            650,
            660,
            670,
            680,
            690,
            700,
            710,
            720
          ],
          "values": [
            0.36592845147273156,
            0.4372098289501988,
            0.6146853147947945,
            0.6581897712572107,
            0.7004778258693082,
            0.7194199101587821,
            0.7547565401476135,
            0.7178193729316832,
            0.6141776754050522,
            0.5311729074534511,
            0.4068116443981614,
            0.29536875038887145,
            0.24137539097381616,
            0.2338718829979056,
            0.21048308969641238,
            0.1863612342244053,
            0.16034872830379018,
            0.1483254924765391,
            0.13551102561223632,
            0.12954346135297612,
            0.09912201116746236,
            0.0916887931255401,
            0.0697441325262628,
            0.07023783017669709,
            0.06512857379069326,
            0.03786373437577634,
            0.012523998254510053,
            0.007087809392690932,
            0.0031419658543035854,
            0.0013052367827228603,
            0.0011853795108251947,
            0.0007036537105276929,
            0.0002966841677847155
          ]
        }
      ],
      "interpretation": "energy_response",
      "basis": "The source quantity is not established; energy response is the explicit primary assumption, with a photon-response alternative for sensitivity comparison. Numeric values and profile naming cannot prove source units or optical scope.",
      "metadata": {
        "status": "estimated",
        "original_response_unit": "unknown",
        "original_response_scale": "unknown",
        "original_response_scope": "unknown",
        "source_attribution": "Sobotka (depositor); Sobotka Jiang 2013 camera spectral sensitivity mirror; src-sobotka-jiang2013-mirror; Sobotka, camera-spectral-sensitivity, pinned revision ae75f609f5831dc1b9287f9f89a04c1d93ed4efa, 2013.; https://github.com/sobotka/camera-spectral-sensitivity",
        "source_positive_peak": 1,
        "input_scale_hint": "normalized_or_fractional",
        "normalization": "one shared positive maximum across all channels",
        "normalization_divisor": 0.0017457059870189557,
        "method_version": "camera-spectra-siril-estimate-v1",
        "uncertainty": "unknown",
        "effective_camera_detection_model": true,
        "optical_transmission_separated": false,
        "interchannel_scale_comparability": "unknown; channel ratios inherit original possibly incomparable scales",
        "quantity_evidence_uri": null,
        "retained_channel_intervals_nm": [
          {
            "channel": "red",
            "minimum": 400,
            "maximum": 720
          },
          {
            "channel": "green",
            "minimum": 400,
            "maximum": 720
          },
          {
            "channel": "blue",
            "minimum": 400,
            "maximum": 720
          }
        ],
        "repairs": {
          "conflicting_duplicate_groups_merged": 0,
          "identical_duplicate_samples_removed": 0,
          "negative_samples_floored": 0,
          "negative_magnitude_total": 0,
          "bounded_nulls_interpolated": 0,
          "trimmed_null_samples": 0,
          "documented_gap_samples_omitted": 0,
          "partial_channels": []
        }
      }
    },
    "alternative": {
      "channels": [
        {
          "channel": "red",
          "wavelengths": [
            400,
            410,
            420,
            430,
            440,
            450,
            460,
            470,
            480,
            490,
            500,
            510,
            520,
            530,
            540,
            550,
            560,
            570,
            580,
            590,
            600,
            610,
            620,
            630,
            640,
            650,
            660,
            670,
            680,
            690,
            700,
            710,
            720
          ],
          "values": [
            0.0023403651168339068,
            0.0018589718921966706,
            0.002161204182632942,
            0.0018785385605948797,
            0.002048250769081931,
            0.0020453048979119613,
            0.0030900907498374,
            0.00794930816606438,
            0.015541886609048483,
            0.02493302844664523,
            0.0455389643601726,
            0.07470183911412547,
            0.11863894722811279,
            0.1612850548132727,
            0.1629090269338019,
            0.1638632337914368,
            0.1541146874973483,
            0.1490219244849946,
            0.42572477102944656,
            0.9572312068597613,
            1,
            0.7005701806820331,
            0.9097567256524898,
            0.9395449931342865,
            0.7787788028586268,
            0.4029028072638389,
            0.12257161584243971,
            0.0619577111199669,
            0.023989258869654313,
            0.009913790608475078,
            0.007687786887948067,
            0.004022157920540902,
            0.0012966706125510285
          ]
        },
        {
          "channel": "green",
          "wavelengths": [
            400,
            410,
            420,
            430,
            440,
            450,
            460,
            470,
            480,
            490,
            500,
            510,
            520,
            530,
            540,
            550,
            560,
            570,
            580,
            590,
            600,
            610,
            620,
            630,
            640,
            650,
            660,
            670,
            680,
            690,
            700,
            710,
            720
          ],
          "values": [
            0.014257969045108695,
            0.015719983164618256,
            0.02188665206264196,
            0.023454751202256895,
            0.03377151609191293,
            0.041641742195198846,
            0.07045469588954828,
            0.16539396719506322,
            0.2884915729207736,
            0.36036887097795733,
            0.5155064405273612,
            0.6732044422700895,
            0.8619066797996825,
            0.9252241731200465,
            0.8793567964620222,
            0.8506458332481011,
            0.7666059718051387,
            0.6731766521002507,
            0.5452631716114391,
            0.4467337460461941,
            0.2915345196560082,
            0.30535084218877523,
            0.1600996152520992,
            0.13352881755617527,
            0.11201112449100101,
            0.05933148425817853,
            0.019222596786513908,
            0.01081567427568416,
            0.00534312055542672,
            0.00285834474764156,
            0.0026005951937915148,
            0.0014277373949040974,
            0.0005178031800418211
          ]
        },
        {
          "channel": "blue",
          "wavelengths": [
            400,
            410,
            420,
            430,
            440,
            450,
            460,
            470,
            480,
            490,
            500,
            510,
            520,
            530,
            540,
            550,
            560,
            570,
            580,
            590,
            600,
            610,
            620,
            630,
            640,
            650,
            660,
            670,
            680,
            690,
            700,
            710,
            720
          ],
          "values": [
            0.25552139542260915,
            0.3129283245525772,
            0.4506851303513598,
            0.4940725044396903,
            0.538044467133392,
            0.5651530399551714,
            0.6060881850036047,
            0.588957741154765,
            0.5146433496230326,
            0.45436314509504017,
            0.3550867616074484,
            0.2629697679254018,
            0.21911264187385668,
            0.21638391956276545,
            0.19841845851860848,
            0.17893255728358243,
            0.15675617160604935,
            0.14759163913898274,
            0.1372061970566488,
            0.13342542967719898,
            0.10382273300423929,
            0.09763762181209666,
            0.07548670482053507,
            0.07724719841244888,
            0.07276501836314819,
            0.04296431606394732,
            0.014429724364646679,
            0.008290064965418733,
            0.0037297650499494893,
            0.0015722061695928934,
            0.0014485268762560004,
            0.0008721444716319707,
            0.00037290479612797026
          ]
        }
      ],
      "interpretation": "photon_response",
      "basis": "Alternative photon-response source-quantity assumption applied to the same numeric samples; this is a sensitivity comparison, not a probability or claim that the source measured this quantity.",
      "metadata": {
        "status": "estimated",
        "original_response_unit": "unknown",
        "original_response_scale": "unknown",
        "original_response_scope": "unknown",
        "source_attribution": "Sobotka (depositor); Sobotka Jiang 2013 camera spectral sensitivity mirror; src-sobotka-jiang2013-mirror; Sobotka, camera-spectral-sensitivity, pinned revision ae75f609f5831dc1b9287f9f89a04c1d93ed4efa, 2013.; https://github.com/sobotka/camera-spectral-sensitivity",
        "source_positive_peak": 1,
        "input_scale_hint": "normalized_or_fractional",
        "normalization": "one shared positive maximum across all channels",
        "normalization_divisor": 1,
        "method_version": "camera-spectra-siril-estimate-v1",
        "uncertainty": "unknown",
        "effective_camera_detection_model": true,
        "optical_transmission_separated": false,
        "interchannel_scale_comparability": "unknown; channel ratios inherit original possibly incomparable scales",
        "quantity_evidence_uri": null,
        "retained_channel_intervals_nm": [
          {
            "channel": "red",
            "minimum": 400,
            "maximum": 720
          },
          {
            "channel": "green",
            "minimum": 400,
            "maximum": 720
          },
          {
            "channel": "blue",
            "minimum": 400,
            "maximum": 720
          }
        ],
        "repairs": {
          "conflicting_duplicate_groups_merged": 0,
          "identical_duplicate_samples_removed": 0,
          "negative_samples_floored": 0,
          "negative_magnitude_total": 0,
          "bounded_nulls_interpolated": 0,
          "trimmed_null_samples": 0,
          "documented_gap_samples_omitted": 0,
          "partial_channels": []
        }
      }
    },
    "diagnostics": {
      "source_family_prior": "none",
      "primary_basis": "energy_response_assumption",
      "interpretation_difference_rms": 0.05106437795286177,
      "comparison_sample_count": 99,
      "comparison_limitations": "sampled-assumption difference only; not uncertainty bounds and excludes optics, gain, and measurement-error uncertainty",
      "observed_channel_diagnostics": [
        {
          "channel": "red",
          "positive_peak_wavelength_nm": 600,
          "positive_response_centroid_nm": 604.5118108258937,
          "observed_nir_to_visible_mean_ratio": null,
          "note": "descriptive numeric summary only; does not identify optical filtering or physical units"
        },
        {
          "channel": "green",
          "positive_peak_wavelength_nm": 530,
          "positive_response_centroid_nm": 544.2060725878183,
          "observed_nir_to_visible_mean_ratio": null,
          "note": "descriptive numeric summary only; does not identify optical filtering or physical units"
        },
        {
          "channel": "blue",
          "positive_peak_wavelength_nm": 460,
          "positive_response_centroid_nm": 485.3933300583847,
          "observed_nir_to_visible_mean_ratio": null,
          "note": "descriptive numeric summary only; does not identify optical filtering or physical units"
        }
      ]
    }
  },
  "transformations": {
    "xspd": "Longest uninterrupted native run per channel; no interpolation, padding, rescaling or default replacement. Repeated identical wavelength/value pairs removed.",
    "siril": "Source scales and channel grids retained. Pairs sorted by wavelength and repeated identical wavelength/value pairs removed.",
    "siril_estimated": "Derived relative photon-response model with documented source-quantity assumptions, numeric repairs and shared RGB normalization. Original samples and unknown source metadata are preserved separately."
  },
  "compatibility": "Format validation does not establish calibration accuracy or a complete optical response.",
  "original": {
    "profile": {
      "attribution_required": null,
      "blue": [
        0.25552139542260915,
        0.3129283245525772,
        0.4506851303513598,
        0.4940725044396903,
        0.538044467133392,
        0.5651530399551714,
        0.6060881850036047,
        0.588957741154765,
        0.5146433496230326,
        0.45436314509504017,
        0.3550867616074484,
        0.2629697679254018,
        0.21911264187385668,
        0.21638391956276545,
        0.19841845851860848,
        0.17893255728358243,
        0.15675617160604935,
        0.14759163913898274,
        0.1372061970566488,
        0.13342542967719898,
        0.10382273300423929,
        0.09763762181209666,
        0.07548670482053507,
        0.07724719841244888,
        0.07276501836314819,
        0.04296431606394732,
        0.014429724364646679,
        0.008290064965418733,
        0.0037297650499494893,
        0.0015722061695928934,
        0.0014485268762560004,
        0.0008721444716319707,
        0.00037290479612797026
      ],
      "camera_id": "cam-sobotka-ref-nokian900",
      "checksum": {
        "algorithm": "sha256",
        "covers": "canonical_profile_revision",
        "value": "da9b3bd30e285cc08fda00f2c5e2005abc03b3277a48627c199594dbdd53454a"
      },
      "citation": "Sobotka, camera-spectral-sensitivity, pinned revision ae75f609f5831dc1b9287f9f89a04c1d93ed4efa, 2013.",
      "commercial_api_allowed": null,
      "confidence_grade": "unassessed",
      "confidence_reason": "Canonical release: no claim about the per-leaf measurement precision is asserted; the upstream 'as is' wording (where present) is preserved.",
      "created_at": "2026-09-23T00:00:00Z",
      "derivatives_allowed": null,
      "derived_from": [
        {
          "checksum": null,
          "id": "src-sobotka-jiang2013-mirror",
          "kind": "source_artifact",
          "order": 0,
          "revision": "ae75f609f5831dc1b9287f9f89a04c1d93ed4efa",
          "uri": "https://github.com/sobotka/camera-spectral-sensitivity"
        }
      ],
      "documented_gaps": null,
      "estimation_method": null,
      "green": [
        0.014257969045108695,
        0.015719983164618256,
        0.02188665206264196,
        0.023454751202256895,
        0.03377151609191293,
        0.041641742195198846,
        0.07045469588954828,
        0.16539396719506322,
        0.2884915729207736,
        0.36036887097795733,
        0.5155064405273612,
        0.6732044422700895,
        0.8619066797996825,
        0.9252241731200465,
        0.8793567964620222,
        0.8506458332481011,
        0.7666059718051387,
        0.6731766521002507,
        0.5452631716114391,
        0.4467337460461941,
        0.2915345196560082,
        0.30535084218877523,
        0.1600996152520992,
        0.13352881755617527,
        0.11201112449100101,
        0.05933148425817853,
        0.019222596786513908,
        0.01081567427568416,
        0.00534312055542672,
        0.00285834474764156,
        0.0026005951937915148,
        0.0014277373949040974,
        0.0005178031800418211
      ],
      "interpolation_method": null,
      "license_id": "lic-src-sobotka-jiang2013-mirror",
      "measurement_method": null,
      "normalization_method": "unknown",
      "optical_configuration": {
        "configuration_id": "cfg-prf-sobotka-ref-nokian900-219e8e3477a7",
        "configuration_type": "unknown",
        "description": "Canonical release: the optical configuration is honestly unknown; lens, body serial, filter stack, and hot-mirror / IR-cut filter state are not documented per leaf in the inspected source.",
        "evidence_source_ids": [
          "src-sobotka-jiang2013-mirror"
        ],
        "external_filters": null,
        "geometry": null,
        "internal_optical_stack": null,
        "lens": null,
        "modifier_or_vendor": null,
        "name": "unknown",
        "removed_components": null,
        "replacement_components": null
      },
      "original_normalization_method": "unknown",
      "original_wavelength_unit": "nm",
      "processing_notes": "source_column=cmf_NokiaN900.mat",
      "profile_id": "prf-sobotka-ref-nokian900-219e8e3477a7",
      "profile_revision": 1,
      "profile_type": "measured",
      "provenance_tier": "community_unverified",
      "quality_grade": "unassessed",
      "quality_reason": "Canonical release: no per-leaf scientific-quality assessment is asserted; the source-side claim is preserved verbatim.",
      "red": [
        0.0023403651168339068,
        0.0018589718921966706,
        0.002161204182632942,
        0.0018785385605948797,
        0.002048250769081931,
        0.0020453048979119613,
        0.0030900907498374,
        0.00794930816606438,
        0.015541886609048483,
        0.02493302844664523,
        0.0455389643601726,
        0.07470183911412547,
        0.11863894722811279,
        0.1612850548132727,
        0.1629090269338019,
        0.1638632337914368,
        0.1541146874973483,
        0.1490219244849946,
        0.42572477102944656,
        0.9572312068597613,
        1,
        0.7005701806820331,
        0.9097567256524898,
        0.9395449931342865,
        0.7787788028586268,
        0.4029028072638389,
        0.12257161584243971,
        0.0619577111199669,
        0.023989258869654313,
        0.009913790608475078,
        0.007687786887948067,
        0.004022157920540902,
        0.0012966706125510285
      ],
      "redistribution_allowed": null,
      "response_scale": "unknown",
      "response_scope": "unknown",
      "response_unit": "unknown",
      "retrieved_date": "2026-09-23",
      "rights_evidence_source_ids": [
        "src-sobotka-jiang2013-mirror"
      ],
      "sample_count": 33,
      "sample_identifiers": null,
      "sampling_interval": 10,
      "schema_version": "0.1.0-draft",
      "scientific_notes": "Canonical release: native grid and native R/G/B samples are preserved verbatim; sparse cells (wavelengths absent in the upstream CSV / JSON) are preserved as null; the parser never invents a value.",
      "source_author": "Sobotka (depositor)",
      "source_id": "src-sobotka-jiang2013-mirror",
      "source_uri": "https://github.com/sobotka/camera-spectral-sensitivity",
      "uncertainty": null,
      "updated_at": "2026-09-23T00:00:00Z",
      "validation_reason": "Mirror copy of an upstream measurement; the depositor's authority to apply the upstream license is not independently re-verified.",
      "validation_status": "unverified",
      "version_date": "2026-09-23",
      "wavelength_max": 720,
      "wavelength_min": 400,
      "wavelength_unit": "nm",
      "wavelengths": [
        400,
        410,
        420,
        430,
        440,
        450,
        460,
        470,
        480,
        490,
        500,
        510,
        520,
        530,
        540,
        550,
        560,
        570,
        580,
        590,
        600,
        610,
        620,
        630,
        640,
        650,
        660,
        670,
        680,
        690,
        700,
        710,
        720
      ]
    },
    "source": {
      "authors": [
        "Sobotka (depositor)",
        "Jiang et al. (upstream)"
      ],
      "citation_text": "Sobotka, camera-spectral-sensitivity, pinned revision ae75f609f5831dc1b9287f9f89a04c1d93ed4efa, 2013.",
      "data_acquisition_method": "MATLAB v5 (.mat) mirror; parsed via stdlib-only parse_matlab_v5_bytes. Float32 re-encode of the Jiang float64 curves (max |diff| ~4.9e-6, worst at green[14]@540nm).",
      "doi": null,
      "known_limitations": [
        "source_category=mirror",
        "permission_status is 'unknown' on the canonical License record (no independent operational clearance granted)."
      ],
      "license_id": "lic-src-sobotka-jiang2013-mirror",
      "measurement_method": null,
      "normalization_method": null,
      "organization": "sobotka/camera-spectral-sensitivity",
      "original_wavelength_coverage": {
        "maximum": 720,
        "minimum": 400,
        "unit": "nm"
      },
      "publication": "Jiang et al., WACV 2013",
      "record_version": 1,
      "repository": "https://github.com/sobotka/camera-spectral-sensitivity",
      "retrieved_date": "2026-09-23",
      "rights_notes": "Mirror designation. Upstream Jiang 2013 license is CC BY-NC-SA 4.0; the Sobotka mirror-depositor's authority to apply that license is not independently re-verified.",
      "schema_version": "0.1.0-draft",
      "source_id": "src-sobotka-jiang2013-mirror",
      "title": "Sobotka Jiang 2013 camera spectral sensitivity mirror",
      "url": "https://github.com/sobotka/camera-spectral-sensitivity",
      "version": "ae75f609f5831dc1b9287f9f89a04c1d93ed4efa",
      "year": 2013
    },
    "license": {
      "attribution_required": null,
      "commercial_api_allowed": null,
      "commercial_use_allowed": null,
      "derivatives_allowed": null,
      "evidence_revision": "ae75f609f5831dc1b9287f9f89a04c1d93ed4efa",
      "evidence_url": "https://www.gujinwei.org/research/camspec/db.html",
      "license_id": "lic-src-sobotka-jiang2013-mirror",
      "license_name": null,
      "license_url": null,
      "notes": "Canonical release: observed upstream license text is preserved verbatim on license_name/license_url when available; the operational permission_status is the literal 'unknown' because the owner-updated policy (2026-09-23) revoked the prior bespoke grants. Downstream redistribution requires a fresh per-source review and a new authorization ID.",
      "permission_status": "unknown",
      "record_version": 1,
      "redistribution_allowed": null,
      "reviewed_date": "2026-09-23",
      "rights_holder": "sobotka/camera-spectral-sensitivity",
      "schema_version": "0.1.0-draft",
      "share_alike_required": null
    },
    "dataset_version": "recovered-2026-10-01-siril-source-review-v2"
  }
}
