【算法测试】盒子上绑定好的算法,只能输入rtsp流, 如何测试其精度? 讲图片拼接成视频,然后生成rtsp流

news2025/1/24 15:00:09

文章目录

  • 前言
  • 1. 安装rtsp服务器
  • 2. 用ffmpeg推送视频到rtsp
  • 3.用VLC 承接播放,查看效果:
  • 4. 找一个测试集图片集,生成视频


前言

要测试盒子上的算法精度,但盒子的算法只能输入rtsp流,这样我们难道只能去摄像头底下演示效果,这样的限制太大了。
解决方案:
1.将测试集图片组成视频
2.将视频生成rtsp流
3.将rtsp流推到算法侧即可


1. 安装rtsp服务器

ref:https://github.com/bluenviron/mediamtx/releases
在这里插入图片描述
ref:https://github.com/bluenviron/mediamtx#standalone-binary
在这里插入图片描述
然后解压后,运行
./mediamtx

(base) [jianming_ge@localhost software]$ ./mediamtx
2023/08/18 09:53:06 INF MediaMTX v1.0.0
2023/08/18 09:53:06 INF [RTSP] listener opened on :8554 (TCP), :8000 (UDP/RTP), :8001 (UDP/RTCP)
2023/08/18 09:53:06 INF [RTMP] listener opened on :1935
2023/08/18 09:53:06 INF [HLS] listener opened on :8888
2023/08/18 09:53:06 INF [WebRTC] listener opened on :8889 (HTTP)
2023/08/18 09:53:06 INF [SRT] listener opened on :8890 (UDP)

可以看到,RTSP那一行,TCP的8554端口

2. 用ffmpeg推送视频到rtsp

使用命令:
ffmpeg -re -i test_person.mp4 -c copy -f rtsp rtsp://172.18.42.16:8554/a
输出:

(base) [jianming_ge@localhost test_video]$ ffmpeg -re -i test_person.mp4 -c copy -f rtsp rtsp://172.18.42.16:8554/a
ffmpeg version 4.3 Copyright (c) 2000-2020 the FFmpeg developers
  built with gcc 7.3.0 (crosstool-NG 1.23.0.449-a04d0)
  configuration: --prefix=/home/miniconda_root --cc=/opt/conda/conda-bld/ffmpeg_1597178665428/_build_env/bin/x86_64-conda_cos6-linux-gnu-cc --disable-doc --disable-openssl --enable-avresample --enable-gnutls --enable-hardcoded-tables --enable-libfreetype --enable-libopenh264 --enable-pic --enable-pthreads --enable-shared --disable-static --enable-version3 --enable-zlib --enable-libmp3lame
  libavutil      56. 51.100 / 56. 51.100
  libavcodec     58. 91.100 / 58. 91.100
  libavformat    58. 45.100 / 58. 45.100
  libavdevice    58. 10.100 / 58. 10.100
  libavfilter     7. 85.100 /  7. 85.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  7.100 /  5.  7.100
  libswresample   3.  7.100 /  3.  7.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'test_person.mp4':
  Metadata:
    major_brand     : mp42
    minor_version   : 0
    compatible_brands: mp41isom
    creation_time   : 2020-03-04T03:26:20.000000Z
  Duration: 00:00:14.77, start: 0.000000, bitrate: 3989 kb/s
    Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 3988 kb/s, 30 fps, 30 tbr, 30k tbn, 60 tbc (default)
    Metadata:
      creation_time   : 2020-03-04T04:05:36.000000Z
      handler_name    : VideoHandler
      encoder         : AVC Coding
Output #0, rtsp, to 'rtsp://172.18.42.16:8554/a':
  Metadata:
    major_brand     : mp42
    minor_version   : 0
    compatible_brands: mp41isom
    encoder         : Lavf58.45.100
    Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 3988 kb/s, 30 fps, 30 tbr, 90k tbn, 30 tbc (default)
    Metadata:
      creation_time   : 2020-03-04T04:05:36.000000Z
      handler_name    : VideoHandler
      encoder         : AVC Coding
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
Press [q] to stop, [?] for help
frame=  443 fps= 30 q=-1.0 Lsize=N/A time=00:00:14.73 bitrate=N/A speed=   1x

3.用VLC 承接播放,查看效果:

在这里插入图片描述
成功。

4. 找一个测试集图片集,生成视频

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

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

相关文章

【多线程】JUC的常见类

1. Callable 接口 首先先来认识下什么是 JUC,JUC 全称为 java.util.concurrent,这个包里面放了并发编程(多线程相关的组件) Callable 接口类似于 Runnable 一样,Runnable 用来描述一个任务,而 Callable 也是用来描述一个任务的。 …

爱分析发布2023商业智能最佳实践案例,OceanMind海睿思再次入选!

近日,中国领先的产业数字化研究与咨询机构 爱分析,在北京举办了第五届数据智能高峰论坛,活动以“激活数据资产,释放数据价值”为主题。 中新赛克海睿思作为数字化转型优秀厂商代表受邀参会。 会上,爱分析重磅发布了《…

Keepalived + Nginx 实现高可用

一、简介 浮动IP、漂移IP地址又叫做VIP,也就是虚拟IP。 Keepalived 是一种高性能的服务器高可用或热备解决方案。 Keepalived 可以用来防止服务器单点故障的发生,通过配合 Nginx 可以实现 web 前端服务的高可用。 Keepalived 以 VRRP 协议为实现基础&a…

批量删除文件名前的数字编号?

批量删除文件名前的数字编号?如果你在网上经常下载文件,你会发现下载的文件名称前面一般都会有很的数字编号,这些数字编号有时候会非常的长,导致文件的名称也非常的长,这样对于文件的管理和查找使用是不利的。所以为了…

推荐一个绘图平台(可替代Visio)

不废话,简易记网址: draw.io 网站会重定向到:https://app.diagrams.net/

LeetCode 141.环形链表

文章目录 💡题目分析💡解题思路🔔接口源码💡深度思考❓思考1❓思考2 题目链接👉 LeetCode 141.环形链表👈 💡题目分析 给你一个链表的头节点 head ,判断链表中是否有环。 如果链表中…

XDocReport文书生成总结

最近弄一个业务需要搞很多的word文档导出,供前端下载。之前的实现方式一般是先把word转成XML格式,然后赋值变量,这种方式虽然可行,但是遇到那种长篇且变量又多的文档,就很让人头大,密密麻麻的一堆代码&…

Spring-3-Spring AOP概念全面解析

今日目标 能够理解AOP的作用 能够完成AOP的入门案例 能够理解AOP的工作流程 能够说出AOP的五种通知类型 一、AOP 1 AOP简介 思考:什么是AOP,AOP的作用是什么? 1.1 AOP简介和作用【理解】 AOP(Aspect Oriented Programming)面向切面编程,一…

Windows系统修改域名DNS指向两种方式

一、直接打开对应文件进行修改 1、进入hosts文件目录:C:\Windows\System32\drivers\etc 2、右键打开HOSTS文件进行编辑,将需要对应的域名和IP地址进行配置 编写完成后 Ctrl s 进行保存即可。 二、使用DOS命令进行修改 1、按住键盘win键 r 打开命令…

设计师必备的5个PNG免抠素材网站,简直不要太好用~

广大设计师们是不是经常要用免抠素材的时候网上找的质量差,还要各种付费才能使用,最后只能打开PS慢慢的扣,真的很费时间。本期我就给大家推荐5个高质量、免费的免抠素材网站,有需要的朋友们赶紧收藏。 菜鸟图库 https://www.suc…

2021年3月全国计算机等级考试真题(C语言二级)

2021年3月全国计算机等级考试真题(C语言二级) 第1题 算法空间复杂度的度量方法是() A. 算法程序的长度 B. 算法所处理的数据量 C. 执行算法所需要的工作单元 D. 执行算法所需要的存储空间 正确答案:D 第2题 下列叙…

wangEditor修改节点数据

前言 wangEditor简介 wangEditor 是一款基于 JavaScript 和 jQuery 的开源富文本编辑器,具有简单易用、功能丰富的特点。它提供了一整套的富文本编辑功能,包括文字样式设置、插入图片、插入表格、插入链接、代码块等。wangEditor 支持多种浏览器&#x…

大数据时代下的数据中心运维管理

摘要:本文将从数据中心运维管理的角度,联系现实情况,对运维管理进行研究,期望通过本项目的研究,显著提升数据中心运维治理的整体质量。这样,才能充分发挥大数据的价值,并推动企业加速发展。 关…

将nginx内存池代码单独编译运行,了解nginx内存池工作原理,附代码

初识nginx——内存池篇 https://www.cnblogs.com/magicsoar/p/6040238.html 为了自身使用的方便,Nginx封装了很多有用的数据结构,比如ngx_str_t ,ngx_array_t, ngx_pool_t 等等,对于内存池,nginx设计的十分精炼,值得我…

揭秘亚马逊广告运作:了解逻辑,事半功倍的广告成功!

亚马逊广告的多重形式亚马逊为卖家提供了多种广告形式,用于在平台上展示并推广产品。以下是亚马逊广告的主要形式: 1.Sponsored Products: 这是常见的广告类型,允许产品在搜索结果和产品页面中显示。广告与自然搜索结果相似&…

23款奔驰GLE450豪华型桃木方向盘,提升方向盘握感

桃木是目前国内各级车型中最为主流的木饰,虽然看起来一样,但是多数低端车型中配备的并非实木,而是由聚酯材料制成的仿桃木。其实我们这里所说的“桃木”也并非我们所熟知的那个可以结桃子的果树,而是胡桃木或是核桃木。胡桃木原产…

算法通关村第八关——轻松搞定翻转二叉树

二叉树有很多经典算法题,今天我们就来看一下二叉树里的翻转问题。 力扣226,给了一棵二叉树,要将二叉树整体翻转。 分析:观察图中翻转前后的二叉树,我们不难发现,翻转过程中,只需要把每一个节点的左右子节点…

13. Vuepress2.x 部署站点的基础路径从配置文件中读取

收到需求,站点要部署到 非根路径 下,且将来会根据 版本号 区分不同的基础路径。需要从统一的文件中读取,方便其它 js 文件和 config.js 配置统一读取。 目录 docs\.vuepress\public\cfg\ 下新建文件 version.js,内容如下 const P…

cmake扩展(5)——file命令排除部分文件

在cmake中可以使用file命令获取需要的文件&#xff0c;并且支持正则/通配符&#xff0c;使用起来还是很方便的。 #语法file({GLOB | GLOB_RECURSE} <out-var> [...] [<globbing-expr>...])#example file(GLOB_RECURSE SOURCES "src/*.h" "src/*.cp…

如何计算 SDK 占用的 CPU 算力值(DMIPS)

什么是 DMIPS &#xff1f; 网上搜了些 DMIPS 的相关材料&#xff0c;知道它是用来评价 CPU 运算能力的一个指标。其中在知乎上有人介绍这个概念&#xff0c;是自动驾驶芯片性能常用的评价指标&#xff08;自动驾驶芯片性能评价指标:DMIPS,TOPS - 知乎&#xff09;。 如何计算…