數字圖像處理(概論、基礎、基本運算)

1.數字圖像:採用圖像傳感器進行圖像採集獲得圖像,圖像傳感器會利用光電器件將光信號轉換爲連續的電信號,對其採樣得到的圖像即爲數字圖像。

像素:數字圖像由二維元素組成,這些元素稱爲像素。

常用工具:Matlab/VC;PS/CorelDraw/ACDSee

數字圖像處理:圖像採集、圖像增強、圖像復原、形態學處理、圖像分割、目標識別、表達描述、圖像壓縮、彩色化處理

2.數字圖像處理基礎

採樣:將連續的圖像空間的電壓轉化爲離散採樣集合。

量化:將採樣得到的圖像函數值(灰度值/顏色值)進行數字化。

圖像表示 :不同座標系表示,如設備座標系。採樣後,像素M*N,稱分辨率爲M*N。

例如具有256個強度等級的RGB圖像,(0,0,0)黑色;(255,255,255)是白色,(255,0,0)是紅色。

3.圖像基本運算

邏輯運算前要進行二值化處理,matlab代碼附上。 

%figure;subplot(mnp);一張畫布顯示多張圖片
%圖片需要相同大小
% m=imread('D:\Imagematlab\1.jpg');
% n=imread('D:\Imagematlab\2.jpg');

% figure(1);imshow(m);
% figure(2);imshow(n);
% k=imadd(m,n);%加運算
% h=imsubtract(m,n);%減
% l=immultiply(m,n);%乘
% x=imdivide(m,n);%除
% figure(3);imshow(k);
% figure(4);imshow(h);
% figure(5);imshow(l);
% figure(6);imshow(x);

%邏輯運算需要先二值化
% Gray=rgb2gray(m);%灰度化
% x=im2bw(Gray);%二值化
% y=im2bw(n);
% figure;
% subplot(321);imshow(m);
% subplot(322);imshow(Gray);
% subplot(323);imshow(x);
% k=x&y;%與
% subplot(324);imshow(k);
% j=x|y;%或
% subplot(325);imshow(j);
% h=~y;%補
% subplot(326);imshow(h);

%幾何變換/平移
% figure;
% subplot(211);imshow(m);
% m=double(m);%用double(y)可以將y轉變爲double類型變量
% R=zeros(size(m));%size(A)直接顯示出A大小   zeros()生成零矩陣
% H=size(m);
% Move_x=50;
% Move_y=50;
% R(Move_x+1:H(1),Move_y+1:H(2),1:H(3))=m(1:H(1)-Move_x,1:H(2)-Move_y,1:H(3));
% subplot(212);imshow(uint8(R));

%幾何變換/鏡像
% R=m(:,:,1);
% G=m(:,:,2);
% B=m(:,:,3);
% RNew=flipud(R);
% GNew=flipud(G);%矩陣的上下翻轉
% BNew=flipud(B);
% R1(:,:,1)=RNew;
% R1(:,:,2)=GNew;
% R1(:,:,3)=BNew;
% figure;
% subplot(311);imshow(m)
% subplot(312);imshow(R1);
% RNew=fliplr(R);
% GNew=fliplr(G);
% BNew=fliplr(B);
% R2(:,:,1)=RNew;
% R2(:,:,2)=GNew;
% R2(:,:,3)=BNew;
% subplot(313);imshow(R2);

%幾何變換/旋轉/縮放
% R1=imrotate(m,30,'nearest');
% figure;
% subplot(211);imshow(m);
% subplot(212);imshow(uint8(R1));
% R2=imresize(m,2);
% figure;imshow(R2);
% R3=imresize(m,0.5);
% figure;imshow(R3);

插值運算:旋轉縮放等幾何運算要經過變換、插值兩步。

圖像格式BMP

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章