基于深度图像渲染(DIBR)的虚拟视点图像生成系统
项目介绍
本项目是一个基于深度图像渲染技术的虚拟视点图像生成系统。系统通过输入原始视点的彩色图像与对应的深度图像,结合相机内外参数,利用3D投影变换生成指定虚拟视点的合成图像。该系统可有效应用于3D视频、虚拟现实、自由视点视频等需要生成新视角画面的场景。
功能特性
- 深度图预处理:对输入的深度图进行空洞填充与滤波平滑,提升深度数据质量。
- 3D Warping变换:基于相机参数精确计算原始视点到虚拟视点的投影变换矩阵。
- 虚拟视点合成:执行3D投影,将原始图像像素映射至虚拟视点坐标系。
- 空洞修复处理:针对合成图像产生的空洞,采用背景填充与插值算法进行修复。
- 质量评估与可视化:输出合成图像及对应的深度重投影图,并提供PSNR、SSIM等客观质量评估指标与中间过程可视化结果。
使用方法
- 准备输入数据:
- 将原始视点的彩色图像(RGB格式,如jpg/png)放置在指定目录。
- 准备对应的深度图像(单通道灰度图,如png/mat),确保深度值范围正确。
- 配置相机参数文件(mat格式),包含原始相机与虚拟相机的内参(焦距、主点)和外参(旋转、平移、基线距离)。
- 运行主程序:
在MATLAB环境中运行主程序入口,系统将自动加载数据、执行DIBR流程并生成结果。
- 获取输出结果:
- 虚拟视点合成图像(RGB格式)。
- 重投影的深度图。
- 处理过程可视化图像(如深度预处理效果、空洞分布等)。
- 质量评估报告(文本文件,包含PSNR、SSIM等指标)。
系统要求
- 操作系统:Windows / Linux / macOS
- 软件环境:MATLAB R2018b 或更高版本
- 依赖工具箱:Image Processing Toolbox, Computer Vision Toolbox
- 硬件建议:内存不小于8GB,支持OpenGL的显卡
文件说明
主程序文件作为系统的核心调度与执行入口,主要实现了完整的DIBR处理流程。其功能包括:读取与校验输入的彩色图像、深度图及相机参数;对深度图进行预处理以填充空洞并平滑噪声;依据相机内外参数计算3D warping变换矩阵;执行像素级的3D投影变换,将原始视图映射至虚拟视点;检测并修复合成图像中的空洞区域;最终生成虚拟视点合成图像、重投影深度图、过程可视化结果以及图像质量评估报告。