写点什么

图像方面的新闻:Xamarin 的 Kimono 以及 Google 的 Guetzli 和 Draco

  • 2017-03-30
  • 本文字数:1307 字

    阅读完需:约 4 分钟

Xamarin 开源了用于编辑 SkiaSharp 对象的工具,而 Google 则推出了减少 2D JPEG 和 3D 图形大小的方案。

Xamarin 是微软的子公司,开源了 Kimono 设计器,它是一个用来图形化编辑 SkiaSharp 对象的工具,这种对象随后可以转换为目标平台的编码。SkiaSharp 是基于 Skia 图像库的.NET 2D API,Skia 项目是由 Google 发起的,作为一种跨平台的图像引擎来使用,它目前用到了 Chrome、Firefox、Android 等平台上。Skia 和 SkiaSharp 的问题在于开发人员需要使用类似于 Java 2D 的底层的 API 来创建 2D 图像。使用它来绘制贝塞尔曲线的样例可以在 Skia Fiddle 页面上找到。Kimono 设计器能够让开发人员以图形化的方式创建 2D 图片,让这项任务变得更加简单。

Kimono 带来了很多的特性,包括颜色调色板(Color Palettes)、可视化的渐变编辑器(Visual Gradient Editor)、已命名的样式(Named Styles)、属性链接(Linked Properties)、脚本语言等。这个工具可以为 Windows (WinForms、UWP、WPF)、Android、iOS, MacOS、tvOS 或跨平台生成编码。目前,Kimono 只能运行在 MacOS 上,但是 Xamarin 计划提供 UWP 以及 Android 和 iOS 平板的版本。

而在另一方面,Google 开源了 Guetzli [guɛtsli],这是一个新的 JPEG 压缩算法和编码器,它能够提供更好的压缩比例同时保持图片的质量不受影响。按照 Google 的说法,Guetzli 的图片相对于 libjpeg 产生的相同 JPEG 图片,在文件大小上能够小 20-30%。根据这篇文章的说法,文件大小可以减少 35%。在实现这项功能时,不需要改变使用 JPEG 的浏览器和应用的已有写法。Guetzli 之所以能够实现更小的文件尺寸要归功于它能够消除图片中元素,而且不会影响图片的质量。开发 Guetzli 的团队这样描述到

JPEG 图片的视觉质量与其多个阶段的压缩过程直接相关:彩色空间转换(color space transform)离散余弦转换(discrete cosine transform)以及量化(quantization)。Guetzli 的目标就在量化阶段,在这个阶段,视觉质量损失得越多,所形成的文件就越小。Guetzli 在最小化损失和文件大小之间取得了一种平衡,这是通过一种搜索算法来实现的,该算法试图克服JPEG 格式的 psychovisual 模型与 Guetzli 的 psychovisual 模型之间的差异,相对于简单的色彩转换和离散余弦转换,Guetzli 能够采用一种更全面和细致的方式达到近似的色彩感知和视觉效果。Guetzli 做到了文件尺寸更小,但是其代价就是相对于目前可用的方法,它的搜索算法在创建压缩文件时,会耗费更长的时间。

在今年早些时候,在减少互联网数据传输方面,Google 还做了另外一项工作,这次的成果是应对 3D 图像。 Draco 是一个针对 3D 几何网格(geometric meshes)和点云(point clouds)的压缩库。这个库支持“压缩点、连接信息、纹理坐标(texture coordinates)、颜色信息、法线(normals)以及其他与几何相关的通用属性。”按照这篇文章的说法,相对于网格文件压缩,它所能达成的结果就是3D 图像能够在尺寸上减少十数倍。Draco 附带了一个C++ 编码器,还有一个C++ 和JavaScript 的转码器,其中JavaScript 转码器瞄准的就是Web 应用中的使用场景。

查看英文原文 News in Graphics: Xamarin Kimono, Google Guetzli and Draco

2017-03-30 19:001997

评论

发布
暂无评论
发现更多内容

Hoo虎符研究院|区块链简报20220314期

区块链前沿News

Hoo 虎符交易所

什么是数据中心架构?

Ethereal

Flink 实践教程-进阶(10):自定义聚合函数(UDAF)

腾讯云大数据

flink sql 流计算 Oceanus

程序员有了这些工具,还用加班吗

刘祥

2022年软考时间是怎么安排的,有哪些工种可以选择?如何备考?

Ethereal

Java中的异常

javaadu

Java 面试题 Java面试题

Apache ShenYu源码阅读系列-Agent模块源码分析

子夜2104

ICT的圣杯(一):人形电脑天使心

脑极体

数据分析小结:使用流计算 Oceanus(Flink) SQL 作业进行数据类型转换

腾讯云大数据

流计算 flink window

如何使用帆软BI直接分析明道云数据

明道云

多场景推进 服务网格在联通的落地实践(上)

百度大脑

什么是数据中心虚拟化?

Ethereal

【网络安全】brainpan-windows缓冲区溢出详解

网络安全学海

黑客 网络安全 信息安全 渗透测试 安全漏洞

Flink 实践教程-进阶(9):自定义表值函数(UDTF)

腾讯云大数据

flink sql 流计算 Oceanus

redis持久化机制

喀拉峻

网络安全

5G和Wi-Fi市场与技术的一些思考系列之一

李伟-晨泳

技术解读:英特尔 x86 平台上,AI 能力是如何进行演进的?(附PPT)

OpenAnolis小助手

人工智能 X86 intel 自然语言模型

Linux之scp命令

入门小站

Linux

Flutter 列表下拉刷新和上拉加载实现

岛上码农

flutter ios 安卓 移动端开发 3月月更

开源|携程机票BDD-UI测试框架Flybirds

liang chen

开源 自动化测试框架 BDD UI自动化

如何基于实时声纹变声实现对声音的“克隆”

声网

人工智能 音视频 声纹识别

算法训练营毕业总结

白开水又一杯

算法训练营

camtasia studio2022更新内容介绍

茶色酒

TDesign 更新周报(2022年3月第2周)

TDesign

Mac应用打开小程序的技术解决方案

Speedoooo

微信小程序 智能设备 Windows 应用打开小程序 Mac应用打开小程序 电脑运行微信小程序

明道云2022年春季校园招聘启动啦!

明道云

浏览器中的页面

Tristan

在线上传图片二维码识别解析

入门小站

工具

如何写好一篇技术文章

Hockor

写文章

如何在 Ubuntu 20.04 上安装和配置 NFS 服务器?

Ethereal

架构训练营模块五

刘帅

图像方面的新闻:Xamarin的Kimono以及Google的Guetzli和Draco_.NET_Abel Avram_InfoQ精选文章