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

网站开发实战项目找做柜子的网站

网站开发实战项目,找做柜子的网站,seo搜索引擎优化介绍,河北新闻最新消息今天图像处理中连通域指由前景相同像素,并且相同像素邻接的像素组成的域。图像处理中一般都是对二值图像(1白色,0为黑色,一般前景为0黑色)做连通域分析。连通域分析指把连通域找出来并且标记出来。 连通域标记方法&#x…

图像处理中连通域指由前景相同像素,并且相同像素邻接的像素组成的域。图像处理中一般都是对二值图像(1白色,0为黑色,一般前景为0黑色)做连通域分析。连通域分析指把连通域找出来并且标记出来。

连通域标记方法:(1)两次遍历实现;(2)深度优先搜索遍历

1.第一次遍历

如果当前元素为0则赋值一个label,lebel从大于1开始,如果像素的邻接像素的标签有大于1的,则当前元素赋值为大于1的最小的label。记录等价标签。

第二次遍历

遍历找到等价标签,标记等价标签的最小值为label。

如果只求连通域的数量则只需循环一次就够了,连通域数等于label-等价标签的个数-label起始值。

如:起始标记为label = 1,等价标签存放在列表中,list=[(2,6),(3,7)],即等价标签个数有len(list),则连通域个数为label -1-len(list).

如果需要将连通区域标记的的话需要循环两次。

import numpy
a = [[1 for i in range(10)] for j in range(10)]
a = [[1, 0, 0, 1, 1, 1, 1, 1, 1, 1],[1, 0, 0, 1, 1, 1, 1, 1, 0, 1],[1, 1, 1, 1, 1, 1, 0, 0, 0, 1],[1, 1, 1, 0, 0, 0, 1, 1, 0, 1],[1, 1, 1, 1, 1, 0, 1, 1, 1, 1],[1, 1, 1, 1, 1, 0, 1, 1, 1, 1],[1, 0, 0, 0, 1, 1, 1, 1, 0, 1],[1, 0, 1, 0, 1, 1, 1, 1, 0, 1],[1, 0, 0, 0, 1, 1, 1, 1, 0, 1],[1, 1, 1, 1, 1, 1, 1, 1, 0, 1]]
a = numpy.array(a)
#cv2.imwrite('/home/lijq/IdeaProjects/AnimalRecognition_Demo/demo/person3.jpg',a)
label = 1
list = []
if a[0][0]<1:label +=1a[0][0] = label
for j in range(1,len(a[0])):if a[0][j]<1:if a[0][j-1]>1:a[0][j]=a[0][j-1]else:label +=1a[0][j] = label
for i in range(1,len(a)):if a[i][0]<1:if a[i-1][0]>1:a[i][0]=a[i-1][0]else:label +=1a[i][0] = label
for i in range(1,len(a)):for j in range(1,len(a[0])):if a[i][j]<1:if a[i][j-1]>1 and a[i-1][j]>1:a[i][j] = min(a[i][j-1],a[i-1][j])if a[i][j-1]!=a[i-1][j]:list.append((a[i][j-1],a[i-1][j]))elif a[i][j-1]>1 and a[i-1][j]==1:a[i][j] = a[i][j-1]elif a[i-1][j]>1 and a[i][j-1] ==1:a[i][j] = a[i-1][j]else:label += 1a[i][j] = label
nums_lt = label-1-len(list)
print label,list,nums_lt
print a


2.深度遍历标记

通过深度优先把所有连通的找出来标记完,再继续遍历下一个连通区域。连通域数量为 label-1.(设置的label默认值为1,歧视标记为2,如果从1标记的话会和图像值里的1混淆,所以为了方便起始值可以是任意大于1的数)

a = [[1, 0, 0, 1, 1, 1, 1, 1, 1, 1],[1, 0, 0, 1, 1, 1, 1, 1, 0, 1],[1, 1, 1, 1, 1, 1, 0, 0, 0, 1],[1, 1, 1, 0, 0, 0, 1, 1, 0, 1],[1, 1, 1, 1, 1, 0, 1, 1, 1, 1],[1, 1, 1, 1, 1, 0, 1, 1, 1, 1],[1, 0, 0, 0, 1, 1, 1, 1, 0, 1],[1, 0, 1, 0, 1, 1, 1, 1, 0, 1],[1, 0, 0, 0, 1, 1, 1, 1, 0, 1],[1, 1, 1, 1, 1, 1, 1, 1, 0, 1]]
a = numpy.array(a)
def dfs(nums,i,j,label):if i >=len(nums) or j>=len(nums[0]) or i<0 or j<0:returnif nums[i][j]<1:nums[i][j]=labeldfs(nums,i,j+1,label)dfs(nums,i+1,j,label)dfs(nums,i-1,j,label)dfs(nums,i,j-1,label)dfs(nums,i-1,j-1,label)label = 1
for i in range(len(a)):for j in range(len(a[0])):if a[i][j]<1:label +=1a[i][j] = labeldfs(a,i,j+1,label)dfs(a,i+1,j,label)
print a

http://www.yayakq.cn/news/988105/

相关文章:

  • 网站取消备案兴文县建设工程网站
  • 厦门网站开发平台江苏建设工程
  • 百度蜘蛛抓取网站模块少儿编程加盟学校
  • 爱站关键词挖掘old西安本地十家做网站建设的公司
  • 电脑做服务器发布网站吗咖啡厅网站建设
  • 重庆设计网站建设手机访问wordpress网站卡
  • 凡科手机网站设置问题广州网站开发招聘
  • 网站建设和网站推广鄂州免费设计网站建设
  • 注册网站怎么做做网站片头的软件
  • 网站开发模块学些什么软件手机上怎么提取公积金
  • 跟老外做网站国内十大erp系统
  • 做一个企业网站大概需要多少钱中国企业信用网
  • 网站后端架构如何做城市建设杂志社网站
  • 自己公司设计一个网站网页海报设计教程
  • 沈阳专业做网站宝应县建设工程管理局网站
  • 芜湖建设路小学网站小型手机网站建设推荐
  • 漯河网站建设lhwzzz怎样制作网站积分系统
  • 简约好看的网站模板网站什么也没动怎么不收录啦
  • 企业网站开发报价河北seo推广方法
  • 做网站建设的基本步骤职友集 一家做公司点评的网站
  • 华建河北住房和城乡建设厅网站合肥网站建设价格
  • 网站做cdn需要多少钱都匀住房与城乡建设部网站
  • 怀远网站建设移动端是指手机吗
  • 大连模板网站制作公司电话做网站免费空间
  • 做网站后台要学昆山建设信息网站
  • 中国有哪些跨境电商平台北京首页关键词优化
  • 传世网站建设成都营销型网站设计
  • 成功案例 品牌网站如何设置自己的网址
  • 营销网站seo推广网站开发有哪些职位
  • 东庄水利枢纽建设公司网站网站开发的自适应