迅为RK3568开发板使用OpenCV处理图像-ROI区域-位置提取ROI
在图像处理过程中,我们可能会对图像的某一个特定区域感兴趣,该区域被称为感兴趣区域(Region of Interest, ROI)。在设定感兴趣区域 ROI 后,就可以对该区域进行整体操作。
位置提取 ROI
本小节代码在配套资料“iTOP-3568 开发板\03_【iTOP-RK3568 开发板】指南教程\04_OpenCV 开发配套资料\06”目录下,如下图所示:

在 2.2 小节中学习了 imread()函数用来读取图像文件,以下面的代码为例读取到的信息会被保存到 img 变量中。
img = cv2.imread('lena.png',1)
可以通过对 img 变量存储的数组设定范围,进行位置提取以此来设定 ROI,例如使用以下命令展示 x 区域范围为[300,500],y 区域范围为[200,400]的图像
cv2.imshow('img',img[200:400,300:500])
实验:
实验要求:
使用 imshow()函数展示一张彩色图像的 ROI 区域,ROI 区域为 x 范围[300,500],y 区域
[200,400]。
实验步骤:
首先进入到 ubuntu 的终端界面将“iTOP-3568 开发板\03_【iTOP-RK3568 开发板】指南教程\04_OpenCV 开发配套资料\06”路径下的 lena.png 文件拷贝到 ubuntu 虚拟机上,拷贝完成如
下图所示:

输入以下命令来创建 demo06_cut.py 文件,如下图所示:
vim demo06_cut.py

然后向该文件中添加以下内容:
1 import cv2 #opencv 的缩写为 cv2,导入 opencv
2 img = cv2.imread("lena.png") #使用 imread 函数读取名为 lena.png 的图片
3 cv2.imshow('img',img[200:400,300:500])
4 cv2.waitKey(0) #等待按键的按下
第 1 行导入了 opencv;
第 2 行使用 imread 函数读取名为 lena.png 的图片;
第 3 行使用 imshow()函数对转换的图像部分区域进行了展示;
第 4 行使用了 waitKey()函数,持续显示展示照片直到按键的按下。
保存退出之后,在终端界面中输入以下命令进行 python 代码的运行,运行结果如下图所示:
python demo06_cut.py

可以看到对应区域的图像已经显示了出来,至此位置提取 ROI 的实验就结束了。
更多内容可以关注:迅为RK3568开发板
相关文章:
迅为RK3568开发板使用OpenCV处理图像-ROI区域-位置提取ROI
在图像处理过程中,我们可能会对图像的某一个特定区域感兴趣,该区域被称为感兴趣区域(Region of Interest, ROI)。在设定感兴趣区域 ROI 后,就可以对该区域进行整体操作。 位置提取 ROI 本小节代码在配套资料“iTOP-3…...
重新认识Word——尾注
重新认识Word——尾注 参考文献格式文献自动生成器插入尾注将数字带上方括号将参考文献中的标号改为非上标 多处引用一篇文献多篇文献被一处引用插入尾注有横线怎么删除?删除尾注 前面我们学习了如何给图片,公式自动添加编号,今天我们来看看毕…...
所有学前教育专业,一定要刷到这篇啊
我是真的希望所有学前教育的宝子都能刷到这篇啊啊,只要输入需求,几秒它就给你写出来了,而且不满意还可以重新写多,每次都是不一样的内容。重复率真的不高,需求越多,生成的文字内容越精准!&#…...
colmap三维重建核心逻辑梳理
colmap三维重建核心逻辑梳理 1. 算法流程束流2. 初始化3. 重建主流程 1. 算法流程束流 重建核心逻辑见 incremental_mapper.cc 中 IncrementMapperController 中 Reconstruct 初始化变量和对象判断是否有初始重建模型,若有,则获取初始重建模型数量&am…...
查询某个类是在哪个JAR的什么版本开始出现的方法
背景 我们在依赖第三方JAR时,同时也会间接的依赖第三方JAR引用的依赖,而当我们项目中某个依赖的版本与第三方JAR依赖的版本不一致时,可能会导致第三方JAR的在运行时无法找到某些方法或类,从而无法正常使用。 如我正在开发的一个…...
Linux本地搭建StackEdit Markdown编辑器结合内网穿透实现远程访问
文章目录 1. docker部署Stackedit2. 本地访问3. Linux 安装cpolar4. 配置Stackedit公网访问地址5. 公网远程访问Stackedit6. 固定Stackedit公网地址 StackEdit是一个受欢迎的Markdown编辑器,在GitHub上拥有20.7k Star!,它支持将Markdown笔记保…...
k8s中ConfigMap、Secret创建使用演示、配置文件存储介绍
目录 一.ConfigMap(cm) 1.适用场景 2.创建并验证configmap (1)以yaml配置文件创建configmap,验证变化是是否同步 (2)--from-file以目录或文件 3.如何使用configmap (1&#x…...
Linux服务器性能优化小结
文章目录 生产环境监测常见专业名词扫盲服务器平均负载服务器平均负载的定义如何判断平均负载值以及好坏情况如果依据平均负载来判断服务器当前状况系统平均负载和CPU使用率的区别 CPU上下文切换基本概念3种上下文切换进程上下文切换线程上下文切换中断上下文切换 查看上下文切…...
ELF文件结构
ELF文件结构 前文结尾说到编译器编译源代码后生成的文件叫做目标文件,而目标文件经过编译器链接之后得到的就是可执行文件。那么目标文件到底是什么?它和可执行文件又有什么区别?链接到底又做了什么呢?接下来,我们将探…...
【C++】有关string迭代器的几道OJ题详解
目录 一、字符串最后一个单词的长度 题目描述 完整代码 二、验证回文串 题目描述 完整代码 三、反转字符串 题目描述 完整代码 四、反转字符串中的单词 题目描述 完整代码 一、字符串最后一个单词的长度 原题链接 题目描述 计算字符串最后一个单词的长度ÿ…...
谷歌宣布向云计算客户开放 Gemini Pro,开发者可用其构建应用
12 月 14 日消息,美国时间周三,谷歌宣布了一系列升级的人工智能(AI)功能,旨在为其云计算客户提供更好的服务。这家科技巨头正试图赶上竞争对手,比如微软和 OpenAI,它们都在积极利用人工智能的热…...
软件测试用例经典方法 | 单元测试法案例
单元测试又称模块测试,是对软件设计的最小单元的功能、性能、接口和设计约束等的正确性进行检验,检查程序在语法、格式和逻辑上的错误,并验证程序是否符合规范,以发现单元内部可能存在的各种缺陷。 单元测试的对象是软件设计的最…...
Leetcode 2967. Minimum Cost to Make Array Equalindromic
Leetcode 2967. Minimum Cost to Make Array Equalindromic 1. 解题思路2. 代码实现 题目链接:2967. Minimum Cost to Make Array Equalindromic 1. 解题思路 这一题其实我的思路有点笨,多少有点暴力求解的意思。 显然,如果我们给出全部的…...
【数据结构】什么是堆?
🦄个人主页:修修修也 🎏所属专栏:数据结构 ⚙️操作环境:Visual Studio 2022 堆的概念及结构 堆的定义如下: n个元素的序列{k1,k2,...,kn}当且仅当满足以下关系时,称之为堆. 或 把这个序列对应的一维数组(即以一维数组作此序列的存储结构)看成是一个…...
生产环境_Spark处理轨迹中跨越本初子午线的经度列
使用spark处理数据集,解决gis轨迹点在地图上跨本初子午线的问题,这个问题很复杂,先补充一版我写的 import org.apache.spark.{SparkConf, SparkContext} import org.apache.spark.sql.{Row, SparkSession} import org.apache.spark.sql.func…...
Vue前端与后端放在一起的搭建方式
1.首先把后端项目搭建好 去到项目的存放位置 2.然后cmd黑窗口输入命令创建vue项目 3.创建成功后回到后端项目进行合并 3.1在File处选择Project Structure 3.2选择模块 3.3找到自己的vue项目 3.4疯狂next最后create 3.5选择Apply并确定OK,恭喜您创建成功了 二、启动…...
SI24R03国产自主可控RISC-V架构MCU低功耗2.4GHz收发芯片SoC
目录 RISC-V架构的优势SI24R03/04特性射频收发器模块特征MCU 模块特征 其他特征 RISC-V架构的优势 相对于目前主流的英特尔X86架构及ARM等架构来说,RISC-V架构具有指令精简、模块化、可扩展、开源、免费等优点。RISC-V的基础指令集只有40多条,加上其他基…...
基于FPGA的温度控制系统设计(论文+源码)
1.系统设计 本次基于FPGA的智能温度控制系统,以FPGA为控制核心,采用自顶向下的设计方法,按照模块化设计的思路分别实现各个模块,再加以整合实现整个系统,从而达到了温度控制的目的。系统以水箱为被控对象,…...
C语言训练:三个字符串比较大小,实现两个整数数的交换统计二进制中1的个数
目录 一、编写程序,输入三个字符串,比较它们的大小,并将它们按由小到大的顺序输出。要求用函数、指针实现。要求:要采用函数调用,并用指向函数的指针作为函数的参数。 1.不使用函数指针作为参数,并自己模拟strcmp。 …...
module ‘tensorflow‘ has no attribute XXX 报错解决
问题描述: 粘了别人的tensorflow项目,运行总是报错module ‘tensorflow’ has no attribute什么什么 问题解决: 导入tensorflow的代码如下 import tensorflow as tf此时,某个某块报错,比如下面这个 那么就直接把tf.…...
KV STUDIO Ver.12 梯形图编程实战:从入门到精通的5个关键步骤
1. 环境配置:从零搭建KV STUDIO开发环境 第一次打开KV STUDIO Ver.12时,很多新手会被复杂的界面吓到。其实只要按照正确步骤配置,半小时就能搭建好开发环境。我去年给产线做自动化改造时,需要在三台不同型号的KV PLC上部署程序&a…...
科研人高效投稿指南:Paperxie AI 期刊论文写作,让你的成果更快见刊
paperxie-免费查重复率aigc检测/开题报告/毕业论文/智能排版/文献综述/期刊论文https://www.paperxie.cn/ai/journalArticleshttps://www.paperxie.cn/ai/journalArticles 一、开篇:被期刊论文困住的科研人,你不是一个人 做实验时可以通宵达旦ÿ…...
别再硬编码了!用CRMEB标准版的可视化定时任务,5分钟搞定自动发券
告别硬编码时代:CRMEB可视化定时任务实战指南 在电商系统开发中,定时任务就像一位不知疲倦的助手,默默处理着自动发券、订单状态更新、数据清理等重复性工作。但传统开发方式往往需要开发者手动编写Crontab配置或硬编码任务逻辑,不…...
2023年VSCode插件开发全指南:从零发布你的第一个扩展(TypeScript版)
2023年TypeScript生态下的VSCode插件开发实战 在当今开发者工具生态中,Visual Studio Code以其轻量化和高度可扩展性占据了绝对领先地位。根据2023年Stack Overflow开发者调查报告,VSCode以74.48%的使用率成为最受欢迎的代码编辑器。而插件系统正是其生态…...
DAMO-YOLO实战:用AI视觉系统做内容安全审核与统计
DAMO-YOLO实战:用AI视觉系统做内容安全审核与统计 1. 引言:当AI视觉遇见内容安全 在数字内容爆炸式增长的今天,如何高效地进行内容审核成为许多平台面临的挑战。传统人工审核不仅效率低下,而且容易因疲劳导致误判。本文将介绍如…...
USB2.0供电那些事儿:为什么你的外设总是供电不足?
USB2.0供电困境解析:从原理到实践的全面解决方案 当你的移动硬盘突然断开连接,或者外接键盘间歇性失灵时,很可能正遭遇USB2.0供电不足的经典难题。这种看似简单的接口背后,隐藏着复杂的电力分配机制与设备兼容性博弈。本文将带你穿…...
解密革命性构建工具:PoeCharm如何突破传统限制实现高效角色规划
解密革命性构建工具:PoeCharm如何突破传统限制实现高效角色规划 【免费下载链接】PoeCharm Path of Building Chinese version 项目地址: https://gitcode.com/gh_mirrors/po/PoeCharm 在流放之路的复杂游戏生态中,角色构建往往成为玩家面临的最大…...
【无线通信】基于统计信道的低复杂度旋转和位置优化为6D可移动天线无线通信附Matlab代码
✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…...
深入解析串口通信:从RS232到RS485的工业应用实战
1. 串口通信的工业应用基础 第一次接触工业自动化项目时,我被现场密密麻麻的线缆搞得头晕眼花。直到老师傅指着角落里不起眼的两根双绞线说:"这条RS485总线控制着整条生产线的30台设备",我才意识到串口通信在工业领域的强大之处。 …...
ReAct Agent:新手程序员必看!收藏这款融合推理与行动的AI智能体框架,轻松入门大模型应用开发
ReAct框架通过结合推理与行动,解决了传统提示工程的局限性,构建出能主动思考、决策并执行复杂任务的智能体。本文详细介绍了ReAct的核心设计思想,包括推理模块的动态思考链和错误回溯机制,以及行动模块的工具集成和环境状态感知。…...
