超像素
ISAAC教程合集地址: https://blog.csdn.net/kunhe0512/category_12163211.html
超像素是一组外观相似的相连像素。 超像素分割将图像分成数百个不重叠的超像素(而不是数千或数百万个单独的像素)。通过使用超像素,您可以在更有意义的区域上计算特征,并且可以减少用于使用算法的输入实体的数量。
可以根据颜色和纹理等视觉外观计算超像素。 此外,当深度数据 (RGB-D) 可用时,法线和深度可用于创建更好的超像素分割。
有许多不同的复杂性和性能不同的超像素算法。 Isaac SDK 为 RGB-D 图像提供了一个 GPU 友好的超像素实现。 该算法在 GPU 上并行计算像素-超像素关联。
下图描述了从相机输入到超像素分割的流程。 左边是颜色和深度输入图像。 首先计算 3D 点、法线和位于例如边缘上的无效像素的掩码。 超像素算法然后计算像素-超像素亲和图,这些图被集成到右侧所示的最终超像素分割中。
上面的示例图像取自作为以下论文的一部分发布的数据集:大规模分层多视图 RGB-D 对象数据集,Kevin Lai、Liefeng Bo、Xiaofeng Ren 和 Dieter Fox,在 IEEE 机器人国际会议上 与自动化 (ICRA),2011 年 5 月。
要试用超像素,您可以使用以下命令运行 image_superpixels 示例应用程序:
bob@desktop:~/isaac/sdk$ bazel run //packages/superpixels/apps:image_superpixels
该应用程序在单个测试图像上运行超像素算法,并在 Sight 中显示结果。 加载 localhost:3000 以启动 WebSight 并查看结果。
live_superpixels 示例应用程序从实时摄像头源计算超像素。 使用以下命令运行应用程序:
bob@desktop:~/isaac/sdk$ bazel run //packages/superpixels/apps:live_superpixels
此示例应用程序需要一个 RGB-D 相机。 它默认设置为使用 Intel Realsense 摄像头。
请注意,基于 RGB-D 的超像素算法依赖于合理的深度数据。 如果像素具有无效的深度值,则算法不会将其用于分割。 未使用的像素在示例应用程序的结果中标记为黑色。 此外,具有大深度值的像素也被排除在分割之外,以避免非常嘈杂的超像素。 通过调整 DepthEdges 组件的 max_depth 参数,可以通过配置文件更改此参数。
更多精彩内容:
https://www.nvidia.cn/gtc-global/?ncid=ref-dev-876561