您的位置:首页 > 运维架构

拥抱开源 vs2010 openni kinect pcl1.6 win8 64 驱动安装 等问题汇

2015-02-02 11:16 417 查看


openni 1 和2 kinect1 2 pcl1.6 1.7 win8 64 vs2010 2012 kinect sdk2.0 1.0 cmake 3.1 2.8

安装这几个软件,我至少走了一个月的时间,中间也有忙些其他的,为啥呢,安装pcl时,电脑上已经安装过kinec1.0 2.0 的驱动,也玩过一段时间。
后来发现做三维,大都在pcl ,opnni,这些都是开源的,我素来是崇拜开源软件的,这样就对Kinect for Windows SDK更加想舍弃,但老板却一心让我们用kinect设备,也不买进xtion,。这中间安装的过程有的时候是感觉挺顺的,但走到某一步不知不觉又卡主了。这样呢,就产生了这样的想法,虽崇拜开源,但封闭软件也不能一棒子打死,开源软件虽好,但安装尤其好几个软一起按章时,就要想到版本相互兼容问题,安装步骤也没有vs的便捷,问题也也闭源的多。

另外还有个cmake。如果对pcl库的独立配置vs2010 很繁琐,不像opencv配置 就用了cmake,但cmake也不是一帆风顺。
main函数的两个参数也是让我头疼,

废话不多讲,总结下我的一路安装历程

所有的步骤都严谨的按下面步骤,但首先我吧把openi sdk pcl全都卸的干干净净,,刮骨疗伤,,

问题一 vs2010是多少位的,以前下软件也没注意有区分啊,因为以前都是按系统来的 64的 (PS:说实在的,64位系统的真是破玩意,按软件真没32那么方便,你虽64机子,但你的软件是32的,这一点让我不少折腾)
http://wenku.baidu.com/link?url=9dpuubqz-Tzm9ZirK4p9lPZFfBpF-1B8V6Rhy4c9WWHKfsEZQ8aYp55tSz79g7gbmlEhPcpIstLCUd9RaM-C3N56k5gayuxGLeNH-j0cY9m

1
、首先明确,本机安装的
VS2010

32
位的,因此应该安装
PCL32
位的相应软件;

2
、关掉
360
安全卫士,否则将会出现很多安装提示;

3
、安装
OpenNI
,必须在
PCL
官网下载的;

4
、安装
PrimerSense
,必须在
PCL
官网下载的;

5
、安装
QT
,必须在
PCL
官网下载的;

6
、安装
PCL1.6.0 all-in-one
,弹出的对话框中选择第三个
for current
user
,随后会提示
OpenNI
已经安装,点击
OK
即可;

8
、解压
PDB
文件,把其中的所有文件复制粘贴到
PCL
安装目录的
bin
文件夹里面;

9
、配置环境变量,
OpenNI
的环境变量已经在安装它时配置好了,
PCL_ROOT
也在
PCL
安装时配置好,
只用在系统变量
Path
后面添加
PCL
第三方库相应地址,本机总的
Path
变量的值如下:

C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Wi
ndows\System32\WindowsPowerShell\v1.0\;
D:\Program Files

(x86)\OpenNI\Bin;%PCL_ROOT%\bin;%PCL_ROOT%\3rdParty\FLAN
N\bin;%PCL_ROOT%\3rdParty\Qhull\bin;
10
、新建工程,从
D:\Program Files (x86)\PCL
1.6.0\share\doc\pcl-1.6\tutorials\sources
中找一个例子来练习,拷贝其

.cpp
文件的内容,到新建的
Win32
控制台工程的“源文件”中;

11

右键单击工程名,
选择属性,

VC++
目录的
“包含目录”

“库
目录”中添加相应的地址,

(x86)
的乱码改成
(x86)
,分别如下:






12
、配置外部依赖项,右键单击工程名,属性—
debug
—链接器—输
入—附加依赖项,添加的附加依赖项如下:

pcl_features_debug.lib
pcl_filters_debug.lib
pcl_visualization_debug.lib
opengl32.lib
pcl_kdtree_debug.lib
pcl_io_debug.lib
pcl_search_debug.lib
pcl_segmentation_debug.lib
pcl_apps_debug.lib
pcl_common_debug.lib
flann_cpp_s-gd.lib
libboost_system-vc100-mt-gd-1_47.lib
libboost_filesystem-vc100-mt-gd-1_47.lib
libboost_thread-vc100-mt-gd-1_47.lib
libboost_date_time-vc100-mt-gd-1_47.lib
libboost_iostreams-vc100-mt-gd-1_47.lib
vtkalglib-gd.lib
vtkCharts-gd.lib
vtkCommon-gd.lib
vtkDICOMParser-gd.lib
vtkexoIIc-gd.lib
vtkexpat-gd.lib
vtkFiltering-gd.lib
vtkfreetype-gd.lib
vtkftgl-gd.lib
vtkGenericFiltering-gd.lib
vtkGeovis-gd.lib
vtkGraphics-gd.lib
vtkhdf5-gd.lib
vtkHybrid-gd.lib
vtkImaging-gd.lib
vtkInfovis-gd.lib
vtkIO-gd.lib
vtkjpeg-gd.lib
vtklibxml2-gd.lib
vtkmetaio-gd.lib
vtkNetCDF-gd.lib
vtkNetCDF_cxx-gd.lib
vtkpng-gd.lib
vtkproj4-gd.lib

vtkRendering-gd.lib
vtksqlite-gd.lib
vtksys-gd.lib
vtktiff-gd.lib
vtkverdict-gd.lib
vtkViews-gd.lib
vtkV
olumeRendering-gd.lib
vtkWidgets-gd.lib
vtkzlib-gd.lib
注意红色字的三个,一般网上的教程中没有。

如果在所有工程属性中配置
11

12
两步的内容,也是可行的,即:
属性管理器—
Debug|Win32
—右键单击
Microsoft.Cpp.Win32.User
—属
性,在里面添加和
11

12
步相应的内容。这样所有现有的和以后新
建的工程在
Debug
模式下运行时,都可以用到
PCL
库,而不用一一
配置它们。

http://wenku.baidu.com/link?url=9dpuubqz-Tzm9ZirK4p9lPZFfBpF-1B8V6Rhy4c9WWHKfsEZQ8aYp55tSz79g7gbmlEhPcpIstLCUd9RaM-C3N56k5gayuxGLeNH-j0cY9m


编译成功,调试,却出现 无法启动改程序,计算机丢失pclxxxlib ,解决如下
http://wenku.baidu.com/link?url=_wttOMgnDDY2v8_rCJfZfIKgNMBOI60WkBH0A_pwJay13GJTl4ju6asPtny2wXlsqtA_2Ygg1wcCW6R8Bh9rqpGoKDcGCHkj57a2lF29XoS

把缺失的都拷贝到工程文件内debug目录下,,word内说设置环境变量,我也设置了,但不行


调试过程中,出现附加依赖库 kinect201lib找不到,当然找不到啦,我都删除了,,解决如下

1、找到修改工程属性对话框:



2、去掉Debug和Release模式中的从父级或项目默认设置继承前面的打钩



3、关闭Visaul Studio,提示保存修改,选是



4、重新启动Visaul Studio,进入.lib的配置界面,发现可以编辑了



5、手动删除,关闭Visul Studio保存修改,再重启Visaul Studio发现删除成功




所有的软件都安装好后,试了openi的提供的exe仍不能执行,看了设备管理器,primesense的驱动显示感叹号。然后就联网自动搜索,说找不到。又找到openi文件夹下的driver目录仍不行,显示 文件的哈希值不在指定的目录


win8.1安装驱动出现“文件的哈希值不在指定的目录”的解决办法[zz]

1.鼠标移到右下角,点击“设置”,再点击“更改电脑设置”

2.点击最后一个“更新和回复”,再点击“恢复”

3.点击“恢复”之后,在右边点击高级启动下面的“重新启动”

4.等一会会出现几个选项,点击“疑难解答”

5.点击高级,启动设置,重启

6.这会重启之后就跳出来安全模式等列表了

7.选择倒数第三个,禁用强制驱动程序签名,对应哪个数字就按那个数字。

8.重启,驱动就可以成功安装了http://www.cnblogs.com/york-hust/p/3844076.html
试验成功。

但是还有一个问题仍没有解决,就是打开exe示例显示时,仍会提示

如何解决openni的“无法定位程序输入点xnLogGwtFileName于动态链接库xxxxxx.dll,?? 连续两个 选择确定后,仍然可以显示 这个问题仍有待解决

现在仍然一个继续的目标,就是用pcl显示点云,,还没成功显示过,
还有就是对pcl1.7.2对vs2012的配置,, 配置呢, 让然要像opencv那样,一次配置,永久使用即可。,,
我想着以后的路线呢 就用pcl1.6 kinect 2010 获取点云,, , vs2012 pcl1.7 处理点云, 重点在处理这款。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐