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
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 cv_toolkit_takaw-0.1.0.tar.gz.
File metadata
- Download URL: cv_toolkit_takaw-0.1.0.tar.gz
- Upload date:
- Size: 15.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
42bec1590e4b639ec8fc2d295fdbb5dfbdbeff7223ceb8474fcb7c39ea812a35
|
|
| MD5 |
3404cbba2b1729c6369186ebda6979c6
|
|
| BLAKE2b-256 |
5f2d9e669dab1c764197cd01fd4ae84fa9df35f5ce15821b66643c319d6767b8
|
File details
Details for the file cv_toolkit_takaw-0.1.0-py3-none-any.whl.
File metadata
- Download URL: cv_toolkit_takaw-0.1.0-py3-none-any.whl
- Upload date:
- Size: 19.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d26af8ea0f3435848351696e7a528efd076f8f6d61cea47b20a1b7d4e31d3161
|
|
| MD5 |
99bef497d172d1f69339430aa16c1bf0
|
|
| BLAKE2b-256 |
208086e3303b9881c2fb9b7c356b2fc146e6daccddec7da7c912b25f033d810b
|