私はPeter KovesiのMatLab関数をマシンビジョンに使用しています。
私は極座標変換を使用して画像を極座標に変換しています。 Peter Kovesiの機能は「PolarTrans」と呼ばれ、ここにあります。 http://www.peterkovesi.com/matlabfns/#syntheticimagesイメージ変換 - デカルトからポーラー、そしてもう一度(MATLAB)
この機能は、画像を美しく極座標に変換します。しかし、私は逆も起こりたい。 Peter Kovesiはinterp2を使って画像を変換していますが、この変換をどのように逆転させるのか分かりません。 interp2の要件は、入力としてmeshgridが必要であるということです。
簡潔に言えば、変換を逆にすることができますか?極座標かデカルトか。私はそれがピーターの機能に合っていることを望んでいます。つまり、一貫性のために同じパラメータを使用しています。
親愛なるSwjmさん、 コメント欄にスペースがないので、私の返信を投稿しています。
まず、ご返信いただきありがとうございます。あなたはinterp2を逆転させる方法を私に見せてくれました。私は不可能だと思っていました。これは大きな前進です。しかし、あなたのコードは画像の小さな部分だけをマッピングします。私が何を意味するのかを理解するには、以下のデモコードをご覧ください。
clc; clear all; close all;
gauss = fspecial('gauss',64,15);
gauss = uint8(mat2gray(gauss).*255);
[H,W] = size(gauss);
pim = polartrans(gauss,64,360);
cim = carttrans(pim,64,64);
subplot(2,2,1);
imagesc(gauss); colormap(jet);
axis off;
title('Image to be Transformed');
subplot(2,2,2);
imagesc(pim); colormap(jet);
axis off;
title('Polar Representation');
subplot(2,2,3);
imagesc(cim); colormap(jet);
axis off;
title('Back to Cartesian');
subplot(2,2,4);
diff = uint8(gauss) - uint8(cim);
imagesc(diff); colormap(jet);
axis off;
title('Difference Image');
組み込み関数 'pol2cart' – obchardon
があるコメントありがとうございました - あなたはそれがピーターKovesiの機能に応じてどのように働くか私を見るだろうか?基本的には、変換されたイメージを与えられた場合、私が上にリンクした関数の出力とpol2cartの使用方法を教えてください。私はpol2cartに精通していますが、できるだけイメージを保存する逆変換が必要です。 – keyserSoze
この人は同様の困難を抱えているようで、pol2cartは適切ではありませんでした。彼の質問はまだ解決されていません - http://stackoverflow.com/questions/16062335/convert-image-in-polar-to-cartesian-coordinates – keyserSoze