Image Edge Preserving Smoothing
If you can use the Bilateral Filter then you can use the Guided Filter.
The nice property of the Guided Filter is its low complexity.
There is a simple and efficient implementation with with linear complexity of the number of pixels.
You may also have a look at:

Fast Anisotropic Curvature Preserving Smoothing.
Simple Image Edge Preserving Filter.