作者sads333 (阿鼎)
看板MATLAB
標題[討論] 顯示的圖片和另存的圖片不一樣
時間Mon Jul 11 12:39:04 2016
我的程式碼如下
clear all;clc;close all;
imgPath = 'lena.bmp';
img = imread(imgPath);
wavelength = 4;
orientation = 90;
img2 = imgaborfilt(img,wavelength,orientation);
figure;
subplot(121)
imshow(img);
subplot(122);
imshow(img2,[]);
imwrite(img2,'c:\matlab\lena.bmp');
這程式是把一張圖片經gabor處理後再存檔的程式
但我顯示出來的圖片正確,但存檔後的圖片就變得不一樣了
請問鄉民高手,我的程式哪裡寫錯?
顯示的圖片如下:
http://i.imgur.com/2CqAyQk.jpg
存檔後的圖片如下:
http://i.imgur.com/Kk0fereg.jpg
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 124.9.198.190
※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1468211947.A.432.html
※ 編輯: sads333 (124.9.198.190), 07/11/2016 12:39:53
→ YoursEver: 你的img2是double,轉成unsigned int就沒事了. 07/11 13:44
→ sads333: 我剛把圖片型態轉成uint8,還是一樣有問題。 07/11 19:38
推 raydo: 把img2重新normalize從0到255 再存檔 07/11 21:43