最近在微博上看到这样一条 微博 >点这看<
An AR Sandbox requires the following hardware components:
- A computer with a high-end graphics card (see the “Computer” section below for more specific hardware recommendations), running any version of Linux. The AR Sandbox software, in principle, also runs on Mac OS X, but we advise against it.
- A Microsoft Kinect 3D camera. The AR Sandbox software, or rather the underlying Kinect 3D Video Package as of version 3.3, supports Kinect-for-Xbox 1414 and 1473, Kinect for Windows, and Kinect for Xbox One. The first three are functionally identical, so get the cheapest model you can find. Note: The second-generation Kinect for Windows v2 is not yet supported by the AR Sandbox software.
- A digital video projector with a digital video interface, such as HDMI, DVI, or DisplayPort.
- A sandbox with a way to mount the Kinect camera and the projector above the sandbox.
Note: Please don’t comment on this thread; it’s gotten unwieldy. If you have any questions, concerns, or problems, please start a new thread.
Due to the currently surging interest in AR Sandbox installations, I am posting complete installation instructions, starting from a blank desktop PC with an Nvidia GeForce graphics card. Due to increasing weirdness in recent versions of Mac OS X (starting with 10.7), I can no longer recommend Mac computers and Mac OS X to drive AR Sandbox installations.
You can also watch a full walk-through video of steps 1-5.
- Install the current version of 64-bit Linux Mint with MATE desktop on a blank desktop computer. This needs to be a real computer; the AR Sandbox does not work from inside a virtual machine.
- Install vendor-supplied drivers for the Nvidia graphics card. Open the Control Center, select “Driver Manager,” wait for the panel to show up and the list of available drivers to be populated, and then select the recommended Nvidia binary driver and press “Apply Changes.” Then wait until the change is complete (might take a while), and reboot your computer.
- Open a terminal window and enter precisely the following commands (if in doubt, cut & paste directly from this web page, one line at a time). ~ is shorthand for the user’s home directory:
cd ~ wget http://idav.ucdavis.edu/~okreylos/ResDev/Vrui/Build-Ubuntu.sh bash Build-Ubuntu.sh
The script run in the last command will ask you for your user’s password to install prerequisite libraries, and then build the Vrui VR toolkit. That will take a little while and produce lots of output, and at the end you’ll be greeted by a spinning globe in a window. Close that window and go back to the same terminal as before.
- To install the Kinect 3D video package, run in the same terminal:
cd ~/src wget http://idav.ucdavis.edu/~okreylos/ResDev/Kinect/Kinect-3.2.tar.gz tar xfz Kinect-3.2.tar.gz cd Kinect-3.2 make sudo make install sudo make installudevrules ls /usr/local/bin
Check that the list of names printed by the last command contains KinectUtil and RawKinectViewer.
- To install the AR Sandbox software itself, run in the same terminal:
cd ~/src wget http://idav.ucdavis.edu/~okreylos/ResDev/SARndbox/SARndbox-2.3.tar.gz tar xfz SARndbox-2.3.tar.gz cd SARndbox-2.3 make ls ./bin
Check that the list of names printed by the last command contains CalibrateProjector and SARndbox. The AR Sandbox calibration utility and main application are now in ~/src/SARndbox-2.3/bin.
- Plug in your first-generation Kinect device and download intrinsic calibration parameters directly from its firmware. In a terminal window, run:
sudo /usr/local/bin/KinectUtil getCalib 0
This might ask you for your password again; if so, enter it to continue.
- Align your camera so that its field of view covers the interior of your sandbox. Use RawKinectViewer to guide you during alignment. To start it, run in a terminal window:
cd ~/src/SARndbox-2.3 RawKinectViewer -compress 0
- Calculate your sandbox’s base plane, by following the instructions in the AR Sandbox Calibration – Step 4 video, or this new video that shows all required calibration steps in one. You can use the already-running instance of RawKinectViewer.
You need to enter the base plane equation (and the 3D sand surface extents in the next step) into the BoxLayout.txt file in etc/SARndbox-<version> inside the SARndbox source directory. Under Linux Mint, the default text editor is called “pluma.” So to edit the file, run in a terminal window:
cd ~/src/SARndbox-2.3 pluma etc/SARndbox-2.3/BoxLayout.txt &
The ampersand at the end of the second command will keep the terminal window usable while the text editor is running. Now enter the base plane equation as described in the video. To copy text from a terminal window, highlight the desired text with the mouse, and then either right-click into the terminal window and select “Copy” from the pop-up menu that appears, or press Shift-Ctrl-c. To paste into the text editor, use the “Edit” menu, or press Ctrl-v.
Pro tip: The quickest way to copy&paste text from any window into any other window is: 1: Highlight text in source window with the mouse. 2: Move mouse to destination window and to the location where you want to paste the text, and click the middle mouse button.
- Measure the 3D extents of the sand surface. In the newly-released Kinect-3.2 package, this can be done inside RawKinectViewer as well by following the instructions in this video, starting at 4:10. Make sure to measure the box corners in the order lower-left, lower-right, upper-left, upper-right. After you have copied the box corner positions into the text editor as described in the video, save the file (via the “File” menu or by pressing Ctrl-s), and quit from the text editor (via the “File” menu or by pressing Ctrl-q).
- Align your projector such that its image fills the interior of your sandbox. You can use the calibration grid drawn by Vrui’s XBackground utility as a guide. In a terminal, run:
After the window showing the calibration grid appears, press the “f” key to toggle it into full-screen mode. Ensure that the window really covers the entire screen, i.e., that there are no title bar, desktop panel, or other decorations left.
Press Esc to close XBackground’s window when you’re done.
- Calibrate the Kinect camera and the projector with respect to each other by running the CalibrateProjector utility:
cd ~/src/SARndbox-2.3 ./bin/CalibrateProjector -s <width> <height>
where <width> <height> are the width and height of your projector’s image in pixels. For example, for an XGA projector like the recommended BenQ, the command would be:
./bin/CalibrateProjector -s 1024 768
Very important: switch CalibrateProjector’s window to full-screen mode by pressing F11 before proceeding. Then follow the instructions in this video, starting at 10:10.
- Finally, run the main AR Sandbox application:
cd ~/src/SARndbox-2.3 ./bin/SARndbox -uhm -fpv
Switch SARndbox’s window to full-screen mode by pressing F11, or the calibration created in the previous step will not line up.
- Read the “AR Sandbox post-installation setup” post for some additional automation and fine-tuning suggestions.