透视和仿射变换的区别

在这里插入图片描述
仿射变换矩阵通常是2x3的矩阵。
三个特点:

  1. 直线依然是直线
  2. 平行线依然平行
    [ x ′ y ′ 1 ] = [ a 11 a 12 b 1 a 21 a 22 b 2 0 0 1 ] [ x y 1 ] x ′ = a 11 ∗ x + a 12 ∗ y + b 1 y ′ = a 21 ∗ x + a 22 ∗ y + b 2 \begin{gathered} \begin{bmatrix}x'\\y'\\1\end{bmatrix}=\begin{bmatrix}a11&a12&b1\\a21&a22&b2\\0&0&1\end{bmatrix}\begin{bmatrix}x\\y\\1\end{bmatrix} \\ x^{\prime}=a11*x+a12*y+b1 \\ y^{\prime}=a21*x+a22*y+b2 \end{gathered} xy1 = a11a210a12a220b1b21 xy1 x=a11x+a12y+b1y=a21x+a22y+b2

上面的式子表示2D点乘以一个矩阵后加上平移(b1,b2)。

透视变换是3x3的矩阵。
[ X Y Z ] = [ a 11 a 12 b 1 a 21 a 22 b 2 c 1 c 2 c 3 ] [ x y 1 ] \begin{bmatrix}X\\Y\\Z\end{bmatrix} = \begin{bmatrix} a11&a12&b1\\ a21&a22&b2\\ c1&c2&c3 \end{bmatrix} \begin{bmatrix}x\\y\\1\end{bmatrix} \\ XYZ = a11a21c1a12a22c2b1b2c3 xy1
在这里插入图片描述
z’ = 1

总的来说,仿射变换保持了更多的几何性质,适用于描述相对简单的几何变换,如平移、旋转、缩放和错切。而透视变换则更加灵活,能够描述更复杂的几何变换,如近大远小的透视效果。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/270901.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux Ubuntu系统安装MySQL并实现公网连接本地数据库【内网穿透】

文章目录 前言1 .安装Docker2. 使用Docker拉取MySQL镜像3. 创建并启动MySQL容器4. 本地连接测试4.1 安装MySQL图形化界面工具4.2 使用MySQL Workbench连接测试 5. 公网远程访问本地MySQL5.1 内网穿透工具安装5.2 创建远程连接公网地址5.3 使用固定TCP地址远程访问 前言 本文主…

LeetCode每日一题 二叉树的最大深度(二叉树)

题目描述 给定一个二叉树 root ,返回其最大深度。二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。 示例 1: 输入:root [3,9,20,null,null,15,7] 输出:3 示例 2: 输入:root [1,nul…

【异常处理】Vue报错 Component template should contain exactly one root element.

问题描述 启动VUE项目后控制台报错: Component template should contain exactly one root element. If you are using v-if on multiple elements, use v-else-if to chain them instead.翻译为:组件模板应该只包含一个根元素 查看vue代码&#xff0…

spring-jpa

一、介绍 1.1ORM 1.2 Java Persistence API 放在javaee版本 优点 支持持久化复杂的Java对象,简化Java应用的对象持久化开发支持使用JPQL语言进行复杂的数据查询使用简单,支持使用注解定义对象关系表之间的映射规范标准化,由Java官 方统一规…

nmaptocsv.py脚本无法处理结果的备用工具

python nmaptocsv.py -i test.nmap -f ip-fqdn-port-protocol-service-version。 一: 使用背景: 使用一些其他的端口扫描软件,指纹识别可能有些端口 如一次:11011端口是mysql数据库但是别的软件扫不出来是mysql,借助nmap对1101…

火爆全网,软件测试数据库常用 SQL 语句总结,你要的我都有......

前言 直接上干货 数据定义语言(DDL) 主要负责数据库、数据表、视图、键、索引等结构化的操作 常用的语句有:CREATE DATABASE、CREATE TABLE、ALTER TABLE等 字段的常用约束有:PRIMARY KEY、FOREIGN KEY、NOT NULL、UNIQUE、AUTO_INCREMENT、DEFAULT 常…

应用案例 | Softing echocollect e网关助力汽车零部件制造商构建企业数据库,提升生产效率和质量

为了提高生产质量和效率,某知名汽车零部件制造商采用了Softing echocollect e多协议数据采集网关——从机器和设备中获取相关数据,并直接将数据存储在中央SQL数据库系统中用于分析处理,从而实现了持续监控和生产过程的改进。 一 背景 该企业…

Vue开发实例(四)Element-UI部分组件使用方法

Element-UI的使用 一、Icon图标的使用1、用 i 标签使用图标 二、用 el-button 使用图标1、使用type定义样式2、使用plain定义样式3、使用round定义样式4、使用circle定义样式5、带图标和文字的按钮6、按钮禁用7、文字按钮8、按钮组9、加载中 三、Link 文字链接1、基础用法2、禁…

springboot245科研项目验收管理系统

科研项目验收管理系统 摘 要 使用旧方法对科研项目信息进行系统化管理已经不再让人们信赖了,把现在的网络信息技术运用在科研项目信息的管理上面可以解决许多信息管理上面的难题,比如处理数据时间很长,数据存在错误不能及时纠正等问题。这次…

FreeROTS day2

总结DMA空闲中断接收数据的使用方法 首先要要选择串口然后配置串口的参数,配置MDA通道选择接受数据,配置空闲中断,定义一个数据接收的容器,启动MDA传输当串口收到数据时MDA将数据传输到容器中,MDA会一直检测是否有数据当有数据并…

数据结构界的终极幻神----树

目录 一.数的概念和分类 种类 二.重点概念 哈希树: 二叉树的线索化 什么是线索化 为什么要线索化 特殊的查找树 完全二叉树 三.手撕完全二叉树(堆) 重点讲解 向上搜索算法 向下搜索算法 一.数的概念和分类 树(tree)是包含 n(n≥0) [2] 个节…

使用lnmp环境部署laravel框架需要注意的点

1,上传项目文件后,需要chmod -R 777 storage授予文件权限,不然会报错file_put_contents(/): failed to open stream: Permission denied。 如果后面还是报错没有权限的话,就执行ps -ef |grep php查询php运行用户。然后执行chown …

express基础

express express介绍 官网传送门基于 Node.js 平台,快速、开放、极简的 Web 开发框架express特点 Web 应用 Express 是一个基于 Node.js 平台的极简、灵活的 web 应用开发框架,它提供一系列强大的特性,帮助你创建各种 Web 和移动设备应用。…

Mac 以SH脚本安装Arthas

SH脚本安装Aethas curl -L https://alibaba.github.io/arthas/install.sh | sh安装脚本说明 示例源文件: #! /bin/bash# temp file of as.sh TEMP_ARTHAS_FILE"./as.sh.$$"# target file of as.sh TARGET_ARTHAS_FILE"./as.sh"# update timeo…

什么是端点安全以及如何保护端点

什么是端点安全 端点是指可以接收信号的任何设备,是员工使用的一种计算设备,用于保存公司数据或可以访问 Internet。端点的几个示例包括:服务器、工作站(台式机和笔记本电脑)、移动设备、虚拟机、平板电脑、物联网、可…

ubuntu下使用MATLAB过程中的若干问题

ubuntu版本:Ubuntu 20.04 内核:Linux 5.15.0-97-generic MATALB版本:MATLAB R2022b 问题1:运行脚本时闪退 报错信息: Inconsistency detected by ld.so: ../elf/dl-tls.c: 517: _dl_allocate_tls_init: Assertion l…

数据指标是什么?为什么要建立指标体系?什么阶段建设?路径是什么?

数据指标是什么?为什么要建立指标体系?什么阶段建设?路径是什么? 一、什么是数据指标体系?二、为什么要建立指标体系?1、统一衡量业务好坏的标准2、指导产品的研发和运营工作3、帮助建设数据分析体系 三、什…

Android 蓝牙开发 入门级(史上最全)

第一节:了解蓝牙 1. 蓝牙基础 蓝牙是一种无线技术标准,用于短距离内的数据交换。 在Android设备上,蓝牙技术允许进行设备发现、配对、连接以及数据传输。 技术始于爱立信公司 1994 方案,它是研究在移动电话和其他配件间进行低功…

Redis面试问题纯享版

基础内容 1、简单介绍以下你了解的Redis 2、对比一下Redis和Memcache的异同? 3、为什么MySQL选用Redis作为缓存? 4、详细聊聊你对Redis各种数据类型的了解? 5、Redis中五种基本数据类型的底层数据结构是什么样的? Redis线程模型…

window mysql 安装出现的问题

1.安装到最后时,报错:authentication_string doesnt have a default value 解决办法: 1.不要关掉该页面,点击skip。 然后单击 back 回退到如下界面 2.去掉 Enable Strict Mode。 不要勾选 2. 最后一步:Start Servic…