title: Refining position of 3D Model relative to Augmented Image pose
body: <p>Before I make a giant word dump my effective question is this:</p>
  
  <p><strong>Can I supply some extra information / heuristics to ARCore to refine it's idea of what the pose of a detected augment image is? Or can I use the pose of other trackable objects to refine the the pose of a detected augment image?</strong> </p>
  
  <p>For more info, here is some background information on my workflow:</p>
  
  <p>My AR app revolves around overlaying various 3D CAD models on top of their real-world machine equivalents. The user interaction goes like this:</p>
  
  <ol>
  <li>The user will adhere a QR code (sized .2 meters by .2 meters) to a predetermined location on the associated machine (location is specific to the type of machine).</li>
  <li>The user will then load up the app, point the camera at the QR code and the app will pass the camera image to a QR code reading library and use the payload (an id for a specific machine) to retrieve the associated CAD Model &amp; metadata. </li>
  <li>Once the QR code is detected I can use the QR code reading library to construct a pristine image of the QR code and pass this image to ARCore so that it can detect it in 3D space from the camera.</li>
  <li>Once the QR code is detected in 3D space, I attach an anchor and I use the knowledge of where the QR code should be placed on the given model (also retrieved from my database using the payload info) to determine a basis for my CAD model.</li>
  <li>Information can be overlayed using the CAD model to show various operations / interactions.</li>
  </ol>
  
  <p>Now I've got all this working pretty well but I've run into some issues where the model is never quite positioned exactly to the real-world equivalent and requires some manual positional adjustment after the fact to get things just right. I have some ideas for how to resolve this but I don't know how feasible any of these ideas are:</p>
  
  <ol>
  <li><a href="https://developers.google.com/ar/reference/c/group/trackable#group__trackable_1gab4397e67027ccb5bdcd4dfa5786b6adf" rel="nofollow noreferrer">ArTrackable_acquireNewAnchor</a> allows you to specify <strong>multiple</strong> anchors per trackable with different poses. I assume this will refine the tracking the object but I'm not clear as to how to use this API. I'm currently just passing the pose generated from ArAugmentedImage_getCenterPose so I don't know what other poses I would pass.</li>
  <li>If I promote my QR Code anchor to a cloud anchor after detection will that aid in detecting / refining the qr pose detection in the future?</li>
  <li>If I try and match other features detected by ARCore (like planes) to known topology in the real environment (like floors / walls) could better approximate the position of the QR code image or provide some heuristic to ARCore so that it can?</li>
  <li>Instead of using a single QR code image what if I use a set of images (one QR code, and two other static images) that are slightly offset from each other. If we know how far apart these images are in the real world we can use this information to correct for the error in ARCore's estimation of where they are. </li>
  </ol>
  
  <p>Sorry for the giant word dump, but I figured the more info the better. Any other ideas outside the framing of my question are also appreciated.</p>