1、读写图像(建议使用绝对路径)

import cv2 from cv2
im = cv2.imread('C:/Users/admin/Desktop/test/1.jpg')
cv2.imwrite('C:/Users/admin/Desktop/test/2.jpg',im)

2、通过numpy生成8位单通道灰度图像,再通过OpenCV将灰度图转换为3通道彩色图像

import cv2 from cv2
import numpy
img = np.zeros((3,3),dtype=np.uint8)
img = cv2.cvtColor(img,cv2.COLOR_GRAY2BGR)

3、读取彩色图像并转换为灰度图

import cv2 from cv2
img = cv2.imread('C:/Users/admin/Desktop/test/1.jpg',cv2.IMREAD_GRAYSCALE)
cv2.imwrite('C:/Users/admin/Desktop/test/3.jpg',img)

4、通过bytearray和numpy创建随机图像

import cv2 from cv2
import numpy
#生成大小为120000的随机byte数组
randomByteArray = bytearray(os.urandom(120000))
#将byte数组转换为numpy数组
flatNumpyArray = numpy.array(randomByteArray)
#把numpy数组转换为二维图像
grayImage = flatNumpyArray.reshape(300,400)#把numpy数组转换为3通道彩色图像
bgrImage = flatNumpyArray.reshape(200,200,3)
cv2.imwrite('C:/Users/admin/Desktop/test/3.jpg',bgrImage)

5、直接通过numpy直接生成随机图像

imageArray = numpy.random.randint(0,256,120000).reshape(200,200,3)

6、通过numpy.array中的item()访问图像像素值,位置和BGR索引

import cv2 from cv2
import numpy
image = cv2.imread('C:/Users/admin/Desktop/test/1.jpg')
print(image.item(100,100,2))

7、使用索引遍历图像,OpenCV中图像3个通道顺序为BGR,即blue,green,red。

#对图像进行遍历,并将B通道置零
import cv2 from cv2
import numpy
image[:,:,0]=0
cv2.imwrite('C:/Users/admin/Desktop/test/4.jpg',image)

8、将图像一部分区域拷贝到另一部分区域,两部分区域大小必须保持一致,且不能超过图像范围。

import cv2 from cv2
import numpy
#将图像纵轴0-50,横轴50-100区域拷贝到纵轴100-150,横轴100-150区域
image_block = image[0:50,50:100]
image[100:150,100:150] = image_block
cv2.imwrite('C:/Users/admin/Desktop/test/4.jpg',image)

9、获取图像属性,image.shape可以获取图像高、宽和通道数,返回一个长度为3的数组。

import cv2 from cv2
im = cv2.imread('C:/Users/admin/Desktop/test/1.jpg')
#获取图像宽、高和通道数
arr = image.shape
Height = arr[0]
Width = arr[1]
print(Height)
print(Width)
#获取图像大小,size=高*宽*通道数
print(image.size)
#获取图像数据类型,一般为uint8
print(image.dtype)

10、通过OpenCV显示图像

import cv2 from cv2
im = cv2.imread('C:/Users/admin/Desktop/test/1.jpg')
cv2.imshow('img',image)
cv2.waitKey()
cv2.destroyAllWindows()

OpenCV+python图像处理基础操作相关推荐

  1. Python图像处理基础

    Python图像处理基础 对我个人而言使用Python图像处理意在取代matlab,集中化使用Python环境保证之后在机器学习和OpenCV的使用上具有一致性,虽然从实验室师兄师姐的口中得知Pyth ...

  2. Opencv Python图像处理进阶教程②

    Opencv Python图像处理进阶教程 概述: 代码: https://github.com/bai1231/opencv-learn_and_pratice 1. 图像卷积与应用 图像去噪 图像 ...

  3. python图像处理基础知识(cv库函数说明)

    python图像处理基础知识,函数说明 目录 python图像处理基础知识,函数说明 1.处理照片(open_cv库) 1.1 cv2.imread('filepath',flags) 1.2 cv2 ...

  4. python图像处理基础知识(plt库函数说明)

    python图像处理基础知识,plt库函数说明 目录 python图像处理基础知识,plt库函数说明 1.画图(plt库) 1.1 plt.figure(num='',figsize=(x, y),d ...

  5. OpenCV实战(1)——OpenCV与图像处理基础

    OpenCV实战(1)--OpenCV与图像处理基础 0. 前言 1. OpenCV 基础 1.1 安装 OpenCV 1.2 OpenCV 主要模块 1.3 使用 Qt 进行 OpenCV 开发 2 ...

  6. Python语音基础操作--4.3共振峰估计

    <语音信号处理试验教程>(梁瑞宇等)的代码主要是Matlab实现的,现在Python比较热门,所以把这个项目大部分内容写成了Python实现,大部分是手动写的.使用CSDN博客查看帮助文件 ...

  7. Python语音基础操作--11.2基于GMM的说话人识别模型

    <语音信号处理试验教程>(梁瑞宇等)的代码主要是Matlab实现的,现在Python比较热门,所以把这个项目大部分内容写成了Python实现,大部分是手动写的.使用CSDN博客查看帮助文件 ...

  8. Python语音基础操作--6.3ADPCM编码

    <语音信号处理试验教程>(梁瑞宇等)的代码主要是Matlab实现的,现在Python比较热门,所以把这个项目大部分内容写成了Python实现,大部分是手动写的.使用CSDN博客查看帮助文件 ...

  9. Python语音基础操作--2.3声强与响度

    <语音信号处理试验教程>(梁瑞宇等)的代码主要是Matlab实现的,现在Python比较热门,所以把这个项目大部分内容写成了Python实现,大部分是手动写的.使用CSDN博客查看帮助文件 ...

最新文章

  1. Jmeter调试工具---Debug Sampler
  2. javax.crypto.BadPaddingException: Data must sta...
  3. dubbo源码解析(三十五)集群——cluster
  4. 帝国cms7.5百度小程序针对搜索引擎自然搜索优化版生成静态版
  5. android 连接 asp.net webservice 简单记录
  6. 【STM32】光敏传感器示例
  7. php 空函数,PHP 中函数 isset(), empty(), is_null() 的区别
  8. Flink DataStream 关联维表实战
  9. 软件设计模式概述(摘自《研磨设计模式》)
  10. Excel在两列排序不同的数据中查找出不同的数据
  11. Ubuntulinux离线安装ClamTk杀毒软件步骤和使用方法
  12. 吉他演奏中的速度与节拍
  13. JZOJ.5236【NOIP2017模拟8.7】利普希茨
  14. 转“软件测试职业发展方向”
  15. centos命令行常用快捷键
  16. php 实现保留两位小数
  17. 用python爬取《龙岭迷窟》评论,看看比同系列鬼吹灯作品以及《盗墓笔记》好在哪里?...
  18. 赛普拉斯代理4Mbit串行SPI铁电存储器CY15B104Q-LHXI
  19. 【数据分发服务DDS】软件定义汽车【一】- 概述
  20. QCY T1S 蓝牙耳机使用说明

热门文章

  1. 02.uri-search
  2. Zookeeper 客户端源码吐血总结
  3. zoj 3705 Applications
  4. 1005 Spell It Right (20 分)——13行代码Ac
  5. 38行代码AC——L1-025 正整数A+B (15分)(~解题报告~)
  6. 单片机原理及其应用——单片机控制单个发光二极管实验(附超详细的C51单片机实验教程)
  7. oracle loder nextval,ORA-07445: 出现异常错误: 核心转储
  8. 数据库概述(了解数据库,当前数据库介绍,mysql数据库介绍,安装mysql数据库)
  9. 吉林大学计算机科学与技术学院王欣,应用改进迭代最近点方法的点云数据配准...
  10. Android对话框dialog大全