我目前在撰写论文时遇到了问题。在本文中,作者声称他在一个像素的每一侧使用一维滤波器获得4个点。
该论文被称为:" 3D hevc中简化的组件间深度建模 "
可从IEEE或
获得http://vclab.gist.ac.kr/papers/03/2013/S35_paper%2081.pdf。
此滤镜计算相邻像素的绝对差值
我们计算CTLB两侧邻居的绝对差异。如果在
Figure 4
中记录像素坐标,则Eq. (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代码也可以帮助我理解它。
感谢。
答案 0 :(得分:0)
图4不仅包含4个点。有“......”椭圆显示他表示代表A中的所有点。
在MATLAB中有很多方法可以进行计算。一种方法是卷积,
k=[1 0 -1;]
C_hor=abs(conv2(A,k,'same'));
C_ver=abs(conv2(A,k.','same'));
这里我假设我们想在边缘外推一个带有零的外部A来使用'相同'标志。