如何在MATLAB中从面部图像中提取LBP特征?

时间:2015-07-02 16:58:23

标签: matlab feature-extraction matlab-cvst

我不熟悉本地二进制模式(LBP),任何人都可以帮助我知道如何从面部图像中提取LBP功能(我需要一个简单的代码示例)?

在搜索时,我找到了this code,但我对此并不了解。

2 个答案:

答案 0 :(得分:4)

  1. 首先,你需要将脸部分成一定数量的脸 部分。

  2. 对于每个部分,您必须循环遍历所有部分 该部分中包含的像素并获取其值(灰度或颜色值)。

  3. 对于每个像素,检查与其对齐的像素的值(对角线和左上和右下)并保存它们

  4. 为每个方向检查颜色值是否为。如果颜色大于原始像素值,则可以将该值指定为1,如果颜色较小,则可以将其指定为0.

  5. 您应该从前面的步骤中获得1和0的列表。将这些数字放在一起并且它将是一个大的二进制数,您应该能够将其转换为十进制数,并且您将为该像素分配一个数字。保存每个像素的数字。

  6. 在您为某个部分中的每个像素获得一个十进制数后,您可以平均所有值以获得此部分的平均数。

  7. 这可能不是对其工作原理的最佳描述,因此here是一张可能对您有用的有用图片。

答案 1 :(得分:2)

在MATLAB的计算机视觉系统工具箱的R2015b版本中有一个extractLBPFeatures功能。