opencv的Mask操作,选择图片中感兴趣的区域

最近做目标检测任务的时候,需要对固定区域的内容进行检测,要用到opencv的mask操作,选择图片固定的区域

代码

python 复制代码
import cv2
import numpy as np

img = cv2.imread('data/images/smoking.png')

# 弹出一个框 让你选择ROI | x,y是左上角的坐标
x,y,w,h = cv2.selectROI(img)
print(x, y, w, h)

# 创建mask
mask = np.zeros_like(img[:,:,0])

# 将感兴趣的区域的值设置为1
mask[y:y+h,x:x+w] = 1

# 将mask与原图像做与操作,留下感兴趣的区域,其它区域变成了0
masked_img = cv2.bitwise_and(img,img,mask=mask)

# 显示图片
cv2.imshow('img',img)
cv2.imshow('img_mask',masked_img)
cv2.waitKey()

# 保存图像
cv2.imwrite('data/images/masked_img.png', masked_img)

运行结果

原图片

执行 x,y,w,h = cv2.selectROI(img)

结果

相关推荐
IT_陈寒3 小时前
Redis 性能翻倍的 7 个冷门技巧,第 5 个大多数人都不知道!
前端·人工智能·后端
飞哥数智坊13 小时前
GPT-5-Codex 发布,Codex 正在取代 Claude
人工智能·ai编程
倔强青铜三13 小时前
苦练Python第46天:文件写入与上下文管理器
人工智能·python·面试
虫无涯14 小时前
Dify Agent + AntV 实战:从 0 到 1 打造数据可视化解决方案
人工智能
Dm_dotnet16 小时前
公益站Agent Router注册送200刀额度竟然是真的
人工智能
算家计算16 小时前
7B参数拿下30个世界第一!Hunyuan-MT-7B本地部署教程:腾讯混元开源业界首个翻译集成模型
人工智能·开源
机器之心17 小时前
LLM开源2.0大洗牌:60个出局,39个上桌,AI Coding疯魔,TensorFlow已死
人工智能·openai
Juchecar18 小时前
交叉熵:深度学习中最常用的损失函数
人工智能
林木森ai18 小时前
爆款AI动物运动会视频,用Coze(扣子)一键搞定全流程(附保姆级拆解)
人工智能·aigc
聚客AI18 小时前
🙋‍♀️Transformer训练与推理全流程:从输入处理到输出生成
人工智能·算法·llm