使用opencv函数的转置操作+翻转操作实现旋转
使用numpy.rot90实现

def rotateAntiClockWise90(img_file):  # 顺时针旋转90度img = cv2.imread(img_file)trans_img = cv2.transpose(img)img90 = cv2.flip(trans_img, 0)cv2.imshow("rotate", img90)cv2.waitKey(0)return img90def totateAntiClockWise90ByNumpy(img_file):  # np.rot90(img, -1) 顺时针旋转90度   旋转程度:1,2,-1,-2img = cv2.imread(img_file)img90 = np.rot90(img, -1)cv2.imshow("rotate", img90)cv2.waitKey(0)return img90

旋转180度、270度
使用numpy.rot90实现旋转180度、270度

img180 = np.rot90(img, 2)
cv2.imshow("rotate", img180)
cv2.waitKey(0)

旋转任意角度,以任意色值填充背景

import cv2
from math import *
import numpy as np# 旋转angle角度,缺失背景白色(255, 255, 255)填充
def rotate_bound_white_bg(image, angle):# grab the dimensions of the image and then determine the# center(h, w) = image.shape[:2](cX, cY) = (w // 2, h // 2)# grab the rotation matrix (applying the negative of the# angle to rotate clockwise), then grab the sine and cosine# (i.e., the rotation components of the matrix)# -angle位置参数为角度参数负值表示顺时针旋转; 1.0位置参数scale是调整尺寸比例(图像缩放参数),建议0.75M = cv2.getRotationMatrix2D((cX, cY), -angle, 1.0)cos = np.abs(M[0, 0])sin = np.abs(M[0, 1])# compute the new bounding dimensions of the imagenW = int((h * sin) + (w * cos))nH = int((h * cos) + (w * sin))# adjust the rotation matrix to take into account translationM[0, 2] += (nW / 2) - cXM[1, 2] += (nH / 2) - cY# perform the actual rotation and return the image# borderValue 缺失背景填充色彩,此处为白色,可自定义return cv2.warpAffine(image, M, (nW, nH),borderValue=(255,255,255))# borderValue 缺省,默认是黑色(0, 0 , 0)# return cv2.warpAffine(image, M, (nW, nH))img = cv2.imread("dog.png")
imgRotation = rotate_bound_white_bg(img, 45)cv2.imshow("img",img)
cv2.imshow("imgRotation",imgRotation)
cv2.waitKey(0)

python opencv旋转图片相关推荐

  1. python+opencv旋转图片并求旋转之后的特征点坐标

    代码如下: import cv2 import numpy as np def rotate(ps,m):pts = np.float32(ps).reshape([-1, 2]) # 要映射的点pt ...

  2. python opencv 旋转图片

    旋转图像: import numpy as np import argparse import cv2#旋转后图像完整,图像会增大 def rotate_bound(image, angle):(h, ...

  3. python opencv旋转图片_opencv3+python3进行图片旋转处理

    warpAffine参数说明: #def warpAffine(src, M, dsize, dst=None, flags=None, borderMode=None, borderValue=No ...

  4. Python Opencv旋转图片90度

    import numpy as np import cv2img=cv2.imread("/home/lisa/dataset/HandDataSet_720_1280/lisa/image ...

  5. python opencv调节图片亮度与对比度

    python opencv调节图片亮度与对比度 亮度调整是将图像像素的强度整体变大/变小,对比度调整指的是图像暗处变得更暗,亮出变得更亮,从而拓宽某个区域内的显示精度. 创建两个滑动条分别调整对比度和 ...

  6. python opencv 得到图片路径image_path的宽wide、高heigh和深度deep

    python opencv 得到图片路径image_path的宽wide.高heigh和深度deep 图片路径是:'1.jpg' 下面是具体代码: import cv2 #得到图片路径image_pa ...

  7. 2021-01-07 python opencv调节图片亮度与对比度

    python opencv调节图片亮度与对比度 度调整是将图像像素的强度整体变大/变小,对比度调整指的是图像暗处变得更暗,亮出变得更亮,从而拓宽某个区域内的显示精度. 创建两个滑动条分别调整对比度和亮 ...

  8. Python OpenCV去除图片水印

    问题描述 去除百度水印 1.jpg,背景简单 2.jpg,背景复杂 解决方案 安装 pip install opencv-python pip install numpy 方法一.OpenCV提取颜色 ...

  9. python opencv获取图片分辨率_python-opencv遍历图片像素,并对像素进行操作

    看代码: def access_pixels(frame): print(frame.shape) #shape内包含三个元素:按顺序为高.宽.通道数 height = frame.shape[0] ...

最新文章

  1. 【iOS开发-8】UIButton类型属性简单归纳以及自定义按钮的设置
  2. wxWidgets:wxEditableListBox类用法
  3. 【汇编语言学习之路】第一章 汇编语言核心方法论
  4. 快速入门系列之 Rust 语言 GitChat连接
  5. D. Solve The Maze Codeforces Round #648 (Div. 2)
  6. 一步怎么测量图片_测量不容易?15套测量仪器实操手册+自动计算表格,自学也可以...
  7. [机器学习-原理篇]学习之线性回归、岭回归、Lasso回归
  8. PHPCMS修改目录
  9. Firefox历史版本下载
  10. DoYourData AppUninser Mac版(Mac应用卸载工具)
  11. JDK笔记-IO流读写
  12. 【ichart】简单的统计图表ichart.js的使用
  13. Android黑科技之删除系统App
  14. Excel VBA-批量导出图片.vba
  15. 10分钟教你用python做个打飞机(超详细超入门教程)附源代码下载
  16. 2021年春季PAT乙级题解(C语言)
  17. 阿里云深度学习平台试玩
  18. flask----后续
  19. Windows10 常用快捷键
  20. C66X中断整理 6678中断配置(含例程)

热门文章

  1. 程序员的择业/转业机会来啦,先进计算重点突破领域
  2. python读取gzip格式及普通格式网页的方法
  3. uniapp中使用百度API实现全景地图(仅支持H5)
  4. 关于CMS的模板机制的一些讨论
  5. JVM笔记(二)对象的生死与java的四大引用
  6. 2019年二月刷题列表
  7. javafx实现聚光灯效果,圆形和矩形聚光灯效果,类似抠图效果
  8. 战神引擎php启动不了,phpStudy套件版战神引擎服务端架设教程
  9. 阿里云轻量服务器Workbench root远程连接和一键连接的区别
  10. 日常代码工具(快速索引)