问题标签 [pixel-manipulation]

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.

0 投票
2 回答
33078 浏览

qt - 如何在 Qt 中为 RGB888 图像设置 QImage 像素颜色

我有一个 RGB888 格式的 qImage 定义如下:

我希望更改特定的像素值,所以我按照这里的示例进行操作,如下所示:

然而,无论 i 和 j 的值如何,这总是会产生分段错误(例如 i = j = 2)。

我猜这是因为我错误地使用QRgb来操纵QImage::Format_RGB888. 我应该怎么做?

0 投票
1 回答
861 浏览

c++ - 将 SDL_Surface 像素复制到 STL 容器中

我编写了这个我想在程序中使用的函数,但由于某种原因,尽管没有出错,但它还是失败了:

我只是试图将像素是否为黑色复制到grid. 当我单独运行时grid[y][x](pixels[(image -> w * y) + x] == 0)程序运行良好。当我这样做grid[y][x] = (pixels[(image -> w * y) + x] == 0);时,程序会在图像中间的某个地方崩溃。

我很确定(image -> w * y) + x得到了正确的像素,无论如何x,并且y仅限于,所以我没有看到什么?

0 投票
1 回答
777 浏览

javascript - 如何优化画布中的像素编辑

我尝试在 JavaScript cnavas 中制作一些图片动画,所以我必须使用像素进行操作,但问题是像素的遍历数组需要大量时间,上下文的本机函数执行速度要快得多。

该测试表明:

近似结果为:0、14、12。

为什么会发生?手动更改像素的最快方法是什么?

0 投票
0 回答
255 浏览

ios - 如何在 iOS 中模拟复印机过渡?

苹果有一种复印机过渡效果,可以将图像逐渐转换为另一个图像。由于转换在 iOS 中不可用,我正在寻找一种替代方法来实现这种效果或类似的东西。我在像素颜色的 UInt8 数组中收集所有图像数据。理想情况下,我希望能够以不同的时间间隔将单独的像素行绘制到屏幕上,以最终完成一幅完整的画面。这可能吗?如果没有,是否有模拟苹果 CICopyMachineTransition 的最佳方法?

0 投票
2 回答
299 浏览

javascript - 使颜色更红、更绿等的最佳值?

给定一张图片的 RGB 像素图,什么是好的和有意义的值可以使图片更红、更绿、更蓝、更蓝、更蓝、更蓝、更洋红或更黄?

目前在我的 JavaScript 代码中,我有以下 RGB 变化值,但我想知道是否有基于颜色理论的更优化的比率——例如,对于更多的红色,我使用 rgb(+45,-27,-27),但我我不太确定例如-27。

0 投票
1 回答
142 浏览

javascript - javascript中的生命游戏代码错误

我只是编程的初学者。在生命游戏的执行中,只有最初的模式正在显现。我在这里没有使用网格。但为此调整了矩形的大小。代码不整洁。请提出建议以使我的代码正常工作。

0 投票
1 回答
19720 浏览

javascript - 如何简单地从图像中获取像素数据数组?

谢谢大家的回复。我应该更具体地回答我的问题。我查看了许多示例,但这是来自 W3 Schools 的示例(感谢@Pointy 指出这不是一个应该依赖的来源——不是双关语)。

http://www.w3schools.com/tags/canvas_getimagedata.asp

首先我有点困惑,因为 W3 Schools 网站上的示例显示图像的像素颜色被反转,但是当我将代码复制到 Sublime Text 2 中,保存并在 Chrome 中打开它时,像素颜色图像不会倒置,图像只是在它旁边再次出现完全相同。

我的主要问题是如何在此代码中添加一行以显示图像的整个像素数据数组?

我在图像下方添加了一个 ID 为“data”的空 div,并添加了以下代码,但整个像素数据数组并未出现:

我还尝试通过添加以下内容来至少查看像素数据数组的长度,但它不起作用:

我查看了一些处理来自各种来源的图像像素数据的示例,并多次尝试获取整个像素数据数组,但未能成功。

我想查看像素数据数组以识别图片中的字符或图像,并开始查看图像中特定事物可能出现的模式。

非常感谢你的帮助。

0 投票
1 回答
1851 浏览

javascript - 优化 HTML5 画布中的像素设置

HTML5 Canvas 没有明确设置单个像素的方法。

到目前为止我知道的解决方案是:

  • 使用getImageDataputImageData但由于性能低,动画效率太低putImageData

  • rect使用像或这样的重物putImageData来绘制单个像素,但是当有很多像素要绘制时,性能似乎要差得多。

我已经看到这个drawImage函数真的比 快putImageData ,而且如果我们用 替换putImageDatadrawImage(new Image(w,h))它真的很快。但是,我不知道有什么解决方案可以将图像放在drawImage可以快速逐像素设置的参数上。

她是慢代码的一个例子

HTML:

Javascript:

如果有人有提高性能的线索。

0 投票
1 回答
1177 浏览

qt - OpenGL纹理速率太慢?

我有一个 5 兆像素的纹理,我无法更新。纹理显示在与视频流相似的矩形上。

OpenGL 命令执行速度很快,但实际的纹理更新速率并不理想,可能只有每秒 3 个实际帧。有一些变化,但在使用较小的纹理 (500x500) 时变化不大。

该机有NVIDIA gtx 570

我最初的努力是使用glTexSubImage2Dand glBufferSubData,但这些表现比内存映射方案稍差。

有没有办法强制显卡更新贴图?视频流媒体软件是如何编写的?

渲染循环

纹理保留

初始化

编辑 1

我相信填充缓冲区会产生新的纹理,因为在代码的其他部分中,我将此纹理写入文件,并且确实有所不同。当我的文件 IO 比 OpenGL 纹理更快时,这是一个悲伤的日子。

编辑 2 我尝试了 FRAPS,并验证了渲染循环的速度约为 18 FPS,但可见更新速度较慢(可能为 3 FPS)。什么可以解释这种差异?

0 投票
1 回答
890 浏览

html - 获取缩放图像像素的 X,Y 坐标 - KineticJs / HTML5 Canvas Image

我正在开发一个允许用户上传照片的应用程序,在上传照片期间,应用程序在服务器上执行检测以获取照片的感兴趣区域(x、y、宽度和高度),并将其返回给客户端(浏览器)。

在客户端,用户需要通过点击感知为边缘的位置来调整感兴趣的区域。见下图。

感兴趣的区域

我的主要挑战是:

(1) 给定从服务器返回的 x、y、宽度和高度,我如何缩放到确切的感兴趣区域?

到目前为止,这是我对这个问题的解决方案:

如您所见,我的解决方案不是将服务器返回的宽度和高度放在缩放的角度。我真的不知道如何执行计算以获得在宽度和高度内缩放的比率。

(2) 我想获取图像的每个单击像素的 x 和 y 坐标(我将其保存在服务器上的某个位置以备后用)。

(3)没有x,y坐标值,我如何定位同一图像上的像素位置(在图像上应用或不应用缩放)?