2

I am designing an WPF application which renders data as a 500x500 8-bit indexed image at 10 frames per second using WriteableBitmap.

We would like to add some real-time image processing algorithms to our output, such as 2-D median filtering, gaussian blur or moving average, which are computationaly power hungry.

  • Did anyone try to use WPF pixel shaders to do such tasks ?
  • Would a platform-specific image processing library be efficient ? (e.g. Intel IPP ?)
  • Or would a DirectX based custom renderer be the solution ?

Any tip would be much welcome. At the moment everything is computed within our .NET application and I believe there is room for optimization.

Thank you for your help,

Best Regards,

Romain

HW2015
  • 81
  • 2
  • 11

1 Answers1

1

If your data is purely for display I would recommend using pixel shaders. The other two options you suggest both require interop with unmanaged code which adds complexity.

Jesper Larsen-Ledet
  • 6,625
  • 3
  • 30
  • 42
  • Your opinion about third option is wrong. Take SlimDX + Hlsl or XNA + Hlsl path and you will be within managed code limit. I would suggest SlimDX approach, because in that we can use ComputeShaders, which lets us to do GPGPU programming with DirectX 11. – Agnius Vasiliauskas Dec 08 '10 at 16:58