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 collections模块实例讲解
Apr 07 Python
9种python web 程序的部署方式小结
Jun 30 Python
用python删除java文件头上版权信息的方法
Jul 31 Python
Python操作RabbitMQ服务器实现消息队列的路由功能
Jun 29 Python
python添加模块搜索路径方法
Sep 11 Python
浅谈Python Opencv中gamma变换的使用详解
Apr 02 Python
python+opencv实现高斯平滑滤波
Jul 21 Python
Python安装selenium包详细过程
Jul 23 Python
Python人工智能之路 jieba gensim 最好别分家之最简单的相似度实现
Aug 13 Python
使用Python通过oBIX协议访问Niagara数据的示例
Dec 04 Python
linux centos 7.x 安装 python3.x 替换 python2.x的过程解析
Dec 14 Python
Python实现自动玩连连看的脚本分享
Apr 04 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
加速XP搜索功能堪比vista
2007/03/22 PHP
php入门学习知识点三 PHP上传
2011/07/14 PHP
php 文件缓存函数
2011/10/08 PHP
symfony2.4的twig中date用法分析
2016/03/18 PHP
PHP使用mysqli同时执行多条sql查询语句的实例
2019/03/22 PHP
(jQuery,mootools,dojo)使用适合自己的编程别名命名
2010/09/14 Javascript
javascript 学习笔记(八)javascript对象
2011/04/12 Javascript
使用jquery实现以post打开新窗口
2014/03/19 Javascript
jquery控制display属性为none或block
2014/03/31 Javascript
Javascript数据结构与算法之列表详解
2015/03/12 Javascript
Node.js 去掉种子(torrent)文件里的邪恶信息
2015/03/27 Javascript
JavaScript动态修改弹出窗口大小的方法
2015/04/06 Javascript
原生js和jQuery写的网页选项卡特效对比
2015/04/27 Javascript
举例详解AngularJS中ngShow和ngHide的使用方法
2015/06/19 Javascript
JavaScript调试的多个必备小Tips
2017/01/15 Javascript
jQuery实现简单的下拉菜单导航功能示例
2017/12/07 jQuery
Vue 引入AMap高德地图的实现代码
2019/04/29 Javascript
Typescript 中的 interface 和 type 到底有什么区别详解
2019/06/18 Javascript
Vant 在vue-cli 4.x中按需加载操作
2020/11/05 Javascript
Django的URLconf中使用缺省视图参数的方法
2015/07/18 Python
Python 中的Selenium异常处理实例代码
2018/05/03 Python
django框架事务处理小结【ORM 事务及raw sql,customize sql 事务处理】
2019/06/27 Python
python 非线性规划方式(scipy.optimize.minimize)
2020/02/11 Python
Python headers请求头如何实现快速添加
2020/11/03 Python
Django利用elasticsearch(搜索引擎)实现搜索功能
2020/11/26 Python
斯洛伐克时尚服装网上商店:Cellbes
2016/10/20 全球购物
数百万免费的图形资源:Freepik
2020/09/21 全球购物
女大学生个人求职信
2013/12/09 职场文书
建筑工程专业学生的自我评价
2013/12/25 职场文书
大学军训感言200字
2014/02/26 职场文书
应聘教师自荐信
2015/03/26 职场文书
转正申请报告格式
2015/05/15 职场文书
单位证明范文
2015/06/18 职场文书
谁动了我的奶酪读书笔记
2015/06/30 职场文书
《遗弃》开发商删推文要跑路?官方回应:还在开发
2022/04/03 其他游戏
python 闭包函数详细介绍
2022/04/19 Python