基于WTMM算法的图像多重分形谱计算matlab仿真

目录

1.算法运行效果图预览

2.算法运行软件版本

3.部分核心程序

4.算法理论概述

4.1、WTMM算法概述

4.2、WTMM算法原理

4.2.1 二维小波变换

4.2.2 模极大值检测

4.2.3 多重分形谱计算

5.算法完整程序工程


1.算法运行效果图预览

2.算法运行软件版本

matlab2022a

3.部分核心程序

.........................................................................
%%
%对保存的多张图片读取并调用WTMM方法求图像的多重分形谱,对得到的结果保存其特征值
if sel == 1k = 1;for i=1:2*n1*n2;if i<=n1*n2k      = i;folder = 'save_images\1\';lists  = dir('save_images\1\*.jpg');        endif i<=2*n1*n2 & i>n1*n2k      = i - n1*n2;folder = 'save_images\2\';lists  = dir('save_images\2\*.jpg');        end        i%read an imageI                               = imread(fullfile(folder,lists(k).name));%调用分形函数[qt,rt,ft,fft,Dt,feature_data]  = func_Wavelet_multifractal(I);q{i}                            = qt;r{i}                            = rt;    f{i}                            = ft;   ff{i}                           = fft;   D{i}                            = Dt;Feature{i}                      = feature_data;endsave result.mat q r f ff D FeatureK = 120;figure;plot(r{K},f{K},'-r>',...'LineWidth',1,...'MarkerSize',6,...'MarkerEdgeColor','k',...'MarkerFaceColor',[0.9,0.9,0.0]);xlabel('奇异指数a');ylabel('多重分行谱f(a)') grid on;figure;plot(q{K}+2,D{K},'-r>',...'LineWidth',1,...'MarkerSize',6,...'MarkerEdgeColor','k',...'MarkerFaceColor',[0.9,0.9,0.0]);xlabel('q');ylabel('D(q)') grid on;figureplot(q{K},r{K},'-r>',...'LineWidth',1,...'MarkerSize',6,...'MarkerEdgeColor','k',...'MarkerFaceColor',[0.9,0.9,0.0]);title('q和阿尔法a'); xlabel('权重因子q');ylabel('奇异指数a');grid on;figure;plot(q{K},f{K},'-r>',...'LineWidth',1,...'MarkerSize',6,...'MarkerEdgeColor','k',...'MarkerFaceColor',[0.9,0.9,0.0]);title('q和f(a) '); xlabel('权重因子q');ylabel('多重分行谱f(a)'); grid on;
end %%
%调用分类器对特征参数进行分类
if sel == 0load result.mat %q r f ff FeatureK = 120;figure;plot(r{K},f{K},'-r>',...'LineWidth',1,...'MarkerSize',6,...'MarkerEdgeColor','k',...'MarkerFaceColor',[0.9,0.9,0.0]);xlabel('奇异指数a');ylabel('多重分行谱f(a)') grid on;figure;plot(q{K}+2,D{K},'-r>',...'LineWidth',1,...'MarkerSize',6,...'MarkerEdgeColor','k',...'MarkerFaceColor',[0.9,0.9,0.0]);xlabel('q');ylabel('D(q)') grid on;figureplot(q{K},r{K},'-r>',...'LineWidth',1,...'MarkerSize',6,...'MarkerEdgeColor','k',...'MarkerFaceColor',[0.9,0.9,0.0]);title('q和阿尔法a'); xlabel('权重因子q');ylabel('奇异指数a');grid on;figure;plot(q{K},f{K},'-r>',...'LineWidth',1,...'MarkerSize',6,...'MarkerEdgeColor','k',...'MarkerFaceColor',[0.9,0.9,0.0]);title('q和f(a) '); xlabel('权重因子q');ylabel('多重分行谱f(a)'); grid on;   for i = 1:length(Feature)P(i) =  Feature{i}(3);end T =  [1*ones(1,length(Feature)/2),2*ones(1,length(Feature)/2)];t1                      = clock;                              %计时开始net                     = fitnet(65);net.trainParam.epochs   = 1000;                               %设置训练次数net.trainParam.goal     = 0.0001;                             %设置性能函数net.trainParam.show     = 1;                                  %每10显示net.trainParam.Ir       = 0.005;                              %设置学习速率net                     = train(net,P,T);                     %训练BP网络datat                   = etime(clock,t1);Nets                    = net;view(Nets);figure;plot(P,'b-*');y = sim(net,P);  figure;stem(y,'-bs',...'LineWidth',1,...'MarkerSize',6,...'MarkerEdgeColor','k',...'MarkerFaceColor',[0.9,0.0,0.0]);hold onplot(T,'-mo',...'LineWidth',1,...'MarkerSize',6,...'MarkerEdgeColor','k',...'MarkerFaceColor',[0.5,0.9,0.0]);hold onlegend('预测数据','实际数据');title('输出1为第一类,输出2为第二类(即可对比实际的健康部分和肿瘤部分)');disp('预测正确率');error = 0;for i = 1:length(y)if i <= length(y)/2 if y(i) > 1.5error = error + 1;endelseif y(i) < 1.5error = error + 1;end          endend1-error/length(y)
end
17_003m

4.算法理论概述

        基于WTMM算法的图像多重分形谱计算是一种利用小波变换模极大值(WTMM)方法,对图像进行多重分形分析的方法。下面将详细介绍这种方法的原理和数学公式。

4.1、WTMM算法概述

       分形理论是一种研究自然界中不规则、复杂现象的数学工具,而多重分形则是分形理论的一个重要分支,用于描述具有不同奇异程度的分形结构。在图像处理中,多重分形分析可以帮助我们更好地理解图像的纹理、边缘等特征,以及它们在不同尺度下的表现。

       WTMM算法是一种基于小波变换模极大值的方法,用于计算图像的多重分形谱。该方法主要利用小波变换对图像进行多尺度分解,提取出图像在不同尺度下的边缘信息。然后,通过对这些边缘信息进行统计分析,计算出图像的多重分形谱。

具体来说,WTMM算法的计算步骤如下:

  1. 对图像进行二维小波变换,得到一系列小波系数。
  2. 对每个尺度下的小波系数进行模极大值检测,提取出图像的边缘信息。
  3. 对提取出的边缘信息进行统计分析,计算出图像的多重分形谱。

4.2、WTMM算法原理

WTMM算法的数学公式主要包括以下几个部分:

4.2.1 二维小波变换

       对图像f(x,y)进行二维小波变换,可以得到一系列小波系数Wf(x,y),其中下标f表示小波变换的类型,如Haar小波、Daubechies小波等。二维小波变换的数学公式可以表示为:

Wf(x,y)=∫∫f(u,v)ψf(x−u,y−v)dudvWf(x,y) = \int \int f(u,v) \psi_f(x-u,y-v) du dvWf(x,y)=∫∫f(u,v)ψf​(x−u,y−v)dudv

其中,ψf(x,y)是小波基函数。

4.2.2 模极大值检测

       对每个尺度下的小波系数进行模极大值检测,可以提取出图像的边缘信息。具体地,对于每个像素位置(x,y),如果满足以下两个条件:

|Wf(x,y)|≥|Wf(x+1,y)|,|Wf(x,y)|≥|Wf(x−1,y)|,|Wf(x,y)|≥|Wf(x,y+1)|,|Wf(x,y)|≥|Wf(x,y−1)||W_f(x,y)| \geq |W_f(x+1,y)|, |W_f(x,y)| \geq |W_f(x-1,y)|,|W_f(x,y)| \geq |W_f(x,y+1)|, |W_f(x,y)| \geq |W_f(x,y-1)||Wf​(x,y)|≥|Wf​(x+1,y)|,|Wf​(x,y)|≥|Wf​(x−1,y)|,|Wf​(x,y)|≥|Wf​(x,y+1)|,|Wf​(x,y)|≥|Wf​(x,y−1)|

则称该像素位置为模极大值点。

4.2.3 多重分形谱计算

      通过对提取出的边缘信息进行统计分析,可以计算出图像的多重分形谱。具体地,可以用以下公式计算多重分形谱:

α=lim⁡ε→0log⁡|Wf(x,y)|log⁡ε\alpha = \lim_{\varepsilon \to 0} \frac{\log |W_f(x,y)|}{\log \varepsilon}α=limε→0​logεlog⁡|Wf​(x,y)|​

       其中,ε是小波变换的尺度参数,α是奇异指数,用于描述图像在不同尺度下的奇异程度。通过对所有模极大值点的奇异指数进行统计分析,可以得到图像的多重分形谱。

5.算法完整程序工程

OOOOO

OOO

O

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/99169.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

核货宝:服装店收银系统如何选择?收银系统选购指南!

对于各行各业而言&#xff0c;收银系统都是必备的工具。特别是对于像服装店这样的零售门店来说&#xff0c;选择一套适合的收银系统尤为重要。在选择收银系统时&#xff0c;有一些关键的技巧需要注意&#xff0c;以达到软硬件合理搭配、节省开支的目的。下面将分享四个选购服装…

【Java】微服务——微服务介绍和Eureka注册中心

目录 1.微服务介绍2.服务拆分和远程调用2.1.提供者与消费者 3.Eureka注册中心3.1.Eureka的结构和作用3.2.Eureka的结构3.3.搭建Eureka服务3.3.1.引入eureka依赖3.3.2.编写配置文件 3.4.服务注册及拉1&#xff09;引入依赖2&#xff09;配置文件3&#xff09;启动多个user-servi…

C语言编程实现只有一个未知数的两个多项式合并的程序

背景&#xff1a; 直接看题目把&#xff01;就是C语言写两个多项式多项式合并 题目要求&#xff1a; 1. 题目&#xff1a; 编程实现只有一个未知数的两个多项式合并的程序。如&#xff1a; 3x^26x7 和 5x^2-2x9合并结果为8x^24x16。 2. 设计要求 &#xff08;1&#xff09…

【kubernetes】带你了解k8s中PV和PVC的由来

文章目录 1 为什么需要卷(Volume)2 卷的挂载2.1 k8s集群中可以直接使用2.2 需要额外的存储组件2.3 公有云 2 PV(Persistent Volume)3 SC(Storage Class) 和 PVC(Persistent Volume Claim)4 总结 1 为什么需要卷(Volume) Pod是由一个或者多个容器组成的&#xff0c;在启动Pod中…

JavaScript中的模块化编程,包括CommonJS和ES6模块的区别。

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 模块化编程概述⭐ CommonJS 模块⭐ ES6 模块⭐ 区别⭐ 写在最后 ⭐ 专栏简介 前端入门之旅&#xff1a;探索Web开发的奇妙世界 欢迎来到前端入门之旅&#xff01;感兴趣的可以订阅本专栏哦&#xff01;这个专栏是为那些对Web开发感兴趣、…

git的基础操作

https://blog.csdn.net/a18307096730/article/details/124586216?spm1001.2014.3001.5502 1&#xff1a;使用场景 SVN&#xff0c;如果服务器里面的东西坏掉了&#xff0c;那么就全线崩盘了。 1:基本配置 git config --global user.name “luka” (自己的名字就行) git co…

一篇短小精悍的文章让你彻底明白KMP算法中next数组的原理

以后保持每日一更&#xff0c;由于兴趣较多&#xff0c;更新内容不限于数据结构&#xff0c;计算机组成原理&#xff0c;数论&#xff0c;拓扑学......&#xff0c;所谓&#xff1a;深度围绕职业发展&#xff0c;广度围绕兴趣爱好。往下看今日内容 一.什么是KMP算法 KMP&#x…

ARM-day5作业

.text .global _start _start: 1、设置GPIOE、GPIOF寄存器的时钟使能 RCC_MP_AHB4ENSETR[4]->1 0x50000a28 LDR R0,0x50000a28 LDR R1,[R0] ORR R1,R1,#(0x3<<4) STR R1,[R0]2、设置PE10、PF10、PE8管脚为输出模式 GPIOE_MODER[21:20]->01 0x50006000…

Windows环境下下载安装Elasticsearch和Kibana

Windows环境下下载安装Elasticsearch和Kibana 首先说明这里选择的版本都是7.17 &#xff0c;为什么不选择新版本&#xff0c;新版本有很多坑&#xff0c;要去踩&#xff0c;就用7就够了。 Elasticsearch下载 Elasticsearch是一个开源的分布式搜索和分析引擎&#xff0c;最初由…

基于SVM+TensorFlow+Django的酒店评论打分智能推荐系统——机器学习算法应用(含python工程源码)+数据集+模型(一)

目录 前言总体设计系统整体结构图系统流程图 运行环境Python环境TensorFlow 环境方法一方法二 安装其他模块安装MySQL 数据库 模块实现1. 数据预处理1&#xff09;数据整合2&#xff09;文本清洗3&#xff09;文本分词 相关其它博客工程源代码下载其它资料下载 前言 本项目以支…

C++对象模型(7)-- 数据语义学:成员变量偏移值、地址

1、成员变量偏移值 &#xff08;1&#xff09; 成员变量偏移值&#xff0c;就是指这个成员变量的地址离对象首地址偏移了多少字节&#xff0c;这个偏移值在编译完成后是不变的。 class Base { public:int b_i;int b_j; };int main() {Base base;printf(" b_i的偏移值:%…

计算机专业毕业设计项目推荐14-文档编辑平台(SpringBoot+Vue+Mysql)

文档编辑平台&#xff08;SpringBootVueMysql&#xff09; **介绍****各部分模块实现** 介绍 本系列(后期可能博主会统一为专栏)博文献给即将毕业的计算机专业同学们,因为博主自身本科和硕士也是科班出生,所以也比较了解计算机专业的毕业设计流程以及模式&#xff0c;在编写的…

Linux 基金会分叉 Terraform,正式推出 OpenTofu

Linux 基金会宣布推出 OpenTofu&#xff0c;这是一个 Terraform 的开源替代方案&#xff0c;并且分叉自 Terraform。OpenTofu 原名 OpenTF&#xff0c;为所有人提供了一个在中立治理模式下的可靠的开源替代方案。 Terraform 是 HashiCorp 开源的一个安全和高效的用来构建、更改…

内网渗透——哈希传递

文章目录 哈希传递1. 概念1.1 LM1.2 NTLM 2. 原理3. 利用3.1 hash传递浏览上传文件3.2 hash传递获取域控RDP 4. 总结 哈希传递 哈希传递攻击&#xff08;Pass The Hash&#xff09;是基于 NTLM 认证缺陷的一种攻击方式&#xff0c;攻击者可以利用用户的密码哈希值来进行 NTLM …

提升微信小程序MAU,这些方法你需要落地执行

面对激烈的微信小程序竞争,如何提升微信小程序的月活跃用户量(MAU)是每个小程序运营者需要思考的问题。经过分析,提升微信小程序MAU可以从以下几个方面着手。更多提升微信小程序MAU相关&#xff0c;可某薇找我名字。 提升微信小程序MAU 第一,丰富小程序功能,提升用户黏性。可以…

flutter开发实战-video_player插件播放抖音直播实现(仅限Android端)

flutter开发实战-video_player插件播放抖音直播实现&#xff08;仅限Android端&#xff09; 在之前的开发过程中&#xff0c;遇到video_player播放视频&#xff0c;通过查看video_player插件描述&#xff0c;可以看到video_player在Android端使用exoplayer&#xff0c;在iOS端…

笔记34:转置卷积 Transposed Convolution 的由来

注&#xff1a;该文章为视频课的笔记补充 视频课&#xff1a;转置卷积&#xff08;transposed convolution&#xff09;_哔哩哔哩_bilibili 更详细的推导在&#xff1a;抽丝剥茧&#xff0c;带你理解转置卷积&#xff08;反卷积&#xff09;_逆卷积-CSDN博客 a a a 补充1…

九大装修收纳空间的设计,收藏备用!福州中宅装饰,福州装修

如果房子面积不大&#xff0c;收纳设计就显得非常重要。其实装修房子中很多地方都可以做收纳&#xff0c;九大空间每一处都可以放下你的东西&#xff0c;让你摆脱收纳烦恼。 收纳空间少的话&#xff0c;装修完后住久了怕会乱成一窝&#xff0c;因此装修的时候&#xff0c;收纳…

java spring cloud 工程企业管理软件-综合型项目管理软件-工程系统源码

鸿鹄工程项目管理系统 Spring CloudSpring BootMybatisVueElementUI前后端分离构建工程项目管理系统 1. 项目背景 一、随着公司的快速发展&#xff0c;企业人员和经营规模不断壮大。为了提高工程管理效率、减轻劳动强度、提高信息处理速度和准确性&#xff0c;公司对内部工程管…

3D模型格式转换工具HOOPS Exchange助力Halocline开发VR

挑战&#xff1a; 支持客户群使用各种CAD系统和CAD文件格式。快速准确的加载可视化硬件数据。提供访问模型详细信息&#xff0c;同时确保高帧频性能。 结果&#xff1a; 确保支持标准文件格式和来自领先工程软件包的CAD数据。 通过查看简化模型或根据需要访问高层次的细节&am…