「ガウスぼかしフィルタ」を0.3.0にver upしました。
AviUtl プラグイン フィルタ by うえぽん
部分的にぼかすのはAviUtlのお部屋の「拡張編集Plugin」のみできるため、「ガウスぼかしフィルタ」の役目はほとんどなくなりかけてましたが、差別化ということでシームレスな感じにぼかせるようにしてみました。
今までのタイプだとこのように境目がありました。
[シームレスな感じにぼかす]をチェックするとこのように境目が目立たなくなります。
これ以外にも頑張って速度アップとかしています。
ちなみに。逆数の近似値(_mm_rcp_*で得られる値)をニュートン法で高精度化して除算命令の代わりに使うなんてこともしています。除算は遅いので速度アップの可能性がありますが、しかし、そもそも除算をあまり使わないので効果はあまりありませんでした。
高精度化の方法ですが、A の逆数近似値を X とすると
X = 2*X - A*X*X
という計算でできます。
_mm_rcp_*で得られる近似値の精度が11bit、高精度化で2倍の22bit精度になります。単精度浮動小数点の精度が23bitなので、だいたい同じ結果になります。
AviUtl プラグイン フィルタ by うえぽん
部分的にぼかすのはAviUtlのお部屋の「拡張編集Plugin」のみできるため、「ガウスぼかしフィルタ」の役目はほとんどなくなりかけてましたが、差別化ということでシームレスな感じにぼかせるようにしてみました。
今までのタイプだとこのように境目がありました。
[シームレスな感じにぼかす]をチェックするとこのように境目が目立たなくなります。
これ以外にも頑張って速度アップとかしています。
ちなみに。逆数の近似値(_mm_rcp_*で得られる値)をニュートン法で高精度化して除算命令の代わりに使うなんてこともしています。除算は遅いので速度アップの可能性がありますが、しかし、そもそも除算をあまり使わないので効果はあまりありませんでした。
高精度化の方法ですが、A の逆数近似値を X とすると
X = 2*X - A*X*X
という計算でできます。
_mm_rcp_*で得られる近似値の精度が11bit、高精度化で2倍の22bit精度になります。単精度浮動小数点の精度が23bitなので、だいたい同じ結果になります。
コメント