0
GPUImage를 사용하여 코너 감지를 구현하는 데 이상한 문제가 있습니다.GPUImage2 : HarrisCornerDetector가 콜백을 호출하지 않습니다.
브래드의 다운로드에서 필터 템플릿을 시작 지점으로 사용하려고하지만 이미지와 구석 점 (단일 흰색 픽셀)의 합성보기를 생성 할 수는 있지만 추가 할 때 십자선 생성기에서 콜백 함수가 호출되지 않습니다. 제 간략화 된 예에서
는, I는 출력보기 RenderView
로 구성되고 카메라가 예상대로, 콜백 함수가 호출 바와 같이
do {
videoCamera = try Camera(sessionPreset:AVCaptureSessionPreset640x480, location:.backFacing)
videoCamera!.runBenchmark = true
} catch {
videoCamera = nil
print("Couldn't initialize camera with error: \(error)")
}
let filter = HarrisCornerDetector()
let crosshairGenerator = CrosshairGenerator(size: Size(width: 480, height: 640))
filter.cornersDetectedCallback = { corners in
crosshairGenerator.renderCrosshairs(corners)
}
videoCamera! --> filter
let blendFilter = AlphaBlend()
videoCamera! --> blendFilter --> renderView
//crosshairGenerator --> blendFilter // INPUT 1: if I add this line, the callback never happens
filter --> blendFilter // INPUT 2: with this input to blendFilter, the callback is good
Camera?
정의, 그리고 I 출력 작은 흰 점들을 참조.
입력 1을 사용하도록 주석을 제거하고 입력 2를 주석 처리하면 디스플레이에만 카메라가 표시되고 모서리 탐지 콜백은 호출되지 않습니다.
Brad가 제공하는 샘플 프로젝트가 내 기기에서 작동하므로 하드웨어 또는 iOS 문제가 없음을 알고 있습니다!
의견이 있으십니까?