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中super关键字用法实例分析
May 28 Python
Python之日期与时间处理模块(date和datetime)
Feb 16 Python
Python实现爬取需要登录的网站完整示例
Aug 19 Python
python+influxdb+shell编写区域网络状况表
Jul 27 Python
Python读取txt内容写入xls格式excel中的方法
Oct 11 Python
浅谈python 读excel数值为浮点型的问题
Dec 25 Python
Python实现EXCEL表格的排序功能示例
Jun 25 Python
python可视化实现KNN算法
Oct 16 Python
python对Excel按条件进行内容补充(推荐)
Nov 24 Python
tensorflow从ckpt和从.pb文件读取变量的值方式
May 26 Python
利用scikitlearn画ROC曲线实例
Jul 02 Python
Python自动化爬取天眼查数据的实现
Jun 15 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
PHP下一个非常全面获取图象信息的函数
2008/11/20 PHP
php表单请求获得数据求和示例
2014/05/15 PHP
PHP基于imap获取邮件实例
2014/11/11 PHP
php实现用于计算执行时间的类实例
2015/04/18 PHP
CodeIgniter中使用Smarty3基本配置
2015/06/29 PHP
PHP数组操作类实例
2015/07/11 PHP
PHP将整数数字转换为罗马数字实例分享
2019/03/17 PHP
推荐:极酷右键菜单
2006/11/29 Javascript
jQuery的一些注意
2006/12/06 Javascript
ajax 文件上传应用简单实现
2009/03/03 Javascript
Jquery乱码的一次解决过程 图解教程
2010/02/20 Javascript
jquery延迟加载外部js实现代码
2013/01/11 Javascript
javascript基础之查找元素的详细介绍(访问节点)
2013/07/05 Javascript
js中一维数组和二位数组中的几个问题示例说明
2014/07/17 Javascript
javascript数组去重的方法汇总
2015/04/14 Javascript
jquery实现未经美化的简洁TAB菜单效果
2015/08/28 Javascript
JQuery核心函数是什么及使用方法介绍
2016/05/03 Javascript
JS使用正则表达式过滤多个词语并替换为相同长度星号的方法
2016/08/03 Javascript
vue源码学习之Object.defineProperty 对数组监听
2018/05/30 Javascript
使用koa-log4管理nodeJs日志笔记的使用方法
2018/11/30 NodeJs
基于Vue2实现移动端图片上传、压缩、拖拽排序、拖拽删除功能
2021/01/05 Vue.js
[01:32]TI奖金增速竟因它再创新高!DOTA2勇士令状不朽珍藏Ⅰ饰品欣赏
2018/05/18 DOTA
python清除字符串里非字母字符的方法
2015/07/02 Python
对python 矩阵转置transpose的实例讲解
2018/04/17 Python
Python 利用pydub库操作音频文件的方法
2019/01/09 Python
Python 常用模块 re 使用方法详解
2019/06/06 Python
pycharm 更改创建文件默认路径的操作
2020/02/15 Python
浅谈Python中的生成器和迭代器
2020/06/19 Python
TensorFlow-gpu和opencv安装详细教程
2020/06/30 Python
Pat McGrath Labs官网:世界上最有影响力的化妆师推出的彩妆品牌
2018/01/07 全球购物
开会迟到检讨书
2014/02/03 职场文书
乡镇消防工作实施方案
2014/03/27 职场文书
机械工程师岗位职责
2014/06/16 职场文书
单位介绍信格式范文
2015/05/04 职场文书
公司会议开幕词
2016/03/03 职场文书
「约定的梦幻岛」作画发布诺曼生日新绘
2022/03/21 日漫