opencv学习01_图像处理基础_二值图像
1.二值图像
二值图像是指仅仅包含黑色和白色两种颜色的图像。
在计算机中,通过一个栅格状排列的数据集(矩阵)来表示和处理图像。例如,图 2-1 是
一个字母 A 的图像,计算机在处理该图像时,会首先将其划分为一个个的小方块,每一个小方
块就是一个独立的处理单位,称为像素点。接下来,计算机会将其中的白色像素点(白色小方
块区域)处理为“1”,将黑色像素点(黑色小方块区域)处理为“0”,以方便进行后续的存储
和处理等操作。
按照上述处理方式,图 2-1 中的字母 A 在计算机内的存储形式如图 2-2 所示。
上述图像比较简单,图像内只有黑色和白色两种不同的颜色,因此只使用一个比特位(0
或者 1)就能表示。
图像的二值化是最简单的图像处理技术,它一般都跟具体算法联系在一起,很多算法的输入需要是二值数据。比如你把图像文字转换为PDF文字,PDF上只能是黑白两种颜色。比如你给二维码解码,你需要知道哪块黑哪块白。
去掉图像两个字,二值化在视觉里面应用场景多一些。比如早期的人脸检测很多手势识别的方法,第一步要找到皮肤块,所以需要把图像分为皮肤区域和非皮肤区域,这也算是一种二值化,但通常在方法上用的可能不是基于直方图的了(可能是ID3, 随机森林,SVM,甚至神经网络)。比如Haar特征,以及后来的BRIEF和FAST等,还有LBP实际上都是用到二值的思想。
图像二值化可以看作是聚类,可以看作是分类……这些其实不重要,重要的是它快。它最明显的意义就是简化后期的处理,提高处理的速度。