SZY_521 2024-04-12 15:33 采纳率: 0%
浏览 11
已结题

[pcl::PLYWriter::writeASCII] Error during opening (?鶂?)!

 pcl::io::savePLYFileASCII("C:\\VS2022\\4.ply", *cloud);  // //将点云数据保存为ply文件

[pcl::PLYWriter::writeASCII] Error during opening (?鶂?)!
[ INFO:0@3.158] global registry.impl.hpp:114 cv::highgui_backend::UIBackendRegistry::UIBackendRegistry UI: Enabled backends(4, sorted by priority): GTK(1000); GTK3(990); GTK2(980); WIN32(970) + BUILTIN(WIN32UI)
[ INFO:0@3.159] global plugin_loader.impl.hpp:67 cv::plugin::impl::DynamicLib::libraryLoad load C:\opencv\build\x64\vc16\bin\opencv_highgui_gtk490_64.dll => FAILED
[ INFO:0@3.160] global plugin_loader.impl.hpp:67 cv::plugin::impl::DynamicLib::libraryLoad load opencv_highgui_gtk490_64.dll => FAILED
[ INFO:0@3.160] global plugin_loader.impl.hpp:67 cv::plugin::impl::DynamicLib::libraryLoad load C:\opencv\build\x64\vc16\bin\opencv_highgui_gtk3490_64.dll => FAILED
[ INFO:0@3.161] global plugin_loader.impl.hpp:67 cv::plugin::impl::DynamicLib::libraryLoad load opencv_highgui_gtk3490_64.dll => FAILED
[ INFO:0@3.162] global plugin_loader.impl.hpp:67 cv::plugin::impl::DynamicLib::libraryLoad load C:\opencv\build\x64\vc16\bin\opencv_highgui_gtk2490_64.dll => FAILED
[ INFO:0@3.163] global plugin_loader.impl.hpp:67 cv::plugin::impl::DynamicLib::libraryLoad load opencv_highgui_gtk2490_64.dll => FAILED
[ INFO:0@3.163] global backend.cpp:90 cv::highgui_backend::createUIBackend UI: using backend: WIN32 (priority=970)
使用azure Kinect dk 相机获取彩色图和深度图,用pcl库1.14.0生成点云时出现的错误,请大家指点一下

  • 写回答

24条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-04-12 15:33
    关注
    获得0.45元问题酬金

    引自免费微信小程序:皆我百晓生

    针对您在使用Azure Kinect DK相机获取彩色图和深度图后,使用PCL库(版本1.14.0)生成点云时遇到的错误,以及OpenCV库加载动态链接库失败的相关信息,以下是详细的分析与解决建议:

    错误分析:

    1. PCL PLYWriter错误: 错误消息提示[pcl::PLYWriter::writeASCII] Error during opening (?鶂?)!,这表示PCL在尝试以ASCII格式写入PLY文件时遇到了问题。错误中的“?鶂?”可能是路径或文件名中的非法字符或编码问题导致的显示异常。

    2. OpenCV库加载失败: 从OpenCV的日志可以看出,它试图加载不同版本的GTK后端库(GTK、GTK3、GTK2),但均未成功。最终,OpenCV选择了优先级较低的WIN32后端作为UI界面。这些日志信息虽然与PCL错误并非直接相关,但可能会影响您的程序其他部分,特别是涉及GUI交互的部分。

    解决建议:

    针对PCL PLYWriter错误:

    步骤1:检查文件路径与名称: 确保指定的PLY文件路径与名称没有非法字符或编码问题。在您的代码片段中:

    pcl::io::savePLYFileASCII("C:\\VS2022\\4.ply", *cloud);
    

    路径C:\\VS2022\\4.ply看似没有明显问题,但建议您检查实际路径是否存在,且文件名中不含特殊字符或非英文字符。如果问题依然存在,尝试简化路径,例如保存到桌面或其他路径简单的位置,或更改文件名为纯英文字符。

    步骤2:检查点云数据有效性: 确认*cloud所指向的点云数据是否有效,即不为空且包含正确的点云信息。如果点云数据有问题,PCL在写入文件时也会抛出错误。

    针对OpenCV库加载失败:

    步骤1:检查OpenCV配置与依赖: 如果您不需要使用OpenCV的GUI功能(如imshow等),可以忽略这些加载失败的信息。如果您确实需要GUI支持,确保已正确安装了OpenCV所需的GTK相关库,并将其添加到系统环境变量(如PATH)中,以便OpenCV能够找到并加载它们。

    步骤2:调整OpenCV配置: 如果您不打算使用GTK后端,可以在编译OpenCV时禁用GTK支持,只保留必要的后端(如WIN32)。或者,根据您的需求,调整OpenCV的后端优先级设置,确保首选后端能正常工作。

    总结起来,首先聚焦于PCL PLYWriter的错误,通过检查并修正文件路径与名称、验证点云数据的有效性来解决。对于OpenCV库加载失败的问题,根据实际需求,检查OpenCV配置与依赖、调整OpenCV后端设置。这两个方面分别处理后,应该能解决您当前面临的问题。

    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 4月20日
  • 创建了问题 4月12日

悬赏问题

  • ¥15 在获取boss直聘的聊天的时候只能获取到前40条聊天数据
  • ¥20 关于URL获取的参数,无法执行二选一查询
  • ¥15 液位控制,当液位超过高限时常开触点59闭合,直到液位低于低限时,断开
  • ¥15 marlin编译错误,如何解决?
  • ¥15 有偿四位数,节约算法和扫描算法
  • ¥15 VUE项目怎么运行,系统打不开
  • ¥50 pointpillars等目标检测算法怎么融合注意力机制
  • ¥20 Vs code Mac系统 PHP Debug调试环境配置
  • ¥60 大一项目课,微信小程序
  • ¥15 求视频摘要youtube和ovp数据集