gpt4 book ai didi

ios - 如何检测颜色并在 iOS 中打印其名称?

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:35:14 27 4
gpt4 key购买 nike

如何检测图像/摄像头上的主色并打印其名称?

例如:在图像中可能有非常浅的蓝色、浅蓝色、蓝色、深蓝色,只是因为当我分析该图像时该对象或图像上有闪电,我想使我知道主色是蓝色,然后打印屏幕上的“蓝色”。如果我需要使用 RGB,我想我需要颜色范围吧?

ps:图像上也可能有红色、黄色等,但我想检测主色。

最佳答案

- (UIColor *)averageColor {

CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
unsigned char rgba[4];
CGContextRef context = CGBitmapContextCreate(rgba, 1, 1, 8, 4, colorSpace, kCGImageAlphaPremultipliedLast | kCGBitmapByteOrder32Big);

CGContextDrawImage(context, CGRectMake(0, 0, 1, 1), self.CGImage);
CGColorSpaceRelease(colorSpace);
CGContextRelease(context);

if(rgba[3] > 0) {
CGFloat alpha = ((CGFloat)rgba[3])/255.0;
CGFloat multiplier = alpha/255.0;
return [UIColor colorWithRed:((CGFloat)rgba[0])*multiplier
green:((CGFloat)rgba[1])*multiplier
blue:((CGFloat)rgba[2])*multiplier
alpha:alpha];
}
else {
return [UIColor colorWithRed:((CGFloat)rgba[0])/255.0
green:((CGFloat)rgba[1])/255.0
blue:((CGFloat)rgba[2])/255.0
alpha:((CGFloat)rgba[3])/255.0];
}
}

来自 Objective-c - Getting least used and most used color in a image

来自http://www.bobbygeorgescu.com/2011/08/finding-average-color-of-uiimage/

关于ios - 如何检测颜色并在 iOS 中打印其名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22838315/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com