资源简介
包括计算共生矩阵、对共生矩阵归一化、对共生矩阵计算能量、熵、惯性矩、相关4个纹理参数、求能量、熵、惯性矩、相关的均值和标准差作为最终8维纹理特征
代码片段和文件信息
%**************************************************************************
% 图像检索——纹理特征
%基于共生矩阵纹理特征提取,d=1θ=0°45°90°135°共四个矩阵
%所用图像灰度级均为256
%参考《基于颜色空间和纹理特征的图像检索》
%function : T=Texture(Image)
%Image : 输入图像数据
%T : 返回八维纹理特征行向量
%**************************************************************************
function T = Texture(Image)
% Image = imread(‘E:\1\3.tiff‘);
% [MNO] = size(Image);
M = 256;
N = 256;
%--------------------------------------------------------------------------
%1.将各颜色分量转化为灰度
%--------------------------------------------------------------------------
Gray = double(0.3*Image(::1)+0.59*Image(::2)+0.11*Image(::3));
%--------------------------------------------------------------------------
%2.为了减少计算量,对原始图像灰度级压缩,将Gray量化成16级
%--------------------------------------------------------------------------
for i = 1:M
for j = 1:N
for n = 1:256/16
if (n-1)*16<=Gray(ij)&Gray(ij)<=(n-1)*16+15
Gray(ij) = n-1;
end
end
end
end
%--------------------------------------------------------------------------
%3.计算四个共生矩阵P取距离为1,角度分别为04590135
%--------------------------------------------------------------------------
P = zeros(16164);
for m = 1:16
for n = 1:16
for i = 1:M
for j = 1:N
if j P(mn1) = P(mn1)+1;
P(nm1) = P(mn1);
end
if i>1&j P(mn2) = P(mn2)+1;
P(nm2) = P(mn2);
end
if i P(mn3) = P(mn3)+1;
P(nm3) = P(mn3);
end
if i P(mn4) = P(mn4)+1;
P(nm4) = P(mn4);
end
end
end
if m==n
P(mn:) = P(mn:)*2;
end
end
end
%%---------------------------------------------------------
% 对共生矩阵归一化
%%---------------------------------------------------------
for n = 1:4
P(::n) = P(::n)/sum(sum(P(::n)));
end
%--------------------------------------------------------------------------
%4.对共生矩阵计算能量、熵、惯性矩、相关4个纹理参数
%--------------------------------------------------------------------------
H = zeros(14);
I = H;
Ux = H; Uy = H;
deltaX= H; deltaY = H;
C =H;
for n = 1:4
E(n) = sum(sum(P(::n).^2)); %%能量
for i = 1:16
for j = 1:16
if P(ijn)~=0
H(n) = -P(ijn)*log(P(ijn))+H(n); %%熵
end
I(n) = (i-j)^2*P(ijn)+I(n); %%惯性矩
Ux(n) = i*P(ijn)+Ux(n); %相关性中μx
Uy(n) = j*P(ijn)+Uy(n); %相关性中μy
end
end
end
for n = 1:4
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 3879 2008-01-17 11:39 纹理特征的提取\Texture.m
目录 0 2010-04-22 09:47 纹理特征的提取
----------- --------- ---------- ----- ----
4097 3
相关资源
- matlab使用有限元方法求解偏微分方程
- 中央大学 EMD HHT Matlab 源代码
- 方崇智《过程辨识》一书中各种辨识
- 求取图像的平均梯度---matlab ---M文件
- matlab潮流程序牛顿拉夫逊+PQ分解法有
- MATLAB 4f光学系统仿真
- 基于肤色模型的人脸检测MATLAB代码
- 自动寻峰算法matlab源文件
- matlab时间序列分析工具程序
- 灰色预测模型及Matlab实现附参考论文
- MSE+ 一对一多类技术的matlab实现
- MIMO-OFDM无线通信技术及MATLAB实现
- MEEM视觉跟踪matlab代码
- MATLAB神经网络43个案例分析源代码
- 数字滤波器的MATLAB与FPGA实现——杜勇
- MATLAB图像与视频处理实用案例详解代
- 轴承故障诊断matlab代码四种方法
- EM算法(MATLAB实现)289407
- MATLAB应用程序接口用户指南pdf文档
- matlab图像压缩感知
- 基于MATLAB的永磁风力发电机动态仿真
- 精通MATLAB
- MATLAB 图像处理识别程序
- RANSAC算法用MATLAB写的代码
- Optometrika 透镜成像模拟
- MATLAB发票动车票识别.zip
- MATLAB交通标志识别[GUI界面,论文].z
- MATLAB车牌[GUI,语音播报,论文,详细
- MATLAB数字表盘识别[GUI界面,界面丰富
- matlab有限元代码
评论
共有 条评论