Product · Computer Vision
CivicSet
Explainable computer vision, in-process
CivicSet builds two computer-vision products and runs both in-process on the server. There is no black-box service, no separate tool plane, and no container to deploy, just well-specified compute with clear inputs and outputs.
Multi-Frame Super-Resolution
Fuse a burst of low-quality frames of the same scene into one crisp, high-resolution image. Cross-correlation shift estimation aligns the frames to sub-pixel accuracy, shift-and-add fusion suppresses noise through redundancy, and every run reports its alignment error. Up to 16 frames fuse per run.
Facial Verification
Compare two faces and return a same-or-different verdict. Procrustes geometric alignment handles translation, scale, and rotation, embedding comparison scores the pair, and the match threshold is configurable. Verification is 1:1 only. There is no database matching surface and no identification of people from imagery.
Explainable by design
Every result carries its metrics, alignment error for super-resolution, similarity and distance for verification, so outputs can be reviewed rather than trusted blindly. Requests are validated against typed contracts before any compute runs, and private media is stored account-scoped under row-level security.
The story
- The problem
- Image sharpening and face comparison usually arrive as black-box services. Results come back with no metrics, media leaves the account on its way to a third party, and a separate tool plane has to be deployed and kept alive. Teams that need auditable outputs are asked to trust them instead of checking them.
- How it was built
- Both products run as server-only TypeScript functions in the web runtime. Zod schemas validate every request, and size and pixel caps bound the compute each one can ask for. Private media sits under account-scoped keys in Supabase Storage, governed by row-level security. The scope is deliberately narrow. There is no identification surface of any kind, and no long tail of half-finished tools beyond the two products.
- Where it stands
- Both products are in active development ahead of launch, with a coming-soon page and a notify list carrying the waitlist.
- Constraints
-
- Verification is 1:1 only, with no database identification
- Size and pixel caps bound every request
- Compute stays in-process, with no external tool plane
- What is next
- Launch both products, then keep the research door open. CivicSet welcomes collaboration with teams working on super-resolution and facial verification methods.
What it does
- Multi-Frame Super-Resolution fusing up to 16 frames with sub-pixel alignment
- Facial Verification via Procrustes alignment, 1:1 only, no identification
- In-process server-side compute with no external tool plane
- Account-scoped storage under row-level security