Modules such as Precision Landing in PX4 perform a indirect correction using relative camera coordinates translated to the global frame upon identification if the "tag/marker". I suggest you take a look into the Precision Landing module of px4 as an example in solving your problem. Of course that is using the IR markers available out there. Now we have internally modified that module for april tags in the landing case as well that will be available shortly.
This method corrects the drone relative to actual ground truth (i..e the ARtag/IRTag), but does not correct the Global Frame position itself as its used as a relative offset to correct its setpoint position. That offset could be used to correct the global frame position itself (doesn't necessarily exist in PX4), but then again it would be better to transmit the actual GPS position of the tag to account for the curvature of the Earth, etc... and then calculate a proper offset.