增强型视觉系统 (EVS)

news2024/9/21 23:48:45

增强型视觉系统 EVS

  • 1、增强型视觉系统概览
  • 2、车载相机 HAL
    • 2.1 EVS 应用
    • 2.2 EVS 管理器
    • 2.3 EVS HIDL 接口
    • 2.4 内核驱动程序

《增强型视觉系统 (EVS) 1.1 集成指南》
车载相机 HAL


1、增强型视觉系统概览

为了增强视频串流管理和错误处理,Android 11 更新了车载相机 HAL。有关详情,请参阅以下文章。

文章标题说明
事件和帧通知机制一种回调机制,可让 EVS 管理器和硬件 (HW) 模块对应用中的任何流式传输事件发出通知。
用程序编写摄像头控制参数getter 和 setter 方法,用于在视频流处于活跃状态时更改摄像头参数。
调整摄像头和系统配置新的配置管理器,使应用可以从 HAL 检索相机和成像特征。
帧元数据帧元数据是 BufferDesc 数据结构的成员。
车载显示屏代理服务一项新服务,用于启用 HAL 实现以使用 SurfaceFlinger。
多摄像头支持逻辑摄像头设备,包含多个实体摄像头设备。

2、车载相机 HAL

在这里插入图片描述

2.1 EVS 应用

可作为参考实现的 C++ EVS 示例应用 (/packages/services/Car/evs/app)。该应用负责从 EVS 管理器请求视频帧,并将用于显示的已完成的帧发送回 EVS 管理器。EVS 和汽车服务可供使用后,它便立即由 init 启动(设置目标为在开机两 (2) 秒内启动)。原始设备制造商 (OEM) 可视需要修改或替换 EVS 应用。

2.2 EVS 管理器

EVS 管理器 (/packages/services/Car/evs/manager) 可提供 EVS 应用所需的构建块,以实现从简单的后视摄像头显示到 6DOF 多摄像头渲染的任何功能。它的接口通过 HIDL 呈现,并且能够接受多个并发客户端。其他应用和服务(特别是汽车服务)可以查询 EVS 管理器状态,以了解 EVS 系统何时处于活动状态。

2.3 EVS HIDL 接口

在 EVS 系统中,相机和显示元素均由 android.hardware.automotive.evs 软件包定义。用于执行接口的示例实现(生成合成测试图像并验证图像进行往返的过程)在 /hardware/interfaces/automotive/evs/1.0/default 中提供。


原始设备制造商 (OEM) 负责实现由 /hardware/interfaces/automotive/evs 中的 .hal 文件表示的 API。这种实现负责从物理相机配置和收集数据,并通过 Gralloc 可识别的共享内存缓冲区传送这些数据。实现的显示端负责提供可由应用填充(通常通过 EGL 渲染的方式)的共享内存缓冲区,并优先呈现已完成的帧(在任何可能会显示在物理显示设备上的其他内容之前)。EVS 接口的供应商实现可以存储在 /vendor/… /device/…hardware/…(例如 /hardware/[vendor]/[platform]/evs)下。

2.4 内核驱动程序

支持 EVS 堆栈的设备需要使用内核驱动程序。原始设备制造商 (OEM) 无需创建新驱动程序,他们可以选择通过现有相机和/或显示硬件驱动程序来支持 EVS 所需的功能。重复使用驱动程序可能会有好处,对于图像呈现可能需要与其他活动线程协调的显示驱动程序来说尤其如此。Android 8.0 包含一个基于 v4l2 的示例驱动程序(在 packages/services/Car/evs/sampleDriver 中),该驱动程序依靠内核实现 v4l2 支持,并依靠 SurfaceFlinger 呈现输出图像。

注意:对于实际的供应商实现来说,依靠 SurfaceFlinger 是不合适的,因为 EVS 必须能够在开机后的几秒钟内运行,这个时间要远早于 SurfaceFlinger 本身启动的时间。不过,示例驱动程序实现一般与硬件无关,而且支持 EVS 应用开发和测试与 EVS 驱动程序开发同时进行。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/728925.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

OD查找偏移表达式

1、在CE中先找到血地址2DF94C28 2、在od数据段dd 血地址 dd 2DF94C28查找到数据 3、在血地址位置右键-断点-硬件访问-DWORD,再操作游戏会再改变这个地址代码段下断点,查找到 4、验证查找的是否正确,在8199FA处下断点,dd edi288处…

github port 22 connection refused 不通过科学上网连接不上问题

原因是用密钥连接github走的是ssh,ssh默认端口是22没有加密,github不让走22 解决办法是在 ~/.ssh/config里添加 Host github.com Hostname ssh.github.com Port 443 让ssh连github的时候走443端口,TLS加密的 ssh -T gitgithub.com 说明已…

Docker深入

一、简介 Docker是一个用于构建、运行、传送应用程序的平台。 2、为什么使用Docker 在部署服务器过程中,配置各种环境变量、第三方依赖等等,耗费时间太长,使用Docker可以将他们打包成一个集装箱,只要在开发环境中运行成功&…

Hive 复习重点

文章目录 特点SQL查询转换成MR作业的过程内部表 & 外部表 & 分区表 & 分桶表内部表外部表分区表 分桶表DQL语法性能优化SQL语句优化数据格式化 ORC, Parquet列式存储小文件过多优化并行执行优化JVM 优化推测执行行列过滤limit 限制本地模式(开启MR,单机…

stm32mp157——通过按键中断实现LED灯的亮灭

EXTI章节初始化 void hal_exit_init(EXTI编号,GPIOF组编号,中断触发方式) 调用:hal_exit_init(EXTI9,0x05,下降沿触发) 调用: hal_exit_init(EXTI7,0x05,下降沿触发) 调用: hal_exit_init(EXTI8,0x05,下降沿触发) GIC章节初始化 void hal_gic_init(中断号,中断优先级) 调用: ha…

Redis - 一篇讲解根据 Key 前缀统计分析内存占用

问题描述 今天遇到一个 Redis 内存打挂了的问题,想看看哪个前缀 Key 占用内存比较大?! 原因分析 我们都知道如果直接用 Keys 参数去做统计很危险,而且也只能统计数量,当然也可以排序去前几名的占用内存 Key 对应的大…

ESP32(掌控板) 电子琴

ESP32(掌控板) 电子琴 本程序实现了电子琴功能,通过机械按键改变变量的值实现“翻页”(每个八度分两页,共六页),通过触摸按键弹奏(包含半音),屏幕显示当前触摸…

基于微信小程序充电桩预约管理系统的设计与实现(论文+源码)_kaic

摘要 微信小程序的充电桩预约管理系统是一个复杂的系统,需要遵循不同的设计原则和方法,在实现高可用性、高性能、高安全性和高稳定性等特点的同时,还要注重用户体验和易用性,不断改进和迭代优化,以提高系统性能和用户满…

replicaSet,DaemonSet and Job

ReplicaSet 上一篇讲到的 ReplicationController 是用于复制和在异常的时候重新调度节点的 K8S 组件,后面 K8S 又引入了 ReplicaSet 资源来替代 ReplicationController ReplicationController 和 ReplicaSet 有什么区别呢? ReplicationController 和 …

Java中一个类可以继承多个类吗?揭秘多重继承的秘密!

大家好,我是你们的小米!今天,我们来聊聊Java中一个备受争议的话题——"一个类可以继承多个类吗?"这是一个让许多Java初学者困惑的问题,也是一个常常被问及的热门话题。那么,到底Java中是否允许一…

Multi-Aspect Explainable Inductive Relation Prediction by Sentence Transformer

摘要 最近关于知识图(KGs)的研究表明,通过预先训练的语言模型授权的基于路径的方法在提供归纳和可解释的关系预测方面表现良好。本文引入关系路径覆盖率和关系路径置信度的概念,在模型训练前过滤掉不可靠的路径,以提高模型的性能。此外,我们提出了知识推理句子转换器(Know…

MySQL索引介绍及底层数据结构B+树介绍

索引 1. 索引概述1.1 索引1.2 索引的优缺点1.2.1 优点1.2.2 缺点 2. InnoDB中的索引2.1 主键索引设计方案2.2 索引底层数据结构2.3 常见索引2.3.1 聚簇索引2.3.1.1 优点2.3.1.2 缺点 2.3.2 非聚簇索引2.3.3 联合索引 3. MyISAM中的索引3.1 MyISAM 与 InnoDB对比 1. 索引概述 1…

代码随想录算法训练营第59天 | 503.下一个更大元素 II + 42.接雨水

今日任务 目录 503.下一个更大元素 II - Medium 42.接雨水 - Hard 503.下一个更大元素 II - Medium 题目链接:力扣-503. 下一个更大元素 II 给定一个循环数组 nums ( nums[nums.length - 1] 的下一个元素是 nums[0] ),返回 nu…

vmware提示此平台不支持虚拟化的Intel VT-x/EPT. 不使用虚拟化的Intel VT-x/EPT,是否继续?

当打开虚拟机时会发现弹出提示框显示不支持,只要检查三个步骤保证能正常使用 1、检查vmware虚拟机设置中处理器右边是否勾选虚拟化引擎 2、检查物理机中的windows组件是否冲突 打开控制面板选择程序和功能之后点击启用或关闭windows功能,取消Hyper-V 取…

插值算法

插值法在较少的数据模型的基础上模拟产生新的靠谱数值,可以用来预测。 利用已知的点建立合适的插值函数 f(x) ,未知点 x_i 由插值函数 f(x) 可以求出函数值 f(x_i) ,用求得的 (x_i,f(x_i))近似代替未知点。 基本概念: yf(x)在[a,b]上有定义 x…

MySQL之概述、安装和使用(一)

一、概述 关系数据库概述: https://blog.csdn.net/qq_21370419/article/details/128568920 二、数据库的安装 参考我的两篇博客: win10 安装mysql 5.6.36版本_windows 安装mysql5.6_人……杰的博客-CSDN博客 wind 10 安装 mysql 8.0_人……杰的博客…

二十三种设计模式第十五篇--模版方法模式

模板方法模式是一种行为型设计模式,它定义了一个算法的骨架,而将一些步骤延迟到子类中实现。通过使用这种模式,我们可以在不改变算法结构的情况下,重新定义算法中的某些特定步骤。 模版方法的思想 模板方法模式的核心思想是将一…

WebDAV之π-Disk派盘 + FE文件管理器

FE File Explorer是一款功能强大且易于使用的文件管理器,它可以让你轻松地管理内部和外部存储器上的文件和文件夹,支持云存储服务,如派盘、Dropbox等。结合FE File Explorer和派盘可以实现更加高效便捷的文件管理体验。 π-Disk派盘 – 知识…

#systemverilog#进程控制问题#(二)终止进程

二 线程的终止 2.1 命名块 + diable Block,也就是语句块,SystemVerilog提供了两种类型的语句块,分别是begin…end为代表的顺序语句块,还有以fork…join为代表的并发语句块。 这两种block都是工程项目中常用的block,但是,大家可能都不知道block也是可以命名的,就像我…

基于Prometheus 和 Grafana 实现springboot应用监控和服务器监控

目录 1.Prometheus环境搭建 1.1 下载和安装Prometheus 1.2 配置Prometheus 1.3 配置Prometheus抓取Spring Boot应用Metrics 1.4 启动Prometheus 2.Grafana环境搭建 2.1 下载和安装Grafana 2.2 配置Grafana数据源 2.3 创建Dashboard 3、NodeExporter(服务器…