0

是否有可能获得二值图像的双边对称性?

我搜索的结果类型示例:

x=[true false false;false true false;false true false;false true false;false false true;false false true;false false true;false false true;false false true;false false true;false false true;false false true;false false true;false false true;false false true;false false true;false false true;false false true;false true false;false true false;false true false;false true false;false true false;false true false;false true false;true false false];
sym=[0 0 1; 0 1 0; 0 1 0; 0 1 0; 1 0 0;1 0 0;1 0 0;1 0 0;1 0 0;1 0 0;1 0 0;1 0 0;1 0 0;1 0 0; 1 0 0;1 0 0;1 0 0;1 0 0; 0 1 0;0 1 0;0 1 0;0 1 0;0 1 0;0 1 0 ; 0 1 0;0 0 1];

figure, subplot(121), imagesc(x)
subplot(122), imagesc(sym)

在此处输入图像描述

4

2 回答 2

0

因为它是 MATLAB,所以最好了解函数内部的内容;你可以看到这些功能是如何工作的:

sym1 = x(:,end:-1:1) ;   % acts like fliplr, arrange columns 
sym2 = x(end:-1:1,:) ;   % acts like flipud, arrange rows
于 2017-05-27T10:29:02.377 回答
0

正如@user2999345 建议的那样

    % Data set
    x=[true false false;false true false;false true false;false true false;false false true;false false true;false false true;false false true;false false true;false false true;false false true;false false true;false false true;false false true;false false true;false false true;false false true;false false true;false true false;false true false;false true false;false true false;false true false;false true false;false true false;true false false];

    % Flip array about vertical axis
    F=fliplr(x);

    figure
    subplot (121), imagesc(x)
    subplot (122), imagesc(F)
于 2017-05-27T09:42:59.550 回答