【數字圖像處理】Matlab實現-圖像增強-灰度圖像增強


灰度圖像增強的大致原理以及操作方法

面向作業編程

 

 

上圖是大概對灰度圖的增強處理

就是想讓圖片變得更好看

那么如何具體操作就看下面的代碼了

這是一個簡單的線性分段處理,相信在注釋的幫助下應該能看懂。

%返回行數列數
[h,w]=size(gray);
[m,n]=size(gray);
%創建一個0矩陣
NewImage1=zeros(h,w); 
%變參數圖像
NewImage1_1=zeros(m,n);
%原圖進行處理 分段線性變換
a=80/256; b=180/256; c=30/256; d=220/256;
for x=1:w 
 for y=1:h
 if gray(y,x)<a 
 NewImage1(y,x)=gray(y,x)*c/a;
 elseif gray(y,x)<b
 NewImage1(y,x)=(gray(y,x)-a)*(d-c)/(b-a)+c;
 else
 NewImage1(y,x)=(gray(y,x)-b)*(255-d)/(255-b)+d;
 end 
 end
end

基於直方圖

每個灰度圖片可以看作很多像素點的集合,而每一個像素點的值就是對應的灰度值。

將所有的灰度值統計起來可以得到一個灰度值/頻率的直方圖
如下

 

 然后你可以對其進行處理

NewImage2=histeq(gray);
%0-10均勻分布
NewImage2_2=histeq(gray,10);
%0-2均勻分布
NewImage2_1=histeq(gray,2);
imhist(NewImage2);
imhist(NewImage2_1);
imhist(NewImage2_2);
figure,imshow(NewImage2),title('直方圖均衡化');
figure,imshow(NewImage2_1),title('改變均衡化參數');
figure,imshow(NewImage2_2),title('改變均衡化參數');

 

 對於后面的偽彩色增強請看下一篇

 https://www.cnblogs.com/sky-fish/p/14914466.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM