1、 get_area_points:用来标记特定区域的顶点,按下空格键表示标定完成一个区域,按下enter键表示所有区域标定完成(标记鼠标点击时,要按逆时针或者顺时针顺序标记)
2、GetArea:用get_area_points生成的顶点列表生成掩膜
3、如果想继续得到掩膜画出的区域,只要让原图像和掩膜 按位与 操作即可得到
效果:
得到掩膜区域
get_area_points函数代码:
"""
@Author : C
@Time : 2021/12/29 9:22
@FileName : GetPoint.py
@Function :
"""
import cv2
def get_area_points(img):
count = 1
a = []
b = []
Points = []
Points_list = [] # 用来放不同的数据
def on_EVENT_LBUTTONDOWN(event, x, y, flags, param):
if event == cv2.EVENT_LBUTTONDOWN:
# 得到一个字符串
xy = "%d,%d" % (x, y)
a.append(x)
b.append(y)
# 输出颜色
print('颜色' + str(img[y, x, 0]) + ' ' + str(img[y, x, 1]) + ' ' + str(img