2016-01-19 2 views
2

Я создал простой зеленый экран с библиотекой GPUImage и следующий код:Получить цвет пикселя из GPUImageVideoCamera

import UIKit 
import GPUImage 


class CaptureViewController: UIViewController { 

    var videoCamera:GPUImageVideoCamera? 
    var filter:GPUImageChromaKeyFilter? 

@IBOutlet weak var cameraView: GPUImageView! 

override func viewDidLoad() { 
    super.viewDidLoad() 
    cameraView.backgroundColor = UIColor.clearColor() 
    videoCamera = GPUImageVideoCamera(sessionPreset: AVCaptureSessionPreset640x480, cameraPosition: .Back) 
    videoCamera!.outputImageOrientation = .Portrait; 
    filter = GPUImageChromaKeyFilter() 
    filter?.setColorToReplaceRed(0.0, green: 1.0, blue: 0.0) 
    filter?.thresholdSensitivity = 0.4 
    videoCamera?.addTarget(filter) 
    filter?.addTarget(cameraView) 
    videoCamera?.startCameraCapture() 
} 

override func viewDidAppear(animated: Bool) { 
    super.viewDidAppear(animated) 
} 
} 

Теперь я хочу, чтобы изменить цвет от зеленого, где когда-либо пользователь нажимает на видео ,

Q: Как получить данные о пикселях из найденного местоположения?

+0

ли вы показать нам в заявке ruuning настроения, сколько части вы хотите зеленый цвет, что ваш кран на экране? и вы поместили жест видео в камеру видео? –

+0

У меня больше нет этого кода, но я не нашел решение –

+0

@HimanshuMoradiya Скажите, блок из 9 пикселей. – andy

ответ

2

На ваш вопрос, как вы получаете точку касания в представлении (переопределите atthesEnded и посмотрите на touch.locationInView) или как вы читаете значения пикселей в этой точке или вокруг нее?

Ответ на последний вопрос заключается в том, что проект GPUImage имеет пример RawDataTest, который показывает вам, как читать значения RGBA для произвольных пикселей в представлении от графического процессора.

https://github.com/BradLarson/GPUImage/tree/master/examples/iOS/RawDataTest/RawDataTest

Смежные вопросы