0
我想在matlab中編寫一個代碼,它將接受來自隱式給定目錄的圖像,並在每個圖像上應用Sobel邊緣檢測算法。請幫助需要對一系列圖像應用邊緣濾波算法
我想在matlab中編寫一個代碼,它將接受來自隱式給定目錄的圖像,並在每個圖像上應用Sobel邊緣檢測算法。請幫助需要對一系列圖像應用邊緣濾波算法
MATLAB中的Sobel邊緣檢測僅適用於灰度圖像,所以您需要將任何圖像轉換爲灰度圖像。如果您的桌面上有所有圖片所在的文件夾,那麼下面的代碼片段可以做你想做的事。
dirname = '~/Desktop/imgs/';
files = dir([dirname, '*.png']);
files = {files.name}';
for ifile = 1:numel(files)
imfile = [dirname, files{ifile}];
im = imread(imfile); % Read the image file
img = rgb2gray(im); % Convert to grayscale
ime = edge(img, 'sobel'); % Edge detection
figure(1)
imshow(ime);
outname = ['edge_', files{ifile}];
imwrite(ime, outname);
end
希望有所幫助。
謝謝你!它的工作....現在我可以根據我的要求修改我的代碼! :) –