Matlab图像处理-

news/2024/7/21 7:48:20 标签: matlab, 图像处理, 开发语言

对数变换

对数变换的一项主要应用是压缩动态范围。一些特别的图像在实际显示中,高灰度值部分较占优势,而低灰度值的可见细节部分丢失。通过计算对数,如10的动态范围会降至14左右[ln10=13.8],这样就更易于处理。

对数变换就是压缩图像的高灰度值部分,扩张低灰度值部分。其函数表达式为:

s=clog(1+r)                               

其中cc为常数,rr为浮点数。

MATLAB中,常使用mat2gary函数进行对数变换,如:

I= mat2gray(ss);

示例代码

示例程序如下所示:

I = imread('office_1.jpg');
I_1 = double(I);     %将输入图像由uint8类型转换
成double类型
s = log(1+I_1);                 %对数变换
I_2 = mat2gray(s)            %将结果标定为[0 1]范围
内的double类的数组
J = im2uint8(I_2);               %将数组转换成uint8类
型的图像
subplot(1,2,1),imshow(I);
subplot(1,2,2),imshow(J); 

效果图片

对数变换后的图像与原图像相比,视觉效果大幅提升,如下图所示。


http://www.niftyadmin.cn/n/4995698.html

相关文章

mysql与msql2数据驱动

mysql基本使用 数据库操作(DDL) -- 数据考操作 -- 1.查询所有数据库 SHOW DATABASES;-- 2.选择数据库 USE learn_mysql;-- 3.当前正在使用的数据库 SELECT DATABASE();-- 4.创建数据库 CREATE DATABASE IF NOT EXISTS learn_mysql;-- 5.删除数据库 DRO…

浪潮信息Owen ZHU:大模型百花齐放,算力效率决定速度

与狭义的人工智能相比,通用人工智能通过跨领域、跨学科、跨任务和跨模态的大模型,能够满足更广泛的场景需求、实现更高程度的逻辑理解能力与使用工具能力。2023年,随着 LLM 大规模语言模型技术的不断突破,大模型为探索更高阶的通用…

【基于交叉注意力的泛锐化深度展开迭代网络】

CADUI: Cross-Attention-Based Depth Unfolding Iteration Network for Pansharpening Remote Sensing Images (CADUI:基于交叉注意力的泛锐化深度展开迭代网络) 全色锐化是遥感成像系统获取高分辨率多光谱图像的重要技术。它主要通过融合低…

DevEco Studio 介绍、下载及安装

DevEco Studio 简介 HUAWEI DevEco Studio面向App、HAG快服务、IoT智能硬件设备3类开发者,提供设计、编码、编译、调测和云端测试等端到端一站式服务。一次开发,多端部署:支持18N全场景泛终端软件应用和服务开发开放能力一站集成&#xff1a…

2023.9 - java - 浅拷贝

与 js的浅拷贝不同: 在 JavaScript 中, Object.assign() 或 spread 运算符等方法可以实现浅拷贝,但只针对对象的第一层属性进行复制。如果一个对象只包含基本数据类型的属性,那么对浅拷贝出来的对象进行修改不会影响原始对象&…

说说HTTP 和 HTTPS 有什么区别?

分析&回答 http协议 超文本传输协议,是互联网上应用最多的协议,基于TCP/IP通讯协议来传递信息,用于从WWW服务器传输超文本到本地浏览器的传输协议。 https协议 我们可以将其看作是以安全为目标的http协议。在http协议的基础上增加了S…

React18 新特性

React18 新特性 自动批量更新State 定义 import { useState } from reactconst [x, setX] useState(0)渲染赋值 setX(5)并发CM模式 同步不可中断更新机制 -> 异步可中断并行 状态更新 机制 React18 默认开启并发模式 详见代码 ReactDOM 的引入 import ReactDOM fr…

【Locomotor运动模块】瞬移

文章目录 一、原理二、两种类型1、Instant(立刻)2、Dash(猛冲) 三、瞬移区域、瞬移点1、瞬移区域2、瞬移点 一、原理 抛物线指针选择好目标位置,然后告诉瞬移预设体:你想法把游戏区域弄到目标位置来 解释:抛物线指针选…