Log in or register to post comments

Poor Frame Marker Recognition under 2.5.7

July 17, 2013 - 7:35am #1

Vuforia SDK Version: iOS 2.5.7 -

Description with steps to reproduce:

I have a full AR frame marker App under iOS.  The App was fully tested and ready for the App store under SDK 2.0.30.  But the App store rejected because that SDK version still used UDID which is disallowed by Apple.  I then upgraded to SDK 2.5.7 to pass the UDID requirement of Apple.  I retested my App, and while it works for most frame markers, some frame markers are not detected.  Frame marker 62 and 45 simply are not recognized.  We use nearly all 512 in our process and App so it is critical that all frame markers are detectable and this solution is reliable.

I can recreate the issue easily.  I recompile my App using 2.0.30 and all frames are recognized, but then I recompile under 2.5.7 and these frames are no longer recognized.

Please help ASAP.  I'll accept a viable workaround.  Maybe until a permanent solution is found, I can get access to the SDK upgrade that just fixed the UDID issue.

I have a deadline to meet to get the product into the App store.

 

Thanks in advance,

Steve Sykes

-

Development OS (Mac OS X, Windows, Linux): Mac OS X -

Mobile OS and Version: iOS version 6+ -

Mobile Device Manufacturer and Model name: Apple -

Do the Vuforia Sample Applications show the same behavior?: Yes the results are the same with the Frame Marker sample App. Frame 062 does not get recognized. I put in a breakpoint in the sample code to show when trackable hit. The breakpoint was triggered for Frame 000, 001, but failed and never triggered for frame 62.

Poor Frame Marker Recognition under 2.5.7

July 19, 2013 - 9:29am #12

Thanks for the update.

I am pleased for you, though not surprised that there is no error in Vuforia.

One of the things the majority of developers do not realise is the enormity of testing that happens behind the scenes on an incredible number of devices to make sure that you have as smooth a journey as possible during app production.

Here's one for reading the documentation - glad to know it has come in handy ;)

 

N

RESOLVED: Poor Frame Marker Recognition under 2.5.7

July 19, 2013 - 7:49am #11

GREAT NEWS...  IT WAS COMPLETELY MY ERROR!!!

The error occurred during the upgrade.  In a rush to get the UDID issue resolved to publish to the App Store, I made the mistake of migrating my App INSIDE the SDK directory, and carried some old code and routines forward corrupting the upgrade.  Also part of my XCode library search paths compounded the issue.

This time I rigorously followed the SDK installation steps and ensured my App was in a separate directory, and that only my XCode Include searches changed and pointed to the 2-5-7 SDK and libraries.

All components are working as expected and the recognition is excellent on all framemarkers.

 

Thanks for helping me through this even though it was completely my error.

 

Steve Sykes

Poor Frame Marker Recognition under 2.5.7

July 19, 2013 - 6:22am #10

Thanks for the response...  Our QCAR assemblies match.  Unfortunately I was hit with another priority yesterday so i did not have a chance to change and test the Sample App.  I will attempt to do today.  

I think however, I'm going to attempt to upgrade my App again from 2.0.30 to 2.5.7.  I'm hoping I missed something.

I'll keep you up to date.

 

Steve

Poor Frame Marker Recognition under 2.5.7

July 19, 2013 - 2:29am #9

 

1. What is the timestamp on the libQCAR.a that you are using.
 
It's the latest one as part of the 2.5.7 release - 14th June 2013
 
 
2. Is it possible to get access to SDK 2.0.32 if I need a temporary work-around.
 
No, sorry :(
 
 
N
 
 
 

Poor Frame Marker Recognition under 2.5.7

July 18, 2013 - 9:47am #8

Thanks,

I will make these changes to the Sample App and test.

In the mean time, 2 related questions:

1. What is the timestamp on the libQCAR.a that you are using.

2. Is it possible to get access to SDK 2.0.32 if I need a temporary work-around.

 

Steve

Poor Frame Marker Recognition under 2.5.7

July 18, 2013 - 7:59am #7

Anything that can explain why I can compile under 2.0.30 and the recognition works perfectly, and then recompile under 2.5.7 and the recognition does not work

Well, this I cannot explain.

 

However in my tests I was able to detect all framemarkers without issue, including your two supplied images using the latest SDK as per the two attached images.

While I am unable to send you source code, here are the steps to modify the sample and complete the test.

The first thing I did was to create all 512 frame markers in QCARUtils.mm: (you can comment out the relevant code as shown below) 

 

NSLog(@"Successfully got MarkerTracker.");

 

res = 1;

int frameMarkerIndex = 0;

while (frameMarkerIndex < 512)

{

    if (!markerTracker->createFrameMarker(frameMarkerIndex, [[NSString stringWithFormat:@"Marker%d",frameMarkerIndex] UTF8String], QCAR::Vec2F(50,50)) ||

        !markerTracker->createFrameMarker(frameMarkerIndex+1, [[NSString stringWithFormat:@"Marker%d",frameMarkerIndex+1] UTF8String], QCAR::Vec2F(50,50)) ||

        !markerTracker->createFrameMarker(frameMarkerIndex+2, [[NSString stringWithFormat:@"Marker%d",frameMarkerIndex+2] UTF8String], QCAR::Vec2F(50,50)) ||

        !markerTracker->createFrameMarker(frameMarkerIndex+3, [[NSString stringWithFormat:@"Marker%d",frameMarkerIndex+3] UTF8String], QCAR::Vec2F(50,50))

        )

    {

        NSLog(@"Failed to create frame markers.");

        res = 0;

    }

    

    frameMarkerIndex += 4;

}

 

 

// Create frame markers:

//                if (!markerTracker->createFrameMarker(0, "MarkerQ", QCAR::Vec2F(50,50)) ||

//                    !markerTracker->createFrameMarker(1, "MarkerC", QCAR::Vec2F(50,50)) ||

//                    !markerTracker->createFrameMarker(2, "MarkerA", QCAR::Vec2F(50,50)) ||

//                    !markerTracker->createFrameMarker(3, "MarkerR", QCAR::Vec2F(50,50)))

//                {

//                    NSLog(@"Failed to create frame markers.");

//                }

//                else

//                {

//                    NSLog(@"Successfully created frame markers.");

//                    res = 1;

//

 

 

The next thing I did was to add some lines in renderFrameQCAR to output the number of trackables to the log:

 

        int numTrackables = state.getNumTrackableResults();

        if (numTrackables > 0)

            NSLog(@"numFramemarkers = %d",numTrackables);

 

        

        // Did we find any trackables this frame?

 

..and finally do a mod of the marker id in the same function to ensure we get an augmentation:

 

            int textureIndex = marker.getMarkerId() % 4;

 

Please try this and see if it works for you.

 

N

AttachmentSize
Image icon IMG_0001.PNG694.89 KB
Image icon IMG_0002.PNG639.82 KB

Poor Frame Marker Recognition under 2.5.7

July 18, 2013 - 6:35am #6

I have attached frame 062.  Frame 45 has a vendor name so I sent the basic frame that also fails.

Also were the tests conducted in an iOS environment, and if so can you tell me the device, the iOS version, etc.  And any specific settings in your App that may affect my outcome.

Anything that can explain why I can compile under 2.0.30 and the recognition works perfectly, and then recompile under 2.5.7 and the recognition does not work.  No code changes at all.  I literally just recompile.

 

Thanks...

Steve

AttachmentSize
Image icon 884mag_frame062.jpg18.7 KB
Image icon frameMarker_045.png11.97 KB

Poor Frame Marker Recognition under 2.5.7

July 18, 2013 - 1:14am #5

Hi Steve,

Since yesterday both David and Alessandro have tested FMs with the sample on 2.5.7 and found no problems, particularly with markers 45 & 62.

Could you send me a link to your markers so I can take a look?

 

N

Poor Frame Marker Recognition under 2.5.7

July 17, 2013 - 11:05am #4

The problem persist, but my initial test with the Vufura sample was flawed... It appears that any frame above 003 is not recognized by the App in any SDK.  If you can send me an App sample that recognizes at least the first 75 Frame Markers then I will perform the test in both SDKs.  I do not have the time to go through the sample code as I am trying to build a viable work-around.  My problem with frame 45 and 62 is repeatable and reproducable so I need someone to fix the issue.

Unfortunately the sample code does not offer a valid testing screnario.

Poor Frame Marker Recognition under 2.5.7

July 17, 2013 - 10:29am #3

Yes, they are recognized immediately under SDK 2.0.30... In my App.  I will test now under the Frame Markers App and reply again.

Poor Frame Marker Recognition under 2.5.7

July 17, 2013 - 9:57am #2

Are you saying that 45 and 62 were recognised in the previous SDK in the Vuforia sample?

N

Log in or register to post comments