使用web_video_server进行网页段的视频传输

引言:在项目中,需要实现无人机摄像头采集到的图像回传到window下进行查看,为此,选择使用web_video_server功能包实现局域网下的图像传输

硬件+环境:

硬件:Jetson orin nano 8G + D435摄像头

环境:ubuntu20.04+ros-noetic环境

详细使用教程:

第一步:安装对应版本的功能包,这里主要是ros和ros2的区别。采用源码方式安装

链接: 源码连接

第二步:将下载好的源码解压后放到自己的ROS工作空间src下,进行编译。我这里是cwkj_ws,对应如下:

cd cwkj_ws
catkin_make

第三步:新建launch文件夹和文件,方便参数的设置和管理

roscd web_video_server
mkdir launch && cd launch
gedit web_video_server.launch

接着编辑 launch 文件,例如,主机在局域网下的 ip 为 192.168.0.113 ,一定要 “address” 填写 192.168.0.xxx ,也就是确保在局域网网段,否则无法访问, 其他参数的设置可以自行修改
链接: 参数参考官方

<launch><node pkg="web_video_server" type="web_video_server" name="web_video_server" output="screen"><param name="port" type="int" value="8080" /><param name="address" type="string" value="192.168.0.113" /><param name="server_threads" type="int" value="1" /><param name="ros_threads" type="string" value="2" /><param name="width" type="int" value="1280" /><param name="height" type="int" value="1080" /><param name="quality" type="int" value="90" /></node>
</launch>

第四步:启动命令

注意:这里第一句命令根据实际使用的摄像头,使用对应的驱动命命令即可

roslaunch realsense2_camera rs_camera.launch rosrun web_video_server web_video_server

请添加图片描述

在出现以上终端日志后,在任意局域网下的电脑中,在地址栏输入对应ip地址和端口号即可

如下:

192.168.0.1138080

请添加图片描述

总结:至此实现图像的网页端远程传输,其中还有很多参数,比如图像像素以及质量等可以根据需要进行动态调整即可。

补充:需要添加参数的话,可以直接添加&符号后,加上对应参数名称和数值即可,如下

http://192.168.0.100:5000/stream_viewer?topic=/camera/color/image_raw&quality=10

此处添加了&后,加了参数quelity=10

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/240602.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

电子病历编辑器源码,提供电子病历在线制作、管理和使用的一体化电子病历解决方案

概述&#xff1a; 电子病历是指医务人员在医疗活动过程中,使用医疗机构信息系统生成的文字、符号、图表、图形、数据、影像等数字化信息,并能实现存储、管理、传输和重现的医疗记录,是病历的一种记录形式。 医院通过电子病历以电子化方式记录患者就诊的信息&#xff0c;包括&…

2024年pmp考试还有多久啊?怎么备考?

一般来说每年3、6、9、12月考试&#xff0c;一年四次&#xff0c;具体时间以官网通知为准。报考时间提前2个月报名&#xff0c;2023年的最后一次考试时间是11月&#xff0c;已经截止报名了。所以下一次考试就得等到2024年3月了。 想知道怎么备考先来分析一下现在的“新”考纲&…

npm error code EINTEGRITY 问题的解决方法之一

我在使用 npm install -g gatsby-cli 命令安装 Gatsby 时遇到了 “npm error code EINTEGRITY ” 这个问题。试了一些方法&#xff0c;最后按提示信息找 npm-cache 目录的位置将其删除&#xff0c;解决了问题&#xff0c;在这期间还升级 npm 到了最新的稳定版&#xff08;不知道…

【重点】【DP】322.零钱兑换

题目 法1&#xff1a;动态规划 // 时间复杂度&#xff1a;O(kN) class Solution {public int coinChange(int[] coins, int amount) {int[] dp new int[amount 1];Arrays.fill(dp, amount 1);dp[0] 0;for (int i 1; i < dp.length; i) {for (int coin : coins) {if (…

进程同步与进程互斥-第二十四天

目录 前言 什么是进程同步 什么是进程互斥 四大区 遵循原则 本节思维导图 前言 进程具有异步性&#xff0c;异步性是指&#xff0c;各并发执行的进程以各自独立的、不可预知的速度向前推进&#xff0c;因此为了让进程以我们想要的顺序执行&#xff0c;操作系统引入了“进…

TCP/IP,UDP,DNS,NAT,DHCP,HTTP协议

1.TCP/IP协议 TCP/IP协议是Internet最基本的协议、Internet国际互联网络的基础&#xff0c;由网络层的IP协议和传输层的TCP协议组成。通俗而言&#xff1a;TCP负责发现传输的问题&#xff0c;一有问题就发出信号&#xff0c;要求重新传输&#xff0c;直到所有数据安全正确地传…

概率中的50个具有挑战性的问题[03/50]:轻率的陪审员

一、说明 我最近对与概率有关的问题产生了兴趣。我偶然读到了弗雷德里克莫斯特勒&#xff08;Frederick Mosteller&#xff09;的《概率论中的五十个具有挑战性的问题与解决方案》&#xff08;Fifty Challenge Problems in Probability with Solutions&#xff09;一书。我认为…

如何修复concrt140.dll丢失问题,分享4种有效的方法

在计算机使用的过程中&#xff0c;我们经常会遇到一些错误提示或者系统崩溃的情况。其中之一就是“concrt140.dll丢失”。这个错误通常会导致某些应用程序无法正常运行。为了解决这个问题&#xff0c;我们需要采取一些措施来修复丢失的concrt140.dll文件。本文将介绍五个解决co…

C++ 强制类型转换static_cast<typeName>

C允许通过强制类型转换机制显式地进行类型转换。强制类型转换的格式有两种。 如&#xff1a; 为将存储在变量nData中的int值转换为long类型&#xff0c;可以使用下面的表达式中的一种&#xff1a; (long)nData …

对数函数求导

方法 一般形 复合型 复杂复合型

【编译原理--复习】

知识点整理 第一章 同时伴有表格管理、出错处理 1、词法分析 任务&#xff1a;对构成源程序的字符串进行扫描和分解&#xff0c;识别出单词(如标识符等)符号 输入&#xff1a;源程序 输出&#xff1a;单词符号序列 2、语法分析 任务&#xff1a;根据语言的语法规则对单词符号…

VTK数据结构

只有几何结构没有拓扑结构 #include <vtkSmartPointer.h> #include <vtkPoints.h> #include <vtkPolyData.h> #include <vtkPolyDataWriter.h>int main(int argc, char* argv[]) {// 创建点数据vtkSmartPointer<vtkPoints> points vtkSmartPoin…

数据分析基础之《numpy(5)—合并与分割》

了解即可&#xff0c;用panads 一、作用 实现数据的切分和合并&#xff0c;将数据进行切分合并处理 二、合并 1、numpy.hstack 水平拼接 # hstack 水平拼接 a np.array((1,2,3)) b np.array((2,3,4)) np.hstack((a, b))a np.array([[1], [2], [3]]) b np.array([[2], […

如何在openSUSE上进行远程登录和文件传输, ssh服务开启秘钥和密码认证

ssh服务开启秘钥和密码认证 默认情况下&#xff0c;没有开启密码认证。 解决方案&#xff1a; vim /etc/ssh/sshd_config PermitRootLogin yes #允许root认证登录 PasswordAuthentication yes #允许密码认证RSAAuthentication yes #秘钥认证 PubkeyAuthentica…

drools入门案例

1 业务场景说明 业务场景&#xff1a;消费者在图书商城购买图书&#xff0c;下单后需要在支付页面显示订单优惠后的价格。具体优惠规则如下&#xff1a; 规则编号 规则名称 描述 1 规则一 所购图书总价在100元以下的没有优惠 2 规则二 所购图书总价在100到200元的优惠2…

在服务器上部署SpringBoot项目jar包

以下是在服务器上部署Spring Boot项目jar包的步骤&#xff1a; 打包项目&#xff1a; 使用IDEA或者命令行工具&#xff08;如Maven或Gradle&#xff09;将Spring Boot项目打包为一个可执行的jar文件。如果使用Maven&#xff0c;可以在项目的根目录下运行以下命令来打包项目&…

tampermonkey:Tampermonkey受欢迎的用户脚本管理器油猴

Tampermonkey for Mac是一款用户脚本管理器&#xff0c;主要用于在网页上运行自定义的JavaScript代码&#xff0c;以增强网站的功能和外观。它支持在各种浏览器中使用&#xff0c;包括Chrome、Firefox和Safari等主要浏览器。 以下是Tampermonkey for Mac软件的主要特点&#x…

一款C++编写的数据可视化库Matplot++

它是基于著名的 Matplotlib 库&#xff08;Python 中广泛使用的绘图库&#xff09;构建的&#xff0c;旨在提供类似于 Matplotlib 的功能&#xff0c;但专门为 C 设计。Matplot 支持多种图表类型&#xff0c;包括线图、散点图、条形图、直方图、误差线图等&#xff0c;使数据可…

RocketMQ 入门:MQ 基础概念、集群搭建与高可用配置,消息示例详解

RocketMQ 入门 视频地址&#xff1a; 千锋教育RocketMQ全套视频教程&#xff0c;快速掌握MQ消息中间件 什么是 MQ &#xff1f; Message Queue&#xff08;消息 队列&#xff09;&#xff0c;从字面上理解&#xff1a;首先它是一个队列。FIFO 先进先出的数据结构 —— 队列…

LeetCode179最大数(相关话题:自定义排序器)

题目描述 给定一组非负整数 nums&#xff0c;重新排列每个数的顺序&#xff08;每个数不可拆分&#xff09;使之组成一个最大的整数。 注意&#xff1a;输出结果可能非常大&#xff0c;所以你需要返回一个字符串而不是整数。 示例 1&#xff1a; 输入nums [10,2] 输出&…