{
  "schema_version": "camera-spectra-application-export-1",
  "profile_id": "prf-sobotka-ref-nikond5100-c066277e4592",
  "profile_revision": 1,
  "exports": {
    "xspd": "/application-data/prf-sobotka-ref-nikond5100-c066277e4592-r1.xspd",
    "siril": null,
    "metadata": "/application-data/prf-sobotka-ref-nikond5100-c066277e4592-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-nikond5100-c066277e4592-r1.estimated.siril.json",
    "siril_estimated_alternative": "/application-data/prf-sobotka-ref-nikond5100-c066277e4592-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.0012039360806384203,
            0.0016210989335959578,
            0.005734610803463188,
            0.056311692404669336,
            0.05017704624115644,
            0.03897077855494765,
            0.03303586445138555,
            0.038670248229353825,
            0.042889044370770964,
            0.0405010326728365,
            0.04306100310333362,
            0.05492767920555192,
            0.08536191543241622,
            0.09736167295614889,
            0.0506976119720086,
            0.02892144770823046,
            0.03101674777911523,
            0.0868266688635046,
            0.40589352775146553,
            0.620272438123716,
            0.562900926781739,
            0.44701187791880403,
            0.3660368678296637,
            0.2939928432892142,
            0.2222960189448195,
            0.15609905154659792,
            0.11124384073269034,
            0.0637986909818782,
            0.02096960857646647,
            0.00448449055347572,
            0.001152527475728843,
            0.000398510258196028,
            0.00016464823000605065
          ]
        },
        {
          "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.002473368969011262,
            0.0028607926135016696,
            0.010736764544604937,
            0.1348096974953658,
            0.1768655042082774,
            0.2071684416355445,
            0.25522893064078755,
            0.3761458573180958,
            0.4478465485292473,
            0.5055411610950604,
            0.6433025471451521,
            0.8118648218391668,
            0.9005222336812324,
            0.9358715271390636,
            0.8265364302316818,
            0.7416248049452474,
            0.5925389962836072,
            0.48859147150446736,
            0.36797173422494495,
            0.2639674456980198,
            0.151059438806432,
            0.07542626488602794,
            0.04455097704173702,
            0.03106875696291263,
            0.021889399378864468,
            0.015250230508702856,
            0.012243892944066227,
            0.009049580962822318,
            0.004101496659979194,
            0.0011976267930720406,
            0.000394609111913827,
            0.00016266772338458587,
            0.00007623088882518376
          ]
        },
        {
          "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.004941141759677817,
            0.009145941724046501,
            0.0556673046216017,
            0.7407112217446236,
            0.9108434527776731,
            1,
            0.942458041425039,
            0.9428007209651311,
            0.8445380572332777,
            0.7229700135807455,
            0.5246990254125606,
            0.35164199895578885,
            0.20865059379376888,
            0.13756756113449786,
            0.08371544711848923,
            0.047532787441339125,
            0.022983076292763936,
            0.014088154041256544,
            0.010047982390476901,
            0.00705838369305441,
            0.004286124689229671,
            0.0026031893350652465,
            0.0022227776260451792,
            0.0024513733520324177,
            0.00310471618351816,
            0.0035670935606207776,
            0.0036929988896541818,
            0.0026341528825410574,
            0.0009970459796473576,
            0.0002600472802946423,
            0.0000853428233972121,
            0.0000402448751954633,
            0.000022553218467355798
          ]
        }
      ],
      "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.002016080624440052,
        "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.0009708928820957661,
            0.001339989121632529,
            0.004855803846418027,
            0.04881743215418722,
            0.04451082711610834,
            0.03535570420378823,
            0.030637364466750503,
            0.03664229895281912,
            0.04150453025119729,
            0.04001014014834439,
            0.043407227012791934,
            0.05647670119380371,
            0.08949018195956,
            0.10403316067727922,
            0.05519365552915914,
            0.03206938369542577,
            0.035018067969146215,
            0.09977825192481887,
            0.4746221645935032,
            0.7378063541814949,
            0.6809121911784074,
            0.5497393114396643,
            0.45753509897850775,
            0.37340936330003804,
            0.28682668587827803,
            0.20456037765576726,
            0.14802252424705153,
            0.08617761418464595,
            0.028747966656112074,
            0.0062383552155893226,
            0.001626511819066206,
            0.0005704344552346263,
            0.00023899975658175451
          ]
        },
        {
          "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.0019946045022059492,
            0.002364711309034993,
            0.00909139684637223,
            0.1168685042160236,
            0.15689305111309657,
            0.18795072652958747,
            0.23669856685626503,
            0.3564199762041305,
            0.43338947962184016,
            0.4994137524729324,
            0.6484749004761371,
            0.8347603178569536,
            0.944073222145149,
            1,
            0.8998366044873279,
            0.8223464699198355,
            0.6689795781942205,
            0.561472685411082,
            0.4302791965532592,
            0.31398599512527847,
            0.18272880462986116,
            0.09275991303846842,
            0.05568738420050615,
            0.03946138493117002,
            0.028243708139749607,
            0.019984701260446252,
            0.016291885719285124,
            0.012223938841759908,
            0.0056228846042249555,
            0.0016660133992477434,
            0.0005568946493298739,
            0.00023284538418958065,
            0.00011065508491989359
          ]
        },
        {
          "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.003984696065719228,
            0.007559971919864279,
            0.04713650519021361,
            0.6421334232598015,
            0.8079868882989835,
            0.9072362809980234,
            0.874032842465781,
            0.8933582651355791,
            0.8172752706193224,
            0.7142072598513381,
            0.5289177693984211,
            0.36155869662540885,
            0.21874133810127522,
            0.14699406611400878,
            0.09113962908703784,
            0.05270646248236119,
            0.02594801149016657,
            0.01618962700612136,
            0.011749374715050083,
            0.008395859656024064,
            0.0051847037639340485,
            0.003201426143906156,
            0.0027784053206712962,
            0.003113564780529769,
            0.004005989210864914,
            0.004674506338536077,
            0.004913953114956879,
            0.003558145274163639,
            0.0013668850552451639,
            0.00036175063543584824,
            0.00012044060888028992,
            0.00005760720831135294,
            0.00003273775687497571
          ]
        }
      ],
      "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.03807310011175835,
      "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": 590,
          "positive_response_centroid_nm": 594.8429350604541,
          "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": 527.966956553697,
          "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": 450,
          "positive_response_centroid_nm": 472.09632989785024,
          "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.003984696065719228,
        0.007559971919864279,
        0.04713650519021361,
        0.6421334232598015,
        0.8079868882989835,
        0.9072362809980234,
        0.874032842465781,
        0.8933582651355791,
        0.8172752706193224,
        0.7142072598513381,
        0.5289177693984211,
        0.36155869662540885,
        0.21874133810127522,
        0.14699406611400878,
        0.09113962908703784,
        0.05270646248236119,
        0.02594801149016657,
        0.01618962700612136,
        0.011749374715050083,
        0.008395859656024064,
        0.0051847037639340485,
        0.003201426143906156,
        0.0027784053206712962,
        0.003113564780529769,
        0.004005989210864914,
        0.004674506338536077,
        0.004913953114956879,
        0.003558145274163639,
        0.0013668850552451639,
        0.00036175063543584824,
        0.00012044060888028992,
        0.00005760720831135294,
        0.00003273775687497571
      ],
      "camera_id": "cam-sobotka-ref-nikond5100",
      "checksum": {
        "algorithm": "sha256",
        "covers": "canonical_profile_revision",
        "value": "4ff2cae9c2e99b4b31ec9945596f00808d9439ba23713d813c0acc075b11d03b"
      },
      "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.0019946045022059492,
        0.002364711309034993,
        0.00909139684637223,
        0.1168685042160236,
        0.15689305111309657,
        0.18795072652958747,
        0.23669856685626503,
        0.3564199762041305,
        0.43338947962184016,
        0.4994137524729324,
        0.6484749004761371,
        0.8347603178569536,
        0.944073222145149,
        1,
        0.8998366044873279,
        0.8223464699198355,
        0.6689795781942205,
        0.561472685411082,
        0.4302791965532592,
        0.31398599512527847,
        0.18272880462986116,
        0.09275991303846842,
        0.05568738420050615,
        0.03946138493117002,
        0.028243708139749607,
        0.019984701260446252,
        0.016291885719285124,
        0.012223938841759908,
        0.0056228846042249555,
        0.0016660133992477434,
        0.0005568946493298739,
        0.00023284538418958065,
        0.00011065508491989359
      ],
      "interpolation_method": null,
      "license_id": "lic-src-sobotka-jiang2013-mirror",
      "measurement_method": null,
      "normalization_method": "unknown",
      "optical_configuration": {
        "configuration_id": "cfg-prf-sobotka-ref-nikond5100-c066277e4592",
        "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_NikonD5100.mat",
      "profile_id": "prf-sobotka-ref-nikond5100-c066277e4592",
      "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.0009708928820957661,
        0.001339989121632529,
        0.004855803846418027,
        0.04881743215418722,
        0.04451082711610834,
        0.03535570420378823,
        0.030637364466750503,
        0.03664229895281912,
        0.04150453025119729,
        0.04001014014834439,
        0.043407227012791934,
        0.05647670119380371,
        0.08949018195956,
        0.10403316067727922,
        0.05519365552915914,
        0.03206938369542577,
        0.035018067969146215,
        0.09977825192481887,
        0.4746221645935032,
        0.7378063541814949,
        0.6809121911784074,
        0.5497393114396643,
        0.45753509897850775,
        0.37340936330003804,
        0.28682668587827803,
        0.20456037765576726,
        0.14802252424705153,
        0.08617761418464595,
        0.028747966656112074,
        0.0062383552155893226,
        0.001626511819066206,
        0.0005704344552346263,
        0.00023899975658175451
      ],
      "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"
  }
}
