PCL学习(二)

PCL打印语言初步了解 一、 概述。这一章节简单描述PCL语言的来源、演变,以及它的功能和目的。打印基础知识。这一章节介绍打印开发所需要的基础知识,专 阅读详情

            今天听到“噩耗”——mo要从实验室走了,他的活儿从下周开始由我接手,这意味着从今天开始,我终于正式搭上了经验机器人小组的末班车(喜悦?困顿?复杂。。。囧)。废话还是不多说,作为刚起飞的菜鸟,还是把最近学习PCL的一点点方法心得记录下来。

        要感谢heresy做的前期工作,原博文请参见如下地址:

        http://viml.nchc.org.tw/blog/paper_info.php?CLASS_ID=1&SUB_ID=1&PAPER_ID=217

        自己整合了一下,再加上pcd_write.cpp的范例,就很容易地利用openNI+PCL+Kinect得到了一个记录三维点云坐标的pcd文件;然后仿用simple_cloud_visualization范例将记录在pcd文件中的点云进行显示,搭积木般的,就容易地实现了从读取点云到显示点云的功能。下面这张图是对老板办公室那边的墙进行扫描3分钟后重建出来的三维图:

初步能看的出来是一堵墙上有一扇门的雏形吧,中间黑下去的一大块,猜想可能跟那地方是玻璃材质的挡板有关(光斑出现了散射),下次把颜色信息也加上去,期待能有更好的演示效果。这些,不是重点,码这篇博文主要是想说明下面的问题。

       在把simple_cloud_visualization.cpp对应的工程文件下面,按一贯的PCL项目配置方法把对应的include,lib路径,依赖库项目等一一配置完以后,debug,依旧会出现下面的错误:

这里要说明的是,在VS中对于error LNK之类的错误,只能说明程序编译已算通过,但运行时出现了问题,如下:

解析上面的语句:说明是打包好vtkRendering-gd静态库在运行时(它在编译前,里面应该对应着有一个叫做vtkOpenGLGlyph3DMapper的obj对象),无法找到以__imp__glCallList@4接口命名而实现的某函数。google!!发现它是OpenGL中定义的一个东东!(这里不得不说,window真是讨厌,明明之前我似乎有把该有的gl库放进系统自带库路径下面了,现在工程运行时却找不到对应的库,不知道是我配置出了错还是其他原因?)这个问题先放下。无奈,自己从网上下了一个不到500K的opengl95.exe(话说这个虽然版本低,但小巧强大,总比微软不更新windows自带的gl时不时引诱你用directX的好),打开安装到一个文件夹里面,然后把这个文件夹的路径添加到属性—链接器—常规—附加库目录,再把GLU32.LIB,OPENGL32.LIB,GLAUX.LIB添加到输入—附加依赖项里面,再次debug,编译通过!

        PS:安装PCL—win7版本时,会自动加载boost等第三方库,这是便利程序的平台移植而辅助添加的C++准标准库。但有时程序运行会报错,会出现某某(如:time_t)等不是std里的成员等,不是using某命名空间等错误,严重的,直接找不到某变量命名来源。而且,相同或相似名称但内容实现不同的io.h,time.h等文件在\pcl\common和\pcl\visualization\common,\3rdParty\Boost\include和\Microsoft Visual Studio 10.0\VC\include等不同第三方文件夹下都有定义,具体用到哪个视程序而定,万不可在包含文件中胡乱添加。一般情况下,在包含目录下把\PCL 1.3.0\include\pcl-1.3的include进去,就基本可以了。

PCL学习系列:在Windows系统上安装PCL(Point Cloud Library) 本文详细介绍了在 Windows 系统上安装和配置 Point Cloud Library (PCL) 的步骤,涵盖了从下载、安装到使用 CMake 和 Visual Studio 编译 PCL 项目的全过程。本教程旨在帮助开发者和研究人员在 Windows 平台上快速部署 PCL,有效解决安装和编译中可能遇到的问题。 阅读详情

相关推荐

PCL学习笔记

由此可见,初始版本的kd-tree只不过是一些参数的设置,最为关键的两个搜索函数是纯虚的。重载函数是函数的一种特殊情况,为方便使用,C++允许在同一范围中声明几个功能类似的同名函数,但是这些同名函数的。版本一接受点云,查询点在点云中的index,k,输出k近邻在点云中的indices,与这些点的平方距离。得到将origin转化为(0,0,0)的变换,并将Z轴旋转成(0,0,1)和Y方向(0,1,0)获得唯一 的3D旋转,将Z轴旋转成(0,0,1)Y轴旋转成(0,1,0)并且两个轴是正交的。

weixin_45295333的博客 697

Wince 打印 Pcl3 5语言大全

PCL语言能够进一步提高打印质量,通常在中高端打印机产品中才会出现,是决定打印机输出复杂版面能力的重要指标。 PCL语言 正是Adobe公司的对PostScript语言的收费方式,给HP公司的PCL( Printer CommandLanguage,打印机控制语言)语言提供了发展空间,PCL语言是HP公司于70年代针对其打印机产品推出的一种打印机页面描述语言。HP公司的市场策略与Adobe完全不同,其他厂商可以在他们的打印机产品中自由模仿或使用PCL语言。正是PCL语言的开放性,降低了使用PCL语言打印机产品的成本,从而使其在打印机产品中的普及程度远远高于PostScript语言PCL语言最初也是为点阵打印机设计的,PCL3是第一个得到广泛应用的版本,但它只支持一些简单的打印任务。PCL4虽然还只能应用在个人打印机中,但增加了对图形打印的支持,但由于解释工作比较简单,PCL4比后期的PCL5和PCL6对打印控制器的要求要低很多。 PCL5是HP公司为它的激光打印机LaserJetⅢ设计的,它提供了一些与PostScript语言相似的功能,开始支持矢量字库和矢量图形描述,实现了WYSIWYG(What You See Is What You Get, 所见即所得)PCL5中也使用了各种压缩技术来减小数据量,加快数据传输。 PCL5e开始支持双向数据通讯,从而使打印机可以向计算机发送打印机的状态信息。PCL5c增加了对彩色打印的支持。 1996年HP公司发布了PCL6,它更加灵活,是一个目标朝向的控制语言,使处理多图形的文件的速度大大加快,实现了更好的WYSIWYG,可以更好地处理Web页面。 两种语言的比较 1.PostScript和PCL两者的工作流程都是首先在计算机的一端将打印内容解释成标准的页面描述文件,这种文件可以被所有采用这种语言打印机所识别,传送到打印机的核心——控制器中,然后在打印机控制器中将页面描述文件解释成可以打印的图像。从工作流程的角度看,采用这两种语言打印方式对打印机的“大脑”要求较高,需要打印机能够自己独立处理转换的任务,并且需要打印机本身有足够的内存。 2.PostScript和PCL都具备了标准化和与设备无关性的优势,对计算机系统资源占用也较少,两种语言的高版本还提高了对字库、图形和图像的解释能力,对于提供了高打印质量的产品,大都采用了此两类语言。但相对来说,由于对打印机核心部分——打印控制器性能的要求较高,一定程度会增加机器成本,尤其是PostScript对打印控制器的性能更高。 3.经过对多款使用PCL语言和PostScript语言的黑白和彩色激光打印机进行测试。发现,使用PCL语言打印机在处理文本或一些常见办公应用软件下的文档时具有非常明显的速度优势,在这些应用下,在打印质量方面与使用PostScript语言打印机也没有差距。使用PostScript语言打印机在常见办公应用下的打印速度要慢一些,但在处理PDF文件或在Photoshop等软件下打印大的图形图像文件时具有一定的速度优势,同时其在图形表现准确度、色彩表现准确度和一些字库表现准确度方面也比PCL语言有优势。所以PCL语言比较适合一些普通的商务办公应用,而PostScript语言更加适合对图形和色彩准确度要求比较高的专业应用。这也是目前许多打印机产品同时提供PCL和PostScript两个版本的驱动的一个重要原因。 其他相关 其他要说的一点是关于选配打印语言的问题,打印语言有标配和选配两种:所谓标配是把打印语言解释成一段程序,加载在打印机主控芯片程序里面,从主机过来的打印语言格式数据流直接在此芯片中解释成机芯所能识别和控制的视频数据。而选配则是把打印语言解释器做成了一个相对独立的硬件,插于打印机控制器中预留的解释器插槽中。相对于标配,选配的数据读取速度较慢,数据精确度较低。厂商采取选配打印语言的策略就是为了降低打印机的成本,一般的用户用其自带的打印语言就可以完成相应的工作了,但如果有用户需要其的打印语言,那选购打印语言模块后直接插在打印机上就可以了。

PCL学习笔记(

PCL学习笔记()一、点云搜索与压缩1、KD-treeK近邻搜索kd-tree半径搜索2、八叉树体素最近邻搜索k近邻搜索半径内最近邻搜索点云压缩 一、点云搜索与压缩 1、KD-tree KD-tree是一种面向k(k≥2)维空间点数据组织的叉树结构。在树的根部,所有子项都将根据第一维进行拆分(即,如果第一维坐标小于根,则它将在左子树中;如果大于根,则显然会在 右边的子树)。 树中向下的每个级别都在下一个维度上划分,一旦所有其他级别都用尽后,将返回到第一个维度。 构造k-d树的最有效方法是使用一种分区方

Lcl_huolitianji的博客 1016

bmp 转换为pcl(hp 打印机控制语言

可以将bmp文件转换为pcl格式,传送给打印机直接打印出来

打印语言 PCL

PCL目前比较流行的是点云[point cloud language]的缩写,由于前两年ADAS的兴起,激光雷达和毫米波雷达得到很大的发展,点云就是点阵雷达发展的副产物,相对来说不需要路面驾驶这么高的实时性。 好了,我找了半天,总算找到正主,Printer Command Language (PCL)的开发文档。我找到了 pcl_xl_2_0_technical_reference_rev2_2....

True Truth 3596

PCL 打印语言 介绍

PCL:(Printing Control Language)是惠普公司的一种页面描述语言,它要在Windows操作环境下,将Windows的位图格式转换成PCL格式的代码,这样打印机接收后由CPU解释并执行打印打印语言:激光打印打印语言是控制打印工作的命令,它告诉打印机如何组织被打印的文档,在打印语言的控制下,从计算机传来的打印数据被转化成可供打印的文字和图像,

changyanmanman的专栏 7985

激光打印PCL 技术的深入解析

首先,PCL 的语法和指令集在不同的打印机厂商之间可能有所差异,因此在使用 PCL 时需要查阅打印机的技术文档以确保正确的指令和参数。其次,PCL 的功能相对有限,无法满足一些高级打印需求,如复杂的图像处理和复杂的页面布局。需要注意的是,不同的打印机厂商可能对 PCL 的语法和指令集有所差异。此外,PCL 的功能相对有限,无法满足一些高级打印需求,如复杂的图像处理和复杂的页面布局。通过使用不同的指令序列,我们可以实现更多的功能,例如控制打印分辨率、打印多页文档、设置打印模式等等。

LdjyHtml的博客 1643

PCL学习PCL基础应用教程

PCL学习PCL基础应用教程

qq_42994487的博客 6517

PCL学习笔记():PCL官方教程学习

PCL学习笔记():PCL官方教程学习PCD文件制作Features表面法线提取Keypoints提取NARF关键点KdTreeRange ImageHow to create a range image from a point cloudHow to extract borders from range images 本节学习PCL的官方文档教程,记录学习过程 PCD文件制作 在gazebo中建立仿真环境,通过Realsense获取点云,保存为PCD文件,一个是走廊path_corner.pcd,一

Sakurazzy的博客 6449

PCL XL Feature Reference Protocol Class 1.1 r1.0.pdf

PCL XL1.1规范,PCL XL Feature Reference Protocol Class 1.1 r1.0.pdf

Samsung(三星)通用打印驱动PCL6打印语言v2.50.03.00:06版

Samsung三星通用打印驱动PCL6打印语言2.50.03.00:06版For Win2000/WinXP-32/WinXP-64/2003/2008/Vista-32/Vista-64/Win7-32/Win7-64/Win8-32/Win8-64(2013年8月5日发布) 本驱动程序为三星通用打印驱动PCL6打印语言2.50.03.00:06版,支持众多型号,可以方便的使用你的三星打印机。

DocuCentre SC2020-pcl6.exe

富士施乐sc2020打印机驱动,适配北京书生电子技术有限公司的电子库打印。当统一业务系统出现打印黑白,打印机选择了彩色打印,还是打印黑白,就把打印机驱动更换为pcl6的驱动

PCL学习笔记:Registration (ICP算法)

PCL Registration API Registration:不断调整,把不同角度的3D点数据整合到一个完整的模型中。 它的目的在于在一个全局坐标系下找到不同视角的定位与定向(两个视角交叉部分重叠完好为最优)。这就是KinectFusion论文中所提到的ICP( Iterative Closest Point )算法。给定输入数据集,首先做一个估计,然后通过旋转和平移变换一个数据集,找到

TODAY WAS A GOOD DAY 7万+

3D点云之PCL学习之路()

VTK的基本知识(1)

bcgr0411的博客 583

PCL学习

一、上周问题解决 1.1 cmake使用中的问题解决。 上一周中,使用MinGW对cpp文件进行了编译输出,但是无法更好的编译pcl文 件,上周使用的是pcl1.8.1和cmake3.17.0-rc1版本进行cmake编译,原本以 为是pcl1.8.1版本中缺少了FindBoost.cmake、FindFLANN.cmake等文件, 所以我将其换成了pcl1.9.0版本,这下文件是有了,可是还是编...

longer88888的博客 1522

PCL学习 () (点云滤波)

PCL学习(点云滤波)

qq_43748750的博客 2224

ROS/PCL学习笔记()

一、Ubuntu中直接CMake代码 由于《PCL点云库从入门到精通》配套代码只有C++语言,不能直接用于ROS平台,遂可先在Ubuntu中编译学习。 在source文件夹(含有cpp,CMake,pcd)中新建文件夹build:cd source/;mkdir build/ 编译source文件夹中的cpp代码:cd build/; cmake .. 生成可执行文件:make 运行可执行文件:...

小镇的博客 643
上一篇: PCL学习(一)
下一篇: PCL学习(三)
cnanlmlin
博客等级 码龄17年 86粉丝 22原创
评论 9
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值