согласно Getting лучшее исполнение Страница,Эффективное понижающей с основным изображением
Использование Core Graphics или функции ввода/вывода, чтобы обрезать или декодируют, такие как функции CGImageCreateWithImageInRect или CGImageSourceCreateThumbnailAtIndex изображения.
Однако мне интересно, насколько это верно, если вы работаете исключительно в Core Image для обработки изображений. Если у меня есть изображение, которое нужно сбрасывать, а затем фильтровать вместе с другими вещами, было бы менее эффективным преобразовать в CGImage, downsample, а затем преобразовать обратно в CIImage для других целей?
Мне интересно, будет ли лучше работать в среде Core Image, если понижающая дискретизация отличается от алгоритма обработки изображений, который вы выполняете. Конечно, если выше это будет быстрее, я бы попробовал, но я не уверен, что есть какой-то другой способ уменьшить что-то как можно быстрее. Нет, к сожалению, CILanczosScaleTransform ужасно медленный, я хочу, чтобы Core Image быстрее использовал встроенные изображения.
Проблема здесь заключается в том, что ваше расширение работает с UIImages, что означает, что если вы находитесь в середине цепочки, вам нужно сделать преобразование. –
Собственно, нет. Мое приложение выполняет следующую последовательность: Загрузите в UIImage ... downsize ... создайте CIImage ... CIFilter (1) ... CIKernel (1) ... CIKernel (2) ... CIFilter (2) ... UIImage – dfd