cv2,PIL绘制矩形框与图片的切片(易错)

news2024/12/25 22:55:09

目录

1. cv2绘制矩形框代码

2. PIL绘制矩形 

3. cv2图片的切片


1. cv2绘制矩形框

import cv2

# 读取图像
img = cv2.imread('img.png')

# 绘制矩形框
cv2.rectangle(img, (100, 200), (300, 300), (0, 255, 0), 3)

# 显示图像
cv2.imshow('Image with Rectangle', img)
cv2.waitKey(0)
cv2.destroyAllWindows()

cv2.rectangle() ,其主要参数包括:

  1. img:要绘制矩形的图像。
  2. pt1:矩形的一个顶点坐标,通常是左上角的坐标,格式为 (x1, y1) 。
  3. pt2:矩形的对角顶点坐标,通常是右下角的坐标,格式为 (x2, y2) 。
  4. color:矩形框的颜色,通常以 (B, G, R) 格式表示,例如 (255, 0, 0) 表示蓝色。
  5. thickness:矩形框的线条粗细。如果为 -1 ,则表示填充矩形。

 

2. PIL绘制矩形 框

代码如下

from PIL import Image, ImageDraw

# 创建一个空白图像
img = Image.new('RGB', (500, 500), 'white')

# 获取绘图对象
draw = ImageDraw.Draw(img)

# 绘制矩形框
draw.rectangle(((100, 200), (300, 400)), outline='red', width=3)

# 显示图像
img.show()

 

rectangle参数

  1. xy:一个包含矩形左上角和右下角坐标的元组,格式为 ((x1, y1), (x2, y2)) 。
  2. outline:矩形框的边框颜色。
  3. width:矩形框边框的宽度。

3. cv2图片的切片

(y1:y2,x2:x1)这个我非常容易出错

import cv2
import cv2

img = cv2.imread('img.png')
roi = img[100:300, 200:400]

# 显示原始图像和 ROI
cv2.imshow('Original Image', img)
cv2.imshow('ROI', roi)

cv2.waitKey(0)
cv2.destroyAllWindows()

roi = img[y_start:y_end, x_start:x_end]

其中,y_start 和 y_end 表示垂直方向(即行)的起始和结束索引,x_start 和 x_end 表示水平方向(即列)的起始和结束索引。

 

也可以只切片一个通道

灰色的蛋

blue_channel = img[:, :, 0]

其中,索引 0 表示蓝色通道,1 表示绿色通道,2 表示红色通道。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2042966.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

LeetCode.20.有效的括号

题目描述: 给定一个只包括 (,),{,},[,] 的字符串 s ,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。每个右括号都有…

云原生和安装Ubuntu 22系统

一.云原生简介 2004年开始,Google已在内部大规模地使用容器技术。 2008年,Google将 Cgroups合并进入了Linux内核。2013年,Docker项目正式发布。2014年,Kubernetes项目正式发布。2015年,由Google、Redhat 以及微软等大…

【电路笔记】-π 型衰减器

π 型衰减器 文章目录 π 型衰减器1、概述2、等阻抗π-型衰减器3、π-型衰减器示例14、不等阻抗π-型衰减器5、π-型衰减器示例26、平衡π-型衰减器π-型衰减器常用于射频和微波传输线路中,可以是平衡或非平衡设计 1、概述 π-型衰减器之所以如此命名,是因为其基本布局和设计…

图书借阅会员员工管理小程序开发

图书借阅微信小程序全面升级方案 本图书借阅微信小程序旨在打造一站式、高效便捷的图书管理与借阅平台,支持多书馆无缝切换与一键同步图书信息,为会员提供流畅的在线借书体验,同时赋予员工强大的管理工具,确保从会员到书馆的每一…

File的概述和构造方法

一.路径: 相对路径开头不带盘符。 二.File: 1.File对象: File对象就表示一个路径,可以是文件的路径,也可以是文件夹的路径, 这个路径可以是存在的,也可以是不存在的。 2.File对象常见的构造…

C:指针学习-指针变量—学习笔记

今日伊雷娜: 目录 前言: 1、字符指针变量 1.1 使用字符指针存放字符 1.2 使用字符指针变量存放字符串 2、数组指针变量 2.1 什么是数组指针变量? 2.2 数组指针变量初始化 2.3 关于数组指针类型的解析 3、函数指针变量 3.1 函数地址 …

如何将CSDN文章导出为pdf文件

第一步: 打开想要导出的页面,空白处点击鼠标右键⇒点击“检查”或“check”,或直接在页面按F12键。 第二步: 复制以下代码粘贴到控制台,并按回车。 若提示让输入“允许粘贴”或“allow pasting”,按提示…

InnoDB锁机制和事务管理介绍_案例解答

前言 本文对《Innodb 锁机制和事务管理介绍》这篇文章中的思考题进行解答。查看完解答后如果对原理有疑问的,可以重新看下原文帮助理解。 初始化信息 验证环境:8.0.28 MySQL Community Server,InnoDB引擎,RR隔离级别。 初始化信…

苍穹外卖项目DAY03

苍穹外卖项目Day03 1、菜品管理 1.1、公共字段自动填充 1.1.1、问题分析 业务表中的公共字段: 问题:代码冗余、不便于后期维护 1.1.2、实现思路 自定义注解AutoFill,用于标识需要进行公共字段自动填充的方法自定义切面类AutoFillAspect&…

Mybatis和Mybatis-plus区别和联系

MyBatis 和 MyBatis-Plus 是两个用于 Java 数据持久层的框架,它们在功能和使用场景上有所不同。如果项目需要高度自定义和复杂的 SQL 逻辑处理,且开发团队熟悉 SQL,那么 MyBatis 是一个更好的选择。相反,如果希望提高开发效率&…

EPLAN P8 2024-操作记录

目录 设备标识符包含页面 效果如下​编辑 步骤如下 连接点代号的分隔符创建 效果如下 步骤如下 中断点连接排序 效果如下 步骤如下 触点关联参考位置调整、 效果如下 步骤如下 端子排定义 效果如下 步骤如下 端子排连接 效果如下 离散端子操作如下 连接…

操作系统基础知识:调度器、闲逛进程,闲逛进程的特性,什么事件会触发“调度程序”?

被调度程序选中和时间用完由调度程序引起,调度程序决定: 让谁运行由调度算法决定;运行多长时间由时间片大小决定。 什么事件会触发“调度程序”? 1.创建新进程 2.进程退出 3.运行进程阻塞 4.I/0中断发生(可能唤醒某些阻塞进程) 非抢占式调…

「每周只上一天班」谷歌散漫制度遭前CEO怒斥:输给OpenAI,再下去要输创业公司了

「谷歌决定拥抱生活与工作平衡:更早下班、远程工作,胜过在竞争中取胜。」施密特说道。「而说到初创公司,他们之所以能成功,是因为人们在拼命地工作。」 在本周三公布的一份斯坦福大学公开课视频中,谷歌前 CEO 埃里克・…

机器学习 之 sklearn的使用介绍和如何找到API

scikit-learn(简称 sklearn)是基于python语言的一个第三方机器学习库,它提供了简单而有效的工具来进行数据分析和建模。建立在numpy pandas SciPy和Malpotlib库上,下面是对如何使用 sklearn 以及如何找到其 API 的一个基本介绍&am…

算法:DFS解决FloodFill算法

目录 题目一:图像渲染 题目二:岛屿数量 题目三:岛屿的最大面积 题目四:被围绕的区域 题目五:太平洋大西洋水流问题 题目六:扫雷游戏 题目七:衣橱整理 题目一:图像渲染 有一幅…

Unity MessagePack代替Json让你的数据更小还更快

Unity MessagePack代替Json让你的数据更小还更快 前言项目下载并安装MessagePack编写测试代码添加并设置脚本生成AOT代码编写加载AOT代码文件运行效果 参考 前言 前端给后端发的Json数据有点大,使用MessagePack优化一下(MessagePack原理官网解释的很清晰…

前端案例:极速问诊项目(移动端自适应)(HTML+CSS+JS)

一个简单的移动端案例,模拟不同设备下逻辑分辨率不同,宽高自适应 正常打开整体布局 打开 f12 (ctrl shift M)或者点击左上角图标,将其模拟为移动端设备 在移动设备iPhone6/7/8,逻辑分辨率375的整体布局 其banner图尺…

1.9万亿字节跳动,没钱了?

字节再融资 近期投行圈热度最高的事情,是字节跳动正在积极与相关金融机构展开洽谈,期望对其现有的 50 亿美元贷款进行再融资,期限三年。 若是再融资能成,大概率会成为中国借款人年内进行的最大规模贷款再融资交易事件。 这下可好了…

Cesium for Unreal 打包像素流去掉 CLICK TO START

文章目录 1. 像素流去掉 CLICK TO START问题分析1. 像素流去掉 CLICK TO START 问题 分析 在后缀添加参数:MatchViewportRes=true&HoveringMouse=true 例如: http://192.168.0.106:5027/?MatchViewportRes=true&HoveringMouse

【课程总结】day24(上):大模型三阶段训练方法(LLaMa Factory)

前言 本章我们将通过 LLaMA-Factory 具体实践大模型训练的三个阶段,包括:预训练、监督微调和偏好纠正。 大模型训练回顾 训练目标 训练一个医疗大模型 训练过程实施 准备训练框架 LLaMA Factory是一款开源低代码大模型微调框架,集成了业…