linux(ubuntu 64位)下,配置ARToolKit,用usb网络摄像头来实现
提示:在配置时遇到问题时,千万要心平气和,把它当作人生中必须克服的难题对待,要有坚韧不拔的毅力和细致入微的品质,在阅读每一个相关的教程时,并判断它有用后,不要流于字面的形式,一定要一字一字去读,仔细琢磨,方能发现其中蕴含的道理和方法。查找问题时,一定要对症下药,对于特别棘手的问题时,要果断用google,看外文贴,仔细看。首先,在ARToolKit官网,有它的安装流程即
提示:在配置时遇到问题时,千万要心平气和,把它当作人生中必须克服的难题对待,要有坚韧不拔的毅力和细致入微的品质,在阅读每一个相关的教程时,并判断它有用后,不要流于字面的形式,一定要一字一字去读,仔细琢磨,方能发现其中蕴含的道理和方法。
查找问题时,一定要对症下药,对于特别棘手的问题时,要果断用google,看外文贴,仔细看。
首先,在ARToolKit官网,有它的安装流程 即 1. 先配置opengl和glut 然后2. 安装视频库(V4L或GStreamer)3 .可选安装openvrml 4.安装ARToolKit
前面三步,用apt-get都挺好安装的,关键是第4步,即解压ARToolkit后,进行./Configure和make时,会出些问题,导致bin下面的simpleTest不可运行
主要过程如下:
进入ARToolkit解压文件后,终端输入./Configure会让你选择那种视频流,这里要试你连接的是那种摄像头而定,如果是usb摄像头,一般会有两种选择,1 V4L 和5Gstreamer。
官网上会让你选择1,然后后面的问题借来了
在make的时候会出现 在lib/SRC/ VideoLinux4L 里vedio.c出现 找不到LinuxV4L.h头文件, 这是因为, 你在安装视频库时 用的是V4L,因此网上会有一些修改方案:
http://tech.enekochan.com/en/2012/05/21/install-artoolkit-2-72-1-in-ubuntu-11-10-and-12-04/
让你将头文件改一下即可。 然后编译成功, 在进行test测试时,会提示:
Novideo config string supplied, using defaults. ioctl failed
这主要是因为视频输入输出流失败,这个在你的摄像头已经成功打开后才会提示
这主要是因为 视频流的配置文件ARTOOLKIT_CONFIG
错误,
原因是
你之前在
./Configure
的时候选择了
V4L
那个选项,
而它的配置格式和默认的配置格式不同,网上主流的配置格式为:
"ARTOOLKIT_CONFIG=v4l2srcdevice=/dev/video0 use-fixed-fps=false ! ffmpegcolorspace !capsfilter caps=video/x-raw-rgb,bpp=24 ! identity name=artoolkit !Fakesink"
而该主流的配置格式,
是针对
GStreamer
的,
我在网上找了办天也没有
V4L
的配置格式例子,
在
http://www.artoolworks.com/support/library/Configuring_video_capture_in_ARToolKit_Professional#AR_VIDEO_DEVICE_V4L
里虽然贴出了各个视频流的配置格式,但是没有例子,
我试了几种配置方法,
均告失败,
因此果断放弃
于是,在
./Configure
里选择
5
即
GStreamer
如果你没有安装
GStreamer
,命令行会提示, 然后你网上查一下,安装好即可。
然后,果断
makeclean(
清除上一步
make
失败时的残留文件
)
,然后
make
,它也会提示错误, 这个错误的解决方式,参考
http://tech.enekochan.com/en/2012/05/21/install-artoolkit-2-72-1-in-ubuntu-11-10-and-12-04/ 即可,它的修改地方,在
Configure
文件里,用查找方式找到修改的地方,添加相应内容即可。
然后,就是重新,
./Configure
,
make clean, make
一路上就不会有错误了,
然后,进入
bin
下,运行
simpleTest
即可在终端出现:
Usingsupplied video config string [v4l2src device=/dev/video0use-fixed-fps=false ! ffmpegcolorspace ! capsfiltercaps=video/x-raw-rgb,bpp=24,width=320,height=240 ! identityname=artoolkit ! fakesink].
libARvideo:GStreamer 0.10.36
libARvideo:GStreamer pipeline is PAUSED!
libARvideo:GStreamer negotiated 320x240
libARvideo:GStreamer pipeline is PLAYING!
libARvideo:GStreamer pipeline is PAUSED!
Imagesize (x,y) = (320,240)
***Camera Parameter ***
--------------------------------------
SIZE= 320, 240
Distortionfactor = 159.250000 131.750000 104.800000 1.012757
350.475740.00000 158.25000 0.00000
0.00000363.04709 120.75000 0.00000
0.000000.00000 1.00000 0.00000
--------------------------------------
libARvideo:GStreamer pipeline is PLAYING!
]
祝你成功!
更多推荐
所有评论(0)