如何创建直方图

时间:2011-02-05 08:31:55

标签: c# image histogram emgucv

我想在使用EMGU的C#程序中创建直方图。 EMGU中包含一个名为MCvHistogram的类,但我不知道如何使用它。

2 个答案:

答案 0 :(得分:11)

如果要使用EmguCV,则应使用DenseHistogram类。 我将向您展示基本用法:

  // 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);

在DenseHistogram类中有很多其他常用方法,例如Back Projection

答案 1 :(得分:3)

您可以使用此代码段:

histogramBox.GenerateHistograms(image,bin);               
histogramBox2.Refresh();

它会自动创建图片的直方图。