当前位置: 首页 > article >正文

基于OpenCV的拆分和合并图像通道实验案例分享_基于RK3568教学实验箱

一、实验目的

本节视频的目的是了解图像通道的概念,学习OpenCV的基本操作,并掌握通过OpenCV实现拆分和合并图像通道的方法。

二、实验原理

拆分与合并图像

在图像处理中,一个彩色图像通常由多个颜色通道组成。对于RGB(红绿蓝)图像,最常见的通道组合是红色、绿色和蓝色。每个通道都表示图像中的一种颜色信息,并且是一个灰度图像,其值通常在0(黑色)到255(白色)之间变化。

拆分图像通道

将彩色图像的每个颜色通道分离出来的过程。每个灰度图像对应原始图像的一个颜色通道。通过查看拆分后的通道图像,可以更清楚地看到每个颜色通道在图像中的作用。

合并图像通道

将单独的颜色通道组合成一个彩色图像的过程。

在OpenCV中,可以通过cv2.split()函数实现拆分图像通道。这个函数接受一个彩色图像作为输入,并返回一个包含三个(对于RGB图像)或四个(对于RGBA图像,包含透明度通道)灰度图像的元组。每个灰度图像对应原始图像的一个颜色通道。通过查看拆分后的通道图像,可以更清楚地看到每个颜色通道在图像中的作用。
合并图像通道可以通过cv2.merge()函数实现。这个函数接受一个包含灰度图像的元组作为输入(元组中的图像数量应与目标彩色图像的通道数相同),并返回一个彩色图像。
示例代码中,首先读取一个图像文件,然后使用cv2.split()拆分颜色通道,并使用cv2.imshow()函数显示每个通道的图像。接着,它使用cv2.merge()合并这些通道,并显示合并后的图像。最后,它等待用户按键后关闭所有窗口。

三、操作现象

实验设备

本实验中使用的软件为VMware17+Ubuntu18.04.4 和串口调试工具Xshell。

image.png

image.png

本实验中使用的是TL3568-PlusTEB实验箱,所需的配件为Micro SD卡、Type-C线、电源和网线。

image.png

image.png

硬件连接

(1)将Ubuntu系统启动卡插至Micro SD卡槽。
(2)使用Type-C线连接USB TO UART2调试串口到PC机。
(3)将实验箱ETH0 RGMII网口(COM21)通过网线连接至路由器。
(4)连接实验箱电源,先不要上电。

屏幕截图 2024-12-03 141448.png

软件操作

(1)先在设备管理器查看串口的端口号;
(2)再设置串口调试工具,波特率设置为1500000,点击连接,在Xshell调试终端会显示连接成功。
(3)连接成功后,拨动实验箱的电源开关,将实验箱上电。
(4)系统启动成功后,输入账户密码登录即可(账密均为:tronlong)
(5)登录成功后,查询实验箱的网口地址。

屏幕截图 2024-12-03 141531.png

拷贝文件

我们先打开Ubuntu,将Demo文件夹拷贝到RK3568目录下。
"Ctrl+Alt+T"打开控制台,执行命令将文件拷贝至实验箱文件系统(根据实验箱实际IP地址修改命令)。

屏幕截图 2024-12-03 141555.png

运行程序

在串口调试窗口执行命令,启动开发环境
在网页输入地址,即可打开登录界面 (根据实际IP地址修改网页地址)。
输入密码:tronlong,登录。
在程序目录,双击打开程序,点击重新运行程序。
等待右上角的进度饼图变白,程序运行完成。
在程序最下方,会显示运行结果。依次是图像合并的结果图、拆分的B通道图像、G通道图像和R通道图像。

屏幕截图 2024-12-03 141618.png


http://www.kler.cn/a/421631.html

相关文章:

  • 十,[极客大挑战 2019]Secret File1
  • 【机器学习】分类任务: 二分类与多分类
  • JS querySelector方法的优点
  • 安装MySQL 5.7 亲测有效
  • nginx配置笔记
  • 组合数学——鸽巢原理
  • 权限提升漏洞之Netlogon协议详解 以及可能出现得漏洞分析
  • 【035】基于51单片机俄罗斯方块游戏机【Proteus仿真+Keil程序+报告+原理图】
  • Scala模拟匹配
  • 怎么做DNS污染检测
  • 【docker】Dockerfile指令讲解,与企业案例应用
  • 数据结构自测5
  • java垃圾回收机制介绍
  • linux模拟试题
  • Seatunnel解决ftp读取json文件无法读取数组以及格式化之后的json无法解析的问题
  • TypeScript和JavaScript的区别
  • 如何使用brew安装phpredis扩展?
  • 零基础学安全--Burp Suite(4)proxy模块以及漏洞测试理论
  • CTF之WEB(php弱类型绕过)
  • openGauss极致RTO流程讲解及运维方法
  • vue实现懒加载
  • 30分钟学会正则表达式
  • Wwise SoundBanks内存优化
  • renderExtraFooter 添加本周,本月,本年
  • 数据库——创建索引的原则
  • 学成在线day08