CUDA 高效策略:统计直方图以及共享内存的优化加速

文章目录

  • 概述
  • 核函数
  • 主函数调用
  • 优化(使用共享内存、分块)

概述

直方图是用来统计像素灰度值分布的一种方法,同理也可以统计RGB色素的分布。调整图像的对比度则需要直方图分布概率,才能进行灰度变换。

对于CUDA来说,可以并行读取多个像素点的值,然后进行统计,但是统计过程则是串行的。这里需要使用CUDA串行指令“原子操作”。
否则会好多线程同时重复读写一个内存的内容。

核函数

__global__ void cudaMatHistogram(CudaImg8Mat *cudaMat, unsigned int *histogram){
   
    

你可能感兴趣的:(深度学习入门到精通系列讲解,计算机视觉,opencv,图像处理)