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

湖北省利川市建设局网站wordpress通栏

湖北省利川市建设局网站,wordpress通栏,南京网站建设策划方案,怎么在南京人社网站做失业登记文章目录 一、向量和矩阵的基本运算二、几何基元和变换1、几何基元(Geometric Primitives)2、几何变换(Geometric Transformations)1. 各种变换的关系2. 变换公式3. 2D变换的层次4. python实现 一、向量和矩阵的基本运算 【计算机视觉】二、图像形成#xff1a;1、向量和矩阵… 文章目录 一、向量和矩阵的基本运算二、几何基元和变换1、几何基元(Geometric Primitives)2、几何变换(Geometric Transformations)1. 各种变换的关系2. 变换公式3. 2D变换的层次4. python实现 一、向量和矩阵的基本运算 【计算机视觉】二、图像形成1、向量和矩阵的基本运算线性变换与齐次坐标 二、几何基元和变换 1、几何基元(Geometric Primitives) 几何基元是计算机图形学中最基本的图形对象,它们是构建更复杂图形的基础单元。常见的几何基元包括: 点(Point): 由一对或一组坐标值表示的零维对象。线段(Line Segment): 由两个端点确定的一维对象。多边形(Polygon): 由一系列顶点连接而成的闭合平面图形,是二维对象。曲线(Curve): 由一系列控制点和方程确定的平滑曲线,如贝塞尔曲线、样条曲线等。圆(Circle): 由一个圆心和半径确定的二维闭合曲线。球体(Sphere): 由一个球心和半径确定的三维闭合曲面。 这些基本的几何基元可以通过组合、变换等操作构建出更加复杂的图形对象,如三维模型、场景等。 2、几何变换(Geometric Transformations) 几何变换是针对几何基元进行的一系列操作,用于改变其位置、大小、形状或其他属性。常见的几何变换包括: 平移变换(Translation): 沿着一个向量移动对象的位置。旋转变换(Rotation): 围绕一个点或轴旋转对象。缩放变换(Scaling): 改变对象的大小,可以是统一缩放或按不同比例缩放。剪切变换(Shearing): 沿着一个方向倾斜对象。反射变换(Reflection): 沿着一条线或一个平面对称地反射对象。 上述变换可以分为 刚体变换 (如平移和旋转)和 非刚体变换 (如缩放、剪切和反射)。刚体变换不改变对象的形状和大小,只改变其位置和方向。非刚体变换会改变对象的形状或大小。此外,还有一些更复杂的变换: 欧几里得变换刚体变换等距变换相似变换(Similarity Transformation): 包括欧几里得变换和等比例缩放。仿射变换(Affine Transformation): 包括相似变换、缩放、反射和剪切。射影变换(Projective Transformation): 也称透视变换,可以将三维物体投影到二维平面上。 几何变换通常使用矩阵表示,对点或向量进行矩阵乘法即可完成变换操作。不同的变换对应不同的变换矩阵。 1. 各种变换的关系 使用文氏图(Venn diagram)的形式展示二维变换之间的关系和包含情况 最内层圆圈表示恒等变换(Identity)和旋转变换(Rotation)。包围它的第二层椭圆表示刚体变换(Rigid/Euclidean),它包含了平移(Translation)和旋转变换。第三层椭圆表示相似变换(Similitudes),除了包含刚体变换之外,还包含等比例缩放(Isotropic Scaling)。 相似变换只包含等比例缩放而没有一般的缩放。 最后一个椭圆表示线性变换(Linear),它包括缩放(Scaling)、反射(Reflection)和错切(Shear)等一般线性变换。 2. 变换公式 平移变换 二维平移: x ′ [ I t ] x x \begin{bmatrix}I t\end{bmatrix}x x′[I​t​]x或: x ′ [ I t 0 T 1 ] x x \begin{bmatrix}I t\\0^T 1\end{bmatrix}x x′[I0T​t1​]x 欧式变换(旋转平移) 二维欧式: x ′ [ R t ] x x \begin{bmatrix}R t\end{bmatrix}x x′[R​t​]x 其中R是2x2旋转矩阵: R [ cos ⁡ θ − sin ⁡ θ sin ⁡ θ cos ⁡ θ ] R \begin{bmatrix}\cos\theta -\sin\theta\\\sin\theta \cos\theta\end{bmatrix} R[cosθsinθ​−sinθcosθ​] 相似变换(缩放旋转平移) 二维相似: x ′ [ s R t ] x x \begin{bmatrix}sR t\end{bmatrix}x x′[sR​t​]x 其中s为等比例缩放因子,R为旋转矩阵 仿射变换 二维仿射: x ′ [ a 00 a 01 a 02 a 10 a 11 a 12 ] x x \begin{bmatrix}a_{00} a_{01} a_{02}\\a_{10} a_{11} a_{12}\end{bmatrix}x x′[a00​a10​​a01​a11​​a02​a12​​]x 射影变换 二维射影: x ′ H x , H 为任意3x3矩阵 x Hx,\ H\ \text{为任意3x3矩阵} x′Hx, H 为任意3x3矩阵 这些变换矩阵提供了将点或向量从一个坐标空间变换到另一个坐标空间的数学表示方法,是计算机图形学、计算机视觉等领域的基础工具。通过设计合适的变换矩阵,可以实现各种几何变换,例如平移、旋转、缩放、透视投影等。 不同类型的变换矩阵在形式和自由度上有所区别,平移矩阵比较简单,相似变换增加了缩放,仿射变换支持非等比缩放和错切,而射影变换是最通用的。矩阵的秩决定了变换的自由度和约束条件。 3. 2D变换的层次 自由度越高,变换的灵活性就越大,但保留的不变性也就越少。最右侧的图标展示了了这些变换所保留的不变性:平移保留方向、刚体保留长度、相似保留角度、仿射保留平行线、射影只保留直线不变。 平移变换(translation) 矩阵形式: [ I t ] 2 × 3 \begin{bmatrix}I t\end{bmatrix}_{2\times 3} [I​t​]2×3​ 自由度: 2 (对应x,y平移分量) 保留不变性: 方向(orientation) 刚体变换(rigid/Euclidean) 矩阵形式: [ R t ] 2 × 3 \begin{bmatrix}R t\end{bmatrix}_{2\times 3} [R​t​]2×3​ 自由度: 3 (1个旋转分量2个平移分量) 保留不变性: 长度(lengths) 相似变换(similarity) 矩阵形式: [ s R t ] 2 × 3 \begin{bmatrix}sR t\end{bmatrix}_{2\times 3} [sR​t​]2×3​ 自由度: 4 (1个旋转分量1个缩放分量2个平移分量) 保留不变性: 角度(angles) 仿射变换(affine) 矩阵形式: [ A ] 2 × 3 \begin{bmatrix}A\end{bmatrix}_{2\times 3} [A​]2×3​ 自由度: 6 (组合缩放、错切、旋转、平移) 保留不变性: 平行线(parallelism) 射影变换(projective) 矩阵形式: [ H ] 3 × 3 \begin{bmatrix}H\end{bmatrix}_{3\times 3} [H​]3×3​ 自由度: 8 保留不变性: 直线(straight lines) 4. python实现 import numpy as np# 1. 平移变换 def translation(tx, ty):T np.array([[1, 0, tx],[0, 1, ty],[0, 0, 1]])return T# 2. 欧式变换(旋转平移) def rigid_transform(theta, tx, ty):T np.array([[np.cos(theta), -np.sin(theta), tx],[np.sin(theta), np.cos(theta), ty],[0, 0, 1]])return T# 3. 相似变换(缩放旋转平移) def similarity_transform(s, theta, tx, ty):T np.array([[s * np.cos(theta), -s * np.sin(theta), tx],[s * np.sin(theta), s * np.cos(theta), ty],[0, 0, 1]])return T# 4. 仿射变换 def affine_transform(a00, a01, a02, a10, a11, a12):T np.array([[a00, a01, a02],[a10, a11, a12],[0, 0, 1]])return T# 5. 射影变换 def projective_transform(H):return H# 使用示例 points np.array([[1, 2], [3, 4], [5, 6]])# 平移变换 T translation(10, 20) new_points np.hstack([points, np.ones((3, 1))]).dot(T.T)[:, :2] print(new_points)# 欧式变换 R rigid_transform(np.pi / 4, 10, 20) new_points np.hstack([points, np.ones((3, 1))]).dot(R.T)[:, :2] print(new_points)# 相似变换 S similarity_transform(0.5, np.pi / 3, 10, 20) new_points np.hstack([points, np.ones((3, 1))]).dot(S.T)[:, :2] print(new_points)# 仿射变换 A affine_transform(1, 0.5, 10, 0, 1, 20) new_points np.hstack([points, np.ones((3, 1))]).dot(A.T)[:, :2] print(new_points)
http://www.w-s-a.com/news/589623/

相关文章:

  • 双桥区网站制作企业网站一般内容包括哪些
  • 莆田外贸专业建站做app 需要先做网站吗
  • 网站怎么用北京口碑最好的装修公司
  • 潮州网站建设深圳微信分销网站设计
  • asp.net网站开发实例教程pdf泉州seo网站关键词优推广
  • 怎样建立一个企业网站dede 网站名称
  • 做网上竞彩网站合法吗免费网站建设品牌
  • 网站开发所需要的的环境客户关系管理的内涵
  • 优质做网站公司做软件的人叫什么
  • 徐州市徐州市城乡建设局网站首页网站建设刂金手指下拉十五
  • 建设游戏网站目的及其定位市场营销策略概念
  • 小学电教检查网站建设资料wordpress谷歌字体
  • 南通做网站的公司有哪些中国建筑论坛网
  • 技术支持 佛山网站建设wordpress不用ftp
  • 广州定制app开发wordpress配置搜索引擎优化
  • 兰州网站建设论坛四川建设网官网登录
  • 在线作图免费网站湖南批量出品机
  • 深圳做网站公司有哪些地方妇联加强网站平台建设
  • vps建设网站别人访问不了网页链接生成器
  • 网站建设一般要多少钱电商平台取名字大全
  • 怎么做网站封面上的图网站开发语言 微信接口
  • 免费观看网站建设优化安徽
  • 上海电商网站开发公司做婚恋网站的翻译好吗
  • 以网站建设为开题报告大数据技术就业前景
  • dw做网站字体 别人电脑显示青岛活动策划公司
  • 网站成立时间查询墨猴seo排名公司
  • 技术支持 随州网站建设苏州企业网站建设定制
  • 美食网站开发目的与意义网站开发环境选择
  • 青岛西海岸新区城市建设局网站开发板在null不可用
  • 企业信息管理系统免费seo优化个人博客