【发布时间】:2016-03-19 04:51:07
【问题描述】:
我正在处理面部图像,我有不同的图像补丁我已经计算了每个补丁的直方图,现在我想将所有补丁直方图组合成一个直方图,我正在尝试下面给出的以下代码,但我是没有得到正确的直方图,请帮忙。
P1 = imhist(uint8(patch1));
P2 = imhist(uint8(patch2));
p3 = imhist(uint8(patch3));
P4 = imhist(uint8(patch4));
P5 = imhist(uint8(patch5));
P6 = imhist(uint8(patch6));
P7 = imhist(uint8(patch7));
P8 = imhist(uint8(patch8));
masterHist=[P1,P2,P3,P4,P5,P6,P7,P8];
[final, GLd] = imhist(uint8(masterHist));
subplot();
bar(GLd, final);
title('Histogram of Local Binary Pattern Final', 'FontSize', 14);
【问题讨论】:
-
你期望什么输出?
-
每个补丁的直方图的值从 0 到 255,现在我有 8 个直方图,这意味着当我合并为一个时,它必须在一个直方图中显示 256*8 个值,但这里它给了我点 0 处的所有值。
-
只需将所有计数相加:
P1 + P2 ...,或者您希望在一个图中有 8 条单独的线? -
这里不需要求和,我需要将这些直方图拼接成一个
-
真的不清楚你需要什么。你能用 2 个补丁和 3 个 bin 来解释预期的输出是什么吗?说
patch1 = [0, 2;4 2];和patch2 = [2 0; 0 1],这会给你什么?
标签: matlab image-processing lbph-algorithm