Final Year Project · NailHealth

Early-Stage Disease
Detection via
Computer Vision

NailHealth is a non-invasive diagnostic system that analyses fingernail images to detect early-stage systemic diseases. An ensemble of 7 pre-trained CNNs with XGBoost refinement achieves 93% classification accuracy across 17 disease classes.

PythonPyTorchTensorFlowKerasXGBoostOpenCVFlaskReactEnsemble Averaging

Preview

Application Overview

NailHealth application overview

← scroll to pan →

93%

Classification Accuracy

7

Pre-trained CNNs

17

Disease Classes

RAD

Development Methodology

How It Works

The Detection Pipeline

Image Upload

Fingernail Photo

Preprocessing

Resize · Normalize · Augment

Feature Extraction

CNN Layers

Ensemble Average

7 Pre-trained CNNs

XGBoost Refinement

Prediction Tuning

Disease Prediction

17 Classes · 93% Acc.

Input
Model
Output

Architecture

Ensemble Models

Seven pre-trained CNNs are run independently on each input image. Their softmax outputs are averaged (ensemble averaging) before the final XGBoost layer produces the disease prediction.

DenseNet121

Dense connectivity, feature reuse

DenseNet169

Deeper dense network

MobileNet

Lightweight depthwise separable convs

MobileNetV2

Inverted residuals, linear bottlenecks

ResNet50V2

50-layer residual network v2

ResNet101V2

101-layer residual network v2

VGG16

16-layer deep CNN baseline

Ensemble Average

Averaged softmax probabilities across all 7 models → final prediction

Classification

Detectable Conditions

17 nail conditions total — 5 primary classes are highlighted below.

Terry's Nail

Ground-glass opacity covering most of the nail, associated with liver disease, heart failure, and diabetes

Half and Half Nails (Lindsay's Nails)

Proximal white, distal pink or brown band — linked to chronic kidney disease

Splinter Haemorrhage

Thin longitudinal blood streaks under the nail suggesting endocarditis or trauma

Yellow Nail

Thickened, slow-growing yellow nails associated with respiratory or lymphatic conditions

Healthy

No systemic abnormalities detected in nail morphology

Additional Classes

Darier's Disease

Genetic disorder causing red/white streaks and fragile nail tips

Muehrcke's Lines

Paired white transverse bands, sign of hypoalbuminaemia

Alopecia Areata

Autoimmune condition causing nail pitting and trachyonychia

Beau's Lines

Horizontal grooves reflecting systemic illness or nutritional deficiency

Bluish Nail

Cyanosis-related discolouration indicating hypoxia or circulatory issues

Clubbing

Enlarged, rounded nail tips associated with pulmonary or cardiac conditions

Eczema

Nail involvement from atopic dermatitis causing pitting and ridging

Koilonychia

Spoon-shaped concave nails, commonly linked to iron deficiency anaemia

Leukonychia

White discolouration of the nail plate from trauma or systemic causes

Onycholysis

Separation of the nail plate from the nail bed

Pale Nail

Diffuse pallor associated with anaemia, malnutrition, or heart failure

White Nail

Complete or near-complete whitening, may indicate hepatic cirrhosis

Capabilities

Key Features

Non-Invasive Diagnosis

Analyse potential health conditions by simply uploading a photo of your fingernail — no blood draws, no invasive procedures, no clinic visits required.

93% Classification Accuracy

Ensemble averaging across 7 pre-trained convolutional neural networks achieves 93% diagnostic accuracy, outperforming single-model baselines.

17 Disease Classes

Classifies 17 distinct nail conditions — including Terry's nail, Lindsay's nails, splinter haemorrhage, yellow nail, and more — covering a broad range of systemic disease indicators.

Authentication & Profiles

Secure user registration and login with personal profiles, enabling each user to manage and revisit their health data privately.

Diagnosis History

Every prediction is logged to the user's profile. History can be sorted by latest or oldest, giving a longitudinal view of nail health over time.

Curated Health Articles

After each diagnosis, the system surfaces relevant articles and advice tailored to the detected condition, promoting informed health decisions.

Stack

Technology

Model

PythonPyTorchTensorFlowKerasXGBoostOpenCV

Backend

PythonFlaskREST APIJWT Auth

Frontend

ReactJavaScriptTailwind CSS

Data Processing

NumPyPandasPillowScikit-learn

Model Strategy

Ensemble AveragingTransfer LearningData Augmentation

Database

MySQLSQLAlchemy