【问题标题】:Effecient algorithms for image pixel manipulations图像像素操作的高效算法
【发布时间】:2023-03-28 23:05:01
【问题描述】:

有没有比通常扫描像素阵列并更改它们更有效的方法来访问和更改图像像素?我有一个伪代码,但我想要一个比这更好的方法。我只需要一个算法,任何语言都可以。它看起来像这样:-

   For i in range(0,len(pixel_array),4)
       pixel_array[0] = a   //a is some random value
       pixel_array[1] = a
       pixel_array[2] = a
       pixel_array[3] = 1

【问题讨论】:

  • 您通常可以找到一个使用手动优化代码和/或SIMD instructions 对整个图像进行一次操作的库。

标签: image algorithm image-processing


【解决方案1】:

我曾经遇到过类似的问题,当时我在 SDL_Texture 中移动像素。除非您告诉我们您到底想做什么,否则您没有比这更好的选择了。您是否必须按像素操作像素,或者您可以在一个区域中设置完整的区域(例如,如果您画一条线,您可以使用 memset 将数组中的整个范围设置为该数据)?你需要检查一下,什么可以做得更快。可以通过批量编辑像素来优化绘制矩形。但是如果你真的需要独立改变每个像素,那么,不,除了在 GPU 上而不是 CPU 上(例如使用 OpenGL)之外,没有任何更快的尝试。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-06
  • 1970-01-01
  • 2012-05-14
  • 2017-03-22
  • 2018-09-04
  • 2012-11-10
相关资源
最近更新 更多