{
  "schema_version": "camera-spectra-application-export-1",
  "profile_id": "prf-sobotka-ref-nikond3-68db15804727",
  "profile_revision": 1,
  "exports": {
    "xspd": "/application-data/prf-sobotka-ref-nikond3-68db15804727-r1.xspd",
    "siril": null,
    "metadata": "/application-data/prf-sobotka-ref-nikond3-68db15804727-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-nikond3-68db15804727-r1.estimated.siril.json",
    "siril_estimated_alternative": "/application-data/prf-sobotka-ref-nikond3-68db15804727-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.002936997459379298,
            0.003522398380645224,
            0.04150828776810536,
            0.06419881694347897,
            0.047267176441377075,
            0.03546756107422598,
            0.029780409624462774,
            0.03141305971530779,
            0.035499253003923294,
            0.030470810060721065,
            0.032283181759172136,
            0.04074360232566622,
            0.061463172390498526,
            0.07240262735944504,
            0.03695444637959357,
            0.020534236672271167,
            0.023784544355632212,
            0.08422881790118496,
            0.4148678051569054,
            0.627753260534478,
            0.5783958996913386,
            0.5082982514064077,
            0.40780178955015217,
            0.32079620113615626,
            0.2432505707205152,
            0.1868474340403002,
            0.12243814142406252,
            0.05375745218749894,
            0.01137880529539133,
            0.0023559425421431604,
            0.0007822281026718312,
            0.0003477673212253505,
            0.00018522098251950344
          ]
        },
        {
          "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.0021124934003419844,
            0.0021653866629064247,
            0.018884479969121192,
            0.0458621883096846,
            0.06289453575928353,
            0.0832690352863886,
            0.13447364106038193,
            0.2506996666011167,
            0.3745039699797001,
            0.4075906870776133,
            0.5864613534684338,
            0.8073017060045324,
            0.8994265116811643,
            0.9738376261953855,
            0.8879560898294104,
            0.8181860429893661,
            0.6802614839157127,
            0.5447516982496785,
            0.37139817461609065,
            0.23468013382853256,
            0.11129439622015437,
            0.04888724030315531,
            0.022582081530124094,
            0.013198755693792785,
            0.008354926255798263,
            0.0054873883923573655,
            0.003981620952498217,
            0.002543931770061472,
            0.0009072501686132664,
            0.00028303702872913315,
            0.00015475862749943055,
            0.0000943926876452084,
            0.00006498259341685047
          ]
        },
        {
          "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.009308479644174899,
            0.017246912954428744,
            0.3357843964183317,
            0.7728011242877512,
            0.8822182109724935,
            0.9872784458248148,
            1,
            0.93914132475682,
            0.8740171389679259,
            0.6569592412609603,
            0.46503496227403307,
            0.29314451713211653,
            0.13196842741759812,
            0.06262800970290856,
            0.030178436964580002,
            0.014275895824916174,
            0.007409967511639303,
            0.005141641630356638,
            0.003779088709629554,
            0.002314574344559749,
            0.0014221708941354152,
            0.0009520350498695932,
            0.0005981491245690244,
            0.0003874844064839595,
            0.0003222240583333042,
            0.0002718172789903341,
            0.0002807467430014249,
            0.0001838657811015572,
            0.00010427935779968435,
            0.000030410249834360623,
            0.000032638472853839236,
            0.000028512061126891852,
            0.00002695410307526839
          ]
        }
      ],
      "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.0019374815699015032,
        "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.0022761513793579714,
            0.0027980785971839185,
            0.0337770478705263,
            0.053485130594112466,
            0.040294884615238266,
            0.030922985659800964,
            0.026541537604096426,
            0.028605245398733374,
            0.03301399125137854,
            0.02892795012718202,
            0.0312740348380882,
            0.04025938908466091,
            0.0619235571418203,
            0.07434774074432669,
            0.03866322174464297,
            0.021881587807486527,
            0.02580598514902365,
            0.09301931593273732,
            0.46620326133345535,
            0.7175936199113654,
            0.6723788374551403,
            0.6007392814089761,
            0.48986723988428815,
            0.3915681382593026,
            0.30162783848897307,
            0.23530874889370446,
            0.15656628402499584,
            0.06978322881495409,
            0.014991433372176467,
            0.0031495707260529955,
            0.0010608867726699855,
            0.00047839287059657406,
            0.0002583808127932222
          ]
        },
        {
          "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.001637166811880461,
            0.001720112667947604,
            0.015367099396885494,
            0.03820857218030742,
            0.05361708170769407,
            0.07259949954488513,
            0.11984849254833839,
            0.22829121230145408,
            0.3482853790514951,
            0.38695272769541966,
            0.5681290319022907,
            0.7977074101342498,
            0.9061635907287885,
            1,
            0.9290152218201946,
            0.8718712084733947,
            0.738076689168303,
            0.6016044340528394,
            0.41735472867996687,
            0.26826617612773207,
            0.12937850490591876,
            0.05777805752533273,
            0.027126467400269715,
            0.01611057791848431,
            0.010360010008636997,
            0.006910614020104492,
            0.005091449361107316,
            0.003302310016119277,
            0.0011952907270651996,
            0.0003783815284660407,
            0.00020988939199437904,
            0.00012984770577870302,
            0.00009064985551887638
          ]
        },
        {
          "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.007214003101756868,
            0.013700386154629483,
            0.27324195339882756,
            0.6438338122678718,
            0.7520838707319002,
            0.8607752069159603,
            0.8912415221546914,
            0.8551974338771339,
            0.8128282072936307,
            0.6236947468385969,
            0.45049833438288994,
            0.2896606706231871,
            0.1329569258838499,
            0.06431052571626886,
            0.03157388933074633,
            0.015212606780034896,
            0.008039738272927229,
            0.005678246461776953,
            0.004246710541039466,
            0.0026458226295033053,
            0.0016532579379826252,
            0.0011251757214437831,
            0.0007185198010412261,
            0.0004729686545977433,
            0.000399554031615772,
            0.00034231662947595574,
            0.0003590014826475888,
            0.00023867849668727348,
            0.00013738674702347604,
            0.000040654316027220026,
            0.00004426550773683082,
            0.00003922153099681321,
            0.00003760061611792171
          ]
        }
      ],
      "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.03799567919262833,
      "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": 596.8398658004577,
          "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": 532.022000213324,
          "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": 466.01861025667193,
          "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.007214003101756868,
        0.013700386154629483,
        0.27324195339882756,
        0.6438338122678718,
        0.7520838707319002,
        0.8607752069159603,
        0.8912415221546914,
        0.8551974338771339,
        0.8128282072936307,
        0.6236947468385969,
        0.45049833438288994,
        0.2896606706231871,
        0.1329569258838499,
        0.06431052571626886,
        0.03157388933074633,
        0.015212606780034896,
        0.008039738272927229,
        0.005678246461776953,
        0.004246710541039466,
        0.0026458226295033053,
        0.0016532579379826252,
        0.0011251757214437831,
        0.0007185198010412261,
        0.0004729686545977433,
        0.000399554031615772,
        0.00034231662947595574,
        0.0003590014826475888,
        0.00023867849668727348,
        0.00013738674702347604,
        0.000040654316027220026,
        0.00004426550773683082,
        0.00003922153099681321,
        0.00003760061611792171
      ],
      "camera_id": "cam-sobotka-ref-nikond3",
      "checksum": {
        "algorithm": "sha256",
        "covers": "canonical_profile_revision",
        "value": "774ec2513e5a79ba4add115581aee771e8d11356e96c459ba9c29f5fd9b506cc"
      },
      "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.001637166811880461,
        0.001720112667947604,
        0.015367099396885494,
        0.03820857218030742,
        0.05361708170769407,
        0.07259949954488513,
        0.11984849254833839,
        0.22829121230145408,
        0.3482853790514951,
        0.38695272769541966,
        0.5681290319022907,
        0.7977074101342498,
        0.9061635907287885,
        1,
        0.9290152218201946,
        0.8718712084733947,
        0.738076689168303,
        0.6016044340528394,
        0.41735472867996687,
        0.26826617612773207,
        0.12937850490591876,
        0.05777805752533273,
        0.027126467400269715,
        0.01611057791848431,
        0.010360010008636997,
        0.006910614020104492,
        0.005091449361107316,
        0.003302310016119277,
        0.0011952907270651996,
        0.0003783815284660407,
        0.00020988939199437904,
        0.00012984770577870302,
        0.00009064985551887638
      ],
      "interpolation_method": null,
      "license_id": "lic-src-sobotka-jiang2013-mirror",
      "measurement_method": null,
      "normalization_method": "unknown",
      "optical_configuration": {
        "configuration_id": "cfg-prf-sobotka-ref-nikond3-68db15804727",
        "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_NikonD3.mat",
      "profile_id": "prf-sobotka-ref-nikond3-68db15804727",
      "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.0022761513793579714,
        0.0027980785971839185,
        0.0337770478705263,
        0.053485130594112466,
        0.040294884615238266,
        0.030922985659800964,
        0.026541537604096426,
        0.028605245398733374,
        0.03301399125137854,
        0.02892795012718202,
        0.0312740348380882,
        0.04025938908466091,
        0.0619235571418203,
        0.07434774074432669,
        0.03866322174464297,
        0.021881587807486527,
        0.02580598514902365,
        0.09301931593273732,
        0.46620326133345535,
        0.7175936199113654,
        0.6723788374551403,
        0.6007392814089761,
        0.48986723988428815,
        0.3915681382593026,
        0.30162783848897307,
        0.23530874889370446,
        0.15656628402499584,
        0.06978322881495409,
        0.014991433372176467,
        0.0031495707260529955,
        0.0010608867726699855,
        0.00047839287059657406,
        0.0002583808127932222
      ],
      "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"
  }
}
