JuliaImages / JuliaImages/ImageFiltering.jl
Optimized Median Filter
Nobody has claimed this yet.
- Dominant language
- Julia
- Stars
- 104
- Forks
- 52
- PR merge metrics
- No merged PRs in 30d
Description
I have an implementation of median filter based on A Fast Two-Dimensional Median Filtering Algorithm. The algorithm scales very well with window size. Though the paper desribes a method specifically for 2-D images and median filter, it can easily be extended to work with N-D images and any percentile filter e.g, minima.
Comparison with mapwindow for 256x256 grayscale N0f8 image -
| window size | time for proposed method (ms) | time for mapwindow (ms) |
|---|---|---|
| (3,3) | 3.81 | 14.27 |
| (5,5) | 4.30 | 36.02 |
| (7,7) | 4.86 | 71.21 |
| (11,11) | 6.07 | 183.70 |
| (21,21) | 9.07 | 736.39 |
However, the algorithm only works for image types with discrete pixel values. It also doesn't scale well with increased precision of pixel values as the histogram size increases exponentially.
Comparison with mapwindow for 256x256 grayscale N0f16 image -
| window size | time for proposed method (ms) | time for mapwindow (ms) |
|---|---|---|
| (3,3) | 97.60 | 14.20 |
| (5,5) | 75.05 | 36.25 |
| (7,7) | 67.52 | 71.70 |
| (11,11) | 59.60 | 188.72 |
| (21,21) | 52.41 | 743.58 |
Can we use this median filter in Images.jl specifically for N0f8 images? I would be happy to submit a pull request. My code is available here.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the linked implementation and the paper, then compare its behavior with mapwindow for N0f8 images. Check how median and percentile filters are exposed in ImageFiltering.jl and determine the integration point. Done means a supported N0f8 median filter with results matching the proposed performance advantage.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- julia
- Domain
- computer-vision, performance
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100