Added non-local means filter