HIP Haskell库中的logFilter
是在correlate
函数的帮助下获得的.当我将此滤镜应用于此图像时:
然后我得到了这张图片:
我试着用imager包在R中重现它,但没有办法得到这个结果:我try 了几种方法,但都得到了灰色图像.我try 了内置的方法,也try 了手动,大致如下:
for(r in 1:512) {
for(c in 1:512){
red[r, c] <- gre[r, c] <- blu[r, c] <- 0
for(u in 1:9){
for(v in 1:9) {
red[r, c] <- red[r, c] + kernel[u, v] * RED[r+u, c+v]
gre[r, c] <- gre[r, c] + kernel[u, v] * GRE[r+u, c+v]
blu[r, c] <- blu[r, c] + kernel[u, v] * BLU[r+u, c+v]
}
}
}
}
一直到边界的问题.
我不完全理解correlate
的代码,特别是我不理解toManifest
函数的作用.toManifest
是做什么的?correlate
是使用双循环的前一种算法的实现,还是其他什么?