x,y,z 到矢量偏移
我知道这可能听起来很愚蠢,但我对此感到疯狂 XD
我正在将广告图像(使用 ImageMagick)加载到 1D 矢量中,这样我就有了类似的内容:
012345678...
RGBRGBRGB...
Where 0-.显然是向量的索引,R、G、B分别是红色字节、绿色字节、蓝色字节。 所以我有一个 WIDTHxHEIGHTx3
字节向量。
现在,假设我想访问 x,y,z 字节,其中 z 是颜色的索引,这是对向量进行线性偏移的变换公式?
I know this may sound stupid but I'm goin crazy with this XD
I'm loading ad image (with ImageMagick) into a 1D vector, so that I have something like:
012345678...
RGBRGBRGB...
Where 0-. Are obviously the indexes of the vector, and R, G, and B are respectively the red byte, green byte, and blue byte.
So I have a WIDTHxHEIGHTx3
bytes vector.
Now, let's say I want to access the x,y,z byte, where z is the index of the color, which is the transformation formula to have a linear offset into the vector?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
此表达式生成像素 (x,y) 处颜色分量 z 的索引:
((y * WIDTH) + x) * 3 + z
假设是:
This expression produces an index to color component z at pixel (x,y):
((y * WIDTH) + x) * 3 + z
Assumptions are:
假设您的数据存储为一系列行(这不是一个疯狂的假设),您可以在
y*WIDTH*3 + 3*x + z
处找到字节 x,y,zAssuming your data is stored as a series of rows (not a crazy assumption), you can find byte x,y,z at
y*WIDTH*3 + 3*x + z