Skip to main content

A comprehensive computer vision toolkit for image processing and feature detection

Project description

CV Toolkit

A comprehensive computer vision toolkit providing functionalities for image processing, geometric transformations, feature detection, and more.

Features

  • Image Processing: Load, resize, convert, and filter images
  • Geometric Transformations: Translation, rotation, scaling, reflection, shearing
  • Homography Computation: Compute and apply homography matrices
  • Perspective Transformation: Perspective warping of images
  • Camera Calibration: Calibrate cameras and undistort images
  • Fundamental Matrix: Compute fundamental matrix from stereo images
  • Edge, Line & Corner Detection: Canny, Hough, Harris, Shi-Tomasi
  • SIFT Features: Scale-Invariant Feature Transform
  • SURF & HOG: Feature descriptors for object detection

Installation

From PyPI (when published)

pip install cv-toolkit

From Source (Local Development)

# Navigate to the directory containing setup.py
cd path/to/CV

# Install in editable mode
pip install -e .

# Or install normally
pip install .

Quick Start

Example 1: Image Processing

from cv_toolkit import image_processing

# Run demo with sample image
image_processing.demo()

# Or use individual functions
img = image_processing.load_sample_image()
img_gray = image_processing.convert_to_grayscale(img)
img_blur = image_processing.apply_gaussian_blur(img, sigma=2)

Example 2: Geometric Transformations

from cv_toolkit import geometric_transforms

# Run demo
geometric_transforms.demo()

# Or use specific transformations
img = geometric_transforms.data.astronaut()
img_rotated = geometric_transforms.rotate_image(img, angle_deg=45)
img_scaled = geometric_transforms.scale_image(img, scale_x=0.5, scale_y=0.5)

Example 3: Feature Detection (SIFT)

from cv_toolkit import sift_descriptor

# Run demo
sift_descriptor.demo()

# Or use the pipeline
keypoints, descriptors, img_kp = sift_descriptor.sift_pipeline(
    img=your_image, 
    save_results=True
)

Example 4: Edge and Corner Detection

from cv_toolkit import edge_line_corner_detection

# Run full detection pipeline
results = edge_line_corner_detection.detection_pipeline(save_results=True)

# Or use individual functions
edges = edge_line_corner_detection.detect_edges(img)
lines_img = edge_line_corner_detection.detect_lines(img)
corners = edge_line_corner_detection.detect_shi_tomasi_corners(img)

Example 5: Fundamental Matrix

from cv_toolkit import fundamental_matrix

# Run demo with sample stereo images
F, matches, epi1, epi2 = fundamental_matrix.fundamental_matrix_pipeline(
    save_results=True
)

Module Overview

Module Description
image_processing Basic image operations (load, resize, filter)
geometric_transforms Geometric transformations (rotate, scale, etc.)
homography Homography matrix computation
perspective_transform Perspective transformations
camera_calibration Camera calibration and undistortion
fundamental_matrix Fundamental matrix from stereo pairs
edge_line_corner_detection Edge, line, and corner detection
sift_descriptor SIFT feature detection
surf_hog_descriptor SURF and HOG descriptors

Requirements

  • Python >= 3.7
  • NumPy >= 1.19.0
  • OpenCV >= 4.5.0
  • scikit-image >= 0.18.0
  • matplotlib >= 3.3.0

Usage Examples

Import All Modules

from cv_toolkit import (
    image_processing,
    geometric_transforms,
    homography,
    perspective_transform,
    camera_calibration,
    fundamental_matrix,
    edge_line_corner_detection,
    sift_descriptor,
    surf_hog_descriptor
)

Run All Demos

import cv_toolkit.image_processing as ip
import cv_toolkit.geometric_transforms as gt
import cv_toolkit.sift_descriptor as sift

ip.demo()
gt.demo()
sift.demo()

Development

Install in Development Mode

pip install -e .[dev]

Run Tests (when implemented)

pytest

License

MIT License - see LICENSE file for details

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Author

Your Name - your.email@example.com

Acknowledgments

  • Built using OpenCV, scikit-image, and NumPy
  • Based on classical computer vision algorithms and techniques

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

cv_toolkit_new-0.1.0.tar.gz (15.9 kB view details)

Uploaded Source

Built Distribution

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

cv_toolkit_new-0.1.0-py3-none-any.whl (20.9 kB view details)

Uploaded Python 3

File details

Details for the file cv_toolkit_new-0.1.0.tar.gz.

File metadata

  • Download URL: cv_toolkit_new-0.1.0.tar.gz
  • Upload date:
  • Size: 15.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for cv_toolkit_new-0.1.0.tar.gz
Algorithm Hash digest
SHA256 a2ca4ed5e5232f28178fd94de33d264f8ef79719dae6e9f3c5e0cf98b5967d11
MD5 1f14b63fb9df4a99cae4e9081ecbe445
BLAKE2b-256 4f1ec02725883e61a78cc4d08e3b6b0af66107cd6abcafaa587898f0e556d8c7

See more details on using hashes here.

File details

Details for the file cv_toolkit_new-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: cv_toolkit_new-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 20.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for cv_toolkit_new-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 599a757c74317e8158a08e3dd6a026a788b0a6d10801398a7922a3900747173b
MD5 0fadc853e03a920f9f35ba1ccff4622a
BLAKE2b-256 c4b64620db59731c0fd191efb15f37b1af4233cb58f2524d8d9f65ba0f8b7039

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