OpenCV изменить RGB-интенсивность

Я работаю с OpenCV 2.4.11 + Qt и пытаюсь сделать видео и изменить интенсивность красного / синего или зеленого канала, но не нашел никаких функций или настроек для этого.
Кто-нибудь знает как это сделать?

0

Решение

Если вы просто хотите изменить значение R / G / B одного конкретного пикселя, используйте что-то вроде:

cv::Mat img; // suppose this is one frame of the video, in CV_BGR
...
img.at<cv::Vec3b>(idx_row, idx_col) = cv::Vec3b(new_b, new_g, new_r); // change here

Если вы хотите эффективно изменить все значения данного канала без изменения других каналов, ознакомьтесь с Как эффективно установить данный канал в cv :: Mat для данного значения без изменения других каналов?

1

Другие решения

Других решений пока нет …