https://github.com/lazovelko/image-processing-library
Library for processing and manipulating images.
https://github.com/lazovelko/image-processing-library
edge-detection histogram hue hue-detector image-processing images intensity-adjustment kernel-convolution lockbits motion-blur threshold thresholding unsafe-code
Last synced: about 2 months ago
JSON representation
Library for processing and manipulating images.
- Host: GitHub
- URL: https://github.com/lazovelko/image-processing-library
- Owner: LazoVelko
- License: gpl-3.0
- Created: 2016-10-25T07:11:12.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2017-03-14T20:25:28.000Z (about 8 years ago)
- Last Synced: 2025-03-27T15:21:53.477Z (2 months ago)
- Topics: edge-detection, histogram, hue, hue-detector, image-processing, images, intensity-adjustment, kernel-convolution, lockbits, motion-blur, threshold, thresholding, unsafe-code
- Language: C#
- Size: 4.49 MB
- Stars: 44
- Watchers: 2
- Forks: 18
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Image-Processing-Library
Library for processing and manipulating images. Includes edge detection, color channel swapping, embossing, sharpening, thresholding and more. Some of the filters are applied by using kernel convolution and LockBits while others use GetPixel and multithreading. Also includes a histogram generator and a hue detector.# Samples
The documentation below exhibits what is possible with the library. The following image will be used for the demonstrations:

## Edge Detection
The library supports several different edge detection algorithms with different intensities.
### Low Edge Detection

### High Edge Detection

### Horizontal Edge Detection

### Vertical Edge Detection

## Thresholding
The library supports three different thresholding algorithms. These algorithms use LockBits and multithreading and are processed much faster than the others; almost instantaneously.
### Binary Thresholding

### Trinary Thresholding

### Multi-Level Thresholding

## Blurring
Different intensities of blurring are available, as well as motion blur.
### Regular Blur

### Motion Blur

## Sharpening

## Embossing

## Color Channel Manipulation
The library supports many different algorithms for manipulating the color channels, including swapping, removal and intensity adjustment:
### Channel Swapping
The color channels can be swapped in many different ways. The following image has its green and blue channels swapped:

### Channel Removal
Each color channel can be removed. The following image has its red channel completely dialed down to zero:

### Intensity Adjustment
Each color channel can by dialed up or down to match the intensity of another color channel. The following image has its blue channel dialed up to match the intensity of its red channel, this creates purple where the red had high intensity:

## Brighten

## Darken

## Invert

## Cartoonify

## Histogram Generator
The following is a histogram of the RGB channels of the original image.

## Hue Detector
The following detects the hue under the mouse and displays the details.
