Как узнать, является ли UIImage цветным или монохромным? - PullRequest
0 голосов
/ 30 ноября 2011

Есть ли способ узнать, является ли UIImage / (или изображение в любом другом формате) цветным или монохромным?Мое приложение намеревается прочитать UIImage (изображение, хранящееся в приложении Photo), а затем выполнить другой набор обработки изображения в зависимости от его цветовой шкалы (цветное изображение или шкала серого).

Ответы [ 2 ]

1 голос
/ 30 ноября 2011

То, что вы ищете, это цветовое пространство UIImage.Вы можете найти ответ здесь .

Моно цветовые пространства

CFStringRef kCGColorSpaceGenericGray
CFStringRef kCGColorSpaceGenericGrayGamma2_2
CFStringRef k​CGColor​Space​Extended​Gray

Все остальное - цвет.

0 голосов
/ 30 ноября 2011
if (CGColorSpaceGetModel(CGImageGetColorSpace(myUIImage.CGImage)) == kCGColorSpaceModelMonochrome) {
    // Image is grayscale
} else {
    // Image allows color
}

Обратите внимание, что «цветное» изображение может по-прежнему использовать только оттенки серого!Монохромное изображение можно сохранить в формате с поддержкой цвета.

...