- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
有人有关于为 Android 构建点云库 (PCL) 的说明吗?我发现了一些声称能够构建 PCL 及其依赖项的 PCL super 构建。我尝试了 http://www.hirotakaster.com/weblog/how-to-build-pcl-for-android-memo/ 的 super 构建.我使用的是 Ubuntu 14.10、Android 19、NDK r10d 和 PCL 1.6.0,但我愿意使用任何版本。我也在使用终端进行编译。对于 Android 硬件,我使用的是 Project Tango。
我尝试使用 android-cmake ( http://code.google.com/p/android-cmake/ ),但我不确定如何构建合适的工具链。我不断收到错误消息“在 NDK 中找不到任何可用的工具链。可能您的 Android NDK 已损坏。”我也用普通的 cmake 和 ccmake 得到这个错误。
有没有人有任何关于为 Android 构建 PCL 的详细说明(例如,bash 脚本或终端说明)?或者,有人有预建库的链接吗?
最佳答案
(注意买者:这不是一个长期的解决方案)
我能够通过编辑 cmake 文件来克服 CMAKE 错误
pcl-superbuild/toolchains/toolchain-android.cmake
这两个更改应该可以解决上述错误:
set( ANDROID_NDK_HOST_SYSTEM_NAME "linux-x86" ) # Line 468
应该是
set( ANDROID_NDK_HOST_SYSTEM_NAME "linux-x86_64" )
这将产生另一个错误,除非您更改以下行(第 1023 行)
if( ANDROID_NDK_RELEASE STRGREATER "r8" ) # r8b
应该是
if( ANDROID_NDK_RELEASE STRGREATER "r10" ) # r8b
第一个更改将 _64 添加到 x86_64。第二个增加了对 r10d 的兼容性。
但这并不能解决所有的错误,因为 BOOST 线程不能很好地与 GCC 4.6+ 一起使用。实现此链接 (https://svn.boost.org/trac/boost/ticket/6165) 中显示的补丁。
同样,这仍然不能解决所有错误。 (我还没弄清楚为什么需要这个,math.h 不应该需要 std::)。在文件中,
pcl-superbuild/CMakeExternals/Source/pcl/common/include/pcl/pcl_macros.h
编辑第 99-102 行:
# define pcl_isnan(x) isnan(x)
# define pcl_isfinite(x) isfinite(x)
# define pcl_isinf(x) isinf(x)
它们应该是:
# define pcl_isnan(x) std::isnan(x)
# define pcl_isfinite(x) std::isfinite(x)
# define pcl_isinf(x) std::isinf(x)
PCL 仍然会生成许多警告,但至少它可以编译(到目前为止)
**编辑:**
这不会让你一路走下去(不幸的是)因为 boost 库不能很好地与 C++11 一起玩。
要解决此问题,请从 http://sourceforge.net/projects/boost/files/boost/1.55.0/ 下载 boost 1.55 , 并覆盖 boost 目录
pcl-superbuild/CMakeExternals/Source/boost/boost_1_45_0
(该目录在您第一次运行 make 时创建)。
接下来修改
pcl-superbuild/CMakeExternals/Source/boost/CMakeLists.txt
并找到这一行:
文件(GLOB lib_srcs ${boost_root}/libs/filesystem/v2/src/*.cpp)
替换为
文件(GLOB lib_srcs ${boost_root}/libs/filesystem/src/*.cpp)
这就是我所得到的
关于android - 为 Android 构建 PCL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29266543/
我想在可移植的 C# 类中实现这个逻辑: static JsonWebToken() { HashAlgorithms = new Dictionary>
我有一个线程可以在处理点云时将其可视化。我还需要可视化法线,我该如何更新它们? 我找不到像普通云的 updateClouds 这样的东西。 void pclVisualizerThread::oper
下面的函数没有产生结果。换句话说,点云中的点数与降采样前完全相同。我尝试了从 0.01 一直到您在下面看到的那些不同的叶子大小数字,但它们都产生相同的结果。我不得不对从 pcl::PointCloud
我是 PCL 的新手。我正在使用 PCL 库,我正在寻找一种从点云中提取点或将特定点复制到新点的方法。我想验证每个点是否符合条件,我想获得一个只有好的点的点云。谢谢! 最佳答案 使用 ExtractI
我更新到了最新版本的 Xamarin,其中“完全支持”PCL。我现在如何使用 Azure 移动服务? 如果我创建 PCL 库并尝试使用 NuGet 添加它,则无法安装“Newtonsoft.Json
创建 C# Xamarin Forms 应用 添加 C# PCL 添加 F# PCL 尝试添加从 C# PCL 到 F# PCL 的引用 -> 在引用对话框中您将看到:不兼容的框架定义::NETFra
我现在正在使用一些 Laserscans,并希望在 C++ 中对 PointClouds 进行下采样。我在构建过程中遇到了一个奇怪的问题,我认为在我尝试编译代码时的库链接过程中。这里是问题似乎来自的最
我想知道这是否可能。我有一个功能: pcl::PointCloud createPointCloud(std::Vector input) 返回一个点云。我想知道是否可以获取这个点云,并制作一个指向
我正在尝试使用点云库提供的 RANSAC 方法估计通过点云点的线。我可以创建对象,并毫无问题地估计线模型,如下所示: pcl::PointCloud::ConstPtr source_cloud(ne
正在尝试使用 PCL为 mvvmcross使用 Profile 78 的 TPL (关于问题 TPL on PCL of mvvmcross) 上 iOS项目正在运行,但不适用于 android .
我使用以下命令安装了 PCL。 sudo add-apt-repository ppa:v-launchpad-jochen-sprickerhof-de/pcl sudo apt-get updat
PCL库中是否有任何函数可以保存pcl::PointCloud可以用Meshlab打开的XYZRGB格式的点云? 好像pcl::io::savePCDFileASCII (filename, clou
我正在尝试使用 PortableRest从 Xamarin Forms 对 Web API 2.2 Rest 服务进行异步调用。 我想我遇到了某种死锁/同步上下文问题,但我无法解决(新手到异步等)。
我正尝试在 C++ 中运行以下命令: #include #include "pcl/pcl_base.h" #include "pcl/PointIndices.h" #include "pcl/c
在 .NET 标准 PCL 项目中,我想引用一个针对配置文件 111 (lib\portable-win8+net45+wpa81+MonoAndroid+Xamarin.iOS10) 的私有(pri
我想使用 PCL 加载点云数据。我可以在教程中正确加载示例数据,但是当我尝试使用我的数据时,pcd 文件的值被更改为非常小的值。 终端输出图像 实际值类似于 3603538.71629,但当 PCL
我在创建 F# 可移植项目时遇到问题,该项目应该从 C# 可移植项目中引用。添加此类引用时,会出现以下消息: Unable to add a reference to 'PortableLibrary
操作系统:Ubuntu20.04 PCL信息: Package: libpcl-dev Version: 1.10.0+dfsg-5ubuntu1 Priority: extra Section: u
我想删除 SQLite.Net-PCL打包并想使用sqlite-net-pcl因为我后来发现SQLite.Net-PCL官方没有维护。 我的 Xamarin 项目中有一些表将 GUID 存储为字符串类
我有一些代码如下所示: typedef pcl::PointXYZRGB pcl_ColorPointType; typedef pcl::PointXYZ pcl_PointType; typede
我是一名优秀的程序员,十分优秀!