分析图像的直方图

时间:2015-05-18 08:27:01

标签: image-processing histogram gpuimage

我有一个围绕Brad Larson构建的照片编辑应用程序很棒 GPUImage框架。 我需要一种方法来分析图像的直方图,以便我可以返回它的范围。 意味着"活动"的实际范围。 我需要这个来改进我在应用程序中控制RGB复合曲线的工具。

有没有办法从GPUImage中的直方图滤镜中分析或检索硬数?还有其他办法吗?

1 个答案:

答案 0 :(得分:0)

正如我在the Readme.md中为GPUImageHistogramFilter记录的那样:

  

此滤镜的输出为3像素高,256像素宽的图像   中心(垂直)像素包含对应于的像素   发生各种颜色值的频率。每个颜色值   占据256个宽度位置中的一个,从左边的0到255   正确的。可以为单个颜色生成该直方图   通道(kGPUImageHistogramRed,kGPUImageHistogramGreen,   kGPUImageHistogramBlue),图像的亮度   (kGPUImageHistogramLuminance),或同时为所有三个颜色通道   (kGPUImageHistogramRGB)。

要获取直方图的数值,请将GPUImageHistogramFilter输出到GPUImageRawDataOutput并从中获取字节。结果将是具有0-255个值的256×3(宽度,高度)阵列,表示每个颜色分量的强度。您可以忽略第一行和最后一行,因为这些值仅出现在中心行中。

从那里,您可以分析通过此操作获得的直方图。