---
# System prepended metadata

title: リダクションについて
tags: [研究メモ]

---

###### tags: `研究メモ`

# リダクションについて

### ファイル形式の比較
![](https://i.imgur.com/7U0UcF9.png)




http://norman3d.com/TextureMorphTargets/Vertex-count-agnostic_Morph_Targets.pdf



## 可視性の重みづけ
とりあえず，面ごとに(反射回数，屈折回数)の配列を作成．ただ，フレネルによって屈折→反射→屈折や，屈折→屈折→反射といった面がおなじ値になってしまっている．


## 見えない部分を削除して検証

自作/制限:4,4/たどり着かなった部分はそのまま飛ばす(環境マップ)
![](https://i.imgur.com/wvzM1G8.jpg)

自作/制限:4,4/たどり着かなかった部分を黒に/6568ms
![](https://i.imgur.com/uYXH5mi.jpg)

見えない部分を削除
4/4　14,828KB→14,019KB
vertex 404294->366753
![](https://i.imgur.com/eQe5ozS.jpg)

MAYAでは
324422
削減前
![](https://i.imgur.com/amsoEaF.jpg)
削減後
![](https://i.imgur.com/EnkOq3z.jpg)

自作/制限:3,3/2630ms
![](https://i.imgur.com/WzSeiUI.jpg)

見えない部分を削除
3/3　14,828KB→11，859KB
vertex 404294->265469
![](https://i.imgur.com/TVSmjQ8.jpg)

Maya
324422
![](https://i.imgur.com/1XV6fgN.jpg)

### 削減によってどのくらい画像が変わるのか？

#### 見えない部分を削減
(Maya/32442)
|屈折2回，反射2回　二乗誤差：140.7|屈折3回，反射3回　二乗誤差：32|屈折4回，反射4回　二乗誤差：2.09|
| :---: | :---: |:---: |
|![](https://i.imgur.com/IsYl6xf.jpg)|![](https://i.imgur.com/zxsjAzW.jpg)|![](https://i.imgur.com/HP19CO7.jpg)|
|![](https://i.imgur.com/qbUDpeL.png)| ![](https://i.imgur.com/jLOD8ne.png)|![](https://i.imgur.com/aj0mFdo.png)|
|![](https://i.imgur.com/V5kzcBO.png)|![](https://i.imgur.com/djK9NSK.png) |![](https://i.imgur.com/EM1z3bO.png) | | 

#### 全体的に削減

|元(制限：3,3自作)v:202133|v:171306(10%off) 二乗誤差186.543|v:146493(20%) 二乗誤差286.095|
| :---: | :---: |:---: |
|![](https://i.imgur.com/2tkY9Bh.jpg)|![](https://i.imgur.com/w7qfUj7.jpg)|![](https://i.imgur.com/lAJKFFB.jpg)|
||![](https://i.imgur.com/VjhDtiI.png)|![](https://i.imgur.com/2rwyJjq.png)|
||![](https://i.imgur.com/BNP99hI.png)|![](https://i.imgur.com/jxXPRoM.png)|

|v:127498(30%) 二乗誤差364.547|v:101068(50%) 二乗誤差590.026||
| :---: | :---: |:---: |
|![](https://i.imgur.com/qQ4mZzP.jpg)|![](https://i.imgur.com/XSFrCIX.jpg)||
|![](https://i.imgur.com/uZ5ZVjF.png)|![](https://i.imgur.com/EUJcxgt.png)||
|![](https://i.imgur.com/iwxNCzv.png)|![](https://i.imgur.com/qLIgcs7.png)||


重みづけ
|(屈折で重みづけ/0,0.2,0.4,0.6,0.8)v:183528(71157) 二乗誤差282.001|(屈折で重みづけ/0,0.1,0.3,0.5,0.7)v:176998(94192?) 二乗誤差181.003|
| :---: | :---: |:---: |
|![](https://i.imgur.com/IFj5RFJ.png)|![](https://i.imgur.com/p0ljHop.png)||
|![](https://i.imgur.com/QOS5Ida.png)|![](https://i.imgur.com/eK2W8sZ.png)||


★課題
リダクションがなんかおかしい
あと，５０％削減したはずなのに重複頂点が23k/202kしかない
辺の省略個数がおかしい
毎回長さソートを行わないから？
||||
| :---: | :---: |:---: |
|![](https://i.imgur.com/vyWC2UI.jpg)|![](https://i.imgur.com/SWk27BO.jpg)||

いい感じだけど削減数の制御がいまいち
不正頂点数が削減数に比例しない．
||||
| :---: | :---: |:---: |
|![](https://i.imgur.com/cjHSRqn.png)|![](https://i.imgur.com/v1RpaXG.png)||


リダクションの改善
毎回ソートを行うことで，より正確に
* 黄色の部分のみを削減

|![](https://i.imgur.com/ovlvM3o.jpg)|→|![](https://i.imgur.com/UEqGlWt.jpg)|
| :---: | :---: |:---: |
ただし，削減量を大きくするとそれ以外の部分も削減してしまう．．．

どっちも微妙なので見直し必要
|レイの長さ||光のつよさ|
| :---: | :---: |:---: |
|![](https://i.imgur.com/gd4mQNb.png)||![](https://i.imgur.com/DCEomW4.png)|
|![](https://i.imgur.com/WeD60N7.png)|



* リダクションの改善？


||||
| -------- | -------- | -------- |
|削減無し| ![](https://i.imgur.com/x0NeLZJ.png)||
|中心右のみ削減|![](https://i.imgur.com/2hGSEVq.png)||
|右にいくにつれて削減|![](https://i.imgur.com/0cPgvxn.png)||

* 光の長さはあってるか

|長さ|||
| -------- | -------- | -------- |
|![](https://i.imgur.com/zdYoC8k.png)|![](https://i.imgur.com/AqsNR20.png)||
|強さ|||
|![](https://i.imgur.com/0Wb4bEf.png)|||

強さを使ってリダクション
|元|強さで重みをつけて50%削減|全体的に削減(7391kB)|
| -------- | -------- | -------- |
|![](https://i.imgur.com/0UfByYb.jpg)|![](https://i.imgur.com/iUVjXJr.jpg)|![](https://i.imgur.com/FNekb6R.jpg)|
|レンダリング時 の平均二乗誤差|113.488|306.832|
||![](https://i.imgur.com/I2MlO5A.png)|![](https://i.imgur.com/yw6F6WH.png)|

|長さで削減|長さ*強さ(101066)||
| -------- | -------- | -------- |
|312?うまくいかん|![](https://i.imgur.com/WhaTIuP.jpg)
||

値の差が多きすきるような気がするけど，差分画像を見たら重みをつけたほうはほぼさがなかったけど，全体の方は差が結構あった．

---

|強さで重み付けて削減(80%:40426) | 全体的に削減(80%:40426) |
| -------- | -------- | -------- |
|![](https://i.imgur.com/bQsqeRE.png)|![](https://i.imgur.com/GdEnjT4.png)|
|391.159|482.787|

|長さで重みをつけてリダクション(80%:40426)|強さ＊長さ|
| -------- | -------- | -------- |
|![](https://i.imgur.com/ocCst8N.png)|![](https://i.imgur.com/ZzPfOKu.png)|
|![](https://i.imgur.com/HkuAPVF.png)|![](https://i.imgur.com/IGb0uR6.png)
|
|372.699|387.744|



* アニメーション
これでMayaで連番OBJが読める？？
https://www.youtube.com/watch?v=JwcuK-0dMm8
→読めた
適当に削減して，課題が見えてきたらうれしい

* Mayaでは



| Column 1 | 全体的に50% | 重みをつけて50% |
| -------- | -------- | -------- |
| 平均二乗誤差  |83.98|78.83|
|SSIM|0.936|0.939|

| Column 1 | 全体的に80% | 重みをつけて80% |
| -------- | -------- | -------- |
| 平均二乗誤差  |132.335|103.307|
|SSIM|0.895|0.921|
まあ減ってはいる
| Column 1 | 全体的に95% | 重みをつけて95% |
| -------- | -------- | -------- |
||![](https://i.imgur.com/CKo8Vm1.jpg)|![](https://i.imgur.com/yeSQhAk.jpg)|
| 平均二乗誤差  |668.641|574.571|
|SSIM|0.806|0.843|
---

### 法線転写を実験(頂点を重み無しで八割削減したものに元モデルの法線を転写)
・目でみてもかなり元画像に近い
・テクスチャは2048*2048のJpeg画像(1.6MB)を使用
・この時(8割削減)のメッシュデータ削減量11.7MBに対してはそこまでの大きさではないが，全フレーム必要．またカメラ位置によっては解像度が不十分かも？
・トポロジが変化するなら毎回UV展開が必要？

| 元 | 転写なし(80%off) | 転写あり(80%off) |
| -------- | -------- | -------- |
|![](https://i.imgur.com/gJd8XFF.jpg)|![](https://i.imgur.com/PtRDisR.jpg)|![](https://i.imgur.com/zZhuaKx.jpg)|
| 元画像との平均二乗誤差 | 132.335 | 40.189 |
|SSIM|0.895|**0.975**|
---

### SSIMを計算
http://darosh.github.io/image-ssim-js/test/browser_test.html
* 上表
* 0.95以上で視覚的に等価である
---
![](https://i.imgur.com/CcX4WO9.jpg)

### 強さと長さの合成の実験

80%削減
|80%全体的に|  （長さ＊（１－強さ）） | 強さ | 長さ　|
|--------| -------- | -------- | -------- |
|![](https://i.imgur.com/9wWwQFs.jpg)|  ![](https://i.imgur.com/BobBHF4.jpg)| ![](https://i.imgur.com/M8PFcCw.jpg)|![](https://i.imgur.com/MPV2cfW.jpg)|
|0.889|0.924|0.921|0.925|



| 長さ*(1/強さ) | 長さ＋(1/強さ) | （長さ＋（１－強さ））/2 ||
| -------- | -------- | -------- |-------- |
|![](https://i.imgur.com/8o5RwpE.jpg)|![](https://i.imgur.com/4yfdQJZ.jpg)|![](https://i.imgur.com/Y6GeBp7.jpg)|![](https://i.imgur.com/GNJFlHq.jpg)|
|0.911|0.918|0.923|0.924|



