cv2.rectangle()在图像上画矩形框的用法

cv2.rectangle, 确实是靠 确定对角线 来画矩形的。
cv2.rectangle(img, (bbox.left, bbox.top), (bbox.right, bbox.bottom), (0,0,255), 2)
# encoding:utf-8

import cv2
import numpy as np
image = cv2.imread("girl.jpg")
GrayImage=cv2.cvtColor(image ,cv2.COLOR_BGR2GRAY)
# h, w = image.shape[:2]
# h, w = map(int, [h/4, w/4])
# print(h,w)
# # no flip
# draw_0 = cv2.rectangle(image, (100, 100), (10, 10), (0, 0, 255))#cv2.rectangle(image, pt1,pt2, color)
x, y, w, h =cv2.boundingRect(GrayImage)
draw_1=cv2.rectangle(image, (x,y), (x+w,y+h), (0,255,0), 2)
#参数:pt1,对角坐标1, pt2:对角坐标2
# 注意这里根据两个点pt1,pt2,确定了对角线的位置,进而确定了矩形的位置
#The function cv::rectangle draws a rectangle outline or a filled rectangle whose two opposite corners are pt1 and pt2.
draw_0 = cv2.rectangle(image, (2*w, 2*h), (3*w, 3*h))

cv2.imwrite("vertical_flip.jpg", draw_1)#将画过矩形框的图片保存到当前文件夹

cv2.imshow("draw_0", draw_1)#显示画过矩形框的图片
cv2.waitKey(0)
cv2.destroyWindow("draw_0")

 

### 解决方案 在 MacBook 上使用 VSCode 编写并运行 C++ 代码时遇到无法输入的问题,通常是由以下几个原因引起的: #### 原因分析 1. **Code Runner 插件问题** Code Runner 是一个常用的插件用于快速编译和运行代码。然而,在某些情况下,它可能不会正确处理标准输入流 `cin` 的交互行为[^2]。 2. **终端设置冲突** 如果未正确配置 VSCode 终端或者调试器选项,则可能导致程序启动后无法接收键盘输入[^3]。 3. **系统依赖缺失** 更新 macOS 或 Xcode 后可能会丢失必要的开发工具链组件(例如 Command Line Tools),从而影响正常构建流程[^4]。 --- #### 配置与调整建议 ##### 方法一:修改 Code Runner 设置 通过更改 Code Runner 默认参数来支持多行输入功能。 打开用户全局设置 JSON 文件 (`Preferences -> Settings -> Open Settings (JSON)`), 添加如下内容: ```json { "code-runner.runInTerminal": true, "code-runner.executorMap": { "cpp": "g++ '$fileName' -o '$fileNameWithoutExt' && '$fileNameWithoutExt'" } } ``` 上述操作强制让所有执行过程切换到外部集成控制台窗口完成, 并指定自定义 g++ 构建脚本以适应不同平台需求. 注意: 将 `"runInTerminal"` 设定为 `true`, 确保每次调用都跳转至独立 shell session 中继续. --- ##### 方法二:启用内置 Debug Console 模式 如果单纯依靠扩展难以满足复杂项目管理场景下的灵活性要求, 则推荐采用官方提供的 Launch Configuration 功能替代简单一键式解决方案. 创建一个新的 launch.json 条目(位于 .vscode/launch.json): ```json { "version": "0.2.0", "configurations": [ { "name": "(gdb) Launch", "type": "cppdbg", "request": "launch", "program": "${workspaceFolder}/a.out", // 替换为目标可执行文件路径 "args": [], "stopAtEntry": false, "cwd": "${fileDirname}", "environment": [], "externalConsole": true, "MIMode": "lldb" } ] } ``` 此方式允许开发者更精细地掌控整个生命周期内的各项属性值设定情况的同时也保留了良好的用户体验效果. 重要提示: 当前实现仅适用于 Intel 架构版本; 对于 Apple Silicon 特化机型而言可能存在兼容性障碍需另行验证适配可能性. --- ##### 方法三:安装最新版 Xcode & CLT 工具集 鉴于部分基础库函数声明位置变动频繁容易引发链接错误等问题发生概率较高因此有必要确认当前操作系统是否已预装齐全所需资源包集合. 执行以下命令检查状态以及必要时触发在线获取动作: ```bash xcode-select --install softwareupdate --list ``` 前者负责提供核心 SDK 支撑材料后者则列举待升级补丁列表供手动挑选应用. --- ### 总结 综上所述针对 macbook vscode c++ 运行期间遭遇无响应现象可以从三个方面入手排查即优化现有工作区布局结构重新规划任务调度机制最后再补充完善底层框架支撑要素直至彻底消除干扰因素恢复正常运转秩序为止.
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值