Я создал приложение для распознавания 3D-объектов, используя ARKit, и оно работает нормально .... но только для более сложных фигур. Когда я создаю файл USDZ с помощью демонстрационного кода от Apple, демонстрационное приложение распознает менее сложные формы, но я не могу заставить свое приложение распознавать те же самые формы. Конфигурационный код AR у меня такой же, и _Renderer didAdd. Может кто-нибудь помочь мне с идеями, как повысить чувствительность обнаружения 3D-объектов, чтобы он распознавал более простые формы - например, бутылку Coca Cola 2 л? Заранее спасибо за любые идеи.
func initARSession() {
guard ARWorldTrackingConfiguration.isSupported else {
statusLabel.text = "ARConfig: AR World Tracking Not Supported"
return
}
let config = createARConfiguration()
sceneView.session.run(config)
}
func createARConfiguration() -> ARConfiguration {
let config = ARWorldTrackingConfiguration()
guard let referenceObjects = ARReferenceObject.referenceObjects(inGroupNamed: "ARObjects", bundle: nil) else {
fatalError("Missing expected asset catalog Object resources.")
}
config.detectionObjects = referenceObjects
config.planeDetection = .horizontal
config.worldAlignment = .gravityAndHeading
config.isLightEstimationEnabled = true
}
return config
}
func renderer(_ renderer: SCNSceneRenderer, didAdd node: SCNNode, for anchor: ARAnchor) {
guard let objectAnchor = anchor as? ARObjectAnchor else {return}
let foundObjectName = objectAnchor.referenceObject.name
print("foundObject: \(String(describing: foundObjectName!))")
}