python opencv旋转图像(保持图像不被裁减)


Posted in Python onJuly 26, 2018

本文实例为大家分享了python opencv旋转图像的具体代码,保持图像不被裁减,供大家参考,具体内容如下

# -*- coding:gb2312 -*-
import cv2
from math import *
import numpy as np

img = cv2.imread("3-2.jpg")

height,width=img.shape[:2]

degree=45
#旋转后的尺寸
heightNew=int(width*fabs(sin(radians(degree)))+height*fabs(cos(radians(degree))))
widthNew=int(height*fabs(sin(radians(degree)))+width*fabs(cos(radians(degree))))

matRotation=cv2.getRotationMatrix2D((width/2,height/2),degree,1)

matRotation[0,2] +=(widthNew-width)/2 #重点在这步,目前不懂为什么加这步
matRotation[1,2] +=(heightNew-height)/2 #重点在这步

imgRotation=cv2.warpAffine(img,matRotation,(widthNew,heightNew),borderValue=(255,255,255))

cv2.imshow("img",img)
cv2.imshow("imgRotation",imgRotation)
cv2.waitKey(0)

效果图:

python opencv旋转图像(保持图像不被裁减)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用PYTHON创建XML文档
Mar 01 Python
Python列表(list)常用操作方法小结
Feb 02 Python
Windows下安装python2.7及科学计算套装
Mar 05 Python
python使用pil进行图像处理(等比例压缩、裁剪)实例代码
Dec 11 Python
Pycharm在创建py文件时,自动添加文件头注释的实例
May 07 Python
python获取命令行输入参数列表的实例代码
Jun 23 Python
Pycharm 文件更改目录后,执行路径未更新的解决方法
Jul 19 Python
postman传递当前时间戳实例详解
Sep 14 Python
python树的同构学习笔记
Sep 14 Python
python中seaborn包常用图形使用详解
Nov 25 Python
flask框架url与重定向操作实例详解
Jan 25 Python
20行Python代码实现一款永久免费PDF编辑工具的实现
Aug 27 Python
详解Django中间件的5种自定义方法
Jul 26 #Python
python opencv实现切变换 不裁减图片
Jul 26 #Python
Flask之flask-script模块使用
Jul 26 #Python
对tf.reduce_sum tensorflow维度上的操作详解
Jul 26 #Python
TensorFlow用expand_dim()来增加维度的方法
Jul 26 #Python
Python迭代器与生成器基本用法分析
Jul 26 #Python
Python实现矩阵相乘的三种方法小结
Jul 26 #Python
You might like
php实现网页上一页下一页翻页过程详解
2019/06/28 PHP
利用浏览器全屏api实现js全屏
2014/01/16 Javascript
使用jquery.validate自定义方法实现"手机号码或者固话至少填写一个"的逻辑验证
2014/09/01 Javascript
网页中表单按回车就自动提交的问题的解决方案
2014/11/03 Javascript
jquery中ajax处理跨域的三大方式
2016/01/05 Javascript
设计模式中的组合模式在JavaScript程序构建中的使用
2016/05/18 Javascript
jQuery代码性能优化的10种方法
2016/06/21 Javascript
nodejs利用http模块实现银行卡所属银行查询和骚扰电话验证示例
2016/12/30 NodeJs
JS常用知识点整理
2017/01/21 Javascript
JS查找英文文章中出现频率最高的单词
2017/03/20 Javascript
Vue ElementUI之Form表单验证遇到的问题
2017/08/21 Javascript
Angular4.x通过路由守卫进行路由重定向实现根据条件跳转到相应的页面(推荐)
2018/05/10 Javascript
layui的数据表格+springmvc实现搜索功能的例子
2019/09/28 Javascript
Openlayers实现扩散的动态点(水纹效果)
2020/08/17 Javascript
纯js+css实现在线时钟
2020/08/18 Javascript
[26:50]2018完美盛典DOTA2表演赛
2018/12/17 DOTA
python访问类中docstring注释的实现方法
2015/05/04 Python
Python中函数的参数传递与可变长参数介绍
2015/06/30 Python
python+mongodb数据抓取详细介绍
2017/10/25 Python
python logging日志模块以及多进程日志详解
2018/04/18 Python
python实现手势识别的示例(入门)
2020/04/15 Python
HTML5新增属性data-*和js/jquery之间的交互及注意事项
2017/08/08 HTML / CSS
canvas中普通动效与粒子动效的实现代码示例
2019/01/03 HTML / CSS
Ray-Ban雷朋太阳眼镜英国官网:Ray-Ban UK
2019/11/23 全球购物
俄罗斯香水和化妆品在线商店:Aroma-butik
2020/02/28 全球购物
俄罗斯最大的香水和化妆品网上商店:Randewoo
2020/11/05 全球购物
2014村务公开实施方案
2014/02/25 职场文书
一分钟演讲稿
2014/04/30 职场文书
营销与策划专业求职信
2014/06/20 职场文书
2015年学校总务工作总结
2015/07/20 职场文书
导游词之徐州云龙湖
2019/11/19 职场文书
奇妙的 CSS shapes(CSS图形)
2021/04/05 HTML / CSS
Jupyter notebook 不自动弹出网页的解决方案
2021/05/21 Python
gojs实现蚂蚁线动画效果
2022/02/18 Javascript
Java 获取Word中所有的插入和删除修订的方法
2022/04/06 Java/Android
JavaScript parseInt0.0000005打印5原理解析
2022/07/23 Javascript