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 相关文章推荐
400多行Python代码实现了一个FTP服务器
May 10 Python
python多线程用法实例详解
Jan 15 Python
Python简单网络编程示例【客户端与服务端】
May 26 Python
python中如何使用正则表达式的非贪婪模式示例
Oct 09 Python
python使用 HTMLTestRunner.py生成测试报告
Oct 20 Python
Python SQL查询并生成json文件操作示例
Aug 17 Python
python 快速把超大txt文件转存为csv的实例
Oct 26 Python
python操作excel让工作自动化
Aug 09 Python
matlab中imadjust函数的作用及应用举例
Feb 27 Python
keras处理欠拟合和过拟合的实例讲解
May 25 Python
Pytorch之扩充tensor的操作
Mar 04 Python
numpy array找出符合条件的数并赋值的示例代码
Jun 01 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
Discuz!X中SESSION机制实例详解
2015/09/23 PHP
5 cool javascript apps
2007/03/24 Javascript
Extjs学习过程中新手容易碰到的低级错误积累
2010/02/11 Javascript
location.href 在IE6中不跳转的解决方法与推荐使用代码
2010/07/08 Javascript
jBox 2.3基于jquery的最新多功能对话框插件 常见使用问题解答
2011/11/10 Javascript
实践中学习AngularJS表单
2016/03/21 Javascript
Bootstrap每天必学之轮播(Carousel)插件
2016/04/25 Javascript
AngularJS在IE下取数据总是缓存问题的解决方法
2016/08/05 Javascript
微信小程序遇到修改数据后页面不渲染的问题解决
2017/03/09 Javascript
underscore之Collections_动力节点Java学院整理
2017/07/10 Javascript
Vue实现base64编码图片间的切换功能
2019/12/04 Javascript
解决vue 给window添加和移除resize事件遇到的坑
2020/07/21 Javascript
python的id()函数介绍
2013/02/10 Python
Python实现针对给定字符串寻找最长非重复子串的方法
2018/04/21 Python
python3.6实现学生信息管理系统
2019/02/21 Python
Python matplotlib画图与中文设置操作实例分析
2019/04/23 Python
pycharm中导入模块错误时提示Try to run this command from the system terminal
2020/03/26 Python
HTML5微信播放全屏问题的解决方法
2017/03/09 HTML / CSS
Nuts.com:优质散装,批发坚果、干果和巧克力等
2017/03/21 全球购物
英国花园、DIY、电器和家居用品商店:Robert Dyas
2019/03/18 全球购物
应届生财务会计求职信
2013/11/05 职场文书
大学生职业生涯规划书范文
2014/01/04 职场文书
新闻编辑专业毕业自荐书范文
2014/02/05 职场文书
学生会宣传部部长竞选演讲稿
2014/04/25 职场文书
竞选班干部演讲稿400字
2014/08/20 职场文书
技术入股合作协议书
2014/10/07 职场文书
幼儿园小班个人工作总结
2015/02/12 职场文书
计算机专业自荐信
2015/03/05 职场文书
医院合作意向书范本
2015/05/08 职场文书
故意杀人案辩护词
2015/05/21 职场文书
转学证明范本
2015/06/19 职场文书
行政处罚告知书
2015/07/01 职场文书
学生会副主席竞选稿
2015/11/19 职场文书
mysql 8.0.24版本安装配置方法图文教程
2021/05/12 MySQL
Win10 最新稳定版本 21H2开始推送
2022/04/19 数码科技
Python中使用tkFileDialog实现文件选择、保存和路径选择
2022/05/20 Python