gpt4 book ai didi

python - 如何在 python 上绘制 8 位图像的 16,32 和 64 bin 直方图?

转载 作者:行者123 更新时间:2023-12-01 08:13:13 25 4
gpt4 key购买 nike

我有一个灰度图像数组

  Array

像这样的数组示例;

    array([[[142, 142, 142],
[143, 143, 143],
[142, 142, 142],
...,
[147, 147, 147],
[148, 148, 148],
[143, 143, 143]],

[[142, 142, 142],
[142, 142, 142],
[142, 142, 142],
...,
[148, 148, 148],
[150, 150, 150],
[147, 147, 147]],

数组类型是

    Array.dtype
dtype('uint8')

我想绘制该数组的 16、32 和 64-bin 直方图,有人有想法吗?

最佳答案

我注意到您有一个 RGB 图像(3 个 channel )。您可能希望按每个 channel (红色、绿色和蓝色)可视化其直方图。

您可以使用 pandas 轻松实现此目的。例如,给定一个与变量 Array 具有相同数据结构的 RGB 图像数组 img,您可以通过将其转换为 DataFrame< 来绘制每个 channel 的直方图

import pandas as pd

df = pd.DataFrame({
'red': img[...,0].ravel(),
'green': img[...,1].ravel(),
'blue': img[...,2].ravel()
})

然后使用 plot.hist 绘制它

df.plot.hist(bins=n_bins, alpha=.3, xlim=[0,255], color=['red', 'green', 'blue'])

其中n_bins是垃圾箱的数量。

<小时/>

对于n_bins=16

enter image description here

对于n_bins=32

enter image description here

对于n_bins=64

enter image description here

关于python - 如何在 python 上绘制 8 位图像的 16,32 和 64 bin 直方图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55110125/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com