getPreferredSize
в public class JGradientPanel extends JPanel {
public void paintComponent(Graphics g) {
по умолчанию никогда не возвращает PreferredSize to JPanel , JPanel
возвращает Dimension[0, 0];
EDIT
Вы можете использовать cv :: merge , чтобы делать то, что вы хотите. Одно возможное использование:
cv::Mat r,g,b,a;
//Fill r,g,b,a with data
cv::Mat result;
std::vector<cv::Mat> channels;
channels.push_back(r);
channels.push_back(g);
channels.push_back(b);
channels.push_back(a);
cv::merge(channels, result);