Получить цвет пикселя от GPUImageVideoCamera

Я создал простой зеленый экран с библиотекой GPUImage и следующим кодом:

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)
}
}

Теперь я хочу изменить цвет с зеленого на то, где пользователь нажимает на видео.

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

1 ответ

Ваш вопрос: как получить точку касания в представлении (переопределить touchesEnded и посмотреть на touch.locationInView) или как вы считываете значения пикселей в этой точке или около нее?

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

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

Другие вопросы по тегам