灰度直方图统计

直方图是图像的灰度分布统计的一种表示方法,统计目标图像中各个灰度点的像素个数,很多对于图像的调整算法都是基于此进行的;

如何基于FPGA进行统计呢?

1)由于是统计图像的直方图,所以一定是统计结果会在图像经过之后才能产生,因此需要进行缓存;

    缓存一:统计后的结果;

    缓存二:经过统计处理器的图像数据,以便后面和直方图做同步处理。

2)图像常常用8位、24位、32位来表示一个像素的灰度值,

    因此,统计种类分别为2^8=256/2^24=16777216/2^32=4294967296,地址位宽根据此进行选择设定;

    根据不同的精度选择不同的缓存方式:片内或片外缓存;

3)处理流程:

    首先根据当前来的灰度值做为读RAM地址,读出RAM中对应灰度值的的统计值;

    第二将读出结果加一并回写回RAM的当前地址中;

    第三重复操作至当前图像处理结束;

    第四下一幅图像到来之前顺序按灰度值从0到最大的顺序将最终结果读出;

    第五读出最终结果后,将RAM清空。

4)处理细节

    定义参数 图像高度IH 图像宽度IW 像素逐行输入

    因此以行同步脉冲的上升沿作为统计开始,行同步脉冲作为行统计计数器

    行统计计数器达到最大高度时,作为统计结束标志。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容