Vision SDK for Android教程(二)AR navigation (三)Safety alerts

2024-06-08 04:38

本文主要是介绍Vision SDK for Android教程(二)AR navigation (三)Safety alerts,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

AR navigation

Mapbox Vision AR for Android 是在Mapbox Vision SDK for Android基础上的高级框架,Vision AR管理导航路线,转换到核心库,然后在相机上渲染AR导航。

Route line

为了在路上生成轨迹线,首先要产生轨迹线。你可以使用Mapbox Navigation SDK来创建一个对Maobox Directions API来使用导航引擎。如果你想在Android中使用Mapbox Navigation sdk,你需要将其加入到模块中。

下面这个例子在NavigationRoute.Builder类中使用Mapbox Navigation SDK来创建一个Mapbox Directions API。请求是一个NavigationRoute对象,你可以用来在地图上展示轨迹和导航轨迹,通过Route generation guide(https://docs.mapbox.com/android/navigation/overview/route-generation/)来获取 更多信息。

使用VisionArManager's setRoute 方法来在Vision AR View中产生轨迹线。


VisionArManager.setRoute(new Route(getRoutePoints(route),(float) routeProgress.durationRemaining(),"Source street name","Target street name"
));

默认是使用实体蓝线显示轨迹,可以自由定制。用VisionArView.setLaneVisualParams来改变颜色、宽度、线坐标、颜色、氛围颜色。

Safety alerts

开发者可以创建要素用来提醒和警示驾驶者关于道路情况和潜在危害,这是一个增强模块,通过VisionSDK传递的信息进行分析、探测和分类。

Monitor speed limits

开发者可以控制速度限制和其他关键的信号分类,当探测到车辆速度大于上个观测速度,你可以设置报警。

有两方面来展示速度报警:探测速度限制标志和探测当前车速。

Sign detection

VisionSafetyListener来观测速度限制标志来决定用户当前位置的最大限速。决定最大限速是通过探测最大限速标志来更新maxAllowedSpeed的值,直到遇到下一个最大限速值,继续更新。


@Override
public void onRoadRestrictionsUpdated(@NotNull RoadRestrictions roadRestrictions) {maxAllowedSpeed = roadRestrictions.getSpeedLimits().getCar().getMax();
}

然后,你可以用Vision SDK的VehicleLocation类的speed属性来决定速度,再通过一些逻辑来决定用户速度是否超过最大限速并展示报警信息。

// current speed of the car
Float mySpeed = vehicleState.getSpeed();
// display toast with overspeed warning if the car's
// speed is greater than maximum allowed speed
if (mySpeed > maxAllowedSpeed && maxAllowedSpeed > 0) {Toast.makeText(MainActivity.this,"Overspeeding! Current speed : " + mySpeed +", allowed speed : " + maxAllowedSpeed,Toast.LENGTH_LONG).show();
}

可在这个网站:https://docs.mapbox.com/android/vision/examples/speeding-alerts/查看详细信息。

Alert drivers of pedestrians and cyclists

Vision Safety CollisionObject 类用来探测车辆行车路线上物体,并且提供一个预碰撞的范围在0-2之间危险等级CollisionDangerLevel,碰撞检测可以警示驾驶者当行人和骑行者在车辆前进路线。

 

 

这篇关于Vision SDK for Android教程(二)AR navigation (三)Safety alerts的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1041220

相关文章

全网最全Tomcat完全卸载重装教程小结

《全网最全Tomcat完全卸载重装教程小结》windows系统卸载Tomcat重新通过ZIP方式安装Tomcat,优点是灵活可控,适合开发者自定义配置,手动配置环境变量后,可通过命令行快速启动和管理... 目录一、完全卸载Tomcat1. 停止Tomcat服务2. 通过控制面板卸载3. 手动删除残留文件4.

Python的pandas库基础知识超详细教程

《Python的pandas库基础知识超详细教程》Pandas是Python数据处理核心库,提供Series和DataFrame结构,支持CSV/Excel/SQL等数据源导入及清洗、合并、统计等功能... 目录一、配置环境二、序列和数据表2.1 初始化2.2  获取数值2.3 获取索引2.4 索引取内容2

python依赖管理工具UV的安装和使用教程

《python依赖管理工具UV的安装和使用教程》UV是一个用Rust编写的Python包安装和依赖管理工具,比传统工具(如pip)有着更快、更高效的体验,:本文主要介绍python依赖管理工具UV... 目录前言一、命令安装uv二、手动编译安装2.1在archlinux安装uv的依赖工具2.2从github

C#实现SHP文件读取与地图显示的完整教程

《C#实现SHP文件读取与地图显示的完整教程》在地理信息系统(GIS)开发中,SHP文件是一种常见的矢量数据格式,本文将详细介绍如何使用C#读取SHP文件并实现地图显示功能,包括坐标转换、图形渲染、平... 目录概述功能特点核心代码解析1. 文件读取与初始化2. 坐标转换3. 图形绘制4. 地图交互功能缩放

Android实现图片浏览功能的示例详解(附带源码)

《Android实现图片浏览功能的示例详解(附带源码)》在许多应用中,都需要展示图片并支持用户进行浏览,本文主要为大家介绍了如何通过Android实现图片浏览功能,感兴趣的小伙伴可以跟随小编一起学习一... 目录一、项目背景详细介绍二、项目需求详细介绍三、相关技术详细介绍四、实现思路详细介绍五、完整实现代码

在Android中使用WebView在线查看PDF文件的方法示例

《在Android中使用WebView在线查看PDF文件的方法示例》在Android应用开发中,有时我们需要在客户端展示PDF文件,以便用户可以阅读或交互,:本文主要介绍在Android中使用We... 目录简介:1. WebView组件介绍2. 在androidManifest.XML中添加Interne

SpringBoot集成redisson实现延时队列教程

《SpringBoot集成redisson实现延时队列教程》文章介绍了使用Redisson实现延迟队列的完整步骤,包括依赖导入、Redis配置、工具类封装、业务枚举定义、执行器实现、Bean创建、消费... 目录1、先给项目导入Redisson依赖2、配置redis3、创建 RedissonConfig 配

基于C#实现PDF转图片的详细教程

《基于C#实现PDF转图片的详细教程》在数字化办公场景中,PDF文件的可视化处理需求日益增长,本文将围绕Spire.PDFfor.NET这一工具,详解如何通过C#将PDF转换为JPG、PNG等主流图片... 目录引言一、组件部署二、快速入门:PDF 转图片的核心 C# 代码三、分辨率设置 - 清晰度的决定因

Android协程高级用法大全

《Android协程高级用法大全》这篇文章给大家介绍Android协程高级用法大全,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友跟随小编一起学习吧... 目录1️⃣ 协程作用域(CoroutineScope)与生命周期绑定Activity/Fragment 中手

Java Scanner类解析与实战教程

《JavaScanner类解析与实战教程》JavaScanner类(java.util包)是文本输入解析工具,支持基本类型和字符串读取,基于Readable接口与正则分隔符实现,适用于控制台、文件输... 目录一、核心设计与工作原理1.底层依赖2.解析机制A.核心逻辑基于分隔符(delimiter)和模式匹