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

 更新时间:2015年05月30日 12:04:06   作者:xiatwhu  
这篇文章主要介绍了python图像处理之镜像实现方法,实例分析了镜像的实现原理与具体操作方法,需要的朋友可以参考下

本文实例讲述了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的Django框架中创建模板库的方法

    详解在Python的Django框架中创建模板库的方法

    这篇文章主要介绍了在Python的Django框架中创建模板库的方法,模版库通常用来管理单独的Django中的应用,需要的朋友可以参考下
    2015-07-07
  • Pytorch基础教程之torchserve模型部署解析

    Pytorch基础教程之torchserve模型部署解析

    torchserve是基于netty网络框架实现的,底层使用EpollServerSocketChannel服务进行网络通信,通过epoll多路复用技术实现高并发网络连接处理,这篇文章主要介绍了Pytorch基础教程之torchserve模型部署和推理,需要的朋友可以参考下
    2023-07-07
  • Python的函数的一些高阶特性

    Python的函数的一些高阶特性

    这篇文章主要介绍了Python的函数的一些高阶特性,包括函数名用作变量等一些小技巧,需要的朋友可以参考下
    2015-04-04
  • python密码学库pynacl功能介绍

    python密码学库pynacl功能介绍

    PyNaCI能够提供数字签名、密钥加密、公钥加密、哈希和消息身份验证、基于密码的密钥派生和密码散列功能,这篇文章主要介绍了python密码学库pynacl,感兴趣的朋友一起看看吧
    2022-05-05
  • 聊聊基于pytorch实现Resnet对本地数据集的训练问题

    聊聊基于pytorch实现Resnet对本地数据集的训练问题

    本文项目是使用Resnet模型来识别蚂蚁和蜜蜂,其一共有三百九十六张的数据,训练集只有两百多张(数据集很小),运行十轮后,分别对训练集和测试集在每一轮的准确率,对pytorch实现Resnet本地数据集的训练感兴趣的朋友一起看看吧
    2022-03-03
  • OpenCV利用python来实现图像的直方图均衡化

    OpenCV利用python来实现图像的直方图均衡化

    这篇文章主要介绍了OpenCV利用python来实现图像的直方图均衡化,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • 理解python正则表达式

    理解python正则表达式

    这篇文章主要介绍了python正则表达式,在python中,对正则表达式的支持是通过re模块来支持的,想要了解python正则表达式的朋友可以参考一下
    2016-01-01
  • Python二分查找+字符串模板+textwrap模块,

    Python二分查找+字符串模板+textwrap模块,

    这篇文章主要介绍了Python二分查找+字符串模板+textwrap模块,文章围绕主题展开详细内容,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-05-05
  • python 爬取壁纸网站的示例

    python 爬取壁纸网站的示例

    这篇文章主要介绍了python 爬取壁纸网站的示例,帮助大家更好的理解和学习使用python爬虫,感兴趣的朋友可以了解下
    2021-03-03
  • 基于Python实现图像的傅里叶变换

    基于Python实现图像的傅里叶变换

    傅里叶变换是一种函数在空间域和频率域的变换,从空间域到频率域的变换是傅里叶变换,而从频率域到空间域是傅里叶的反变换。这篇文章主要为大家介绍的是通过Python实现图像的傅里叶变换,感兴趣的可以了解一下
    2021-12-12

最新评论