python-opencv获取二值图像轮廓及中心点坐标的代码

yipeiwu_com5年前Python基础

python-opencv获取二值图像轮廓及中心点坐标代码:

groundtruth = cv2.imread(groundtruth_path)[:, :, 0]
h1, w1 = groundtruth.shape
contours, cnt = cv2.findContours(groundtruth.copy(), cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
if len(contours) != 1:#轮廓总数
 continue
M = cv2.moments(contours[0]) # 计算第一条轮廓的各阶矩,字典形式
center_x = int(M["m10"] / M["m00"])
center_y = int(M["m01"] / M["m00"])
image = np.zeros([h1, w1], dtype=groundtruth.dtype)
cv2.drawContours(image, contours, 0, 255, -1)#绘制轮廓,填充
cv2.circle(image, (center_x, center_y), 7, 128, -1)#绘制中心点
cv2.imwrite("1.png", image)

以上这篇python-opencv获取二值图像轮廓及中心点坐标的代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Django基础三之视图函数的使用方法

Django基础三之视图函数的使用方法

一 Django的视图函数view 一个视图函数(类),简称视图,是一个简单的Python 函数(类),它接受Web请求并且返回Web响应。 响应可以是一张网页的HTML内容,一个重定向...

Flask模拟实现CSRF攻击的方法

Flask模拟实现CSRF攻击的方法

CSRF CSRF全拼为Cross Site Request Forgery,译为跨站请求伪造。 CSRF指攻击者盗用了你的身份,以你的名义发送恶意请求。 包括:以你名义发送邮件,发消息...

从零学python系列之新版本导入httplib模块报ImportError解决方案

之前用Python 2.7版本的httplib做接口测试时,运行代码都是正常的, 最近开始用Python 3.3之后,再去看以前的代码,发现import httplib出现错误:Unre...

python3实现随机数

python3实现随机数

Python3实现随机数,供大家参考,具体内容如下 random是用于生成随机数的,我们可以利用它随机生成数字或者选择字符串。 random.seed(x)改变随机数生成器的种子seed...

使用Python的web.py框架实现类似Django的ORM查询的教程

Django中的对象查询 Django框架自带了ORM,实现了一些比较强大而且方便的查询功能,这些功能和表无关。比如下面这个例子: class Question(models.Mod...