1,源代码:

import cv2 as cv
import numpy as npdef access_pixels(image):    #定义访问图像像素值的函数print(image.shape);height = image.shape[0]   width = image.shape[1]channels = image.shape[2]print("width : %s, height : %s channels : %s"%(width, height, channels))for row in range(height):for col in range(width):for c in range(channels):pv = image[row, col, c]        #访问图像像素点的数值image[row, col, c] = 255 - pv  #修改图像像素点的数值cv.imshow("pixels_demo", image)def inverse(image):dst = cv.bitwise_not(image) #对图像(灰度图像或彩色图像均可)每个像素值进行二进制“非”操作cv.imshow("inverse demo", dst)def create_image(): #创建新的图像img1 = np.zeros([400, 400, 3], np.uint8)     #定义多通道图像大小并初始化为0#img[: , : , 0] = np.ones([400, 400])*255   #给单通道赋值img1[:, :, 2] = np.ones([400, 400]) * 255cv.imshow("new image1", img1) img2 = np.ones([400, 400, 1], np.uint8)      #定义单通道图像大小并初始化为1img 2= img2 * 255cv.imshow("new image", img)cv.imwrite("F:/images/myImage.png", img2)m1 = np.ones([3, 3], np.int32) #选择合适的类型,避免截断m1.fill(12222.388)        print(m1)m2 = m1.reshape([1, 9])  #维度转换print(m2)m3 = np.array([[2,3,4], [4,5,6],[7,8,9]], np.int32)#m3.fill(9)print(m3)print("--------- Hello Python ---------")
src = cv.imread("F:/images/lena.png") # blue, green red
cv.namedWindow("input image", cv.WINDOW_AUTOSIZE)
cv.imshow("input image", src)
t1 = cv.getTickCount()  #获取CPU时钟周期个数
#access_pixels(src)
create_image()
inverse(src)
t2 = cv.getTickCount()
time = (t2-t1)/cv.getTickFrequency(); #获取时间段
print("time : %s ms"%(time*1000))
cv.waitKey(0)cv.destroyAllWindows()

2,运行结果:




利用numpy对像素点进行操作相关推荐

  1. 深度学习笔记:利用numpy从零搭建一个神经网络

    很多人说深度学习就是个黑箱子,把图像预处理之后丢进 tensorflow 就能出来预测结果,简单有效又省时省力.但正如我在上一篇推送中所说,如果你已是一名功力纯厚的深度学习工程师,这么做当然没问题.但 ...

  2. Android手机上,利用bat脚本模拟用户操作

    大家可能会遇到这样的情景: #  也许你是一个通过App的销售人员,需要不断靠App的点击率来拿利润 #  也许你是一个个人开发者,想要自己写个脚本点击banner广告 #  也许你是一个业务经理,你 ...

  3. 利用 numpy 实现物理计算--物理向量符号与numpy数组的对应 ( jupyterlab 例子)

    文章目录 前言 运行环境和依赖包 实现一个向量 简化公式表达 与符号运算一起使用 构建交互模拟试验 小结 前言 通过一个简单的例子,聊一聊数理代码设计入门. 使用 py 函数.numpy数组和 Pan ...

  4. python np array归一化_浅谈利用numpy对矩阵进行归一化处理的方法

    浅谈利用numpy对矩阵进行归一化处理的方法 本文不讲归一化原理,只介绍实现(事实上看了代码就会懂原理),代码如下: def Normalize(data): m = np.mean(data) mx ...

  5. numpy和torch数据操作对比

    对numpy和torch数据操作进行对比,避免遗忘. ndarray和tensor import torch import numpy as npnp_data = np.arange(6).resh ...

  6. 利用numpy对已知样本点进行多项式拟合

    0.导入相关包: import matplotlib.pyplot as plt import numpy as np 1.假设有如下样本点: #使用随机数产生样本点 x=[1,2,3,4,5,6,7 ...

  7. Java数据结构 利用双栈实现链表操作

    利用双栈实现链表操作 class CQueue {private int count;private ListNode head;private ListNode tail;public CQueue ...

  8. DL之DNN:利用numpy自定义三层结构+softmax函数建立3层完整神经网络全部代码实现(探究BP神经网络的底层思想)

    DL之DNN:利用numpy自定义三层结构+softmax函数建立3层完整神经网络全部代码实现(探究BP神经网络的底层思想) 目录 输出结果 代码实现 输出结果 代码实现 #DL之NN:利用numpy ...

  9. Numpy:利用Numpy库建立可视化输入的二次函数数据点集np.linspace+np.random.shuffle+np.random.normal

    Numpy:利用Numpy库建立可视化输入的二次函数数据点集np.linspace+np.random.shuffle+np.random.normal 目录 输出结果 代码设计 输出结果 代码设计 ...

最新文章

  1. 走你!Github 开源整合
  2. 开发日记-20190716 关键词 读书笔记 《Perl语言入门》Day 10
  3. (转)通过maven,给没有pom文件的jar包生成pom文件,maven项目引入本地jar包
  4. Cheat_Sheet ---Keras、Matlab、Matplotlib、Numpy、Pandas、Scikit-Learn、SciPy
  5. socket编程开发
  6. java .net 3des_Java.net3DES差异及互通
  7. Linux下安装python 2.7.13
  8. python的循环控制_控制for循环(python)
  9. [Bzoj1010][HNOI2008]玩具装箱toy(斜率优化)
  10. 如何用stata画莫兰散点图_图说meta十四:漏斗图暨Stata软件使用方法简介
  11. windows下录制音频
  12. iis下ISAPI_Rewrite配置及 iis rewrite 规则书写
  13. abp ddd mysql_初识ABP vNext(1):开篇计划基础知识
  14. 京剧猫主题曲用计算机弹奏,京剧猫电脑版
  15. 2017 ACM Arabella Collegiate Programming Contest
  16. MVC设计模式及Sprint MVC设计模式
  17. oracle10G-通过DBF文件恢复数据(模拟环境下实践)
  18. 女孩被社会毒瘤恶意传播艾滋病!我用技术将其凶手绳之以法!
  19. 两边双虚线是什么意思_行车道上双实线中又有双虚线是什么意思?
  20. 科研 | 认知电子战研究现状

热门文章

  1. 远程控制virtual box虚拟机系统的三种方式
  2. django自带的分页功能
  3. django正反向查询
  4. debian10 apache2使用ssl
  5. 机房收费系统【VB版】——前期准备
  6. 数据库 user schema sqlserver 关系
  7. virtualenv创建虚拟环境为主_多版本
  8. 命名实体识别学习笔记——使用Ltp
  9. NVIDIA 自动驾驶软件平台
  10. OpenCV读写视频文件解析(二)