我的Xcode项目中有一个UIImageView。我试图找到一种方法,我可以检测图像中的某些颜色(例如一些红色阴影)。我似乎无法找到任何方法来做到这一点。有谁知道如何实现这一目标?
我已经看到了不同的方法如何找到平均颜色"在照片里。我想知道是否有办法专门"检测"可能在图像中的某种颜色。
例如,在这张图片中,有一种方法可以检测到照片中有红色。 Blue and Red Rectangles
由于
答案 0 :(得分:0)
试试这个
扩展名UIImage { func getPixelColor(pos:CGPoint) - > UIColor {
let pixelData = CGDataProviderCopyData(CGImageGetDataProvider(self.CGImage))
let data: UnsafePointer<UInt8> = CFDataGetBytePtr(pixelData)
let pixelInfo: Int = ((Int(self.size.width) * Int(pos.y)) + Int(pos.x)) * 4
let r = CGFloat(data[pixelInfo]) / CGFloat(255.0)
let g = CGFloat(data[pixelInfo+1]) / CGFloat(255.0)
let b = CGFloat(data[pixelInfo+2]) / CGFloat(255.0)
let a = CGFloat(data[pixelInfo+3]) / CGFloat(255.0)
return UIColor(red: r, green: g, blue: b, alpha: a)
}
}