imclearborder与bwareaopen

  • 两个函数介绍
  • python代码
  • 小结

两个函数介绍

imclearborder与bwareaopen,是matlab里的功能函数,博客里把他们变成python版本

功能介绍:

  • imclearborder:删除图像的边界,什么意思呢,就是一张800X600的图片,如果再图片的边缘有半个足球,那么,我们可以指定将周围的一圈像素置为0 具体可以看:资料参考1
  • bwareaopen:删除面积小于x区域的代码,使用连通性删除微小对象BW2 = bwareaopen(BW,P,conn)
    第一个参数是图片,P表示删除小于P像素面积的对象,conn表示指定所需的连通性,默认使用8连通区域进行像素归属的判断具体可以参考:mathwork里的说明。

python代码

def imclearborder(imgBW, radius):# 给定黑白图像,首先找到其所有轮廓imgBWcopy = imgBW.copy()contours,hierarchy = cv2.findContours(imgBWcopy.copy(), cv2.RETR_LIST,  cv2.CHAIN_APPROX_SIMPLE)# 获取图像尺寸imgRows = imgBW.shape[0]imgCols = imgBW.shape[1]contourList = [] # 接触边界的轮廓的ID列表# 对每个轮廓进行for idx in np.arange(len(contours)):# 得到轮廓cnt = contours[idx]# 查看轮廓中的每一个点for pt in cnt:rowCnt = pt[0][1]colCnt = pt[0][0]# 如果在边界的指定半径内部# 那么删除这个轮廓check1 = (rowCnt >= 0 and rowCnt < radius) or (rowCnt >= imgRows-1-radius and rowCnt < imgRows)check2 = (colCnt >= 0 and colCnt < radius) or (colCnt >= imgCols-1-radius and colCnt < imgCols)if check1 or check2:contourList.append(idx)breakfor idx in contourList:cv2.drawContours(imgBWcopy, contours, idx, (0,0,0), -1)return imgBWcopy
def bwareaopen(imgBW, areaPixels):# 给定黑白图像,找到所有轮廓imgBWcopy = imgBW.copy()contours,hierarchy = cv2.findContours(imgBWcopy.copy(), cv2.RETR_LIST,cv2.CHAIN_APPROX_SIMPLE)# 计算每个轮廓的面积for idx in np.arange(len(contours)):area = cv2.contourArea(contours[idx])  # 计算轮廓面积if (area >= 0 and area <= areaPixels):cv2.drawContours(imgBWcopy, contours, idx, (0,0,0), -1)return imgBWcopy

小结

最近什么也没有干,写了小论文的提纲,写完突然不知道该干嘛了,准备写第一篇小论文,发现想要下决心开始好难哇,不如先写几篇CSDN哈哈,轻松愉快无压力。BINGO

「图像处理matlab函数」imclearborder与bwareaopen相关推荐

  1. matlab函数_连通区域 bwareaopen bwarea

    matlab函数_连通区域 1. matlab函数bwareaopen──删除小面积对象 格式:BW2 = bwareaopen(BW,P,conn) 作用:删除二值图像BW中面积小于P的对象,默认情 ...

  2. 数字图像处理Matlab函数全汇总

    文章和代码以及样例图片等相关资源,已经归档至[Github仓库:digital-image-processing-matlab]或者公众号[AIShareLab]回复 数字图像处理 也可获取. 文章目 ...

  3. 冈萨雷斯图像处理Matlab函数汇总

    colorbar        显示彩条 getimage       由坐标轴得到图像数据 ice(DIPUM)  交互彩色编辑 image          创建和显示图像对象 imagesc   ...

  4. cube函数matlab_冈萨雷斯图像处理Matlab函数汇总

    转自  http://blog.csdn.net/tzgj2007/article/details/6877800 (注:所有函数的头字母都应是小写) 图像显示 colorbar        显示彩 ...

  5. 「Excel常用函数」

    一.函数的基本使用方法 方法一:直接在单元格中输入"=",后接公式 方法二:在"编辑栏"中输入公式 二.常见函数 1.绝对值函数 ABS(Number) ➤Nu ...

  6. matlab函数bwareaopen,bwarea,imclearborder,bwboundaries,imregionalmin,bwulterode,regionprops

    matlab函数_连通区域 1. matlab函数bwareaopen──删除小面积对象 格式:BW2 = bwareaopen(BW,P,conn) 作用:删除二值图像BW中面积小于P的对象,默认情 ...

  7. 《数字图像处理》冈萨雷斯,Matlab函数汇总 .

    <数字图像处理>冈萨雷斯,Matlab函数汇总 . 图像显示 colorbar 显示彩条 getimage 由坐标轴得到图像数据 ice(DIPUM) 交互彩色编辑 image 创建和显示 ...

  8. 「电子万年历matlab仿真」——基于Matlab的电子万年历仿真实现

    「电子万年历matlab仿真」--基于Matlab的电子万年历仿真实现 作为一种具有时间显示.日期查询.闹钟提醒等功能的电子产品,电子万年历已经成为了人们日常生活中不可或缺的一部分.而在现代科技的发展 ...

  9. matlab里open命令,matlab函数bwareaopen的详解

    matlab函数_连通区域 1. matlab函数bwareaopen──删除小面积对象 格式:BW2 = bwareaopen(BW,P,conn) 作用:删除二值图像BW中面积小于P的对象,默认情 ...

最新文章

  1. 关于迭代器中IEnumerable与IEnumerator的区别
  2. vim如何在底部打开新窗口
  3. 2.6内核的配置与编译
  4. [css] 当全国哀悼日时,怎么让整个网站变成灰色呢?
  5. Linux:shell脚本命令: /dev/null 21 的理解
  6. Python面向对象高级编程
  7. 名片管理系统python详解_Python综合应用名片管理系统案例详解
  8. c语言实数的输出和占位_例4:C语言用%f输出实数
  9. 大数据之-Hadoop之HDFS_hadoop集群中的安全模式_操作案例---大数据之hadoop工作笔记0075
  10. 2021年全日期sql(内含工作日,休息日分类)
  11. 五星级洒店系统需求分析
  12. python的秘密_Shamir秘密共享方案 (Python)
  13. 查找技术:有序表的对分查找(折半查找)类
  14. 天津情侣朋友游玩项目
  15. unity3d是干啥的
  16. 看 Sugar 讲矩阵键盘的使用
  17. 最近开始研究PMD(一款采用BSD协议发布的Java程序代码检查工具)
  18. WinRAR5.50 64位手动反汇编去广告弹窗
  19. 千千静听的EQ简单设置
  20. 【毕业设计】基于stm32的智能饮水控制系统 - 单片机 嵌入式 物联网

热门文章

  1. LWN:确定了会计系统!
  2. ElasticSearch中全文搜索(单词搜索、多次搜索、组合搜索和权重搜索)
  3. 【2022考研】没有考上海大,调剂去了西南大学,随手记录一下失败者经验:从中专到研究生英语应该如何复习
  4. Cors差分数据转发器,差分数据转发
  5. opencv 图片拼接;OpenCvSharp图片拼接;C# 版opencv 图片拼接;C# 图片拼接
  6. 在篮球运动中,领先多少分才安全。体育作家Bill 开发了一个算法,用于判断篮球比赛中怎样的领先优势是不可超越的
  7. ESP32反复重启报rst:0x10 (RTCWDT_RTC_RESET),boot:0x33 (SPI_FAST_FLASH_BOOT) flash read err, 1000错误
  8. 配制路由器让我来教你(经典)
  9. 计算机专业英语论文摘要合辑【2】
  10. FTP上传错误----“200 Type set to I”