{"repo":"hh-hang/vid3d-projection","free":true,"listed":false,"github":"https://github.com/hh-hang/vid3d-projection","clone":"git clone https://github.com/hh-hang/vid3d-projection.git","description":"The video projection tool based on three.js and CesiumJS","language":"Vue","stars":107,"topics":["videoprojection","videofusion","threejs","cesiumjs","spatial-video","webgl"],"license":"MIT","category":"game-templates","readme_excerpt":"English --- vid3d-projection [![NPM Package][npm]][npm-url] vid3d-projection 是一个面向 Three.js 和 Cesium.js 的三维视频投影工具库，支持把视频内容投射融合到 3D 模型或地理场景中，并提供基于 2D–3D 对应点的投影相机标定求解。 --- 在线演示 点击图片查看在线示例： Three.js 视频融合 Cesium.js 视频融合 Three.js 电影院 --- 本地运行示例 浏览器打开： http://localhost:5173 --- 安装 --- 导入方式 推荐按子路径导入： --- 快速开始 Three.js Cesium.js 说明： - createCesiumVideoProjector(viewer, opts) 会把投影器作为 primitive 加入 viewer.scene.primitives 。 - 不需要手动调用 projector.update() ，Cesium 渲染流程会自动调用。 相机标定 通过视频像素点与三维点的对应关系，在 当前投影参数 基础上最小化重投影误差，优化位置、方位/俯仰/横滚和 FOV。初值需大致合理（可先手调 GUI），对应点分布越好，收敛越稳。库只提供求解函数；选点 UI 见监控示例。 标定期间请保持 cropRect / quadCorners 为默认恒等，否则求解投影模型与最终采样可能不一致。至少需要 6 组对应点，建议 10～20 组并覆盖画面边缘与不同景深。 Three.js world 使用 Three.js 场景坐标； uv 为归一化视频坐标 [0, 1] （原点在左下）。 Cesium.js world 使用 ECEF 直角坐标； position 为 [经度, 纬度, 高度] 。 --- API Three API createThreeVideoProjector(opts: ThreeProjectorToolOptions): Promise ThreeProjectorToolOptions 参数表： 参数 类型 必填 默认值 说明 --- --- --- --- --- scene THREE.Scene 是 - Three 场景实例。 renderer THREE.WebGLRenderer 是 - Three 渲染器实例。 videoTexture THREE.VideoTexture 是 - 投影的视频纹理。 projCamPosition [number, number, number] 否 [0, 0, 0] 投影相机位置 [x, y, z] 。 projCamParams.fov number 否 30 投影相机 FOV（度）。 projCamParams.aspect number 否 1 投影相机宽高比。 projCamParams.near number 否 0.1 投影相机近裁剪面。 projCamParams.far number 否 50 投影相机远裁剪面。 orientationParams.azimuthDeg number 否 0 方位角（度）。 orientationParams.elevationDeg number 否 0 俯仰角（度）。 orientationParams.rollDeg number 否 0 横滚角（度）。 depthSize number 否 1024 深度贴图分辨率（宽高相同）。 intensity num","default_branch":null,"files":null,"tree":[],"storefront":"/r/hh-hang","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/hh-hang/vid3d-projection/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}