plot3関数でのグラフ作成時のエラー対称法
5 views (last 30 days)
Show older comments
動画をフレーム毎にフーリエ変換し、空間周波数分布や画素値の分布をplot3関数で描こうと、下記コードを作成しましたが、エラーが出てしましました。引数の設定に問題があると思われますが、エラーへの対称法をご教授ください。よろしくお願いいたします。
%FEP動画のフレームを読み込み、グレースケール変換
vfep = VideoReader("C:\Users\user\MATLAB Drive\Examples\Ultrasonic_analysis\4852fep_20230512.avi");
%フィルターの生成
%h= fspecial("average",5);
%h1=fspecial("laplacian");
%h2= fspecial('sobel');
%h3=fspecial("gaussian");
%h4=fspecial("prewitt")
%各フレームをグレースケールに変換しながらノイズ除去処理していく
k=1;
while hasFrame(vfep)
mvfep(:,:,:,k) = readFrame(vfep);% データ読み込み
gray_mvfep(:,:,1,k) = rgb2gray(mvfep(:,:,:,k));% グレースケールに変換
%rectを定義してトリミング
rect=images.spatialref.Rectangle([40 890.0],[210.0 450.0]) % xの下限と上限 yの下限と上限
cuttedimage_fep(:,:,1,k)=imcrop(gray_mvfep(:,:,1,k),rect) % 画像トリミング
fftdenoisedfep(:,:,1,k)=fft2(uint8(cuttedimage_fep(:,:,1,k))); % フーリエ変換でノイズ除去
absfftdenousedfep(:,:,1,k)=abs(fftdenoisedfep(:,:,1,k)) % FFTの複素数成分の絶対値化
%imtool(cuttedimage_fep(:,:,1,k),'InitialMagnification','fit');
k=k+1;
end
%figure; stem3(abs(fftdenoisedfep(:,:,1,12)))
%figure; stem3(abs(fftshift(fftdenoisedfep(:,:,1,12))))
%fftdenoisedfepshift=fftshift(fftdenoisedfep(:,:,1,12))
%stem(abs(fftdenoisedfepshift(:,:,1,12)))
%stem(abs(fftdenoisedfepshift))
%implay(gray_mvfep,vfep.FrameRate*vfep.Duration); % グレースケール変換済データを表示
%implay( fftdenoisedfep(:,:,1,12),vfep.FrameRate*vfep.Duration); % グレースケール変換・ノイズ除去済データを表示
%implay( abs(fftdenoisedfep(:,:,1,12)),vfep.FrameRate*vfep.Duration); % グレースケール変換・ノイズ除去済データを表示
plot3(cuttedimage_fep(:,330,1,:))
plot3(log(absfftdenousedfep(:,330,1,:)))
(エラー)
次を使用中: plot3
入力引数が不足しています。
エラー: 3dgraph_fourier_transform (行 32)
plot3(log(absfftdenousedfep(:,330,1,:)))
0 Comments
Answers (0)
See Also
Categories
Find more on Convert Image Type in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!