В 99% случаев медленная работа скрипта объясняется говнокодом, а реальная необходимость распараллеливания отсутствует. Вот пример. Покажите код и примеры данных.
1) Исторически сложилось так, что OpenCV работает стпредставлением каналов BGR, а не RGB. В моём примере, где я забиваю картинку случайными числами, это принципиального значения не имеет. Но если, например, будете загружать картинку из файла - каналы будут идти именно в таком порядке. А, например, Pillow загружает в порядок RGB.
2) Надо разобраться, что именно вы считаете яркостью. Можно, конечно, считать, что это grayscale-изображение. Но правильнее брать канал L из пространства LAB (или HSL). Почитайте книгу Дэна Маргулиса "Photoshop для профессионалов", там хорошо объясняется.
frontjss, судя по уже второму вашему вопросу, вам лучше вообще никогда не заниматься программированием. Потому что ответ есть на той же картинке, что я запостил.
А в чем конкретно вопрос? Функция img.get_image_data_numpy() возвращает стандартный numpy array, с которым можно дальше работать в OpenCV как с обычной картинкой.
Не видел ни одного человека, закончившего хоть сколь-нибудь продолжительные онлайн-курсы. И уж тем более не видел ставшими после этого датасайентистами. Все только говорят о такой возможности и бесплатности.
Илья Беликов, в чём конкретно вы совершенствуетесь, если за вас элементарную (тут даже думать не надо!) задачу решит другой человек? Тем более олимпиадную - вам не стыдно? Решайте сами. Если совсем самоуважения нет, идите на фриланс, там за деньги решат. Здесь сайт ответов на вопросы, а не бесплатного выполнения ваших заданий.
Этот вопрос задавали здесь чуть более over 9000 раз. Если вы не сумели найти его поиском - возможно, вам стоит не заниматься программированием, а посмотреть в сторону гуманитарных наук. Например, играть на скрипочке в переходе.