Слияние двух изображений, показывающих яркость

Я пытаюсь смешать два изображения или, можно сказать, поместить одно изображение на другое изображение, когда я применяю наложение наложения или просто объединяю два изображения, оно показывает мне яркость в нем.

вот мои два изображения (первая виньетка пуста изнутри, в центре ее нет яркости)

а другой

Код, который я сделал,

int main( int argc, char** argv )
{
    Mat img=imread("E:\\vig.png",-1); 
    Mat ch[4]; 
    split(img,ch);
    Mat im2 = ch[3];              // here's the vignette
    im2 = 255 - im2; // eventually cure the inversion
    Mat img2 = imread("E:\\ew.jpg");
    Mat out2;
    blending_overlay3(img2 , im2 , out2);
    imshow("image",out2);
    imwrite("E:\\image.jpg",out2);
    waitKey();}

Это покажет мне результат как

но мне нужен результат как

РЕДАКТИРОВАТЬ

Первое изображение пустое / пустое от центра (виньетка), но когда я читаю изображение (виньетка одно) с моей программой, оно становится сплошным (ярким) из центра, история его реализацииВот

Существует единственная проблема, связанная с чтением первого (виньетка) изображения, если оно читается как есть, как пустое / пустое из центра, так что другое изображение, с которым мы объединяем / смешиваем / взвешиваемое, независимо от того, к чему оно применяется, не оказывало влияния центральная часть изображения, даже не показывать яркость и т.д., это то, что я хочу сделать

Ответы на вопрос(1)

Ваш ответ на вопрос