Commit graph

3 commits

Author SHA1 Message Date
jedarden
37d231b0bc docs(pdftract-27n3): add verification note
Documents the implementation of border padding, pipeline orchestration,
and fixtures for Phase 5.3 step 5.

Acceptance criteria:
- All 5.3 critical tests implemented (deskew, binarization, JBIG2 skip)
- Padding adds exactly 10px on each side
- preprocess() is deterministic
- A4 benchmark < 500ms target

WARN: Tests cannot run locally due to missing leptonica system deps;
will run in CI where dependencies are configured.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-23 21:57:59 -04:00
jedarden
eff4b6054a fix(pdftract-27n3): remove duplicate import in preprocess module
- Fixed duplicate Luma import: `use image::{GrayImage, ImageBuffer, Luma, Luma}` → `use image::{GrayImage, ImageBuffer, Luma}`
- Added re-exports in lib.rs for all preprocessing functions
- Updated verification note

The border padding, pipeline orchestration, and fixtures were already
implemented from previous work. This commit cleans up a minor duplicate
import issue.

Related: pdftract-27n3
2026-05-23 21:55:11 -04:00
jedarden
d1dc2280f1 feat(pdftract-27n3): implement border padding, pipeline orchestration, and fixtures
Implement step 5 (white-border padding: 10 px on all sides), wire all
preprocessing steps into the final preprocess(input, ImageSource) ->
GrayImage entry point, and curate fixtures for the three image-source
paths (PhysicalScan / DigitalOrigin / Jbig2).

Changes:
- Add add_border_padding() function: creates (width+20) x (height+20)
  image with 10px white border on all sides
- Add preprocess() pipeline orchestrator: applies deskew, contrast
  normalization, binarization, denoising, and padding in correct order
- Skip contrast, binarization, and denoising for JBIG2 images
- Generate test fixtures for skewed_2deg, uneven_lighting, clean_digital,
  and jbig2_scan scenarios
- Add integration tests for all critical test scenarios
- Add A4-page benchmarks targeting < 500ms for physical/digital, < 200ms
  for JBIG2

Refs:
- Plan section: Phase 5.3 step 5 (line 1878) + critical tests (lines 1882-1885)
- Bead: pdftract-27n3
- Note: notes/pdftract-27n3.md

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-23 21:55:11 -04:00