改善绘制直方图代码的运行时间

时间:2019-07-03 18:12:57

标签: python numpy opencv matplotlib

有没有办法加快这段代码的速度? 此代码计算图像的直方图并显示它。

我想不使用calcHist来执行此操作。 我知道运行缓慢的是循环,但是我不知道如何改善循环。

const name5 = Math.random() < 0.5 ? "AA" : "BB";
if (name5 === "AA") {
  const x5 = x[name5];
  x[name5] = x5; // okay
} else {
  const x5 = x[name5];
  x[name5] = x5; // okay
}

1 个答案:

答案 0 :(得分:0)

摆脱三重循环和比较,并充分利用颠簸的高效比较运算符。当然,这仅在img为整数的情况下有效。如果浮动,则舍入数据。

    for k in range(len(histogram)):
        histogram[k] = np.sum(img.flat == k)