2012-08-13 22 views
3

我目前使用的布拉德·拉爾森的優秀GPUImage框架來創建一個基於iPhone的應用程序,我要處理的攝像機輸入的中心的圓形區域,使部分是模糊和周邊地區是焦點。GPUImageGaussianSelectiveBlurFilter - 但相反

我能實現使用GPUImageGaussianSelectiveBlurFilter相反(即使在聚焦屏幕的中心區域和周邊區域模糊)。

有誰知道通過創建基於這則正好相反的GPUImageGaussianSelectiveBlurFilter一個新的過濾器這樣的快捷方式? ,

回答

2

類似這樣的問題可能是該項目的GitHub的問題頁面上更合適的給他們的框架如何具體,但我可以很快回答這個問題。

創建使用代碼從GPUImageGaussianSelectiveBlurFilter一個新的過濾器和替換在片段着色器下面的行:與

gl_FragColor = mix(blurredImageColor, sharpImageColor, smoothstep(excludeCircleRadius - excludeBlurSize, excludeCircleRadius, distanceFromCenter)); 

這將反轉哪個圖像(模糊或敏銳)

gl_FragColor = mix(sharpImageColor, blurredImageColor, smoothstep(excludeCircleRadius - excludeBlurSize, excludeCircleRadius, distanceFromCenter)); 

被採樣來自焦點圈內外的點。你現在將圈內的區域弄得模糊,外面的區域變得銳利。

+0

感謝您的幫助布拉德的作品。 – 2012-08-14 08:27:41