The two pieces of hardware are virtually identical, as asalamon74 points out. There are only a few hardware differences, with a larger set of restrictions based on firmware.
To extend on what asalamon74 has already pointed out, here are some direct answers to your bullet points:
Connectivity for both devices are USB. If you get a Kinect for Xbox as part ...
According to this article the hardware is almost the same, only the usb/power cord is different. Even the minimum sensing distance difference is not hardware-based it's only a firmware-based difference.
You can use the cheaper hardware for developing programs using Kinect for Windows SDK, but your customers need the more expensive hardware since Kinect for ...
I know the Xtion is smaller and powered by USB where as the Kinect requires to use a wall power socket to operate. In terms of depth perception they are very similar in terms of accuracy. Depending on whether your robot needs to be portable (i.e not attatched to the mains) and small should probably be the deciding factor.
Actually we don't. This is the source of myriad visual illusions. Through a life time of experience we learn context which tells us when one thing can be on another vs. in it. But even then a sculpture can be built to trick us. For example it can look like a plate, cup, and spoon organized in a certain way but in fact be non of the above. A good example of ...
Welcome to the Robotics StackExchange! The Kinect is only a sensor, albeit a relatively powerful one for its price. To use it with a robot, you need to cover basically two bases:
Get a robot that is able to interface with it
That means you need to somehow build/buy something consisting of processing unit (a microcontroller or PC) with USB connectivity and ...
You might also consider the Leap Motion:
It's got amazing resolution, and the ability to pick out individual fingers at an amazing update rate.
And is even fine enough to allow you to write in the air with a pencil:
You can't buy one yet, but they'll be available soon.
The Arduino has always been horifically underpowered.
You can get a stack of stm discovery or other ARM based dev board for the price of a single arduino, and each one of those boards will be orders of magnitude more powerful than the arduino.
The ubiquity of the arduino has also hampered many projects that should have known better. Quadrotor ...
It depends - on the number of landmarks in the feature map, and how much time you're willing to invest tuning the algorithm for speed, and a number other parameters which you may or may not be able to control for a given application.
Edit: As a thought experiment, I think it would theoretically be powerful enough to do extremely simple near-real-time SLAM ...
OpenKinect is a community of people, not a library. The OpenKinect community releases the libfreenect Kinect driver. libfreenect and OpenNI+SensorKinect are two competing, opensource libraries/drivers. libfreenect (Apache 2.0 or GPLv2) derives from the initial, reverse-engineered/hacked Kinect driver whereas OpenNI+SensorKinect is derived from open sourced (...
You should read the paper published by Microsoft research on the actual algorithm behind the human motion tracking.
Real-Time Human Pose Recognition in Parts from a Single Depth Image, Shotton et. al,
It relies on large labeled training data from the human body. That is why the Nao cannot just ...
My favorite is the Learning OpenCV book. It has a fantastic stereo / 3D section that introduces concepts from the ground up. If you're at a university, you might be able to find the digital version available from the library website.
Depends, especially on how you are going to combine scans into a full 3D pointclound (if you need 360 degree views.) ...
More driver details:
OpenNI or freenect can be used with the Xtion and the XBox Kinect.
The "Kinect for Windows" requires the Microsoft SDK and drivers. However, there is also a bridge to go from the MSSDK drivers to OpenNI: http://code.google.com/p/kinect-mssdk-openni-bridge/
Also, the latest version of the Kinect for Windows (>=1.5) has a near mode that ...
The raw specs on the Arduino's microcontrollers list clock speeds as high as 16 or 20 MHz -- around the speed of an mid-1990s Intel 386 computer.
That sounds promising, until you consider the fact that it doesn't natively support floating point math -- the "FLOPS" measurement by which most CPUs are compared. I've seen some arduino demos that calculate ...
From Microsoft site:
What's the difference between the Kinect for Windows sensor and the Kinect for Xbox 360 sensor?
The Kinect for Windows sensor is a fully-tested and supported Kinect experience on Windows with features such as “near mode,” skeletal tracking control, API improvements, and improved USB support across a range of Windows computers and ...
With respect to the Arduino + Kinect, see my answer to Start making robots with Kinect (short version: not happening without something with more CPU power than a Raspberry Pi, which you then have to carry onboard with sufficient additional battery power).
The other obstacle in your case is that the specifications of the Kinect are not well-suited for any ...
Try freenect, there are some problems with OpenNI solution.
Firt, install freenect by
sudo apt-get install ros-fuerte-freenect-stack
After installation, connect your kinect (in USB 2.0 port) and run freenect
roslaunch freenect_launch freenect.launch
Then run Rviz and set Fixed frame to /camera_link, you can now add PointCloud2 window and select the ...
The Kinect is certainly a popular choice these days for robotics. However, time-of-flight, structured light, and stereo cameras all have their own strengths and weaknesses. These two threads have a good discussion:
What main factors/features explain the high price of most industrial computer vision hardware?
Question for those who have experience using ...
Kinect 1 is a structured Light sensor, Kinect 2 is a Time of Flight camera.
Structured Light gives you better performance on edges where a ToF camera smoothes the data due to multipath-measurements. ToF has less problems with ambient light.
What is your use case?
The problem is much easier, when you want solve this for specific object categories like cup-plate-spoon instead of any generic pair of objects. Also in my opinion there degeneracies as mentioned by DaemonMaker is not going to happen in this case since we have depth image instead of just a 2D image.
When you know the objects in scene and you have a depth ...
Excellent answer by George. If I may, I'd like add more details and suggestions. (I would recommend googling terms that are new to you).
Your entire robot (input) configuration depends on what kind of data your code is going to process. If it's more vision oriented, the data can be depth maps, point clouds, rgb images or a combination of the 3. This means ...
It actually makes sense that the dot product in both cases is the same (zero) because the dot product of two vectors does not consider the vectors' origins. Or in other words the math for the dot product places the two vectors at the same origin. In this sense there is no way to distinguish converging or diverging vectors.
I think what you need to do is to ...
You can use all versions of the Kinect for Windows SDK, even with an Xbox-version. Some parts are limited and you require a Kinect for Windows in commercial scenarios (more information on my blog).
In your scenario you should be able to use the official Kinect for Windows SDK v1.8 to use the speech/sound scenario. If you are going to do speech/voice ...
So the Kinect uses a set of IR points to determine depth, not true stereoscopy. the DUO M and the Bumbee both use two cameras to achieve this, I am not familiar enough with them to give a good comparison between them and the Kinect but I am familiar with a new product that I have been using for a little bit called the ZED It has a detection range of ...
active system (works also on textureless surfaces)
defined range (low maximal range)
does not work good outdoors in direct sunlight
- adjustable (different camera, different baseline possible for different ranges)
higher framerate possible
hard to built right (...
You should simply use the callback method since you can have an object in your code that is always updated with the latest measurement. Then you can simply poll the measurement in that object whenever you want (say in some while loop running at a given rate). I notice you are linking to help related to using Python, whereas I am more familiar with coding ROS ...
The movement of the ping pong ball is going to be ballistic, so you really only need to know its 3d position in 3 different locations in order to fully constrain its motion. In reality, you will probably want more. This excellent paper An Application of human-robot interaction: Development of a ping-pong playing robotic arm uses around 8-10 locations in ...
There are several platforms possible, depending on your experience level and needs.
If you are comfortable working with the Raspberry Pi or the Beagle Bone... the next step up might be the Jetson TX1 or TX2 from Nvidia. Please note that the default install of OpenCV4Tegra does not include the slam modules, so you will have to install OpenCV from source if ...
For the price of an Arduino Uno, or less, a recent alternative is the TI Stellaris Launchpad at $12.99 (including world-wide FedEx): Arm Cortex M4 with an excellent built-in library set called StellarisWare that resides on ROM - so your Flash and RAM remain free for application use.
Massively higher computational power than the Arduino Uno, but so far ...
Can Kinect data be stored directly onto a USB drive?
Yes. In ROS that would be easily done using bag files. In Windows, however, you might have to look for something native in the Microsoft SDK/OpenNI or code it yourself. Edit: In OpenNI there is something called .oni files for that purpose.
The implicit question: Does Kinect for Windows work in Linux?
You can install the a package for kinect:
sudo apt-get install ros-hydro-openni-launch
Then to make the package publish kinect's topics:
roslaunch openni_launch openni.launch
To visualize the depth image run:
rosrun image_view image_view image:=/camera/depth/image
To visualize for example the Point Cloud in rviz you can add a PointCloud2 Display ad ...