没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
超越点画
——在平面上排布对象的方法
Stefan Hiller
1
, Heino Hellwig
2
, Oliver Deussen
1
摘要:点画是一项用笔墨刻画表面的有效技术。我们提出用计算机绘制点画的方法。
和传统的点画技术对比,可使用任意形状图元代替点。本文对 Lloyd 方法改进,使得在平面
上排布小物体时能获得很好的视觉效果。因此,可以产生一些新的图像风格。也可使用类
似方法在其他的应用上来排布物体。
1 介绍
在科学方面,尤其是在建筑学和生物学上,点画广泛出现在书本的图例上。
点画是一项用于表现表面色调的明暗以及纹理的图解技术。原点来自于所谓的
泊松圆盘排布。这样的排布是具有属性特征的,将给定大小的圆盘围绕着每个
物体进行排布,并且该圆盘不会覆盖其他对象的排布。点画可以表现很多不同
的对象。
点画是采用点的形式来表现平面的纹理结构,采用多种形状的点来表现粗
糙的表面。在其他的一些风格中,用小的对象的排布来表现大的物体。目前,
人们已经提出了几个排布点画中的点的方法,但是至今还没有人提出用小的简
单的对象代替点来绘制点画的算法。
本文提出用小的简单的对象代替点来绘制点画的算法。首先,对象被随机
排布。一个特殊类型的松散方法(Lloyd 方法)将排布转化为泊松圆盘排布。我
1 / 17
们的工作是对采用基本的点来绘制点画的 Lloyd 算法进行扩展。新的方法包含
了对象的形状因素。并且原方法仅仅是移动对象,本文方法中对象的方向也是
可以旋转的。如果对象不是凸多边形或者该对象有重叠,在松散过程中就会产
生新的问题。在介绍了相关工作以及一些基本的概念之后,本文开始讨论提出
的方法,展示用不同对象来绘制点画的例子,并介绍了进一步的应用。
2.相关工作
综上所述,Lloyd 算法已经应用在点画上了。在早期的论文中,我们提出一
个用计算机合成点画的半自动方法。利用手动产生或者对已给的图像应用 half
toning 方法对圆点进行初期的排布。在交互过程中,用户可以手动选择区域并
编辑区域中圆点。系统允许用户使用指定的笔刷插入、删除或移动圆点。还有
一个特定的笔刷能够让用户将圆点集转换成泊松圆盘分布。首先计算圆点的
Voronoi 图,然后采用 Lioyd 算法,移动圆点到所属的 Voronoi 区域(如下)质
心位置,实现将移动圆点到需要的排布位置。采用这种移动圆点的方法,将几
万个圆点重新排布并绘制成点画需要花费几个小时的时间,虽然能够让用户产
生视觉满足感,但是采用这种半自动的方式来排布圆点的方法太浪费时间了。
Secord 通过采用一幅潜在的图片限制圆点移动的方法对原有方法进行了改
进。在松散期间,使用图片的梯度来限制圆点的移动:如果梯度值大于某个阈
2 / 17
值时,圆点仅能在梯度的直角上移动。这一改进,能够自动将已给的图片转换
成点画。
Meruvia et al.
11
通过将表面分成很多三角形并将圆点排布在三角形的顶点上
的方法实现了在 3D 物体上生成点画图案的技术。这种方法的优点是速度很快,
但是得到的结果图并不是很理想。Ebert et al.
9
使用随机圆点集(不是泊松圆盘
排布)将大量的数据可视化,生成了类似于点画的图像。这种方法确实改善了
大量图像的质量,但是受限于圆点。
Hausner
6
发表的文章和本文工作最相关。基于 Lioyd 方法,他提出一个对
小正方形面片进行排布来形成人工马赛克的算法。其中,Lioyd 方法用于在平面
上均匀的排布面片。对源图像预处理后,计算梯度场,用该梯度场来限制面片
的方向。由于正方形面片是非常简单的凸多边形并且作者采用了曼哈顿距离
(可以使圆点和正方形采用同样的循环方法),因此这个方法在此处是有效的。
在文章后面,本文将在后面展示使用其他对象时的循环并不理想。例如线段、
多边形等。
对这些小的对象排布有各种不同的应用,其中一个例子是交叉影线:在一
系列的文章中,采用笔来画纹理的方法预定义小笔画的交叉影线的最优排布。
这些纹理组合成一幅非真实感的大尺寸图像。这种方法产生了漂亮的图像,与
此同时,作者限制了对绘图过程的控制。在排布小的笔画的时候,Deussen 和
3 / 17
Strothotte 使用了误差扩散的变体。Ostromoukhov 在中间色图像上艺术化的排布
小的凸多边形。通过质点弹簧系统产生一个类似于泊松圆盘排布的圆点集合。
计算 Voronoi 图,用点的 Voronoi 区域产生小多边形,其中小多边形代表了图像
的灰度等级。
本文没有为笔画或者其他的小对象提供固定的位置,我们提出了一个在平
面上高效排布对象集的技术。通过多边形的边界来限制对象的排布,几乎能够
将排布归一化。用户已经完全控制了排布过程。例如,为了得到不均匀的排布,
在循环过程中,用户能够控制对象的方向,能够在不同松散的变体之间转换,
能够停止循环。
对象的排布除了应用在创造非真实感的图像之外,还有其他的一些应用。
例如植物学,在植物学复杂的生态系统中,需要排布不同形状(用它们地面上
的二维轮廓来定义)的植物集合。另一个应用领域是动画片制作:多种动画效
果能够使用该循环。
将对象(非圆点)转换为泊松圆盘分布需要两步:
1.需要快速计算任意物体的 Voronoi 图方法。Hoff et al 提出了这样的方法,
具体说明见附录 A。
2.需要高效的松散过程。除了对象的移动,还要考虑它们的方向。本文展
示了用不同的方法包含对象形状并用图例证明是有用的。附录中介绍了 Voronoi
4 / 17
剩余16页未读,继续阅读
资源评论
ShyRocket
- 粉丝: 0
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功