1

我目前在为我的论文阅读的这篇论文有一个问题。在这篇论文中,作者指出他在一个有像素的块的每一侧使用一维滤波器来获取 4 个点。

论文名为:“ Simplified inter-component Depth modeling in 3D hevc

可从 IEEE 或从:

http://vclab.gist.ac.kr/papers/03/2013/S35_paper%2081.pdf

此过滤器计算相邻像素的绝对差异

我们计算 CTLB 每一侧的邻居的绝对差异。如果像素坐标如 中所示Figure 4Eq. (1)则用于顶部和底部,而Eq. (2)用于左侧和右侧。C_hor, r,c表示考虑水平邻居的顶部和底部的水平相邻像素的绝对差。

类似地,对于左侧和右侧,C_ver, r,c表示垂直相邻像素的绝对差。

图 4:

A(0,0)  A(0,1)  A(0,2)  A(0,3)  ...
A(1,0)  A(1,1)  A(1,2)  A(1,3)  ...
A(2,0)  A(2,1)  A(2,2)  A(2,3)  ...
A(3,0)  A(3,1)  A(3,2)  A(3,3)  ...
...     ...     ...     ...     ...

等式1:

C_hor(r,c) = |A(r,c+1) - A(r,c-1)|

等式2:

C_ver(r,c) = |A(r+1,c) - A(r-1,c)|

我的问题是,有没有人知道他是如何通过使用上面的方程式获得 4 分的?此外,他会为边缘做什么,因为他不需要以前的像素?我目前正在尝试在 C++ 中实现这一点,尽管一个简单的 matlab 代码也会有所帮助,这样我才能理解它。

谢谢。

4

1 回答 1

0

图 4 不仅包含 4 个点。有“...”椭圆表明他的意思是代表 A 中的所有点。

在 MATLAB 中有很多方法可以进行计算。一种方法是通过卷积,

 k=[1 0 -1;] 

 C_hor=abs(conv2(A,k,'same'));
 C_ver=abs(conv2(A,k.','same'));  

在这里,我使用了“相同”标志,假设我们要在 A 之外外推,边缘处为零。

于 2014-02-04T09:50:22.787 回答