處理一幅影象,生成實際的素描影象,基本原理見:photoshop影象濾鏡——素描演算法
實現**如下:
n=zeros(height,width); %取反之後值
g=zeros(height,width); %濾波之後值
%三通道
rc = i(:,:,1);
gc = i(:,:,2);
bc = i(:,:,3);
%選擇乙個通道進行處理
channel = gc;
out=zeros(height,width);
spec=zeros(height,width,3);
%顏色取反
fori=1:height
forj=1:width
n(i,j)=uint8(255-channel(i,j)); %double
endend
figure(2);
imshow(n,[0,255]);
%高斯模糊
gausize = 9; %濾波器大小,越大越模糊
gausigma = 10; %越大越模糊
gh = fspecial('gaussian', gausize, gausigma);
g = imfilter(n, gh);
figure(3);
imshow(g,[0,255]);
fori=1:height
forj=1:width
b=double(g(i,j));
a=double(channel(i,j));
temp=a+a*b/(256-b);
out(i,j)=uint8(min(temp,255));
endend
figure(4)
imshow(out/255);
%模糊程度越高,得到的素描結果越清晰,框架紋理顏色越深
效果圖
可以調整高斯濾波器的視窗大小和sigma值,從而實現不同程度的素描效果。
素描濾鏡的實現
期望圖 參考鏈結2 直接對每乙個畫素乘於乙個灰度的乘子即可得到當前畫素的灰度 vec3 greyscale vec3 inputcolor 效果圖如下 直接相減即可 vec3 invertcolor vec3 inputcolor 效果圖如下 對每個畫素乘於乙個5 5的核之後乘於0.4即可 1 1 ...
matlab實現kmeans演算法
kmeans是一種聚類演算法 無監督學習 演算法分為兩步 1.隨機選取k個聚類中心。2.計算每個樣本點離哪個聚類中心最近 距離計算 就將該樣本分為這個類。3.重新計算這k個類的聚類中心。一種簡單的計算方法為 計算每個類的平均值即為新的聚類中心。重複執行步驟2,直到聚類中心的變化小於給定閾值,或者達到...
Apriori演算法Matlab實現
clc clear 最小支援度設定 min sup 2 最小置信度 min conf 0.7 讀取檔案,當前的檔案型別是txt檔案,事務資料用數字來表示的,測試資料可以用 資料探勘概念與技術 第三版中的資料為樣本 fid fopen d matlabfile apriori dataapriori....