在matlab中有相应的图像进行二值化处理,并且标记连通区域

L = bwlabel(BW,n)

返回一个和BW大小相同的L矩阵,包含了标记连BW中每个连通区域的类别标签,标签的值是1、2、num(连通区域的个数)n的值是4或者8,和算法中的搜索相同表示连通的方向,表示方向,4表示只有上下左右四个方向,8表示上下左右还有对角线。4连通或者8连通,默认为8连通。

[L,num] = bwlabel(BW,n)

num表示的是BW中连通区域的个数。

举例说明:
BW =
    1     1     1     0     0     0     0     0
    1     1     1     0     1     1     0     0
    1     1     1     0     1     1     0     0
    1     1     1     0     0     0     1     0
    1     1     1     0     0     0     1     0
    1     1     1     0     0     0     1     0
    1     1     1     0     0     1     1     0
    1     1     1     0     0     0     0     0

按4连通计算,方形的区域,和翻转的L形区域,有用是对角连接,不属于连通,所以分开标记,连通区域个数为3

  1. L = bwlabel(BW,4)

复制代码结果如下:
L =
    1     1     1     0     0     0     0     0
    1     1     1     0     2     2     0     0
    1     1     1     0     2     2     0     0
    1     1     1     0     0     0     3     0
    1     1     1     0     0     0     3     0
    1     1     1     0     0     0     3     0
    1     1     1     0     0     3     3     0
    1     1     1     0     0     0     0     0

而8连通标记,它们是连通的:

  1. [L, num] = bwlabel(BW,8)

复制代码L =
    1     1     1     0     0     0     0     0
    1     1     1     0     2     2     0     0
    1     1     1     0     2     2     0     0
    1     1     1     0     0     0     2     0
    1     1     1     0     0     0     2     0
    1     1     1     0     0     0     2     0
    1     1     1     0     0     2     2     0
    1     1     1     0     0     0     0     0
这里
num = 2

在python中可以用skimage模块进行图像的二值化和图像连通,图像中

from PIL import Image
import matplotlib.image as mpimg
import numpy as np path = '20150919131753_XcGPz.thumb.700_0.jpeg'
img=io.imread(path,as_grey=False)
img_gray=color.rgb2gray(img)
from skimage import io,data,color
rows,cols=img_gray.shape
for i in range(rows):
for j in range(cols):
if (img_gray[i,j]<=0.5):
img_gray[i,j]=0
else:
img_gray[i,j]=1

python图片处理(一)的更多相关文章

  1. 教程,Python图片转字符堆叠图

    Python 图片转字符画 一.实验说明 1. 环境登录 无需密码自动登录, 2. 环境介绍 本实验环境采用带桌面的UbuntuLinux环境,实验中会用到桌面上的程序: LX终端(LXTermina ...

  2. Python 图片转字符画

    Python 图片转字符画 一.课程介绍 1. 课程来源 原创 2. 内容简介 本课程讲述怎样使用 Python 将图片转为字符画 3. 前置课程 Python编程语言 Linux 基础入门(新版) ...

  3. python 图片在线转字符画预览

    文章链接:https://mp.weixin.qq.com/s/yiFOmljhyalE8ssAgwo6Jw 关于python图片转字符画,相信大家都不陌生,经常出现在 n个超有趣的python项目中 ...

  4. media静态文件统一管理 操作内存的流 - StringIO | BytesIO PIL:python图片操作库 前端解析二进制流图片(了解) Admin自动化数据管理界面

    一.media ''' 1. 将用户上传的所有静态文件统一管理 -- settings.py -- MEDIA_ROOT = os.path.join(BASE_DIR, 'media') 2. 服务 ...

  5. python图片处理(一)

    python图片处理需要先在cmd里面安装Pillow pip install Pillow 一.图片的打开与显示 from PIL import Image img=Image.open('d:/d ...

  6. python图片处理(三)

    ji那天用到了python图片处理中的二值图像的骨架提取,在matlab中通过输入图像的二值,来处理得到图像的骨架, skelimage = bwmorph(im, 'skel', inf); 在ma ...

  7. 将python图片转为二进制文本的实例

    https://www.jb51.net/article/155342.htm 写在最前面: 我在研究机器学习的过程中,给的数据集是手写数字图片被处理后的由0,1表达的txt文件,今天写一写关于图片转 ...

  8. Python 图片转字符画 学习笔记

    Python 图片转字符画 学习笔记 标签(空格分隔): Python 声明:此文章和所有代码是学习笔记,非原创,原文教程地址:https://www.shiyanlou.com/courses/37 ...

  9. python 图片爬虫

    #!/usr/bin/env python #coding:utf-8 import urllib import re def GetHtml(url): """获取HT ...

  10. Python图片处理

    Python图像处理库PIL基本使用 #将图片转换为灰度图像 from PIL import Image pil_im = Image.open('cat.jpg') gray_cat = pil_i ...

随机推荐

  1. 解题:BZOJ 4644 经典砂比题(雾

    题面 初见线段树分治 (对我来说可不是什么经典题=.=) 把时间轴建出来一棵线段树,然后在对应的区间上打标记,最后把整棵树DFS一遍,到叶节点输出答案即可 (把最终答案开成全局的了调了半天 #incl ...

  2. 丁酉年六月十一ACM模拟赛

    似乎该写题解了.今天模拟ACM,10道题(本来还有2道被删了),9道都来自BZOJ,中间我做过2道.那么说,今天Solv.便大大增多了(但还是不如强大的Amphetamine). 题单及一句话题解如下 ...

  3. 1: @override

    @Override是Java5的元数据,自动加上去的一个标志,告诉你说下面这个方法是从父类/接口 继承过来的,需要你重写一次,这样就可以方便你阅读,也不怕会忘记 @Override是伪代码,表示重写( ...

  4. dingo 内部调用获取异常信息

    $exception->getResponse(); $params = [ 'company_id' => $this->request->input('company_id ...

  5. linux kill 掉所有匹配到名字的进程

    如,要 kill 掉 swoole 相关的进程 ps aux | grep swoole |  awk '{print $2}' | xargs kill -9 ps 列出所有进程, 参数: a -  ...

  6. Docker图形界面管理之Shipyard

    一.介绍 Shipyard基于Docker API实现的容器图形管理系统,支持container.images.engine.cluster等功能,可满足我们基本的容器部署需求. 可堆栈的Docker ...

  7. 使用Java API的5个技巧

    原文出处:CSDN邓帅 本文介绍了一些关于Java API安全和性能方面的简单易用的技巧,其中包括保证API Key安全和开发Web Service方面中在框架方面选择的一些建议. 程序员都喜欢使用A ...

  8. python 类与对象解析

    类成员:    # 字段        - 普通字段,保存在对象中,执行只能通过对象访问        - 静态字段,保存在类中,  执行 可以通过对象访问 也可以通过类访问            # ...

  9. jquery实现行列的单向固定和列的拖拽

    其实这些功能在PL/SQL Dev中都有实现,在页面中还是蛮常见的. 我实现列的单向固定的原理:将需要单向固定的列放在一个<table>标签中,而整体的数据放在另一个<table&g ...

  10. seaborn基础整理

    seaborn是基于matplotlib的更高级的做图工具,下面主要针对以下几个部分进行整理: 第一部分:https://douzujun.github.io/page/%E6%95%B0%E6%8D ...