A GPU Implementation of Watercolor Painting Image Generation

A GPU Implementation of Watercolor Painting Image Generation
复制标题

水彩画图像生成的 GPU 实现

DOI:
10.1109/candarw53999.2021.00031
复制
发表时间:
2021
期刊:
Proc. of CANDAR Workshops
影响因子:
--
通讯作者:
Koji Nakano
Koji Nakano
中科院分区:
--
文献类型:
--
作者:
Jiamian Huang;Yasuaki Ito;Koji Nakano

文献摘要

相似文献

基于笔触的渲染是一种通过多次重复绘图(称为笔触)来生成具有实际笔触效果的图像的技术。本文提出了一种基于笔画绘制的水彩图像生成方法。我们使用一个物理模型,通过计算水和颜料的运动来模拟纸上的水彩画。这种方法需要逐一绘制大量的笔画,并且绘制的每个笔画的水彩模拟计算成本也非常高。因此,为了减少生成时间,我们提出了一种同时绘制多个笔画的并行算法。并行算法的思想是独立地生成多个笔画。然而,由于一些生成的笔画有重叠,这些笔画不能同时绘制。在我们的方法中,我们通过将该问题简化为独立的点集问题并求解它来找到非重叠笔画。此外,我们还在GPU上实现了这种并行算法。实验结果表明,在NVIDIA GeForce RTX 3090上实现的GPU在CPU上串行执行的加速系数高达75。
Stroke-based rendering is a technique to generate images with the painting effect of an actual brush stroke by repeating a drawing, called a stroke, many times. In this paper, we propose a watercolor image generation with stroke-based rendering. We use a physical model that simulates a watercolor painting on paper by computing the movement of water and pigment. This method requires a large number of strokes to be drawn one by one, and the computational cost of watercolor simulation for each stroke drawn is also very high. Therefore, to reduce the generation time, we propose a parallel algorithm for drawing multiple strokes simultaneously. The idea of the parallel algorithm is to generate multiple strokes independently. However, since some of the generated strokes have overlaps, such strokes cannot be drawn simultaneously. In our approach, we find non-overlapping strokes by reducing this problem to the independent point set problem and solving it instead. Furthermore, we implement this parallel algorithm on the GPU. Experimental results show that the proposed GPU implementation on NVIDIA GeForce RTX 3090 attains a speed-up factor of up to 75 over a sequential execution on the CPU.