图像处理一之-摄像头二值化处理-(什么是二值化)

图像二值化 binary image

什么是二值化:
 二值化是图像分割的一种最简单的方法。二值化可以把灰度图像转换成二值图像。把大于某个临界灰度值(阈值)的像素灰度设为灰度极大值(255),把小于这个值的像素灰度设为灰度极小值(0),从而实现二值化,

简单来说:设定一个阈值valve,对于视频信号矩阵中的每一行,从左至右比较各像素值和阈值的大小,若图像灰度值大于或等于阈值,则判定该像素对应的255;反之,小于阈值的灰度值则为0。就是将图像上的像素点的灰度值设置为0或255,也就是将整个图像呈现出明显的黑白效果。

二值化的作用:

简单通俗的说:二值化的所用就是将图像分成黑和白,更加有利于做图像处理判别。也就是我们说的黑白图像

 

图像处理一之-摄像头二值化处理-(什么是二值化)_第1张图片

 

在了解了这些之后,我们看下二值化的方法:

根据阈值选取的不同,二值化的算法分为固定阈值自适应阈值(动态阈值)。 比较常用的二值化方法则有:双峰法P参数法迭代法OTSU法

固定阈值自适应阈值:

这个就很简单理解了,固定阈值就是设置一个固定的阈值,进行二值化处理,而现在大部分二值化算法用的都是自适应阈值(动态阈值),很容易理解:固定阈值的二值化呢,,一个阈值往往只对应一类图像,如果图像的光照变暗了,或者其他因素改变了,那个单阈值情况的二值化效果会大大的折扣。自适应二值化其实就是一种根据图片的灰度直方图,得到一个适合本图像的二值化阈值。

硬件二值化和软件二值化:

硬件二值化的摄像头,是二值化的过程由逻辑芯片直接处理,就是内部自带二值化,它输出的就是二值化后的值了,,所得的图像即为黑白。给单片机节约二值化处理时间,从而不需要进行二值化处理。----软件二值化就是摄像头没有自带二值化,需要自己做二值化处理

附最简单二值化代码,其他算法之后讲解

Void image_binaryzation()

{

for(int i=0;i= Threshold)

       Image_new[i][j]=1;

else

    Image_new[i][j]=0;

    }

}

}

其中 Row是对应采集到的行数,Col是列数,Image[i][j]是摄像头采集未二值化的数据存放的数组,Image_new[i][j]是新建的存放二值化后的数组,Threshold是阈值(前面有阈值的讲解)。

 

整理不易,点个赞再走呗!

你可能感兴趣的:(图像处理)