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


Posted in Python onMay 30, 2015

本文实例讲述了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程序设计有所帮助。

Python 相关文章推荐
Python命名空间详解
Aug 18 Python
Python深入学习之内存管理
Aug 31 Python
在Python中使用__slots__方法的详细教程
Apr 28 Python
使用Python脚本和ADB命令实现卸载App
Feb 10 Python
Python实现的矩阵类实例
Aug 22 Python
python处理Excel xlrd的简单使用
Sep 12 Python
python里 super类的工作原理详解
Jun 19 Python
解决Pyinstaller 打包exe文件 取消dos窗口(黑框框)的问题
Jun 21 Python
python实现京东订单推送到测试环境,提供便利操作示例
Aug 09 Python
使用python实现unix2dos和dos2unix命令的例子
Aug 13 Python
3种python调用其他脚本的方法
Jan 06 Python
Softmax函数原理及Python实现过程解析
May 22 Python
python中字典(Dictionary)用法实例详解
May 30 #Python
python集合用法实例分析
May 30 #Python
基于wxpython实现的windows GUI程序实例
May 30 #Python
python简单实现旋转图片的方法
May 30 #Python
Python实现控制台输入密码的方法
May 29 #Python
python删除过期文件的方法
May 29 #Python
Python的Django框架中TEMPLATES项的设置教程
May 29 #Python
You might like
php面向对象全攻略 (六)__set() __get() __isset() __unset()的用法
2009/09/30 PHP
ThinkPHP V2.2说明文档没有说明的那些事实例小结
2015/07/01 PHP
php for 循环使用的简单实例
2016/06/02 PHP
详解PHP使用日期时间处理器Carbon人性化显示时间
2017/08/10 PHP
PHP简单实现二维数组赋值与遍历功能示例
2017/10/19 PHP
laravel框架中控制器的创建和使用方法分析
2019/11/23 PHP
可以文本显示的公告栏的js代码
2007/03/11 Javascript
关于JS中的闭包浅谈
2013/08/23 Javascript
JavaScript 实现鼠标拖动元素实例代码
2014/02/24 Javascript
smartcrop.js智能图片裁剪库
2015/10/14 Javascript
JS中绑定事件顺序(事件冒泡与事件捕获区别)
2017/01/24 Javascript
vue图片加载与显示默认图片实例代码
2017/03/16 Javascript
Angular2环境搭建具体操作步骤(推荐)
2017/08/04 Javascript
node文件批量重命名的方法示例
2017/10/23 Javascript
Intellij IDEA搭建vue-cli项目的方法步骤
2018/10/20 Javascript
微信小程序实现跑马灯效果
2020/10/21 Javascript
JS+php后台实现文件上传功能详解
2019/03/02 Javascript
简单了解小程序+node梳理登陆流程
2019/06/24 Javascript
Vue + ts实现轮播插件的示例
2020/11/10 Javascript
python开发之字符串string操作方法实例详解
2015/11/12 Python
Python 列表排序方法reverse、sort、sorted详解
2016/01/22 Python
Python操作RabbitMQ服务器实现消息队列的路由功能
2016/06/29 Python
python调用Delphi写的Dll代码示例
2017/12/05 Python
Python进度条实时显示处理进度的示例代码
2018/01/30 Python
python中几种自动微分库解析
2019/08/29 Python
django自带的权限管理Permission用法说明
2020/05/13 Python
荷兰最大的儿童服装店:The Kids Republic
2019/04/13 全球购物
您在慕尼黑的跑步商店:Lauf-bar
2019/10/11 全球购物
Java面试笔试题大全
2016/11/23 面试题
函授本科个人自我鉴定
2014/03/25 职场文书
《孔繁森》教学反思
2014/04/17 职场文书
贸易经济专业自荐书
2014/06/29 职场文书
毕业论文致谢怎么写
2015/05/14 职场文书
JavaScript实现复选框全选功能
2021/04/11 Javascript
HAM-2000摩机图
2021/04/22 无线电
「约定的梦幻岛」作画发布诺曼生日新绘
2022/03/21 日漫