2016-09-19 71 views
2

由於性能問題,我需要過濾第一個小圖像,然後是更高分辨率的圖像。如何在同一圖像的多個尺寸上實現相同的CIFilter效果

enter image description here

我使用CICrystallize過濾器,我不能獲得不同的圖像分辨率相同的結果。我試圖按照圖像大小來改變輸入半徑值:

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

但結果無效,如圖所示。

+0

你甚至在同一張圖片上連續兩次得到相同的結果嗎? – Fogmeister

+0

是的,我在同一圖像上連續兩次得到完全相同的結果 – NFilip

+0

我在想這個效果是否有最大半徑值? – Fogmeister

回答

0

我不知道你到底意味着什麼小。 (Resize?/ Crop?)

這種方式怎麼樣?如果圖像和小圖像是相同的方面,你可以得到一個好的結果。

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

filter.setValue(radius * ratio, forKey: kCIInputRadiusKey) 
相關問題