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根据出生年份简单计算生肖的方法
Mar 27 Python
使用Python的Flask框架来搭建第一个Web应用程序
Jun 04 Python
Python3.4编程实现简单抓取爬虫功能示例
Sep 14 Python
Python判断两个list是否是父子集关系的实例
May 04 Python
python粘包问题及socket套接字编程详解
Jun 29 Python
python web框架中实现原生分页
Sep 08 Python
python 字段拆分详解
Dec 17 Python
在python中使用nohup命令说明
Apr 16 Python
Python decimal模块使用方法详解
Jun 08 Python
python用tkinter实现一个gui的翻译工具
Oct 26 Python
python字符串拼接.join()和拆分.split()详解
Nov 23 Python
Elasticsearch 索引操作和增删改查
Apr 19 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
ftp类(example.php)
2006/10/09 PHP
需要发散思维学习PHP
2009/06/29 PHP
PHP中ltrim与rtrim去除左右空格及特殊字符实例
2016/01/07 PHP
php用正则判断是否为数字的方法
2016/03/25 PHP
php解析xml 的四种简单方法(附实例)
2016/07/11 PHP
yii2中LinkPager增加总页数和总记录数的实例
2017/08/28 PHP
Laravel框架自定义验证过程实例分析
2019/02/01 PHP
JS 统计时间
2021/03/09 Javascript
jqgrid 简单学习笔记
2011/05/03 Javascript
Jquery动态进行图片缩略的原理及实现
2013/08/13 Javascript
js中如何复制一个对象并获取其所有属性和属性对应的值
2013/10/24 Javascript
在HTML中插入JavaScript代码的示例
2015/06/03 Javascript
jquery实现带缩略图的全屏图片画廊效果实例
2015/06/25 Javascript
微信小程序scroll-view组件实现滚动动画
2018/01/31 Javascript
解决Vue中mounted钩子函数获取节点高度出错问题
2018/05/18 Javascript
微信小程序实现类似微信点击语音播放效果
2020/03/30 Javascript
微信小程序swiper使用网络图片不显示问题解决
2019/12/13 Javascript
js实现旋转木马轮播图效果
2020/01/10 Javascript
JavaScript enum枚举类型定义及使用方法
2020/05/15 Javascript
使用JavaScript获取Django模板指定键值数据
2020/05/27 Javascript
Vue实现简易购物车页面
2020/12/30 Vue.js
常见python正则用法的简单实例
2016/06/21 Python
python中 chr unichr ord函数的实例详解
2017/08/06 Python
Python中单线程、多线程和多进程的效率对比实验实例
2019/05/14 Python
Tensorflow中批量读取数据的案列分析及TFRecord文件的打包与读取
2020/06/30 Python
美国在线奢侈品寄售商店:Luxury Garage Sale
2018/08/19 全球购物
新加坡网上花店:FlowerAdvisor新加坡
2018/10/05 全球购物
党的群众路线教育实践活动学习心得体会
2014/03/03 职场文书
借款协议书
2014/04/12 职场文书
管理建议书范文
2014/05/13 职场文书
国庆节演讲稿范文2014
2014/09/19 职场文书
党的群众路线教育实践活动个人整改落实情况汇报
2014/10/28 职场文书
品牌形象定位,全面分析
2019/07/23 职场文书
100句拼搏进取的名言警句,值得一读!
2019/10/07 职场文书
Element-ui Layout布局(Row和Col组件)的实现
2021/12/06 Vue.js
《我的美好婚事》动画化决定纪念插画与先导PV公开
2022/04/06 日漫