-2

これは、マトリックス内の特定の要素を削除することです。1:hseam と hseam:end が必要です。

for i=1:3                                                                  
    for j=1:cols                                                           
        if hseam(j)==1
            Img(:,j,i)=[im(2:rows,j,i)]; 
        elseif hseam(j)==rows
            Img(:,j,i)=[im(1:rows-1,j,i)];
        else            
            Img(:,j,i)=[im((1:hseam(j)-1),j,i) im((hseam(j)+1:end),j,i)];
        end
    end
end

これは取得中のエラーです:

??? ==> horzcat CAT 引数の使用時のエラー 次元が一貫していません。

エラー ==> reduceHeight at 17 Img(:,j,i)=[im((1:hseam(j)-1),j,i) im((hseam(j)+1:end),j,私)];

4

1 に答える 1

1

1:hseam と hseam:endを抽出したいと仮定すると(コードの完全な意図を正確には理解していません)、次のこともできます。

Img = im([1:hseam, heasm:end],:,:)

ここでループする必要はありません...

于 2013-09-13T06:58:46.600 に答える