Here are the programs that I wrote during the Digital Image Processing class in 2008, as well as some new experiments.
- Grayscale to black-and-white
- Thresholding
- Bit-plane slicing
- Random dithering
- Ordered dithering
- Error-diffusion dithering
- Image-based dithering
- Image scaling
- Alpha compositing
- Intensity transformations
- Convolution
- Median filter
- Segmentation
Input | Output (threshold = 100) |
---|---|
Output (bit 6) | Output (bit 5) |
---|---|
Output (bit 4) | Output (bit 3) |
---|---|
Input | Output (threshold = 100, noise = 40) |
---|---|
Input | Output (4x4 Bayer matrix) |
---|---|
Input | Output |
---|---|
Input | Output |
---|---|
Input | Output |
---|---|
Input | Output |
---|---|
Input | Output (block size = 8, alpha = 0.6) |
---|---|
Input | Output (block size = 5, alpha = 0.7, threshold1 = 110, threshold2 = 140) |
---|---|
Input | Output (N = 5, cropped) |
---|---|
Input | Output (N = 5, cropped) |
---|---|
Input | Output |
---|---|
|
Input | Output (c = 1.0, gamma = 0.6) |
---|---|
Input | Output (c = 1.5, gamma = 1.5) |
---|---|
Input | Output (delta = 1000) |
---|---|
Input | Output |
---|---|
Input | Output (block size = 100) |
---|---|
Input | Output (block size = 64, clip limit = 2.2) |
---|---|
Input | Output (11x11 blur kernel) |
---|---|
Input | Output (Sharp kernel) |
---|---|
Input | Output (Vertical Sobel kernel) |
---|---|
Input | Output (3x3 plus aperture) |
---|---|
Input | Output (threshold = 128) |
---|---|
12 segments |
Input (cropped) | Output (threshold = 80, cropped) |
---|---|
397 segments |