我正在尝试使用4x5
过滤器对3x3
的图像进行卷积,我需要一个相同大小的结果图像,即4x5
。
如何填充边框行和列以进行边框扩展?
int kernel[3][3] = {{1,2,1},{2,4,2},{1,2,1}};
for( int i=0;i<imgWidth;i++)
for(int j=0;j<imgHeight;j++){
float sum = 0;
for(int r = -1;r<2;r++)
for(int t = -1;t<2;t++)
{
float intensity;
if(r+i<0 || r+i>imgWidth || j+t < 0||j+t>imgHeight )//boundry check
intensity = 0;
else
intensity = loadedImage->GetRed(i+r,j+t);
sum += intensity *((float)1/16);
}