0

誰かが画像のゆがみ/せん断で私のコードをチェックできるかどうか疑問に思っていました. 画像をゆがめますが、効率的ではありません。何かが正しく機能していないようです。白く歪んだ画像が表示されるだけです

clear all
img1 = imread('image.jpg');imshow(img1);
[m,n,p]=size(img1);


NumPixels = n*m;
[Points(1,:) Points(2,:)] = ind2sub([n m],1:NumPixels);

thetas = 30;
sx = 1/tand(thetas);

Sx = [1 sx; 0 1];

Points_tform = round(Sx * Points);

n_t = max(Points_tform(1,:));
m_t = max(Points_tform(2,:));

img_t = zeros(n_t,m_t);

for k = 1:length(Points)
   try img_t(Points_tform(2,k),Points_tform(1,k)) = img1(Points(2,k),Points(1,k),1); 
   catch
       a=1;
   end
end


figure;
imshow(img_t);

どうもありがとう。

4

1 に答える 1

0

せん断行列を使用して、せん断を大幅に高速化することを検討する必要があります

于 2013-10-28T14:25:38.017 に答える