OpenCV学习笔记(三)

代码效果
自编程实现纯绿色和纯黄色图,图片要求高度180,宽度120,存储为jpg格式,质量默认。

源代码

import cv2
import numpy
img1=numpy.ones((180,120),dtype=numpy.uint8) #产生一个高180,宽120的数组,转换为unit8格式
img2=cv2.cvtColor(img1,cv2.COLOR_GRAY2BGR) #将img1转换为灰度图img2
img2[:,:,:]=[0,255,0] #设定图片img2颜色,RGB,绿色
img3=cv2.cvtColor(img1,cv2.COLOR_GRAY2BGR) #将img1转换为灰度图img3
img3[:,:,:]=[0,255,255] ##设定图片img3颜色,RGB,黄色
cv2.imwrite("e:/pythoncode/csdn/green.jpg",img2) #保存图img2并命名为green.jpg
cv2.imwrite("e:/pythoncode/csdn/yellow.jpg",img3) #保存图img3并命名为yellow.jpg

效果
green.jpg
在这里插入图片描述
yellow.jpg
在这里插入图片描述

用到的函数

  1. np.ones(shape,dtype=None,order=‘C’)

    返回给定形状和类型的新数组,填充 1 。

    shape:代表数据形状,是个元组,如果shape=5代表创建一个五 个元素的一维数组,shape=(3,4) 代表创建一个3*4的数组

    dtype:数据类型,可选,数组所需的数据类型,例如dtype=‘int’。 默认是 float64。
    在opencv-python中,若想为图像创建一个容器,需要指定dtype=np.uint8,否则虽然你的容器矩阵中是有值的,但是无法正常imshow。具体内容可见博文opencv-python:创建图像容器 dtype=np.uint8

    order:{‘C’,‘F’},可选是否以内存中的C或Fortran连续(行或列)顺序存储多维数据。

  2. cv2.cvtColor(p1,p2) 是颜色空间转换函数,p1是需要转换的图片,p2是转换成何种格式。
    cv2.COLOR_BGR2RGB 将BGR格式转换成RGB格式
    cv2.COLOR_BGR2GRAY 将BGR格式转换成灰度图片
    具体见博文cv2.imread()和cv2.cvtColor() 的使用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值