System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及摄像头参数管理,特别涉及一种摄像头参数管理方法、系统及汽车。
技术介绍
1、当前自动驾驶技术已成为汽车最热门领域之一。在自动驾驶技术上,可分为自动驾驶算法部分、感知算法、感知器件部分,感知器件包含雷达、摄像头等,尤其是摄像头更是充当了自动驾驶及感知算法的“眼睛”。每个摄像头在个体上存在着差异,摄像头在其内部会存放一些涉及个体差异的特性参数(比如摄像头的光学中心坐标、焦距x轴长度、焦距y轴长度、畸变系数等),感知算法会获取这些参数,进行标定,以便更有效的使用摄像头。目前有以下问题:
2、1.在各个汽车产品上,用于自动驾驶感知的摄像头数量不同,导致摄像头参数管理不方便。
3、2.当在汽车未熄火状态下,更换摄像头时,新换上来的摄像头的参数不能及时被读取并告知感知算法,导致感知算法使用旧参数,进而带来一定的安全隐患。
技术实现思路
1、本申请为解决现有技术中因自动驾驶感知的摄像头数量不同,导致的摄像头参数管理不便,以及因不能及时读取摄像头参数,导致感知算法使用旧参数带来隐患的技术问题,提供一种读取高效且通用性强的摄像头参数管理方法、系统及汽车。
2、具体的,本申请提供一种摄像头参数管理方法,包括以下步骤:
3、s100:响应于摄像头参数读取信号,读取摄像头参数并将该摄像头参数填充至摄像头参数链表的摄像头参数节点中。
4、s200:获取摄像头参数的读取状态,根据所述读取状态对所述摄像头参数进行校验,以当所述摄像头参数校验成
5、在上述技术方案中,摄像头参数节点存储在一个双向的摄像头参数链表中,采用双向链表的方式管理摄像头参数,使得数据更有弹性空间且更通用,可以应对不同产品摄像头数量的变化,且可以节约摄像头各参数的存储空间;摄像头参数缓存于摄像头参数链表中,使得预设算法可以快速、高效且不易出错的获取到所有摄像头参数。
6、需要说明的是,摄像头参数链表中包括多个摄像头参数节点,每个摄像头参数节点至少存放一个摄像头参数、摄像头状态和摄像头参数状态;每个摄像头参数节点对应一个摄像头的数据,因此一条摄像头参数链表可以缓存当前汽车中所有摄像头对应的数据;所述摄像头参数是通过解串器来读取的,所述预设算法在一种可行的实施方式中指的是感知算法,感知算法获取到这些摄像头参数进行标定,以便更有效的在驾驶中使用摄像头。
7、此外,摄像头参数节点还存放有用于保护摄像头参数读取过程中不被破坏的控制锁和用于保存解串器信息,以便通过解串器获取摄像头相关信息的解串器数据。
8、进一步的,在执行步骤s100之前,包括:
9、预先设置摄像头参数读取时间,以在所述摄像头参数读取时间发出摄像头参数读取信号;所述摄像头参数读取时间包括摄像头初始化完成时和摄像头热插入时。
10、在上述技术方案中,因为soc的一路i2c总线连接有多个摄像头,并且还存在多个程序为了不同目的通过i2c总线访问摄像头(比如isp程序可能时时刻刻在调节摄像头效果、控制程序在读写摄像头的控制状态寄存器、感知算法可能要获取摄像头参数),这些因素都可能出现i2c总线的竞争,导致一些服务得不到及时响应,出现饥饿或失败;因此选择摄像头初始化完成时和摄像头热插入时这两个比较空闲的时间点,在一定程度上可以避免i2c总线的拥堵。
11、进一步的,当所述摄像头参数读取时间为摄像头初始化完成时,在读取摄像头参数之前,包括:
12、预先在摄像头参数链表中创建摄像头参数节点。
13、在上述技术方案中,通过在摄像头参数链表中预先创建节点,可以方便地管理和访问摄像头参数,节点中可以保存摄像头的各种参数信息,如摄像头的光学中心坐标、焦距x轴长度、焦距y轴长度、畸变系数等,便于后续的调用和使用;系统中一般有多个摄像头,预先创建摄像头参数节点可以为每个摄像头都分配一个节点,方便对不同摄像头的参数进行管理和调用。
14、进一步的,当所述摄像头参数读取时间为摄像头热插入时,在读取摄像头参数之前,包括:
15、对摄像头及其连接通路进行初始化,并判断摄像头参数链表中是否存在摄像头参数节点,以在不存在时,在摄像头参数链表中创建摄像头参数节点。
16、在上述技术方案中,通过对摄像头进行初始化,可以确保摄像头的状态正确并可被读取,如果没有进行初始化操作,可能会导致未知的错误或无效的参数读取;判断摄像头参数链表中是否存在参数节点,并在不存在时创建节点,可以确保链表中的参数节点与摄像头的实际状态保持一致,这样就可以避免因节点缺失导致的读取错误;通过在摄像头参数链表中创建参数节点,可以方便后续对摄像头参数的读取和管理。
17、进一步的,所述步骤s200包括:
18、s201:获取摄像头参数的读取状态,并判断所述读取状态是否为读取成功,若是,若执行步骤s202;否则设置摄像头参数节点的摄像头状态为读取失败状态。
19、s202:对所述摄像头参数进行校验,并判断校验是否成功,若成功,则设置摄像头参数状态为有效状态,并根据摄像头状态和摄像头参数状态将所述摄像头参数拷贝给预设算法;否则设置所述摄像头参数状态为校验失败状态。
20、在上述技术方案中,通过获取摄像头参数的读取状态并判断是否成功,可以及时捕捉到读取错误的情况,如果读取失败,设置摄像头参数节点的状态,确保错误状态得到记录和处理;进行摄像头参数的校验是保证参数有效性的重要步骤,通过对摄像头参数进行校验并判断是否成功,可以确保参数的合法性和准确性,避免错误参数对后续操作的影响;设置摄像头参数状态和摄像头状态可以细分不同的状态,并准确记录摄像头参数的读取过程,这样可以提高系统的鲁棒性,使其具备更好的容错能力和稳定性;通过将摄像头参数拷贝给预设算法,可以实现预设算法对摄像头参数的使用,参数的拷贝操作可以提高数据处理的效率,减少不必要的数据传输和处理延迟。
21、进一步的,还包括:响应于摄像头拔出信号,设置摄像头状态为已拔出状态。
22、在上述技术方案中,设置摄像头状态为已拔出状态可以避免系统对不存在的摄像头进行操作,如果不及时将摄像头状态更新为已拔出状态,系统可能会继续尝试对摄像头进行读取或处理,造成资源浪费或错误操作;并且其他模块或功能可以查询摄像头的状态,根据其是否为已拔出状态来决定是否继续操作相关功能,从而增加系统的安全性和稳定性。
23、进一步的,所述步骤s202中的将所述摄像头参数拷贝给预设算法,包括:
24、s211:获取摄像头参数,并判断摄像头参数链表中是否存在该摄像头参数对应的摄像头参数节点,若存在,则执行步骤s212;否则报告没有所述摄像头参数对应的摄像头至预设算法。
25、s212:本文档来自技高网...
【技术保护点】
1.一种摄像头参数管理方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的摄像头参数管理方法,其特征在于,在执行步骤S100之前,包括:
3.根据权利要求2所述的摄像头参数管理方法,其特征在于,当所述摄像头参数读取时间为摄像头初始化完成时,在读取摄像头参数之前,包括:
4.根据权利要求2所述的摄像头参数管理方法,其特征在于,当所述摄像头参数读取时间为摄像头热插入时,在读取摄像头参数之前,包括:
5.根据权利要求4所述的摄像头参数管理方法,其特征在于,所述步骤S200包括:
6.根据权利要求5所述的摄像头参数管理方法,其特征在于,还包括:响应于摄像头拔出信号,设置摄像头状态为已拔出状态。
7.根据权利要求6所述的摄像头参数管理方法,其特征在于,所述步骤S202中的将所述摄像头参数拷贝给预设算法,包括:
8.一种采用如权利要求1-7任一项所述的摄像头参数管理方法的系统,其特征在于,所述系统包括:
9.根据权利要求8所述的系统,其特征在于,所述系统还包括:
10.一种汽车,
...【技术特征摘要】
1.一种摄像头参数管理方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的摄像头参数管理方法,其特征在于,在执行步骤s100之前,包括:
3.根据权利要求2所述的摄像头参数管理方法,其特征在于,当所述摄像头参数读取时间为摄像头初始化完成时,在读取摄像头参数之前,包括:
4.根据权利要求2所述的摄像头参数管理方法,其特征在于,当所述摄像头参数读取时间为摄像头热插入时,在读取摄像头参数之前,包括:
5.根据权利要求4所述的摄像头参数管理方法,其特征在于,所述步骤s200包括:
6.根据权利要求5所述的...
【专利技术属性】
技术研发人员:甘林,宋卫桥,张劲松,
申请(专利权)人:成都市卡蛙科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。