This procedure looks interesting. It is a kind of edge-preserving blurring.
Links:
It has been implemented in Fiji under Plugins>Process>Bilateral Filter currently (the plugin is in the VIB_.jar)