python 图像平移和旋转的实例


Posted in Python onJanuary 10, 2019

如下所示:

import cv2
import math
import numpy as np
def move(img):
 height, width, channels = img.shape
 emptyImage2 = img.copy()
 x=20
 y=20
 for i in range(height):
 for j in range(width):
 if i>=x and j>=y:
  emptyImage2[i,j]=img[i-x][j-y]
 else:
  emptyImage2[i,j]=(0,0,0)
 
 
 return emptyImage2
 
 
img = cv2.imread("e:\\lena.bmp")
 
cv2.namedWindow("Image")
SaltImage=move(img)
cv2.imshow("Image",img)
cv2.imshow("ss",SaltImage)
cv2.waitKey(0)

旋转:

import cv2
import math
import numpy as np
def XRotate(image, angle):
 h, w, channels = image.shape
 anglePi = angle * math.pi / 180.0
 cosA = math.cos(anglePi)
 sinA = math.sin(anglePi)
 X1 = math.ceil(abs(0.5 * h * cosA + 0.5 * w * sinA))
 X2 = math.ceil(abs(0.5 * h * cosA - 0.5 * w * sinA))
 Y1 = math.ceil(abs(-0.5 * h * sinA + 0.5 * w * cosA))
 Y2 = math.ceil(abs(-0.5 * h * sinA - 0.5 * w * cosA))
 hh = int(2 * max(Y1, Y2))
 ww = int(2 * max(X1, X2))
 emptyImage2 = np.zeros((hh, ww, channels), np.uint8)
 for i in range(hh):
 for j in range(ww):
  x = cosA * i + sinA * j - 0.5 * ww * cosA - 0.5 * hh * sinA + 0.5 * w
  y = cosA * j- sinA * i+ 0.5 * ww * sinA - 0.5 * hh * cosA + 0.5 * h
  x = int(x)
  y = int(y)
  if x > -1 and x < h and y > -1 and y < w :
 
  emptyImage2[i, j] = image[x, y]
 
 return emptyImage2
 
 
image = cv2.imread("e:\\lena.bmp")
iXRotate12 = XRotate(image, 30)
cv2.imshow('image', image)
cv2.imshow('iXRotate12', iXRotate12)
cv2.waitKey(0)

以上这篇python 图像平移和旋转的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用python检测手机QQ在线状态的脚本代码
Feb 10 Python
50行代码实现贪吃蛇(具体思路及代码)
Apr 27 Python
Django自定义manage命令实例代码
Feb 11 Python
对pandas进行数据预处理的实例讲解
Apr 20 Python
解决Pandas to_json()中文乱码,转化为json数组的问题
May 10 Python
python3实现爬取淘宝美食代码分享
Sep 23 Python
浅谈Python中(&amp;,|)和(and,or)之间的区别
Aug 07 Python
python 多进程共享全局变量之Manager()详解
Aug 15 Python
应用OpenCV和Python进行SIFT算法的实现详解
Aug 21 Python
Python运行提示缺少模块问题解决方案
Apr 02 Python
python利用platform模块获取系统信息
Oct 09 Python
利用python进行文件操作
Dec 04 Python
Python设计模式之解释器模式原理与用法实例分析
Jan 10 #Python
详解pandas安装若干异常及解决方案总结
Jan 10 #Python
Python 从一个文件中调用另一个文件的类方法
Jan 10 #Python
关于python下cv.waitKey无响应的原因及解决方法
Jan 10 #Python
Python设计模式之迭代器模式原理与用法实例分析
Jan 10 #Python
Python设计模式之桥接模式原理与用法实例分析
Jan 10 #Python
Python基础教程之异常详解
Jan 10 #Python
You might like
php构造函数的继承方法
2015/02/09 PHP
CI框架实现cookie登陆的方法详解
2016/05/18 PHP
PHPMailer使用QQ邮箱实现邮件发送功能
2017/08/18 PHP
Javascript实例教程(19) 使用HoTMetal(6)
2006/12/23 Javascript
JS中字符问题(二进制/十进制/十六进制及ASCII码之间的转换)
2008/11/03 Javascript
javascript HTMLEncode HTMLDecode的完整实例(兼容ie和火狐)
2009/06/02 Javascript
初窥JQuery(二) 事件机制(1)
2010/11/25 Javascript
js 日期比较相关天数代码
2014/04/02 Javascript
javascript设计模式之解释器模式详解
2014/06/05 Javascript
JS之相等操作符详解
2016/09/13 Javascript
从零开始学习Node.js系列教程四:多页面实现数学运算的client端和server端示例
2017/04/13 Javascript
Vue学习笔记进阶篇之多元素及多组件过渡
2017/07/19 Javascript
Vue父组件如何获取子组件中的变量
2019/07/24 Javascript
微信小程序swiper禁止用户手动滑动代码实例
2019/08/23 Javascript
JS Html转义和反转义(html编码和解码)的实现与使用方法总结
2020/03/10 Javascript
javascript 设计模式之享元模式原理与应用详解
2020/04/08 Javascript
python数据结构树和二叉树简介
2014/04/29 Python
举例详解Python中yield生成器的用法
2015/08/05 Python
python正则分析nginx的访问日志
2017/01/17 Python
python爬取足球直播吧五大联赛积分榜
2018/06/13 Python
使用Python+wxpy 找出微信里把你删除的好友实例
2019/02/21 Python
python opencv 二值化 计算白色像素点的实例
2019/07/03 Python
Python实现计算长方形面积(带参数函数demo)
2020/01/18 Python
重写django的model下的objects模型管理器方式
2020/05/15 Python
python代码实现将列表中重复元素之间的内容全部滤除
2020/05/22 Python
tensorflow实现残差网络方式(mnist数据集)
2020/05/26 Python
Origins悦木之源英国官网:雅诗兰黛集团高端植物护肤品牌
2017/11/06 全球购物
乌克兰设计师和品牌的服装:Love&Live
2020/04/14 全球购物
个人实用简单的自我评价
2013/10/19 职场文书
总经理岗位职责
2013/11/09 职场文书
自我推荐书
2013/12/04 职场文书
违反工作纪律检讨书
2014/02/15 职场文书
节约用电标语
2014/06/17 职场文书
《穷人》教学反思
2016/02/19 职场文书
送给教师们,到底该如何写好教学反思?
2019/07/02 职场文书
python通过函数名调用函数的几种方法总结
2021/06/07 Python