FR-DEV-3g — AI denoise. Promoted into v1 scope by D11, and unbuilt.
Why D11 promoted it
Unlike AI masking, denoise has no manual fallback — it reaches a quality ceiling no conventional method matches, which is why photographers run a second application for it. Raw-domain joint demosaic-and-denoise is also markedly easier to build into a new pipeline than to retrofit, and the same component attacks the X-Trans artefact problem (FR-RAW-5). D11 names it the precondition for deferring AI masking: one learned stage earns the runtime a second could reuse.
What exists
Classical noise reduction only — ops/noise_reduction.rs, a bilateral filter in two arrangements, exact for luminance and separable for chroma. It is good, and it is not this.
models/ holds two face models. core/dr-segment/models/ holds a YOLO segmentation model. There is no denoise model, no learned demosaic, and no inference path that is not face or segmentation.
Blocked on
#22 — D13, model licensing, is still open for the models that already ship. Adding a third learned stage adds a third licence to answer for, and building the runtime before that is settled means owning the same problem in one more place.
Constraints when it does land
Inference local only — no cloud, no telemetry (NFR-SEC-4).
The stage is optional at runtime and its absence degrades gracefully.
See docs/outstanding.md §3.
**FR-DEV-3g — AI denoise.** Promoted into v1 scope by D11, and unbuilt.
## Why D11 promoted it
Unlike AI masking, denoise has **no manual fallback** — it reaches a quality ceiling no conventional method matches, which is why photographers run a second application for it. Raw-domain joint demosaic-and-denoise is also markedly easier to build into a new pipeline than to retrofit, and the same component attacks the X-Trans artefact problem (FR-RAW-5). D11 names it the precondition for deferring AI masking: one learned stage earns the runtime a second could reuse.
## What exists
Classical noise reduction only — `ops/noise_reduction.rs`, a bilateral filter in two arrangements, exact for luminance and separable for chroma. It is good, and it is not this.
`models/` holds two face models. `core/dr-segment/models/` holds a YOLO segmentation model. There is no denoise model, no learned demosaic, and no inference path that is not face or segmentation.
## Blocked on
#22 — D13, model licensing, is still open for the models that **already** ship. Adding a third learned stage adds a third licence to answer for, and building the runtime before that is settled means owning the same problem in one more place.
## Constraints when it does land
- Inference **local only** — no cloud, no telemetry (NFR-SEC-4).
- The stage is optional at runtime and its absence degrades gracefully.
See `docs/outstanding.md` §3.
Removing blocked: both blockers have gone. D13 (#22) is closed with the licensing position recorded in requirements.md, and the inference engine now has roles beyond face and segmentation (e.g. the Inpainter role for MI-GAN, c5f07f9). The work itself is untouched — denoise is still only the classical ops/noise_reduction.rs.
Removing `blocked`: both blockers have gone. D13 (#22) is closed with the licensing position recorded in requirements.md, and the inference engine now has roles beyond face and segmentation (e.g. the Inpainter role for MI-GAN, c5f07f9). The work itself is untouched — denoise is still only the classical `ops/noise_reduction.rs`.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
FR-DEV-3g — AI denoise. Promoted into v1 scope by D11, and unbuilt.
Why D11 promoted it
Unlike AI masking, denoise has no manual fallback — it reaches a quality ceiling no conventional method matches, which is why photographers run a second application for it. Raw-domain joint demosaic-and-denoise is also markedly easier to build into a new pipeline than to retrofit, and the same component attacks the X-Trans artefact problem (FR-RAW-5). D11 names it the precondition for deferring AI masking: one learned stage earns the runtime a second could reuse.
What exists
Classical noise reduction only —
ops/noise_reduction.rs, a bilateral filter in two arrangements, exact for luminance and separable for chroma. It is good, and it is not this.models/holds two face models.core/dr-segment/models/holds a YOLO segmentation model. There is no denoise model, no learned demosaic, and no inference path that is not face or segmentation.Blocked on
#22 — D13, model licensing, is still open for the models that already ship. Adding a third learned stage adds a third licence to answer for, and building the runtime before that is settled means owning the same problem in one more place.
Constraints when it does land
See
docs/outstanding.md§3.Blocked on #22 (D13). Adding a third learned stage adds a third licence to answer for.
Removing
blocked: both blockers have gone. D13 (#22) is closed with the licensing position recorded in requirements.md, and the inference engine now has roles beyond face and segmentation (e.g. the Inpainter role for MI-GAN,c5f07f9). The work itself is untouched — denoise is still only the classicalops/noise_reduction.rs.