【数字图像处理+MATLAB】将图像转换为二值图像(Binary Image):使用 imbinarize 函数进行二值化运算(Binarize)

引言

二值图像是一种特殊类型的数字图像,其中每个像素只有两种可能的强度值或颜色值。这两种值通常表示为黑色和白色,或者0和1。

二值化是一个常见的图像处理步骤,它将灰度或彩色图像转换为二值图像。在二值化过程中,会设定一个阈值,所有大于这个阈值的像素会被设置为1(通常表示白色),所有小于或等于这个阈值的像素会被设置为0(通常表示黑色)。这个阈值可以是手动设定的,也可以通过各种算法(例如Otsu方法)自动计算得出。


语法详解

imbinarize是MATLAB中的一个函数,用于将灰度图像或者彩色图像转换为二值图像。

基本语法:

BW = imbinarize(I);
BW = imbinarize(I, level);
BW = imbinarize(I, 'adaptive', Name, Value);

参数详解:

  1. I:输入的图像,应为灰度图像。
  2. level:一个介于0和1之间的数值,用来确定阈值。所有小于level的像素值都会被设置为0,所有大于或等于level的像素值都会被设置为1。如果不指定levelimbinarize函数会默认使用Otsu方法来自动计算阈值。
  3. 'adaptive':指定使用自适应阈值化方法。在这种模式下,imbinarize会对图像的每个局部区域分别计算阈值,而不是使用一个全局阈值。
  4. Name, Value:用于指定额外的参数,例如'Sensitivity'

返回值详解:

  • BW:输出的二值图像。它和输入图像I有相同的大小。所有像素值都是逻辑值,即0(表示黑色)或1(表示白色)。

应用案例

用Otsu方法自动计算阈值

I = imread("Fig0304(a)(breast_digital_Xray).tif");figure;subplot(1, 3, 1);
imshow(I);
title("Original image");negI = imcomplement(I);
subplot(1, 3, 2);
imshow(negI);
title("Negative image");binI = imbinarize(I);
subplot(1, 3, 3);
imshow(binI);
title("Binary image");

以平均亮度作为阈值

I = imread("Fig0304(a)(breast_digital_Xray).tif");figure;subplot(1, 3, 1);
imshow(I);
title("Original image");negI = imcomplement(I);
subplot(1, 3, 2);
imshow(negI);
title("Negative image");mean = mean(I, "all");
binI = imbinarize(I, mean / 255);
subplot(1, 3, 3);
imshow(binI);
title("Binary image");

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

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

相关文章

智能电销机器人的操作流程

对于电销行业的人来说,有了智能电销机器人,简直是太省心了! 智能外呼机器人,是一款基于人工智能语音外呼系统, 它可以代替人工自动拨打电话,自动筛选客户,自动推送意向客户到你的微信上 &#x…

CSDN做样板,教我们如何为新网站引流

CSDN为我们做了个很好的例子,详细请看下图 亮点分析: 1. 未采用硬广在网站上进行引流。减少了给用户在直觉上的造成的反感; 2. 在GitHub的转跳页面中,植入额外的关联网站链接。虽然对用户解决问题没啥鸟用,但是人家能…

电脑局域网内让其他电脑通过IP访问配置

依次点击桌面左下角“开始菜单”>“所有应用”>“Windows系统”>“控制面板”,如图所示 在控制面板界面,选择“查看方式”为“大图标”,然后点击打开window防火墙,如图所示 然后点击“高级设置”,如图所示 在…

网络安全——下载并在kali虚拟机上启动Cobalt Strike

目录 一、下载 二、上传文件到kali虚拟机 三、启动服务端 四、启动客户端 一、下载 CobaltStrike4.8汉化版带插件-CSDN博客 下载并解压后 二、上传文件到kali虚拟机 1、打开并运行kali虚拟机,查看kali的ip地址 2、打开xshell,新建连接,连…

[Win11]集成化综合漏洞扫描系统[更新]

前言 之前是为了方便外包仔在客户现场漏扫所以才集成的这个系统 优点:倒腾一下格式可以直接在客户的Vmware ESXI上面上面部署,同时个人版Vmware也可以拿来直接用。 由Linux版本改为了Windows版(有很多不会用) 因为前两个更新的很频繁,所以…

【SSL-RL】自监督强化学习:随机潜在演员评论家 (SLAC)算法

📢本篇文章是博主强化学习(RL)领域学习时,用于个人学习、研究或者欣赏使用,并基于博主对相关等领域的一些理解而记录的学习摘录和笔记,若有不当和侵权之处,指出后将会立即改正,还望谅…

详解MySQL安装

目录 Ubantu 1. 使⽤apt安装MySQL 2.查看MySQL状态 3. MySQL 安装安全设置 4.设置密码 卸载MySQL Centos 1. 确认当前的系统版本 2.下载MySQL源 3.安装MySQL 4.启动mysqld 5.查看MySQL状态 6.设置开机自启动 7.查看MySQL密码,并登录 8.修改密码 Ubant…

【MATLAB源码-第213期】基于matlab的16QAM调制解调系统软硬判决对比仿真,输出误码率曲线对比图。

操作环境: MATLAB 2022a 1、算法描述 一、16QAM调制原理 在16QAM(16 Quadrature Amplitude Modulation)调制中,一个符号表示4个比特的数据。这种调制方式结合了幅度调制和相位调制,能够在相同的频谱资源下传输更多的…

Renesas R7FA8D1BH (Cortex®-M85) Data Flash程序功能实现

目录 概述 1 Data Flash空间 2 FSP配置参数 3 源代码介绍 3.1 源代码 3.2 中断函数 3.3 源代码文件 4 测试 4.1 测试实现 4.2 测试 概述 本文主要介绍使用FSP提供的库函数操作Renesas R7FA8D1BH (Cortex-M85) Data Flash的方法,笔者使用FSP配置参数&#x…

计算机组成原理知识点汇总,零基础入门到精通,收藏这篇就够了

计算机发展历程 计算机硬件的发展 计算机的四代变化 1946年世界上第一台电子数字计算机(Electronic Numerical Integrator And Computer, ENIAC) 1)第一代计算机(1946-1957)电子管时代。特点:逻辑元件采…

动态规划——01背包问题

目录 零、背包问题 一、01背包 二、分割等和子集 三、目标和 四、最后一块石头的重量II 零、背包问题 背包问题(Knapsack problem)是一种组合优化的NP完全问题。 问题可以描述为:给定一组物品,每种物品都有自己的重量和价格,在限定的总…

30.2 不得不谈的lsm:分层结构和lsm数据结构

本节重点介绍 : LSM树核心特点LSM树的核心结构 MemTableImmutable MemTableSSTable LSM树的Compact策略 size-tiered 策略leveled策略 LSM树(Log-Structured-Merge-Tree) LSM树的名字往往会给初识者一个错误的印象,事实上,LSM树并不像B树、红黑树一样…

宏观经济学笔记

【拯救者】宏观经济学速成 国民生产总值GNP: GNP 衡量一国(地区)成员在一定时期内运用生产要素所生产的全部最终产品和服务的市场价值。凡是本国国民所 创造的收入,不管生产要素是否在国内,都计入本国GNP中。 GDP本国居民在本国创造的价值外国居民在本国…

模块二:central cache实现

一、central cache介绍 结构也是一个哈希桶,大小划分和 thread cache哈希桶一样,区别在于挂的不是自由链表而是 span 链表,里面连接了许多 span 二、span介绍 1、实现思路 span 就是 central cache 向 page cache 申请的大块内存&#xff…

D-FINE:在DETRs模型中将回归任务重新定义为细粒度分布优化

晚上回家看到一篇新颖的研究内容, 也是目标检测相关的《D-FINE: REDEFINE REGRESSION TASK IN DETRS AS FINE-GRAINED DISTRIBUTION REFINEMENT》 ,原文地址在这里,如下所示: 如果想进一步了解相关的研究工作建议移步阅读原英文论…

数据结构 ——— 链式二叉树oj题:单值二叉树

目录 题目要求 手搓一个单值二叉树 代码实现 题目要求 如果二叉树每个节点都具有相同的值,那么该二叉树就是单值二叉树。 只有给定的树是单值二叉树时,才返回 true;否则返回 false 手搓一个单值二叉树 代码演示: // 数据类…

使用Windbg排查C++软件安装包安装时被安全防护软件拦截导致安装线程堵塞卡住的问题

目录 1、问题描述 2、初步分析 3、将Windbg附加到安装包进程上进行分析 4、在Windbg中查看相关变量的值,并设置断点进行动态调试 4.1、在Windbg中查看相关变量的值 4.2、在Windbg中使用bp命令设置断点进行动态调试 5、腾讯电脑管家已经退出,但其…

一键直达Windows11精简版下载地址:附快速安装教程!

许多用户想知道Windows11精简版下载地址在哪里?这里系统之家小编将给大家分享最新的Windows11精简版系统下载地址,方便大家下载与安装。该版本系统删除大量不必要的组件和功能,让系统运作速度变得更快更流畅,但没有过度精简&#…

Mesh网格

Mesh(网格) 定义:Mesh 是一个包含顶点、三角形、顶点法线、UV坐标、颜色和骨骼权重等数据的对象。它定义了3D模型的几何形状。 功能: 顶点(Vertices):构成3D模型的点。 三角形(Triangles)&…

【机器学习】28. 强化学习(Bellman, Q-learning, DQN, 优先级经验回放)

强化学习 定义强化学习的核心要素马尔可夫决策过程价值函数Bellman 方程Q Learning深度Q学习算法 (DQN)DQN 的核心思想DQN 的工作流程经验回放:(随机抽样)目标网络:损失函数 优先级经验回放(Pri…