一种摄像头参数管理方法、系统及汽车与流程

文档序号:37216438发布日期:2024-03-05 15:06阅读:14来源:国知局
一种摄像头参数管理方法、系统及汽车与流程

本技术涉及摄像头参数管理,特别涉及一种摄像头参数管理方法、系统及汽车。


背景技术:

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:判断摄像头参数状态是否为有效状态,若是,则执行步骤s213;否则执行步骤s216。

26、s213:判断摄像头状态是否标记为已拔出状态,若是,则执行步骤s216;否则执行步骤s214。

27、s214:检测摄像头状态是否标记为未上电状态,若是,则执行步骤s216;否则执行步骤s215。

28、s215:将摄像头参数拷贝给预设算法。

29、s216:报告数据校验错误至预设算法。

30、在上述技术方案中,通过判断摄像头参数链表中是否存在参数节点,可以确保获取到的摄像头参数与链表中保存的参数一致,这样可以保持数据的一致性,避免因摄像头参数链表的不一致性而导致的错误操作;通过判断摄像头参数状态是否为有效状态,可以确保参数的有效性,这有助于避免使用无效或错误的参数对预设算法进行处理,提高数据处理的准确性;通过判断摄像头状态是否标记为已拔出状态或未上电状态,可以避免对已拔出或未上电的摄像头执行操作,这样可以减少对无效摄像头进行处理,提高系统的稳定性和安全性;如果发现数据校验错误,可以及时将错误报告至预设算法,这有助于系统或用户了解参数处理过程中的错误,并进行相应的处理。

31、基于同一构思,本技术还提供一种摄像头参数管理系统,所述系统包括:

32、读取模块:用于响应于摄像头参数读取信号,读取摄像头参数。

33、填充模块:用于将所述摄像头参数填充至当前摄像头参数链表的摄像头参数节点中。

34、校验模块:用于获取摄像头参数的读取状态,并根据所述读取状态对所述摄像头参数进行校验。

35、处理模块:用于当所述摄像头参数校验成功时,设置摄像头参数状态为有效状态,并将所述摄像头参数拷贝给预设算法。

36、在上述技术方案中,摄像头参数链表是一种双向链表,采用这种双向链表使得数据更有弹性空间和更通用,能够应对不同产品摄像头数量变化,节约存储空间;并且将摄像头参数缓存于摄像头参数链表中,使得预设算法可以快速、高效且不易出错的获取到所有摄像头参数,提高了系统的可靠性和运行效率;此外,通过校验,可以排除无效或错误的参数,提高系统对参数使用的准确性和稳定性。

37、进一步的,所述系统还包括:

38、信号模块:用于预先设置摄像头参数读取时间,以在所述摄像头参数读取时间发出摄像头参数读取信号;所述摄像头参数读取时间包括摄像头初始化完成时和摄像头热插入时。

39、创建模块:用于根据所述摄像头参数读取时间初始化摄像头及其连接通路并创建摄像头参数节点或者是直接创建摄像头参数节点。

40、设置模块:用于响应于摄像头拔出信号,设置摄像头状态为已拔出状态。

41、在上述技术方案中,通过合理设置读取时间,可以在正确的时机发出摄像头参数读取信号,确保参数读取的准确性和有效性,并且所设置的两个时间属于相较空闲的时间,在一定程度上可以避免i2c总线使用拥堵;根据摄像头参数读取时间对摄像头进行初始化和创建对应的摄像头参数节点,这样可以提高初始化和创建的效率,减少不必要的等待时间,优化系统的响应速度;响应摄像头的拔出信号,并将摄像头状态设置为已拔出状态,这样可以及时更新摄像头的状态,防止对已拔出的摄像头进行误操作或浪费资源。

42、基于同一构思,本技术还提供一种汽车,配置摄像头参数管理系统,所述系统采用所述的摄像头参数管理方法对当前汽车中的任意摄像头的摄像头参数进行管理。

43、与现有技术相比,本技术的有益效果在于:

44、本技术首先响应于摄像头参数读取信号,然后读取摄像头参数并将该摄像头参数填充至摄像头参数链表的摄像头参数节点中;再进一步获取摄像头参数的读取状态,根据所述读取状态对所述摄像头参数进行校验,以当所述摄像头参数校验成功时,设置摄像头参数状态为有效状态,并将所述摄像头参数拷贝给预设算法。本技术的摄像头参数节点存储在一个双向的摄像头参数链表中,采用双向链表的方式管理摄像头参数,使得数据更有弹性空间且更通用,可以应对不同产品摄像头数量的变化,且可以节约摄像头各参数的存储空间;此外,摄像头参数缓存于摄像头参数链表中,使得预设算法可以快速、高效且不易出错的获取到所有摄像头参数。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1