Skip to main content

FaceCropThumb

FaceCropThumb is a Python package for generating thumbnails of detected faces in images. It utilizes the MTCNN (Multi-Task Cascaded Convolutional Neural Network) for accurate face detection and OpenCV for image processing.

All documentation is in the “docs” directory and online at https://facecrop-thumb.readthedocs.io/en/stable/. If you’re just getting started, here’s how we recommend you read the docs:

Features

  • Detect faces in images using the MTCNN model
  • Crop detected faces with a configurable margin
  • Generate square thumbnails of detected faces
  • Option to resize the entire image if no face is detected or face detection is skipped
  • Command-line utility for easy usage

Quick Installation

You can install FaceCropThumb via pip:

pip install facecropthumb

Quick Usage

facecropthumb <image_path> [-d/--dir <output_directory>] [-m/--margin <margin_size>] [-F/--no-face] [-S/--skip-face] [-a/--all]

  • <image_path>: Path to the input image file.
  • -d/--dir <output_directory>: Directory to store the output thumbnail. Default is the current directory.
  • -m/--margin <margin_size>: Margin around the detected face. Default is 50 pixels.
  • -F/--no-face: Skip face detection and resize the whole image if no face is detected.
  • -S/--skip-face: Skip face detection and resize the whole image.
  • -a/--all: Process all images in the specified directory. If no directory is provided, it processes images in the current directory.
  • -v/--version: Show installed version.
  • -h/--help: Show help.

Example:

facecropthumb input_image.jpg -d output_directory -m 30 -F

This command will generate a thumbnail of the detected face in input_image.jpg, with a margin of 30 pixels, and if no face is detected, it will resize the whole image to a square of 74 x Y pixels (~approx).

Development Documentation

DISCLAIMER: This documentation is for the contributers of FaceCropThumb, not for general package users.

Firstly install dev dependencies from requirements.txt file

Usage

To run and test the package, use python -m facecrop-thumb <args>

Build Docs

You can see the production build docs in docs/build/index.html

Update the documentation at any cost after any change in feature

Run this to watch the docs/ folder while you're making documentation changes

watchmedo shell-command --patterns="*.rst;conf.py;_templates/*" --recursive --command='sphinx-build -b html docs docs/_build' docs

Release

After a successful change in the package, it's time to publish it officially.

  • Update the version in facecrop_thumb/version.py

  • Create a new release on release page. (This will automatically trigger GitHub actions to release a new version on PYPI)

That's it, the newer version will be available to everyone.

But if you want to publish a version by yourself, you can use following command:

  • python setup.py sdist

  • twine upload dist/*

License

This project is licensed under the MIT License - see the LICENSE file for details.

Release files for facecrop-thumb 1.0.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for facecrop-thumb 1.0.6
File Size Uploaded
facecrop-thumb-1.0.6.tar.gz 5.6 kB Details

Release files / facecrop-thumb-1.0.6.tar.gz

Download URL facecrop-thumb-1.0.6.tar.gz
Size 5.6 kB
Tags Source
SHA-256 checksum
How to use checksums
92b90ece45838a37329b453661e903650538070a1b196682e45ab2f830b68ee3
BLAKE2b-256 checksum
How to use checksums
175b3129ad4f149741920fe8a8b8e2995fcb103ad5160ace3b84fb29f4b5d1c2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.12.1

Release history Release notifications | RSS feed

This release

1.0.6 This release

1 release file

1.0.5

2 release files

1.0.4

1 release file

1.0.3

1 release file

1.0.2

1 release file

1.0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page