import cv2
import matplotlib.pyplot as plt
import numpy as np
%matplotlib inline
img = cv2.imread('revolte.jpg')
img # 读取的是array 格式
array([[[240, 243, 255],[239, 242, 255],[238, 241, 255],...,def cv_show(name,image):cv2.imshow(name,image)cv2.waitKey(0)cv2.destroyAllWindows()
cv_show('image',img) #定义个函数不用每次都写这么多行
img.shape#常用的属性
(183, 275, 3)
###灰度图的读取
img= cv2.imread('revolte.jpg',cv2.IMREAD_GRAYSCALE)
cv_show('Gray',img)
cv2.imwrite('gray.jpg',img)
True

视频的处理

vc = cv2.VideoCapture('AMZ.mp4')
while open:ret,frame = vc.read()#返回两个值if frame is None:breakif ret == True:gray = cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)cv2.imshow('gray result',gray)if cv2.waitKey(1)&0xFF ==27:break
vc.realse()
cv2.destroyAllWindows()                     ^

颜色通道的提取

b,g,r = cv2.split(img)
img = cv2.merge((b,g,r)) #合并通道
#只保留B
cur_img = img.copy()
cur_img[:,:,1]=0
cur_img[:,:,2]=0
cv_show('B',cur_img)

边界的填充(padding),有复制法(复制最边缘的像素),反射法,外包装法,常量法

top_size,bottom_size,left_size,right_size=(50,50,50,50)
replicate = cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,borderType=cv2.BORDER_REPLICATE)
reflect = cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,borderType=cv2.BORDER_REFLECT)
reflect101 = cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,borderType=cv2.BORDER_REFLECT_101)
wrap = cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,borderType=cv2.BORDER_WRAP)
const =wrap = cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,borderType=cv2.BORDER_CONSTANT,value = 0)
plt.subplot(221),plt.imshow(img,'gray'),plt.title('Original')
plt.subplot(222),plt.imshow(replicate,'gray'),plt.title('replicate')
plt.subplot(223),plt.imshow(reflect,'gray'),plt.title('replicate101')
plt.subplot(224),plt.imshow(const,'gray'),plt.title('const')

数值计算

img2 = img+10
#可以切片进行计算,numpy计算越界取余
#不同于cv2.add 越界取最大

图像融合

img2 = cv2.imread('mito.jpg')
img2.shape
(159, 317, 3)
img.shape
(159, 317, 3)
img = cv2.resize(img,(317,159))
img = cv2.flip(img, 1)
res = cv2.addWeighted(img,0.6,img2,0.4,0)
plt.imshow(res)

vc如何打开plt图像_图像基本操作-open cv相关推荐

  1. vc如何打开plt图像_opencv_python从zero到hero————之图像基本操作01

    微信公众号:小白图像与视觉 关于技术.关注yysilence00.有问题或建议,请公众号留言. 主题:opencv_python从zero到hero----之图像基本操作01 1.版本:opencv3 ...

  2. c++ 绘制函数图像_图像轮廓和分水岭算法

    1. 寻找轮廓 findContours() 函数用于在二值图像中寻找轮廓.常与 drawContours() 函数配合使用:findContours() 函数检测到图像的轮廓后,就可以用 drawC ...

  3. 鳗鱼刺多怎么处理图像_图像二值化处理

    初学图像处理的人,一般首先熟悉图像格式,图像存储方式,8位灰度图,24位彩色图等基础知识,然后接触到的图像算法一般都是图像直方图.图像二值化处理等基础算法.二值化算法作为图像处理入门级算法,在很多场合 ...

  4. pydicom 显示jpeg压缩图像_图像原理 jpg png tga bmp 存储格式

    一.图像处理 作为图像学开发者首要事情搞清楚他们存储的格式, 每种图像格式包括很多信息,其中主要还是颜色的存储 rgb rgba . 其中图像存储安装矩阵的方式 如下图 如果有A通道说明这个图片有透明 ...

  5. 怎么在Vc中打开MySQL数据库_在vc++中使用mysql数据库_MySQL

    vc++版本:v6.0 Host Info: localhost via TCP/IP Server Info: 5.0.67-community-nt Server Version: 50067 C ...

  6. mfc 二进制转换成图像_图像相似度---感知哈希算法(phash)---用matlab实现

    基于matlab2020b,不同版本可能会出错 步骤: 读取图片数据(相当于一个矩阵) 转换成灰度图片(256级) 缩放到32×32尺寸(剔除图片细节) 计算二维离散余弦变换(变换后还是32×32矩阵 ...

  7. python处理视频图像_图像/视频处理选项

    关于图像处理,我没有一个好的答案,但我知道如何使它更容易.当你标记女王,扔一些复古反射珠在油漆上获得更高的光回报.在 我想你可以简单地把珠子和你的颜料混合使用1份珠子到3份颜料.也就是说,我认为你会得 ...

  8. VTK修炼之道20:图像基本操作_图像类型转换

    1.vtkImageCast 图像数据类型转换在数字图像处理中会被频繁地用到.一些常用到的图像算子(例如梯度算子)在计算时出于精度的考虑,会将结果存储为float或者double类型.但是在图像显示时 ...

  9. 【图像处理opencv】_图像基础

    目录 0 程序环境与所学函数 1 自定义图像 2 三种常见图像相互转换 3 通道分离与合并 4 两图像的加减乘除 5 图像线性变换和非线性变换 ​6 图像融合 0 程序环境与所学函数 本章程序运行需要 ...

最新文章

  1. 计算机书籍-Exploring Cloud Computing免费电子书
  2. 基于飞桨PaddlePaddle的语义角色标注任务全解析
  3. Spring中@Import注解的作用和使用
  4. Python的seaborn库(图比较炫)
  5. 在电脑桌面 右键点击 计算机,在桌面上右键点击电脑
  6. 端午前夕的班级小游戏
  7. Spring 注解教程
  8. 【flink】Flink 1.12.2 源码浅析 : StreamTask 浅析
  9. onenetsim定位功能吗_餐饮空间的设计原则和特点,你了解吗?
  10. 手动释放linux服务器内存
  11. 序列化、模块 day21
  12. 利用百度OCR实现验证码自动识别
  13. 树形DP+DFS序+树状数组 HDOJ 5293 Tree chain problem(树链问题)
  14. 小程序 Vant Weapp 使用插槽自定义 Cell 的左侧图标
  15. 解决 误删Path环境变量的问题
  16. 伺服电机常用参数设置_松下伺服几个参数需要熟悉并掌握设置方法
  17. 民国传奇女子——张爱玲
  18. iOS中获取NSError错误信息汇总
  19. XStream 简介
  20. 你从网上看到的,也许是错的——OPPO区域渠道市场调研报告

热门文章

  1. jmeter聚个报告怎么看qps_【jmeter】jmeter测试网站QPS
  2. php xcat createadmin,php xcat update升级后出错,不知怎么弄
  3. lamba把逗号拼接的字符串转为list
  4. Qt编译报 undefined vtable问题
  5. SQLServer子查询相关知识笔记
  6. 学习 MySQL 高性能优化原理,这一篇就够了!
  7. Java工程师该如何编写高效代码?
  8. jvm 崩溃日志设置_JVM致命错误日志(hs_err_pid.log)分析(转载)
  9. e4a html文本,E4A 怎么将剪贴版中的文本 粘贴到窗口的光标处啊?求个代码
  10. 提现接口网站 php,API提现接口