Как получить реальные расстояния с помощью камер с датчиком глубины в устройствах ios (iphone 11)
Я старался:
func grayPixelData() -> [Float32] {
CVPixelBufferLockBaseAddress(self, CVPixelBufferLockFlags(rawValue: 0))
let width = CVPixelBufferGetWidth(self)
let height = CVPixelBufferGetHeight(self)
var pixelData = [Float32](repeating: 0, count: Int(width * height))
for yMap in 0 ..< height {
let rowData = CVPixelBufferGetBaseAddress(self)! + yMap * CVPixelBufferGetBytesPerRow(self)
let data = UnsafeMutableBufferPointer<Float>(start: rowData.assumingMemoryBound(to: Float.self), count: width)
for index in 0 ..< width {
//
pixelData[index + width * yMap] = Float32(data[index / 2])
}
}
CVPixelBufferUnlockBaseAddress(self, CVPixelBufferLockFlags(rawValue: 0))
return pixelData
}
после этого я получил некоторый массив, как показано ниже, Array
На что указывают значения массива глубины? дает ли прямое расстояние от камеры до объекта в метрах? Как мы можем получить реальные расстояния, используя этот массив?