如何从图像中读取QT中的RGBA值?
我希望有人可以帮助我。
答案 0 :(得分:1)
在Qt5中有 QImage::pixel(int x, int y)
方法。您可以通过qBlue
,qRed
,qGreen
和qAlpha
函数访问返回值的RGBA值。
答案 1 :(得分:1)
您可以转换为格式RGBA using convertToFormat
,如下所示:
lights.position[index]; // no
lights.position[0]; // yes, etc
现在,您可以按顺序获得R,G,B,A值,并进行正确的数据对齐,如下所示:
QImage myImage( ":/Images/images.jpg" );
myImage = myImage.convertToFormat(QImage::Format_RGBA8888);
这将在每第4个周期后给出每个像素的R,G,B,A。
答案 2 :(得分:-1)
假设已初始化QImage mImage
for( int y = 0; y < height; y++ ) {
QRgb *lineOut = (QRgb *)mImage.scanLine(y);
for( int x = 0; x < width; x++ ) {
int r = 255, g = 0, b = 255;
lineOut[x] = qRgb(r, g, b);
}
}