浅谈:基于三维场景的视频融合方法

news/2024/11/15 3:25:32/

视频融合技术的出现可以追溯到 1996 年 , Paul Debevec等 提出了与视点相关的纹理混合方法 。 也就是说 , 现实的漫游效果不是从摄像机的角度来看 , 但其仍然存在很多困难 。基于三维场景的视频融合 , 因其直观等特效在视频监控等相关领域有着更实际的运用 。

目前关于三维场景视频融合已经有一些相关研究 。 美国Sarnoff 公司使用纹理映射方法计算模型表面颜色 , 将实时视频流作为纹理投影到模型上 , 并提出了 Vide 。Flashlights 系统 , 这也是最早的比较完善的视频融合形式 。 南加州大学的 Hu 等提出了一种基于视频图像变形 (image-warping) 的视频融合方法 , 即基于航拍影像和地面拍摄图形进行三维重建 ?然后使用基本纹理缓存 ( Base Texture Buffer) 来更新建筑表面的纹理贴图  。 Chen 等实现了一个室内监控系统  , 通过简单的室内虚拟场景虚拟模型 , 使用动态纹理映射技术将视频画面投影到几何表面 

视频融合技术的核心即三维场景中的视频投影 , 以多路摄像头视频流接入 、 视频场景对应特征点的收集与计算作为基础 , 将视频图像融合到三维场景中并达到在三维场景中视频基于真实环境展示的效果

三维视频融合方法

随着智慧城市 、 物联网等概念的提出 , 人们可以通过各种技术手段获取城市的各种信息 , 并对其进行归类 、 分析和检测 。 监控摄像头就是其中一个非常重要的部分 。 但是传统监控方式是基于一个大屏幕显示多个监控画面的形式来进行工作的 , 由于缺少空间位置等信息 , 工作人员需要在多个监控视频中查找自己所需的内容 , 这种方式效率十分低下且不直观 。

对于三维视频监控方向 , 当前比较常见的方法是在三维场景中对各个城市各个地点的摄像头位置进行标记 , 如果监控工作人员希望调用某个地点的摄像头 , 则只需打开对应地区的标注 。 但是这种方法只是简单地将二维的监控视频与三维场景结合在一起 , 只是一个有着三维位置信息的 “ 大屏幕 ” ,并没有完全发挥出三维场景的直观性。

因此,智汇云舟提出把监控视频与三维场景紧密融合(即视频融合)的新思路 。 依托于单独的三维引擎,实现小范围或局部的三维场景与视频等资源的融合应用;也可以依托于三维地理信息系统(3D GIS),实现全球广域范围内的三维地理信息可视化融合应用。在三维可视化数据挖掘和处理上,基于三维地理信息的视频融合技术具有天然的时间和空间优势。通过内置的国际化统一标准的经度、纬度、海拔等地理信息坐标体系,可以实现三维可视化视频融合平台的基于LI(时空位置智能)的定位和时空动态分析, 增加了视频空间位置信息 , 也增强了视频的空间直观性 。

视频融合在大范围三维场景中的实现

大规模 3D 空间信息实时可视化的关键除了视频融合效果之外 , 还减弱了场景复杂度对渲染速度和逼真度的影响 。这也是特定场景简化三维视频融合的过程并采用平面视频融合的主要原因之一 。

采用基于外存 ( out-o-core ) 绘制 、 层次多分辨率模型表现和遮挡剔除相结合的算法可以极大地提高绘制效率 , 并且能够在提供简化模型的同时保持较好的视域剔除与遮挡剔除效率 。 同时也为其他需要三维空间关系处理的行为 ( 例如碰撞检测等 ) 提供更好的优化 。

三维视频融合到平面视频融合 , 场景模型同样从三维到平面 , 最终以卫星地图的形式展示在三维场景中 。 为了加速可视化过程 , 采用基于视觉误差的 LOD ( Levels of Detail )生成和控制方法 , 在误差允许的范围内通过绘制该简易网格来代替绘制精细地图 


http://www.ppmy.cn/news/1547113.html

相关文章

【SpringBoot】21 @Async异步任务线程池的隔离

Git仓库 https://gitee.com/Lin_DH/system 介绍 线程池隔离:指一种通过为每个服务提供独立的线程池来隔离服务之间的资源和执行环境的做法。 为什么需要线程池隔离? 资源隔离,每个服务都有独立的线程池,可以避免由于某个服务的…

电商系统设计与实现:Spring Boot框架

6 系统测试 程序软件一旦被开发完成之后,在真正投入日常生活中进行运行使用之前,是必须要经历测试这一个重要的操作环节,因为开发期间注重的是每个单独功能模块的开发,尽管每次开发完成一个单独功能模块时,会通过单元测…

09C++结构体

/*结构体属于用户自定义的数据类型&#xff0c; 允许用户存储不同的数据类型, 语法:struct 结构体名{结构体成员列表} ;*/ //struct 结构体名 变量名 #include <iostream> #include <string> using namespace std; struct student { string name; int age;int s…

【网络】完美配置 HTTPS:优化 SSL/TLS 证书以增强网站安全和性能

目录 引言一、申请 SSL/TLS 证书1.1 什么是 SSL/TLS 证书&#xff1f;1.2 如何申请 SSL/TLS 证书&#xff1f;1.3 SSL 证书的种类 二、安装 SSL/TLS 证书2.1 Apache 安装 SSL 证书2.2 Nginx 安装 SSL 证书2.3 IIS 安装 SSL 证书2.4 测试 SSL 配置 三、强制使用 HTTPS3.1 设置 H…

管理Linux软件包和进程

管理Linux软件包和进程 1. 源码下载安装软件 1.1 概念 源码文件&#xff1a;程序编写者使用C或C等语言编写的原始代码文本文件源码文件使用.tar.gz或.tar.bz2打包成压缩文件 1.2 特点 源码包可移植性好&#xff0c;与待安装软件的工作环境依赖性不大由于有编译过程&#x…

普通电脑上安装属于自己的Llama 3 大模型和对话客户端

#大模型下载地址&#xff1a;# Llama3 因为Hugging Face官网正常无法访问&#xff0c;因此推荐国内镜像进行下载&#xff1a; 官网地址&#xff1a;https://huggingface.co 国内镜像&#xff1a;https://hf-mirror.com GGUF 模型文件名称接受&#xff0c;如上述列表中&…

golang go语言 组建微服务架构详解 - 代码基于开源框架grpc+nacos服务管理配置平台

整体介绍&#xff1a; 本文主要介绍如何用go语言 来组建微服务的框架&#xff0c;grpc服务管理 示例框架 代码由grpcnacos go sdk 组成。 grpc负责将调用序列化并传递到远端&#xff0c;nacos负责服务发现和服务管理。 grpc和nacos都是开源产品。代码复制下来就能跑。 微服…

Ubuntu20.04 安装build-essential问题

#sudo apt-get install build-essential问题 The following packages have unmet dependencies: build-essential : Depends: libc6-dev but it is not going to be installed or libc-dev Depends: g (> 4:9.2) but it is not going to be installed E: Unable to correct…