← All projects PUBLIC SOURCE / 2026

COMPUTER VISION / COIT29225

CNN Age and Gender Estimation

Testing whether image augmentation improves age estimation without sacrificing gender-classification performance.

A multi-output convolutional network with a shared visual backbone and separate age-regression and gender-classification heads.

  • Python
  • TensorFlow
  • Keras
  • CNN
  • Computer Vision
Augmented validation age MAE (years)
6.871
Augmented validation gender accuracy
88.76%
RGB image input
128 × 128

02 / PROBLEM

The engineering question.

The assignment required learning two prediction tasks from facial images, exploring whether augmentation improved model generalisation and acknowledging measurement trade-offs.

03 / METHOD

What I built and evaluated.

  1. Processed UTKFace images as 128×128 normalised RGB tensors and used an 80/20 training/validation split.
  2. Trained a shared CNN feature extractor with a linear age-regression head and sigmoid gender-classification head.
  3. Compared an original model against one trained with horizontal flips, rotation, zoom and contrast changes.
  4. Logged four tuning configurations and evaluated validation age MAE and classification accuracy separately.

04 / MEASURED FINDINGS

What the evidence shows.

  • Age MAE improved from 7.0409 years (original) to 6.8710 years (augmented) on the recorded validation split.
  • Gender accuracy decreased slightly from 89.35% to 88.76% after augmentation; improvement in one objective did not improve both.
  • The public repository includes the training programs, selected original plot evidence and reproduction instructions; trained models and raw UTKFace images are not tracked.

05 / LIMITATIONS

Where the claims stop.

Inferring demographic attributes from faces has fairness, representativeness and measurement risks. Results are limited to this assessment and validation split; the model is not intended for identification, hiring or real-world personal assessment.

06 / MODEL DESIGN & TRADE-OFFS

One visual backbone, two objectives.

The CNN extracts shared features from 128 × 128 RGB images, then branches into a linear age-regression head and a sigmoid classification head. The experiment compares original training against augmentation with flips, rotation, zoom and contrast changes.

Recorded validation metrics, not independent production test results
VariantAge MAE (years)Gender-label accuracy
Original7.040989.35%
Augmented6.871088.76%

Augmentation improved age MAE by about 0.17 years but reduced classification accuracy by 0.59 percentage points. One model change need not benefit both objectives.

Evidence boundary: Original training plots and labelled architecture are now published in the public repository, while trained models and raw UTKFace images remain excluded. This work is a dataset-specific learning experiment and is not suitable for personal identification or real-world demographic assessment.

PROJECT SOURCE

Inspect the implementation.

See the original code, data-handling choices, documented experiments and repository instructions.

Explore repository ↗