测试案例
来看一下如何增强图像对比度的示例,按照以下公式重新计算图像各个像素:
第一种是利用公式做计算,而第二种是第一种使用mask来计算的简化版本。...利用普通的C操作符[]存取像素,由于需要在同一时间需要访问多个行,所以必须获取多个行的指针(前一行,当前行和下一行),同时还需要用另一个指针指向存储计算值的地方。...在图像的边界上,会有不存在的像素位置(如(-1)—(-1)),在这种情况下,公式未作出明确的定义,最为简单的解决方案是不对这些点使用内核,边界的像素值设置为0:
filter2D函数
在图像处理过程中...首先需要定义一个保存掩膜矩阵的对象:
然后调用filter2D()函数,指定输入图像、输出图像和所使用的内核:
该函数第五个参数为可选的参数,用来指定内核的中心;第六个参数用于在存储滤波像素之前,为其添加一个可选值...例如,在本项测试中,hand-coded方法花了约31毫秒时间,而第一种方法只用了13毫秒的时间,二者之间颇有些差异。
例如:
可以在YouTube上观看示例程序的运行视频。