【问题标题】:Approximating image using similar non-overlapping circles使用相似的非重叠圆近似图像
【发布时间】:2020-05-03 18:35:28
【问题描述】:

我正在尝试找到一种算法,该算法可以使用来自可使用的预定义形状集(在我的例子中为 3 个不同大小的圆圈)中适当数量的数学形状来近似灰度图像。

我考虑过基于误差扩散的算法,例如 Floyd-Steinberg 算法,但我看不到将基于像素的误差扩散转换为数学形状的方法。

有人有什么建议吗?

编辑: 这是一个使用正方形而不是圆形的示例 另一个在网格上使用统一大小的圆圈的示例。这是通过用圆形替换抖动的正方形来产生的,但是由于与最初的近似图像有偏差,结果很差。这里的圆圈分布在一个网格中,这不是我要找的:

【问题讨论】:

  • 你肯定有一两个例子吗?以及你的动机的一些迹象?请问什么是“相似圈”?类似于什么?
  • 你在寻找类似halftoning的东西吗?
  • @MarkSetchell 我添加了几个接近我想要的示例。我无法向您展示我想要的确切的示例,因为我不知道如何生成这样的图像,因此这篇文章。我所说的 “相似” 圆是指与一组中其他圆的大小相似的圆(例如 25% 的大小差异)。我的动机说来话长,但简而言之,这些圆圈将被打印在塑料片上并钻入,以形成图像的表示,这就是为什么它必须是圆圈以及它们需要近似图像的原因。
  • @beaker 不完全是 - 看看我添加的示例。
  • 啊,那我来看看点画算法。尽管自动生成的模式总会有一定程度的规律性。

标签: algorithm image-processing approximation dithering


【解决方案1】:

提示:

Floyd-Steinberg 的原理是估计原始图像和二进制图像之间的局部误差。由于每个像素都被一个错误的值替换,该错误会被记住并用作评估下一个像素的补偿。

由于音高可变,您的情况更加困难,需要一些避免碰撞的策略。误差扩散的概括是用所需形状以半规则方式填充图像并估计平均灰度等效值。然后当差异变得足够大时,在下一个空槽中放置一个形状。

说起来容易做起来难。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-25
    • 2011-04-16
    • 1970-01-01
    • 2014-01-10
    • 2013-02-20
    • 1970-01-01
    相关资源
    最近更新 更多