网络编程
位置:首页>> 网络编程>> Python编程>> python图像处理之反色实现方法

python图像处理之反色实现方法

作者:xiatwhu  发布时间:2021-06-28 20:35:43 

标签:python,图像,反色

本文实例讲述了python图像处理之反色实现方法。分享给大家供大家参考。具体如下:

我们先加载一个8位灰度图像

每一个像素对应的灰度值从0-255

则只需要读取每个像素的灰度值A,再将255-A写入

这样操作一遍后,图像就会反色了

这里运行环境为:

Python为:Python2.7.6
OpenCV2.4.10版(可到http://sourceforge.net/projects/opencvlibrary/files/opencv-win/下载)
numpy为:numpy-1.9.1-win32-superpack-python2.7(可到http://sourceforge.net/projects/numpy/files/NumPy/1.9.1/下载)

具体python代码如下:


import cv2.cv as cv
image = cv.LoadImage('angelababy.jpg',0)
size = (image.width,image.height)
iTmp = cv.CreateImage(size,image.depth,image.nChannels)
for i in range(image.height):
 for j in range(image.width):
   iTmp[i,j] = 255 - image[i,j]
cv.NamedWindow('image')
cv.NamedWindow('iTmp')
cv.ShowImage('image',image)
cv.ShowImage('iTmp',iTmp)
cv.WaitKey(0)

运行结果如下图所示:

python图像处理之反色实现方法

我们再稍微改动一下上面的代码

对于彩 * 片,对于每个像素点,OpenCV在Python中是以tuple(R,G,B)的形式存储的

所以对于彩 * 片的反色,只需要获得tuple(255-R,255-G,255-B)就行了

代码如下:


import cv2.cv as cv
image = cv.LoadImage('angelababy.jpg',1)
size = (image.width,image.height)
iTmp = cv.CreateImage(size,image.depth,image.nChannels)
for i in range(image.height):
 for j in range(image.width):
   iTmp[i,j] = (255-image[i,j][0],255-image[i,j][1],255-image[i,j][2])
cv.NamedWindow('image')
cv.NamedWindow('iTmp')
cv.ShowImage('image',image)
cv.ShowImage('iTmp',iTmp)
cv.WaitKey(0)

运行效果如下图所示:

python图像处理之反色实现方法

希望本文所述对大家的Python程序设计有所帮助。

0
投稿

猜你喜欢

  • 第一种 使用pygame模块  pygame.mixer.init()  pygame.mixer.music.load
  • 最近,我在做网页的时候,经理老是反应网页中一些栏目中没有背景图片。我说:背景图片有的,你刷新看看。但是他说:我可以刷新看看,但是你不能老是让
  •  maketrans()方法返回的字符串intab每个字符映射到字符的字符串outtab相同位置的转换表。然后这个表被传递到tra
  • 前言最近学完Python,写了几个爬虫练练手,网上的教程有很多,但是有的已经不能爬了,主要是网站经常改,可是爬虫还是有通用的思路的,即下载数
  • JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,它使得人们很容易的进行阅读和编写。同时也方便了
  • 一、软件包a) freetds-stable.gzb) php-5.2.12.tar.gz二、安装步骤a) tar zxvf freetds
  • 注:IE8以前的版本均不支持该特性为了向文档中插入生成内容,可以使用:before与:after伪元素。如,我想在所有链接的后面加上&quo
  • 今天给大家讲的是ASP给图片加水印的知识ASP给图片加水印是需要组件的…常用的有aspjpeg和中国人自己开发的wsImage…前者有30天
  • 1.int,float相互转换例1:int转float使用float(int)float转int使用int(float)# coding:u
  • 1.装饰器的定义装饰器:给已有函数增加额外的功能的函数,本质上是一个闭包函数特点:    1.不修改已有函数的源代码&n
  • 方法1:/** 功能:数据备份/恢复文件简易方法* 以日期为单位,一天一个备份文件,以当天最后备份为准* 用提交表单的形式进行操作,* 其中
  • 受<! #include file="filename.asp" --> 宏限制必须存在该文件并且会预先编译
  • 本文实例讲述了PHP笛卡尔积实现算法。分享给大家供大家参考,具体如下:<?php$arr = array(array(1,3,4,5)
  • 1.网络爬虫的基本概念网络爬虫(又称网络蜘蛛,机器人),就是模拟客户端发送网络请求,接收请求响应,一种按照一定的规则,自动地抓取互联网信息的
  • 当变量维数加大时很难想象是怎样按不同维度求和的,高清楚一个,其他的应该就很清楚了,什么都不说了,上例子,例子一看便明白…..a=range(
  • 一、模块模块可以看成是一堆函数的集合体。一个py文件内部就可以放一堆函数,因此一个py文件就可以看成一个模块。如果这个py文件的文件名为mo
  • 很多人不明白,学习这些冷门的函数基本上都用不到,或者说是什么多大用处,事实上,有是有很多用处的,比如今天给大家介绍的uuid模块,就能够生成
  • 引用Nmap库实现扫描功能,本节课比较简单一看就会。编写环境:Python2.x编写:首先安装Nmap程序,并添加环境变量pip insta
  • 上次学会了爬取图片,这次就想着试试爬取商家的联系电话,当然,这里纯属个人技术学习,爬取过后及时删除,不得用于其它违法用途,一切后果自负。首先
  • 围绕文字、符号、链接三个方面,主要是中文,草拟的个人行文经验:1. 文字避免写错。应付挑剔的读者是一个方面,某些关键词的错误,有可能就避过了
手机版 网络编程 asp之家 www.aspxhome.com