Guest User

Untitled

a guest
Mar 19th, 2018
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.22 KB | None | 0 0
  1. import UIKit
  2. import Accelerate
  3.  
  4. class ViewController: UIViewController {
  5.  
  6. override func viewDidLoad() {
  7. super.viewDidLoad()
  8. // Do any additional setup after loading the view, typically from a nib.
  9.  
  10. let imageForConversion = #imageLiteral(resourceName: "InputImage")
  11. let img: CGImage = imageForConversion.cgImage!
  12. let imgProvider: CGDataProvider = img.dataProvider!
  13. let imgBitmapData: CFData = imgProvider.data!
  14. var imgBuffer = vImage_Buffer(data: UnsafeMutableRawPointer(mutating: CFDataGetBytePtr(imgBitmapData)), height: vImagePixelCount(img.height), width: vImagePixelCount(img.width), rowBytes: img.bytesPerRow)
  15.  
  16. for i in 0...img.height {
  17. for j in 0...img.width {
  18. let test = imgBuffer.data.load(fromByteOffset: (i * img.width + j) * 4, as: UInt32.self)
  19.  
  20. let r = Float((test >> 16) & 255) / 256
  21. let g = Float((test >> 8) & 255) / 256
  22. let b = Float(test & 255) / 256
  23. let intensity = 0.114 * r + 0.587 * g + 0.299 * b
  24.  
  25. print(intensity > 0.5 ? "1" : "0", terminator: "")
  26. }
  27. print("")
  28. }
  29. }
  30.  
  31. }
Add Comment
Please, Sign In to add comment