ARToolKit 学习笔记
By 小猪周瑜(网站学习)
1、安装ARToolKit
下载地址:http://www.hitl.washington.edu/artoolkit/download/ (英文的,我翻译了一下)
① 需要下载以下3个文件(或下载类似的更新版本)
ARToolkit-2.71.2.tgz DSVL-0.0.8b.zip OpenVRML-0.14.3-win32.zip
注:我自己采用了ARToolKit-2.72.1-bin-win32.zip。
② 解压后,将DSVL和OpenVRML文件夹剪切至ARToolKit文件夹中,然后将以下的3个DLL文件复制,放进【ARToolkit\bin\】里面去
ARToolKit\DSVL\bin\DSVL.dll
ARToolKit\DSVL\bin\DSVLd.dll
ARToolKit\OpenVRML\bin\js32.dll
③ 请双击鼠标左键执行 ARToolKit\Configure.win32.bat 文件。
2、安装glut
下载地址:http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip
或http://upload.programfan.com/upfile/200607311626279.zip
将下载到的glutdlls37beta.zip解压缩后,
① 把 glut32.dll、glut.dll 放进 【windows\system32\】里面去;
注:在放置上述2个dll文件时,提示glut32.dll文件相对自己的系统过于陈旧了。
② 把 glut.h 放进开发环境里的【include\GL\】里面去,
C++6.0 D:\Program Files\Microsoft Visual Studio\VC98\ Include\GL
VS 2005 D:\Program Files\Microsoft Visual Studio 8.0\VC\include\GL
VS 2010 D:\Program Files\Microsoft Visual Studio 9.0\VC\include\GL
③ 把glut32.lib、glut.lib放进开发环境的【Lib\】里面去,
C++6.0 D:\Program Files\Microsoft Visual Studio\VC98\Lib。
VS 2005 D:\Program Files\Microsoft Visual Studio 8.0\VC\lib
VS 2010 D:\Program Files\Microsoft Visual Studio 9.0\VC\lib
3、设置
① C++ 6.0
增加包含文件( Include file )与静态程序库(Library)的路径,点选【工具】→【选项】,然后在对话框里点击【目录】子菜单。在“目录[S]:”下面的候选菜单栏里处于(Include files)的状态下,将包含文件路径加进去;处于(Library file)的状态下,将静态程序库路径加进去。
最后要做的,是把静态程序库(Library)和样本程序编译一下生成出来。 用VisualC++打开【ARToolKit\ARToolKit.dsw】,在菜单里点击【组建】→【批组建】,在弹出来的窗口里点击【创建】按钮。
②VS 2005 & VS 2010
增加包含文件( Include file )与静态程序库(Library)的路径,点选【工具】→【选项】,然后在对话框里点击【项目和解决方案】→【VC++目录】子菜单。在“目录[S]:”下面的候选菜单栏里处于(Include files)的状态下,将包含文件路径加进去;处于(Library file)的状态下,将静态程序库路径加进去。
最后要做的,是把静态程序库(Library)和样本程序编译一下生成出来。 用VisualC++打开【ARToolKit\ARToolKit.sln】,在菜单里点击【生成】→【生成解决方案】,注意要Debug、Release模式下分别编译一次。
注:由于ARToolKit.sln是VS2003创建的,在VS2005下会提示一些警告,是C语言库的问题,不要理会,另外有链接错误出现,此时点击【生成解决方案】2次就好了,是因此有些库互相依赖的原因。
4、检查是否正常工作
使用【bin\】目录下的名为graphicsTest.exe来测试ARToolKit的图形部分是否正常工作,如果能正常工作的话,应该显示一个旋转的茶壶。
使用【bin\】目录下的videoTest.exe可以完成下面测试。如果工作正常的话,应该出现一个视频窗口,显示出摄像头采集的内容。这个测试是用来测试你的摄像头对ARToolKit视频模块和图形模块的支持。(如果没有摄像头可以下载一个虚拟摄像头做简单的实验,推荐小懒猫特效视频模拟虚拟摄像头,如果打开videoTest.exe,结果是一闪即逝,说明摄像头设置不对。)
5、一个简单例子
当ARToolKit正常安装后,在【bin\】目录下名为simpleLite.exe的程序,可以进一步展示ARToolKit的功能。不过,你需要把Patthiro.pdf中的标志物打印出来,或者自己做一些标志物(下面介绍)。为了获得更好的效果,最好把它粘贴在一张平硬卡片上。双击打开simpleLite.exe的程序,可以看见在摄像头屏幕上,标志物上面出现OpenGL绘制出的虚拟物体(如图所示)。
注:我直接利用Acrobat在屏幕上打开Patthiro.pdf,挪动摄像头,也可以完成上述工作,出现一个彩色的立方块。下面是自己的现实效果。
6、制作标志物
可以用Photoshop或Windows自带的画笔工具,绘制如图所示的标志物(外黑色厚框加中间文字或图形,不要对称图形)。接着,使用【bin\】目录下名为mk_patt.exe的程序,制作标志物。它会先以命令行窗口提示输入标识名,先按“回车键”,接着会弹出摄像头参数设置,选“确定”。当摄像头把做的标志物显示在摄像头范围内,当左上角为红色框,右下角为绿色框时,稳定后,用鼠标点击摄像头窗口,图像锁定,此时切换回命令行窗口,输入名为“patt.Hiro”之后回车,就会在【bin\】目录下生成一个patt.Hiro文件。把这个文件拷贝到【bin\data\】目录下,这样就可以用自己做的标志物进行各个程序(如果自己的标志物与所带程序使用的标志物名patt.Hiro不同,则需要对程序相应位置进行修改)。
注:去打印店打印好上述标志后,得到的叠加结果。
但测试发现,是比较脆弱的。
需要改进是必须的。
7、进行程序
一个一个程序研究……慢慢就会了(我也还在学习) |