Automated ICAO/ISO Compliance Validator for ID Portraits

Authors

DOI:

https://doi.org/10.66660/ghyn.v1i12.146

Keywords:

ICAO Compliance, ISO 19794-5, Portrait Validation, Face Landmarks, Automated Quality Control, MediaPipe Tasks API, Flask REST API

Abstract

Abstract
The manual verification of identity document portraits against international
standards remains a labor-intensive and error-prone process, limiting scalability in
high-volume digital identity workflows. This paper presents an automated, open-source
compliance validator that programmatically enforces ICAO Doc 9303 and ISO/IEC
19794-5 requirements for ID portrait photographs. The proposed system integrates
MediaPipe's modern Tasks API for robust face landmark extraction, geometric rulebased checks for head-to-frame ratio (70–80%), eye-line positioning (50–60% from
top), and head pose tolerance (±10°), alongside environmental assessments for
background uniformity and lighting consistency. A modular, thread-safe architecture
enables dual deployment: a stateless Flask REST API for system integration and a
cross-platform Tkinter graphical interface for interactive validation, both producing
structured JSON reports with per-check status, quantitative metrics, and actionable
recommendations. Evaluation on a curated dataset of 500 portrait images across three
difficulty tiers demonstrates high precision (0.95) and recall (0.93) for overall
compliance detection, with average end-to-end latency of 218 ± 24 ms on CPU
hardware. The validator reduces manual review overhead by >85% while maintaining
full auditability through ephemeral, privacy-preserving processing. By bridging
standards-aligned rule enforcement with production-ready deployment, this work
provides a reproducible, offline-capable foundation for scalable identity photography
workflows in resource-constrained environments.

References

X. Qin, Z. Zhang, C. Huang, C. Gao, M. Dehghan, and Y. Wang, “U²-Net: Going

deeper with nested U-structure for salient object detection,” Pattern Recognition, vol.

, p. 107404, Oct. 2020.

C. Rother, V. Kolmogorov, and A. Blake, “‘GrabCut’: Interactive foreground

extraction using iterated graph cuts,” ACM Transactions on Graphics, vol. 23, no. 3,

pp. 309–314, Aug. 2004.

D. E. King, “Dlib-ml: A machine learning toolkit,” Journal of Machine Learning

Research, vol. 10, pp. 1755–1758, 2009.

D. Gatis, “rembg: Remove background from images using U²-Net,” GitHub

Repository, 2024. [Online]. Available: https://github.com/danielgatis/rembg

International Civil Aviation Organization (ICAO), Machine Readable Travel

Documents, Part 3: Specifications for Machine Readable Passports, Doc 9303, 8th ed.

Montreal, Canada: ICAO, 2015.

R. C. Gonzalez and R. E. Woods, Digital Image Processing, 4th ed. Hoboken, NJ,

USA: Pearson, 2018.

The Pallets Projects, “Flask Web Framework Documentation,” 2024. [Online].

Available: https://flask.palletsprojects.com/

Python Software Foundation, “Tkinter—Python Interface to Tcl/Tk,” Python 3

Documentation, 2024. [Online]. Available:

https://docs.python.org/3/library/tkinter.html

P. Viola and M. J. Jones, “Robust real-time face detection,” International Journal

of Computer Vision, vol. 57, no. 2, pp. 137–154, May 2004.

S. Wang, J. Li, and M. Zhang, “Deep portrait matting and background

replacement: A survey,” IEEE Access, vol. 11, pp. 45210–45228, 2023.

OpenCV Developers, “OpenCV: Open Source Computer Vision Library,” 2024.

[Online]. Available: https://opencv.org/

Downloads

Published

2026-07-31

How to Cite

Albibas, M., Faraj, A.-M. A., & Faneer, M. (2026). Automated ICAO/ISO Compliance Validator for ID Portraits. Gharyan Journal of Technology, 1(12), 51–67. https://doi.org/10.66660/ghyn.v1i12.146

Issue

Section

Articles