创建光圈/景深效果

时间:2009-11-02 15:36:21

标签: field blur

如何创建一个能够复制不同光圈设置效果的功能。我希望用户能够点击他们图片的不同“焦点”,看看光圈/景深将如何变化,具体取决于焦点的焦点。

此外,我很好奇是否有人知道如何创建一个可以创建低光圈模糊效果的滑块。

3 个答案:

答案 0 :(得分:1)

为什么不走最简单的路线?将相机放在三脚架上,使用不同的光圈和焦距设置拍摄照片。当您的应用用户选择不同的光圈或焦距时,只需换出图片即可显示景深效果。这将为您省去很多麻烦,将是真实的,并且看起来更好。

您可以使用16张照片(4个焦距和4个光圈设置)完成所有操作。有一个用于光圈值的滑块和一个用于焦距的滑块。

如果您尝试让用户选择图片上的一个点,您需要为场景提供3D信息,我认为这只会加剧您应用的复杂性。让事情尽可能简单,因为为学生传达信息并不需要太多。

答案 1 :(得分:0)

您需要一个卷积滤镜。要获得滤波器的系数,您可以查看脉冲响应。如果你拍摄出一个明亮光点的离焦图像,你会得到一个近乎完美的圆圈 - 如果你生成一个圆并平均其中的每个像素,你就可以很好地逼近未聚焦的图像。 / p>

答案 2 :(得分:0)

这听起来像是可以使用可配置的像素着色器做的事情。 WPF和Silverlight以及其他开源图像编辑库都可以。

阅读High Level Shader Language了解更多信息。还有一个可能有帮助的.NET ImageTools库。