Archive for the '3D' Category



Still messing with qtrack

Ok, boring things first. I uploaded another qtrack version with some minor fixes and improvements, and also added broomstick example there. Nothing groundbreaking so far.

Now, to fun things. I tried to make non-square marker qtrack mod based on this method. You can see in this video how far I could push it:

but, overall, this was a failure. Unlike that guy, I had only one shape to detect, so at 1st I thought I could use max ICF value between blob and marker contours (ideally 1) and compare it to confidence threshold. However, this picked way too much false positives. So in 2nd iteration, that you see in the video, I had to calculate max ICF values for few hundred blobs 1st, and then pick the blob with max of those values. This worked somewhat better, but in the long run, it is still unreliable. Here is a distribution of max max ICF values thresholded at 0.7:

As you see, even shape as simple as flash logo produces really poor values most of the time. Another equally significant problem is that BitmapData’s threshold() method produces poor contours when threshold is not optimal: over-illuminated patches of the marker punch random “holes” in its binarized version and contaminate detected contour. To sum up, you will have to stick with quad markers for some time, sorry.

Update on qtrack

For those of you who are still interested in my free marker-based flash AR tracker, I updated qtrack to v1.0. There were actually only few minor changes, however. 1st, I changed detector code to avoid v0.9 marching squares bug; interesting side effect of this change is that now literally anything that remotely resebles a quad can be used for the marker (like those examples on the right). 2nd, I added requested option to track the marker in NetStream-ed video. 3rd, there is new makePlaneTransform method that should help you with molehill setup (but no molehill demo included for now). 4th, some minor stuff you wouldn’t care about.

On a related note, back in December I promised to make Alternativa3D AR video tutorial for russian xmas, that would include qtrack and other trackers available through FLARManager. I did not finish that video in time, so for this post I uploaded qtrack part only (and chances are that FLARManager part will be only available in text version of tutorial). The video is in russian, but you can try english subtitles. Enjoy:

Meet qtrack

It stands for “quadrilateral tracker”, little pet project I have been sporadically working on since october. I should have given it more love, but I didn’t want this post to drag into next year, so here goes “version 0.9”:

After December 7th, qtrack is the only free, as in “free beer”, flash 3D AR tracker. Curious why? There are many reasons for that. For one, most of its code is already available for free elsewhere on the web. But another, more important reason is that I just don’t see enough flash AR around, and setting this thing free is my modest contribution to spark some more creativity in the field :) I mean, when was the last time you actually saw flash AR game, huh?..

Any way, back to qtrack – it works similarly to famous FLARToolKit, except it is not that advanced and currently implements only single instance of single quad marker tracking. On the bright side, it is less restrictive regarding marker shape – all these markers could be tracked with qtrack, for example:

So, this is something you can try today. Zip file comes with two simple examples for Away Lite and Alternativa engines, and soon short video tutorial will follow. In January I will try to further improve qtrack in the areas where it currently have problems, and release stable version 1.0.

Credits

As I said, most of this thing is based on free code snippets published or inspired by various people. This includes blob detection (Tomek), homography (Zeh), marching squares (Sakri), Otsu thresholding (Andrew), automatic thresholding (some unknown guy), brilliant camera activity trick (Deepanjan). Even my complex numbers experiment found its way into this – I used it for pose estimation. So big thanks goes to all these people who have posted right things at right time for me to come across – without you qtrack would never happen!

Simplest FLARToolKit example ever?

FLARToolKit is said to be slow, but exactly how slow is it? To answer this question, I had to write the most simple bare bones FLARToolKit example ever :) It has neither trix to speed it up, nor complex 3D content to slow it down.

update: source updated to FLARToolKit svn head; it can work with 2.5.4 download if you remove param.setValue() call, line 48.

Midnight Brainfuck

Did you ever tried to imagine what would rotation of impossible rectangle look like? Well, these guys did but, with all due respect, their results are ugly. I thought I could do better than that, so tonight I made this:

(click it to go to my wonderfl code)

Spherize filter

Last night I was thinking of ways to create “fish eye” effect with flash 3D engines, and decided that Pixel Bender is the way to go. However, two things I’ve found on the internet did not make it look the way I wanted, so I ended up creating my own “spherize” filter:

Of course, it is not limited to 3D – you are free to use it in any other way, too. Continue reading ‘Spherize filter’

Animated 3D Pythagoras tree

This is (re)animation of last year experiment that I have been playing with over the holidays. Now you can see great diversity of this fractal in real time:

Continue reading ‘Animated 3D Pythagoras tree’


Old stuff

September 2015
M T W T F S S
« Aug    
 123456
78910111213
14151617181920
21222324252627
282930  

Oh, btw…


Follow

Get every new post delivered to your Inbox.