我有一个盲源分离项目,我需要使用 Cimg 在矩阵中表示 RGB 图像。但我实际上无法理解如何使用 Cimg..我已经浏览了文档
但是功能太多,我不知道该用哪一个!真的太多了。我从未使用过 Cimg,所以如果有人可以向我解释我的程序应该是什么,请执行! 我正在使用 C++ 进行编程并使用 eclipse。 谢谢!
最佳答案
首先定义您的图像:
CImg<float> img(320,200,1,3); // Define a 320x200 color image (3 channels).
然后用您的数据填充它:
cimg_forXYC(img,x,y,c) { // Do 3 nested loops
img(x,y,c) = pixel_value_at(x,y,c);
}
然后你就可以用它做你想做的一切。
img.display("Display my image");
当c==0时,您将填充图像的红色 channel ,当c==1时,将填充绿色 channel ,当c== 2 蓝色的。没什么很难的。
我已经尝试了很 multimap 像处理库,CImg 可能是最容易使用的之一。查看提供的示例文件(文件夹 CImg/examples/),了解整个过程是如何工作的(特别是 CImg/examples/tutorial.cpp)。
关于c++ - 使用 C++ 和 Cimg 库将 RGB 图像转换为矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14914709/