相关疑难解决方法(0)

iPad Pro 激光雷达 - 导出几何和纹理

我希望能够从 iPad Pro 激光雷达导出网格和纹理。

这里有如何导出网格的示例,但我也希望能够导出环境纹理

ARKit 3.5 – 如何使用 LiDAR 从新 iPad Pro 导出 OBJ?

ARMeshGeometry 存储网格的顶点,是否必须在扫描环境时“记录”纹理并手动应用它们?

这篇文章似乎展示了一种获取纹理坐标的方法,但我看不到使用 ARMeshGeometry 做到这一点的方法:将 ARFaceGeometry 保存到 OBJ 文件

任何指向正确方向的点,或要看的东西,非常感谢!

克里斯

lidar arkit

8
推荐指数
1
解决办法
3611
查看次数

'Project' ARFaceAnchor 指向屏幕

我试图在屏幕上叠加 ARFaceAnchor 顶点以完成两个场景 1) 有一个虚拟人脸保持在中心(屏幕上)位置,但反映几何体的变化。顶点 2)让虚拟人脸与实际人脸重叠(来自预览层) .

我在这里遵循了Rickster 的建议,但只成功地从屏幕上的某些角度投影了脸部(仅出现在左下方并旋转​​)。我不太熟悉每个矩阵的不同目的,但这是我到目前为止所得到的。有什么建议吗?

let modelMatrix = faceAnchor.transform
var points: [CGPoint] = []

faceAnchor.geometry.vertices.forEach {
    // Convert the vertex position from model space to camera space (use the anchor’s transform)
    let vertex4 = vector_float4($0.x, $0.y, $0.z, 1)
    let vertexCamera = simd_mul(modelMatrix, vertex4)

    // Multiply with the camera projection with that vector to get to normalized image coordinates 
    let normalizedImageCoordinates = simd_mul(projectionMatrix, vertexCamera)

    let point = CGPoint(x: CGFloat(normalizedImageCoordinates.x), y: CGFloat(normalizedImageCoordinates.y))
    points.append(point)
} 
Run Code Online (Sandbox Code Playgroud)

ios11 arkit iphone-x

5
推荐指数
1
解决办法
1391
查看次数

来自 ARKit 的面部纹理

snapshot我正在 ARKit 中使用 SceneKit 运行面部跟踪配置,在每个帧中我可以通过属性或作为缓冲区访问相机源capturedImage,我还能够将每个面部顶点映射到图像坐标空间并添加一些UIView助手( 1点平方)在屏幕上实时显示所有面顶点,如下所示:

func renderer(_ renderer: SCNSceneRenderer, didUpdate node: SCNNode, for anchor: ARAnchor) {
    guard let faceGeometry = node.geometry as? ARSCNFaceGeometry,
        let anchorFace = anchor as? ARFaceAnchor,
        anchorFace.isTracked
        else { return }

    let vertices = anchorFace.geometry.vertices

    for (index, vertex) in vertices.enumerated() {
        let vertex = sceneView.projectPoint(node.convertPosition(SCNVector3(vertex), to: nil))
        let xVertex = CGFloat(vertex.x)
        let yVertex = CGFloat(vertex.y)

        let newPosition = CGPoint(x: xVertex, y: yVertex) 
    // Here i update the position of each UIView …
Run Code Online (Sandbox Code Playgroud)

ios scenekit swift arkit

5
推荐指数
0
解决办法
1734
查看次数

标签 统计

arkit ×3

ios ×1

ios11 ×1

iphone-x ×1

lidar ×1

scenekit ×1

swift ×1