2016-09-19 9 views
2

パフォーマンスの問題により、最初に小さい画像をフィルタリングし、その後に高解像度の画像をフィルタリングする必要があります。複数のサイズの同じ画像で同じCIFilter効果を達成する方法

enter image description here

私はCICrystallizeフィルタを使用していると私は、異なる画像解像度のために同じ結果を達成することはできません。私はこのような画像のサイズに応じて入力半径の値を変更しようとしています:

let radiusValue = image.size.width/15.0 
filter.setValue(radiusValue, forKey: kCIInputRadiusKey) 

結果は画像のように有効ではありません。

+0

同じ画像の同じ行に2回同じ結果が表示されますか? – Fogmeister

+0

はい、同じ画像上に同じ結果が2回連続して表示されます – NFilip

+0

このエフェクトに最大半径値があるのでしょうか? – Fogmeister

答えて

0

私はあなたがその小さなことを正確に意味するかどうかわかりません。 (サイズ変更/切り取り)

この方法はどうですか?画像と小さな画像が同じ面であれば、良い結果を得ることができます。

let ratio = smallImage.size.width/originalSizeImage.size.width 
let radius = 30 

filter.setValue(radius * ratio, forKey: kCIInputRadiusKey) 
関連する問題