A package to make the usage of DeepLearning models easier
Project description
svnm - A Simplified Deep Learning Models Package
svnm is a Python package designed to simplify the process of using deep learning models in your code. With just a simple import, you can easily load pre-trained models and make predictions with minimal setup. This package is aimed at making deep learning models more accessible for developers, enabling rapid experimentation and deployment.
Routing
Image Classification
Features
- Easy-to-use interface: Import the package and start making predictions with minimal code.
- Pre-trained models: Includes popular deep learning models ready for use without additional training.
- Flexible prediction methods: Support for various types of input data to make predictions.
- Lightweight and efficient: Focuses on simplifying deep learning workflows without overhead.
Installation
To install svnm, simply use pip:
pip install svnm
Model Usage
Gender Detection
from svnm.models import GenderDetection
model = GenderDetection()
# Single Prediction
prediction, confidence = model.predict("face_image.jpg")
print(f"Predicted Gender: {prediction} with confidence {confidence:.2f}")
# Batch Prediction
image_paths = ["face1.jpg", "face2.jpg", "face3.jpg"]
predictions = model.predict_batch(image_paths)
for img, (label, conf) in zip(image_paths, predictions):
print(f"Image: {img} -> Predicted Gender: {label} with confidence {conf:.2f}")
# Visualization
model.visualize_prediction("face_image.jpg")
How Gender Detection Works
The Gender Detection model in svnm classifies whether a detected face belongs to a male or female. It works as follows:
- Loading the Model: The pre-trained deep learning model is loaded automatically when the
GenderDetectionclass is initialized. - Processing the Image: The input image is preprocessed and resized before being fed into the model.
- Making Predictions: The model analyzes the facial features and predicts the gender along with a confidence score.
- Batch Processing:
- Supports batch predictions for multiple images at once.
- Each image is processed individually, and the results are returned as a list.
- Visualization:
- If
visualize_prediction()is called, the image is displayed with the predicted gender and confidence score.
- If
Face Detection
from svnm.models import FaceDetection
model = FaceDetection(save=True, save_dir="predictions")
# Single Image Prediction
predictions = model.predict("face_image.jpg")
print("Face Detection Results:", predictions)
# Batch Prediction
image_paths = ["face1.jpg", "face2.jpg", "face3.jpg"]
batch_predictions = model.predict_batch(image_paths)
for img, preds in zip(image_paths, batch_predictions):
print(f"Image: {img} -> Predictions: {preds}")
How Face Detection Works
The Face Detection model in svnm is designed to detect human faces in images. It works as follows:
- Loading the Model: The pre-trained YOLO-based face detection model is loaded automatically when the
FaceDetectionclass is initialized. - Processing the Image: The input image is read, preprocessed, and fed into the model.
- Detecting Faces: The model detects faces in the image and returns bounding box coordinates, confidence scores, and class labels.
- Batch Processing:
- Supports batch predictions for multiple images at once.
- Each image is processed individually, and the results are returned as a list.
- Saving and Visualizing Results:
- If
save=True, the detected faces are highlighted in the image and saved to the specified directory. - The model outputs a list of detected faces with their positions and confidence levels.
- If
Face Recognition
from svnm.models import FaceRecognition
model = FaceRecognition()
# Train the model
train_dataset = [
{"imagepath": "person1.jpg", "label": "John"},
{"imagepath": "person2.jpg", "label": "Jane"}
]
model.train(train_dataset)
# Predict from a new image
prediction = model.predict("test_face.jpg")
print("Face Recognition Prediction:", prediction)
How Face Recognition Works
- Face Detection: Detects faces in the given image using the
FaceDetectionmodel. - Face Embeddings: Extracts feature embeddings using a deep learning model.
- Matching Faces: Compares embeddings with the trained dataset using cosine similarity.
- Making Predictions:
- If a match is found, returns the predicted label and confidence score.
- If no match is found, returns
Unknown.
Handwritten Digit Recognition
from svnm.models import HandwrittenDigitRecognition
model = HandwrittenDigitRecognition()
# Single Image Prediction
prediction = model.predict("digit_image.jpg")
print("Predicted Digit:", prediction)
How Handwritten Digit Recognition Works
- Loading the Model: The pre-trained digit recognition model is initialized.
- Processing the Image: The input image is resized and normalized before being fed into the model.
- Making Predictions:
- The model predicts the digit and outputs the confidence score.
- Supports batch predictions for multiple images at once.
Example Output
{"digit": 7, "confidence": 0.98}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file svnm-1.4.1.tar.gz.
File metadata
- Download URL: svnm-1.4.1.tar.gz
- Upload date:
- Size: 10.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2a0557d3a77c65e715cb1e331fa58319101de0f9b24bc70764908202b91ef7ae
|
|
| MD5 |
8bf681dfc7fa5d2c21b7222baacb4fe5
|
|
| BLAKE2b-256 |
cc947011bf54c45eebc30b2227cee1911a1655e80bc6c151a5858f9fbeb56e7b
|
File details
Details for the file svnm-1.4.1-py3-none-any.whl.
File metadata
- Download URL: svnm-1.4.1-py3-none-any.whl
- Upload date:
- Size: 11.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f1c3cc051d9dc202eb92770b868f5089fd8f7d6dbf1c248a8bd398e6aea90bdf
|
|
| MD5 |
7e3fd7a44585e3ebd3d5270789be8601
|
|
| BLAKE2b-256 |
df9a031c8730e74326231fd7b93a3f2b626b2958d8d9b248a5cde7bd14f41071
|