当前位置: 首页 > news >正文

电子商务网站开发的目的是什么室内设计专业公司排名

电子商务网站开发的目的是什么,室内设计专业公司排名,广州正规网站建设,宁波seo咨询《数字图像处理-OpenCV/Python》连载#xff08;41#xff09;图像的旋转 本书京东优惠购书链接#xff1a;https://item.jd.com/14098452.html 本书CSDN独家连载专栏#xff1a;https://blog.csdn.net/youcans/category_12418787.html 第 6 章 图像的几何变换 几何变换分…《数字图像处理-OpenCV/Python》连载41图像的旋转 本书京东优惠购书链接https://item.jd.com/14098452.html 本书CSDN独家连载专栏https://blog.csdn.net/youcans/category_12418787.html 第 6 章 图像的几何变换 几何变换分为等距变换、相似变换、仿射变换和投影变换是指对图像的位置、大小、形状和投影进行变换将图像从原始平面投影到新的视平面。OpenCV图像的几何变换本质上是将一个多维数组通过映射关系转换为另一个多维数组。 本章内容概要 介绍仿射变换学习使用仿射变换矩阵实现图像的仿射变换。学习使用函数实现图像的平移、缩放、旋转、翻转和斜切。介绍投影变换学习使用投影变换矩阵实现图像的投影变换。介绍图像的重映射学习使用映射函数实现图像的自定义变换和动态变换。 6.1 图像的旋转 旋转变换属于等距变换变换后图像的长度和面积不变。 图像以左上角(0,0)为旋转中心、以旋转角度 θ 顺时针旋转可以构造旋转变换矩阵 MAR通过函数 cv.warpAffine 计算旋转变换图像。 [ x ~ y ~ 1 ] M A R [ x y 1 ] , M A R [ c o s θ − s i n θ 0 s i n θ c o s θ 0 0 0 1 ] \begin{bmatrix} \tilde{x}\\ \tilde{y}\\ 1 \end{bmatrix} M_{AR} \begin{bmatrix} x\\ y\\ 1 \end{bmatrix} ,\hspace{1em} M_{AR} \begin{bmatrix} cos \theta -sin \theta 0\\ sin \theta cos \theta 0\\ 0 0 1 \end{bmatrix} ​x~y~​1​ ​MAR​ ​xy1​ ​,MAR​ ​cosθsinθ0​−sinθcosθ0​001​ ​ 图像以任意点(x,y)为旋转中心、以旋转角度 顺时针旋转可以先将原点平移到旋转中心(x,y)再对原点进行旋转处理最后反向平移回坐标原点。 OpenCV中的函数cv.getRotationMatrix2D可以计算以任意点为中心的旋转变换矩阵。 函数原型 cv.getRotationMatrix2D(center, angle, scale) → M 函数cv.getRotationMatrix2D能根据旋转中心和旋转角度计算旋转变换矩阵M M [ α β ( 1 − α ) x − β y − β α β x ( 1 − α ) y ] M \begin{bmatrix} \alpha \beta (1-\alpha)x-\beta y\\ -\beta \alpha \beta x (1-\alpha) y \end{bmatrix} M[α−β​βα​(1−α)x−βyβx(1−α)y​] 参数说明 center旋转中心坐标格式为元组(x,y)。angle旋转角度角度制以逆时针方向旋转。scale缩放系数是浮点型数据。M旋转变换矩阵是形状为(2,3)、类型为np.float32的Numpy数组。 注意问题 1函数可以直接获取以任意点为中心的旋转变换矩阵不需要额外进行平移变换。 2 如果旋转图像的尺寸与原始图像的尺寸相同则四角的像素会被切除见图6-3(2)。为了保留原始图像的内容需要在旋转的同时对图像进行缩放或将旋转图像的尺寸调整为 W r o t w c o s θ h s i n θ H r o t h c o s θ w s i n θ W_{rot} w cos \theta h sin \theta \\ H_{rot} h cos \theta w sin \theta Wrot​wcosθhsinθHrot​hcosθwsinθ 式中w、h分别为原始图像的宽度与高度 、 分别为旋转图像的宽度与高度。 3 缩放系数scale在旋转的同时能进行缩放但水平、垂直方向必须使用相同的缩放比例。 函数cv.rotate用于直角旋转旋转角度为90度、180度或270度。该方法通过矩阵转置实现运行速度极快。 函数原型 cv.rotate(src, rotateCode[, dst]) → dst 参数说明 src输入图像是Numpy数组。dst输出图像类型与src相同图像尺寸由旋转角度确定。rotateCode旋转标志符。 ROTATE_90_CLOCKWISE顺时针旋转90度。ROTATE_180顺时针旋转180度。ROTATE_90_COUNTERCLOCKWISE顺时针旋转270度。 注意问题 旋转角度为180度时输出图像的尺寸与输入图像的尺寸相同旋转角度为90度或180度时输出图像的高度和宽度分别等于输入图像的宽度和高度。 【例程0603】图像的旋转 本例程介绍以原点为旋转中心、以任意点为旋转中心旋转图像以及图像的直角旋转。 # 【0603】图像的旋转 import cv2 as cv import numpy as np from matplotlib import pyplot as pltif __name__ __main__:img cv.imread(../images/Fig0301.png) # 读取彩色图像(BGR)height, width img.shape[:2] # 图像的高度和宽度# (1) 以原点为旋转中心x0, y0 0, 0 # 以左上角顶点 (0,0) 作为旋转中心theta, scale 30, 1.0 # 逆时针旋转 30 度缩放系数 1.0MAR0 cv.getRotationMatrix2D((x0,y0), theta, scale) # 旋转变换矩阵imgRot1 cv.warpAffine(img, MAR0, (width, height)) # (2) 以任意点为旋转中心x0, y0 width//2, height//2 # 以图像中心作为旋转中心angle theta * np.pi/180 # 弧度-角度wRot int(width * np.cos(angle) height * np.sin(angle)) # 调整宽度hRot int(height * np.cos(angle) width * np.sin(angle)) # 调整高度scale width/wRot # 根据 wRot 调整缩放系数MAR1 cv.getRotationMatrix2D((x0,y0), theta, 1.0) # 逆时针旋转 30 度缩放系数 1.0MAR2 cv.getRotationMatrix2D((x0,y0), theta, scale) # 逆时针旋转 30 度缩放比例 scaleimgRot2 cv.warpAffine(img, MAR1, (height, width), borderValue(255,255,255)) # 白色填充imgRot3 cv.warpAffine(img, MAR2, (height, width)) # 调整缩放系数以保留原始图像的内容print(img.shape, imgRot2.shape, imgRot3.shape, scale)# (3) 图像的直角旋转imgRot90 cv.rotate(img, cv.ROTATE_90_CLOCKWISE) # 顺时针旋转 90度imgRot180 cv.rotate(img, cv.ROTATE_180) # 顺时针旋转 180度imgRot270 cv.rotate(img, cv.ROTATE_90_COUNTERCLOCKWISE) # 顺时针旋转 270度plt.figure(figsize(9, 6))plt.subplot(231), plt.title(1.Rotate around the origin), plt.axis(off)plt.imshow(cv.cvtColor(imgRot1, cv.COLOR_BGR2RGB))plt.subplot(232), plt.title(2.Rotate around the center), plt.axis(off)plt.imshow(cv.cvtColor(imgRot2, cv.COLOR_BGR2RGB))plt.subplot(233), plt.title(3.Rotate and resize), plt.axis(off)plt.imshow(cv.cvtColor(imgRot3, cv.COLOR_BGR2RGB))plt.subplot(234), plt.title(4.Rotate 90 degrees), plt.axis(off)plt.imshow(cv.cvtColor(imgRot90, cv.COLOR_BGR2RGB))plt.subplot(235), plt.title(5.Rotate 180 degrees), plt.axis(off)plt.imshow(cv.cvtColor(imgRot180, cv.COLOR_BGR2RGB))plt.subplot(236), plt.title(6.Rotate 270 degrees), plt.axis(off)plt.imshow(cv.cvtColor(imgRot270, cv.COLOR_BGR2RGB))plt.tight_layout()plt.show() 程序说明 运行结果图像的旋转如图6-3所示。 1 图6-3(1)(3)用函数cv.getRotationMatrix2D计算旋转变换矩阵后通过函数cv.warpAffine计算旋转变换图像。图6-3(1)以图像原点即左上角为中心旋转图6-3(2)和图6-3(3)围绕图像中心点旋转变换。 2 图像尺寸不变中心旋转后四角像素被切除见图6-3(2)。在计算旋转变换矩阵时使用了缩放系数使旋转图像保留了原始图像的内容见图6-3(3)。 3 图6-3(4)(6)所示都是直角旋转使用函数cv.rotate通过矩阵转置实现。 *图6-3 图像的旋转 版权声明 youcansxupt 原创作品转载必须标注原文链接(https://blog.csdn.net/youcans/article/details/134317103) Copyright 2023 youcans, XUPT Crated2023-11-11 欢迎关注本书CSDN独家连载专栏 《数字图像处理-OpenCV/Python》连载: https://blog.csdn.net/youcans/category_12418787.html
http://www.huolong8.cn/news/22217/

相关文章:

  • 外国的网站 ftp吃什么补肾最快
  • 聊城网站建设 推广聊城博达河北中凯建设有限公司网站
  • 设计一个个人网站陕西网络推广维护
  • 绿色 网站 源码图文设计与制作
  • 网站怎样做淘宝客做个类似淘宝的网站怎么做
  • 网站制作软件是什么seo软件优化工具软件
  • 成都企业网站建设哪家专业建筑设计专业是干什么的
  • 淘客单网站自定义wordpress背景图
  • 通辽网站建设0475seo沈阳最新新闻事件今天
  • o2o网站策划设计公司网站官网
  • 用ps做网站设计中国华能集团电子商务平台
  • 云南网站建设优化网络系统管理比赛内容
  • dede免费网站模板下载个人智慧团建系统登录
  • 做采集的网站有流量吗售房网站模板
  • 创业网站建设方案项目书深圳龙华好还是龙岗好
  • 资源网站模板下载wordpress空间推荐
  • 博客网站怎么做免费地方门户网站系统
  • 网站的规划与建设 按时间顺序福州台江区网站建设
  • 如何做新闻源网站英雄联盟更新公告最新
  • 基于c 的网站开发网站开发售后服务
  • 中国都有哪些网站南宁网站建设nnxun
  • 怎么在手机上做微电影网站做网站题材
  • 响应式网站搭建百度小程序广东建设集团
  • 甘肃路桥建设集团网站关键词优化搜索引擎
  • 重庆做网站嘉兴公司网络信息设计是什么专业
  • 建设银行内部网站源码长沙装修公司排名前十名
  • 如何提高网站在搜索引擎中的排名北京品牌网站建设公司排名
  • 宁波网站设计制作长久新开传奇网站
  • 网站名称查询微信打字赚钱平台30元
  • 用windows搭建手机网站二级域名解析查询