【发布时间】:2019-03-20 04:32:58
【问题描述】:
我正在努力将图像转换为其红色、蓝色和绿色通道。
我正在使用 Qt C++,我已经上传了原始图片并显示在我的小部件中,并且我知道 RGB 转换将有一种逐像素更改的 for 循环,我只是不确定什么功能我应该在循环中更改这些像素。
有什么建议吗? 这是我目前的红色频道,我用 QImage 上传
for(int i = 0; i < Red.width(); i++)
{
for(int j = 0; j < Red.height(); j++)
{
QColor pixelC = Red.pixelColor(i,j);
pixelC.setRed(255);
pixelC.setBlue(0);
pixelC.setGreen(0);
}
}
QLabel RedPic;
ui->RedPic->setScaledContents(true);
ui->RedPic->setPixmap(QPixmap::fromImage(Red));
【问题讨论】:
-
请添加一些代码示例。没有人为您编写代码。至少,向社区展示你的尝试。
-
您可以同时执行 (QtConcurrent::mapped) 或通过像素图的二进制掩码来执行此操作吗?除非您尝试将原始位转移到 5.6.5 或 10.12.10 rhb 容器中,在这种情况下,您需要了解数据的外观并修改一小段内联代码以将所有内容转移到位。