图像就是一个矩阵,在OpenCV for Python中,图像就是NumPy中的数组!

如果读取图像首先要导入OpenCV包,方法为:

import cv2  

读取并显示图像

在Python中不需要声明变量,所以也就不需要C++中的cv::Mat xxxxx了。只需这样:

img=cv2.imread("D:\\lena.jpg")

OpenCV目前支持读取bmp、jpg、png、tiff等常用格式。更详细的请参考OpenCV的参考文档。

接着创建一个窗口

cv2.namedWindow("Image")  

然后在窗口中显示图像

cv2.imshow("Image", img)  

最后还要添上一句:

cv2.waitKey (0) 

如果不添最后一句,在IDLE中执行窗口直接无响应。在命令行中执行的话,则是一闪而过。

完整的程序为:

import cv2
img = cv2.imread("D:\\clena.jpg")
cv2.namedWindow("Image")
cv2.imshow("Image", img)
cv2.waitKey (0)
cv2.destroyAllWindows()

创建/复制图像

新的OpenCV的接口中没有CreateImage接口。即没有cv2.CreateImage这样的函数。如果要创建图像,需要使用numpy的函数(现在使用OpenCV-Python绑定,numpy是必装的)。如下:

emptyImage = np.zeros(img.shape, np.uint8)  

在新的OpenCV-Python绑定中,图像使用NumPy数组的属性来表示图像的尺寸和通道信息。如果输出img.shape,将得到(500, 375, 3),这里是以OpenCV自带的lena.jpg为示例。最后的3表示这是一个RGB图像。

也可以复制原有的图像来获得一副新图像。

import cv2
import numpy as np
img=cv2.imread("D:\\lena.jpg")
cv2.imshow("shiyan",img)copyimg=np.zeros(img.shape,np.uint8)
copyimg=img.copy()
grayimg=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
cv2.imshow("shiyan2",copyimg)
cv2.imshow("shiyan3",grayimg)
cv2.imwrite("./lena.jpg",img,[int(cv2.IMWRITE_JPEG_QUALITY),5])
cv2.waitKey(0)
cv2.destroyAllWindows()

python图像复制、显示、保存相关推荐

  1. python PIL 打开\显示\保存图像

    转自:https://www.cnblogs.com/denny402/p/5096001.html 使用python进行数字图片处理,还得安装Pillow包.虽然python里面自带一个PIL(py ...

  2. Winform中实现ZedGraph曲线图的图像复制到剪切板、打印预览、获取图片并保存、另存为的功能

    场景 Winforn中设置ZedGraph曲线图的属性.坐标轴属性.刻度属性: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10 ...

  3. opencv-python教程学习系列2-读取/显示/保存图像

    前言 opencv-python教程学习系列记录学习python-opencv过程的点滴,本文主要介绍图像的读取.显示以及保存,坚持学习,共同进步. 系列教程参照OpenCV-Python中文教程: ...

  4. RAW图像详解及使用Python读取raw格式图像并显示

    一.RAW图像详解 1.1 什么是raw格式图像? RAW在英文中的解释是未处理的.自然状态的,这也就是RAW文件的真谛.RAW图像就是CMOS或者CCD图像感应器将捕捉到 的光源信号转化为数字信号的 ...

  5. python有中文无法保存_解决python3爬虫无法显示中文的问题

    解决python3爬虫无法显示中文的问题 有时候使用python从网站上爬数据的时候,如果数据里包含中文,有时候显示的却是如下所示...\xe4\xba\xba\xef\xbc\x8c\xe6...类 ...

  6. Python,OpenCV骨架化图像并显示(skeletonize)

    Python,OpenCV骨架化图像并显示(skeletonize) 1. 效果图 2. 源码 参考: 1. 效果图 自己画一张图,原图 VS 骨架效果图如下: opencv logo原图 VS 骨架 ...

  7. 使用Python,Matplotlib显示RGB图像

    使用Python,Matplotlib显示RGB格式的 图像 1. 效果图 2. 源码 参考 这篇博客将介绍如何使用matplotlib显示RGB图像.具体是使用matplotlib,pyplot和m ...

  8. python图像中如何显示中文

    python图像中如何显示中文 在开头加入这两行即可 from pylab import * mpl.rcParams['font.sans-serif'] = ['SimHei']

  9. [OpenCV学习笔记3][图像的加载+修改+显示+保存]

    正式进入OpenCV学习了,前面开始的都是一些环境搭建和准备工作,对一些数据结构的认识主要是Mat类的认识: [1.学习目标] 图像的加载:imread() 图像的修改:cvtColor() 图像的显 ...

最新文章

  1. Zookeeper 入门
  2. 发那科冲压直线搬运机器人_行业应用 | 直线七轴软件配置
  3. leetcode 790. Domino and Tromino Tiling | 790. 多米诺和托米诺平铺(暴力递归->DP)
  4. 计算机应用大一题,大一计算机应用基础习题与答案(精选).doc
  5. 解决maven打包报错:Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.3.2
  6. EcmaScript对象克隆之谜
  7. mysql replication
  8. Nginx 的 Location 配置指令块
  9. easyui控件事件监听委托给jquery事件监听,keyup取最新值问题
  10. Python小应用1 - 抓取网页中的链接地址
  11. UVA160 Factors and Factorials【筛选法】
  12. python变量赋值给数组_python 变量,数组,字符串
  13. vfp复制表结构_有关VFP表的问题
  14. IPFS为什么被学者称为数据的“黄金保险柜”?
  15. ed是什么梗_美国大学EA,ED什么意思?
  16. springboot集成kettle, 访问不到ktr文件
  17. 【SpringCloud-学习笔记】Docker基本操作
  18. android是乐视手机刷机,乐视MAX(乐视 X900+)一键刷机教程,轻松刷机
  19. 【雷达波位编排】基于matlab相控阵雷达的波位编排仿真【含Matlab源码 2251期】
  20. DFS Cut twigs

热门文章

  1. 创建、编辑、删除目录
  2. 模板:SharePoint2007解决方案包
  3. 如何提高android串口kernel log等级
  4. python astype(float)_Python astype(np.float)函数使用方法解析
  5. delphi 搭建安卓开发环境
  6. Uber将向公众开放出行大数据:希望能更好规划城市出行
  7. mac下为什么光标按方向键只能一个字一个字地蹦
  8. 深度解析dba_segments和sys.seg$中的细节差异(下)
  9. C# 制作外挂常用的API
  10. c++ using namespace std; - 海明威 - 博客园