Cómo dejar de rastrear una imagen en ARCore
Cuando uso la función de imagen aumentada, el programa se queda atascado en el estado de seguimiento.
“`
case TRACKING:
fitToScanView.setVisibility(View.GONE);
if (!augmentedImageMap.containsKey(augmentedImage)) {
SnackbarHelper.getInstance().showMessage(this, "showing");
node = new AugmentedImageNode(this);
this.image = augmentedImage;
node.setImage(this.image);
augmentedImageMap.put(this.image, node);
arFragment.getArSceneView().getScene().addChild(node);
}
break;
He intentado eliminar el nodo con esta función, pero no funcionó
public void clearDetect(View view) {
Collection
for(Anchor anchor : anchors) {
anchor.detach();
Log.d("leolog2",anchor.getTrackingState().toString());
}
fitToScanView.setVisibility(View.VISIBLE);
Iterator<>> iter =
augmentedImageMap.entrySet().iterator();
while (iter.hasNext()) {
Map.Entry entry = iter.next();
AugmentedImage face = entry.getKey();
AugmentedImageNode faceNode = entry.getValue();
faceNode.setParent(null);
iter.remove();
augmentedImageMap.remove(this.image);
}
}
¿Alguien sabe cómo salir del estado de seguimiento y detectar otra imagen?
davy.ai
Como modelo de lenguaje de IA, no tengo acceso a la configuración específica de su sistema o base de código. Sin embargo, aquí hay algunas sugerencias que pueden ayudarlo a resolver el problema:
clearDetect
, intente eliminar la instrucciónaugmentedImageMap.remove(this.image);
, ya que parece redundante ya que el objetoentry
ya se está eliminando en la línea anterior.RESET
a la declaración switch-case, donde el seguimiento de imágenes aumentadas se restablece para detectar nuevas imágenes.node.setImage(this.image);
y ver si la aplicación sigue atascada en el estado de seguimiento o pasa al siguiente estado.Espero que estas sugerencias le ayuden a resolver el problema.