Max/MSP/Jitter 官方教程翻譯11 - 矩陣混合
本教程探討用 jit.scalebias
和 jit.op
實現交叉漸變的技巧。它比 jit.xfade
方法複雜一些,但更靈活。
混合和交叉淡化
講解了 jit.xfade
用縮放(乘法)和加法以不同的比例混合兩個矩陣。本教程將使用 jit.scalebias
和 jit.op
物件來自動執行這些數學運算。
這樣做有一些好處。首先能清楚地演示混合和交叉漸變的數學過程。其次能看到 jit.op
如何對兩個輸入矩陣做數學運算。(在中展示了 jit.op
和標量值如何作用於單個矩陣)。第三,它可以分別指定兩個矩陣的縮放因子,比 jit.xfade
更靈活。最後,jit.op
可以實現許多不同型別的數學運算,我們可以嘗試其他組合矩陣的方法來得到不同的視覺效果。
再說 Mixing
開啟教程 patch
用乘法和加法混合/交叉漸變矩陣
縮放因子設定為 0~1 之間的 jit.scalebias
將兩個影片 scaled down(變暗)。下面會看到用 jit.op
的不同:兩個入口的輸入都是矩陣。這時 jit.op
分別對每個值執行指定的數學運算,將左矩陣中的每個值與右矩陣中的對應值配對。這樣我們可以把兩個矩陣的所有值相加來混合影像。
這些乘法和加法的結果與 jit.xfade
物件做內部運算的結果一樣。可以試試用 patch 右上角的控制元件來交叉漸變影片(與上一章幾乎完全相同)。
啟動 metro
並使用 Mixer slider
執行從影片 A 到 B 的交叉漸變。
請注意,漸變值直接作為影片 B 的縮放因子,同時 !- 1
物件用 1 減去該值,得到影片 A 的縮放因子。這樣,兩個縮放因子的和總是等於 1,就像在 jit.xfade
中一樣。
使用其他運算子組合矩陣
加法是兩個矩陣最常見的運算。更改 jit.op
的 op 屬性,可以嘗試許多其他運算並檢視其視覺效果。
在 Transition Time
數字框中設定一個非常長的交叉漸變時間(例如 10000 ms)。在 Operator
彈出選單中選擇 + 以外的運算子。現在點選 Go To switch
開始漸變,可以看到兩個影片矩陣的運算如何進行。
彈出選單包含 jit.op
各種運算子中的一部分。以下是選單中選項的簡要說明。
+
把 B 值加到 A-m
從 A 中減去 B,然後取模將結果折算回所需的數值範圍max
使用 A B 中較大的值absdiff
從 A 中減去 B,然後取差值的絕對值|
“按位或”; 二進位制操作,A 或 B 為 1,結果為 1^
“按位獨佔或”; 二進位制操作,A 和 B 值不相同,結果為 1,否則為 0>
如果 A 大於 B,結果為 1(或 char 255),否則為 0<
如果 A 小於 B,結果為 1(或 char 255),否則為 0>p
如果 A 大於 B,結果為 A,否則為 0<p
如果 A 小於 B,結果為 A,否則為 0
其他運算子請檢視 jit.op
物件參考文件。
你也可以直接拖動 jit.scalebias
上方的數字框,單獨設定混合比例。還可以嘗試超過 0~1 範圍的值。
jit.scalebias vs. jit.op @op *
這個 patch 用 jit.scalebias
來做縮放乘法,而沒有用 jit.op
與 * 運算子。為什麼呢?
當 jit.op
操作 char 資料時,val 屬性範圍是 0.0~1.0(浮點數)或 0~255(整數)。如果想將 char 資料乘以 0~1 的某個值,用 jit.op
就可以。如果想乘以其他範圍的值,就要用 jit.scalebias
,它允許 scale 的值超過 0~1 範圍。 jit.scalebias
僅用於處理 4 平面 char 矩陣,在這個例子中沒問題。所以在這個 patch 中,因為是在 4 平面 char 矩陣上做運算,並且想使用超過 0~1 範圍的縮放因子,所以使用了 jit.scalebias
。
小結
你可以用 jit.op
對兩個不同矩陣中的值執行各種數學運算。 jit.op
對每個值執行指定的數學運算,將左矩陣中的每個值與右矩陣中的對應值配對。當兩個矩陣的 dim,planecount 和 type 屬性不同時,jit.op
使用左入口矩陣的屬性。在混合兩個影片影像時,不同的數學運算子可以生成各種視覺效果。
作者:Kidult
連結:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/3209/viewspace-2816242/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Max/MSP/Jitter 官方教程翻譯05 - 矩陣的數學運算矩陣
- Max/MSP/Jitter 官方教程翻譯12 - Chromakeying 視訊去背景合成
- ZooKeeper 官方教程[翻譯]
- [翻譯]CMAKE官方教程
- [OpenGL](翻譯+補充)投影矩陣的推導矩陣
- lxml官方入門教程(The lxml.etree Tutorial)翻譯XML
- Moya官方文件翻譯
- docker官方文件翻譯3Docker
- docker官方文件翻譯5Docker
- docker官方文件翻譯2Docker
- docker官方文件翻譯1Docker
- rabbitmq 官方文件翻譯-2MQ
- docker官方文件翻譯4Docker
- 【Triton 教程】矩陣乘法矩陣
- 藍橋杯-矩陣翻硬幣矩陣
- HTTPie 官方文件中文翻譯版HTTP
- Flutter-Cookbook 非官方翻譯Flutter
- BBNorm官方指導文件翻譯ORM
- Tensorflow快餐教程(4) - 矩陣矩陣
- 組複製官方翻譯四、MonitoringGroupReplication
- jepsen 官方文件的中文翻譯版本
- NetworkX教程中文翻譯
- PendingIntent 是個啥?官方文件描述的很到位。我給翻譯翻譯Intent
- excel如何做共詞矩陣?excel做共詞矩陣教程Excel矩陣
- kotlinx協程官方文件中文翻譯版本Kotlin
- ExoPlayer的使用與解析(官方文件翻譯)
- ARC186A 官方題解-ChatGPT翻譯ChatGPT
- voltDB官方文件第三章翻譯
- 翻譯:INSERT(已提交到MariaDB官方手冊)
- TypeScript 官方手冊翻譯計劃【十二】:類TypeScript
- [翻譯] NumSharp的陣列切片功能 [:]陣列
- 巨大的矩陣(矩陣加速)矩陣
- 鄰接矩陣、度矩陣矩陣
- 奇異矩陣,非奇異矩陣,偽逆矩陣矩陣
- Electron教程翻譯2:安裝
- logback官方文件中文翻譯第七章:FiltersFilter
- 翻譯:window function(已提交到MariaDB官方手冊)Function
- 翻譯:TRUNCATE TABLE(已提交到MariaDB官方手冊)