跪求用matlab hilbert变换编写的基于多尺度小波变换的图像纹理特征提取程序

君,已阅读到文档的结尾了呢~~
【谷速软件】欢迎您,Matlab代做/Matlab代写/Matlab有偿编程,服务领域:数学建模、统计分析、神经网络、支向量机、智能优化、回归预测、模式识别、信号处理、GUI界面设计、数据挖掘、Simulink仿真、Matlab与VC等等,基于颜色和纹理的图像检索,颜色矩和gabor小波变换源代码程序
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
【matlab有偿编程】基于颜色和纹理的图像检索,颜色矩和gabor小波变换源代码程序
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer--144.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口>> Matlab小波特征提取纹理特征
Matlab小波特征提取纹理特征
所属分类:
下载地址:
Matlab小波特征提取,主文件大小:2.21 kB
分享有礼! 》
请点击右侧的分享按钮,把本代码分享到各社交媒体。
通过您的分享链接访问Codeforge,每来2个新的IP,您将获得0.1 积分的奖励。
通过您的分享链接,每成功注册一个用户,该用户在Codeforge上所获得的每1个积分,您都将获得0.2 积分的分成奖励。
matlab小波提取纹理特征,进行Gabor小波滤波进行纹理特征提取,一副图像经过小波变换为HH、HL、LH、LL四个子带,再使用这些子带进行特征提取,进行识别
Sponsored links
源码文件列表
温馨提示: 点击源码文件名可预览文件内容哦 ^_^
1.33 kB 17:07
1.25 kB 15:40
(提交有效评论获得积分)
评论内容不能少于15个字,不要超出160个字。
23 篇源代码 21 篇源代码 18 篇源代码 13 篇源代码 9 篇源代码
285 篇源代码 173 篇源代码 48 篇源代码 42 篇源代码 36 篇源代码
评价成功,多谢!
下载Matlab小波特征提取,主
CodeForge积分(原CF币)全新升级,功能更强大,使用更便捷,不仅可以用来下载海量源代码马上还可兑换精美小礼品了
您的积分不足,优惠套餐快速获取 30 积分
10积分 / ¥100
30积分 / ¥200原价 ¥300 元
100积分 / ¥500原价 ¥1000 元
订单支付完成后,积分将自动加入到您的账号。以下是优惠期的人民币价格,优惠期过后将恢复美元价格。
支付宝支付宝付款
微信钱包微信付款
更多付款方式:、
您本次下载所消耗的积分将转交上传作者。
同一源码,30天内重复下载,只扣除一次积分。
鲁ICP备号-2 runtime:Elapsed:40.951ms - init:0.2;find:1.7;t:0.5;tags:0.4;related:34.0;comment:0.4; .206
登录 CodeForge
还没有CodeForge账号?
Switch to the English version?
^_^"呃 ...
Sorry!这位大神很神秘,未开通博客呢,请浏览一下其他的吧在MATLAB环境下基于小波变换的图像去噪_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
在MATLAB环境下基于小波变换的图像去噪
上传于||暂无简介
阅读已结束,如果下载本文需要使用1下载券
想免费下载本文?
下载文档到电脑,查找使用更方便
还剩4页未读,继续阅读
你可能喜欢查看: 8512|回复: 10|关注: 0
小波变换 纹理特征提取算法已知,求代码
<h1 style="color:# 麦片财富积分
新手, 积分 5, 距离下一级还需 45 积分
本帖最后由 fqs1207 于
07:25 编辑
基于小波变换的纹理特征提取算法如下:& & (1)将彩色图像转化为灰度图像。& & (2)进行四层小波分解。(3)求分解后每个子带小波系数的均值和标准差。设小波分解后的子带为file:///C:/Users/asus/AppData/Local/Temp/ksohtml/wps_clip_image-7490.png,i=1,2,…,13,则:file:///C:/Users/asus/AppData/Local/Temp/ksohtml/wps_clip_image-14644.pngfile:///C:/Users/asus/AppData/Local/Temp/ksohtml/wps_clip_image-21453.png(4)得到特征向量T:将各个子带小波系数的均值和标准差作为图像的纹理特征向量中的各个分量,则特征向量file:///C:/Users/asus/AppData/Local/Temp/ksohtml/wps_clip_image-1638.png。(5)特征归一化:由于上述13个特征相量的物理意义和取值范围不同,为了防止检索时产生很大的偏差,所以需要进行归一化。高斯归一化是一种较好的归一化方法,其特点是少量超大或超小的元素值对整个归一化后的元素值分布影响不大。设原始特征向量为file:///C:/Users/asus/AppData/Local/Temp/ksohtml/wps_clip_image-19871.png,计算出其均值m和标准差file:///C:/Users/asus/AppData/Local/Temp/ksohtml/wps_clip_image-26711.png,设归一化的特征向量为file:///C:/Users/asus/AppData/Local/Temp/ksohtml/wps_clip_image-24247.png,则:file:///C:/Users/asus/AppData/Local/Temp/ksohtml/wps_clip_image-8428.png利用式(21)对特征向量进行归一化,可将各个分量归一化到[-1,1]。帖子中的图片在word中能显示,不知在这怎么显示不了?若是哪位大侠愿意帮助我,请联系QQ:
<h1 style="color:# 麦片财富积分
自己先顶一个
<h1 style="color:# 麦片财富积分
关注者: 3
function feature_wl=getf_wavelet(Input)
& & A=double(Input);
& & Xrgb=0.2990*A(:,:,1)+0.5870*A(:,:,2)+0.1140*A(:,:,3);
& & NbColor=255;
%&&WCODEMAT Extended pseudocolor matrix scaling. Y = WCODEMAT(X,NBCODES,OPT,ABSOL) returns a coded version of input
% matrix X if ABSOL=0, or ABS(X) if ABSOL is&&nonzero, using the first NBCODES integers.
%&&Coding can be done row-wise (OPT='row' or 'r'), columnwise (OPT='col' or 'c'), or globally (OPT='mat' or 'm').
%&&Coding uses a regular grid between the minimum and the maximum values of each row (column or matrix,respectively).
%&&Y = WCODEMAT(X,NBCODES) is equivalent to&&Y = WCODEMAT(X,NBCODES,'mat',1).
& & X1=wcodemat(Xrgb,NbColor);%伪彩矩阵压缩
% Function 'wavedec2' Multilevel 2-D wavelet decomposition.[C,S] = WAVEDEC2(X,N,'wname') returns the wavelet
% decomposition of the matrix X at level N, using the wavelet named in string 'wname' (see WFILTERS).
% Outputs are the decomposition vector C and the corresponding bookkeeping matrix S.
% N must be a strictly positive integer (see WMAXLEV).
& &[c2,l2]=wavedec2(X1,4,'sym4');%二维小波分解
% Function 'detcoef2' Extract 2-D detail coefficients.
% D = detcoef2(O,C,S,N) extracts from the wavelet decomposition structure [C,S], the horizontal, vertical
% or diagonal detail coefficients for O = 'h' (or 'v' or 'd',respectively), at level N. N must
% be an integer such that 1 &= N &= size(S,1)-2.
& &ch11=detcoef2('h',c2,l2,1);%提取小波分解细节系数
& &ch12=detcoef2('h',c2,l2,2);
& &ch13=detcoef2('h',c2,l2,3);
& &ch14=detcoef2('h',c2,l2,4);
& &cv11=detcoef2('v',c2,l2,1);
& &cv12=detcoef2('v',c2,l2,2);
& &cv13=detcoef2('v',c2,l2,3);
& &cv14=detcoef2('v',c2,l2,4);
& &cd11=detcoef2('d',c2,l2,1);
& &cd12=detcoef2('d',c2,l2,2);
& &cd13=detcoef2('d',c2,l2,3);
& &cd14=detcoef2('d',c2,l2,4);
% Function 'appcoef2' Extract 2-D approximation coefficients.APPCOEF2 computes the approximation coefficients of a
% two-dimensional signal.A = APPCOEF2(C,S,'wname',N) computes the approximation coefficients at level N using the wavelet decomposition
% structure [C,S] (see WAVEDEC2). 'wname' is a string containing the wavelet name.Level N must be an integer such that 0 &= N &= size(S,1)-2.
& &ca14=appcoef2(c2,l2,'sym4',4);%提取小波分解概貌系数
%==========compute mean & var(求分解后的每个图象的均值和方差)==================
%image x1's u & std
& &Csize1=size(ch11);
& &for i=1:Csize1(1)
& && & for j=1:Csize1(2)
& && && &&&s1=s1+abs(ch11(i,j));%abs求绝对值
& && & end
& &u1=(1/(Csize1(1)*Csize1(2)))*s1;
& &for i=1:Csize1(1)
& && & for j=1:Csize1(2)
& && && &&&st1=st1+(abs(ch11(i,j))-u1)*(abs(ch11(i,j))-u1);
& && & end
& &z1=sqrt((1/(Csize1(1)*Csize1(2)-1))*st1);
%======================================================
& &Csize2=size(ch12);
& &for i=1:Csize2(1)
& && & for j=1:Csize2(2)
& && && &&&s2=s2+abs(ch12(i,j));
& && & end
& &u2=(1/(Csize2(1)*Csize2(2)))*s2;
& &for i=1:Csize2(1)
& && & for j=1:Csize2(2)
& && && &&&st2=st2+(abs(ch12(i,j))-u2)*(abs(ch12(i,j))-u2);
& && & end
& &z2=sqrt((1/(Csize2(1)*Csize2(2)-1))*st2);
%===========================================================
& &Csize3=size(ch13);
& &for i=1:Csize3(1)
& && & for j=1:Csize3(2)
& && && &&&s3=s3+abs(ch13(i,j));
& && & end
& &u3=(1/(Csize3(1)*Csize3(2)))*s3;
& &for i=1:Csize3(1)
& && & for j=1:Csize3(2)
& && && &&&st3=st3+(abs(ch13(i,j))-u3)*(abs(ch13(i,j))-u3);
& && & end
& &z3=sqrt((1/(Csize3(1)*Csize3(2)-1))*st3);
%================================================================
& &Csize3=size(ch14);
& &for i=1:Csize3(1)
& && & for j=1:Csize3(2)
& && && &&&s3=s3+abs(ch14(i,j));
& && & end
& &u4=(1/(Csize3(1)*Csize3(2)))*s3;
& &for i=1:Csize3(1)
& && & for j=1:Csize3(2)
& && && &&&st3=st3+(abs(ch14(i,j))-u4)*(abs(ch14(i,j))-u4);
& && & end
& &z4=sqrt((1/(Csize3(1)*Csize3(2)-1))*st3);
%=================================================================
& &Csize4=size(cv11);
& &for i=1:Csize4(1)
& && & for j=1:Csize4(2)
& && && & s4=s4+abs(cv11(i,j));
& && & end
& &u5=(1/(Csize4(1)*Csize4(2)))*s4;
& &for i=1:Csize4(1)
& && & for j=1:Csize4(2)
& && && &&&st4=st4+(abs(cv11(i,j))-u5)*(abs(cv11(i,j))-u5);
& && & end
& &z5=sqrt((1/(Csize4(1)*Csize4(2)-1))*st4);
%===============================================================
& &Csize5=size(cv12);
& &for i=1:Csize5(1)
& && & for j=1:Csize5(2)
& && && &&&s5=s5+abs(cv12(i,j));
& && & end
& &u6=(1/(Csize5(1)*Csize5(2)))*s5;
& &for i=1:Csize5(1)
& && & for j=1:Csize5(2)
& && && &&&st5=st5+(abs(cv12(i,j))-u6)*(abs(cv12(i,j))-u6);
& && & end
& &z6=sqrt((1/(Csize5(1)*Csize5(2)-1))*st5);
%================================================================
& &Csize6=size(cv13);
& &for i=1:Csize6(1)
& && & for j=1:Csize6(2)
& && && &&&s6=s6+abs(cv13(i,j));
& && & end
& &u7=(1/(Csize6(1)*Csize6(2)))*s6;
& &for i=1:Csize6(1)
& && & for j=1:Csize6(2)
& && && & st6=st6+(abs(cv13(i,j))-u7)*(abs(cv13(i,j))-u7);
& && & end
& &z7=sqrt((1/(Csize6(1)*Csize6(2)-1))*st6);
%==================================================================
& &Csize6=size(cv14);
& &for i=1:Csize6(1)
& && & for j=1:Csize6(2)
& && && &&&s6=s6+abs(cv14(i,j));
& && & end
& &u8=(1/(Csize6(1)*Csize6(2)))*s6;
& &for i=1:Csize6(1)
& && & for j=1:Csize6(2)
& && && &&&st6=st6+(abs(cv14(i,j))-u8)*(abs(cv14(i,j))-u8);
& && & end
& &z8=sqrt((1/(Csize6(1)*Csize6(2)-1))*st6);
%==============================================================
& &Csize7=size(cd11);
& &for i=1:Csize7(1)
& && & for j=1:Csize7(2)
& && && & s7=s7+abs(cd11(i,j));
& && & end
& &u9=(1/(Csize7(1)*Csize7(2)))*s7;
& &for i=1:Csize7(1)
& && & for j=1:Csize7(2)
& && && & st7=st7+(abs(cd11(i,j))-u9)*(abs(cd11(i,j))-u9);
& && & end
& &z9=sqrt((1/(Csize7(1)*Csize7(2)-1))*st7);
%====================================================================
& &Csize7=size(cd12);
& &for i=1:Csize7(1)
& && & for j=1:Csize7(2)
& && && & s7=s7+abs(cd12(i,j));
& && & end
& &u10=(1/(Csize7(1)*Csize7(2)))*s7;
& &for i=1:Csize7(1)
& && &for j=1:Csize7(2)
& && && & st7=st7+(abs(cd12(i,j))-u10)*(abs(cd12(i,j))-u10);
& && & end
& &z10=sqrt((1/(Csize7(1)*Csize7(2)-1))*st7);
%=================================================
& &Csize7=size(cd13);
& &for i=1:Csize7(1)
& && &for j=1:Csize7(2)
& && && & s7=s7+abs(cd13(i,j));
& && & end
& &u11=(1/(Csize7(1)*Csize7(2)))*s7;
& &for i=1:Csize7(1)
& && &for j=1:Csize7(2)
& && && &st7=st7+(abs(cd13(i,j))-u11)*(abs(cd13(i,j))-u11);
& &z11=sqrt((1/(Csize7(1)*Csize7(2)-1))*st7);
%=================================================
& &Csize7=size(cd14);
& &for i=1:Csize7(1)
& && & for j=1:Csize7(2)
& && && & s7=s7+abs(cd14(i,j));
& && & end
& &u12=(1/(Csize7(1)*Csize7(2)))*s7;
& &for i=1:Csize7(1)
& && & for j=1:Csize7(2)
& && && & st7=st7+(abs(cd14(i,j))-u12)*(abs(cd14(i,j))-u12);
& && & end
& &z12=sqrt((1/(Csize7(1)*Csize7(2)-1))*st7);
%=================================================
& &Csize7=size(ca14);
& &for i=1:Csize7(1)
& && &for j=1:Csize7(2)
& && && & s7=s7+abs(ca14(i,j));
& &u13=(1/(Csize7(1)*Csize7(2)))*s7;
& &for i=1:Csize7(1)
& && &for j=1:Csize7(2)
& && && &st7=st7+(abs(ca14(i,j))-u13)*(abs(ca14(i,j))-u13);
& &z13=sqrt((1/(Csize7(1)*Csize7(2)-1))*st7);
& &%semble feature vector========================================
& &% 应用准则函数把对分类影响不大的特征去除
& &feature_wl=[u1,z1,u2,z2,u3,z3,u4,z4,u5,z5,u6,z6,u7,z7,u8,z8,u9,z9,u10,z10,u11,z11,u12,z12,u13,z13];
& &%feature_wl=[u1,z1,u2,z2,u3,z3,u4,z4,u5,z5,u6,z6,u7,z7,u9,z9,u13,z13];
<h1 style="color:# 麦片财富积分
关注者: 3
这是从网上看到的程序,我也在做这个,然后相似度度量怎么写不会,楼主看过有没有想法可以分享一下
<h1 style="color:# 麦片财富积分
关注者: 14
function varargout = fdwt( I, mode )
& & [m,n]=size(I);
& & I = double(I);
& & if strcmp(mode,'haar')& && && && & % haar小波
& && &&&hs = [1/sqrt(2), 1/sqrt(2)];& &% 尺度向量
& && &&&hw = [-1/sqrt(2), 1/sqrt(2)];&&% 小波向量
& & elseif strcmp(mode,'symlets')& && &% Symlets小波
& && &&&hs = [0.0322, -0.0126, -0.9, 0.6,-0.0296, -0.0758];&&% 尺度向量
& && &&&hw = [-0.6, 0.4976, -0.9, 0.0992, -0.0126, -0.0322]; % 小波向量
& & end
& & % 初始化输出矩阵
& & cA = zeros(floor(m/2), floor(n/2)); % 近似+近似
& & cH = cA;& && && && && && && && && & % 近似+细节 -- 水平方向
& & cV = cA;& && && && && && && && && & % 细节+近似 -- 垂直方向
& & cD = cA;& && && && && && && && && & % 细节+细节 -- 对角线方向
& & temp1 = zeros(m, floor(n/2));
& & temp2 =temp1;
& & % 进行行卷积,并间隔采样
& & for i = 1: m
& && &&&colW = conv(I(i,:),hw,'same');&&% 小波向量行卷积
& && &&&colS = conv(I(i,:),hs,'same');&&% 尺度向量行卷积
& && &&&temp1(i,:) = colW(2:2:end);& &&&% 间隔采样
& && &&&temp2(i,:) = colS(2:2:end);& &&&% 间隔采样
& & end
& & % 进行列卷积,并间隔采样,得到最终结果
& & for j = 1: size(temp1,2)
& && &&&tempD = conv(temp1(:,j),hw,'same');
& && &&&cD(:,j) = tempD(2:2:end);
& && &&&tempV = conv(temp1(:,j),hs,'same');
& && &&&cV(:,j) = tempV(2:2:end);
& && &&&tempH = conv(temp2(:,j),hw,'same');
& && &&&cH(:,j) = tempH(2:2:end);
& && &&&tempA = conv(temp2(:,j),hs,'same');
& && &&&cA(:,j) = tempA(2:2:end);
& & end
& & if nargout == 1&&% 输出变量个数为1,则把四个输出存到一个三维矩阵。
& && &&&varargout{1} = cat(3,cA,cH,cV,cD);
& & elseif nargout == 4 % 输出变量个数为4,则分别输出
& && &&&varargout{1} = cA;
& && &&&varargout{2} = cH;
& && &&&varargout{3} = cV;
& && &&&varargout{4} = cD;
& & elseif nargout == 0 %没有输出变量,用图像显示结果
& && &&&out = [cA, cH; cV, cD];
& && &&&figure,imshow(uint8(out));
& & end
end
复制代码function [ MeanValue, Hist ] = TextureDescriptor( I, mode)
G = I;
e = zeros(1,4); % 每一级的均值向量
MeanValue = 0; % 均值向量
Hist = [];
k = 1;
counts = zeros(256,4);
while 1
& & % 计算小波系数
& & F(:,:,1:4)= fdwt(G, mode);
& & for i = 1: size(F,3);
& && &&&[r,l] = size(F(:,:,i));
& && &&&e(i) = 1/(r*l)*sum(sum(abs(F(:,:,i)))); % 计算均值
& && &&&[counts(:,i), ~]= imhist(uint8((F(:,:,i))));
& & end
& & if r & 60 || l & 60&&% 如果图像尺寸小于60,停止计算
%& && && &MeanValue = [MeanValue, e];
& && &&&
& & end
& & [~, index] = max(e); % 找到均值最大的位置
& & e(index) = []; % 将均值最大的删去
& &
& & MeanValue = [MeanValue,e]; % 将剩余的均值存入均值向量
& &
& & Hist(:,:,k) =
& &
& & G = F(:,:,index); % 得到均值最大的子图像,进行下一步分解
& & F = []; % 重置F
& & e = zeros(1,4); % 重置每级的均值向量
& & k = k+1;
end
MeanValue(1)=[];% 将0元素删去
MeanValue = MeanValue/sum(MeanValue); % 归一化
end
复制代码clear,clc,close all
number = 2;
Hist = zeros(256, 4, 3, number);
for i = 1: number
& & [image,map] = imread(['Brodatz\D',num2str(i),'.gif']);
& & I(:,:,i) = ind2gray(image,map);
& & [ X(i,:), Hist(:,:,:,i) ]= TextureDescriptor(I(:,:,i),'haar');
end
D = pdist(X,'euclidean'); % 计算欧式距离
Z = squareform(D);
for i = 1: number
& & for j = 1: number
& && &&&if i == j
& && && && &Z(i,j) = 1;
& && &&&end
& & end
end
%% 找到与第i副图距离最近的图
index = zeros(1,number);
for i = 1: number
& & [~, index(i)] = min(Z(:,i));
& & A(:,:,i) = I(:,:,index(i));
end
%% 显示与第i副图距离最近的图
% 运行完前面的程序后,每次只需修改本段程序i的值即可。
i = 1;
subplot(121)
imshow(I(:,:,i));
title(['第',num2str(i),'副图']);
subplot(122)
imshow(A(:,:,i));
title(['与第',num2str(i),'副图距离最近的图像是第',num2str(index(i)),'副图'])复制代码这是我们的作业题,不知道写对了没。老师还没讲。但貌似匹配的时候有一定效果。只用了均值,匹配的时候用欧氏距离。
<h1 style="color:# 麦片财富积分
你好,我做的毕业设计也需要用小波变换进行纹理特征提取,不过这个代码一直没有弄出来,所以非常希望得到你的帮助,麻烦了:),非常感谢!
<h1 style="color:#5 麦片财富积分
关注者: 49
葛的小雨 发表于
你好,我做的毕业设计也需要用小波变换进行纹理特征提取,不过这个代码一直没有弄出来,所以非常希望得到你 ...
参考论坛:
用matlab写的图像检索源程序,用双树复小波(DT-CWT)三级分解提取图像的纹理特征,用Canberra distance metric作为相似性度量工具,对纹理图像库有很好的检索能力
<h1 style="color:# 麦片财富积分
hcq@@ 发表于
参考论坛:
用matlab写的图像检索源程序,用双树复小波(DT-CWT)三级分解提取图像的纹理特征,用Canber ...
谢谢,非常感谢你的回复!:)
<h1 style="color:# 麦片财富积分
这是我们的作业题,不知道写对了没。老师还没讲。但貌似匹配的时候有一定效果。只用了均值,匹配的时候用欧 ...
调试了一下,貌似有错误啊,
<h1 style="color:# 麦片财富积分
调试了一下,貌似有错误啊,
感觉是大问题啊,兄台可否将修改后的代码发我一份。感激不尽
站长推荐 /2
Powered by基于小波变换的纹理图像分割_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
基于小波变换的纹理图像分割
上传于||文档简介
&&图&#8203;像&#8203;分&#8203;割&#8203; &#8203;小&#8203;波&#8203;变&#8203;换&#8203;毕&#8203;业&#8203;论&#8203;文
阅读已结束,如果下载本文需要使用2下载券
想免费下载本文?
下载文档到电脑,查找使用更方便
还剩2页未读,继续阅读
你可能喜欢

我要回帖

更多关于 matlab hilbert变换 的文章

 

随机推荐