C++ 使用简单opengl图像库(SOIL)加载图像(颜色空间:灰色)

C++ 使用简单opengl图像库(SOIL)加载图像(颜色空间:灰色),c++,image,png,soil,C++,Image,Png,Soil,我想读出灰度图像的像素值。对于RGB图像,我没有问题。代码很简单: int width, height; unsigned char* image = SOIL_load_image(filepath.c_str(), &width, &height, 0, SOIL_LOAD_RGB); std::cout << "size of image : " << size << " width: " << width <<

我想读出灰度图像的像素值。对于RGB图像,我没有问题。代码很简单:

int width, height;
unsigned char* image = SOIL_load_image(filepath.c_str(), &width, &height, 0, SOIL_LOAD_RGB);
std::cout << "size of image : " << size  << " width: " << width << " height: " << height << std::endl;
int宽度、高度;
unsigned char*image=SOIL\u load\u image(filepath.c\u str(),&width,&height,0,SOIL\u load\u RGB);

std::cout您应该将第三个参数从“0”更改为“&channel”,如下所示

unsigned char *image = SOIL_load_image(filepath.c_str(), &width, &height, &channel, SOIL_LOAD_L);

您应该将第三个参数从“0”更改为“&channel”,如下所示

unsigned char *image = SOIL_load_image(filepath.c_str(), &width, &height, &channel, SOIL_LOAD_L);

语言是C++。我添加了一个C++语言。我加了一个标签