MATLAB环境下基于超高斯全自动组织学图像的盲彩色反卷积方法

news2024/12/23 22:09:07

图像盲反卷积问题仅根据模糊图像估计清晰图像和模糊核,也是一个欠定问题且求解更加困难。但图像盲反卷积算法更实际,因为许多情况下,模糊核都是未知或部分已知的。求解盲反卷积问题需要为未知量选择适当的先验模型,以得到清晰图像和模糊核的确定解。

图像盲反卷积算法的发展可以追溯到上世纪70年代中期。此后,图像盲反卷积算法在专用领域缓慢发展。近十年来,图像盲反卷积算法的研究兴起。变分贝叶斯推理受到广泛关注,给盲反卷积算法性能带来重要飞跃。研究者们引入多种先验模型,结合VB推理,使得盲复原算法通用而强大。超高斯是最受欢迎的先验模型,具有稀疏性,包括TV模型,lp,MOG和SMG等。有研究人员根据自然图像梯度的统计特征呈现重尾分布,采用稀疏图像先验模型,即混合高斯模型,结合变分贝叶斯推理估计模糊核,再通过RL非盲反卷积算法复原图像;有研究人员提出了基于VB推理和超高斯稀疏图像先验模型的盲反卷积算法,给出了这类盲反卷积算法估计清晰图像和模糊核的一般程序;有研究人员将TV先验模型做近似,使其适应VB推理架构,得到了优于非TV先验模型方法的复原效果。学生t-分布,本质上是高斯尺度混合的一种,可以表示成有限数目的高斯分布的叠加,其中高斯分布的精度服从伽马分布,这样的性质使得基于VB推理的盲反卷积问题更简单。

鉴于图像盲反卷积方法的优势,提出一种基于超高斯全自动组织学图像的盲彩色反卷积方法,算法运行环境为MATLAB R2018A,压缩包=数据+代码+参考文献。部分代码如下:

clc,clear all
I = imread('histWB.jpg');
% In this example we will be using Landini reference vectors (default). 
% It is strongly recommended to update the reference matrix according to the images you are working with.
% The reference should be representative of the tissue/ stain center/ scanner 
load 'MLandini' RM;
[m,n,nc] = size(I);
subplot(241),imshow(I)
title('Original H&E Image')
%% Deconvolution
ns=2; %number of stains
p=1; %prior parameter
prior= 'lp' %'lp' or 'log'
filtersetname='fo'; %high pass filters ('none', 'fohv', 'fo') 

%% Band visualization (OD space)

ns = size(M,2)
concentrations = reshape(CT',m,n,ns);

%figure()
subplot(242),imshow(concentrations(:,:,1))
title('OD H Band')
subplot(246),imshow(concentrations(:,:,2))
title('OD E Band')


%% Band reconstruction (RGB space)
Hrec_OD = reshape((M(:,1)*CT(1,:))',m,n,nc);
Hrec_RGB = OD2intensities(Hrec_OD);

Erec_OD = reshape((M(:,2)*CT(2,:))',m,n,nc);
Erec_RGB = OD2intensities(Erec_OD);

%figure()
subplot(243),imshow(Hrec_RGB)
title('RGB H Band')
subplot(247),imshow(Erec_RGB)
title('RGB E Band')

%% Image Normalization

出图如下:

工学博士,担任《Mechanical System and Signal Processing》审稿专家,担任
《中国电机工程学报》优秀审稿专家,《控制与决策》,《系统工程与电子技术》,《电力系统保护与控制》,《宇航学报》等EI期刊审稿专家。

擅长领域:现代信号处理,机器学习,深度学习,数字孪生,时间序列分析,设备缺陷检测、设备异常检测、设备智能故障诊断与健康管理PHM等。

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

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

相关文章

二叉树与堆

目录 1.树概念及结构 1.1树的概念 1.2 树的相关概念 1.3 树的表示 1.4 树在实际中的运用(表示文件系统的目录树结构) 2.二叉树概念及结构 2.1概念 2.2现实中的二叉树: 2.3 特殊的二叉树: 2.4 二叉树的性质 2.5 二叉树的…

基于springboot+vue的二手图书交易平台(源码+论文)

文章目录 目录 文章目录 前言 一、功能设计 二、功能实现 前台系统功能模块分为 后台系统功能模块分为 三、库表设计 四、论文 前言 在互联网上所有产品的分类信息中,电子类的产品信息无疑是最丰富的,一大批电子资讯类网站从中国互联网诞生初期就开始为…

力扣模板题:回文链表

请牢记检测回文串的模板 /*** Definition for singly-linked list.* struct ListNode {* int val;* struct ListNode *next;* };*/ bool isPalindrome(struct ListNode* head) {int size0;struct ListNode* pointhead;while(point){size;pointpoint->next;}int arr…

每日学习-2月22日

知识点:二叉树 二叉树的性质: 二叉树的存储结构: 顺序存储: 用数组存储,tree[ 0 ]处空缺,以便编号与下标一致对标完全二叉树,按序号存储在相应索引的位置 i的左孩子:2i i的右孩…

代码随想录Leetcode416. 分割等和子集

题目&#xff1a; 代码(首刷看解析 2024年2月23日&#xff1a; class Solution { public:bool canPartition(vector<int>& nums) {/*因为数值 < 100, length < 200 , 数值 < 20000*/vector<int> dp(10001, 0);int sum accumulate(nums.begin(), num…

武汉建筑安全员ABC小题库不存在未雨绸缪“时间够”

武汉建筑安全员ABC小题库不存在未雨绸缪“时间够” 关于武汉三类人员&#xff08;安全员ABC&#xff09;考试小题库&#xff0c;一般都是考试时间出来&#xff0c;准考证下来了&#xff0c;匹配题库&#xff0c;好好看题&#xff08;认真练习即可&#xff09;&#xff0c;一般…

校园微社区微信小程序源码/二手交易/兼职交友微信小程序源码

云开发校园微社区微信小程序开源源码&#xff0c;这是一款云开发校园微社区-二手交易_兼职_交友_项目微信小程序开源源码&#xff0c;可以给你提供快捷方便的校园生活&#xff0c;有很多有趣实用的板块和功能&#xff0c;如&#xff1a;闲置交易、表白交友、疑问互答、任务兼职…

C++ 之LeetCode刷题记录(三十四)

&#x1f604;&#x1f60a;&#x1f606;&#x1f603;&#x1f604;&#x1f60a;&#x1f606;&#x1f603; 开始cpp刷题之旅。 目标&#xff1a;执行用时击败90%以上使用 C 的用户。 12. 整数转罗马数字 罗马数字包含以下七种字符&#xff1a; I&#xff0c; V&#xf…

操作系统-复试笔记

http://t.csdnimg.cn/PJLWh 操作系统基础 什么是操作系统&#xff1f; 操作系统&#xff08;Operating System&#xff0c;简称 OS&#xff09;是管理计算机硬件与软件资源的程序&#xff0c;是计算机的基石。操作系统本质上是一个运行在计算机上的软件程序 &#xff0c;用于…

Node.js中的错误处理和日志记录

在Node.js应用程序中&#xff0c;错误处理和日志记录是非常重要的方面。正确的错误处理和日志记录可以帮助我们更好地跟踪问题、排查 bug&#xff0c;并提供更好的用户体验。在本篇博客中&#xff0c;我将为大家介绍在Node.js中如何进行错误处理和日志记录&#xff0c;以及一些…

流式存储音频/视频

目录 流式存储音频/视频 1.1 具有元文件的万维网服务器 1.2 媒体服务器 1.3 实时流式协议 RTSP 使用 RTSP 的媒体服务器的工作过程 流式存储音频/视频 “存储”音频/视频文件不是实时产生的&#xff0c;而是已经录制好的&#xff0c;通常存储在光盘或硬盘中。 传统浏览器…

IO进程线程day8作业

信号灯集二次函数封装 sem.c #include<myhead.h>union semun {int val; /* Value for SETVAL */struct semid_ds *buf; /* Buffer for IPC_STAT, IPC_SET */unsigned short *array; /* Array for GETALL, SETALL */struct seminfo *__buf; /* B…

wps 365 批量修改.xlsx、.xls,单元格内容的格式为yyyy-mm-dd

xlsx、xls文件导入校验单元格内容格式有误&#xff0c;批量修改步骤如下 1.选中要修改内容的单元格列 2.选择数据-分列-分列&#xff0c;弹出“文本分列向导”弹窗 3.选择“下一步”——“下一步”到步骤3&#xff0c;在“列数据类型”中选中日期-YMD格式&#xff0c;点击“完成…

protobuf某音弹幕实战

声明:(如果侵犯到你的权益联系我&#xff0c;我会马上删除) 本文章中所有内容仅供学习交流使用&#xff0c;不用于其他任何目的&#xff0c;不提供完整代码&#xff0c;抓包内容、敏感网址、数据接口等均已做脱敏处理&#xff0c;严禁用于商业用途和非法用途&#xff0c;否则由…

2.20 day2 QT

自由发挥登录窗口的应用场景&#xff0c;实现一个登录窗口界面 #include "widget.h"Widget::Widget(QWidget *parent): QWidget(parent) {//窗口相关设置this->setWindowTitle("登入页面"); //设置 窗口 标题this->setWindowIcon(QIcon("D:…

2024Python自动化测试面试必备知识点!

在准备 Python 自动化测试面试时&#xff0c;以下是一些必备的知识点&#xff0c;可以帮助您在面试中展现实力&#xff1a; 软件测试基础&#xff1a; 熟悉软件测试的基本概念&#xff0c;包括测试类型&#xff08;功能测试、性能测试、安全测试等&#xff09;、测试方法&#…

HTTP与HTTPS-HTTPS 的应用数据是如何保证完整性的?

资料来源 : 小林coding 小林官方网站 : 小林coding (xiaolincoding.com) HTTPS 的应用数据是如何保证完整性的? TLS 在实现上分为握手协议和记录协议两层 TLS 握手协议就是我们前面说的 TLS 四次握手的过程&#xff0c;负责协商加密算法和生成对称密钥&#xff0c;后续用此密…

C++ //练习 9.19 重写上题的程序,用list替代deque。列出程序要做出哪些改变。

C Primer&#xff08;第5版&#xff09; 练习 9.19 练习 9.19 重写上题的程序&#xff0c;用list替代deque。列出程序要做出哪些改变。 环境&#xff1a;Linux Ubuntu&#xff08;云服务器&#xff09; 工具&#xff1a;vim 代码块 //头文件需要调整为list&#xff0c;同时…

猫头虎分享已解决Bug || ValueError: No gradients provided for any variable

博主猫头虎的技术世界 &#x1f31f; 欢迎来到猫头虎的博客 — 探索技术的无限可能&#xff01; 专栏链接&#xff1a; &#x1f517; 精选专栏&#xff1a; 《面试题大全》 — 面试准备的宝典&#xff01;《IDEA开发秘籍》 — 提升你的IDEA技能&#xff01;《100天精通鸿蒙》 …

代码随想录算法训练营第三十二天|122 买卖股票的最佳时机||、55 跳跃游戏、45 跳跃游戏||

122 买卖股票的最佳时机|| 题目链接&#xff1a;买卖股票的最佳时机|| 思路 这道题目求的是获得的最大利润是多少。我们只需要收集正利润&#xff0c;便可求得最大利润。 class Solution { public:int maxProfit(vector<int>& prices) {int res 0;for(int i1; i…