YAML Metadata Warning: empty or missing yaml metadata in repo card (https://huggingface.co/docs/hub/model-cards#model-card-metadata)

Mask Detection Model

Model Overview

Name: Mask Detection CNN
Author: Your Name
Date: 2025-09-26
Framework: Keras (TensorFlow backend)
Format: HDF5 (.h5)
License: MIT / CC0 (choose as needed)

This model is designed to detect whether a person is wearing a mask or not from images of faces. It can be used in real-time applications such as webcam-based mask detection or image classification.


Intended Use

  • Primary Use: Classify face images as "Mask" or "No Mask".
  • Applications: Public safety, automated mask compliance monitoring, educational demos.
  • Limitations:
    • The model works on cropped face images; it may produce inaccurate results if the input contains multiple faces without detection.
    • Lighting, occlusions, or extreme angles may affect accuracy.
    • Model trained on limited dataset; performance may vary on unseen ethnicities or environments.

Model Details

  • Input: RGB image of shape (128, 128, 3)
  • Preprocessing:
    • Resize to 128x128 pixels
    • Normalize pixel values to range [0, 1]
  • Output:
    • 0: Mask
    • 1: No Mask
    • Output is a softmax probability distribution; prediction = argmax(output)
  • Architecture: Convolutional Neural Network (CNN) with 2-3 Conv2D + MaxPooling layers, Flatten, Dense layers

Training

  • Dataset: Custom mask/no-mask face dataset
  • Loss Function: Categorical Crossentropy
  • Optimizer: Adam
  • Metrics: Accuracy
  • Epochs: Variable depending on training
  • Batch Size: Variable depending on training

Evaluation

  • Accuracy: High on training/validation dataset (exact value depends on training)
  • Test Notes: Recommended to evaluate on new faces under similar conditions to training images

Usage Example

import cv2
import numpy as np
from keras.models import load_model

# Load model
model = load_model("mask_detection_model.h5")

# Load image
image = cv2.imread("face.jpg")
image_resized = cv2.resize(image, (128, 128))
image_scaled = image_resized.astype("float32") / 255.0
image_input = np.expand_dims(image_scaled, axis=0)

# Predict
prediction = model.predict(image_input)
pred_label = np.argmax(prediction, axis=1)[0]

if pred_label == 0:
    print("Mask πŸ˜·βœ…")
else:
    print("No Mask ❌")
Downloads last month
9
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support

Space using sreenathsree1578/face_mask_detection 1