当前位置: 首页 > news >正文

matlab每一行白点个数,MATLAB 简单的计算白色轮廓中像素点的个数

近来,有朋友问到,如何计算白色轮廓中的像素点的个数。我在这里就举一个超级简单的例子,就是假设一副二值图片,其背景是黑色的,而你的边缘是白色的,而且你的白色边缘中不包含黑色的点,就如附件中的那个图像。下面是一个简单的计算轮廓包含起来的像素点的个数的程序:

%% step 1

clear all

clc

I=imread('test.bmp');%读入图片

bwI=im2bw(I,0.5);%转化为二值图像

L=bwlabel(bwI,4);%将四连通区域进行标记

[r,c]=find(L==1);%查找其中的白色区域,r是白点的所在行组成的向量,c是白点所在的列组成的向量

%% step 2 %去除r中重复的数

new_r=[];

for i=1:length(r)

nn=find(new_r==r(i));

if isempty(nn),new_r=[new_r r(i)];end

end

%% step 3

sum_zeros=0;%轮廓中总的点的个数

for i=1:length(new_r)

n=find(bwI(new_r(i),:)==1);%查找有白点的行中白点所在的位置

if length(n)==1,continue;end%如果该行中只有一个白点,则返回

num_zeros=n(end)-n(1)+1-length(n);%否则计算夹在白点之间的黑点的个数

sum_zeros=sum_zeros+num_zeros;

end

就是这样的,比如这一行是这样的001110000011100,那么step3中的n就是一个向量:3 4 5 11 12 13,这六个数分别是这行中白点的位置,那么其中的夹在1之间的0的个数就是:13-3+1-6=5 。我想这样说你应该能明白了。至于面积的计算方法有很多中方法,我就不说了。或者可以用个数来代替面积。

68b055adb92136b78e506d59c4a5743d.png

相关文章:

  • java 类共享变量,Java提供了ThreadLocal(java.lang)类,实现线程内共享变量
  • Java第三方语音包发声,JDK中的包和他们的基本功能
  • python mock数据,python学习开发mock接口
  • php syslog 514,syslog详解及配置远程发送日志和远程日志分类
  • 兰春 MySQL,MySQL中经典的too many connection怎么破
  • php后台处理传来的图片文件,如何处理展示后台程序实时生成的文件?
  • php遍历json键值对,JS实现键值对遍历json数组功能示例
  • php服务器cpu要求,如何分析服务器需要什么样的配置(CPU、内存、带宽等)
  • oracle查看表的字段个数据,oracle逆向查询某个字段内容所存在的数据表名称
  • oracle在procedure调用自己,oracle 在plsql中创建procedure并调用
  • oracle if 插入,Oracle有条件地插入数据
  • oracle修复sysaux表空间,修复受损的SYSAUX表空间
  • matlab runge现象,龙格现象matlab算法.doc
  • oracle支持分区移动,Oracle 12c 新特性 --- 移动分区支持数据过滤
  • linux如何打开控制端口tty2,linux – 如何检测属于gsm/3g-modem的tty是数据还是控制端口?...
  • [js高手之路]搞清楚面向对象,必须要理解对象在创建过程中的内存表示
  • JAVA 学习IO流
  • Joomla 2.x, 3.x useful code cheatsheet
  • MySQL主从复制读写分离及奇怪的问题
  • passportjs 源码分析
  • PHP 7 修改了什么呢 -- 2
  • React组件设计模式(一)
  • SpriteKit 技巧之添加背景图片
  • unity如何实现一个固定宽度的orthagraphic相机
  • vue和cordova项目整合打包,并实现vue调用android的相机的demo
  • vue总结
  • 干货 | 以太坊Mist负责人教你建立无服务器应用
  • 少走弯路,给Java 1~5 年程序员的建议
  • 手写一个CommonJS打包工具(一)
  • 腾讯视频格式如何转换成mp4 将下载的qlv文件转换成mp4的方法
  • 通信类
  • 微信开放平台全网发布【失败】的几点排查方法
  • 小试R空间处理新库sf
  • 用mpvue开发微信小程序
  • 走向全栈之MongoDB的使用
  • ​Python 3 新特性:类型注解
  • # centos7下FFmpeg环境部署记录
  • ######## golang各章节终篇索引 ########
  • #define用法
  • (MonoGame从入门到放弃-1) MonoGame环境搭建
  • (亲测有效)解决windows11无法使用1500000波特率的问题
  • (亲测有效)推荐2024最新的免费漫画软件app,无广告,聚合全网资源!
  • (原創) 如何刪除Windows Live Writer留在本機的文章? (Web) (Windows Live Writer)
  • (转)IOS中获取各种文件的目录路径的方法
  • ./indexer: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object fil
  • .360、.halo勒索病毒的最新威胁:如何恢复您的数据?
  • .gitignore文件---让git自动忽略指定文件
  • .NET delegate 委托 、 Event 事件
  • .net 前台table如何加一列下拉框_如何用Word编辑参考文献
  • .NET6实现破解Modbus poll点表配置文件
  • .NET下的多线程编程—1-线程机制概述
  • .Net转前端开发-启航篇,如何定制博客园主题
  • .py文件应该怎样打开?
  • [Android] 240204批量生成联系人,短信,通话记录的APK
  • [BT]小迪安全2023学习笔记(第15天:PHP开发-登录验证)