热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

二维图像矢量化方法简述

本文为自己学习过程中的记录。主要为整理了大佬们以往的成果,然后加一些自己的思考总结。参考文献放到了最后,向大佬致敬。二维图像分类:计算

本文为自己学习过程中的记录。主要为整理了大佬们以往的成果,然后加一些自己的思考总结。参考文献放到了最后,向大佬致敬。


二维图像分类:

计算机数字图像一般分为位图和矢量图两种:(1)像素图(2)矢量图
(1)像素图,也称位图。位图是基于像素点的图,通常也被称为点阵图、光栅图或像素图等,其存储格式多样,常用的有BMP标准图像文件格式、压缩的GIF、JPEG等文件格式。人们通过改变像素点上的颜色特征信息及像素点空间位置来实现对位图显示及内容的修改编揖。虽然位图能通过丰富多彩的色彩像素逼真地表现出自然图像,但在对基于像素表示的位图编辑时,很容易出现内容失真、存储过大、编辑复杂等问题。
(2)矢量图也被称为向量图是由一系列点、直线、折线、曲线等几何图元信息和颜色信息表示,通常被压缩为XML文件,这些图元信息通过公式计算获得,再根据计算栅格化显示,并不是由一个个像素存储显宗出来。矢量图只需要修改相应几何图元的参数信息即可实现缩放、旋转、拉申等编辑,同时矢量图易于缩放,不会造成图像的失真。如下图为一副图像的矢量图和位图文件表示,将图像局部放大同样的倍数,对比矢量图不会出现如位图一样的模糊和马赛克等现象。由于存储简单的几何图元和颜色信息,矢量图文件容量一般也较小,但不易制作色彩层次丰富的自然真实图像。
在这里插入图片描述


矢量图相比像素图具有以下特点:

(1)存储紧凑性
在文件表示上,矢量图对比位图具有更少的冗余信息,只需要保存基本几何图元和颜色信息即可,而位图需要记录每个图像中的像素坐标和颜色。同时矢量图的表示与对象湿示大小无关,对于那竖对象信息轮廓越清晰、区域色彩变化越均匀缓慢、物体显示越大时矢量图优势越突出,可减少存储空间和网络宽带。
(2)可缩放性
由于矢量图几何参数表示的优势,对其缩放操作可以保持物体边缘信息,不会出现模糊等现象。在随意缩放中,矢量图不会引起湿示质量的损失,而位图放大时由于内插算法会出现模糊和边缘银齿情况。
(3)易编辑性
对矢量图进行编辑,只需要调整基本图元矢量参数,即轻而易举可实现旋转、平移、拉伸等效果,同时不会降低图像绘制精度。而位图想要达到同样效果则需要对许多像素颜色及位置进行修改。网络常见的SVG和flash文件就是因为矢量图能便捷地进行变形和风格化从而得W广泛传播。


矢量文件:

在这里插入图片描述
在这里插入图片描述


矢量化方法:

现在的矢量化方法大致分为两类:(1)扩散曲线法,(2)网格化。
基本思想都是将像素文件进行分割,变成具有边界信息和内部填充信息的两类信息然后再做保存。
其一般存储为:边界曲线,内部填充信息
扩散曲线为例:(扩散曲线是08年提出的,基于图像轮廓可以表达图像的基本信息的认知, 把曲线和曲线上的颜色作为图像的基本信息,通过这些信息可以重新生成彩色填充的图像。)
其基本流程为:
(1)图像分割
(2)边缘检测
(3)曲线拟合
(4)将曲线和填充信息按照矢量文件的要去保存
(5)求解泊松方程将扩散曲线上的颜色迭代的扩散到整幅图像。
在这里插入图片描述

一些经典算法如下:

该截图截自李瑞龙的论文《基于Canny优化的卡通视频分割与矢量化》
在这里插入图片描述


参考资料:

(1)基于Canny优化的卡通视频分割与矢量化
(2)带有扩散系数的扩散曲线生成方法
(3)基于特征边界提取的图像矢量化


推荐阅读
  • 帝国CMS多图上传插件详解及使用指南
    本文介绍了一款用于帝国CMS的多图上传插件,该插件通过Flash技术实现批量图片上传功能,显著提升了多图上传效率。文章详细说明了插件的安装、配置和使用方法。 ... [详细]
  • 最近团队在部署DLP,作为一个技术人员对于黑盒看不到的地方还是充满了好奇心。多次咨询乙方人员DLP的算法原理是什么,他们都以商业秘密为由避而不谈,不得已只能自己查资料学习,于是有了下面的浅见。身为甲方,虽然不需要开发DLP产品,但是也有必要弄明白DLP基本的原理。俗话说工欲善其事必先利其器,只有在懂这个工具的原理之后才能更加灵活地使用这个工具,即使出现意外情况也能快速排错,越接近底层,越接近真相。根据DLP的实际用途,本文将DLP检测分为2部分,泄露关键字检测和近似重复文档检测。 ... [详细]
  • 深入解析Redis内存对象模型
    本文详细介绍了Redis内存对象模型的关键知识点,包括内存统计、内存分配、数据存储细节及优化策略。通过实际案例和专业分析,帮助读者全面理解Redis内存管理机制。 ... [详细]
  • 本文详细介绍了Linux系统中init进程的作用及其启动过程,解释了运行级别的概念,并提供了调整服务启动顺序的具体步骤和实例。通过了解这些内容,用户可以更好地管理系统的启动流程和服务配置。 ... [详细]
  • 深入解析 Apache Shiro 安全框架架构
    本文详细介绍了 Apache Shiro,一个强大且灵活的开源安全框架。Shiro 专注于简化身份验证、授权、会话管理和加密等复杂的安全操作,使开发者能够更轻松地保护应用程序。其核心目标是提供易于使用和理解的API,同时确保高度的安全性和灵活性。 ... [详细]
  • 作者:守望者1028链接:https:www.nowcoder.comdiscuss55353来源:牛客网面试高频题:校招过程中参考过牛客诸位大佬的面经,但是具体哪一块是参考谁的我 ... [详细]
  • 探索12个能显著提升iPhone使用体验的隐藏技巧,掌握这些功能后,你会发现生活更加便捷高效。 ... [详细]
  • 本文深入探讨了 Redis 的两种持久化方式——RDB 快照和 AOF 日志。详细介绍了它们的工作原理、配置方法以及各自的优缺点,帮助读者根据具体需求选择合适的持久化方案。 ... [详细]
  • jQuery HooRay:一款自创的实用 jQuery 工具插件
    这款插件主要由作者在工作中积累的常用功能开发而成,旨在解决现有插件间的冲突及浏览器兼容性问题。通过整合和优化现有插件,确保其稳定性和高效性。 ... [详细]
  • 本文详细介绍了如何在WebStorm中配置File Watchers,以实现在编辑LESS文件时自动生成压缩后的CSS文件和对应的源映射(.map)文件。通过简单几步设置,可以大幅提升前端开发效率。 ... [详细]
  • Netflix利用Druid实现高效实时数据分析
    本文探讨了全球领先的在线娱乐公司Netflix如何通过采用Apache Druid,实现了高效的数据采集、处理和实时分析,从而显著提升了用户体验和业务决策的准确性。文章详细介绍了Netflix在系统架构、数据摄取、管理和查询方面的实践,并展示了Druid在大规模数据处理中的卓越性能。 ... [详细]
  • Python处理Word文档的高效技巧
    本文详细介绍了如何使用Python处理Word文档,涵盖从基础操作到高级功能的各种技巧。我们将探讨如何生成文档、定义样式、提取表格数据以及处理超链接和图片等内容。 ... [详细]
  • Windows 7 64位系统下Redis的安装与PHP Redis扩展配置
    本文详细介绍了在Windows 7 64位操作系统中安装Redis以及配置PHP Redis扩展的方法,包括下载、安装和基本使用步骤。适合对Redis和PHP集成感兴趣的开发人员参考。 ... [详细]
  • 雨林木风 GHOST XP SP3 经典珍藏版 V2017.11
    雨林木风 GHOST XP SP3 经典珍藏版 V2017.11 ... [详细]
  • Hadoop发行版本选择指南:技术解析与应用实践
    本文详细介绍了Hadoop的不同发行版本及其特点,帮助读者根据实际需求选择最合适的Hadoop版本。内容涵盖Apache Hadoop、Cloudera CDH等主流版本的特性及应用场景。 ... [详细]
author-avatar
露絲瑪麗蓮夢露_533
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有