安庆大理运城常德铜陵江西
投稿投诉
江西南阳
嘉兴昆明
铜陵滨州
广东西昌
常德梅州
兰州阳江
运城金华
广西萍乡
大理重庆
诸暨泉州
安庆南充
武汉辽宁

基于嵌入式Linux及MJPGstreamer的双目立体视觉

1月9日 封了心投稿
  摘要:文中设计了一套双目立体视觉系统,该系统采用上位机与下位机无线通信的结构,其中下位机采用嵌入式Linux操作系统,移植了无线网卡驱动,并在下位机上修改移植MJPGstreamer以实现多路摄像头图像输入单路输出功能。通过上位机验证了系统中的图像采集不仅十分流畅,而且画质清晰。
  关键词:嵌入式LMJPG立体视觉;无线通信
  中图分类号:TN948。6文献标识码:A文章编号:20951302(2016)03003
  0引言
  双目立体视觉通过模拟人类双眼获取信息并通过大脑处理的方式来替代人类完成一些领域的工作,它是计算机视觉中常用的方法之一。它利用两台位置相对固定的摄像机从不同角度同时获取目标对象的两幅图像,再通过计算空间点在两幅图像中的视差来计算目标的三维坐标值。双目立体视觉以非接触方式获取场景的三维信息,具有结构简单、灵活等优点,广泛用于三维重建、无人驾驶〔2〕、追踪定位等实用科技领域。
  1双目立体视觉系统硬件框架
  1。1系统构成
  本文讨论的双目立体视觉系统硬件主要由两枚罗技USB摄像头、一个普联(TPLINK)USB无线网卡、一块BeagleboneBlackARM开发板、上位机PC组成。其中摄像头、无线网卡、ARM开发板组成的下位机还可以实现移动功能。系统的原理为:ARM开发板负责同时采集两路摄像头的视频,然后通过HTTP视频流服务向上位机PC端提供实时图像数据,并且下位机提供运动控制接口以接收来自上位机的运动控制指令并与运动控制器通信实现运动;上位机通过无线网络获得实时图像帧序列,上位机PC可以发挥通用计算机编程简单的优势并结合独立图形显卡对图像进行并行加速处理〔35〕,以达到目标识别、追踪的目的。系统的硬件构架如图1所示。
  1。2硬件参数介绍
  BeagleboneBlack是基于德州仪器SitaraAM3358ARM处理器、只有信用卡大小的低成本开发板,自其前辈Beagleboard发布以来,受到众多开发者的热爱,同时也已获多个Linux发行版的支持。
  本系统采用两枚罗技C270高清定焦摄像头,它们具备最高720p(1280x720)、30帧s的彩色图像输出速率,且成像质量突出;还提供USB2。0接口,作为标准的UVC(USBVideoClass)设备,在Linux系统下面可以直接驱动。系统包含的USB无线网卡型号为TPLINKWN823N,它支持IEEE802。11bgn标准,工作在2。42。4835GHz频段,最高无线传输速率为300Mbs,支持WPAPSKWPA2PSK加密。
  2系统实现
  2。1系统选择及网卡驱动移植
  Linux操作系统具有完善的网络通信功能及稳定性、可裁剪性等特点,非常适用于嵌入式设备。这里使用的操作系统是Debian社区提供的Debian7。9(Wheezy)系统镜像,为了节省硬件资源采用了控制台版本,即不带图形界面;系统默认Linux内核版本为3。8,手动更新内核至4。1版本以修复BeagleboneBlackUSB设备热插拔支持不稳定的问题。使用Debian镜像的优势在于社区为开发平台提供了完善的工具链,可以在开发板上安装必要的gcc编译器集合及make工具和内核头文件,直接在开发板上进行小型程序的编译,省去了麻烦的交叉编译步骤。
  由于USB网卡不被当前操作系统内核支持,需要手动添加驱动。TPLINKWN823N使用Realtekrtl8192系列控制器,任何人都可以从Realtek网站获取相关设备驱动源代码。这里把驱动源代码放到了开发板上,以内核模块的形式编译出驱动;通过Debian软件管理器安装wpasupplicant来管理无线网络连接,以借此实现开发板开机后自动连接到指定无线路由器的操作。
  2。2MJPGstreamer移植
  MJPGstreamer〔6,7〕是开源的、基于命令行的可提供JPEG图像流的轻量服务器,它实现了从输入设备复制图像数据到输出设备的功能。受支持输入设备以UVC摄像头为主,还有CMOS摄像头、文件输入等;输出设备可以是文件、网络服务(HTTP,UDP)等。MJPGstreamer默认只能支持单设备输入多种途径输出。而在本双目视觉系统中要实现的是两个UVC设备输入,一个HTTP插件输出,故需对MJPGstreamer源代码进行修改。
  MJPGstreamer主要分为以下几个模块(插件):
  (1)mjpgstreamer:主程序,用来调用其它插件;
  (2)inputuvc:USB摄像头输入插件;
  (3)outputhttp:HTTP服务插件;
  (4)inputfile:以视频或图像作为输入;
  (5)outputfile:输出到JPEG文件。
  本设计中用到inputuvc和outputhttp两个输入输出模块。通过对MJPGstreamer源代码进行分析,发现其各个模块以独立线程的方式运行,各线程以共享内存的方式进行通信。输入插件将图像数据存储到共享区域,输出插件从共享内存区域读取图像数据写入目标位置(网络终端、磁盘等)。
  进一步分析源代码,发现MJPGstreamer已经实现了多个输入插件的支持,并且从每个输入设备读取到的数据放到了不同的内存位置,唯一的限制是在输出时默认只发送第一个设备读取到的数据。
  outputhttp在响应每个来自网络的客端时都启用一个单独的线程来对其发送数据,其中的数据均来自第一个输入插件。为了获取不同输入设备的数据,客户端在请求数据时应指明从哪个设备获取;同时如果客户端启动两个独立线程来分别访问两个摄像头的数据,那么就实现了MJPGstreamer多输入单插件输出的功能。通过修改MJPGstreamer工程下outputhttp模块里的httpd。c文件来实现该功能:
  (1)增加静态全局整型变量streamid定义,并初始化为0,即默认从第一个输入设备获取图像数据流;
  (2)处理http请求?actionstream判断程序块内部增加获取请求的流id功能:
  (3)将streamid作为参数传递至sendstream函数;
  (4)客端对应的http请求变为http:serveraddress:portnumber?actionstream:id。其中,id从0开始编号,对应从第一个设备起。MJPGstreamer安装按照其说明文档进行,在源代码目录执行makeUSELIBV4L2truemakeinstall,这里USELIBV4L2true使能了V4L(VideoforLinux)视频设备驱动框架,由此完成了MJPGstreamer的编译和安装。
  3上位机软件实现
  3。1上位机硬件及开发环境配置
  上位机为普通IntelX86PC,带NVIDIA独立图形显卡并支持CUDA编程,开发工具使用了跨平台的QtC环境,版本为5。5。0,编译安装了计算机视觉库OpenCV3。0。
  3。2上位机软件编写
  上位机软件的逻辑框图如图2所示。
  在Qt5环境中使用OpenCV提供的VideoCapture类型打开指定URL(UniformResourceLocator),代码操作如下:
  VideoCapturecapLeftVideoCapture(http192。168。1。1358421?actionstream:0);
  VideoCapturecapRightVideoCapture(http192。168。1。1358421?actionstream:1);
  使用OpenCV提供的Mat类型来保存每一帧图像,同时使用Qt提供的软件定时器每秒20次从资源中获取左右各一帧图像,将图像显示出来,并复制到特定内存区域以便后续处理程序进行访问,读取一帧图像的操作如下:
  MatmatLeft,matR
  capLeft。read(matLeft);
  capRight。read(matRight);
  左右摄像头以640480分辨率、每秒20帧的速率采集,上位机程序也以每秒20帧的速率刷新显示,效果流畅。图3所示为室内环境显示效果截图。
  4结语
  本文介绍了一种双目立体视觉系统设计,采用上位机与下位机无线通信的架构,可以发挥上位机强大的计算能力以及下位机灵活移动的优势。其中主要讨论了下位机的软硬件框架,利用开源软件MJPGstreamer并修改其部分代码实现了多路设备输入、单个插件输出的功能;通过实验验证了方案的可行性,对双目立体视觉系统设计具有参考价值。
  参考文献
  〔1〕贾云得。机器视觉〔M〕。北京:科学出版社,2002。
  〔2〕杨明。无人自动驾驶车辆研究综述与展望〔J〕。哈尔滨工业大学学报,2006,38(8):12591262。
  〔3〕李亚峰,秦开怀。一种双目立体视觉算法的GPU实现〔J〕。计算机工程,2006,32(10):210211。
  〔4〕李新德,张晓,朱博,等。一种基于GORGPU算法的机器人视觉导航方法〔J〕。机器人,2012,34(4):466475。
  〔5〕张平。基于CUDA的TLD视觉跟踪算法研究〔D〕。北京:北京交通大学,2014。
投诉 评论 转载

山羊不吃天堂草捍卫人性尊严成长的论文摘要本文通过分析曹文轩的长篇少年成长小说《山羊不吃天堂草》,向读者展示了贫困的农村少年明子在城市的艰难成长。这里有明子对城里人的歧视抗争,有对师傅三和尚权威的挑战,更有对金钱诱……三个维度打造完美检修团队相关论文团结就是力量,没有完美的个人,只有完美的团队,团队无价,人心齐,泰山移,众人划桨开大船形容团结、团队的词句不胜枚举。团队文化是静水深流企业文化基本内涵之一。一个坚强的团队……系列化包装是商业时代产品设计的发展趋势论文一系列化包装产生的必然性在包装产业领域,随着技术水平的提高,逐渐凸现出个性化的彰显与创新,促成了包装的现代化设计,新机械、新技术以及包装款式的多样化成为包装设计的全球化、……小学科学实验教学论文1500字小学科学实验教学科学实验是学生获取科学知识,发展科学能力的重要途径,也是学生所从事的学习活动,其本质就是让学生动手做。以下是由范文大全为大家整理的小学科学实验教学,希望对……浅析水性聚氨酯涂料研究进展论文随着人们环保、能源意识的增强,特别是各国环保法规对涂料体系中有机挥发物(VOC)含量的严格限制,促进了水性涂料为代表的低污染型涂料的发展。水性涂料是以水为分散介质的一类涂料,具……初探小学生阳光德育的经纬线初探小学生阳光德育的经纬线一、阳光德育的纬线阳光德育的纬线主要是针对德育内容而设计的横向序列。沿着这条纬线,设置了两条必要的措施:1、建立阳光小组。阳光小组的成立和……中国文化传入巴西及遗存述略【内容提要】中国文化远在16世纪末已传到巴西,至今在巴西仍可找到诸多中国文化遗存以及巴西人生活习俗中所表现出的中国影响。在19世纪80年代之前,中国与巴西之间因澳门作中介……追诉时效延长制度探讨刑法论文(1)论文摘要:新旧刑法均有关于刑法上追诉时效的规定,但在追诉时效延长方面规定却有不同。本文认为追诉时效延长制度应当有三种情况;同时对这一制度的可能产生歧义的地方进行了理论上的辨析。……基于嵌入式Linux及MJPGstreamer的双目立体视觉摘要:文中设计了一套双目立体视觉系统,该系统采用上位机与下位机无线通信的结构,其中下位机采用嵌入式Linux操作系统,移植了无线网卡驱动,并在下位机上修改移植MJPGstrea……达比加群酯的合成方法研究进展抗凝血药是一类通过影响凝血过程某些凝血因子,阻止血液凝固的药物,主要用于防治血栓栓塞性疾病及其并发症。达比加群酯是由德国勃林格殷格翰公司研发的一种新型非肤类直接凝血酶抑制剂,于……小学数学教育论文我当老师以来,基本上都是担任一个大循环或小循环班级的教学,中途接手班级我还是第一次,这学期我中途接手的是一个六年级班。第一天上课我就感觉不是一手带大的孩子有点难带:摸不着……计算机技术在包装领域中的合理应用在包装领域之中,把计算机技术应用到包装领域之中,也是现今的社会发展需求之下,包装行业所面临的巨大的机遇与前所未有的挑战。所以我们更要去思索如何把计算机技术与包装领域的工作需求进……
小心!AI算命正在偷看你的隐私手机屏分几种?什么叫水滴屏刘海屏瀑布屏全面屏?中科院所长未来五年,中国经济最大的风险就是去工业化同价位天花板,12GB512GB售价亲民,跌至2469元潜伏毛主席身边当秘书,皖南事变的罪魁,沈之岳晚年感谢不杀之恩在高端机市场力抗苹果,vivo靠自研芯片V1独当一面?为什么说扎克伯格和库克的这场战争,与你息息相关这就是格局!TCL正式发布MiniLED战略和超大屏战略王思聪送IG前队员极品电脑,两条内存价值1。7万,全国只有一腾讯发布碳中和路线图4680电池今年4月试生产,将优先供应特斯拉可以用Macbookpro作主力机吗?

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找七猫云易事利