我正在关注图像(草图和照片)的空间金字塔表示,即将图像划分为多个2L
级别,每个级别l = 0, 1, ..., L-1
都有22l
网格。
这意味着level 0
有1
网格(单个图像),level 1
有4
网格等等。
我考虑过4 levels
这里。我将图像划分为4 levels
ie 64 blocks
。然后在每一层划分的图像有多少个直方图(例如level 1
有4 blocks
等等4 histograms
)然后通过合并这些直方图得到最终的直方图(保持这个例子最终的直方图是通过合并4个直方图等等获得的)。
然后这个草图图像的最终直方图与每个级别的照片图像的最终直方图进行匹配。
我想比较两个图像的直方图,即草图图像直方图(来自用户的输入)和照片图像(彩色图像的数据库,虽然我还没有创建数据库但我需要创建。也请帮助我)使用金字塔匹配内核 (PMK) 距离。这个距离如下: 我想要实现这个距离的源代码。
d(Hp, L, Hs, L) = chi-Square(Hp, 0, Hs, 0) / 2L + l = 1L ∑chi-Square(Hp, l, Hs, l) / 2L - l -1
在哪里:
- L - 级别数 = 4(我正在考虑)
- l - 个人级别,即0、1、2、3(因为我考虑的是4个级别)
- Hs - 草图直方图
- Hp - 照片直方图
目前我正在静态计算这些直方图,但我需要在.mat
matlab 的数据库中存储一张照片图像的四个直方图(四个直方图,因为第一级是第一级,第二级是第二级,第三级是第三级,第四级是第四级),所以我可以运行循环以将输入图像直方图与数据库中图像的直方图进行比较。
我需要你的帮助来实现这个 PMK 距离和创建数据库来存储单个照片图像的 4 个直方图。目前我有 100 张图像,所以我需要将与每张照片图像对应的直方图存储在.mat
文件中,告诉我该怎么做?