Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Не удалять, используется OKUDOpenCV

License

Notifications You must be signed in to change notification settings

demka-archive/cv_algorithms

Repository files navigation

cv_algorithms

https://circleci.com/gh/ulikoehler/cv_algorithms/tree/master.svg?style=svg

A Python package (Python3 ready!) that contains implementations of various OpenCV algorithms are are not available in OpenCV or OpenCV-contrib. This package is intended to be used with OpenCV 3.

Some performance-critical algorithms are written in optimized C code. The C code is accessed using cffi.

Currently implemented:

  • Morphological algorithms
    • Guo-Hall thinning (C-optimized)
    • Zhang-Suen thinning (C-optimized)
    • Difference-of-Gaussian transform
  • Algorithms on contours
    • Masking extraction of convex polygon area from image without rotation
    • Scale around reference point or center
    • Fast computation of center by coordinate averaging
    • Center-invariant rescaling of upright bounding rectangle by x/y factors
    • Filter by min/max area
    • Sort by area
    • Create binary contour mask
    • Grassfire transform
  • Colorspace metrics & utilities:
    • Convert image to any colorspace supported by OpenCV
    • Extract any channel from any colorspace directly
    • Euclidean RGB distance
  • Other structural algorithms
    • Which neighboring pixels are set in a binary image?
  • Algorithms on text rendering
    • Center text at coordinates
    • Auto-scale text to fix into box
  • Other algorithms
    • Remove n percent of image borders
    • Popcount (number of one bits) for 8, 16, 32 and 64 bit numpy arrays

As cv2 represents images as numpy arrays, most algorithms generically work with numpy arrays.

Installation

# Python2
$ sudo pip install git+https://github.com/ulikoehler/cv_algorithms.git
# or (Python3)
$ sudo pip3 install git+https://github.com/ulikoehler/cv_algorithms.git

Usage

Difference of Gaussian transform documentation & example

Grassfire transform documentation & example

Thinning documentation & example

Here's a simple usage showcase:

import cv_algorithms
# img must be a binary, single-channel (grayscale) image.
thinned = cv_algorithms.guo_hall(img)

Contributions

Contributions of any shape or form are welcome. Please submit a pull request or file an issue on GitHub.

Copyright (c) 2016 Uli Köhler <ukoehler@techoverflow.net>

About

Не удалять, используется OKUDOpenCV

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 82.9%
  • C++ 17.1%

AltStyle によって変換されたページ (->オリジナル) /