hod*_*smr 2 c++ opengl image-processing
我有一个位图图像,当前表示为字节数组(可能是YCrCb或RGB).是否有一个内置OpenGL的函数可以让我查看这个字节数组中的单个像素?
我知道有函数glReadPixels但是如果我已经获得了数据,我不需要从帧缓冲区读取.
如果没有,是否有另一种方法在C++中执行此操作?
OpenGL是一个绘图API,而不是某种通用图形库 - OpenGL中的'L' 意味着 应该被读作Layer而不是库.
话虽如此:如果你知道字节数组的尺寸和数据布局,那么获取单个像素是微不足道的.
pixel_at(x,y) = data_byte_array[row_stride * y + pixel_stride * x]
Run Code Online (Sandbox Code Playgroud)
以紧凑的格式
pixel_stride = bytes_per_pixel
row_stride = width * pixel_stride
Run Code Online (Sandbox Code Playgroud)