SAMUDRA All work
Case notes / 05

COMPUTER VISION · UNDERGRADUATE THESIS

Banana Ripeness
Classification.

A four-class image classification study using MobileNetV2 transfer learning, with an experiment to measure how CLAHE preprocessing affects model performance.

Overview of the banana ripeness classification research
Python & TensorFlowMobileNetV2CLAHE comparison

Research pipeline

A controlled comparison of image preprocessing.

Dataset preparation

The study began with approximately 1,800 banana images grouped into four stages: unripe, half-ripe, ripe, and overripe. Images were resized to 224 × 224 pixels, then augmented with flips and rotations to improve variation during training.

Transfer learning experiment

MobileNetV2 was used as the convolutional neural network backbone through transfer learning. Two pipelines were trained and evaluated: a baseline using the original images, and a second pipeline using CLAHE on the L channel in LAB color space.

Evaluation

The models were compared through predictions and confusion matrices. The analysis focused on overall classification behavior and the overripe class, where visual similarities made errors easier to observe.

What I built

One study, four practical stages.

The workflow covers data, preprocessing, model training, and evaluation.

01 / DATA

Prepare the dataset

Organize four ripeness labels, resize every image, and create train and evaluation inputs.

02 / PREPROCESSING

Test CLAHE

Apply local contrast enhancement on the luminance channel while preserving color information.

03 / MODEL

Fine-tune MobileNetV2

Use a pretrained CNN backbone to learn the visual differences between ripeness stages.

04 / EVALUATION

Inspect the errors

Compare confusion matrices and review which adjacent ripeness stages the model confuses.

Research stack

Tools used in the experiment.

A compact stack for reproducible computer vision work.

Python
Dataset processing, experiment orchestration, and evaluation.
TensorFlow
Model training and inference for the four-class classifier.
MobileNetV2
Pretrained convolutional backbone used for transfer learning.
OpenCV / CLAHE
Contrast preprocessing applied in LAB color space.