Recursive bilateral filtering (developed by Qingxiong Yang) is pretty fast compared with most edge-preserving filtering methods
- computational complexity is linear in both input size and dimensionality:
- takes about 43 ms to process a one megapixel color image (i7 1.8GHz & 4GB mem)
- about 18x faster than Fast high-dimensional filtering using the permutohedral lattice
- about 86x faster than Gaussian kd-trees for fast high-dimensional filtering
Results
Original Image |
OpenCV's BF (896ms) |
RecursiveBF (18ms) |
Gaussian Blur |
Median Blur |
For more details of the algorithm, please refer to the original paper
@inproceedings{yang2012recursive,
title={Recursive bilateral filtering},
author={Yang, Qingxiong},
booktitle={European Conference on Computer Vision},
pages={399--413},
year={2012},
organization={Springer}
}
Optionally, you can cite this repo
@misc{ming2017recursive,
author = {Ming Yang},
title = {A lightweight C++ library for recursive bilateral filtering},
year = {2017},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\url{https://github.com/ufoym/RecursiveBF}}
}