How to create a histogram

White Dwarf picture White Dwarf · Feb 5, 2011 · Viewed 15.4k times · Source

I want to create a histogram within a C# program that uses EMGU. EMGU contains a class called MCvHistogram in it, but I don't know how to use it.

Answer

Luca Del Tongo picture Luca Del Tongo · Feb 5, 2011

You should use DenseHistogram class if you want to use EmguCV. I'll show you basic usage:

  // Create a grayscale image
  Image<Gray, Byte> img = new Image<Gray, byte>(400, 400);
  // Fill image with random values
  img.SetRandUniform(new MCvScalar(), new MCvScalar(255));
  // Create and initialize histogram
  DenseHistogram hist = new DenseHistogram(256, new RangeF(0.0f, 255.0f));
  // Histogram Computing
  hist.Calculate<Byte>(new Image<Gray, byte>[] { img }, true, null);

There are a lot of other common methods inside DenseHistogram class such as Back Projection