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 相关文章推荐
在Django的URLconf中进行函数导入的方法
Jul 18 Python
python 字符串只保留汉字的方法
Nov 16 Python
Python 多线程不加锁分块读取文件的方法
Dec 11 Python
python中删除某个元素的方法解析
Nov 05 Python
python循环输出三角形图案的例子
Nov 22 Python
Python实现病毒仿真器的方法示例(附demo)
Feb 19 Python
PIL.Image.open和cv2.imread的比较与相互转换的方法
Jun 03 Python
matplotlib基础绘图命令之bar的使用方法
Aug 13 Python
python产生模拟数据faker库的使用详解
Nov 04 Python
numpy数据类型dtype转换实现
Apr 24 Python
基于tensorflow权重文件的解读
May 26 Python
python cv2图像质量压缩的算法示例
Jun 04 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开发注意事项总结
2015/02/04 PHP
php简单计算页面加载时间的方法
2015/06/19 PHP
php array_multisort 对数组进行排序详解及实例代码
2016/10/27 PHP
JS模拟多线程
2007/02/07 Javascript
jquery tablesorter.js 支持中文表格排序改进
2009/12/09 Javascript
javascript函数中的arguments参数
2010/08/01 Javascript
jQuery的实现原理的模拟代码 -3 事件处理
2010/08/03 Javascript
JQuery将文本转化成JSON对象需要注意的问题
2011/05/09 Javascript
jQuery插件jQuery-JSONP开发ajax调用使用注意事项
2013/11/22 Javascript
使用vue框架 Ajax获取数据列表并用BootStrap显示出来
2017/04/24 Javascript
vue.js学习之vue-cli定制脚手架详解
2017/07/02 Javascript
nodejs接入阿里大鱼短信验证码的方法
2017/07/10 NodeJs
将jquery.qqFace.js表情转换成微信的字符码
2017/12/01 jQuery
Node.js实现注册邮箱激活功能的方法示例
2018/03/23 Javascript
JavaScript日期工具类DateUtils定义与用法示例
2018/09/03 Javascript
vue 解决路由只变化参数页面组件不更新问题
2019/11/05 Javascript
Javascript实现html转pdf高清版(提高分辨率)
2020/02/19 Javascript
javascript实现文字跑马灯效果
2020/06/18 Javascript
Python写的Discuz7.2版faq.php注入漏洞工具
2014/08/06 Python
利用Python的Django框架生成PDF文件的教程
2015/07/22 Python
使用Pyinstaller的最新踩坑实战记录
2017/11/08 Python
Python实现获取本地及远程图片大小的方法示例
2018/07/21 Python
解决Pycharm调用Turtle时 窗口一闪而过的问题
2019/02/16 Python
python3 re返回形式总结
2020/11/20 Python
雪花秀美国官方网站:韩国著名草本护肤化妆品品牌
2016/10/19 全球购物
全球地下的服装和态度:Slam Jam
2018/02/04 全球购物
SportsDirect.com新加坡:英国第一体育零售商
2019/03/30 全球购物
大学生护理专业自荐信
2013/10/03 职场文书
大学军训感言400字
2014/03/11 职场文书
秋季开学典礼主持词
2014/03/19 职场文书
青安岗事迹材料
2014/05/14 职场文书
班训口号大全
2014/06/18 职场文书
四风问题班子对照检查材料
2014/09/27 职场文书
房地产置业顾问工作总结
2015/10/23 职场文书
Python初学者必备的文件读写指南
2021/06/23 Python
Node.js实现爬取网站图片的示例代码
2022/04/04 NodeJs