Ubuntu16.04 通过opencv的方式打开realsenseD435i相机中的彩色摄像头

本文主要是介绍Ubuntu16.04 通过opencv的方式打开realsenseD435i相机中的彩色摄像头,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

此博客主要记录如何在不使用realsenseD435i相机自带的SDK情况下,仅通过opencv的方式打开相机的彩色摄像头

操作环境:Ubuntu16.04 64 位 python2.7 opencv3.3 ROS(kinetic)

import sys
import cv2
import rospy
from camera_info_manager import CameraInfoManager
from cv_bridge import CvBridge
from sensor_msgs.msg import Image, CameraInfodef publish_images(freq=100):cam_index = 2  # index of camera to capture### initialize ROS publishers etc.rospy.init_node('dope')camera_ns = rospy.get_param('camera', 'camera/color')img_topic = '{}/image_raw'.format(camera_ns)info_topic = '{}/camera_info'.format(camera_ns)image_pub = rospy.Publisher(img_topic, Image, queue_size=10)info_pub = rospy.Publisher(info_topic, CameraInfo, queue_size=10)info_manager = CameraInfoManager(cname='dope_{}'.format(cam_index),namespace=camera_ns)try:camera_info_url = rospy.get_param('~camera_info_url')if not info_manager.setURL(camera_info_url):rospy.logwarn('Camera info URL invalid: %s', camera_info_url)except KeyError:# we don't have a camera_info_url, so we'll keep the# default ('file://${ROS_HOME}/camera_info/${NAME}.yaml')passinfo_manager.loadCameraInfo()if not info_manager.isCalibrated():rospy.logwarn('Camera is not calibrated, please supply a valid camera_info_url parameter!')### open cameracap = cv2.VideoCapture(cam_index)if not cap.isOpened():rospy.logfatal("ERROR: Unable to open camera for capture.  Is camera plugged in?")sys.exit(1)rospy.loginfo("Publishing images from camera %s to topic '%s'...", cam_index, img_topic)rospy.loginfo("Ctrl-C to stop")### publish imagesrate = rospy.Rate(freq)while not rospy.is_shutdown():ret, frame = cap.read()if ret:image = CvBridge().cv2_to_imgmsg(frame, "bgr8")image.header.frame_id = 'camera_color_frame'image.header.stamp = rospy.Time.now()image_pub.publish(image)# we need to call getCameraInfo() every time in case it was updatedcamera_info = info_manager.getCameraInfo()camera_info.header = image.headerinfo_pub.publish(camera_info)rate.sleep()if __name__ == "__main__":try:publish_images()except rospy.ROSInterruptException:pass

 

这篇关于Ubuntu16.04 通过opencv的方式打开realsenseD435i相机中的彩色摄像头的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/947992

相关文章

在PyCharm中安装PyTorch、torchvision和OpenCV详解

《在PyCharm中安装PyTorch、torchvision和OpenCV详解》:本文主要介绍在PyCharm中安装PyTorch、torchvision和OpenCV方式,具有很好的参考价值,... 目录PyCharm安装PyTorch、torchvision和OpenCV安装python安装PyTor

openCV中KNN算法的实现

《openCV中KNN算法的实现》KNN算法是一种简单且常用的分类算法,本文主要介绍了openCV中KNN算法的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的... 目录KNN算法流程使用OpenCV实现KNNOpenCV 是一个开源的跨平台计算机视觉库,它提供了各

OpenCV图像形态学的实现

《OpenCV图像形态学的实现》本文主要介绍了OpenCV图像形态学的实现,包括腐蚀、膨胀、开运算、闭运算、梯度运算、顶帽运算和黑帽运算,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起... 目录一、图像形态学简介二、腐蚀(Erosion)1. 原理2. OpenCV 实现三、膨胀China编程(

Android实现打开本地pdf文件的两种方式

《Android实现打开本地pdf文件的两种方式》在现代应用中,PDF格式因其跨平台、稳定性好、展示内容一致等特点,在Android平台上,如何高效地打开本地PDF文件,不仅关系到用户体验,也直接影响... 目录一、项目概述二、相关知识2.1 PDF文件基本概述2.2 android 文件访问与存储权限2.

Spring中配置ContextLoaderListener方式

《Spring中配置ContextLoaderListener方式》:本文主要介绍Spring中配置ContextLoaderListener方式,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录Spring中配置ContextLoaderLishttp://www.chinasem.cntene

AJAX请求上传下载进度监控实现方式

《AJAX请求上传下载进度监控实现方式》在日常Web开发中,AJAX(AsynchronousJavaScriptandXML)被广泛用于异步请求数据,而无需刷新整个页面,:本文主要介绍AJAX请... 目录1. 前言2. 基于XMLHttpRequest的进度监控2.1 基础版文件上传监控2.2 增强版多

Docker镜像修改hosts及dockerfile修改hosts文件的实现方式

《Docker镜像修改hosts及dockerfile修改hosts文件的实现方式》:本文主要介绍Docker镜像修改hosts及dockerfile修改hosts文件的实现方式,具有很好的参考价... 目录docker镜像修改hosts及dockerfile修改hosts文件准备 dockerfile 文

Linux中的计划任务(crontab)使用方式

《Linux中的计划任务(crontab)使用方式》:本文主要介绍Linux中的计划任务(crontab)使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、前言1、linux的起源与发展2、什么是计划任务(crontab)二、crontab基础1、cro

Win11安装PostgreSQL数据库的两种方式详细步骤

《Win11安装PostgreSQL数据库的两种方式详细步骤》PostgreSQL是备受业界青睐的关系型数据库,尤其是在地理空间和移动领域,:本文主要介绍Win11安装PostgreSQL数据库的... 目录一、exe文件安装 (推荐)下载安装包1. 选择操作系统2. 跳转到EDB(PostgreSQL 的

Java枚举类实现Key-Value映射的多种实现方式

《Java枚举类实现Key-Value映射的多种实现方式》在Java开发中,枚举(Enum)是一种特殊的类,本文将详细介绍Java枚举类实现key-value映射的多种方式,有需要的小伙伴可以根据需要... 目录前言一、基础实现方式1.1 为枚举添加属性和构造方法二、http://www.cppcns.co