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访问纯真IP数据库的代码
May 19 Python
python3.x上post发送json数据
Mar 04 Python
Django框架实现逆向解析url的方法
Jul 04 Python
Python3批量生成带logo的二维码方法
Jun 24 Python
python读出当前时间精度到秒的代码
Jul 05 Python
nginx+uwsgi+django环境搭建的方法步骤
Nov 25 Python
python3 图片 4通道转成3通道 1通道转成3通道 图片压缩实例
Dec 03 Python
使用 Python 遍历目录树的方法
Feb 29 Python
Python configparser模块常用方法解析
May 22 Python
Python中SQLite如何使用
May 27 Python
Python数据清洗工具之Numpy的基本操作
Apr 22 Python
PyTorch 如何自动计算梯度
May 23 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 模拟GMAIL,HOTMAIL(MSN),YAHOO,163,126邮箱登录的详细介绍
2013/06/18 PHP
多个PHP中文字符串截取函数
2013/11/12 PHP
php连接odbc数据源并保存与查询数据的方法
2014/12/24 PHP
详解WordPress中用于合成数组的wp_parse_args()函数
2015/12/18 PHP
PHP封装curl的调用接口及常用函数详解
2018/05/31 PHP
Javascript - HTML的request类
2006/07/15 Javascript
网页javascript精华代码集
2007/01/24 Javascript
JavaScript取得鼠标绝对位置程序代码介绍
2012/09/16 Javascript
event对象获取方法总结在google浏览器下测试
2013/11/03 Javascript
JavaScript中解析JSON数据的三种方法
2015/07/03 Javascript
js图片轮播特效代码分享
2015/09/07 Javascript
Knockoutjs 学习系列(一)ko初体验
2016/06/07 Javascript
详解react如何在组件中获取路由参数
2017/06/15 Javascript
深入学习JavaScript中的bom
2019/05/27 Javascript
通过实例解析js简易模块加载器
2019/06/17 Javascript
微信小程序使用canvas自适应屏幕画海报并保存图片功能
2019/07/25 Javascript
javascript中导出与导入实现模块化管理教程
2020/12/03 Javascript
[01:37]全新的一集《真视界》——TI7总决赛
2017/09/21 DOTA
[42:23]完美世界DOTA2联赛PWL S3 Forest vs Rebirth 第二场 12.10
2020/12/13 DOTA
python实现决策树
2017/12/21 Python
python创造虚拟环境方法总结
2019/03/04 Python
浅析Python3中的对象垃圾收集机制
2019/06/06 Python
Python qrcode 生成一个二维码的实例详解
2020/02/12 Python
Python编程快速上手——正则表达式查找功能案例分析
2020/02/28 Python
python使用建议与技巧分享(一)
2020/08/17 Python
python GUI计算器的实现
2020/10/09 Python
python 批量下载bilibili视频的gui程序
2020/11/20 Python
绢花、人造花和人造花卉:BLOOM
2019/08/07 全球购物
产品工艺师的岗位职责
2013/11/15 职场文书
单位领导证婚词
2014/01/14 职场文书
家长会欢迎词
2015/01/23 职场文书
2015年青年志愿者工作总结
2015/05/20 职场文书
家长会开场白和结束语
2015/05/29 职场文书
少先队中队工作总结2015
2015/07/23 职场文书
普希金诗歌赏析(6首)
2019/08/22 职场文书
Python MNIST手写体识别详解与试练
2021/11/07 Python