[发明专利]一种在视觉伺服系统下的跨语言快速共享图像内存的方法在审
申请号: | 201811407429.7 | 申请日: | 2018-11-23 |
公开(公告)号: | CN109542649A | 公开(公告)日: | 2019-03-29 |
发明(设计)人: | 于兴虎;周娇菊 | 申请(专利权)人: | 于兴虎 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06T1/60 |
代理公司: | 哈尔滨市松花江专利商标事务所 23109 | 代理人: | 刘冰 |
地址: | 264006 山东省*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 视觉伺服系统 卷积神经网络 共享图像 快速传输 目标识别 数据处理 图像 内存 语言 采集 共享内存块 图像信息 相机驱动 语言通信 复制 通信 应用 进程 | ||
一种在视觉伺服系统下的跨语言快速共享图像内存的方法,它属于图像的采集与快速传输领域。本发明解决了在视觉伺服系统下,现有通信方法存在的数据处理速度慢、目标识别效率低的问题。本发明通过建立共享内存块解决了相机驱动使用的C++语言与SSD卷积神经网络使用的PYTHON语言的跨语言通信问题;在各进程之间无需进行图像信息的复制,因此提高了图像的数据处理速度,缩短了SSD卷积神经网络的处理时间,使得目标识别效率达到100帧/秒。本发明可以应用于图像的采集与快速传输领域用。
技术领域
本发明属于图像的采集与快速传输领域,具体涉及一种跨语言快速共享图像内存的方法。
背景技术
使用相机获取图像,并对图像进行处理,分析和理解,从而给机器人提供信息,对机器人进行控制的技术称为视觉伺服技术。在视觉伺服系统中,为了相机的图像采集(相机驱动使用C++语言)与神经网络SSD系统图像读取(使用PYTHON语言)之间的通信,相机的图像采集需要使用C++语言驱动,神经网络SSD系统的图像读取需要使用PYTHON语言,虽然这种通信方法能够完成通信,但是这种通信方法具有数据处理速度慢和目标识别效率低的问题。
发明内容
本发明的目的是为解决在视觉伺服系统下,现有通信方法存在的数据处理速度慢、目标识别效率低的问题。
本发明为解决上述技术问题采取的技术方案是:
一种在视觉伺服系统下的跨语言快速共享图像内存的方法,该方法包括以下步骤:
进程1通过操作系统提供的API从操作系统的内存中申请出一块共享区域,并将生成的共享内存块与key进行绑定;
利用生成的共享内存块和所述的key,进程1将生成的共享内存块映射到进程1的地址空间,即将生成的共享内存块绑定到进程1的地址空间中;
进程2根据shmget函数和所述的key,实现生成的共享内存块到进程2的地址空间的映射,即将生成的共享内存块绑定到进程2的地址空间中;
进程1使用相机获取图像,相机驱动使用C++语言,将获取的图像存储到共享内存块中;
进程2从共享内存块中获得进程1相机获取的图像,进程2将获得的图像分为训练集和测试集两部分,
训练集输入SSD卷积神经网络进行训练,测试集用于验证训练的SSD卷积神经网络,直至测试集上的目标识别准确率不低于Q时,得到训练好的SSD卷积神经网络,实现进程1与进程2之间的通信;训练好的SSD卷积神经网络用于实现目标识别;
通信结束后,操作系统通过执行shmdt函数来解除进程1和进程2与生成的共享内存块的映射关系;
在操作系统中通过执行shctl函数来删除生成的共享内存块。
本发明的有益效果是:本发明提供了一种在视觉伺服系统下的跨语言快速共享图像内存的方法,本发明通过建立共享内存块解决了相机驱动使用的C++语言与SSD卷积神经网络使用的PYTHON语言的跨语言通信问题;在各进程之间无需进行图像信息的复制,因此提高了图像的数据处理速度,缩短了SSD卷积神经网络的处理时间,使得目标识别效率达到100帧/秒。
附图说明
图1为本发明的一种在视觉伺服系统下的跨语言快速共享图像内存的方法流程图;
具体实施方式
具体实施方式一:结合图1说明本实施方式。本实施方式所述的一种在视觉伺服系统下的跨语言快速共享图像内存的方法,该方法具体包括以下步骤:
进程1通过操作系统提供的API从操作系统的内存中申请出一块共享区域,并将生成的共享内存块与特定的key进行绑定;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于于兴虎,未经于兴虎许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811407429.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种跨进程通信的方法及装置
- 下一篇:广告加载方法、装置及计算机可读存储介质