我想使用GPUImage將圖像轉換成灰度。我寫了一個擴展名來完成我的工作。灰度的事情沒關係。但是輸出圖像的尺寸已經增加了一倍。在我的情況下,我需要的圖像是在確切的大小。有人可以幫助我嗎?任何幫助將不勝感激。GPUImage使圖像大小增加一倍 - iOS/Swift
這是我寫的
import UIKit
import GPUImage
extension UIImage {
public func grayscale() -> UIImage?{
var processedImage = self
print("1: "+"\(processedImage.size)")
let image = GPUImagePicture(image: processedImage)
let grayFilter = GPUImageGrayscaleFilter()
image?.addTarget(grayFilter)
grayFilter.useNextFrameForImageCapture()
image?.processImage()
processedImage = grayFilter.imageFromCurrentFramebuffer()
print("2: "+"\(processedImage.size)")
return processedImage
}
}
擴展這是在控制檯
編輯輸出:我知道圖像以後可以調整大小。但需要知道爲什麼會發生這種情況,並且有什麼可以保持圖像大小,因爲它使用GPUImage。
看到你的內存大小也增加 –
@JitendraModi是的,進程使用將近100 Mb的內存 – GMHSJ
檢查原始圖像的「縮放」。任何你使用scale'2'圖像的機會,並且GPUImage在相同像素尺寸下給你一個比例尺爲'1'的圖像? –