import cv2 as cv
import numpy as np
"""
#图像加法运算 即像素加法 (结果图=图1+图二) (两个图像必须是等大等类型的)
image = cv.imread("E:/pictures/1.jpeg",cv.IMREAD_UNCHANGED)
rows,cols,chn = image.shape
image2 = np.zeros((rows,cols,chn),dtype=image.dtype)
image2 = image
add1 = image+image2 #nupmy包的加法 取模加法 即对应像素之和对255取模得到结果
add2 = cv.add(image,image2) #OPENCV加法 饱和加法 即对应像素相加,超过255的计为255
cv.imshow("orginal",image)
cv.imshow("add1",add1)
cv.imshow("add2",add2)
cv.waitKey(0)
cv.destroyAllWindows()
"""
"""
#图像融合 结果图=图一*系数1+图二*系数2+亮度调节值(图像相加相当于1:1的融合)
image1 = cv.imread("E:/pictures/111.png")
image2 = cv.imread("E:/pictures/300.png")
result = cv.addWeighted(image1,0.6,image2,0.5,5) #dst = cv.addWeighted(src1,alpha,src2,beta,gamma)(五个主要参数)
cv.imshow("image1",image1) #dst=src1*alpha+src2*beta+gamma (以不同比例融合图像)
cv.imshow("image2",image2)
cv.imshow("merge",result)
cv.waitKey()
cv.destroyAllWindows()
""" #图像类型转换 将一个图像转换为其他类型
image = cv.imread("E:/pictures/1.jpeg",cv.IMREAD_UNCHANGED) #dst = cv.cvtColor(image,code) 主要用这两个参数
b = cv.cvtColor(image,cv.COLOR_BGR2RGB) #原图转换为RGB
a = cv.cvtColor(image,cv.COLOR_BGR2GRAY) #原图转换为GRAY
cv.imshow("GRAY",a)
cv.imshow("RGB",b)
cv.imshow("orginal",image)
"""
需要注意的是将灰度图像转换为BGR图像时并不能得到想要的彩色图像,但新得到的图就是3通道图像,不过是
三个通道的每个位置像素值一样,,,,,可以用以下代码验证
a = cv.imread("E:/pictures/1.jpeg",cv.IMREAD_GRAYSLACE)
b = cv.cvtColor(a,cv.COLOR_GRAY2BGR)
print(a.shape)
print(b.shape) //可以发现a为单通道,b为3通道
bb,bg,br = cv.split(b)
cv.imshow("bb",bb)
cv.imshow("bg",bg)
cv.imshow("br",br) //三个图一样 cv.waitKey()
cv.destroyAllWindows() """
cv.waitKey()
cv.destroyAllWindows()

opencv学习笔记2的更多相关文章

  1. opencv学习笔记(七)SVM+HOG

    opencv学习笔记(七)SVM+HOG 一.简介 方向梯度直方图(Histogram of Oriented Gradient,HOG)特征是一种在计算机视觉和图像处理中用来进行物体检测的特征描述子 ...

  2. opencv学习笔记(六)直方图比较图片相似度

    opencv学习笔记(六)直方图比较图片相似度 opencv提供了API来比较图片的相似程度,使我们很简单的就能对2个图片进行比较,这就是直方图的比较,直方图英文是histogram, 原理就是就是将 ...

  3. opencv学习笔记(五)镜像对称

    opencv学习笔记(五)镜像对称 设图像的宽度为width,长度为height.(x,y)为变换后的坐标,(x0,y0)为原图像的坐标. 水平镜像变换: 代码实现: #include <ios ...

  4. opencv学习笔记(四)投影

    opencv学习笔记(四)投影 任选了一张图片用于测试,图片如下所示: #include <cv.h> #include <highgui.h> using namespace ...

  5. opencv学习笔记(三)基本数据类型

    opencv学习笔记(三)基本数据类型 类:DataType 将C++数据类型转换为对应的opencv数据类型 OpenCV原始数据类型的特征模版.OpenCV的原始数据类型包括unsigned ch ...

  6. opencv学习笔记(二)寻找轮廓

    opencv学习笔记(二)寻找轮廓 opencv中使用findContours函数来查找轮廓,这个函数的原型为: void findContours(InputOutputArray image, O ...

  7. opencv学习笔记(一)IplImage, CvMat, Mat 的关系

    opencv学习笔记(一)IplImage, CvMat, Mat 的关系 opencv中常见的与图像操作有关的数据容器有Mat,cvMat和IplImage,这三种类型都可以代表和显示图像,但是,M ...

  8. paper 93:OpenCV学习笔记大集锦

    整理了我所了解的有关OpenCV的学习笔记.原理分析.使用例程等相关的博文.排序不分先后,随机整理的.如果有好的资源,也欢迎介绍和分享. 1:OpenCV学习笔记 作者:CSDN数量:55篇博文网址: ...

  9. (转) OpenCV学习笔记大集锦 与 图像视觉博客资源2之MIT斯坦福CMU

          首页 视界智尚 算法技术 每日技术 来打我呀 注册     OpenCV学习笔记大集锦 整理了我所了解的有关OpenCV的学习笔记.原理分析.使用例程等相关的博文.排序不分先后,随机整理的 ...

  10. OpenCV学习笔记(27)KAZE 算法原理与源码分析(一)非线性扩散滤波

    http://blog.csdn.net/chenyusiyuan/article/details/8710462 OpenCV学习笔记(27)KAZE 算法原理与源码分析(一)非线性扩散滤波 201 ...

随机推荐

  1. Spring配置文件中<bean>标签的scope属性

    转自:https://fj-sh-chz.iteye.com/blog/1775149 singleton  (默认属性) Spring将Bean放入Spring IOC容器的缓存池中,并将Bean引 ...

  2. python发送包含html、图片、附件和链接的邮件

    1.smtplib模块的使用 smtplib库用来发送邮件.需要用到的函数如下: 连接到SMTP服务器,参数为SMTP主机和端口: SMTP.connect([host[,port]]) 登录SMTP ...

  3. Bootstrap 简介(Web前端CSS框架)

    目录1.简介2.特点3.组件4.Javascript插件5.定制自己的框架代码6.Bootstrap Less 1.简介Bootstrap是Twitter推出的一个开源的用于前端开发的工具包.它由Tw ...

  4. 【HDU1573】X问题

    [题目描述] 求在小于等于N的正整数中有多少个X满足:X mod a[0] = b[0], X mod a[1] = b[1], X mod a[2] = b[2], …, X mod a[i] = ...

  5. 模板模式和Comparable类

    模板模式中,父类规定好了一些算法的流程,并且空出一些步骤(方法)留给子类填充 Java的数组类中静态方法sort()就是一个模板,它空出了一个compareTo的方法,留给子类填充,用来规定什么是大于 ...

  6. while循环 for循环的理解

    不管是while循环还是for循环都隐含着一个if else的结构,就是说,if 条件满足,那么就执行循环体内部的语句,else就做循环体外部的事情. 有一个例子我觉得特别典型,程序内部定义了一个特定 ...

  7. xamarin.droid自己的示例工程有些都装不上模拟器,是因为它的architectures选项没设对

    也许是版本更迭导致的,有些老工程的architectures不对,如果x86不勾的话,是不能在genymotion的模拟器上跑的.

  8. mysql导入导出文本文件

    MySQL导入出文本文件只能到处数据,不能到处结构,不过也算备份数据一种方法. 导入文本文件 在此像导入csv文件 也是类似 load data local infile 'd:/insert.txt ...

  9. Part4_lesson2---ARM处理器这个硬件启动流程分析

    1.启动方式 s3c2440:可以从Nor flash启动,Nor flash一般是2MB:也可以从Nandflash启动,它一般是256MB,我们习惯上把我们的uboot,内核以及文件系统都放到Na ...

  10. 使用EasyUI,关于日期格式的文本框按照正常方式获取不到值的问题

    这是个小菜在实际工作中遇到的问题,相信很多EasyUI新手很可能也遇到这样的问题,因此小菜觉得有必要拿出来分享一下. 这个问题要从EasyUI的datebox组件说起,小菜用这个组件的时候,发现用$( ...