机器学习进阶-图片基本处理-ROI区域 1.img[0:200, 0:200]截取图片 2.cv2.split(对图片的颜色通道进行拆分) 3. cv2.merge(将颜色通道进行合并) 4 cur_img[:, :, 0] = 0 使得b通道的颜色数值为0

1. 截取图片的部分区域img[0:200, 0:200], 读入的图片是ndarray格式

2. b, g, r = cv2.split(img)  # 对图片的颜色通道进行拆分

3.img = cv2.merge((b, g, r))  #对图片的颜色通道进行合并

4. 对其他通道置零,只显示单个通道 cur_img[:, :, 0] = 0, cur_img[:, :, 1] = 0

代码:

只显示部分区域

import cv2

# 定义显示函数
def cv_show(name, img):
    cv2.imshow(name, img)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

# 截取图片的部分进行显示
img = cv2.imread(‘cat.jpg‘)
cat = img[0:200, 0:200]
cv_show(‘cat‘, cat)

颜色通道的拆分

# cv2.split进行颜色通道的拆分
b, g, r = cv2.split(img)

颜色通道的合并

# cv2.merge 将颜色通道进行合并
image = cv2.merge((b, g, r))
cv_show(‘new_cat‘, image)

只显示单个颜色通道,对其他颜色通道赋值为0

# 只显示一个通道的颜色
# 只显示红色通道
cur_img = image.copy()
cur_img[:, :, 0] = 0
cur_img[:, :, 1] = 0
cv_show(‘R‘, cur_img)
# 只显示绿色通道
cur_img = image.copy()
cur_img[:, :, 1] = 0
cur_img[:, :, 2] = 0
cv_show(‘B‘, cur_img)
# 只显示蓝色通道
cur_img = image.copy()
cur_img[:, :, 0] = 0
cur_img[:, :, 2] = 0
cv_show(‘G‘, cur_img)

原文地址:https://www.cnblogs.com/my-love-is-python/p/10390421.html

时间: 2024-11-07 03:21:12

机器学习进阶-图片基本处理-ROI区域 1.img[0:200, 0:200]截取图片 2.cv2.split(对图片的颜色通道进行拆分) 3. cv2.merge(将颜色通道进行合并) 4 cur_img[:, :, 0] = 0 使得b通道的颜色数值为0的相关文章

机器学习进阶-项目实战-信用卡数字识别 1.cv2.findContour(找出轮廓) 2.cv2.boudingRect(轮廓外接矩阵位置) 3.cv2.threshold(图片二值化操作) 4.cv2.MORPH_TOPHAT(礼帽运算突出线条) 5.cv2.MORPH_CLOSE(闭运算图片内部膨胀) 6. cv2.resize(改变图像大小) 7.cv2.putText(在图片上放上文本)

7. cv2.putText(img, text, loc, text_font, font_scale, color, linestick) # 参数说明:img表示输入图片,text表示需要填写的文本str格式,loc表示文本在图中的位置,font_size可以使用cv2.FONT_HERSHEY_SIMPLEX, font_scale表示文本的规格,color表示文本颜色,linestick表示线条大小 信用卡数字识别: 信用卡      数字模板涉及到的内容:主要是采用模板匹配的思想 思

机器学习进阶-图像基本操作-图像数据读取 1.cv2.imread(图片读入) 2.cv2.imshow(图片展示) 3.cv2.waitKey(图片停留的时间) 4.cv2.destroyAllWindows(清除所有的方框界面) 5.cv2.imwrite(对图片进行保存)

1. cv2.imread('cat.jpg', cv2.IMGREAD_GRAYSCALE)  # 使用imread读入图像(BGR顺序), 使用IMGREAD_GRAYSCALE 使得读入的图片为灰度图, 2. cv2.imshow('cat', img)  # imshow表示展示图片,第一个参数表示图片的名字, 第二个参数表示需要显示的图片 3. cv2.waitKey(0)  #表示图片停留的时间, 0表示按任意键退出 4.cv2.destroyAllWindows()  #表示清除所

【OpenCV入门教程之四】 ROI区域图像叠加&初级图像混合 全剖析(转)

本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接:http://blog.csdn.net/poem_qianmo/article/details/20911629 作者:毛星云(浅墨)    邮箱: [email protected] 写作当前博文时配套使用的OpenCV版本: 2.4.8 在这篇文章里,我们一起学习了在OpenCV中如何定义感兴趣区域ROI,如何使用addWeighted函数进行图像混合操作,以及将ROI和addWeighted函数结合起来使用,对指定区域进行图像

OpenCv_Image与光流法中设置ROI区域

无论是在图片显示中或者是在光流法寻找角点的过程中,我们都会遇到ROI这个东西.它的作用就是让我们能够专注于图像或者当前视频帧中的某一块区域(我们称之为感兴趣区域) 进行处理,而不是对整个图像或者是整个视频帧进行处理,这不仅能够排除掉一些不必要的误差干扰,还能减少运算量.接下来分别说明来图像和光流法视频中如何设置ROI. 图像设置ROI 代码如下: /* * Description : setting ROI in image * Author : Liulongpo * Date : 2015年

ROI区域图像叠加

//----------------------------------[ROI_AddImage( )函数]---------------------------------- // 函数名:ROI_AddImage() // 描述:利用感兴趣区域ROI实现图像叠加 //---------------------------------------------------------------------------------------------- bool ROI_AddImage(

机器学习进阶笔记之一 | TensorFlow安装与入门

原文链接:https://zhuanlan.zhihu.com/p/22410917 TensorFlow 是 Google 基于 DistBelief 进行研发的第二代人工智能学习系统,被广泛用于语音识别或图像识别等多项机器深度学习领域.其命名来源于本身的运行原理.Tensor(张量)意味着 N 维数组,Flow(流)意味着基于数据流图的计算,TensorFlow 代表着张量从图象的一端流动到另一端计算过程,是将复杂的数据结构传输至人工智能神经网中进行分析和处理的过程. -- 由 UCloud

ROI区域图像叠加&初级图像混合 综合实例

将addWeighted函数与ROI函数封装到ROI_LinearBlending中 //---------------------------------[ROI_LinearBlending()]------------------------------------- // 函数名:ROI_LinearBlending() // 描述:线性混合实现函数,指定区域线性图像混合.利用cv::addWeighted()函数结合定义 // 感兴趣区域ROI,实现自定义区域的线性混合 //-----

【OpenCV】复制、切割出图像ROI区域

对图像设定ROI的函数是: cvSetImageROI(IplImage* src,CvRect rect); src 表示的是源图像, rect 指的是ROI区域. 如果要取消ROI区域,那么使用函数: cvResetImageROI(IplImage* src); 这个函数,就把src上的ROI区域取消掉. 举例: #include <opencv/cv.h> #include <opencv2/highgui/highgui.hpp> using namespace cv;

精确选择识别png图片有像素的区域

/** * * *---------------------------------------* * | ***精确选择识别png图片有像素的区域*** | * *---------------------------------------* ** * 编辑修改收录:fengzi(疯子.wu341.wgq341) * * 不会写代码,我是代码搬运工. * * 联系方式:QQ(493712833). * * 随 笔: https://www.cnblogs.com/fengziwu/ * *