Get 2D position of marker on screen
Opened this issue · 4 comments
GoogleCodeExporter commented
We're developing an application in which we use the pattern recognition of
AndAR and showing a small View object (probably WebView) over the marker when
it is detected.
Is there any way to retrieve the x,y coordinates of the marker relative to the
device's screen, or relative to the original camera image used to test for the
marker? Since the marker was originally detected from a 2D image, it seems
there would perhaps be a reference to the area of the 2D image that matched the
marker. A corner of the marker, the center point, any (x,y) point would be
helpful.
Note: we obviously don't need the View to be transformed onto the 3D plane of
the marker. Just display as a normal view, positioned to cover the marker as
best as possible.
Original issue reported on code.google.com by j...@phonogram.co.jp
on 8 Aug 2011 at 8:37
GoogleCodeExporter commented
Hi,
even i am trying the same to find the coordinates of the screen for a
particular marker detected.
did u find anything, any progress would help me a lot.
- shashank
Original comment by shashank...@gmail.com
on 23 Aug 2011 at 6:25
GoogleCodeExporter commented
[deleted comment]
GoogleCodeExporter commented
if you don't mind delving into the C code using JNI, I found the coordinates
inside arDetectMarker.c
look for this line of code:
__android_log_print(ANDROID_LOG_INFO,"AR","cf[%d] = %g
id[%d]=%d",i,wmarker_info[i].cf,i,wmarker_info[i].id);
and add this one after it, recompile the code, and run the code:
__android_log_print(ANDROID_LOG_INFO,"POSITION","wmarker_info[%d].POSITION: Y =
%f; X = %f",i,wmarker_info[i].pos[0], wmarker_info[i].pos[1]);
__android_log_print(ANDROID_LOG_INFO,"POSITION","wmarker_info[%d].RELATIVE_POSITION: Y = %f; X = %f",i,wmarker_info[i].pos[0]/480.0, wmarker_info[i].pos[1]/320.0);
(where 480 and 320 are the screen dimensions)
To support logging, make sure you add #include <android/log.h> to the top of
the c file.
P.S if when building the code with ndk-builder you get some errors related to a
missing GLES/gl.h, make sure you add 'APP_PLATFORM := android-8' to
jni/Application.mk
good luck
Original comment by tomtema...@gmail.com
on 6 Apr 2012 at 9:02
GoogleCodeExporter commented
I'm now developing this, and I can get 2D position of marker on screen.
If you were interested, please see "arToolkit.c" and "arToolkit.java" in below
repository:
https://github.com/nmatsui/AR_Speeker
Original comment by nobuyuki...@gmail.com
on 5 Jul 2012 at 9:53