Skip to main content

Chokkhu

Chokkhu is a deep learning image dataset EDA and preprocessing toolkit designed to prepare train-ready image data for TensorFlow / Keras–based image classification. It helps users analyze datasets, preprocess images, handle class imbalance, and train deep learning models using a clean and reproducible pipeline. The package follows industry-grade Python packaging standards, supports CI/CD pipelines, and works seamlessly in Google Colab and Jupyter Notebook environments.

INSTALLATION (IMPORTANT – FIRST STEP)

pip install chokkhu <<<

TensorFlow is installed automatically as a runtime dependency.

Chokkhu’s main responsibility is data preparation. It performs image exploratory data analysis (EDA), class-wise distribution visualization, image size, aspect ratio, RGB intensity and blur analysis, standard preprocessing (resize to 224×224 and normalization), stratified train/validation/test splitting, and automatic class balancing using data augmentation. After this step, the dataset is fully ready to be used for training any deep learning model.

Complete usage example showing the full workflow in one place:

from Chokkhu.DeepLearningModel.eda.image_eda import ImageEDA
from Chokkhu.DeepLearningModel.preprocessing.image_preprocess import ImagePreProcessor

# Dataset EDA
eda = ImageEDA(dataset_path="your_dataset_path")

# Dataset preprocessing
processor = ImagePreProcessor(datapath="your_dataset_path")
(train_X, train_y), (val_X, val_y), (test_X, test_y) = processor.get_data()




Now you can train your model like this







import tensorflow as tf
# Example 1: Custom CNN (from scratch)
custom_model = tf.keras.Sequential([
    tf.keras.layers.Conv2D(32, 3, activation="relu", input_shape=(224,224,3)),
    tf.keras.layers.MaxPooling2D(),
    tf.keras.layers.Conv2D(64, 3, activation="relu"),
    tf.keras.layers.MaxPooling2D(),
    tf.keras.layers.Flatten(),
    tf.keras.layers.Dense(128, activation="relu"),
    tf.keras.layers.Dense(num_classes, activation="softmax")
])

custom_model.compile(
    optimizer="adam",
    loss="sparse_categorical_crossentropy",
    metrics=["accuracy"]
)

custom_model.fit(
    train_X,
    train_y,
    validation_data=(val_X, val_y),
    epochs=10
)




# Example 2: Transfer Learning with ConvNeXt-Tiny (frozen backbone)
import tensorflow as tf
base_model = tf.keras.applications.ConvNeXtTiny(
    weights="imagenet",
    include_top=False,
    input_shape=(224,224,3)
)

base_model.trainable = False

transfer_model = tf.keras.Sequential([
    base_model,
    tf.keras.layers.GlobalAveragePooling2D(),
    tf.keras.layers.Dense(256, activation="relu"),
    tf.keras.layers.Dense(num_classes, activation="softmax")
])

transfer_model.compile(
    optimizer="adam",
    loss="sparse_categorical_crossentropy",
    metrics=["accuracy"]
)

transfer_model.fit(
    train_X,
    train_y,
    validation_data=(val_X, val_y),
    epochs=5
)




# Example 3: Fine-tuning ConvNeXt-Tiny (unfrozen backbone)
import tensorflow as tf
base_model.trainable = True

transfer_model.compile(
    optimizer=tf.keras.optimizers.Adam(1e-5),
    loss="sparse_categorical_crossentropy",
    metrics=["accuracy"]
)

transfer_model.fit(
    train_X,
    train_y,
    validation_data=(val_X, val_y),
    epochs=5
)

Metadata

Release files for chokkhu 0.1.0

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

Source distribution (sdist)

Source distribution for chokkhu 0.1.0
File Size Uploaded
chokkhu-0.1.0.tar.gz 12.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for chokkhu 0.1.0
File Interpreter ABI Platform
chokkhu-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 23.7 kB

Release files / chokkhu-0.1.0.tar.gz

Download URL chokkhu-0.1.0.tar.gz
Size 12.0 kB
Tags Source
SHA-256 checksum
How to use checksums
378874fd6118f95157c217b364b33ec6b2df9f8e32abea565a6aa214da42dfdc
BLAKE2b-256 checksum
How to use checksums
a4db71cbf386428f0be92829a7c7bb0a41791d5e06680295767e002e04faa53e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release files / chokkhu-0.1.0-py3-none-any.whl

Download URL chokkhu-0.1.0-py3-none-any.whl
Size 11.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
aee10d0f7ca56ac696e2c0740d4addca726f8387cb45ce2ebd9feb08082d5694
BLAKE2b-256 checksum
How to use checksums
3b07484b37fc664d8f988003c0adc0778a755c889aee9fad4559af8b3d7737c0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release history Release notifications | RSS feed

1.6.0

2 release files

1.5.21

2 release files

1.5.20

2 release files

1.5.19

2 release files

1.5.18

2 release files

1.5.17

2 release files

1.5.16

2 release files

1.5.15

2 release files

1.5.14

2 release files

1.5.13

2 release files

1.5.12

2 release files

1.5.11

2 release files

1.5.10

2 release files

1.5.9

2 release files

1.5.8

2 release files

1.5.7

2 release files

1.5.6

2 release files

1.5.5

2 release files

1.5.4

2 release files

1.5.3

2 release files

1.5.2

2 release files

1.5.1

2 release files

1.5.0

2 release files

1.4.0

2 release files

1.3.0

2 release files

1.2.0

2 release files

1.1.0

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.9.2

2 release files

0.9.1

2 release files

0.9.0

2 release files

0.8.0

2 release files

0.7.3

2 release files

0.7.2

2 release files

0.7.1

2 release files

0.7.0

2 release files

0.6.7

2 release files

0.5.2

2 release files

0.3.42

2 release files

0.3.41

2 release files

0.3.40

2 release files

0.3.39

2 release files

0.3.38

2 release files

0.3.37

2 release files

0.3.36

2 release files

0.3.35

2 release files

0.3.34

2 release files

0.3.33

2 release files

0.3.32

2 release files

0.3.31

2 release files

0.3.30

2 release files

0.3.29

2 release files

0.3.28

2 release files

0.3.27

2 release files

0.3.26

2 release files

0.3.9

2 release files

0.3.8

2 release files

0.3.7

2 release files

0.3.6

2 release files

0.3.5

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

This release

0.1.0 This release

2 release files

0.0.8

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

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