【WebGPU學習雜記】數學基礎拾遺(2)變換矩陣中的齊次坐標推導與幾何理解

今天打算開始 3D 數學基礎的復習,本文假設你了解以下概念:一次多項式、矩陣、向量,基于以上拓展的概念 歸一化、2~3階矩陣的幾何意義

幾何意義結論

  • 齊次坐標是對三維的人工的特定的升維,它是一個工具而已。圖形學中常用來作為變換矩陣(平移、斜切、旋轉、縮放)中的平移。因為平移是一個仿射變換(另外三項人家不管怎么變都沒有改變原點O(0,0)原點O(0, 0)原點O(0,0)的位置)。直接在三維中不好求解,升維后非常 “便于計算”
  • 通常假設經過變換矩陣后的點為 (x′,y′,z′,1)(x',y',z',1)(x,y,z,1),也就是固定維度w=1w = 1w=1 的三維空間。類比理解三維空間中固定其中一個維度的數值,其意義就是一個平面,例如固定ZZZ后就能得到無數的點(x,y,z)→(x,y)(x,y,z)\rightarrow(x,y)(x,y,z)(x,y)構成的平面OXY平面OXY平面OXY,而這個動作叫 “投影” —— 高維度向低維度的投影。我們不必關心高維如何變化什么意義,只需要知道它可以求得我們渴求的變化結果 (x′,y′,z′)(x',y',z')(x,y,z),至于什么 “投影” 概念一邊涼快兒去!

(i?,j?,k?,l?)=[i1j1k1Δxi2j2k2Δyi3j3k3Δzi4j4k41]\begin{align*} \begin{pmatrix} \vec{i}, \vec{j}, \vec{k}, \vec{l} \end{pmatrix} &= \begin{bmatrix} i_1 & j_1 & k_1 & \Delta x \\ i_2 & j_2 & k_2 & \Delta y \\ i_3 & j_3 & k_3 & \Delta z \\ i_4 & j_4 & k_4 & 1 \\ \end{bmatrix} \end{align*} (i,j?,k,l?)?=?i1?i2?i3?i4??j1?j2?j3?j4??k1?k2?k3?k4??ΔxΔyΔz1???

多項式

  • 多元一次方程組(一次多項式)
  • 多項式拓展(w∈Rw \in \RwR)變量,幾何意義類比 二維平面、三維立體 相當于**“空間維度升了一維”**,因為我們主動添加了 維度(w)維度(w)維度(w), 即使什么都不考慮吧,那你讓它等于幾都可以呀,因為你甩出了魔法🪄 0x+0y+0z+1w=R0x + 0y + 0z + 1w = \R0x+0y+0z+1w=R, 然后令(w=1w = 1w=1)這個式子寫作 0x+0y+0z+1×(w為1)=10x + 0y + 0z + 1\times(w 為 1) = 10x+0y+0z+1×(w1)=1

在這里插入圖片描述

矩陣

😓草稿,很多錯誤例如(多項式一元方程組) 應為 多元一次方程組—多項式
忽略 頁面頂部的“行列式”,瞎寫的草稿,作者本人已經 6年 沒碰線性代數了, 早就忘了什么亂七八糟的概念。只是記得一些 形式化的東西和定義, 例如 等號兩邊加同樣的東西,等號仍然成立。

在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/91239.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/91239.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/91239.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

JS前端壓縮算法——WWDHCAPOF-算法導論論文——東方仙盟算法

代碼function customCompressString(input) {// 第一步:將字符串轉換為ANSI碼數組并乘以位置序號let resultArray Array.from(input).map((char, index) > {const ansiCode char.charCodeAt(0);return ansiCode * (index 東方仙盟); // 位置序號從1開始});// …

linux命令less的實際應用

less 是 Linux/Unix 中交互式文件查看神器,相比 more 和 cat,它支持自由導航、搜索、高亮等強大功能,尤其適合處理大文件或實時日志。以下是深度應用指南:?一、核心優勢?less large_file.log # 秒開GB級文件&#xff08…

DAY31 整數矩陣及其運算

DAY31 整數矩陣及其運算 本次代碼通過IntMatrix類封裝了二維整數矩陣的核心操作,思路如下:數據封裝→基礎操作(修改和獲取元素、獲取維度,toString返回字符串表示,getData返回內部數組引用)→矩陣運算&…

飛槳深度學習環境搭建

一、安裝 PyCharm PyCharm 官網下載頁面 記得全部勾選。 二、安裝 miniconda miniconda 官網下載頁面 根據你的操作系統選擇。 記得勾選前三個。 三、安裝 CUDA 首先 nvidia-smi 查看支持最高的 CUDA 版本。 然后去 nvidia 官網下載 CUDA,選擇適合你的版本。 …

MySQL 8.0 OCP 1Z0-908 題目解析(37)

題目146 Choose two. Which two are true about binary logs used in asynchronous replication? □ A) The master connects to the slave and initiates log transfer. □ B) They contain events that describe all queries run on the master. □ C) They contain events …

vue element 封裝表單

背景: 在前端系統開發中,系統頁面涉及到的表單組件比較多,所以進行了簡單的封裝。封裝的包括一些Form表單組件,如下:input輸入框、select下拉框、等 實現效果: 理論知識: 表單組件官方鏈接&…

flutter-完美解決鍵盤彈出遮擋輸入框的問題

文章目錄1. 前言2. 借助 Scaffold 的特性自動調整3. 使用 MediaQuery 精準控制抬升高度3.1. 底部抽屜內輸入框的方案4. 注意事項5. 總結1. 前言 在 Flutter 的開發過程中,經常會碰到某一個頁面有個 TextField 輸入組件,點擊的時候鍵盤會彈起來&#xff…

機器學習筆記(四)——聚類算法KNN、Kmeans、Dbscan

寫在前面:寫本系列(自用)的目的是回顧已經學過的知識、記錄新學習的知識或是記錄心得理解,方便自己以后快速復習,減少遺忘。概念部分大部分來自于機器學習菜鳥教程,公式部分也會參考機器學習書籍、阿里云天池。機器學習如果只啃概…

【C#】事務(進程 ID 64)與另一個進程被死鎖在鎖資源上,并且已被選作死鎖犧牲品。請重新運行該事務。不能在具有唯一索引“XXX_Index”的對象“dbo.Test”中插入重復鍵的行。

🌹歡迎來到《小5講堂》🌹 🌹這是《C#》系列文章,每篇文章將以博主理解的角度展開講解。🌹 🌹溫馨提示:博主能力有限,理解水平有限,若有不對之處望指正!&#…

LeetCode Hot 100 搜索二維矩陣

給你一個滿足下述兩條屬性的 m x n 整數矩陣:每行中的整數從左到右按非嚴格遞增順序排列。每行的第一個整數大于前一行的最后一個整數。給你一個整數 target ,如果 target 在矩陣中,返回 true ;否則,返回 false 。示例…

python畢設高分案例:基于機器學習的抑郁癥數據分析與預測系統,flask框架,算法包括XGboost模型、梯度提升樹模型等

1 緒論 1.1 課題研究背景和意義 1.1.1 研究背景 在醫療行業不斷發展的當下,數據量呈現出爆炸式增長,醫學數據的復雜性和多樣性也達到了前所未有的程度。電子病歷系統記錄了患者豐富的診療信息,醫學影像技術如 CT、MRI 等生成海量的圖像數據…

STM32與ADS1256多通道數據采樣原理及控制程序

好的,使用 STM32 與 ADS1256 通信讀取多通道電壓是精密數據采集的常見方案。ADS1256 是一款高精度、24 位、8 通道(或差分 4 通道)的 ΔΣ ADC,非常適合需要高分辨率的應用(如傳感器信號、醫療儀器等)。 以下是對整個過程的詳細分析及基于 STM32 HAL 庫的程序示例: 核…

Spring Boot 3.5.x 使用 SpringDoc 2 / Swagger3

這篇文章資料來自于網絡,對部分知識整理,這里只是記錄一下,僅供參考 為什么要用 Swagger Swagger 的核心思想是通過定義和描述 API 的規范、結構和交互方式,以提高 API 的可讀性、可靠性和易用性,同時降低 API 開發的難…

@RefreshScope 核心原理深度解析:Spring Boot 的動態魔法

讓我們通過全新的原理圖解和代碼級分析,揭開RefreshScope實現配置熱更新的神秘面紗!一、工作原理全景圖(優化版) #mermaid-svg-50lhLlOFeSRIWnLn {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px…

萬字詳解——OSI七層模型:網絡通信的完整架構解析

OSI七層模型:網絡通信的完整架構解析OSI(Open Systems Interconnection)七層模型是計算機網絡領域最基礎、最權威的參考框架。它由國際標準化組織(ISO)于1984年提出,旨在為不同廠商、不同技術的網絡設備和系…

一個人開發一個App(OpenApi)

為了少寫代碼,統一前后端的網絡層,我使用了OpenApi設計restful接口。然后用openapi-generator來生成flutter的代碼。生成go代碼用的是oapi-codegen,它對go更友好一些。 我們直接在api.yml中設計接口,所有的返回值與請求者都提取到components里…

光伏氣象監測系統:助力光伏發電的智慧大腦

光伏氣象監測系統:助力光伏發電的智慧大腦 柏峰【BF-GFQX】在全球積極推動能源轉型、大力倡導 “雙碳” 目標的當下,光伏發電憑借其清潔、可再生的顯著優勢,宛如一顆冉冉升起的新星,在能源領域迅速嶄露頭角,得以廣泛推…

SpringCloud01——項目演變、微服務遠程調用三種方式、springcloud介紹、nacos注冊中心

目錄 一、項目架構演變過程 1、單體應用架構 2、垂直應用架構 3、分布式服務架構 4、流動計算架構(SOA架構) 5、微服務架構 二、如何實現微服務遠程調用 1、HttpClient工具類(springboot中) 形式1:調用第三方…

Oracle 和 MySQL 中的日期類型比較

Oracle 和 MySQL 都提供了多種日期和時間數據類型,但它們在實現和功能上有一些差異。以下是兩者的主要日期類型對比:Oracle 日期類型DATE存儲日期和時間(精確到秒)格式:YYYY-MM-DD HH24:MI:SS示例:TO_DATE(…

基于 Redis 實現共享 Session 登錄的多種方法與實踐

全文目錄:開篇語**前言****1. 什么是共享 Session 登錄?****2. 基于 Redis 實現共享 Session 的基本方法****2.1 通過 Redis 存儲 Session 數據****2.1.1 基本流程****2.1.2 示例代碼(Java Spring Boot Redis)****3. 使用 Redis…