Draco

3D 图形开源压缩库
授权协议 Apache
开发语言 C/C++
所属分类 程序开发、 3D图形处理库
软件类型 开源软件
地区 不详
投 递 者 衡子安
操作系统 跨平台
开源组织 Google
适用人群 未知
 软件概览

Draco 是一种库,用于压缩和解压缩 3D 几何网格(geometric mesh)和点云(point cloud)。换句话说,它显著缩小了 3D 图形文件的大小,同时对 3D 图形的观看者来说又根本不严重影响视觉效果。它还旨在改善 3D 图形的压缩和传输。 

来自谷歌 Chrome Media 团队的贾米森·布雷特勒(Jamieson Brettle)和法兰克·加利根(Frank Galligan)在解释 Draco 时说:“Draco 是为了提升压缩效率和速度而设计和研制的。代码支持压缩点、连接信息、纹理坐标、颜色信息、正常量以及与几何形状有关的任何其他一般属性。有了 Draco,使用 3D 图形的应用程序可以小巧得多,又不影响视觉逼真度。对于用户来说,这意味着现在应用程序下载起来更快了,浏览器中的 3D 图形加载起来更快了,现在只需要少量的带宽就可以传输虚拟现实和增强现实了,而且可以迅速呈现、画面极其逼真。”

Draco 是作为 C++ 源代码发布的,可以用来压缩 3D 图形,另外还发布了处理编码数据的 C++ 和 Javascript 解码器。

  • Draco encode过程代码分析 - 探究其数据编码方式 Introduction Draco是谷歌在2017年1月发布的一个3D图形开源压缩库,提供了多种算法进行压缩和解压缩。 对于encoder过程,Draco整体思路是将网格的连接信息和几何信息进行分别编码并进行存储。 其中,连接信息使用了edgebreaker等算法进行了编码压缩,几何信息对数据进行量化、预测压缩、熵编码。其中熵编码采用

  • (Owed by: 春夜喜雨 http://blog.csdn.net/chunyexiyu) 关于Draco压缩算法 Draco是一个开源的Lib库,提供3D图形mesh和点云的压缩和解压。它的目标是提升3D图形的存储和传输效率。 Draco is an open-source library for compressing and decompressing 3D geometric mesh

  • 参照google源码中的示例draco_decoder,draco_encoder基本大概可以了解到Draco的使用逻辑: #include <core/decoder_buffer.h> #include <io/mesh_io.h> #include <fstream> #include <iostream> using namespace draco; using namespace s

  • Draco 源码执行过程分析 可结合源码对比查看 (一)、压缩格网信息 position顶点信息 、normal法线信息、TexCoord纹理信息、face 面 声明数组获取数据--》声明draco网格(unique_ptr<draco::Mesh> dracomesh)--》向draco网格添加面 定义面的索引信息--》向draco网格设置面的个数--》声明网格面--》将面的索引信息循环存储到网

  • draco版本是Version 1.3.6 地址:https://github.com/google/draco 压缩三角网,包括点的位置meshPositions、法线meshnormals、纹理坐标meshUv 示例使用c++完成。 具体步骤 1、初始化变量和数据。 初始化一个四边形,两个三角网 //顶点信息 float meshPositions[12] = {0, 0, 0,

  • Draco压缩算法详解 Draco压缩算法使用

  • Draco是谷歌在2017年1月发布的一个3D图形开源压缩库,提供了多种算法进行压缩和解压缩。 Draco代码分析

  • 1. 概述 Draco是Google开发的图形压缩库,用于压缩和解压缩3D几何网格(geometric mesh)和点云(point cloud)。Draco还可以直接对obj或者ply格式的三维数据进行压缩和解压缩,甚至编译成wasm在浏览器端对glTF压缩和解压缩。 2. 详论 2.1. 工具 Draco编译完成后直接提供了压缩和解压缩的工具draco_decoder.exe和draco_en

  • draco3D轻量化技术在Unity3D中应用 之前完成了draco3D对glb模型轻量化的处理工作,并完成了正常的加载。先进行draco3D在U3D中的应用。 方法一:将.obj模型压缩成.drc、.bytes类型再做加载。使用工具地址:https://github.com/google/draco.下载后直接解压,得到draco-master文件夹,将其中unity文件夹直接丢进unity工程

  • threejs中引入draco压缩后的模型 ## draco是谷歌出的一款模型压缩工具,可将gltf格式的模型进行进一步压缩提高页面加载速的一种方法,方便大家下载, 这是码云的地址https://gitee.com/zmj66666/draco.git 一、通过Draco进行压缩 #全局安装 npm install -g gltf-pipeline #压缩glb文件 -b表示输出glb格式, -d

 相关资料
  • 我一直在计算图像的未压缩和压缩文件大小。这对我来说总是导致压缩图像比我预期的未压缩图像小。如果图像包含大量不同的颜色,则存储调色板会占用大量空间,还需要更多位来存储每个代码。然而,我的问题是,压缩方法是否可能导致比未压缩的RGB图像更大的文件。对于这种压缩方法仍然有用的、总共包含k种不同颜色的最小正方形RGB图像,其大小(像素)是多少?因此,我们想要找到,对于给定的k值,找到最小整数n,对于该整数

  • 本文向大家介绍Android图片压缩(质量压缩和尺寸压缩),包括了Android图片压缩(质量压缩和尺寸压缩)的使用技巧和注意事项,需要的朋友参考一下 在网上调查了图片压缩的方法并实装后,大致上可以认为有两类压缩:质量压缩(不改变图片的尺寸)和尺寸压缩(相当于是像素上的压缩);质量压缩一般可用于上传大图前的处理,这样就可以节省一定的流量,毕竟现在的手机拍照都能达到3M左右了,尺寸压缩一般可用于生成

  • 问题内容: 我正在通过wifi或移动网络通过网络发送图像,以将其存储在服务器中并再次检索。我已经这样做了,但是由于相机拍摄的图像太大,这使我的应用程序变慢,只是要指出我正在打开图库并从那里拍摄照片,而不是直接从应用程序拍摄照片。我注意到,从相机和图库中获取的来自whatsapp的图像已被压缩到大约50%。100kb。 目前,我的代码获取一个文件,并将其转换为字节,然后发送。这是获取文件并将其转换为

  • 我正在使用Python的Pillow库来读取图像文件。如何使用哈夫曼编码进行压缩和解压缩?以下是说明: 您已经获得了一组示例图像,您的目标是在不丢失任何可感知信息的情况下尽可能压缩它们——解压后,它们应该看起来与原始图像相同。图像本质上存储为一系列颜色点,其中每个点表示为红色、绿色和蓝色(rgb)的组合。rgb值的每个分量范围在0-255之间,因此例如:(100, 0, 200)表示紫色。使用固定

  • compressImage 压缩图片接口(安卓10.0.12版本支持,ios 10.0.15版本支持) 使用方法 AlipayJSBridge.call('compressImage', { apFilePaths: ["https://resource/apmlcc0ed184daffc5a0d8da86b2f518cf7b.image"], compressLevel: 4 }, f

  • gzip是一种数据格式,默认且目前仅使用deflate算法压缩data部分; Gzip是一种流行的文件压缩算法,现在的应用十分广泛,尤其是在Linux平台。当应用Gzip压缩到一个纯文本文件时,效果是非常明显的,大约可以减少70%以上的文件大小。这取决于文件中的内容。 利用 MinDoc 中的Gzip模块,可以使用Gzip压缩算法来对 MinDoc 发布的网页内容进行压缩后再传输到客户端浏览器。这

  • 我想保存图像而不压缩它,并希望以其原始形式保存它,即当图像被压缩时,图像大小减小,图像变小。我使用原生相机为此目的。我在Android Studio工作。我正在制作一个应用程序,其中我使用相机来保存图像。但是图像被压缩,非常小,质量非常低。 下面是我保存图像的代码 更新1 为了更好地理解,我将我的方法 我搜索了解决方案,发现我可以使用AndroidBitmapUtil类,所以我复制并粘贴了这个类到

  • Android API提供了保存位图对象的方法。我创建了一个示例应用程序,它将jpeg图像(一些嘈杂的相机照片)加载到位图中,然后将其压缩回同一个文件。然后,再做5次。 显然,我的位图积累了压缩伪影。让我惊讶的是,这些伪影的数量以一种奇怪的方式取决于压缩的质量。当我将质量设置为100(我认为这是最好的质量)时,工件清晰可见。当我将质量降低到90时,工件的可视性明显降低。质量设置为80会给我最好的效