Наложение одного изображения на другое дает синие прямоугольники вместо изображения

StackOverflow https://stackoverflow.com//questions/24046434

Вопрос

Я пытаюсь наложить одно изображение поверх другого в MATLAB.

я выписался Наложите два изображения в MATLABдля ответа.Но проблема в том, что наложенные изображения отображаются в виде синих прямоугольников на исходном изображении, а не на реальном изображении.

Здесь показан неправильный вывод http://imgur.com/R1QZh32.

Код, который я использую,

    a = 0.2;
    tform = affine2d([1 0 0; a 1 0; 0 0 1]);
    B = imwarp(z,tform, 'FillValues',255);
    B = ~B;
    figure; imshow(B);
    h = imagesc([X1 X2], [Y1 Y2], B);
    set(h, 'AlphaData', 1);

Нормальный imshow(B) показывает мне правильное изображение, но накладывающая часть вызывает у меня проблему.

Я попытался изменить значение AlphaData но это, похоже, не работает.

Это было полезно?

Решение

Посмотрите, как работает imshowpair со свойствами Blend

Вы тоже можете попробовать это:

figure;
h = imshow(FirstImage);
set(h,'AlphaData',0.2);

hold on;
imshow(SecondImage);    
hold off;
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top