问题标签 [dithering]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 执行php命令后台窗口
我正在开发一个基于桌面的php
应用程序,我需要以Floyd-Steinberg
格式打印一个人的图像。我以 RGB 格式捕获图像并将图像转换为Floyd-Steinberg
抖动图像。我正在使用 ImageMagick 将 RGB 图像转换为抖动图像,在我的 windows cmd 提示符中传递命令,以便转换并保存图像。我想在我的主应用程序中执行该命令,因此当我单击图像并给出打印给定命令时,应该自动从数据库中获取该图像并转换该图像,并且它应该以抖动格式打印。我正在使用javascript
传递所有这些数据通过斑马打印机打印数据。通常我尝试将图像转换为抖动图像,但我无法将图像转换为grf
图像(注意:当我单击打印按钮时,打印图像时不应显示任何提示)。
那么有什么方法可以将 ImageMagick 应用程序嵌入到我的应用程序中并传递命令来打印图像
python-3.x - 使用 KMeans 进行 Floyd 抖动
在使用 KMeans 之后,我正在尝试在 Python 中实现 Floyd-Steinberg 抖动。我意识到,在抖动之后,我收到了不包含在缩小调色板中的颜色,所以我再次使用 KMeans 修改图像。但是,在尝试使用这张图片时,我完全看不到抖动。我被卡住了,我累了——请帮帮我。我的想法几乎消失了。
python-3.x - Floyd-Steinberg 实现 Python
在使用来自 scipy 的 KMeans 处理图像后,我使用 Floyd-Steinberg 抖动来分散量化误差。给定的数据是 RGB 文件 - 灰度和颜色。问题是可视化 - 我没有抖动。
我想省略 KMeans 部分并专注于 Floyd-Steinberg:
当我用图片替换弗洛伊德时,我收到了一点抖动,即Floyd[i + 1][j] = quan * (np.float(5 / 16)) + pic[i + 1][j]
。但是,这是不正确的代码!此外,我必须处理簇外的颜色,因此我再次将新像素评估为簇。我怎样才能让它工作?这个关键的错误在哪里?
processing - 时间抖动的一般方法
我正在寻找有关在处理中实现时间抖动的一般方法的一些输入。
目前我有一个处理草图,它生成一个十六进制文件,可以通过 SPI 发送到 APA102 LED 灯条。我能够实现的帧速率应该足以实现时间抖动以增加 LED 的动态范围,主要是在较低亮度的情况下。我查看了 FastLed 和 Fadecandy 以尝试了解它是如何完成的,但我无法真正弄清楚。使用这些库不是一个选项,因为动画应该在 hex 文件中“硬编码”。
谁能指出我正确的方向?
编辑:我目前实现了以下内容:首先,我计算 LED 上可实现的帧速率,这给出了我可以插入的抖动帧的数量,基于我的串中 LED 的数量和 SPI 时钟速度。LEDstrip 可以以 420fps 的速度更新,所以我每帧有 7 个“虚拟”帧,仍然能够拥有 60fps 的基本刷新率。然后我计算一个 7x7 的查找表,如下所示:
我使用浮点数进行所有伽马颜色校正计算,查找表中的每一行对应两个值之间的 1/7 步长。然后将这些添加到底 RGB 值以实现抖动。然而,这一切在视觉上并没有真正改变。与没有抖动的动画相比,我看不出有什么不同。我希望看到类似https://www.youtube.com/watch?v=1-_JtRl2ks0
c++ - 如何将这个 PGM 梯度翻转 90 度?(存储在向量中)
我一直致力于用不同的抖动方法实现灰度渐变,但任务要求渐变是水平的,从左侧的黑色开始。在我尝试水平旋转图像时,我尝试过:
我也尝试像处理二维数组一样处理向量:
到目前为止,这些方法都没有奏效。这是我正在使用的代码:
algorithm - 绘制给定区域的像素圆
我有一些 X x Y 像素的区域,我需要逐个像素地填充它。问题是在任何给定时刻,绘制的形状都应该尽可能圆。
我认为这个算法是有序抖动的子集,在将灰度图像转换为一位时,但我找不到任何参考资料,也无法自己弄清楚。
我知道布雷森汉姆圆,但它用于绘制一定半径的圆而不是面积。
我为 10 x 10 像素网格创建了所有填充百分比的动画。由于整个区域是 10x10=100px,那么每一帧正好是 1% inc。
arrays - 在 numpy 数组中生成一系列稍微随机的整数
我想在 numpy 数组中创建复合音频测试信号。我需要将值四舍五入为最接近的整数。其次,我想添加随机噪声或抖动。
您可以在下面看到我当前使用的代码。这应该包含 24 位整数(如果我做对了),即使它存储在 32 位整数字中(以匹配通常以这种方式存储的 pcm 音频样本)。
在此示例中,第一个正弦波音调在半峰值 (-6dBfs) 处为 1000.2Hz。这里还有两个正弦波分量,但实际上它可以包含任意数量的它们。我现在想添加一些抖动。这将被计算为数组中每个纵坐标的随机值。它将向每个数组元素(每个音频样本)添加一个小的随机生成的值,例如 + 和 - 0.5 之间的峰值。
我的代码似乎工作正常,但不包含随机“抖动”组件。有人可以让我知道如何做到这一点 - 并让我放心,我最终会得到 24 位分辨率整数。
swift - 使用 CIfilter 的误差扩散抖动图像
我正在尝试抖动图像。我制作了一些应用 floyd steinberg 抖动的快速代码,但处理图像需要很长时间,因为它没有包装在 cifilter 中,它只是快速代码。我在想,如果我可以制作一个自定义 cifilter,它将在 gpu 上进行处理并加快处理速度。但是我不是 CIfilter 语言的专家。
这是我的快速代码。为了清楚起见,我已经完整地写出了误差分布矩阵的计算。
我发现了这个https://github.com/rhoeper/Filterpedia-Swift4,它包括一个用于有序抖动的自定义过滤器,我可以将其用作基础并尝试适应错误扩散抖动。在开始学习 CIfilter 语言之前,我更愿意找到一个现有的自定义内核来完成这项工作。所以我想知道是否有人有一个现有的内核或一个链接?
有序抖动代码
- /li>
swift - 金属计算 - 像素依赖于其他像素颜色
我最近开始学习金属框架,所以我可以为我的 swift 应用程序编写一些过滤器。我即将编写一个基于误差扩散抖动抖动图片的金属内核。每个像素都被赋予一个颜色,然后根据原始像素颜色将值分配给相邻像素。在计算每个像素时,这些值分布在整个图像上,因此所有像素都相互依赖。该示例将是 Floyd stein berg 抖动。
使用金属处理线程的方式,这种抖动方法将不起作用。抖动图像时,只能按从头到尾的顺序计算像素。是否有可能有一个不涉及线程的内核,或者一种选择整个图像数组以由单个线程计算的方法?