Best Hardware for Accurate Point Tracking System

communicationcomponentshardwarelaserposition;

Here is what I am trying to accomplish:

In the middle of a room, I have a mechanism with a laser diode mounted on it that can be moved in all axis by a motorized pan/tilt head type device. This mechanism is to stay fixed in the middle of the room at all times.

Now say that I have a phone for example. I want to be able to walk around the entire room all whilst having the laser pointer constantly following and aiming at the phone with as much accuracy as possible.


Which hardware, if any, should I use in this circumstance to help accomplish this? I can mount anything needed on both the tracking device (laser) and device being tracked (phone).

This is my first time working on a tracking system of any type. I have attempted a fair amount of research on the topic, but I am still left in a haze. Mostly everything I find has to deal with a camera tracking/following a point, but I would like to avoid this method if possible.

If more info is needed, let me know.

Best Answer

EDIT

I really should start by saying that a "motorized pan-tilt head" is not the way to go. Any reasonably-priced and sized unit will not have the frequency response you need in order to compensate for body movement while walking. You need something like a galvanometer scanner, combined with an IMU to keep track of your orientation with respect to the rest of the room.

END EDIT

Trying to do what you are, and with what you have, is extraordinarily difficult. The basic question is, how do you know, based on what a single laser can tell you, what and where the phone is?

Since you don't know the color of the phone, and you don't know the color of the surroundings, there is no obvious way to use the intensity returns to distinguish the phone from the table, walls, floor or whatever. Is there anything else you can use?

Yes, you can modulate the laser (either AM or FM) and use it as a LADAR (radar but with light). You raster-scan this LADAR in order to build up a 3D surface model of the room from your current perspective. It's a surface model rather than an object model since you can't see the back sides of any object. You then analyze the surface model, looking for the distinctive shape of the phone (from an initially unknown angle). Once you've found it, you job gets easier for two reasons. First, you know approximately where it is, and successive scans can cover a fairly small area, in contrast with the start-up condition, where the entire room space needs to be scanned. Second, since you've identified the phone's orientation, you've drastically reduced the number of possible orientations you need to consider in the subsequent scan.

Needless to say, this is a very large computational task. Especially, the need to consider all possible orientations of the phone will suck up CPU cycles. Plus, a shiny object like a phone is prone to specular reflections. This means that a fair amount of the time the laser beam will get no return at all, as the beam is reflected off to someplace useless, rather than being scattered back to the detector. Can we cheat?

Well, yeah, sort of. Remember how I said you can't use the intensity returns? That's not necessarily true. If you attach a set of corner cubes to the phone (which probably counts as cheating - how many phones do you see with corner cubes attached?) or maybe even some reflective tape, your scan can simply look for the strongest intensity return. It will occasionally get fooled by a specular reflection from something else, but with luck that will be rare, and you can compensate by not allowing big jumps in apparent target position.