{
  "schemaVersion": 1,
  "title": "Failed quality check: fine tree branches lost in a five-frame stack",
  "frameCount": 5,
  "source": {
    "width": 3476,
    "height": 5208,
    "format": "16-bit RGB sRGB TIFF, developed identically from Canon EOS 700D RAW"
  },
  "overview": {
    "before": "reference.jpg",
    "after": "result.jpg",
    "width": 3476,
    "height": 5208,
    "displayWidth": 801,
    "displayHeight": 1200
  },
  "regions": [
    {
      "id": "noise",
      "number": 1,
      "label": "Sky noise",
      "x": 750,
      "y": 650,
      "width": 360,
      "height": 240,
      "verdict": "check",
      "annotation": {
        "x": 220,
        "y": 145,
        "radius": 62
      },
      "summary": "The coloured grain is reduced in this sky patch at the same display brightness. This local observation does not pass the whole-image quality check: fine branches are lost in region ③.",
      "summaryZh": "同一亮度下，这块天空的彩色颗粒减少。但局部降噪不代表整张图合格：③处细树枝已经丢失。",
      "before": "noise-reference.png",
      "after": "noise-result.png"
    },
    {
      "id": "stars",
      "number": 2,
      "label": "Star-shape check",
      "x": 2440,
      "y": 210,
      "width": 360,
      "height": 240,
      "verdict": "check",
      "annotation": {
        "x": 108,
        "y": 167,
        "radius": 30
      },
      "summary": "Some alignment broadening remains. This crop is retained for inspection, not as evidence of sharper stars or added resolution. The overall output fails because of branch-detail loss in region ③.",
      "summaryZh": "部分星点仍有配准造成的变粗。此局部仅保留供检查，不作为星点更锐或分辨率提高的证据。③处枝梢丢失，整组结果不合格。",
      "before": "stars-reference.png",
      "after": "stars-result.png"
    },
    {
      "id": "boundary",
      "number": 3,
      "label": "Foreground detail loss",
      "x": 2400,
      "y": 2600,
      "width": 360,
      "height": 240,
      "verdict": "failed",
      "annotation": {
        "x": 300,
        "y": 60,
        "radius": 42
      },
      "summary": "The circled fine branches visible in the reference are blurred or erased in the output. The manual sky mask mistakenly includes those branches; sky alignment and averaging then damage their detail. The previous claim that the mask preserved the canopy was incorrect. This is a failed result, not just an uneven noise transition.",
      "summaryZh": "圈内原图可见的细树枝，在结果中变模糊、部分被抹掉。手动天空蒙版误把这些细枝选成天空，星空配准与平均叠加破坏了细节。此前“手动蒙版保留了树冠”的说明不正确；这属于质量失败，不能只称为降噪过渡不均。",
      "before": "boundary-reference.png",
      "after": "boundary-result.png"
    }
  ],
  "downloads": [
    {
      "label": "Processing report",
      "labelZh": "浏览器处理报告",
      "url": "processing-report.json"
    },
    {
      "label": "Preparation and source hashes",
      "labelZh": "RAW 开发参数与文件校验",
      "url": "preparation.json"
    },
    {
      "label": "Mask and project",
      "labelZh": "蒙版与项目文件",
      "url": "project.json"
    },
    {
      "label": "Measurements and limits",
      "labelZh": "测量方法与限制",
      "url": "measurements-summary.json"
    }
  ],
  "sourceUrl": "https://discuss.pixls.us/t/open-source-tool-for-sky-stacking-and-foreground-extraction/17204",
  "license": {
    "label": "CC BY-SA 4.0",
    "url": "https://creativecommons.org/licenses/by-sa/4.0/",
    "credit": "Photographer: Filippo Dall’Aglio (@flick87). Shared by Massimo Bill (@billznn). RAW development, stacking and crop derivatives by Nightscape Stacker; changes described in preparation.json. These photo derivatives are CC BY-SA 4.0. No endorsement implied."
  },
  "notes": [
    "FAILED QUALITY VERDICT: fine tree branches are blurred or erased. Retained as a regression failure, not a successful example. Promotion of this case is paused.",
    "Actual full-resolution browser import, stacking and export completed; completing the workflow did not establish acceptable image quality. This output fails the foreground-detail check.",
    "No resizing before stacking; no denoising or sharpening in RAW development. Identical common +2EV development for every input.",
    "PNG crops use a shared direct 16-to-8-bit sRGB conversion, with no per-output tone adjustment. Overviews are identically reduced in linear light and JPEG encoded.",
    "No prominent Milky Way core. This is a starfield nightscape case.",
    "Foreground pixels outside the sky mask retain the reference, but this manual mask mistakenly includes fine tree branches. Those masked branches are aligned and averaged as sky and lose detail. Fine-branch protection is not validated.",
    "Lanczos3 resampling is for visual photography, not calibrated photometry; extremely undersampled stars can have flux/colour bias."
  ],
  "metrics": {
    "scope": "Actual Chrome exported full-resolution TIFF is the measured Lanczos3 result. Reference input and old bilinear output independently decoded/processed in Node. Browser upper1680 rows equal new Node output byte-for-byte (17,519,040 RGB channel codes). Same accepted transforms within floating-point rounding; 1600px registration preview; original pixels sampled. Only upper1700 rows measured, not horizon proof. Gaussian fit widths on selected bright isolated stars; noisy reference is not ground truth. Noise proxy is median robust MAD of fixed detrended64x64 sky patches excluding bright peaks; not a calibrated sensor-SNR test. No sharpening or per-output enhancement.",
    "summaries": {
      "reference": {
        "stars": 476,
        "medianFwhm": 2.8974386196570165,
        "medianPairedRatioToReference": 1.0,
        "robustDetrendedPatchNoiseMedian": 0.01705856705735672,
        "patches": 113
      },
      "bilinear": {
        "stars": 476,
        "medianFwhm": 3.1131254483079163,
        "medianPairedRatioToReference": 1.0693197296471295,
        "robustDetrendedPatchNoiseMedian": 0.006625150430500027,
        "patches": 113
      },
      "lanczos3": {
        "stars": 476,
        "medianFwhm": 2.998200113600432,
        "medianPairedRatioToReference": 1.035160019270489,
        "robustDetrendedPatchNoiseMedian": 0.00751972082541189,
        "patches": 113
      }
    },
    "source": "Browser-exported full-resolution TIFF; fixed upper-sky patches and selected bright isolated stars. Reference is not ground truth."
  },
  "sourceEvidence": {
    "referenceSha256": "a78c5b957bb8d88c7a9fcbac54d6f40d34abaee543d2514e380c73e2a64208b4",
    "browserTiffSha256": "3dd4cee59db1262c59451e08b33c16c76aa1ae738e79589b60107f7ea667e227",
    "kernelSha256": "7025d25f4bd7b3f94678817a7a6a7d33561df9be94a3d25fa1a95f65ed425b3e"
  },
  "assets": [
    {
      "name": "SOURCE-LICENSE.txt",
      "bytes": 1130,
      "sha256": "4ff3b1748e8b1207d55f05f3869b3031ec887ab5ae912947e54ce0108e01d1b5"
    },
    {
      "name": "boundary-reference.png",
      "bytes": 202393,
      "sha256": "52ae208e9b520bf54f88e5e6d45f7d1da8e3e8e0ce880f172cd75aec7e16d304"
    },
    {
      "name": "boundary-result.png",
      "bytes": 195018,
      "sha256": "99d6ee29f042536a124fa52efd74e3dde8238c90c73d6831231d55d563512151"
    },
    {
      "name": "measurements-summary.json",
      "bytes": 1515,
      "sha256": "7b448852a1c44059dda5cf0a1c3903a3dcb656a4e900936f49bb90e8fac62f03"
    },
    {
      "name": "noise-reference.png",
      "bytes": 207244,
      "sha256": "d75976377534b5d0ad8dabcbccfb6f713b9415c4398797cfb28a88cd4ca949ce"
    },
    {
      "name": "noise-result.png",
      "bytes": 165024,
      "sha256": "12b0bcbd3a05adde34383f08d7cf21f32f33a0f438d06d661a207289d40f2e8e"
    },
    {
      "name": "preparation.json",
      "bytes": 8177,
      "sha256": "51d035514750bd219b96117188ee2aa5eae3d9289520e476bf10f42d6feb2bdc"
    },
    {
      "name": "processing-report.json",
      "bytes": 598413,
      "sha256": "bda93b9cc4d877831405814839e9e4e8ab047e3cfa4feead3a12072993c06b11"
    },
    {
      "name": "project.json",
      "bytes": 5141,
      "sha256": "15bcb782014990a62921041bdab0cb6d5b784cdeef387adec4beddbac0f354c1"
    },
    {
      "name": "reference.jpg",
      "bytes": 848567,
      "sha256": "bfcdbd493d108b3f3f389d2842bbcb22d9a70024fd0e2257918a3ce256d54a78"
    },
    {
      "name": "result.jpg",
      "bytes": 636676,
      "sha256": "4ed6c51f45f7db8bcb6b54f659fa95863083d2f5bcf669af2fd49006e9141b68"
    },
    {
      "name": "stars-reference.png",
      "bytes": 208072,
      "sha256": "804373b3831d12bc47e75ba5bdd05631c797ff174ae4d70131d04abb2abe1fa8"
    },
    {
      "name": "stars-result.png",
      "bytes": 165673,
      "sha256": "a89cea9eff78683bdff50aabff4cb820c39e7fc2f850986c133a3ff8b1a9f90e"
    }
  ],
  "verdict": "failed",
  "promotionStatus": "paused",
  "failure": {
    "summary": "This result fails the quality check: fine tree branches in region ③ are blurred or erased. The manual sky mask mistakenly includes these branches; sky alignment and averaging then blend away their detail. The earlier claim that the mask preserved the canopy was incorrect. Reduced sky noise does not make this output acceptable. This example is retained as a failed regression case, and its promotion is paused.",
    "summaryZh": "这次结果不合格：③处的细树枝被模糊、部分抹掉。手动天空蒙版误把这些细枝选成天空，星空配准与平均叠加随后破坏了枝梢细节。此前“手动蒙版保留了树冠”的说明不正确，现已更正。天空噪点减少不能抵消细节损失；本组只保留为失败回归案例，暂停用于推广。",
    "region": "boundary",
    "reason": "fine_foreground_details_included_in_sky_mask"
  }
}
