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]

degreeAffine=45

#切变换最后结果
heightAffine=height
widthAffine=int(2*height*tan(radians(degreeAffine))+width)

# 随意两点得到仿射变换矩阵
# point1=np.float32([[50,50],[200,50],[50,200]])
# point2=np.float32([[50,50],[100,50],[50,200]])
# matAffine=cv2.getAffineTransform(point1,point2)


#如果结果是正的图片
tempY=(widthAffine+1)/2-width/2
tempX=(heightAffine+1)/2-height/2
temp=np.zeros((heightAffine,widthAffine,3),np.uint8)+255
temp[tempX:(tempX+height),tempY:(tempY+width)]=img
cv2.imshow("temp",temp)


#仿射变换矩阵
matAffine=np.zeros([2,3])
matAffine[0,0]=1
matAffine[0,1]=tan(radians(degreeAffine))
matAffine[0,2]=(widthAffine-width)/2
matAffine[1,0]=0
matAffine[1,1]=1
matAffine[1,2]=(heightAffine-height)/2


imgAfiine=cv2.warpAffine(img,matAffine,(widthAffine,heightAffine),borderValue=(255,255,255))

cv2.imwrite("temp.jpg",temp)
cv2.imwrite("imgAffine.jpg",imgAfiine)
cv2.imshow("imgAffine",imgAfiine)

效果图:

python opencv实现切变换 不裁减图片

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

Python 相关文章推荐
python之模拟鼠标键盘动作具体实现
Dec 30 Python
Python找出9个连续的空闲端口
Feb 01 Python
Python入门_浅谈数据结构的4种基本类型
May 16 Python
Python输出带颜色的字符串实例
Oct 10 Python
python去掉 unicode 字符串前面的u方法
Oct 21 Python
Django中使用 Closure Table 储存无限分级数据
Jun 06 Python
Python_查看sqlite3表结构,查询语句的示例代码
Jul 17 Python
python利用JMeter测试Tornado的多线程
Jan 12 Python
python绘制趋势图的示例
Sep 17 Python
django使用channels实现通信的示例
Oct 19 Python
pandas针对excel处理的实现
Jan 15 Python
pandas map(),apply(),applymap()区别解析
Feb 24 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
python实现泊松图像融合
Jul 26 #Python
python中的decorator的作用详解
Jul 26 #Python
You might like
收听困难?教您超简便短波广播抗干扰方法!
2021/03/01 无线电
PHP分页显示制作详细讲解
2006/10/09 PHP
PHP4在WinXP下IIS和Apache2服务器上的安装实例
2006/10/09 PHP
浅谈PHP 闭包特性在实际应用中的问题
2009/10/30 PHP
解析file_get_contents模仿浏览器头(user_agent)获取数据
2013/06/27 PHP
php教程之魔术方法的使用示例(php魔术函数)
2014/02/12 PHP
PHP addAttribute()函数讲解
2019/02/03 PHP
jquery 打开窗口返回值实现代码
2010/03/04 Javascript
jquery的$getjson调用并获取远程的JSON字符串问题
2012/12/10 Javascript
JQuery实现表格中相同单元格合并示例代码
2013/06/26 Javascript
JS中操作JSON总结
2020/12/06 Javascript
使用jQuery重置(reset)表单的方法
2014/05/05 Javascript
JavaScript中push(),join() 函数 实例详解
2016/09/06 Javascript
基于javascript实现的购物商城商品倒计时实例
2016/12/11 Javascript
JavaScript解析JSON格式数据的方法示例
2017/01/24 Javascript
jQuery时间验证和转换为标准格式的时间格式
2017/03/06 Javascript
Nodejs连接mysql并实现增、删、改、查操作的方法详解
2018/01/04 NodeJs
vue 根据数组中某一项的值进行排序的方法
2018/08/30 Javascript
简单了解JS打开url的方法
2020/02/21 Javascript
Python警察与小偷的实现之一客户端与服务端通信实例
2014/10/09 Python
Python正则表达式经典入门教程
2017/05/22 Python
Python设计模式之工厂方法模式实例详解
2019/01/18 Python
Python传递参数的多种方式(小结)
2019/09/18 Python
如何基于python测量代码运行时间
2019/12/25 Python
python3利用Axes3D库画3D模型图
2020/03/25 Python
利用scikitlearn画ROC曲线实例
2020/07/02 Python
水芝澳美国官网:H2O Plus
2016/10/15 全球购物
Schutz鞋官方网站:Schutz Shoes
2017/12/13 全球购物
C++:局部变量能否和全局变量重名
2014/03/03 面试题
写一个在SQL Server创建表的SQL语句
2012/03/10 面试题
煤矿机修工岗位职责
2014/02/07 职场文书
2015年教师党员承诺书
2015/04/27 职场文书
2015年保险公司内勤工作总结
2015/05/23 职场文书
三傻大闹宝莱坞观后感
2015/06/03 职场文书
旅游安全责任协议书
2016/03/22 职场文书
《语言的突破》读后感3篇
2019/12/12 职场文书