Skip to main content

A modular computer vision toolkit with augmentation and more.

Project description

hieuvision

A modular computer vision toolkit with built-in data augmentation and extensible tools.


๐Ÿ“ฆ Installation

To install the latest version from PyPI:

pip install hieuvision

This will also install all necessary dependencies:

  • opencv-python
  • albumentations
  • tqdm

๐Ÿš€ Usage

๐Ÿงฐ Supported Tools

Currently available tool:

  • augment: Perform brightness and contrast augmentation on image datasets with YOLO-style .txt labels.

More tools will be added in future updates.


โœจ Example: Image Augmentation

Assume your dataset is structured like this:

dataset/
โ”œโ”€โ”€ image1.jpg
โ”œโ”€โ”€ image1.txt
โ”œโ”€โ”€ image2.jpg
โ”œโ”€โ”€ image2.txt
...

You can apply augmentation using:

from hieuvision import HieuVision
from hieuvision.tools.augmenter import ImageAugmenter

augmenter = ImageAugmenter(
    input_dir="dataset",
    output_dir="dataset_augmented"
)

hv = HieuVision()
hv.add_tool("augment", augmenter)
hv.run_tool("augment")

What this does:

  • Applies random brightness and contrast adjustments to each image.
  • Saves the augmented image in the output directory.
  • Copies corresponding YOLO .txt label files.
  • Logs a warning if any label or image is missing.

๐Ÿ”ง Developer Guide

Extend with custom tools

You can register your own tools in HieuVision:

class MyCustomTool:
    def run(self):
        print("Running my custom tool")

tool = MyCustomTool()
hv = HieuVision()
hv.add_tool("custom", tool)
hv.run_tool("custom")

Each tool must implement a .run() method.


๐Ÿ›  Requirements

These are installed automatically via pip install hieuvision:

  • opencv-python
  • albumentations
  • tqdm

๐Ÿ“ Project Structure (for developers)

hieuvision/
โ”œโ”€โ”€ hieuvision/
โ”‚   โ”œโ”€โ”€ __init__.py
โ”‚   โ”œโ”€โ”€ core.py
โ”‚   โ””โ”€โ”€ tools/
โ”‚       โ”œโ”€โ”€ __init__.py
โ”‚       โ””โ”€โ”€ augmenter.py
โ”œโ”€โ”€ README.md
โ”œโ”€โ”€ pyproject.toml
โ”œโ”€โ”€ LICENSE
โ””โ”€โ”€ .github/
    โ””โ”€โ”€ workflows/
        โ””โ”€โ”€ publish.yml

๐Ÿ“ค Publishing to PyPI

This project supports GitHub Actions for automatic publishing. Just push a Git tag like v0.1.0, and the package will be published to https://pypi.org/project/hieuvision.

Make sure to:

  • Create a PyPI token and add it to your repo secrets as PYPI_API_TOKEN
  • Push your tag:
git tag v0.1.0
git push origin v0.1.0

๐Ÿ“ License

MIT License ยฉ 2025 Your Name

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hieuvision-0.1.1.tar.gz (3.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hieuvision-0.1.1-py3-none-any.whl (4.6 kB view details)

Uploaded Python 3

File details

Details for the file hieuvision-0.1.1.tar.gz.

File metadata

  • Download URL: hieuvision-0.1.1.tar.gz
  • Upload date:
  • Size: 3.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for hieuvision-0.1.1.tar.gz
Algorithm Hash digest
SHA256 56928a62da19a9679e3db4f66f0ddfc3343647c5ad531a483634cb20bef145f2
MD5 04553bb15c265c014d6506a6d8898538
BLAKE2b-256 f07b43b17b4fa8de3513a2a13d062d43d75c56059307b08cd5612dc93b9fc2c7

See more details on using hashes here.

File details

Details for the file hieuvision-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: hieuvision-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 4.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for hieuvision-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5116e6e37df7876a138d739b6067d915668dd8e8cbcfa04d8bfa536f633f41ce
MD5 1aa93fdb8708e366db9aff5471e1c95a
BLAKE2b-256 8071f50173834ee7138dcb40218cc7732e8ebb8f2483fc02a251f8af9ee4f2c5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page