使用透明度和-nodisplay选项打印图像时出现分段错误

时间:2014-04-10 00:34:35

标签: linux matlab segmentation-fault alpha-transparency

我在Linux的命令行上使用-nodisplay选项运行MATLAB 2012a。当我运行我的代码时,我得到一个分段错误。以下代码重现了我的错误。当绘图具有透明度时会产生错误。如果我将此行注释掉alpha(h2,0.5);它可以正常工作。

    filename ='mypng.png'; 
    Image1 = imread('peppers.png');
    [row,col,~]=size(Image1);
    Image2 = ones(row,col,3);
    f=figure(1);set(f,'Visible','off'); 
    h1=imagesc(Image1);
    hold on 
    h2=imagesc(Image2);
    alpha(h2,0.5);
    axis off;
    print(f,'-dpng',filename);

知道如何解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

我回答了我自己的问题,以防其他人遇到这个问题(虽然这是不可能的)。使用-nodisplay选项在终端中运行matlab的目的是因为我在无头服务器上工作。

使用-nodesktop代替-nodisplay可以解决问题。