数字图像处理 关于matlab的图像处理操作
生活随笔
收集整理的這篇文章主要介紹了
数字图像处理 关于matlab的图像处理操作
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1、目的
掌握圖像的讀取、顯示、代數運算和簡單變換操作。
2、任務和要求 and 代碼
1、使用某種圖像采集設備(掃描儀、數碼相機、手機等)采集一張數字圖像輸入,并用分別用指定的圖像文件格式bmp、png和jpg存儲,并輸出圖像的大小。
%獲取圖像的信息 I = imread('gou.jpg');%改變圖像格式(png) RGB = imread('gou.jpg','jpg'); imwrite(RGB ,'goua.png','png'); tupian=imread('goua.png');%改變圖像格式(bmp) RGB = imread('gou.jpg','jpg'); imwrite(RGB ,'goub.bmp','bmp'); tupian1=imread('goub.bmp');figure; subplot(1,3,1),subimage(I); title('jpg'); subplot(1,3,2),subimage(tupian); title('png'); subplot(1,3,3),subimage(tupian1); title('bmp');?運行結果:
?
2、讀入一幅RGB圖像,分別顯示其R、G、B分量,再將該RGB彩色圖像變換為灰度圖像和二值圖像,并在同一個窗口內分成六個子窗口來分別顯示RGB圖像和灰度圖像、二值圖像,R、G、B分量圖像,注上文字標題。
%灰度圖像 data = imread('gou.jpg'); m = rgb2gray(data); %二值圖像 n = graythresh(data); y = im2bw(data, n);%R、G、B分量 image = imread('gou.jpg'); imager = image(:,:,1); imageg = image(:,:,2); imageb = image(:,:,3);figure; subplot(2,3,1),subimage(image); title('RGB'); subplot(2,3,2),subimage(m); title('灰度圖像'); subplot(2,3,3),subimage(y); title('二值圖像'); subplot(2,3,4),subimage(imager); title('R分量'); subplot(2,3,5),subimage(imageg); title('G分量'); subplot(2,3,6),subimage(imageb ); title('B分量');運行結果
?
?
3、對兩幅相關圖像執行加、減、乘、除操作,在同一個窗口內分成六個子窗口來分別顯示,注上文字標題。
%改變圖像格式(png) RGB = imread('12樓.jpg','jpg'); imwrite(RGB ,'12樓1.png','png'); tupian1=imread('12樓1.png'); %改變圖像格式(png) RGB = imread('花.jpg','jpg'); imwrite(RGB ,'花1.tif','tif'); tupian2=imread('花1.tif'); % 加法 K1 = imadd(tupian1, tupian2); %減法 K2 = imsubtract(tupian1, tupian2); %乘法 K3 = immultiply(tupian1, tupian2); %除法 K4 = imdivide(tupian1, tupian2);figure; subplot(3,2,1),subimage(tupian1); title('圖1'); subplot(3,2,2),subimage(tupian2); title('圖2'); subplot(3,2,3),subimage(K1); title('加法'); subplot(3,2,4),subimage(K2); title('減法'); subplot(3,2,5),subimage(K3); title('乘法'); subplot(3,2,6),subimage(K4 ); title('除法');運行結果
?
?
4、對一幅圖像進行平移、縮放、旋轉,顯示結果。
I = imread('gou.jpg'); %平移 se = translate(strel(1), [100 100]); O = imdilate(I,se); % 縮放 P = imresize(I, 15); % 旋轉 Q= imrotate(I,90);figure; subplot(2,2,1),subimage(I); title('原圖'); subplot(2,2,2),subimage(O); title('平移后'); subplot(2,2,3),subimage(P); title('縮放后'); subplot(2,2,4),subimage(Q); title('旋轉后');?
?
5、顯示一幅灰度圖像a,改變圖像亮度使其整體變暗得到圖像b,顯示兩幅圖像的直方圖。
%灰度圖像 i=imread('gou.jpg'); i=rgb2gray(i); %圖像變暗 o=imadjust(i,[ ],[0;0.5]); subplot(2,2,1),subimage(i); title('圖像a'); subplot(2,2,2),subimage(o); title('圖像b'); subplot(2,2,3),imhist(i); title('原圖像'); subplot(2,2,4),imhist(o); title('變暗圖像');運行結果
有什么錯誤的或者有什么建議可以私聊我,或者評論,一起學習,一起進步 加油!!!?
?
總結
以上是生活随笔為你收集整理的数字图像处理 关于matlab的图像处理操作的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: R60笔记本电脑风扇清理加油过程
- 下一篇: [TJOI2007]路标设置