python图像处理之镜像实现方法


Posted in Python onMay 30, 2015

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

图像的镜像变化不改变图像的形状。图像的镜像变换分为三种:水平镜像、垂直镜像、对角镜像

设图像的大小为M×N,则

水平镜像可按公式

I = i

J = N - j + 1

垂直镜像可按公式

I = M - i + 1

J = j

对角镜像可按公式

I = M - i + 1

J = N - j + 1

值得注意的是在OpenCV中坐标是从[0,0]开始的

所以,式中的 +1 在编程时需要改为 -1

这里运行环境为:

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/下载)

下面的代码仍以baby美图为例具体程序如下:

import cv2.cv as cv
image = cv.LoadImage('angelababy.jpg',1)
size = (image.width,image.height)
iUD = cv.CreateImage(size,image.depth,image.nChannels)
iLR = cv.CreateImage(size,image.depth,image.nChannels)
iAcross = cv.CreateImage(size,image.depth,image.nChannels)
h = image.height
w = image.width
for i in range(h):
  for j in range(w):
    iUD[h-1-i,j] = image[i,j]
    iLR[i,w-1-j] = image[i,j]
    iAcross[h-1-i,w-1-j] = image[i,j]
cv.ShowImage('image',image)
cv.ShowImage('iUD',iUD)
cv.ShowImage('iLR',iLR)
cv.ShowImage('iAcross',iAcross)
cv.WaitKey(0)

运行结果如下图所示:

python图像处理之镜像实现方法

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

Python 相关文章推荐
Python实现信用卡系统(支持购物、转账、存取钱)
Jun 24 Python
Python计时相关操作详解【time,datetime】
May 26 Python
Python实现的人工神经网络算法示例【基于反向传播算法】
Nov 11 Python
python实现将汉字保存成文本的方法
Nov 16 Python
Python3解释器知识点总结
Feb 19 Python
详解Python中正则匹配TAB及空格的小技巧
Jul 26 Python
Python 写入训练日志文件并控制台输出解析
Aug 13 Python
Python PyPDF2模块安装使用解析
Jan 19 Python
基于keras输出中间层结果的2种实现方式
Jan 24 Python
浅谈Pytorch中的自动求导函数backward()所需参数的含义
Feb 29 Python
不到20行实现Python代码即可制作精美证件照
Apr 24 Python
使用Django搭建网站实现商品分页功能
May 22 Python
python图像处理之反色实现方法
May 30 #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
You might like
php中json_encode中文编码问题分析
2011/09/13 PHP
smarty模板引擎中内建函数if、elseif和else的使用方法
2015/01/22 PHP
document.all与WEB标准
2020/05/13 Javascript
Javascript里使用Dom操作Xml
2007/01/22 Javascript
JavaScript Event学习第二章 Event浏览器兼容性
2010/02/07 Javascript
基于jquery的从一个页面跳转到另一个页面的指定位置的实现代码(带平滑移动的效果)
2011/05/24 Javascript
javascript定义变量时有var和没有var的区别探讨
2014/07/21 Javascript
Jquery幻灯片特效代码分享--打开页面随机选择切换方式(3)
2015/08/15 Javascript
AngularJS辅助库browserTrigger用法示例
2016/11/03 Javascript
select下拉框插件jquery.editable-select详解
2017/01/22 Javascript
基于原生js运动方式关键点的总结(推荐)
2017/10/01 Javascript
深入理解Vue 单向数据流的原理
2017/11/09 Javascript
JavaScript实现随机点名器实例详解
2019/05/07 Javascript
jQuery Migrate 插件用法实例详解
2019/05/22 jQuery
layer设置maxWidth及maxHeight解决方案
2019/07/26 Javascript
详解Vite的新体验
2021/02/22 Javascript
[04:49]2014DOTA2国际邀请赛 Newbee顺利挺进总决赛 ImbaTV独家专访
2014/07/19 DOTA
[09:47]2018DOTA2亚洲邀请赛4.5SOLO赛 No[o]ne vs Sumail
2018/04/06 DOTA
Linux 修改Python命令的方法示例
2018/12/03 Python
Python设计模式之享元模式原理与用法实例分析
2019/01/11 Python
python pytest进阶之fixture详解
2019/06/27 Python
python 消费 kafka 数据教程
2019/12/21 Python
python shutil文件操作工具使用实例分析
2019/12/25 Python
Python unittest框架操作实例解析
2020/04/13 Python
详解Python 最短匹配模式
2020/07/29 Python
HTML5无刷新改变当前url的代码
2017/03/15 HTML / CSS
MIXIT官网:俄罗斯最大的化妆品公司之一
2020/01/25 全球购物
方法名是否可以与构造器的名字相同
2012/06/04 面试题
会计系个人求职信范文分享
2013/12/20 职场文书
消防安全管理制度
2014/02/01 职场文书
房地产广告词大全
2014/03/19 职场文书
乡镇综治宣传月活动总结
2014/07/02 职场文书
企业员工爱岗敬业演讲稿
2014/08/26 职场文书
员工试用期自我评价
2014/09/18 职场文书
在校学生证明格式
2015/06/24 职场文书
利用Python实现Picgo图床工具
2021/11/23 Python